/search.css" rel="stylesheet" type="text/css"/> /search.js">
00001 #ifndef CBLTREADOUTFORMAT_CBLTHEAD_H 00002 #define CBLTREADOUTFORMAT_CBLTHEAD_H 00003 00012 namespace DybDaq { 00013 class CbltReadout; 00014 } 00015 00016 #include "CbltReadoutFormat/CbltBuffer.h" 00017 00018 namespace DybDaq { 00019 00020 class CbltHead : public CbltBuffer { 00021 00022 public: 00023 00024 friend class CbltReadout; 00025 00029 virtual ~CbltHead(); 00030 00034 virtual const DaqTraits& daqTraits() const; 00035 00039 unsigned int majorVersion() const; 00040 00044 unsigned int minorVersion() const; 00045 00049 unsigned int moduleAddress() const; 00050 00054 unsigned int moduleType() const; 00055 00059 virtual unsigned int bufferSize() const; 00060 00061 protected: 00062 00066 CbltHead(const unsigned int moduleAddress, 00067 const unsigned int moduleType, 00068 const CbltTraits& traits); 00069 00073 CbltHead(const ByteBuffer& byteBuffer); 00074 00078 virtual unsigned int formatComponent() const; 00079 00080 private: 00081 00085 CbltHead(); 00086 00090 CbltHead(CbltHead& rhs); 00091 00095 CbltHead& operator=(CbltHead& rhs); 00096 00100 void setModuleAddress(const unsigned int moduleAddress); 00101 00105 void setModuleType(const unsigned int moduleType); 00106 00112 const CbltTraits* m_traits; 00113 }; 00114 00115 } 00116 00117 #endif // CBLTREADOUTFORMAT_CBLTHEAD_H