openETCS
case study for the European Train Control System developed for the authors dissertation
Public Member Functions | Private Attributes | Friends | List of all members
oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T > Class Template Reference

container template class for input value storages of the type VALUE_T More...

#include <EVCStateMachine.h>

Inheritance diagram for oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >:
Inheritance graph
Collaboration diagram for oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >:
Collaboration graph

Public Member Functions

 CInput () throw ()
 default constructor
 CInput (const INPUT_TYPE_T &Value) throw ()
 general constructor
bool IsModified () throw ()
 gets the modified flag
INPUT_TYPE_T operator() () throw ()
 functor operator
const INPUT_TYPE_T operator() () const throw ()
 functor operator
INPUT_TYPE_T & operator= (const INPUT_TYPE_T &NewValue) throw ()
 assigns a new value to the container

Private Attributes

bool m_bModified
 modified flag for the container value
INPUT_TYPE_T m_Value
 real storage of the value type
mutable::std::mutex m_ValueMutex
 mutex for I/O accesses to the value of the input

Friends

class oETCS::DF::CStorage

Detailed Description

template<class INPUT_TYPE_T>
class oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >

container template class for input value storages of the type VALUE_T

Template Parameters
INPUT_TYPE_T,:type of container value

Definition at line 752 of file EVCStateMachine.h.

Constructor & Destructor Documentation

template<class INPUT_TYPE_T >
oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >::CInput ( ) throw ()
explicit

default constructor

Initialises m_Value by the default constructor of VALUE_T

Definition at line 902 of file EVCStateMachine.h.

template<class INPUT_TYPE_T>
oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >::CInput ( const INPUT_TYPE_T &  Value) throw ()
explicit

general constructor

Parameters
[in]Valueinitial value of the container of template type

Definition at line 915 of file EVCStateMachine.h.

Member Function Documentation

template<class INPUT_TYPE_T >
bool oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >::IsModified ( ) throw ()

gets the modified flag

Returns true if the value mas modified by any operator/method. This methods reset the modified flag.

Returns
modified flag

Definition at line 954 of file EVCStateMachine.h.

Referenced by oETCS::DF::CStorage::Calculate(), oETCS::DF::CDMIInput::Calculate(), and oETCS::DF::CDMIOutput::Calculate().

Here is the caller graph for this function:

template<class INPUT_TYPE_T >
INPUT_TYPE_T oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >::operator() ( ) throw ()

functor operator

Returns the value.

Returns
the value

Definition at line 981 of file EVCStateMachine.h.

template<class INPUT_TYPE_T >
const INPUT_TYPE_T oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >::operator() ( ) const throw ()

functor operator

Returns value.

Remarks
This is the const version of the operator.
Returns
value

Definition at line 1008 of file EVCStateMachine.h.

template<class INPUT_TYPE_T>
INPUT_TYPE_T & oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >::operator= ( const INPUT_TYPE_T &  NewValue) throw ()

assigns a new value to the container

Parameters
[in]NewValuethe new value

Definition at line 929 of file EVCStateMachine.h.

Friends And Related Function Documentation

template<class INPUT_TYPE_T>
friend class oETCS::DF::CStorage
friend

Definition at line 841 of file EVCStateMachine.h.

Member Data Documentation

template<class INPUT_TYPE_T>
bool oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >::m_bModified
private

modified flag for the container value

Definition at line 830 of file EVCStateMachine.h.

template<class INPUT_TYPE_T>
INPUT_TYPE_T oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >::m_Value
private

real storage of the value type

Definition at line 823 of file EVCStateMachine.h.

Referenced by oETCS::DF::CStorage::Calculate().

template<class INPUT_TYPE_T>
mutable ::std::mutex oETCS::DF::CFunctionBlock::CInput< INPUT_TYPE_T >::m_ValueMutex
private

mutex for I/O accesses to the value of the input

Definition at line 837 of file EVCStateMachine.h.


The documentation for this class was generated from the following file:

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