CFEL - ASG Software Suite  2.5.0
CASS
acqiristdc_converter.h
Go to the documentation of this file.
1 //Copyright (C) 2011 Lutz Foucar
2 
3 /**
4  * @file acqiristdc_converter.h file contains the declaration of the converter
5  * for the xtc containing acqiris tdc data.
6  *
7  * @author Lutz Foucar
8  */
9 
10 #ifndef _ACQIRISTDC_CONVERTER_H
11 #define _ACQIRISTDC_CONVERTER_H
12 
13 #include <QtCore/QMutex>
14 
15 #include "conversion_backend.h"
16 #include "acqiris_device.hpp"
17 
18 namespace cass
19 {
20 namespace ACQIRISTDC
21 {
22 /** Acqiris Converter
23  *
24  * this class takes a xtc of type Id_AcqTDC and extracts the acqiris tdc
25  * channels for all instruments
26  *
27  * @author Lutz Foucar
28  */
30 {
31 public:
32  /** create singleton if doesnt exist already */
34 
35  /** takes the xtc and copies the data to cassevent */
36  void operator()(const Pds::Xtc*, CASSEvent*);
37 
38 private:
39  /** constructor
40  *
41  * sets up the pds type ids that it is responsible for
42  */
43  Converter();
44 
45  /** prevent copy construction */
46  Converter(const Converter&);
47 
48  /** prevent assignment */
49  Converter& operator=(const Converter&);
50 
51  /** the singleton container */
53 
54  /** singleton locker for mutithreaded requests */
55  static QMutex _mutex;
56 };
57 }//end namespace acqiris
58 }//end namespace cass
59 
60 #endif
static ConversionBackend::shared_pointer instance()
create singleton if doesnt exist already
Event to store all LCLS Data.
Definition: cass_event.h:32
static QMutex _mutex
singleton locker for mutithreaded requests
file contains base class for all format converters
file contains the declaration of the acqiris part of the CASSEvent
static ConversionBackend::shared_pointer _instance
the singleton container
void operator()(const Pds::Xtc *, CASSEvent *)
takes the xtc and copies the data to cassevent
std::tr1::shared_ptr< ConversionBackend > shared_pointer
typedef
Base class for Converters.
Converter & operator=(const Converter &)
prevent assignment