RawConfigurationTail.h
Go to the documentation of this file.
1 #ifndef RAWCONFIGURATIONTAIL_H
2 #define RAWCONFIGURATIONTAIL_H
3 #include "DAQDataFormats/RawConfigurationTailV0.h"
4 
5 /// It is requred to
6 /// 1. include DAQDataFormats/DataFormatFirst.inc
7 /// 2. define CURRENT_CLASS
8 /// 3. define CURRENT_CLASS_VERSION for version of the class
9 /// OR define LAST_CLASS_VERSION for the main structure of the class
10 /// 4. (optional) define CURRENT_FIELDS_SUB_NAMESPACE
11 /// 5. include DAQDataFormats/DataFormatLast.inc
12 /// before the declaration of the DataFormat version class in the header.
13 #include "DAQDataFormats/DataFormatFirst.inc"
14 #define CURRENT_CLASS RawConfigurationTail
15 #define LAST_CLASS_VERSION 0
16 #define CURRENT_FIELDS_SUB_NAMESPACE rawconftail
17 #include "DAQDataFormats/DataFormatLast.inc"
18 
19 namespace daqdataformats {
20 
21  namespace rawconftail {
23  }
24 
25  class RawConfigurationTail: public PREVIOUS_VERSION_CLASS_NAME{
26  public:
27  /// Constructors
29  RawConfigurationTail (const RawConfigurationTail& copy_in); //! Deep copy constructor
30  RawConfigurationTail (const void* dadablockheader_buffer, const version_t version = rawdaqdataformat::DAQDATAFORMAT_UNKNOWN_VERSION); //! Shallow copy constructor
31  /// Destructor
33 
35 
36  IMPLEMENT_GET_MAIN (Version , uint32_t);
37  IMPLEMENT_GET_MAIN (Reserved1, uint32_t);
38  IMPLEMENT_GET_MAIN (Reserved2, uint32_t);
39  IMPLEMENT_GET_MAIN (MarkerLo1, uint32_t);
40  IMPLEMENT_GET_MAIN (MarkerLo2, uint32_t);
41  IMPLEMENT_GET_AND_SET_MAIN(CRC , uint32_t);
42 
43  protected:
44  IMPLEMENT_SET_MAIN (Version , uint32_t);
45  IMPLEMENT_SET_MAIN (Reserved1, uint32_t);
46  IMPLEMENT_SET_MAIN (Reserved2, uint32_t);
47  IMPLEMENT_SET_MAIN (MarkerLo1, uint32_t);
48  IMPLEMENT_SET_MAIN (MarkerLo2, uint32_t);
49 
51  bool setFunctionPointers();
52 
53  };
54 
55 } // END NAMESPCE daqdataformats
56 #endif /* RAWCONFIGURATIONTAIL_H */
#define IMPLEMENT_SET_MAIN(FUNC, UNITS)
Definition: Macros.h:210
static const version_t RAWCONFIGURATIONBLOCKTAIL_LATEST_VERSION
#define IMPLEMENT_MAIN_STANDARD
Definition: Macros.h:230
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 LAST_CLASS_VERSION
#define IMPLEMENT_GET_AND_SET_MAIN(FUNC, UNITS)
Definition: Macros.h:217
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