Vuo  2.0.0
node.h
Go to the documentation of this file.
1 
10 #pragma once
11 
12 #include "module.h"
13 
14 #include <stdbool.h>
15 #include <stdio.h>
16 #include <unistd.h>
17 
45 #define VuoInstanceData(type) __attribute__((annotate("vuoInstanceData"))) type * const
46 
104 #define VuoInputData(type, ...) __attribute__((annotate("vuoInputData"),annotate("vuoType:" #type),annotate("vuoDetails: " #__VA_ARGS__))) const type
105 
132 #define VuoInputEvent(...) __attribute__((annotate("vuoInputEvent"),annotate("vuoDetails: " #__VA_ARGS__))) const bool
133 
154 #define VuoOutputData(type, ...) __attribute__((annotate("vuoOutputData"), annotate("vuoType:" # type),annotate("vuoDetails: " #__VA_ARGS__))) type * const
155 
177 #define VuoOutputEvent(...) __attribute__((annotate("vuoOutputEvent"),annotate("vuoDetails: " #__VA_ARGS__))) bool * const
178 
216 #define VuoOutputTrigger(name,type,...) __attribute__((annotate("vuoOutputTrigger:" #name), annotate("vuoType:" #type), annotate("vuoDetails: " #__VA_ARGS__))) void (* const name)(type)
217 
224 // These prototypes should only appear to Doxygen, since individual node classes' parameter lists can vary.
225 #ifdef DOXYGEN
226 
250 void nodeEvent(...);
251 
276 struct nodeInstanceData *nodeInstanceInit(...);
277 
291 void nodeInstanceTriggerStart(...);
292 
321 void nodeInstanceEvent(...);
322 
336 void nodeInstanceTriggerUpdate(...);
337 
354 void nodeInstanceTriggerStop(...);
355 
363 void nodeInstanceFini(...);
364 
369 #endif
370 
371