Vuo
0.4
|
A linear sequence of nodes along which a push may be conducted.
Public Member Functions | |
VuoCompilerChain (vector< VuoCompilerNode * > nodes, bool isLastNodeInLoop) | |
Creates a linear chain of nodes that would be pushed by the given trigger. | |
void | generateAllocationForDispatchGroup (Module *module, string triggerIdentifier) |
Generates the allocation of this chain's dispatch group. | |
void | generateInitializationForDispatchGroup (Module *module, BasicBlock *block) |
Generates the initialization of this chain's dispatch group, initializing it to a new dispatch group. | |
void | generateFinalizationForDispatchGroup (Module *module, BasicBlock *block) |
Generates the finalization of this chain's dispatch group. | |
Function * | generateSubmissionForDispatchGroup (Module *module, BasicBlock *block) |
Generates code that submits a function for asynchronous execution and associates it with this chain's dispatch group. | |
void | generateWaitForDispatchGroup (Module *module, BasicBlock *block) |
Generates code that waits on this chain's dispatch group. | |
vector< VuoCompilerNode * > | getNodes (void) |
Returns the sequence of nodes in this chain. | |
VuoCompilerChain::VuoCompilerChain | ( | vector< VuoCompilerNode * > | nodes, |
bool | isLastNodeInLoop | ||
) |
Creates a linear chain of nodes that would be pushed by the given trigger.
Assumes nodes is not empty.
Function * VuoCompilerChain::generateSubmissionForDispatchGroup | ( | Module * | module, |
BasicBlock * | block | ||
) |
Generates code that submits a function for asynchronous execution and associates it with this chain's dispatch group.