RawConfigurationHeader.h
Go to the documentation of this file.
1 #ifndef RAWCONFIGURATIONHEADER_H
2 #define RAWCONFIGURATIONHEADER_H
3 #include "DAQDataFormats/RawConfigurationHeaderV1.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 RawConfigurationHeader
15 #define LAST_CLASS_VERSION 1
16 #define CURRENT_FIELDS_SUB_NAMESPACE rawconfhdr
17 #include "DAQDataFormats/DataFormatLast.inc"
18 
19 namespace daqdataformats {
20 
21  namespace rawconfhdr {
23  }
24 
25  class RawConfigurationHeader: public PREVIOUS_VERSION_CLASS_NAME{
26  public:
27 
28  /// Constructors
30  RawConfigurationHeader (const RawConfigurationHeader& copy_in); //! Deep copy constructor
31  RawConfigurationHeader (const void* dadablockheader_buffer, const version_t version = rawdaqdataformat::DAQDATAFORMAT_UNKNOWN_VERSION); //! Shallow copy constructor
32  /// Destructor
34 
36 
37  IMPLEMENT_GET_MAIN (ConfigurationHeaderVersion, uint32_t);
38  IMPLEMENT_GET_MAIN (MarkerHi1 , uint32_t);
39  IMPLEMENT_GET_MAIN (MarkerHi2 , uint32_t);
40 
41  IMPLEMENT_GET_AND_SET_MAIN(DetectorID , uint32_t);
42  IMPLEMENT_GET_AND_SET_MAIN(ConfigurationBlockSize, uint32_t);
43  IMPLEMENT_GET_AND_SET_MAIN(ResourceManagerID , uint32_t)
44  IMPLEMENT_GET_AND_SET_MAIN(RunNumber , uint32_t)
46  IMPLEMENT_GET_AND_SET_MAIN(ConfigurationIDX , uint32_t)
47  IMPLEMENT_GET_AND_SET_MAIN(Partition , uint32_t)
48  IMPLEMENT_GET_AND_SET_MAIN(Subrun , uint32_t)
49  IMPLEMENT_GET_AND_SET_MAIN(SystemNumber , uint32_t)
50  IMPLEMENT_GET_AND_SET_MAIN(SystemVersionIDX , uint32_t)
51 
53 
54  private:
55  IMPLEMENT_SET_MAIN (ConfigurationHeaderVersion, uint32_t);
56  IMPLEMENT_SET_MAIN (MarkerHi1 , uint32_t);
57  IMPLEMENT_SET_MAIN (MarkerHi2 , uint32_t);
58 
59  bool setFunctionPointers();
60 
61 
62 
63  };
64 
65 } // END NAMESPCE daqdataformats
66 #endif /* RAWCONFIGURATIONHEADER_H */
#define LAST_CLASS_VERSION
#define IMPLEMENT_SET_MAIN(FUNC, UNITS)
Definition: Macros.h:210
#define IMPLEMENT_MAIN_STANDARD
Definition: Macros.h:230
static const version_t RAWCONFIGURATIONBLOCKHEADER_LATEST_VERSION
const XML_Char * version
Definition: expat.h:187
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
Class to hold the data from the FEBs in correct formats.
#define IMPLEMENT_FIGUREOUT_VERSION_STATIC_WITH_CUSTOM_GET_VERSION(CLASS, GETVERSIONFUNCTION)
Definition: Macros.h:286
#define IMPLEMENT_GET_MAIN(FUNC, UNITS)
Definition: Macros.h:208