Vuo 2.4.4
Loading...
Searching...
No Matches
VuoCompilerPublishedOutputNodeClass.hh
Go to the documentation of this file.
1
10#pragma once
11
13
19{
20public:
21 static VuoNodeClass * newNodeClass(string nodeClassName, VuoCompiler *compiler, dispatch_queue_t llvmQueue);
22 static VuoNodeClass * newNodeClass(vector<VuoPublishedPort *> publishedOutputPorts, dispatch_queue_t llvmQueue = nullptr);
23 static VuoNodeClass * newNodeClass(string nodeClassName, Module *module);
24 size_t getInputPortIndexForPublishedOutputPort(size_t publishedOutputPortIndex);
25 size_t getGatherInputPortIndex(void);
26 static string buildNodeClassName(const vector<VuoPublishedPort *> &publishedOutputPorts);
27
28private:
29 static VuoCompilerPublishedOutputNodeClass * getSingleton(void);
30 VuoCompilerPublishedOutputNodeClass(string nodeClassName, Module *module);
33 VuoNodeClass * newNodeClassWithImplementation(const string &nodeClassName, const vector<string> &portNames, const vector<VuoType *> &types);
34 VuoNodeClass * newNodeClassWithoutImplementation(const string &nodeClassName, const vector<string> &portNames, const vector<VuoType *> &types);
35
36 string getNodeClassNamePrefix(void);
37 set<string> getReservedPortNames(void);
38
40};