itom 2.2.1
ito::Channel Class Reference

List of all members.

Public Types

enum  ChanDirection { undefined, parentToChild, childToParent }

Public Member Functions

 Channel (AbstractNode *parent, ito::Param *parentParam, bool deleteOnParentDisconnect, AbstractNode *child, ito::Param *childParam, bool deleteOnChildDiconnect, ChanDirection direction, bool update=false)
AbstractNodegetParent () const
AbstractNodegetChild () const
ChanDirection getDirection () const
bool getUpdatePending () const
unsigned int getUniqueID () const
ito::ParamgetOwnParam (AbstractNode *self) const
ito::ParamgetPartnerParam (AbstractNode *self) const
QString getSenderParamName () const
signed char getDeleteBehaviour (AbstractNode *query) const
RetVal propagateUpdatePending ()
bool getChannelBuffering () const
void setChannelBuffering (bool buffering)
uint getHash () const
ito::ParamgetParentParam () const
ito::ParamgetChildParam () const
void resetUpdatePending (void)
bool isSender (AbstractNode *query)
bool isReceiver (AbstractNode *query) const
AbstractNodegetSender (void) const
AbstractNodegetReceiver (void) const

Private Attributes

unsigned int m_uniqueID
AbstractNodem_pParent
AbstractNodem_pChild
ChanDirection m_direction
ito::Paramm_pParentParam
ito::Paramm_pChildParam
 > the parameter-connector on the parentīs side (can be sending or receiving)
bool m_deleteParentOnDisconnect
 > the parameter-connector on the childīs side (can be sending or receiving)
bool m_deleteChildOnDisconnect
bool m_updatePending
bool m_channelBuffering
 > tells the receiver to wait for updates before proceeding
uint m_hashVal
 > marks, if the Receiver has received and is buffering data from a new source

Static Private Attributes

static unsigned int UID = 1

Member Function Documentation

uint ito::Channel::getHash ( ) const [inline]

> The hash identifying this channel in the connection list of the participating nodes

ito::Param* ito::Channel::getOwnParam ( AbstractNode self) const [inline]

> returns the own node's parameter participating in this channel. Note: The roles of sender/receiver are not relevant in this context

ito::Param* ito::Channel::getPartnerParam ( AbstractNode self) const [inline]

> returns the other node's parameter participating in this channel. Note: The roles of sender/receiver are not relevant in this context

AbstractNode* ito::Channel::getReceiver ( void  ) const [inline]

> returns a pointer to the node filling the role of receiver in this channel. Useful, since parent/child do not have predefined roles

AbstractNode* ito::Channel::getSender ( void  ) const [inline]

> returns a pointer to the node filling the role of sender in this channel. Useful, since parent/child do not have predefined roles

bool ito::Channel::isReceiver ( AbstractNode query) const [inline]

> returns true, if the node given as the argument fills the role of receiver in this channel. Useful, since parent/child do not have predefined roles

bool ito::Channel::isSender ( AbstractNode query) [inline]

> returns true, if the node given as the argument fills the role of sender in this channel. Useful, since parent/child do not have predefined roles

ito::RetVal Channel::propagateUpdatePending ( )

> prepares the whole sub tree of nodes rooted at the sending node of this channel for an incoming update. Note: this function does NOT propagate any actual data

void ito::Channel::resetUpdatePending ( void  ) [inline]

> Sets the updatePending flag of this channel back to false. Note: This reset is NOT propagated down the node tree


Member Data Documentation

ChanDirection ito::Channel::m_direction [private]

> The node that is not the parent. Note: the child is NOT necessarily the receiver in the channel

> The node calling the constructor of the channel. Note: the parent is NOT necessarily the sender in the channel

> Unique indentifier used in the UiOrganizer

> Defines whether the parent or the child are the sender/receiver in this channel

unsigned int ito::Channel::m_uniqueID [private]

> Running counter for nodes created in the UiOrganizer

> Flags defining the behaviour of the connected nodes upon a disconnect. If one of these flags is set to TRUE, the corresponding node is deleted, when the connection is cut. Note:


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