10 #ifndef MACHINEDATACONVERTER_H
11 #define MACHINEDATACONVERTER_H
14 #include <tr1/functional>
16 #include <QtCore/QMutex>
92 typedef std::map<XTCDataKey,std::string>
KeyMap_t;
98 typedef std::tr1::function<void(
const Pds::EpicsPvHeader&,
99 Device::epicsDataMap_t::iterator,
Event to store all LCLS Data.
KeyMap_t _index2name
map Epics Keys to strings
static ConversionBackend::shared_pointer _instance
the singleton container
file contains base class for all format converters
std::tr1::function< void(const Pds::EpicsPvHeader &, Device::epicsDataMap_t::iterator, Device::epicsDataMap_t::iterator)> epicsType2val_t
define the function to convert epics to cass
epicsType2convFunc_t _epicsType2convFunc
map containing fucntions that convert epics values to cass values
Container for all Machine related Data.
Device _store
a container for the epics values
std::tr1::shared_ptr< ConversionBackend > shared_pointer
typedef
void operator()(const Pds::Xtc *xtc, cass::CASSEvent *evt)
called for appropriate xtc part.
definitions of a machine device
Converter & operator=(const Converter &)
prevent assignment
static QMutex _mutex
singleton locker for mutithreaded requests
Base class for Converters.
static ConversionBackend::shared_pointer instance()
create singleton if doesnt exist already
void prepare(CASSEvent *evt)
called before the conversion
std::map< XTCDataKey, std::string > KeyMap_t
define the conversion map from keys to strings
Converter for Beamline-, Cavity-, Epics- and EVR Data.
void finalize(CASSEvent *evt)
called at the end of the conversion
std::map< int16_t, epicsType2val_t > epicsType2convFunc_t
define a map to map epics type to function for retrieval of the value