CFEL - ASG Software Suite  2.5.0
CASS
Public Types | Public Member Functions | Private Attributes | List of all members
cass::CASSEvent Class Reference

Event to store all LCLS Data. More...

#include <cass_event.h>

+ Inheritance diagram for cass::CASSEvent:
+ Collaboration diagram for cass::CASSEvent:

Public Types

enum  Device { Acqiris, MachineData, AcqirisTDC, PixelDetectors }
 known devices More...
 
typedef std::map< Device, DeviceBackend::shared_pointerdevices_t
 mapping from device type to handler instance More...
 
typedef std::vector< char > buffer_t
 a buffer type More...
 
typedef uint64_t id_t
 define the id type More...
 

Public Member Functions

 CASSEvent ()
 constructor will create all devices More...
 
 ~CASSEvent ()
 destroyes all devices More...
 
void serialize (SerializerBackend &) const
 serialize a event to the Serializer More...
 
bool deserialize (SerializerBackend &)
 deserialize an event from the Serializer More...
 
id_tid ()
 setters More...
 
buffer_tdatagrambuffer ()
 setters More...
 
devices_tdevices ()
 setters More...
 
void setFilename (const std::string &f)
 setters More...
 
id_t id () const
 getters More...
 
const buffer_tdatagrambuffer () const
 getters More...
 
const devices_tdevices () const
 getters More...
 
const std::string filename () const
 getters More...
 
- Public Member Functions inherited from cass::Serializable
 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

id_t _id
 id of the cassevent More...
 
devices_t _devices
 list of devices for this event More...
 
buffer_t _datagrambuffer
 buffer for the datagram that contains all LCLS information More...
 
std::string _filename
 filename of file which this event came from (if offline) More...
 

Additional Inherited Members

- Protected Attributes inherited from cass::Serializable
uint16_t _version
 the version for de/serializing More...
 

Detailed Description

Event to store all LCLS Data.

a cassevent that stores all information comming from the machine, and also some calculated information

Author
Lutz Foucar

Definition at line 32 of file cass_event.h.

Member Typedef Documentation

typedef std::vector<char> cass::CASSEvent::buffer_t

a buffer type

Definition at line 49 of file cass_event.h.

mapping from device type to handler instance

Definition at line 46 of file cass_event.h.

typedef uint64_t cass::CASSEvent::id_t

define the id type

Definition at line 52 of file cass_event.h.

Member Enumeration Documentation

known devices

Enumerator
Acqiris 
MachineData 
AcqirisTDC 
PixelDetectors 

Definition at line 43 of file cass_event.h.

Constructor & Destructor Documentation

CASSEvent::CASSEvent ( )

constructor will create all devices

Definition at line 20 of file cass_event.cpp.

References _devices, Acqiris, AcqirisTDC, MachineData, and PixelDetectors.

cass::CASSEvent::~CASSEvent ( )
inline

destroyes all devices

Definition at line 39 of file cass_event.h.

Member Function Documentation

buffer_t& cass::CASSEvent::datagrambuffer ( )
inline
const buffer_t& cass::CASSEvent::datagrambuffer ( ) const
inline

getters

Definition at line 72 of file cass_event.h.

References _datagrambuffer.

bool CASSEvent::deserialize ( SerializerBackend in)
virtual

deserialize an event from the Serializer

read the number of instruments

read the key of the device and deserialize the right device from the list

Implements cass::Serializable.

Definition at line 47 of file cass_event.cpp.

References _devices, _id, cass::Serializable::checkVersion(), and cass::SerializerBackend::retrieve().

devices_t& cass::CASSEvent::devices ( )
inline
const devices_t& cass::CASSEvent::devices ( ) const
inline

getters

Definition at line 73 of file cass_event.h.

References _devices.

const std::string cass::CASSEvent::filename ( ) const
inline

getters

Definition at line 74 of file cass_event.h.

References _filename.

id_t& cass::CASSEvent::id ( )
inline

setters

Definition at line 64 of file cass_event.h.

References _id.

