RawSummaryDCMDataHeader.h
Go to the documentation of this file.
1 #ifndef RAWSUMMARYDCMDATAHEADER_H
2 #define RAWSUMMARYDCMDATAHEADER_H
3 #include "DAQDataFormats/RawSummaryDCMDataHeaderV0.h"
4 #include "DAQDataFormats/Macros.h"
5 
6 /// It is requred to
7 /// 1. include DAQDataFormats/DataFormatFirst.inc
8 /// 2. define CURRENT_CLASS
9 /// 3. define CURRENT_CLASS_VERSION for version of the class
10 /// OR define LAST_CLASS_VERSION for the main structure of the class
11 /// 4. (optional) define CURRENT_FIELDS_SUB_NAMESPACE
12 /// 5. include DAQDataFormats/DataFormatLast.inc
13 /// before the declaration of the DataFormat version class in the header.
14 #include "DAQDataFormats/DataFormatFirst.inc"
15 #define CURRENT_CLASS RawSummaryDCMDataHeader
16 #define LAST_CLASS_VERSION 0
17 #define CURRENT_FIELDS_SUB_NAMESPACE summarydcmdatahdr
18 #include "DAQDataFormats/DataFormatLast.inc"
19 
20 namespace daqdataformats {
21 
24  }
25 
26  class RawSummaryDCMDataHeader: public PREVIOUS_VERSION_CLASS_NAME {
27 
28  public:
29 
30  // Constructors
32  RawSummaryDCMDataHeader(const RawSummaryDCMDataHeader& copy_in); //! Deep copy constructor
33  RawSummaryDCMDataHeader(const void*, const version_t version = rawdaqdataformat::DAQDATAFORMAT_UNKNOWN_VERSION); //! Shallow copy constructor
34  /// Destructor
36 
38 
39  IMPLEMENT_GET_MAIN (Version, uint32_t);
40  IMPLEMENT_GET_AND_SET_MAIN(NumEntries, uint32_t);
41 
42  IMPLEMENT_FUNCTION_RETURNING_FUNCTION_POINTER_0PAR(advanceNumEntries, , bool);
43 
45 
46  protected:
47  IMPLEMENT_SET_MAIN(Version, uint32_t);
48 
49  bool setFunctionPointers();
50 
51  };
52 
53 
54 } // END NAMESPCE daqdataformats
55 #endif /* RAWSUMMARYDCMDATAHEADER_H */
#define IMPLEMENT_SET_MAIN(FUNC, UNITS)
Definition: Macros.h:210
#define IMPLEMENT_FUNCTION_RETURNING_FUNCTION_POINTER_0PAR(FUNC, CONSTNESS, OUTPUT)
Definition: Macros.h:181
#define LAST_CLASS_VERSION
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
static const version_t DAQDATAFORMAT_UNKNOWN_VERSION
Definition: RawDAQData.h:81
#define CURRENT_FIELDS_SUB_NAMESPACE
Class to hold the data from the FEBs in correct formats.
#define IMPLEMENT_GET_MAIN(FUNC, UNITS)
Definition: Macros.h:208
#define CURRENT_CLASS