Public Member Functions | Protected Member Functions | Protected Attributes | Friends

openjaus::model::SystemTree Class Reference

This is a brief description. More...

#include <SystemTree.h>

List of all members.

Public Member Functions

 SystemTree ()
virtual ~SystemTree ()
const std::map< short,
Subsystem * > & 
getSubsystems () const
 Accessor to get the value of subsystems.
const system::MutexgetMutex () const
 Accessor to get the value of mutex.
const transport::AddressgetThisAddress () const
 Accessor to get the value of thisAddress.
bool setThisAddress (const transport::Address &thisAddress)
 Accessor to set value of thisAddress.
bool hasComponent (const transport::Address &address)
bool hasComponent (short subsystemId, unsigned char nodeId, unsigned char componentId)
 Operation hasComponent.
bool hasNode (const transport::Address &address)
bool hasNode (short subsystemId, unsigned char nodeId)
 Operation hasNode.
bool hasSubsystem (const transport::Address &address)
bool hasSubsystem (short subsystemId)
 Operation hasSubsystem.
bool hasComponentIdentification (Component &component)
 Operation hasComponentIdentification.
bool hasComponentIdentification (const transport::Address &address)
bool hasComponentIdentification (short subsystemId, unsigned char nodeId, unsigned char componentId)
 Operation hasComponentIdentification.
bool hasNodeIdentification (Node &node)
 Operation hasNodeIdentification.
bool hasNodeIdentification (const transport::Address &address)
bool hasNodeIdentification (short subsystemId, unsigned char nodeId)
 Operation hasNodeIdentification.
bool hasSubsystemIdentification (Subsystem &subsystem)
 Operation hasSubsystemIdentification.
bool hasSubsystemIdentification (const transport::Address &address)
bool hasSubsystemIdentification (short subsystemId)
 Operation hasSubsystemIdentification.
bool hasComponentConfiguration (Component &component)
 Operation hasComponentConfiguration.
bool hasComponentConfiguration (const transport::Address &address)
bool hasComponentConfiguration (short subsystemId, unsigned char nodeId, unsigned char componentId)
 Operation hasComponentConfiguration.
bool hasNodeConfiguration (Node &node)
 Operation hasNodeConfiguration.
bool hasNodeConfiguration (const transport::Address &address)
bool hasNodeConfiguration (short subsystemId, unsigned char nodeId)
 Operation hasNodeConfiguration.
bool hasSubsystemConfiguration (Subsystem &subsystem)
 Operation hasSubsystemConfiguration.
bool hasSubsystemConfiguration (const transport::Address &address)
bool hasSubsystemConfiguration (short subsystemId)
 Operation hasSubsystemConfiguration.
Component getComponent (Component &component)
 Operation getComponent.
Component getComponent (const transport::Address &address)
 Operation getComponent.
Component getComponent (short subsystemId, unsigned char nodeId, unsigned char componentId)
 Operation getComponent.
Node getNode (Node &node)
 Operation getNode.
Node getNode (const transport::Address &address)
 Operation getNode.
Node getNode (short subsystemId, unsigned char nodeId)
 Operation getNode.
Subsystem getSubsystem (Subsystem &subsystem)
 Operation getSubsystem.
Subsystem getSubsystem (const transport::Address &address)
 Operation getSubsystem.
Subsystem getSubsystem (short subsystemId)
 Operation getSubsystem.
bool addService (transport::Address address, std::string uri, int versionMajor, int versionMinor)
 Operation addService.
bool addComponent (Component &component)
 Operation addComponent.
bool addComponent (const transport::Address &address)
bool addComponent (short subsystemId, unsigned char nodeId, unsigned char componentId)
 Operation addComponent.
bool addNode (Node &node)
 Operation addNode.
bool addNode (const transport::Address &address)
bool addNode (short subsystemId, unsigned char nodeId)
 Operation addNode.
bool addSubsystem (Subsystem &subsystem)
 Operation addSubsystem.
bool addSubsystem (const transport::Address &address)
bool addSubsystem (short subsystemId)
 Operation addSubsystem.
bool replaceComponent (Component &component)
 Operation replaceComponent.