Referenced by cass::pp1002::appendEventToMultipleEventsFile(), cass::pixeldetector::AdvancedDetector::associate(), cass::pixeldetector::DetectorHelper::detector(), cass::ACQIRIS::AGATStreamer::operator()(), cass::pixeldetector::SHMStreamer::operator()(), cass::ACQIRIS::LmaReader::operator()(), cass::pixeldetector::Frms6Reader::operator()(), cass::TxtReader::operator()(), cass::ACQIRIS::Converter::operator()(), cass::FormatConverter::operator()(), cass::pixeldetector::Converter::operator()(), cass::ProcessorManager::operator()(), cass::pp310::process(), cass::pp200::process(), cass::pp301::process(), cass::pp72::process(), cass::pp110::process(), cass::pp203::process(), cass::pp400::process(), cass::pp300::process(), cass::pp1::process(), cass::pp312::process(), cass::pp311::process(), cass::pp111::process(), cass::pp73::process(), cass::pp55::process(), cass::pp204::process(), cass::pp201::process(), cass::pp2::process(), cass::pp330::process(), cass::pp112::process(), cass::pp74::process(), cass::pp109::process(), cass::pp313::process(), cass::pp122::process(), cass::pp404::process(), cass::pp202::process(), cass::pp79::process(), cass::pp1600::process(), cass::pp4::process(), cass::pp205::process(), cass::pp9::process(), cass::pp500::process(), cass::pp206::process(), cass::pp1601::process(), cass::pp406::process(), cass::pp13::process(), cass::pp331::process(), cass::pp208::process(), cass::pp15::process(), cass::pp407::process(), cass::pp1602::process(), cass::pp332::process(), cass::pp40::process(), cass::pp241::process(), cass::pp90::process(), cass::pp333::process(), cass::pp408::process(), cass::pp41::process(), cass::pp209::process(), cass::pp243::process(), cass::pp334::process(), cass::pp50::process(), cass::pp244::process(), cass::pp410::process(), cass::pp210::process(), cass::pp51::process(), cass::pp412::process(), cass::pp56::process(), cass::pp57::process(), cass::pp60::process(), cass::pp61::process(), cass::pp62::process(), cass::pp63::process(), cass::pp64::process(), cass::pp65::process(), cass::pp66::process(), cass::pp68::process(), cass::pp69::process(), cass::pp70::process(), cass::pp71::process(), cass::pp77::process(), cass::pp81::process(), cass::pp82::process(), cass::pp85::process(), cass::pp86::process(), cass::pp87::process(), cass::pp88::process(), cass::pp89::process(), cass::pp91::process(), cass::pp1500::processEvent(), cass::pp2001::processEvent(), cass::Processor::processEvent(), cass::pp2000::processEvent(), cass::pp1002::processEvent(), cass::AccumulatingProcessor::processEvent(), cass::pp14::processEvent(), cass::pp75::processEvent(), cass::pp76::processEvent(), cass::Processor::releaseEvent(), cass::TestInput::run(), cass::ZMQInput::runthis(), cass::XFELOnlineInput::runthis(), cass::XFELHDF5FileInput::runthis(), cass::SACLAOnlineInput::runthis(), cass::HDF5FileInput::runthis(), cass::ACQIRIS::HelperAcqirisDetectors::validate(), cass::pp1002::writeEventToMultipleEventsFile(), and cass::pp1002::writeEventToSingleFile().

id_t cass::CASSEvent::id ( ) const
inline

getters

Definition at line 71 of file cass_event.h.

References _id.

void CASSEvent::serialize ( SerializerBackend out) const
virtual

serialize a event to the Serializer

write the id

write the size of the container

for each instrument in the map write the key and then the Instrument

Implements cass::Serializable.

Definition at line 32 of file cass_event.cpp.

References _devices, _id, cass::SerializerBackend::add(), and cass::Serializable::writeVersion().

void cass::CASSEvent::setFilename ( const std::string &  f)
inline

setters

Definition at line 67 of file cass_event.h.

References _filename.

Member Data Documentation

buffer_t cass::CASSEvent::_datagrambuffer
private

buffer for the datagram that contains all LCLS information

Definition at line 88 of file cass_event.h.

Referenced by datagrambuffer().

devices_t cass::CASSEvent::_devices
private

list of devices for this event

Definition at line 85 of file cass_event.h.

Referenced by CASSEvent(), deserialize(), devices(), and serialize().

std::string cass::CASSEvent::_filename
private

filename of file which this event came from (if offline)

Definition at line 91 of file cass_event.h.

Referenced by filename(), and setFilename().

id_t cass::CASSEvent::_id
private

id of the cassevent

Definition at line 82 of file cass_event.h.

Referenced by deserialize(), id(), and serialize().


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