Add words for working with CFTimeInterval and CFAbsoluteDate types
parent
b3428c61e6
commit
50a78db9bd
|
@ -1,6 +1,6 @@
|
||||||
! Copyright (C) 2006, 2008 Slava Pestov
|
! Copyright (C) 2006, 2008 Slava Pestov
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: alien.syntax destructors accessors kernel ;
|
USING: alien.syntax destructors accessors kernel calendar ;
|
||||||
IN: core-foundation
|
IN: core-foundation
|
||||||
|
|
||||||
TYPEDEF: void* CFTypeRef
|
TYPEDEF: void* CFTypeRef
|
||||||
|
@ -30,3 +30,10 @@ M: CFRelease-destructor dispose* alien>> CFRelease ;
|
||||||
|
|
||||||
: |CFRelease ( alien -- alien )
|
: |CFRelease ( alien -- alien )
|
||||||
dup f CFRelease-destructor boa |dispose drop ; inline
|
dup f CFRelease-destructor boa |dispose drop ; inline
|
||||||
|
|
||||||
|
: >CFTimeInterval ( duration -- interval )
|
||||||
|
duration>seconds ; inline
|
||||||
|
|
||||||
|
: >CFAbsoluteTime ( timestamp -- time )
|
||||||
|
T{ timestamp { year 2001 } { month 1 } { day 1 } } time-
|
||||||
|
duration>seconds ; inline
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
! Copyright (C) 2008 Slava Pestov.
|
! Copyright (C) 2008 Slava Pestov.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: alien.syntax system math kernel core-foundation ;
|
USING: alien.syntax system math kernel core-foundation calendar ;
|
||||||
IN: core-foundation.timers
|
IN: core-foundation.timers
|
||||||
|
|
||||||
TYPEDEF: void* CFRunLoopTimerRef
|
TYPEDEF: void* CFRunLoopTimerRef
|
||||||
|
@ -18,12 +18,16 @@ FUNCTION: CFRunLoopTimerRef CFRunLoopTimerCreate (
|
||||||
) ;
|
) ;
|
||||||
|
|
||||||
: <CFTimer> ( callback -- timer )
|
: <CFTimer> ( callback -- timer )
|
||||||
[ f millis 1000 /f 60 0 0 ] dip f CFRunLoopTimerCreate ;
|
[ f now >CFAbsoluteTime 60 0 0 ] dip f CFRunLoopTimerCreate ;
|
||||||
|
|
||||||
FUNCTION: void CFRunLoopTimerInvalidate (
|
FUNCTION: void CFRunLoopTimerInvalidate (
|
||||||
CFRunLoopTimerRef timer
|
CFRunLoopTimerRef timer
|
||||||
) ;
|
) ;
|
||||||
|
|
||||||
|
FUNCTION: Boolean CFRunLoopTimerIsValid (
|
||||||
|
CFRunLoopTimerRef timer
|
||||||
|
) ;
|
||||||
|
|
||||||
FUNCTION: void CFRunLoopTimerSetNextFireDate (
|
FUNCTION: void CFRunLoopTimerSetNextFireDate (
|
||||||
CFRunLoopTimerRef timer,
|
CFRunLoopTimerRef timer,
|
||||||
CFAbsoluteTime fireDate
|
CFAbsoluteTime fireDate
|
||||||
|
|
Loading…
Reference in New Issue