Vuo 2.4.4
Loading...
Searching...
No Matches
VuoCompilerTriggerPort.hh
Go to the documentation of this file.
1
10#pragma once
11
12#include "VuoCompilerPort.hh"
13
15
22{
23public:
25 Value * generateCreatePortContext(Module *module, BasicBlock *block);
26 static void generateScheduleWorker(Module *module, Function *function, BasicBlock *block, Value *compositionStateValue, Value *eventIdValue, Value *portContextValue, VuoType *dataType, int minThreadsNeeded, int maxThreadsNeeded, int chainCount, Function *workerFunction);
27 Function * generateSynchronousSubmissionToDispatchQueue(Module *module, BasicBlock *block, Value *nodeContextValue, string workerFunctionName, Value *workerFunctionArg=NULL);
28 Function * getWorkerFunction(Module *module, string functionName, bool isExternal=false);
29 static Value * generateNonBlockingWaitForSemaphore(Module *module, BasicBlock *block, Value *portContextValue);
30 void generateSignalForSemaphore(Module *module, BasicBlock *block, Value *nodeContextValue);
31 Value * generateLoadFunction(Module *module, BasicBlock *block, Value *nodeContextValue);
32 void generateStoreFunction(Module *module, BasicBlock *block, Value *nodeContextValue, Value *functionValue);
33 Value * generateRetrievePreviousData(Module *module, BasicBlock *block, Value *nodeContextValue);
34 void generateFreeContext(Module *module, BasicBlock *block, Function *workerFunction);
35 Value * generateCompositionStateValue(Module *module, BasicBlock *block, Function *workerFunction);
36 Value * generateDataValue(Module *module, BasicBlock *block, Function *workerFunction);
37 Value * generateEventIdValue(Module *module, BasicBlock *block, Function *workerFunction);
38 Value * generateDataValueUpdate(Module *module, BasicBlock *block, Function *workerFunction, Value *nodeContextValue);
39 static void generateDataValueDiscardFromScheduler(Module *module, Function *function, BasicBlock *block, VuoType *dataType);
40 void generateDataValueDiscardFromWorker(Module *module, BasicBlock *block, Function *workerFunction);
42};