CFEL - ASG Software Suite
2.5.0
CASS
|
Container for all Machine related Data. More...
#include <machine_device.hpp>
Public Types | |
typedef std::map< std::string, double > | epicsDataMap_t |
define the epics container More... | |
typedef std::map< std::string, double > | bldMap_t |
define the beamline data container More... | |
typedef std::vector< bool > | evrStatus_t |
define the evr status container More... | |
typedef std::map< std::string, std::vector< uint32_t > > | spectrometer_t |
define the spectrometer data More... | |
![]() | |
typedef std::tr1::shared_ptr< DeviceBackend > | shared_pointer |
a shared pointer of this type More... | |
Public Member Functions | |
Device () | |
constructor initializing values to meaningful data More... | |
void | serialize (SerializerBackend &out) const |
serialize the device to the serializer More... | |
bool | deserialize (SerializerBackend &in) |
deserialize the device from the stream More... | |
const epicsDataMap_t & | EpicsData () const |
getter More... | |
const bldMap_t & | BeamlineData () const |
getter More... | |
const evrStatus_t & | EvrData () const |
getter More... | |
const spectrometer_t & | spectrometers () const |
getter More... | |
bool | epicsFilled () const |
getter More... | |
bldMap_t & | BeamlineData () |
setter More... | |
epicsDataMap_t & | EpicsData () |
setter More... | |
evrStatus_t & | EvrData () |
setter More... | |
spectrometer_t & | spectrometers () |
setter More... | |
bool & | epicsFilled () |
setter More... | |
![]() | |
DeviceBackend (uint16_t version) | |
constructor already initializing the serialization version More... | |
virtual | ~DeviceBackend () |
virtual desctructor More... | |
![]() | |
Serializable (uint16_t version) | |
constructor initializing the version More... | |
virtual | ~Serializable () |
virtual destructor to avoid warning with gcc 4.1.2 More... | |
uint16_t | ver () const |
retrieve the version of the serializer More... | |
virtual void | writeVersion (SerializerBackend &out) const |
write the version to the stream More... | |
virtual void | checkVersion (SerializerBackend &in) const |
check the version More... | |
Private Attributes | |
bldMap_t | _blddata |
map containing the beamlinedata More... | |
epicsDataMap_t | _epicsdata |
a map containing all epics data in the xtc stream More... | |
evrStatus_t | _evrdata |
a vector of bools describing the evr status More... | |
spectrometer_t | _spectrometers |
container for beamline spectrometer data More... | |
bool | _epicsFilled |
status flag to tell whether the epics variables have been filled during conversion More... | |
Additional Inherited Members | |
![]() | |
uint16_t | _version |
the version for de/serializing More... | |
Container for all Machine related Data.
This device contains all data that is machine related
Definition at line 33 of file machine_device.hpp.
typedef std::map<std::string,double> cass::MachineData::Device::bldMap_t |
define the beamline data container
Definition at line 50 of file machine_device.hpp.
typedef std::map<std::string,double> cass::MachineData::Device::epicsDataMap_t |
define the epics container
Definition at line 47 of file machine_device.hpp.
typedef std::vector<bool> cass::MachineData::Device::evrStatus_t |
define the evr status container
Definition at line 53 of file machine_device.hpp.
typedef std::map<std::string,std::vector<uint32_t> > cass::MachineData::Device::spectrometer_t |
define the spectrometer data
Definition at line 56 of file machine_device.hpp.
|
inline |
constructor initializing values to meaningful data
Definition at line 37 of file machine_device.hpp.
|
inline |
getter
Definition at line 121 of file machine_device.hpp.
References _blddata.
Referenced by cass::MachineData::Converter::operator()(), cass::SACLAConverter::operator()(), cass::ZMQInput::runthis(), cass::XFELOnlineInput::runthis(), cass::XFELHDF5FileInput::runthis(), and cass::HDF5FileInput::runthis().
|
inline |
|
inlinevirtual |
deserialize the device from the stream
in | the stream to serialize this class from |
check whether the version is correct
read the beamlinedata, first clear the existing map
then read the size of the map
now retrieve every entry of the map and add it to the map
read the epics data, first clear the existing map
read the size of the map
now retrieve every entry of the map and add it to the map
Implements cass::DeviceBackend.
Definition at line 90 of file machine_device.hpp.
References _blddata, _epicsdata, cass::Serializable::checkVersion(), and cass::SerializerBackend::retrieve().
|
inline |
|
inline |
|
inline |
getter
Definition at line 124 of file machine_device.hpp.
References _epicsFilled.
Referenced by cass::MachineData::Converter::prepare().
|
inline |
|
inline |
getter
Definition at line 122 of file machine_device.hpp.
References _evrdata.
Referenced by cass::MachineData::Converter::operator()().
|
inline |
|
inlinevirtual |
serialize the device to the serializer
out | the stream to serialze this class to |
write the version
write the size of the beamlinedata
for each beamline entry in the map write the name and then the value
write the epics data size
for each epics entry in the map write the name and then the value
Implements cass::DeviceBackend.
Definition at line 63 of file machine_device.hpp.
References _blddata, _epicsdata, cass::SerializerBackend::add(), and cass::Serializable::writeVersion().
|
inline |
|
inline |
|
private |
map containing the beamlinedata
Definition at line 138 of file machine_device.hpp.
Referenced by BeamlineData(), deserialize(), and serialize().
|
private |
a map containing all epics data in the xtc stream
Definition at line 139 of file machine_device.hpp.
Referenced by deserialize(), EpicsData(), and serialize().
|
private |
status flag to tell whether the epics variables have been filled during conversion
Definition at line 146 of file machine_device.hpp.
Referenced by epicsFilled().
|
private |
a vector of bools describing the evr status
Definition at line 140 of file machine_device.hpp.
Referenced by EvrData().
|
private |
container for beamline spectrometer data
Definition at line 143 of file machine_device.hpp.
Referenced by spectrometers().