8typedef struct TaskQueue TaskQueue;
9typedef struct TaskQueue_WeakRef TaskQueue_WeakRef;
10typedef struct TQManager TQManager;
11typedef struct TQManager_WeakRef TQManager_WeakRef;
16#define MAX_MANAGER_INTERVAL (timeS(10))
18typedef struct TQManager_ClassIf {
23 bool (*start)(_In_
void* self, _In_ TaskQueue* tq);
24 bool (*stop)(_In_
void* self);
25 void (*notify)(_In_
void* self,
bool wakeup);
27 void (*pretask)(_In_
void* self);
28 int64 (*tick)(_In_
void* self);
30extern TQManager_ClassIf TQManager_ClassIf_tmpl;
32typedef struct TQManager {
46#define TQManager(inst) ((TQManager*)(unused_noeval((inst) && &((inst)->_is_TQManager)), (inst)))
47#define TQManagerNone ((TQManager*)NULL)
49typedef struct TQManager_WeakRef {
52 void* _is_TQManager_WeakRef;
53 void* _is_ObjInst_WeakRef;
58#define TQManager_WeakRef(inst) ((TQManager_WeakRef*)(unused_noeval((inst) && &((inst)->_is_TQManager_WeakRef)), (inst)))
61#define tqmanagerStart(self, tq) (self)->_->start(TQManager(self), TaskQueue(tq))
63#define tqmanagerStop(self) (self)->_->stop(TQManager(self))
65#define tqmanagerNotify(self, wakeup) (self)->_->notify(TQManager(self), wakeup)
69#define tqmanagerPretask(self) (self)->_->pretask(TQManager(self))
71#define tqmanagerTick(self) (self)->_->tick(TQManager(self))
#define saDeclarePtr(name)
CX Object System - Object-oriented programming in C.
Shared types and configuration structures for the task queue system.