Kiwi Multi Threading Framework
/Users/tomoo/Project/KiwiThread/Source/KTIntervalTimer.h
Go to the documentation of this file.
00001 
00011 #import "KTType.h"
00012 #import <Coconut/Coconut.h>
00013 
00017 struct KTIntervalTimer {
00019     struct CNInstance       superClass ;
00021     dispatch_queue_t        timerQueue ;
00023     dispatch_source_t       timerSource ;
00025     KTTaskState             timerState ;
00027     struct CNList           consumerList ;
00028 } ;
00029 
00031 struct KTIntervalTimerMethods {
00033     struct CNInstanceMethods    superClass ;
00034 } ;
00035 
00037 extern struct KTIntervalTimerMethods  KTSharedIntervalTimerMethods ;
00038 
00046 struct KTIntervalTimer *
00047 KTAllocateIntervalTimer(dispatch_queue_t queue, double interval, struct CNResource * resource) ;
00048 
00054 static inline struct CNInstance *
00055 KTInstanceOfIntervalTimer(struct KTIntervalTimer * src)
00056 {
00057     return &(src->superClass) ;
00058 }
00059 
00065 static inline KTTaskState
00066 KTStateOfIntervalTimer(struct KTIntervalTimer * src)
00067 {
00068     return src->timerState ;
00069 }
00070 
00075 void
00076 KTStartIntervalTimer(struct KTIntervalTimer * src) ;
00077 
00082 void
00083 KTStopIntervalTimer(struct KTIntervalTimer * src) ;
00084 
00091 void
00092 KTAddInstanceTriggerToIntervalTimer(struct KTIntervalTimer * dst, KTInstanceTriggerFuncRef func, struct CNInstance * inst) ;
00093 
All Classes Files Functions Variables Typedefs Enumerations Enumerator