8typedef struct TaskQueue TaskQueue;
9typedef struct TaskQueue_WeakRef TaskQueue_WeakRef;
10typedef struct TaskQueue TaskQueue;
11typedef struct TaskQueue_WeakRef TaskQueue_WeakRef;
12typedef struct TQManualWorker TQManualWorker;
13typedef struct TQManualWorker_WeakRef TQManualWorker_WeakRef;
14typedef struct TQManualRunner TQManualRunner;
15typedef struct TQManualRunner_WeakRef TQManualRunner_WeakRef;
19typedef struct TQManualRunner_ClassIf {
24 bool (*start)(_In_
void* self, _In_ TaskQueue* tq);
25 int64 (*tick)(_In_
void* self);
26 bool (*stop)(_In_
void* self);
27} TQManualRunner_ClassIf;
28extern TQManualRunner_ClassIf TQManualRunner_ClassIf_tmpl;
30typedef struct TQManualRunner {
32 TQManualRunner_ClassIf* _;
33 void* _is_TQManualRunner;
43 TQManualWorker* worker;
46#define TQManualRunner(inst) ((TQManualRunner*)(unused_noeval((inst) && &((inst)->_is_TQManualRunner)), (inst)))
47#define TQManualRunnerNone ((TQManualRunner*)NULL)
49typedef struct TQManualRunner_WeakRef {
52 void* _is_TQManualRunner_WeakRef;
53 void* _is_TQRunner_WeakRef;
54 void* _is_ObjInst_WeakRef;
58} TQManualRunner_WeakRef;
59#define TQManualRunner_WeakRef(inst) ((TQManualRunner_WeakRef*)(unused_noeval((inst) && &((inst)->_is_TQManualRunner_WeakRef)), (inst)))
63#define tqmanualrunnerCreate() TQManualRunner_create()
66#define tqmanualrunnerStart(self, tq) (self)->_->start(TQManualRunner(self), TaskQueue(tq))
68#define tqmanualrunnerTick(self) (self)->_->tick(TQManualRunner(self))
70#define tqmanualrunnerStop(self) (self)->_->stop(TQManualRunner(self))
#define saDeclarePtr(name)
#define _objfactory_guaranteed
CX Object System - Object-oriented programming in C.