itom  3.0.0
ito::AbstractNode Class Referenceabstract
Inheritance diagram for ito::AbstractNode:
ito::AbstractFigure ito::AbstractDObjFigure ito::AbstractDObjPclFigure

Public Member Functions

virtual RetVal applyUpdate (void)=0
 
virtual RetVal update (void)=0
 
RetVal updateParam (const ito::ParamBase *input, int isSource=0)
 
RetVal updateParam (const QHash< QString, ito::ParamBase * > *inputs)
 

this function must ONLY be used for the root of a tree. Sets several input parameters at once

More...
 
rttiNodeType getType () const
 
virtual RetVal addChannel (AbstractNode *child, ito::Param *parentParam, ito::Param *childParam, Channel::ChanDirection direction, bool deleteOnParentDisconnect, bool deleteOnChildDisconnect)=0
 
virtual RetVal addChannel (Channel *newChannel)=0
 
virtual RetVal removeChannelFromList (unsigned int UniqueID)=0
 
virtual RetVal removeChannel (Channel *delChannel)=0
 
RetVal getUpdateStatus (void) const
 
RetVal updateChannels (const QList< QString > &paramNames)
 
bool isConnected () const
 
int getUniqueID (void) const
 
RetVal setUpdatePending (int uniqueID=-1)
 
ChannelgetInputChannel (const char *inpParamName) const
 
ito::ParamgetInputParam (const QString &paramName) const
 
ito::ParamgetOutputParam (const QString &paramName) const
 

Protected Attributes

rttiNodeType m_NodeType
 
QHash< QString, ito::Param * > m_pInput
 

the type of the actual node inheriting this abstract node


 
QHash< QString, ito::Param * > m_pOutput
 

the node's input parameters


 
QHash< unsigned int, Channel * > m_pChannels
 

the node's output parameters


 
int m_uniqueID
 >
 

Static Protected Attributes

static unsigned int UID = 1
 

Member Function Documentation

virtual RetVal ito::AbstractNode::addChannel ( AbstractNode child,
ito::Param parentParam,
ito::Param childParam,
Channel::ChanDirection  direction,
bool  deleteOnParentDisconnect,
bool  deleteOnChildDisconnect 
)
pure virtual

the addChannel and especially removeChannel are virtual since the Node might have to delete itself depending on the deleteOnDisconnect flag. As delete(this) is frowned upon, we need QObject::deleteLater() unavailable here as the class is not derived from QObject

Implemented in ito::AbstractFigure.

virtual RetVal ito::AbstractNode::update ( void  )
pure virtual

Performs the in INTERNAL operations necessary in updating the node and displaying the data. This has to implemented

in each final successor in the inheritance structure. Anyway the "displayed" parameter MUST be filled adequately as this can only be done by the node itself.

Implemented in ito::AbstractFigure, ito::AbstractDObjPclFigure, and ito::AbstractDObjFigure.

RetVal AbstractNode::updateParam ( const ito::ParamBase input,
int  isSource = 0 
)

Calls apply () and updates all children

RetVal ito::AbstractNode::updateParam ( const QHash< QString, ito::ParamBase * > *  inputs)
inline

this function must ONLY be used for the root of a tree. Sets several input parameters at once

Updates the input param of the associated node and attempts to propagate the update down the node tree.

It DOES NOT/CANNOT, however, ensure that the output parameters of the node are updated correctly, this functionality has to be a part of update().


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