#include <iso_visual_patch.h>
Inherited by iso::visual::CLToImageNode, iso::visual::DataToSceneObjectTransforms, iso::visual::DistributeNode< DataType >, iso::visual::Grid2BufferNode< DataType >, iso::visual::ImageProcessNode, iso::visual::ImageToCLNode, iso::visual::InvertImageNode, iso::visual::InvertImageNodeCL, iso::visual::InvertImageNodeCL2, iso::visual::InvertImageNodeCL3, iso::visual::LoadImageNode, iso::visual::LoadMeshNode, iso::visual::LoadMovieNode, iso::visual::MixImageNodeCL, iso::visual::SaveImageNode, iso::visual::SwarmDataReceiverNode, RotNode, and TestNode.
Inheritance diagram for iso::visual::PatchNode:
Public Member Functions | |
PatchNode () | |
constructor | |
PatchNode (const base::String &pName) | |
constructor | |
virtual | ~PatchNode () |
destructor | |
const base::String & | name () const |
return name of node | |
bool | active () const |
check if node is active | |
bool | changed () const |
returns true if not has changed since last update call | |
virtual void | setChanged (bool pChanged) |
set change flag | |
virtual void | setPermChanged (bool pPermChanged) |
set permanent change flag | |
int | inputConnectionCount () const |
return total number of input connections | |
int | outputConnectionCount () const |
return total number of output connections | |
int | activeOutputConnectionCount () const |
return total number of output connections to active nodes | |
bool | checkPort (const base::String &pPortName) const |
check if port exsists | |
bool | checkInputPort (const base::String &pPortName) const |
check if input port exsists | |
bool | checkOutputPort (const base::String &pPortName) const |
check if output port exsists | |
PatchPort & | port (const base::String &pPortName) throw (VisualException) |
retrieve port | |
PatchInputPort & | inputPort (const base::String &pPortName) throw (VisualException) |
retrieve input port | |
PatchOutputPort & | outputPort (const base::String &pPortName) throw (VisualException) |
retrieve output port | |
InputPorts & | inputPorts () |
return input ports | |
OutputPorts & | outputPorts () |
return output ports | |
template<typename DataType> | |
bool | checkTypedPort (const base::String &pPortName) const |
check if port exsists | |
template<typename DataType> | |
bool | checkTypedInputPort (const base::String &pPortName) const |
check if input port exsists | |
template<typename DataType> | |
bool | checkTypedOutputPort (const base::String &pPortName) const |
check if output port exsists | |
template<typename DataType> | |
TypedPatchInputPort< DataType > & | typedInputPort (const base::String &pPortName) throw (VisualException) |
retrieve input port | |
template<typename DataType> | |
TypedPatchOutputPort< DataType > & | typedOutputPort (const base::String &pPortName) throw (VisualException) |
retrieve output port | |
template<typename DataType> | |
DataType ** | get (const base::String &pPortName) throw (VisualException) |
return port data | |
void | set (const base::String &pPortName, const PatchNodeData &pData) throw (VisualException) |
directly set port data | |
void | connect (const base::String &pOutputPortName, PatchInputPort &pInputPort) throw (VisualException) |
connect output port to input port | |
void | disconnect (const base::String &pInputPortName) throw (VisualException) |
void | update () |
node update | |
virtual void | process () |
node process | |
Protected Member Functions | |
void | addInputPort (const base::String &pPortName, PatchInputPort *pInputPort) throw (VisualException) |
add input port | |
void | addOutputPort (const base::String &pPortName, PatchOutputPort *pOutputPort) throw (VisualException) |
add output port | |
template<typename DataType> | |
void | exportInputVariable (const base::String &pPortName, DataType **pVariable) throw (VisualException) |
expose variable via input port | |
template<typename DataType> | |
void | exportOutputVariable (const base::String &pPortName, DataType **pVariable) throw (VisualException) |
expose variable via output port | |
void | removePort (const base::String &pPortName) throw (VisualException) |
remove port | |
void | removeInputPort (const base::String &pPortName) throw (VisualException) |
remove input port | |
void | removeOutputPort (const base::String &pPortName) throw (VisualException) |
remove output port | |
Protected Attributes | |
base::String | mName |
bool | mActive |
bool | mChanged |
bool | mPermChanged |
InputPorts | mInputPorts |
OutputPorts | mOutputPorts |
unsigned int | mUpdateCallCount |
bool | mUpdating |
Static Protected Attributes | |
static base::String | sName |
basic patch node class
this class possesses input and output ports through which its internal variables can be exposed
variables that become exposed via input ports should be pointers to uninitialzed data
variables that become exposed via output ports should be properly initialized data
the update function is where all the node specific functionality happens
PatchNode::PatchNode | ( | ) |
constructor
PatchNode::PatchNode | ( | const base::String & | pName | ) |
constructor
pName | name of node |
PatchNode::~PatchNode | ( | ) | [virtual] |
destructor
const base::String & PatchNode::name | ( | ) | const |
return name of node
bool PatchNode::active | ( | ) | const |
check if node is active
bool PatchNode::changed | ( | ) | const |
returns true if not has changed since last update call
void PatchNode::setChanged | ( | bool | pChanged | ) | [virtual] |
set change flag
pChanged | changed flag |
void PatchNode::setPermChanged | ( | bool | pPermChanged | ) | [virtual] |
set permanent change flag
pChanged | permanent changed flag |
int PatchNode::inputConnectionCount | ( | ) | const |
return total number of input connections
int PatchNode::outputConnectionCount | ( | ) | const |
return total number of output connections
int PatchNode::activeOutputConnectionCount | ( | ) | const |
return total number of output connections to active nodes
bool PatchNode::checkPort | ( | const base::String & | pPortName | ) | const |
check if port exsists
bool PatchNode::checkInputPort | ( | const base::String & | pPortName | ) | const |
check if input port exsists
bool PatchNode::checkOutputPort | ( | const base::String & | pPortName | ) | const |
check if output port exsists
PatchPort & PatchNode::port | ( | const base::String & | pPortName | ) | throw (VisualException) |
retrieve port
pPortName | name of port |
VisualException | no port with specified name found |
PatchInputPort & PatchNode::inputPort | ( | const base::String & | pPortName | ) | throw (VisualException) |
retrieve input port
pPortName | name of input port |
VisualException | no input port with specified name found |
PatchOutputPort & PatchNode::outputPort | ( | const base::String & | pPortName | ) | throw (VisualException) |
retrieve output port
pPortName | name of output port |
VisualException | no output port with specified name found |
InputPorts & PatchNode::inputPorts | ( | ) |
return input ports
OutputPorts & PatchNode::outputPorts | ( | ) |
return output ports
bool iso::visual::PatchNode::checkTypedPort | ( | const base::String & | pPortName | ) | const |
check if port exsists
bool iso::visual::PatchNode::checkTypedInputPort | ( | const base::String & | pPortName | ) | const |
check if input port exsists
bool iso::visual::PatchNode::checkTypedOutputPort | ( | const base::String & | pPortName | ) | const |
check if output port exsists
TypedPatchInputPort< DataType > & iso::visual::PatchNode::typedInputPort | ( | const base::String & | pPortName | ) | throw (VisualException) |
retrieve input port
pPortName | name of input port |
VisualException | no input port with specified name found |
TypedPatchOutputPort< DataType > & iso::visual::PatchNode::typedOutputPort | ( | const base::String & | pPortName | ) | throw (VisualException) |
retrieve output port
pPortName | name of output port |
VisualException | no output port with specified name found |
DataType ** iso::visual::PatchNode::get | ( | const base::String & | pPortName | ) | throw (VisualException) |
return port data
pPortName | iport name |
VisualException | no port with specified name found |
void PatchNode::set | ( | const base::String & | pPortName, | |
const PatchNodeData & | pData | |||
) | throw (VisualException) |
directly set port data
pPortName | iport name | |
pData | port data |
VisualException | no port with specified name found |
void PatchNode::connect | ( | const base::String & | pOutputPortName, | |
PatchInputPort & | pInputPort | |||
) | throw (VisualException) |
connect output port to input port
pOutputPortName | name of output port (port is part of current node) | |
pInputPort | input port (part of any node) |
VisualException | failed to connect output port to input port |
void PatchNode::disconnect | ( | const base::String & | pInputPortName | ) | throw (VisualException) |
void PatchNode::update | ( | ) |
node update
void PatchNode::process | ( | ) | [virtual] |
node process
Reimplemented in RotNode, TestNode, iso::visual::CLToImageNode, iso::visual::DataToSceneObjectTransforms, iso::visual::DistributeNode< DataType >, iso::visual::Grid2BufferNode< DataType >, iso::visual::ImageProcessNode, iso::visual::ImageToCLNode, iso::visual::InvertImageNode, iso::visual::InvertImageNodeCL, iso::visual::InvertImageNodeCL2, iso::visual::InvertImageNodeCL3, iso::visual::LoadImageNode, iso::visual::LoadMeshNode, iso::visual::LoadMovieNode, iso::visual::MixImageNodeCL, iso::visual::SaveImageNode, and iso::visual::SwarmDataReceiverNode.
void PatchNode::addInputPort | ( | const base::String & | pPortName, | |
PatchInputPort * | pInputPort | |||
) | throw (VisualException) [protected] |
add input port
pPortName | name of input port | |
pInputPort | input port |
VisualException | input port name already exists |
void PatchNode::addOutputPort | ( | const base::String & | pPortName, | |
PatchOutputPort * | pOutputPort | |||
) | throw (VisualException) [protected] |
add output port
pPortName | name of output port | |
pOutputPort | output port |
VisualException | output port name already exists |
void iso::visual::PatchNode::exportInputVariable | ( | const base::String & | pPortName, | |
DataType ** | pVariable | |||
) | throw (VisualException) [protected] |
expose variable via input port
pPortName | name of input port | |
pVariable | variable to be exposed via input port |
VisualException | failed to expose variable via input port |
void iso::visual::PatchNode::exportOutputVariable | ( | const base::String & | pPortName, | |
DataType ** | pVariable | |||
) | throw (VisualException) [protected] |
expose variable via output port
pPortName | name of output port | |
pVariable | variable to be exposed via output port |
VisualException | failed to expose variable via output port |
void PatchNode::removePort | ( | const base::String & | pPortName | ) | throw (VisualException) [protected] |
remove port
pPortName | name of port |
VisualException | port not found |
void PatchNode::removeInputPort | ( | const base::String & | pPortName | ) | throw (VisualException) [protected] |
remove input port
pPortName | name of input port |
VisualException | input port not found |
void PatchNode::removeOutputPort | ( | const base::String & | pPortName | ) | throw (VisualException) [protected] |
remove output port
pPortName | name of output port |
VisualException | output port not found |
base::String iso::visual::PatchNode::sName [static, protected] |
class name
base::String iso::visual::PatchNode::mName [protected] |
name of node
bool iso::visual::PatchNode::mActive [protected] |
flag indicating whether node is active or not
bool iso::visual::PatchNode::mChanged [protected] |
flag indicating whether this node has changed since the last process call or not
bool iso::visual::PatchNode::mPermChanged [protected] |
brief flag that indicates whether this node is marked as permanently changed
InputPorts iso::visual::PatchNode::mInputPorts [protected] |
input port name / input port instance map
OutputPorts iso::visual::PatchNode::mOutputPorts [protected] |
output port name / output port instance map
unsigned int iso::visual::PatchNode::mUpdateCallCount [protected] |
number of update calls
bool iso::visual::PatchNode::mUpdating [protected] |
flag indicating whether node is currently updating