openETCS
case study for the European Train Control System developed for the authors dissertation
Public Member Functions | Public Attributes | List of all members
GOPPRR::CRole Struct Reference

role class reprensentation More...

#include <Role.h>

Inheritance diagram for GOPPRR::CRole:
Inheritance graph
Collaboration diagram for GOPPRR::CRole:
Collaboration graph

Public Member Functions

 CRole (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 * >()) throw ()
 general constructor
 CRole (const CRole &Source) throw ()
 copy constructor
CRoleoperator= (const CRole &Source) throw ()
 assignment operator
::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
virtual ~CRole () throw ()

Public Attributes

::std::map< std::string,
GOPPRR::CGraph * > 
m_Explosions
 explosion set of role
::std::string m_ID
 (literal) identifier of element
::std::string m_OID
 unique object identifier
::std::map< std::string,
GOPPRR::CProperty * > 
m_Properties
 properties of non-properties
::std::string m_Type
 name of a type

Detailed Description

role class reprensentation

Definition at line 47 of file Role.h.

Constructor & Destructor Documentation

GOPPRR::CRole::CRole ( 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* >() 
) throw ()

general constructor

Parameters
[in]OIDobject identifier
[in]TypeNameliteral name of type
[in]IDidentifier
[in]Propertiesset of property references

Definition at line 32 of file Role.cpp.

GOPPRR::CRole::CRole ( const CRole Source) throw ()

copy constructor

Parameters
[in]Sourceobject to copy

Definition at line 44 of file Role.cpp.

GOPPRR::CRole::~CRole ( ) throw ()
virtual

Definition at line 57 of file Role.cpp.

Member Function Documentation

GOPPRR::CRole & GOPPRR::CRole::operator= ( const CRole Source) throw ()

assignment operator

Parameters
[in]Sourceobject instance to assign from

Definition at line 67 of file Role.cpp.

References m_Explosions.

std::map<::std::string, GOPPRR::CProperty * > GOPPRR::CNonProperty::Properties ( const ::std::string &  Type,
const bool &  bSubString = false,
const bool &  bUseException = true 
) const throw (::GOPPRR::Error::CEmpty)
inherited

abstraction method

Gets certain properties of a non-property object

Parameters
[in]Typeproperty type
[in]bSubStringif true, Type only must be a substring of property type
[in]bUseExceptionoptional boolean flag for throwing a exception in case of an empty map
Returns
map of pointers to properties

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

Here is the caller graph for this function:

Member Data Documentation

::std::map< std::string,GOPPRR::CGraph* > GOPPRR::CRole::m_Explosions

explosion set of role

Explosion set of role indexed by their OID.

Definition at line 89 of file Role.h.

Referenced by operator=().

::std::string GOPPRR::CNonProperty::m_ID
inherited
::std::string GOPPRR::CConcept::m_OID
inherited
::std::map< std::string,GOPPRR::CProperty* > GOPPRR::CNonProperty::m_Properties
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::string GOPPRR::CConcept::m_Type
inherited

The documentation for this struct was generated from the following files:

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/.