itom 2.2.1
ito::AbstractNode Class Reference
Inheritance diagram for ito::AbstractNode:
ito::AbstractFigure ito::AbstractDObjFigure ito::AbstractDObjPclFigure

List of all members.

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
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::AbstractDObjFigure, ito::AbstractDObjPclFigure, and ito::AbstractFigure.

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().

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

> Calls apply () and updates all children


The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Properties Friends