MIRA
Classes | Public Member Functions | Static Public Member Functions | Protected Attributes | Static Protected Attributes | Friends | List of all members
GatewayNode Class Reference

#include <topomap/GatewayNode.h>

Inheritance diagram for GatewayNode:
Inheritance graph
[legend]

Classes

class  OutgoingLinkIterator
 
class  OutgoingLinks
 Container adapter for outgoing links. More...
 

Public Member Functions

 GatewayNode ()
 
 ~GatewayNode ()
 
GatewayNodePtr thisP ()
 
template<typename Reflector >
void reflect (Reflector &r)
 
const std::string getFullName () const
 
void addLink (LinkPtr link)
 
void removeLink (LinkPtr link)
 
NodePtr getNode ()
 
const NodePtr getNode () const
 
void setGateway (GatewayPtr gw)
 
GatewayPtr getGateway ()
 
const GatewayPtr getGateway () const
 
GatewayNodePtr getParentGatewayNode ()
 Returns the connected gateway node within our parents node, or NULL if we are the topmost gateway node. More...
 
GatewayNodePtr getChildGatewayNode ()
 Returns the connected gateway node within our childs node, or NULL if we are the bottommost gateway node. More...
 
const LinkSetlinks () const
 
OutgoingLinks outgoingLinks ()
 
virtual GraphElementPtr findElement (const std::string &predicate)
 
virtual void setAttribute (const std::string &name, AttributePtr attribute)
 Sets the given object as attribute with the given name. More...
 
virtual void removeAttribute (const std::string &name, const mira::Class &attrClass)
 Removes the attribute with the given name and type. More...
 
template<typename AttributeClass >
void removeAttribute (const std::string &name)
 same as above, but easier interface, where datatype is specified as template parameter More...
 
virtual AttributePtr getAttributeUntyped (const std::string &name, const mira::Class &clazz, bool inherited=true)
 Returns NULL, if no such attribute exsits. More...
 
template<typename AttributeClass >
boost::shared_ptr< AttributeClass > getAttribute (const std::string &name, bool inherited=true)
 Returns NULL, if no such attribute exsits. More...
 
virtual void getAllAttributesUntyped (std::map< std::string, AttributePtr > &oAttributes, const mira::Class &clazz, bool inherited=true)
 
template<typename AttributeClass >
std::map< std::string, boost::shared_ptr< AttributeClass > > getAllAttributes (bool inherited=true)
 
template<typename AttributeClass >
boost::shared_ptr< AttributeClass > obtainAttribute (const std::string &name)
 Similar to getAttribute, but this method will create the attribute, if it does not exist yet. More...
 
virtual void setName (const std::string &name)
 
virtual const std::string & getName () const
 
virtual const GraphElementPtr findElement (const std::string &predicate) const
 

Static Public Member Functions

static GatewayNodePtr create ()
 

Protected Attributes

std::map< AttributeKey, AttributePtrmAttributes
 
std::string mName
 

Static Protected Attributes

static volatile uint32 sID
 

Friends

class TopoMap
 
class Node
 

Constructor & Destructor Documentation

◆ GatewayNode()

◆ ~GatewayNode()

Member Function Documentation

◆ create()

static GatewayNodePtr create ( )
inlinestatic

◆ thisP()

GatewayNodePtr thisP ( )
inline

◆ reflect()

void reflect ( Reflector &  r)
inline

◆ getFullName()

const std::string getFullName ( ) const

◆ addLink()

void addLink ( LinkPtr  link)

◆ removeLink()

void removeLink ( LinkPtr  link)

◆ getNode() [1/2]

NodePtr getNode ( )
inline

◆ getNode() [2/2]

const NodePtr getNode ( ) const
inline

◆ setGateway()

void setGateway ( GatewayPtr  gw)

◆ getGateway() [1/2]

GatewayPtr getGateway ( )
inline

◆ getGateway() [2/2]

const GatewayPtr getGateway ( ) const
inline

◆ getParentGatewayNode()

GatewayNodePtr getParentGatewayNode ( )

Returns the connected gateway node within our parents node, or NULL if we are the topmost gateway node.

◆ getChildGatewayNode()

GatewayNodePtr getChildGatewayNode ( )

Returns the connected gateway node within our childs node, or NULL if we are the bottommost gateway node.

◆ links()

const LinkSet& links ( ) const
inline

◆ outgoingLinks()

OutgoingLinks outgoingLinks ( )
inline

◆ findElement() [1/2]

virtual GraphElementPtr findElement ( const std::string &  predicate)
virtual

Reimplemented from GraphElement.

◆ setAttribute()

virtual void setAttribute ( const std::string &  name,
AttributePtr  attribute 
)
virtualinherited

Sets the given object as attribute with the given name.

◆ removeAttribute() [1/2]

virtual void removeAttribute ( const std::string &  name,
const mira::Class attrClass 
)
virtualinherited

Removes the attribute with the given name and type.

◆ removeAttribute() [2/2]

void removeAttribute ( const std::string &  name)
inlineinherited

same as above, but easier interface, where datatype is specified as template parameter

◆ getAttributeUntyped()

virtual AttributePtr getAttributeUntyped ( const std::string &  name,
const mira::Class clazz,
bool  inherited = true 
)
virtualinherited

Returns NULL, if no such attribute exsits.

Reimplemented in Node.

◆ getAttribute()

boost::shared_ptr<AttributeClass> getAttribute ( const std::string &  name,
bool  inherited = true 
)
inlineinherited

Returns NULL, if no such attribute exsits.

◆ getAllAttributesUntyped()

virtual void getAllAttributesUntyped ( std::map< std::string, AttributePtr > &  oAttributes,
const mira::Class clazz,
bool  inherited = true 
)
virtualinherited

Reimplemented in Node.

◆ getAllAttributes()

std::map<std::string, boost::shared_ptr<AttributeClass> > getAllAttributes ( bool  inherited = true)
inlineinherited

◆ obtainAttribute()

boost::shared_ptr<AttributeClass> obtainAttribute ( const std::string &  name)
inlineinherited

Similar to getAttribute, but this method will create the attribute, if it does not exist yet.

So this method will always return a valid pointer to an attribute. Moreover, it does NOT look for inherited attributes. The AttributeClass must be default-constructable to be used with this method.

◆ setName()

virtual void setName ( const std::string &  name)
inlinevirtualinherited

◆ getName()

virtual const std::string& getName ( ) const
inlinevirtualinherited

◆ findElement() [2/2]

virtual const GraphElementPtr findElement ( const std::string &  predicate) const
inlinevirtualinherited

Friends And Related Function Documentation

◆ TopoMap

friend class TopoMap
friend

◆ Node

friend class Node
friend

Member Data Documentation

◆ mAttributes

std::map<AttributeKey, AttributePtr> mAttributes
protectedinherited

◆ mName

std::string mName
protectedinherited

◆ sID

volatile uint32 sID
staticprotectedinherited

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