bool removeComponent (Component &component)
 Operation removeComponent.
bool removeComponent (const transport::Address &address)
bool removeComponent (short subsystemId, unsigned char nodeId, unsigned char componentId)
 Operation removeComponent.
bool removeNode (Node &node)
 Operation removeNode.
bool removeNode (const transport::Address &address)
bool removeNode (short subsystemId, unsigned char nodeId)
 Operation removeNode.
bool removeSubsystem (Subsystem &subsystem)
 Operation removeSubsystem.
bool removeSubsystem (const transport::Address &address)
bool removeSubsystem (short subsystemId)
 Operation removeSubsystem.
void lock ()
 Operation lock.
void unlock ()
 Operation unlock.
unsigned char getAvailableComponentId ()
 Operation getAvailableComponentId.
unsigned char getAvailableNodeId ()
 Operation getAvailableNodeId.
short getAvailableSubsystemId ()
 Operation getAvailableSubsystemId.
bool setComponentIdentification (const transport::Address &address, std::string name)
 Operation setComponentIdentification.
bool setNodeIdentification (const transport::Address &address, std::string name)
 Operation setNodeIdentification.
bool setSubsystemIdentification (const transport::Address &address, std::string name)
 Operation setSubsystemIdentification.
std::string toString () const
bool setThisSubsystem (short subsystem)
 Accessor to set value of subsystem.
bool setThisNode (unsigned char node)
 Accessor to set value of node.
bool setThisComponent (unsigned char component)
 Accessor to set value of component.
transport::AddressgetThisAddressPointer ()
std::vector< uint16_tgetSubsystemIds ()
Json::Value toJson () const
std::string toXml (unsigned char level=0) const
std::vector< transport::AddresslookupService (std::string uri, int versionMajor=Service::ANY_VERSION, int versionMinor=Service::ANY_VERSION, transport::Address addressHint=transport::Address(transport::Address::ANY_SUBSYSTEM, transport::Address::ANY_NODE, transport::Address::ANY_COMPONENT))
std::vector< transport::AddresslookupComponent (std::string name, transport::Address addressHint=transport::Address(transport::Address::ANY_SUBSYSTEM, transport::Address::ANY_NODE, transport::Address::ANY_COMPONENT))

Protected Member Functions

NodefindNode (short subsId, unsigned char nodeId)
ComponentfindComponent (short subsId, unsigned char nodeId, unsigned char cmptId)
void adjustAddress (short &subsId)
void adjustAddress (short &subsId, unsigned char &nodeId)
void adjustAddress (short &subsId, unsigned char &nodeId, unsigned char &cmptId)
void adjustAddress (transport::Address &address)

Protected Attributes

std::map< short, Subsystem * > subsystems
system::Mutex mutex
transport::Address thisAddress

Friends

std::ostream & operator<< (std::ostream &output, const SystemTree &object)

Detailed Description

Detailed description.

Author:
Name (name@email.com)

Constructor & Destructor Documentation

openjaus::model::SystemTree::SystemTree (  ) 
openjaus::model::SystemTree::~SystemTree (  )  [virtual]

Member Function Documentation

