11typedef struct TaskQueue TaskQueue;
12typedef struct TaskQueue_WeakRef TaskQueue_WeakRef;
13typedef struct TaskQueue TaskQueue;
14typedef struct TaskQueue_WeakRef TaskQueue_WeakRef;
15typedef struct TQManualWorker TQManualWorker;
16typedef struct TQManualWorker_WeakRef TQManualWorker_WeakRef;
17typedef struct TQManualRunner TQManualRunner;
18typedef struct TQManualRunner_WeakRef TQManualRunner_WeakRef;
21#define _sti_TQManualRunner _sti_object
22#define SType_TQManualRunner TQManualRunner*
23#define STStorageType_TQManualRunner TQManualRunner*
24#define STypeArg_TQManualRunner(type, val) stgeneric(object, (ObjInst*)objInstCheckClass(TQManualRunner, val))
25#define STypeArgPtr_TQManualRunner(type, val) (stgeneric*)objInstCheckClassPtr(TQManualRunner, val)
26#define STypeCheckedArg_TQManualRunner(type, val) stType(type), stArg(type, val)
27#define STypeCheckedPtrArg_TQManualRunner(type, val) stType(type), stArgPtr(type, val)
29typedef struct TQManualRunner_ClassIf {
34 bool (*start)(_In_
void* self, _In_ TaskQueue* tq);
35 int64 (*tick)(_In_
void* self);
36 bool (*stop)(_In_
void* self);
37} TQManualRunner_ClassIf;
38extern TQManualRunner_ClassIf TQManualRunner_ClassIf_tmpl;
40typedef struct TQManualRunner {
42 TQManualRunner_ClassIf* _;
43 void* _is_TQManualRunner;
53 TQManualWorker* worker;
56#define TQManualRunner(inst) objInstCheckClass(TQManualRunner, inst)
57#define TQManualRunnerNone ((TQManualRunner*)NULL)
59typedef struct TQManualRunner_WeakRef {
62 void* _is_TQManualRunner_WeakRef;
63 void* _is_TQRunner_WeakRef;
64 void* _is_ObjInst_WeakRef;
68} TQManualRunner_WeakRef;
69#define TQManualRunner_WeakRef(inst) objWeakRefCheckClass(TQManualRunner, inst)
73#define tqmanualrunnerCreate() TQManualRunner_create()
76#define tqmanualrunnerStart(self, tq) (self)->_->start(TQManualRunner(self), TaskQueue(tq))
78#define tqmanualrunnerTick(self) (self)->_->tick(TQManualRunner(self))
80#define tqmanualrunnerStop(self) (self)->_->stop(TQManualRunner(self))
#define saDeclarePtr(name)
#define _objfactory_guaranteed
CX Struct System - Introspectable, serializable POD structures in C.
CX Object System - Object-oriented programming in C.