RawSummaryDroppedMicroblock.h
Go to the documentation of this file.
1 #ifndef RAWSUMMARYDROPPEDMICROBLOCK_H
2 #define RAWSUMMARYDROPPEDMICROBLOCK_H
3 
4 #include "DAQDataFormats/RawSummaryDroppedMicroblockV0.h"
5 #include "DAQDataFormats/Macros.h"
6 
7 /// It is requred to
8 /// 1. include DAQDataFormats/DataFormatFirst.inc
9 /// 2. define CURRENT_CLASS
10 /// 3. define CURRENT_CLASS_VERSION for version of the class
11 /// OR define LAST_CLASS_VERSION for the main structure of the class
12 /// 4. (optional) define CURRENT_FIELDS_SUB_NAMESPACE
13 /// 5. include DAQDataFormats/DataFormatLast.inc
14 /// before the declaration of the DataFormat version class in the header.
15 #include "DAQDataFormats/DataFormatFirst.inc"
16 #define CURRENT_CLASS RawSummaryDroppedMicroblock
17 #define LAST_CLASS_VERSION 0
18 #define CURRENT_FIELDS_SUB_NAMESPACE summarydroppedmicroblock
19 #include "DAQDataFormats/DataFormatLast.inc"
20 
21 
22 namespace daqdataformats {
23 
26  }
27 
28  class RawSummaryDroppedMicroblock: public PREVIOUS_VERSION_CLASS_NAME {
29  public:
30 
31  /// Constructors
33  RawSummaryDroppedMicroblock (const RawSummaryDroppedMicroblock& copy_in); //! Deep copy constructor
34  RawSummaryDroppedMicroblock (const void* summarydroppedmicroblock_buffer, const version_t version = rawdaqdataformat::DAQDATAFORMAT_UNKNOWN_VERSION); //! Shallow copy constructor
35  /// Destructor
37 
39 
40  IMPLEMENT_GET_MAIN (Version , uint32_t)
41  IMPLEMENT_GET_AND_SET_MAIN(TimeStampLow , uint32_t)
42  IMPLEMENT_GET_AND_SET_MAIN(TimeStampHigh , uint32_t)
43  IMPLEMENT_GET_AND_SET_MAIN(TimeWindow_sec, uint32_t)
44  IMPLEMENT_GET_AND_SET_MAIN(TimeWindow_usec, uint32_t)
45  IMPLEMENT_GET_AND_SET_MAIN(NumDroppedMicroblocks, uint32_t)
46  IMPLEMENT_GET_AND_SET_MAIN(TimeStamp, uint64_t)
47  IMPLEMENT_GET_AND_SET_MAIN(TimeWindowTvUsec, suseconds_t)
48  IMPLEMENT_GET_AND_SET_MAIN(TimeWindowTvSec, time_t)
49  IMPLEMENT_GET_AND_SET_MAIN(TimeWindowTv, timeval)
50 
52 
53  protected:
54  IMPLEMENT_SET_MAIN (Version, uint32_t)
55  bool setFunctionPointers();
56 
57  };
58 
59 
60 } // END NAMESPACE daqdataformats
61 
62 #endif /* RAWSUMMARYDROPPEDMICROBLOCK_H */
#define IMPLEMENT_SET_MAIN(FUNC, UNITS)
Definition: Macros.h:210
#define LAST_CLASS_VERSION
#define IMPLEMENT_MAIN_STANDARD
Definition: Macros.h:230
#define CURRENT_FIELDS_SUB_NAMESPACE
const XML_Char * version
Definition: expat.h:187
#define IMPLEMENT_FIGUREOUT_VERSION_STATIC(CLASS)
This should be in the header.
Definition: Macros.h:295
int32_t version_t
Definition: RawDAQData.h:72
#define IMPLEMENT_GET_AND_SET_MAIN(FUNC, UNITS)
Definition: Macros.h:217
#define CURRENT_CLASS
static const version_t DAQDATAFORMAT_UNKNOWN_VERSION
Definition: RawDAQData.h:81
Class to hold the data from the FEBs in correct formats.
#define IMPLEMENT_GET_MAIN(FUNC, UNITS)
Definition: Macros.h:208