11typedef struct TaskQueue TaskQueue;
12typedef struct TaskQueue_WeakRef TaskQueue_WeakRef;
13typedef struct TQWorker TQWorker;
14typedef struct TQWorker_WeakRef TQWorker_WeakRef;
17#define _sti_TQWorker _sti_object
18#define SType_TQWorker TQWorker*
19#define STStorageType_TQWorker TQWorker*
20#define STypeArg_TQWorker(type, val) stgeneric(object, (ObjInst*)objInstCheckClass(TQWorker, val))
21#define STypeArgPtr_TQWorker(type, val) (stgeneric*)objInstCheckClassPtr(TQWorker, val)
22#define STypeCheckedArg_TQWorker(type, val) stType(type), stArg(type, val)
23#define STypeCheckedPtrArg_TQWorker(type, val) stType(type), stArgPtr(type, val)
25typedef struct TQWorker_ClassIf {
32 void (*onStart)(_In_
void* self, _In_ TaskQueue* tq);
34 int64 (*tick)(_In_
void* self, _In_ TaskQueue* tq);
36 void (*onStop)(_In_
void* self, _In_ TaskQueue* tq);
38extern TQWorker_ClassIf TQWorker_ClassIf_tmpl;
40typedef struct TQWorker {
52#define TQWorker(inst) objInstCheckClass(TQWorker, inst)
53#define TQWorkerNone ((TQWorker*)NULL)
55typedef struct TQWorker_WeakRef {
58 void* _is_TQWorker_WeakRef;
59 void* _is_ObjInst_WeakRef;
64#define TQWorker_WeakRef(inst) objWeakRefCheckClass(TQWorker, inst)
70#define tqworkerOnStart(self, tq) (self)->_->onStart(TQWorker(self), TaskQueue(tq))
74#define tqworkerTick(self, tq) (self)->_->tick(TQWorker(self), TaskQueue(tq))
78#define tqworkerOnStop(self, tq) (self)->_->onStop(TQWorker(self), TaskQueue(tq))
#define saDeclarePtr(name)
CX Struct System - Introspectable, serializable POD structures in C.
CX Object System - Object-oriented programming in C.
Shared types and configuration structures for the task queue system.