bool openjaus::model::SystemTree::addComponent ( Component component  ) 
Parameters:
component 
bool openjaus::model::SystemTree::addComponent ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::addComponent ( short  subsystemId,
unsigned char  nodeId,
unsigned char  componentId 
)
Parameters:
subsystemId 
nodeId 
componentId 
bool openjaus::model::SystemTree::addNode ( Node node  ) 
Parameters:
node 
bool openjaus::model::SystemTree::addNode ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::addNode ( short  subsystemId,
unsigned char  nodeId 
)
Parameters:
subsystemId 
nodeId 
bool openjaus::model::SystemTree::addService ( transport::Address  address,
std::string  uri,
int  versionMajor,
int  versionMinor 
)
Parameters:
address 
uri 
versionMajor 
versionMinor 
bool openjaus::model::SystemTree::addSubsystem ( Subsystem subsystem  ) 
Parameters:
subsystem 
bool openjaus::model::SystemTree::addSubsystem ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::addSubsystem ( short  subsystemId  ) 
Parameters:
subsystemId 
void openjaus::model::SystemTree::adjustAddress ( short &  subsId  )  [protected]
void openjaus::model::SystemTree::adjustAddress ( short &  subsId,
unsigned char &  nodeId 
) [protected]
void openjaus::model::SystemTree::adjustAddress ( short &  subsId,
unsigned char &  nodeId,
unsigned char &  cmptId 
) [protected]
void openjaus::model::SystemTree::adjustAddress ( transport::Address address  )  [protected]
Component * openjaus::model::SystemTree::findComponent ( short  subsId,
unsigned char  nodeId,
unsigned char  cmptId 
) [protected]
Node * openjaus::model::SystemTree::findNode ( short  subsId,
unsigned char  nodeId 
) [protected]
unsigned char openjaus::model::SystemTree::getAvailableComponentId (  ) 
unsigned char openjaus::model::SystemTree::getAvailableNodeId (  ) 
short openjaus::model::SystemTree::getAvailableSubsystemId (  ) 
Component openjaus::model::SystemTree::getComponent ( Component component  ) 
Parameters:
component 
Component openjaus::model::SystemTree::getComponent ( short  subsystemId,
unsigned char  nodeId,
unsigned char  componentId 
)
Parameters:
subsystemId 
nodeId 
componentId 
Component openjaus::model::SystemTree::getComponent ( const transport::Address address  ) 
Parameters:
address 
const system::Mutex & openjaus::model::SystemTree::getMutex (  )  const
Node openjaus::model::SystemTree::getNode ( short  subsystemId,
unsigned char  nodeId 
)
Parameters:
subsystemId 
nodeId 
Node openjaus::model::SystemTree::getNode ( Node node  ) 
Parameters:
node 
Node openjaus::model::SystemTree::getNode ( const transport::Address address  ) 
Parameters:
address 
Subsystem openjaus::model::SystemTree::getSubsystem ( Subsystem subsystem  ) 
Parameters:
subsystem 
Subsystem openjaus::model::SystemTree::getSubsystem ( short  subsystemId  ) 
Parameters:
subsystemId 
Subsystem openjaus::model::SystemTree::getSubsystem ( const transport::Address address  ) 
Parameters:
address 
std::vector< uint16_t > openjaus::model::SystemTree::getSubsystemIds (  ) 
const std::map< short, Subsystem * > & openjaus::model::SystemTree::getSubsystems (  )  const
const transport::Address & openjaus::model::SystemTree::getThisAddress (  )  const
transport::Address * openjaus::model::SystemTree::getThisAddressPointer (  ) 
bool openjaus::model::SystemTree::hasComponent ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::hasComponent ( short  subsystemId,
unsigned char  nodeId,
unsigned char  componentId 
)
Parameters:
subsystemId 
nodeId 
componentId 
bool openjaus::model::SystemTree::hasComponentConfiguration ( Component component  ) 
Parameters:
component 
bool openjaus::model::SystemTree::hasComponentConfiguration ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::hasComponentConfiguration ( short  subsystemId,
unsigned char  nodeId,
unsigned char  componentId 
)
Parameters:
subsystemId 
nodeId 
componentId 
bool openjaus::model::SystemTree::hasComponentIdentification ( Component component  ) 
Parameters:
component 
bool openjaus::model::SystemTree::hasComponentIdentification ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::hasComponentIdentification ( short  subsystemId,
unsigned char  nodeId,
unsigned char  componentId 
)
Parameters:
subsystemId 
nodeId 
componentId 
bool openjaus::model::SystemTree::hasNode ( short  subsystemId,
unsigned char  nodeId 
)
Parameters:
subsystemId 
nodeId 
bool openjaus::model::SystemTree::hasNode ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::hasNodeConfiguration ( Node node  ) 
Parameters:
node 
bool openjaus::model::SystemTree::hasNodeConfiguration ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::hasNodeConfiguration ( short  subsystemId,
unsigned char  nodeId 
)
Parameters:
subsystemId 
nodeId 
bool openjaus::model::SystemTree::hasNodeIdentification ( short  subsystemId,
unsigned char  nodeId 
)
Parameters:
subsystemId 
nodeId 
bool openjaus::model::SystemTree::hasNodeIdentification ( Node node  ) 
Parameters:
node 
bool openjaus::model::SystemTree::hasNodeIdentification ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::hasSubsystem ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::hasSubsystem ( short  subsystemId  ) 
Parameters:
subsystemId 
bool openjaus::model::SystemTree::hasSubsystemConfiguration ( Subsystem subsystem  ) 
Parameters:
subsystem 
bool openjaus::model::SystemTree::hasSubsystemConfiguration ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::hasSubsystemConfiguration ( short  subsystemId  ) 
Parameters:
subsystemId 
bool openjaus::model::SystemTree::hasSubsystemIdentification ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::hasSubsystemIdentification ( Subsystem subsystem  ) 
Parameters:
subsystem 
bool openjaus::model::SystemTree::hasSubsystemIdentification ( short  subsystemId  ) 
Parameters:
subsystemId 
void openjaus::model::SystemTree::lock (  ) 
std::vector< transport::Address > openjaus::model::SystemTree::lookupComponent ( std::string  name,
transport::Address  addressHint = transport::Address(transport::Address::ANY_SUBSYSTEMtransport::Address::ANY_NODE,transport::Address::ANY_COMPONENT) 
)
std::vector< transport::Address > openjaus::model::SystemTree::lookupService ( std::string  uri,
int  versionMajor = Service::ANY_VERSION,
int  versionMinor = Service::ANY_VERSION,
transport::Address  addressHint = transport::Address(transport::Address::ANY_SUBSYSTEMtransport::Address::ANY_NODE,transport::Address::ANY_COMPONENT) 
)
bool openjaus::model::SystemTree::removeComponent ( Component component  ) 
Parameters:
component 
bool openjaus::model::SystemTree::removeComponent ( short  subsystemId,
unsigned char  nodeId,
unsigned char  componentId 
)
Parameters:
subsystemId 
nodeId 
componentId 
bool openjaus::model::SystemTree::removeComponent ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::removeNode ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::removeNode ( Node node  ) 
Parameters:
node 
bool openjaus::model::SystemTree::removeNode ( short  subsystemId,
unsigned char  nodeId 
)
Parameters:
subsystemId 
nodeId 
bool openjaus::model::SystemTree::removeSubsystem ( Subsystem subsystem  ) 
Parameters:
subsystem 
bool openjaus::model::SystemTree::removeSubsystem ( const transport::Address address  )  [inline]
Parameters:
address 
bool openjaus::model::SystemTree::removeSubsystem ( short  subsystemId  ) 
Parameters:
subsystemId 
bool openjaus::model::SystemTree::replaceComponent ( Component component  ) 
Parameters:
component 
bool openjaus::model::SystemTree::setComponentIdentification ( const transport::Address address,
std::string  name 
)
Parameters:
address 
name 
bool openjaus::model::SystemTree::setNodeIdentification ( const transport::Address address,
std::string  name 
)
Parameters:
address 
name 
bool openjaus::model::SystemTree::setSubsystemIdentification ( const transport::Address address,
std::string  name 
)
Parameters:
address 
name 
bool openjaus::model::SystemTree::setThisAddress ( const transport::Address thisAddress  ) 
Parameters:
thisAddress The value of the new thisAddress.
bool openjaus::model::SystemTree::setThisComponent ( unsigned char  component  ) 
Parameters:
component The value of the new component.
bool openjaus::model::SystemTree::setThisNode ( unsigned char  node  ) 
Parameters:
node The value of the new node.
bool openjaus::model::SystemTree::setThisSubsystem ( short  subsystem  ) 
Parameters:
subsystem The value of the new subsystem.
Json::Value openjaus::model::SystemTree::toJson (  )  const
std::string openjaus::model::SystemTree::toString (  )  const
std::string openjaus::model::SystemTree::toXml ( unsigned char  level = 0  )  const
void openjaus::model::SystemTree::unlock (  ) 

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  output,
const SystemTree object 
) [friend]

Member Data Documentation

std::map< short, Subsystem * > openjaus::model::SystemTree::subsystems [protected]

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