Vuo  0.4.5
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | List of all members
VuoCompilerMakeListNodeClass Class Reference

Description

A "Make List" node class.

Public Member Functions

unsigned long getItemCount (void)
 Returns the number of item input ports for this "Make List" node class.
 
VuoCompilerTypegetListType (void)
 Returns the type of the list output port for this "Make List" node class.
 
- Public Member Functions inherited from VuoCompilerNodeClass
VuoNodenewNode (string displayName="", double x=0, double y=0)
 Creates a substantial base node instance from this node class.
 
string getClassIdentifier (void)
 The unique class name for this node class, rendered as an identifier in the generated code.
 
Function * getEventFunction (void)
 Returns an LLVM Function for this node class's implementation of the nodeEvent or nodeInstanceEvent function.
 
Function * getInitFunction (void)
 If this node class is stateful, returns an LLVM Function for this node class's implementation of the nodeInstanceInit function.
 
Function * getFiniFunction (void)
 If this node class is stateful, returns an LLVM Function for this node class's implementation of the nodeInstanceFini function.
 
Function * getCallbackStartFunction (void)
 If this node class is stateful, returns an LLVM Function for this node class's implementation of the nodeInstanceCallbackStart function.
 
Function * getCallbackStopFunction (void)
 If this node class is stateful, returns an LLVM Function for this node class's implementation of the nodeInstanceCallbackStop function.
 
VuoCompilerInstanceDataClassgetInstanceDataClass (void)
 If this node class is stateful, returns the instance data class.
 
string getDoxygenDocumentation (void)
 Returns a string containing documentation for this node class in Doxygen format.
 
- Public Member Functions inherited from VuoBaseDetail< VuoNodeClass >
 VuoBaseDetail (string description, VuoNodeClass *base)
 Creates a VuoNodeClass detail class.
 
VuoNodeClassgetBase (void) const
 Returns the VuoNodeClass detail class instance's base class instance.
 
void setBase (VuoNodeClass *base)
 Sets the VuoNodeClass detail class instance's base class instance.
 
- Public Member Functions inherited from VuoCompilerModule
vector< string > getDependencies (void)
 Returns a list of this VuoCompilerModule's dependencies.
 
Module * getModule (void)
 Returns this VuoCompilerModule's LLVM module, which other LLVM modules can link to.
 

Static Public Member Functions

static
VuoCompilerMakeListNodeClass
getNodeClass (string nodeClassName, VuoCompiler *compiler)
 Retrieves the VuoCompilerMakeListNodeClass with the given name if the compiler already has it, or else creates a new VuoCompilerMakeListNodeClass and adds it to the compiler.
 
static bool isMakeListNodeClassName (string nodeClassName)
 Returns true if the name has the format of a "Make List" node class name.
 
static bool isListType (VuoCompilerType *type)
 Returns true if the given type is a VuoList type.
 
static string getNodeClassName (unsigned long itemCount, VuoCompilerType *listType)
 Returns the name that a "Make List" node class would have if it were to input the given number of items and output the given type of list.
 
- Static Public Member Functions inherited from VuoCompilerNodeClass
static VuoNodeClassnewNodeClass (string nodeClassName, Module *module)
 Creates a new substantial VuoNodeClass from the node class definition in the module.
 
static VuoNodeClasscreatePublishedInputNodeClass (vector< VuoPortClass * > outputPortClasses)
 Generates a node class for the "vuo.in" node in the current composition.
 
- Static Public Member Functions inherited from VuoCompilerModule
static VuoCompilerModulenewModule (string moduleKey, Module *module)
 Instantiates a VuoCompilerModule (or child class) corresponding to the type of VuoCompilerModule defined in the LLVM module.
 
static Function * declareFunctionInModule (Module *module, Function *function)
 Copies the function's header into the LLVM module, if it's not already there.
 

Additional Inherited Members

- Protected Member Functions inherited from VuoCompilerNodeClass
 VuoCompilerNodeClass (string className, Module *module)
 Creates a node class implementation from an LLVM module, and creates its corresponding base VuoNodeClass.
 
 VuoCompilerNodeClass (VuoCompilerNodeClass *compilerNodeClass)
 Creates a new compiler node class and creates a new base VuoNodeClass, both from compilerNodeClass.
 
- Protected Attributes inherited from VuoCompilerModule
vector< string > dependencies
 The moduleDependencies in this module's definition.
 
Module * module
 The LLVM module that defines this node class or type.
 
VuoModulebase
 The (pseudo) base for this (pseudo) compiler detail class.
 
VuoCompilerBitcodeParserparser
 The parser of the LLVM module.
 

Member Function Documentation

VuoCompilerMakeListNodeClass * VuoCompilerMakeListNodeClass::getNodeClass ( string  nodeClassName,
VuoCompiler compiler 
)
static

Retrieves the VuoCompilerMakeListNodeClass with the given name if the compiler already has it, or else creates a new VuoCompilerMakeListNodeClass and adds it to the compiler.

Parameters
nodeClassNameThe name of the node class. It should have the format "vuo.list.make.<item count>.<item type>" (e.g. "vuo.list.make.3.VuoInteger").
compilerThe compiler to use for looking up node classes.
Returns
The retrieved or created node class, or null if the node class name does not have the correct format.
bool VuoCompilerMakeListNodeClass::isMakeListNodeClassName ( string  nodeClassName)
static

Returns true if the name has the format of a "Make List" node class name.

(A "Make List" node class by that name may or may not exist.)


The documentation for this class was generated from the following files: