RawDataBlockHeaderV1.h
Go to the documentation of this file.
1 #ifndef RAQDATABLOCKHEADERV1_H
2 #define RAQDATABLOCKHEADERV1_H
3 #include "DAQDataFormats/RawDAQData.h"
4 #include "DAQDataFormats/Macros.h"
5 #include "DAQDataFormats/BitFields.h"
6 #include "DAQDataFormats/RawDataBlockHeaderV0.h"
7 
8 /// It is requred to
9 /// 1. include DAQDataFormats/DataFormatFirst.inc
10 /// 2. define CURRENT_CLASS
11 /// 3. define CURRENT_CLASS_VERSION for version of the class
12 /// OR define LAST_CLASS_VERSION for the main structure of the class
13 /// 4. (optional) define CURRENT_FIELDS_SUB_NAMESPACE
14 /// 5. include DAQDataFormats/DataFormatLast.inc
15 /// before the declaration of the DataFormat version class in the header.
16 #include "DAQDataFormats/DataFormatFirst.inc"
17 #define CURRENT_CLASS RawDataBlockHeader
18 #define CURRENT_CLASS_VERSION 1
19 #define CURRENT_FIELDS_SUB_NAMESPACE datablockheader
20 #include "DAQDataFormats/DataFormatLast.inc"
21 
22 namespace daqdataformats {
24  static const uint32_t SummaryBlock_Marker = 0xFABC;
25  }
26 
27  namespace VERSION_NAMESPACE {
29  static const uint32_t DATABLOCKHEADER_SIZE = 5;
30  }
31 
32  class RawDataBlockHeader: public PREVIOUS_VERSION_CLASS_NAME {
33  public:
34  RawDataBlockHeader (const version_t); ///< The default constructor
36  ~RawDataBlockHeader(); ///< Destructor
37 
38  protected:
39  INIT_FIRST(checkMarker , const, bool, );
40  };
41 
42 
43 }} // END NAMESPACE daqdataformats
44 #endif /* RAQDATABLOCKHEADERV0_H */
#define VERSION_NAMESPACE
#define INIT_FIRST(FUNC, CONSTNESS, OUTPUT_UNITS,...)
Definition: Macros.h:239
#define CURRENT_FIELDS_SUB_NAMESPACE
int32_t version_t
Definition: RawDAQData.h:72
Class to hold the data from the FEBs in correct formats.