openETCS
case study for the European Train Control System developed for the authors dissertation
|
base class for all function block elements in a data flow More...
#include <EVCStateMachine.h>
Inherited by oETCS::DF::CAnd, oETCS::DF::CBoolGate, oETCS::DF::CBoolSwitch, oETCS::DF::CBrakingToTargetSpeed, oETCS::DF::CCeelingSpeedControl, oETCS::DF::CComBlockIn, oETCS::DF::CComBlockOut, oETCS::DF::CCondition, oETCS::DF::CControlFlow, oETCS::DF::CDivision, oETCS::DF::CDMIInput, oETCS::DF::CDMIOutput, oETCS::DF::CDoubleArrayAccessor, oETCS::DF::CDoubleEqual, oETCS::DF::CDoubleEqualOrGreater, oETCS::DF::CDoubleGate, oETCS::DF::CDoubleGreater, oETCS::DF::CDoubleSwitch, oETCS::DF::CEmergencyBrake, oETCS::DF::CEnteredTrigger, oETCS::DF::CEVCCondition, oETCS::DF::CIntEqual, oETCS::DF::CIntGreater, oETCS::DF::CLevelCondition, oETCS::DF::CMultiplication, oETCS::DF::CNot, oETCS::DF::COdometer, oETCS::DF::COr, oETCS::DF::CServiceBrake, oETCS::DF::CStorage, oETCS::DF::CStringEqual, oETCS::DF::CStringGate, oETCS::DF::CStringSwitch, oETCS::DF::CSubstraction, oETCS::DF::CSum, and oETCS::DF::CXor.
Classes | |
class | CInput |
container template class for input value storages of the type VALUE_T More... |
Public Member Functions | |
virtual void | Calculate ()=0 throw (::oETCS::DF::Error::CException) |
virtual method for computing all outputs and setting the all referenced outputs | |
CFunctionBlock (oETCS::DF::CEVCStateMachine *const pStateMachine) throw () | |
general constructor | |
CFunctionBlock (const CFunctionBlock &Source) | |
deleted copy constructor to avoid copying | |
virtual | ~CFunctionBlock () throw () |
destructor |
Public Attributes | |
oETCS::DF::CEVCStateMachine *const | m_pStateMachine |
pointer to the all contenting EVC state machine |
Private Member Functions | |
CFunctionBlock & | operator= (CFunctionBlock &Source) throw () |
private assignment operator to avoid assignment |
base class for all function block elements in a data flow
Definition at line 743 of file EVCStateMachine.h.
oETCS::DF::CFunctionBlock::CFunctionBlock | ( | oETCS::DF::CEVCStateMachine *const | pStateMachine | ) | throw () |
general constructor
[in] | pStateMachine | pointer to the contenting state machine |
Definition at line 1320 of file EVCStateMachine.cpp.
oETCS::DF::CFunctionBlock::CFunctionBlock | ( | const CFunctionBlock & | Source | ) |
deleted copy constructor to avoid copying
|
virtual |
destructor
Definition at line 1338 of file EVCStateMachine.cpp.
|
pure virtual |
virtual method for computing all outputs and setting the all referenced outputs
Implemented in oETCS::DF::CDMIOutput, oETCS::DF::CDMIInput, oETCS::DF::CComBlockOut, oETCS::DF::CComBlockIn, oETCS::DF::CIntEqual, oETCS::DF::CEVCCondition, oETCS::DF::CStringSwitch, oETCS::DF::CLevelCondition, oETCS::DF::CEnteredTrigger, oETCS::DF::CCeelingSpeedControl, oETCS::DF::CBrakingToTargetSpeed, oETCS::DF::CStringGate, oETCS::DF::CDoubleSwitch, oETCS::DF::CDoubleGate, oETCS::DF::CBoolSwitch, oETCS::DF::CBoolGate, oETCS::DF::CStringEqual, oETCS::DF::CIntGreater, oETCS::DF::CDoubleGreater, oETCS::DF::CDoubleEqualOrGreater, oETCS::DF::CDoubleArrayAccessor, oETCS::DF::CXor, oETCS::DF::CServiceBrake, oETCS::DF::CSum, oETCS::DF::COdometer, oETCS::DF::CSubstraction, oETCS::DF::CNot, oETCS::DF::CEmergencyBrake, oETCS::DF::CMultiplication, oETCS::DF::CDoubleEqual, oETCS::DF::CControlFlow, oETCS::DF::CDivision, oETCS::DF::COr, oETCS::DF::CStorage, oETCS::DF::CAnd, and oETCS::DF::CCondition.
|
private |
private assignment operator to avoid assignment
Definition at line 1349 of file EVCStateMachine.cpp.
oETCS::DF::CEVCStateMachine* const oETCS::DF::CFunctionBlock::m_pStateMachine |
pointer to the all contenting EVC state machine
Definition at line 894 of file EVCStateMachine.h.
Referenced by oETCS::DF::CCondition::Calculate(), and oETCS::DF::CDMIOutput::Calculate().
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/.