|
openETCS
case study for the European Train Control System developed for the authors dissertation
|
graph class More...
#include <Graph.h>


Public Member Functions | |
| CGraph (const ::std::string &OID="", const ::std::string &Type="", const ::std::string &ID="", const std::map< ::std::string,::GOPPRR::CProperty * > &Properties=std::map< ::std::string,::GOPPRR::CProperty * >(), const std::vector< ::GOPPRR::CBinding > &BindingSet=std::vector< ::GOPPRR::CBinding >(), const std::vector< ::GOPPRR::CGraphicalContainer > &Containers=std::vector< ::GOPPRR::CGraphicalContainer >(), const std::map< std::string,::GOPPRR::CObject * > &ObjectSet=std::map< std::string,::GOPPRR::CObject * >(), const std::map< std::string,::GOPPRR::CPort * > &PortSet=std::map< std::string,::GOPPRR::CPort * >(), const std::map< std::string,::GOPPRR::CRelationship * > &RelationshipSet=std::map< std::string,::GOPPRR::CRelationship * >(), const std::map< std::string,::GOPPRR::CRole * > &RoleSet=std::map< std::string,::GOPPRR::CRole * >()) throw () | |
| general constructor | |
| CGraph (const CGraph &Source) throw () | |
| copy constructor | |
| ::std::map< ::std::string, GOPPRR::CObject * > | Contained (GOPPRR::CObject *const pObject, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CObject * > | Container (GOPPRR::CObject *const pObject, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CObject * > | Objects (GOPPRR::CPort *const pPort, GOPPRR::CRole *const pRole, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CObject * > | Objects (GOPPRR::CRole *const pRole, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CObject * > | Objects (GOPPRR::CRole *const pRole, const ::std::string &Type, const bool &bSubString=false, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CObject * > | Objects (const ::std::string &Type, const bool &bSubString=false, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| CGraph & | operator= (const CGraph &Source) throw () |
| assignment operator | |
| ::std::map< ::std::string, GOPPRR::CPort * > | Ports (GOPPRR::CRole *const pRole, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CPort * > | Ports (GOPPRR::CObject *const pObject, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CPort * > | Ports (GOPPRR::CObject *const pObject, const ::std::string &Type, const bool &bSubString=false, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CProperty * > | Properties (const ::std::string &Type, const bool &bSubString=false, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CRelationship * > | Relationships (GOPPRR::CRole *const pRole, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CRelationship * > | Relationships (GOPPRR::CRole *const pRole, const ::std::string &Type, const bool &bSubString=false, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CRole * > | Roles (GOPPRR::CObject *const pObject, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CRole * > | Roles (GOPPRR::CObject *const pObject, const ::std::string &Type, const bool &bSubString=false, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CRole * > | Roles (GOPPRR::CObject *const pObject, GOPPRR::CPort *const pPort, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CRole * > | Roles (GOPPRR::CRelationship *const pRelationship, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CRole * > | Roles (GOPPRR::CObject *const pObject, GOPPRR::CPort *const pPort, const ::std::string &Type, const bool &bSubString=false, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CRole * > | Roles (GOPPRR::CRelationship *const pRelationship, const ::std::string &Type, const bool &bSubString=false, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| ::std::map< ::std::string, GOPPRR::CRole * > | Roles (GOPPRR::CRole *const pRole, const ::std::string &Type, const bool &bSubString=false, const bool &bUseException=true) const throw (::GOPPRR::Error::CEmpty) |
| abstraction method | |
| virtual | ~CGraph () throw () |
| destructor | |
Public Attributes | |
| ::std::vector< GOPPRR::CBinding > | m_BindingSet |
| set of bindings in a graph | |
| ::std::vector < GOPPRR::CGraphicalContainer > | m_Containers |
| graphical containments in a graph | |
| ::std::string | m_ID |
| (literal) identifier of element | |
| ::std::map< std::string, GOPPRR::CObject * > | m_ObjectSet |
| set of objects in a graph | |
| ::std::string | m_OID |
| unique object identifier | |
| ::std::map< std::string, GOPPRR::CPort * > | m_PortSet |
| set of ports | |
| ::std::map< std::string, GOPPRR::CProperty * > | m_Properties |
| properties of non-properties | |
| ::std::map< std::string, GOPPRR::CRelationship * > | m_RelationshipSet |
| set of relationships in a graph | |
| ::std::map< std::string, GOPPRR::CRole * > | m_RoleSet |
| role set of a graph | |
| ::std::string | m_Type |
| name of a type | |
| GOPPRR::CGraph::CGraph | ( | const ::std::string & | OID = "", |
| const ::std::string & | Type = "", |
||
| const ::std::string & | ID = "", |
||
| const std::map< ::std::string,::GOPPRR::CProperty * > & | Properties = std::map< ::std::string, ::GOPPRR::CProperty* >(), |
||
| const std::vector< ::GOPPRR::CBinding > & | BindingSet = std::vector< ::GOPPRR::CBinding >(), |
||
| const std::vector< ::GOPPRR::CGraphicalContainer > & | Containers = std::vector< ::GOPPRR::CGraphicalContainer >(), |
||
| const std::map< std::string,::GOPPRR::CObject * > & | ObjectSet = std::map< std::string, ::GOPPRR::CObject* >(), |
||
| const std::map< std::string,::GOPPRR::CPort * > & | PortSet = std::map< std::string, ::GOPPRR::CPort* >(), |
||
| const std::map< std::string,::GOPPRR::CRelationship * > & | RelationshipSet = std::map< std::string, ::GOPPRR::CRelationship* >(), |
||
| const std::map< std::string,::GOPPRR::CRole * > & | RoleSet = std::map< std::string, ::GOPPRR::CRole* >() |
||
| ) | throw () |
general constructor
| [in] | OID | object identifier |
| [in] | Type | literal name of the type |
| [in] | ID | identifier |
| [in] | Properties | set of property references |
| [in] | BindingSet | set of bindings |
| [in] | Containers | set of graphical containers |
| [in] | ObjectSet | set of objects |
| [in] | PortSet | set of ports |
| [in] | RelationshipSet | set of relationships |
| [in] | RoleSet | set of roles |
| GOPPRR::CGraph::CGraph | ( | const CGraph & | Source | ) | throw () |
| std::map<::std::string, GOPPRR::CObject * > GOPPRR::CGraph::Contained | ( | GOPPRR::CObject *const | pObject, |
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets all objects graphical contained by a another one in a certain graph.
| [in] | pObject | pointer to the object |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
| std::map<::std::string, GOPPRR::CObject * > GOPPRR::CGraph::Container | ( | GOPPRR::CObject *const | pObject, |
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
| std::map<::std::string, GOPPRR::CObject * > GOPPRR::CGraph::Objects | ( | GOPPRR::CPort *const | pPort, |
| GOPPRR::CRole *const | pRole, | ||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets all objects connected to a certain port and role in a certain graph.
| [in] | pPort | pointer to the port |
| [in] | pRole | pointer to the role |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
Definition at line 776 of file Graph.cpp.
Referenced by oETCS::GEN::CCPPGenerator::GenerateControlFlows(), oETCS::GEN::CCPPGenerator::GenerateLanguage(), and oETCS::GEN::CCPPGenerator::GenerateTransitions().

| std::map<::std::string, GOPPRR::CObject * > GOPPRR::CGraph::Objects | ( | GOPPRR::CRole *const | pRole, |
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
| std::map<::std::string, GOPPRR::CObject * > GOPPRR::CGraph::Objects | ( | GOPPRR::CRole *const | pRole, |
| const ::std::string & | Type, | ||
| const bool & | bSubString = false, |
||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets certain types of objects connected to a certain role in a certain graph.
| [in] | pRole | pointer to the role |
| [in] | Type | object type |
| [in] | bSubString | if true, Type only must be a substring of object type |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
| std::map<::std::string, GOPPRR::CObject * > GOPPRR::CGraph::Objects | ( | const ::std::string & | Type, |
| const bool & | bSubString = false, |
||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets certain types of objects in a certain graph.
| [in] | Type | object type |
| [in] | bSubString | if true, Type only must be a substring of object type |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
Definition at line 953 of file Graph.cpp.
References m_ObjectSet.
| GOPPRR::CGraph & GOPPRR::CGraph::operator= | ( | const CGraph & | Source | ) | throw () |
assignment operator
| [in] | Source | object instance to assign from |
Definition at line 1088 of file Graph.cpp.
References m_BindingSet.
| std::map<::std::string, GOPPRR::CPort * > GOPPRR::CGraph::Ports | ( | GOPPRR::CRole *const | pRole, |
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
| std::map<::std::string, GOPPRR::CPort * > GOPPRR::CGraph::Ports | ( | GOPPRR::CObject *const | pObject, |
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
| std::map<::std::string, GOPPRR::CPort * > GOPPRR::CGraph::Ports | ( | GOPPRR::CObject *const | pObject, |
| const ::std::string & | Type, | ||
| const bool & | bSubString = false, |
||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets certain types of ports connected to a certain object in a certain graph.
| [in] | pObject | pointer to the object |
| [in] | Type | port type |
| [in] | bSubString | if true, Type only must be a substring of port type |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
|
inherited |
abstraction method
Gets certain properties of a non-property object
| [in] | Type | property type |
| [in] | bSubString | if true, Type only must be a substring of property type |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
Definition at line 90 of file NonProperty.cpp.
Referenced by oETCS::GEN::CCPPGenerator::GenerateDataFlow(), oETCS::GEN::CCPPGenerator::GenerateEVCTransitions(), oETCS::GEN::CCPPGenerator::GenerateFunctionBlockElements(), oETCS::GEN::CCPPGenerator::GenerateLanguage(), and oETCS::GEN::CCPPGenerator::GenerateRootGraph().

| std::map<::std::string, GOPPRR::CRelationship * > GOPPRR::CGraph::Relationships | ( | GOPPRR::CRole *const | pRole, |
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
| std::map<::std::string, GOPPRR::CRelationship * > GOPPRR::CGraph::Relationships | ( | GOPPRR::CRole *const | pRole, |
| const ::std::string & | Type, | ||
| const bool & | bSubString = false, |
||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets certain types of relationships connected to a certain role in a certain graph.
| [in] | pRole | pointer to the role |
| [in] | Type | relationship type |
| [in] | bSubString | if true, Type only must be a substring of relationship type |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
| std::map<::std::string, GOPPRR::CRole * > GOPPRR::CGraph::Roles | ( | GOPPRR::CObject *const | pObject, |
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets all roles connected to a certain object in a certain graph.
| [in] | pObject | pointer to the object |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
Definition at line 81 of file Graph.cpp.
Referenced by oETCS::GEN::CCPPGenerator::GenerateControlFlows(), and oETCS::GEN::CCPPGenerator::GenerateLanguage().

| std::map<::std::string, GOPPRR::CRole * > GOPPRR::CGraph::Roles | ( | GOPPRR::CObject *const | pObject, |
| const ::std::string & | Type, | ||
| const bool & | bSubString = false, |
||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets certain roles connected to a certain object in a certain graph.
| [in] | pObject | pointer to the object |
| [in] | Type | role type |
| [in] | bSubString | if true, Type only must be a substring of role type |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
| std::map<::std::string, GOPPRR::CRole * > GOPPRR::CGraph::Roles | ( | GOPPRR::CObject *const | pObject, |
| GOPPRR::CPort *const | pPort, | ||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets all roles connected to a certain port and object in a certain graph.
| [in] | pPort | pointer to the port |
| [in] | pObject | pointer to the object |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
| std::map<::std::string, GOPPRR::CRole * > GOPPRR::CGraph::Roles | ( | GOPPRR::CRelationship *const | pRelationship, |
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets all roles connected to a certain relationship in a certain graph.
| [in] | pRelationship | pointer to the relationship |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
| std::map<::std::string, GOPPRR::CRole * > GOPPRR::CGraph::Roles | ( | GOPPRR::CObject *const | pObject, |
| GOPPRR::CPort *const | pPort, | ||
| const ::std::string & | Type, | ||
| const bool & | bSubString = false, |
||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets all certain types of roles connected to a certain port and object in a certain graph.
| [in] | pPort | pointer to the port |
| [in] | pObjectt | pointer to the object |
| [in] | Type | role type |
| [in] | bSubString | if true, Type only must be a substring of role type |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
| std::map<::std::string, GOPPRR::CRole * > GOPPRR::CGraph::Roles | ( | GOPPRR::CRelationship *const | pRelationship, |
| const ::std::string & | Type, | ||
| const bool & | bSubString = false, |
||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets all certain types of roles connected to a certain relationship in a certain graph.
| [in] | pRelationship | pointer to the relationship |
| [in] | Type | role type |
| [in] | bSubString | if true, Type only must be a substring of role type |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
| std::map<::std::string, GOPPRR::CRole * > GOPPRR::CGraph::Roles | ( | GOPPRR::CRole *const | pRole, |
| const ::std::string & | Type, | ||
| const bool & | bSubString = false, |
||
| const bool & | bUseException = true |
||
| ) | const throw (::GOPPRR::Error::CEmpty) |
abstraction method
Gets all certain types of roles connected to a certain another role in a certain graph. This skips the navigation via the related relationship.
| [in] | pRole | pointer to the role |
| [in] | Type | role type |
| [in] | bSubString | if true, Type only must be a substring of role type |
| [in] | bUseException | optional boolean flag for throwing a exception in case of an empty map |
| ::std::vector< GOPPRR::CBinding > GOPPRR::CGraph::m_BindingSet |
set of bindings in a graph
Set of bindings in a graph.
Definition at line 373 of file Graph.h.
Referenced by operator=().
| ::std::vector< GOPPRR::CGraphicalContainer > GOPPRR::CGraph::m_Containers |
|
inherited |
(literal) identifier of element
Definition at line 103 of file NonProperty.h.
Referenced by oETCS::GEN::CMain::Execute(), oETCS::GEN::CBuildGenerator::Generate(), oETCS::GEN::CVMGenerator::Generate(), oETCS::GEN::CCPPGenerator::GenerateCommunication(), oETCS::GEN::CCPPGenerator::GenerateEVCTransitions(), oETCS::GEN::CVMGenerator::GeneratePSM(), and GOPPRR::CNonProperty::operator=().
| ::std::map< std::string,GOPPRR::CObject* > GOPPRR::CGraph::m_ObjectSet |
set of objects in a graph
Set of objects in a graph indexed by their OID.
Definition at line 383 of file Graph.h.
Referenced by oETCS::GEN::CCPPGenerator::BuildAbstractModel(), oETCS::GEN::CCPPGenerator::GenerateCommunication(), oETCS::GEN::CCPPGenerator::GenerateControlFlows(), oETCS::GEN::CCPPGenerator::GenerateDataFlow(), oETCS::GEN::CCPPGenerator::GenerateDataFlowForCommunication(), oETCS::GEN::CCPPGenerator::GenerateDMI(), oETCS::GEN::CCPPGenerator::GenerateEVCTransitions(), oETCS::GEN::CCPPGenerator::GenerateFunctionBlock(), oETCS::GEN::CCPPGenerator::GenerateFunctionBlockElements(), oETCS::GEN::CCPPGenerator::GenerateLanguage(), oETCS::GEN::CCPPGenerator::GenerateTransitions(), and Objects().
|
inherited |
unique object identifier
Definition at line 78 of file Concept.h.
Referenced by oETCS::GEN::CCPPGenerator::BuildAbstractModel(), oETCS::GEN::CCPPGenerator::GenerateCommunication(), oETCS::GEN::CCPPGenerator::GenerateDataFlow(), oETCS::GEN::CCPPGenerator::GenerateDataFlowForCommunication(), oETCS::GEN::CCPPGenerator::GenerateEVCTransitions(), oETCS::GEN::CCPPGenerator::GenerateLanguage(), oETCS::GEN::CCPPGenerator::GenerateRootGraph(), oETCS::GEN::CCPPGenerator::GenerateTransitions(), GOPPRR::CConcept::operator=(), and oETCS::UT::CGOPPRRTransformer::TestCreateSyntax().
| ::std::map< std::string,GOPPRR::CPort* > GOPPRR::CGraph::m_PortSet |
set of ports
Set of ports indexed by their OID.
Definition at line 393 of file Graph.h.
Referenced by oETCS::GEN::CCPPGenerator::GenerateCommunication(), oETCS::GEN::CCPPGenerator::GenerateFunctionBlock(), oETCS::GEN::CCPPGenerator::GenerateFunctionBlockElements(), and oETCS::GEN::CCPPGenerator::GenerateLanguage().
|
inherited |
properties of non-properties
Properties of non-properties indexed by their OID
Definition at line 113 of file NonProperty.h.
Referenced by oETCS::GEN::CCPPGenerator::GenerateLanguage().
| ::std::map< std::string,GOPPRR::CRelationship* > GOPPRR::CGraph::m_RelationshipSet |
set of relationships in a graph
Set of relationships in a graph indexed by their OID
Definition at line 403 of file Graph.h.
Referenced by oETCS::GEN::CCPPGenerator::GenerateCommunication(), oETCS::GEN::CCPPGenerator::GenerateControlFlows(), oETCS::GEN::CCPPGenerator::GenerateDataFlow(), oETCS::GEN::CCPPGenerator::GenerateDataFlowForCommunication(), oETCS::GEN::CCPPGenerator::GenerateEVCTransitions(), oETCS::GEN::CCPPGenerator::GenerateFunctionBlock(), and oETCS::GEN::CCPPGenerator::GenerateTransitions().
| ::std::map< std::string,GOPPRR::CRole* > GOPPRR::CGraph::m_RoleSet |
role set of a graph
Role set of a graph indexed by their OID.
Definition at line 413 of file Graph.h.
Referenced by oETCS::GEN::CCPPGenerator::BuildAbstractModel(), oETCS::GEN::CCPPGenerator::GenerateCommunication(), oETCS::GEN::CCPPGenerator::GenerateControlFlows(), oETCS::GEN::CCPPGenerator::GenerateDataFlow(), oETCS::GEN::CCPPGenerator::GenerateEVCTransitions(), oETCS::GEN::CCPPGenerator::GenerateFunctionBlock(), oETCS::GEN::CCPPGenerator::GenerateLanguage(), and oETCS::GEN::CCPPGenerator::GenerateTransitions().
|
inherited |
name of a type
Definition at line 85 of file Concept.h.
Referenced by oETCS::GEN::CCPPGenerator::GenerateControlFlows(), oETCS::GEN::CCPPGenerator::GenerateDataFlowForCommunication(), oETCS::GEN::CCPPGenerator::GenerateLanguage(), and oETCS::GEN::CCPPGenerator::GenerateTransitions().
Copyright (C) 2010-2012 Johannes Feuser (feuser@uni-bremen.de)
The openETCS library is free software: you can redistribute it
and/or modify it under the terms of the GNU General Public License
as published by the Free Software Foundation, either version 3 of
the License, or any later version.
The openETCS library is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied warranty
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with the openETCS library. If not, see
"http://www.gnu.org/licenses/.