RawConfigurationSystemID.h
Go to the documentation of this file.
1 #ifndef RAWCONFIGURATIONSYSTEMID_H
2 #define RAWCONFIGURATIONSYSTEMID_H
3 #include "DAQDataFormats/RawConfigurationSystemIDV0.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 RawConfigurationSystemID
15 #define LAST_CLASS_VERSION 0
16 #define CURRENT_FIELDS_SUB_NAMESPACE rawconfsysid
17 #include "DAQDataFormats/DataFormatLast.inc"
18 
19 namespace daqdataformats {
20 
22 
23  const uint32_t MAXIMUM_SIZE = 1000;
24 
26  }
27 
28  class RawConfigurationSystemID: public PREVIOUS_VERSION_CLASS_NAME{
29  public:
30 
31  /// Constructors
33  RawConfigurationSystemID (const RawConfigurationSystemID& copy_in); //! Deep copy constructor
34  RawConfigurationSystemID (const void* dadablockheader_buffer, const version_t version = rawdaqdataformat::DAQDATAFORMAT_UNKNOWN_VERSION); //! Shallow copy constructor
35  /// Destructor
37 
40 
41  IMPLEMENT_GET_MAIN (Version , uint32_t)
42  IMPLEMENT_GET_AND_SET_MAIN(DAQSystemID , uint32_t)
43  IMPLEMENT_GET_AND_SET_MAIN(DAQSubSystemID, uint32_t)
44  IMPLEMENT_FUNCTION_RETURNING_FUNCTION_POINTER_1PAR(getVersionName, const, uint32_t, std::string&);
45  IMPLEMENT_FUNCTION_RETURNING_FUNCTION_POINTER_1PAR(setVersionName, , uint32_t, const std::string&);
46  protected:
47  IMPLEMENT_GET_MAIN (HeaderSize, uint32_t)
48  IMPLEMENT_SET_MAIN (Version , uint32_t)
49 
51 
52  bool setFunctionPointers();
53 
54  };
55 
56 } // END NAMESPCE daqdataformats
57 #endif /* RAWCONFIGURATIONSYSTEMID_H */
#define IMPLEMENT_SET_MAIN(FUNC, UNITS)
Definition: Macros.h:210
#define IMPLEMENT_MAIN_STANDARD
Definition: Macros.h:230
#define IMPLEMENT_MAIN_setBufferSource
Definition: Macros.h:228
#define IMPLEMENT_FUNCTION_RETURNING_FUNCTION_POINTER_1PAR(FUNC, CONSTNESS, OUTPUT, INP1)
Definition: Macros.h:183
#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
::xsd::cxx::tree::string< char, simple_type > string
Definition: Database.h:154
#define CURRENT_FIELDS_SUB_NAMESPACE
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_GET_MAIN(FUNC, UNITS)
Definition: Macros.h:208