Vuo  2.3.2
VuoCompilerTriggerDescription.hh
Go to the documentation of this file.
1 
10 #pragma once
11 
12 class VuoCompilerGraph;
13 class VuoCompilerNode;
15 class VuoType;
16 
17 #include "VuoPortClass.hh"
18 
23 {
24 public:
25  static json_object * getJson(VuoCompilerNode *triggerNode, VuoCompilerTriggerPort *trigger, VuoCompilerGraph *graph);
26  static vector<VuoCompilerTriggerDescription *> parseFromJson(json_object *js);
28  size_t getNodeIndex(void);
29  string getNodeIdentifier(void);
30  string getNodeClassName(void);
31  string getPortName(void);
32  int getPortContextIndex(void);
34  VuoType * getDataType(void);
35  void setDataType(VuoType *dataType);
36  void getWorkerThreadsNeeded(int &minThreadsNeeded, int &maxThreadsNeeded);
37  int getChainCount(void);
38  string getSubcompositionNodeClassName(void);
40 
41 private:
43 
44  size_t nodeIndex;
45  string nodeIdentifier;
46  string nodeClassName;
47  string portName;
48  int portContextIndex;
49  VuoPortClass::EventThrottling eventThrottling;
50  VuoType *dataType;
51  int minWorkerThreadsNeeded;
52  int maxWorkerThreadsNeeded;
53  int chainCount;
54  string subcompositionNodeClassName;
55  string subcompositionNodeIdentifier;
56 };