8typedef struct TaskQueue TaskQueue;
9typedef struct TaskQueue_WeakRef TaskQueue_WeakRef;
10typedef struct TQWorker TQWorker;
11typedef struct TQWorker_WeakRef TQWorker_WeakRef;
15typedef struct TQWorker_ClassIf {
22 void (*onStart)(_In_
void* self, _In_ TaskQueue* tq);
24 int64 (*tick)(_In_
void* self, _In_ TaskQueue* tq);
26 void (*onStop)(_In_
void* self, _In_ TaskQueue* tq);
28extern TQWorker_ClassIf TQWorker_ClassIf_tmpl;
30typedef struct TQWorker {
42#define TQWorker(inst) ((TQWorker*)(unused_noeval((inst) && &((inst)->_is_TQWorker)), (inst)))
43#define TQWorkerNone ((TQWorker*)NULL)
45typedef struct TQWorker_WeakRef {
48 void* _is_TQWorker_WeakRef;
49 void* _is_ObjInst_WeakRef;
54#define TQWorker_WeakRef(inst) ((TQWorker_WeakRef*)(unused_noeval((inst) && &((inst)->_is_TQWorker_WeakRef)), (inst)))
60#define tqworkerOnStart(self, tq) (self)->_->onStart(TQWorker(self), TaskQueue(tq))
64#define tqworkerTick(self, tq) (self)->_->tick(TQWorker(self), TaskQueue(tq))
68#define tqworkerOnStop(self, tq) (self)->_->onStop(TQWorker(self), TaskQueue(tq))
#define saDeclarePtr(name)
CX Object System - Object-oriented programming in C.
Shared types and configuration structures for the task queue system.