openETCS
case study for the European Train Control System developed for the authors dissertation
Classes | Namespaces | Typedefs | Functions
EVCStateMachine.h File Reference
#include <chrono>
#include <iostream>
#include <algorithm>
#include <string>
#include <vector>
#include "Error/ExceptionTypes.h"
#include <map>
#include <condition_variable>
#include <thread>
#include "Configuration.h"
#include <mutex>
#include <ostream>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  oETCS::DF::CAbstractFlow
 flow base class More...
class  oETCS::DF::CBitFlow
 flow class for the meta model bit type More...
class  oETCS::DF::CDMIObserver
 observer interface for the DMI More...
struct  oETCS::DF::CDMISubject
 subject of the DMI observer pattern More...
class  oETCS::DF::CEVCCondition
 condition/guard class for starting/transitioning (to) a certain EVC state More...
class  oETCS::DF::CEVCStateMachine
 EVC state machine class. More...
class  oETCS::DF::CEVCStateMachine::CEVCState
 EVC state class executed by the EVC state machine. More...
class  oETCS::DF::CEVCStateMachine::CEVCState::CDataFlow
 data flow class for executing data flows and embedded control flows More...
class  oETCS::DF::CEVCTransition
 transition class for EVC states More...
class  oETCS::DF::CFlow< INPUT_TYPE_T, FLOW_TYPE_T >
 flow template class More...
class  oETCS::DF::CFunctionBlock
 base class for all function block elements in a data flow More...
class  oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >
 container template class for input value storages of the type VALUE_T More...
class  oETCS::DF::CLevelCondition
 condition class for changing the current application level More...

Namespaces

namespace  oETCS
 GOPPRR XML to syntax tree transformer.
namespace  oETCS::DF
namespace  oETCS::UT

Typedefs

typedef
oETCS::DF::VARIABLE_VALUE_VECTOR_T
oETCS::DF::BIT_OUTPUT_T
 typedef for the bit meta model output data type
typedef
oETCS::DF::CFunctionBlock::CInput
< bool > 
oETCS::DF::BOOL_CONTAINER_T
 typedef for a boolean container type
typedef oETCS::DF::CFlow< bool > oETCS::DF::BOOL_FLOW_T
 typedef for a boolean flow type
typedef oETCS::DF::BOOL_CONTAINER_T oETCS::DF::BOOL_INPUT_T
 typedef for the bool meta model input data type
typedef oETCS::DF::BOOL_FLOW_ToETCS::DF::BOOL_OUTPUT_T
 typedef for the bool meta model output data type
typedef
oETCS::DF::CEVCStateMachine::CEVCState::CDataFlow 
oETCS::DF::CDataFlow
 typedef for easier access in this namespace
typedef
oETCS::DF::CEVCStateMachine::CEVCState 
oETCS::DF::CEVCState
 typedef for easier access in this namespace
typedef
oETCS::DF::CFunctionBlock::CInput
< ::std::vector< double > > 
oETCS::DF::DOUBLE_ARRAY_CONTAINER_T
 typedef for a double array container type
typedef oETCS::DF::CFlow
< ::std::vector< double > > 
oETCS::DF::DOUBLE_ARRAY_FLOW_T
 typedef for a double array flow type
typedef
oETCS::DF::DOUBLE_ARRAY_CONTAINER_T 
oETCS::DF::DOUBLE_ARRAY_INPUT_T
 typedef for the double array meta model input data type
typedef
oETCS::DF::DOUBLE_ARRAY_FLOW_T
oETCS::DF::DOUBLE_ARRAY_OUTPUT_T
 typedef for the double array meta model output data type
typedef
oETCS::DF::CFunctionBlock::CInput
< double > 
oETCS::DF::DOUBLE_CONTAINER_T
 typedef for a double container type
typedef oETCS::DF::CFlow< double > oETCS::DF::DOUBLE_FLOW_T
 typedef for a double flow type
typedef
oETCS::DF::DOUBLE_CONTAINER_T 
oETCS::DF::DOUBLE_INPUT_T
 typedef for the double meta model input data type
typedef oETCS::DF::DOUBLE_FLOW_ToETCS::DF::DOUBLE_OUTPUT_T
 typedef for the double meta model output data type
typedef
oETCS::DF::CFunctionBlock::CInput
< int > 
oETCS::DF::INT_CONTAINER_T
 typedef for a integer container type
typedef oETCS::DF::CFlow
< signed int > 
oETCS::DF::INT_FLOW_T
 typedef for a integer flow type
typedef oETCS::DF::INT_CONTAINER_T oETCS::DF::INT_INPUT_T
 typedef for the int meta model input data type
typedef oETCS::DF::INT_FLOW_ToETCS::DF::INT_OUTPUT_T
 typedef for the int meta model output data type
typedef
oETCS::DF::CFunctionBlock::CInput
< ::std::string > 
oETCS::DF::STRING_CONTAINER_T
 typedef for a boolean container type
typedef oETCS::DF::CFlow
< ::std::string > 
oETCS::DF::STRING_FLOW_T
 typedef for a string flow type
typedef
oETCS::DF::STRING_CONTAINER_T 
oETCS::DF::STRING_INPUT_T
 typedef for the string meta model input data type
typedef oETCS::DF::STRING_FLOW_ToETCS::DF::STRING_OUTPUT_T
 typedef for the string meta model output data type

Functions

::std::ostream & oETCS::DF::operator<< (::std::ostream &OutStream, const ::std::vector< double > &Vector) throw ()
 helper method for streaming a double vector

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