Vuo  1.2.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
VuoCompilerPort Class Referenceabstract

Description

A port.

Public Member Functions

bool hasConnectedCable (void) const
 Returns a boolean indicating whether this port has any attached cables.
 
bool hasConnectedDataCable (void) const
 Returns a boolean indicating whether this port has any attached data+event cables.
 
VuoTypegetDataVuoType (void)
 Returns this port's data type, or null if this port is event-only.
 
void setDataVuoType (VuoType *dataType)
 Sets the data type for this port, overriding the type from the port class.
 
void setNodeIdentifier (string nodeIdentifier)
 Sets an identifier that will be part of the string returned by getIdentifier().
 
virtual string getIdentifier (void)
 Returns a unique, consistent identifier for this port.
 
void setIndexInPortContexts (int indexInPortContexts)
 Sets the index of this node within the array of port contexts within the node context.
 
int getIndexInPortContexts (void)
 Returns the index of this node within the array of port contexts within the node context.
 
void setConstantStringCache (VuoCompilerConstantStringCache *constantStrings)
 Sets the cache used to generate constant string values.
 
Value * getDataVariable (Module *module, BasicBlock *block, Value *nodeContextValue)
 Returns the address of the data field within this port's context.
 
Value * generateGetPortContext (Module *module, BasicBlock *block, Value *nodeContextValue)
 Returns this port's context.
 
virtual Value * generateCreatePortContext (Module *module, BasicBlock *block)=0
 Generates code that creates a PortContext * and initializes it for this port.
 
- Public Member Functions inherited from VuoCompilerNodeArgument
virtual ~VuoCompilerNodeArgument (void)
 Destructor.
 
- Public Member Functions inherited from VuoBaseDetail< VuoPort >
 VuoBaseDetail (string description, VuoPort *base)
 Creates a VuoNode detail class.
 
VuoPortgetBase (void) const
 Returns the VuoNode detail class instance's base class instance.
 
void setBase (VuoPort *base)
 Sets the VuoNode detail class instance's base class instance.
 

Protected Member Functions

 VuoCompilerPort (VuoPort *basePort)
 Creates a compiler detail from a given basePort.
 
- Protected Member Functions inherited from VuoCompilerNodeArgument
 VuoCompilerNodeArgument (VuoPort *basePort)
 Creates an argument instance based on the specified argumentClass.
 

Protected Attributes

VuoCompilerConstantStringCacheconstantStrings
 Cache used to generate constant string values.
 

Constructor & Destructor Documentation

VuoCompilerPort::VuoCompilerPort ( VuoPort basePort)
protected

Creates a compiler detail from a given basePort.

Member Function Documentation

virtual Value* VuoCompilerPort::generateCreatePortContext ( Module *  module,
BasicBlock *  block 
)
pure virtual

Generates code that creates a PortContext * and initializes it for this port.

Implemented in VuoCompilerPublishedPort, VuoCompilerTriggerPort, and VuoCompilerEventPort.

Value * VuoCompilerPort::generateGetPortContext ( Module *  module,
BasicBlock *  block,
Value *  nodeContextValue 
)

Returns this port's context.

Value * VuoCompilerPort::getDataVariable ( Module *  module,
BasicBlock *  block,
Value *  nodeContextValue 
)

Returns the address of the data field within this port's context.

VuoType * VuoCompilerPort::getDataVuoType ( void  )

Returns this port's data type, or null if this port is event-only.

If setDataVuoType() has been called, returns that type. Otherwise returns the type from the port class.

string VuoCompilerPort::getIdentifier ( void  )
virtual

Returns a unique, consistent identifier for this port.

Reimplemented in VuoCompilerPublishedPort.

int VuoCompilerPort::getIndexInPortContexts ( void  )

Returns the index of this node within the array of port contexts within the node context.

bool VuoCompilerPort::hasConnectedCable ( void  ) const

Returns a boolean indicating whether this port has any attached cables.

bool VuoCompilerPort::hasConnectedDataCable ( void  ) const

Returns a boolean indicating whether this port has any attached data+event cables.

void VuoCompilerPort::setConstantStringCache ( VuoCompilerConstantStringCache constantStrings)

Sets the cache used to generate constant string values.

This must be called before generating bitcode.

void VuoCompilerPort::setDataVuoType ( VuoType dataType)

Sets the data type for this port, overriding the type from the port class.

void VuoCompilerPort::setIndexInPortContexts ( int  indexInPortContexts)

Sets the index of this node within the array of port contexts within the node context.

void VuoCompilerPort::setNodeIdentifier ( string  nodeIdentifier)

Sets an identifier that will be part of the string returned by getIdentifier().

Member Data Documentation

VuoCompilerConstantStringCache* VuoCompilerPort::constantStrings
protected

Cache used to generate constant string values.


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