#include <CbltHead.h>
Inheritance diagram for DybDaq::CbltHead:
Public Types | |
| typedef std::pair< const char *, unsigned int > | OutputBuffer |
| typedef std::vector< OutputBuffer > | OutputBufferList |
| typedef std::vector< ByteInspector * > | Bytes |
| typedef std::vector< BitsInspector * > | Bits |
Public Member Functions | |
| virtual | ~CbltHead () |
| Destroy this instance of the class. | |
| virtual const DaqTraits & | daqTraits () const |
| Returns the DaqTraits instance used to parse this object's buffer. | |
| unsigned int | majorVersion () const |
| Returns the majorVersion of the CBLT format. | |
| unsigned int | minorVersion () const |
| Returns the minorVersion of the CBLT format. | |
| unsigned int | moduleAddress () const |
| Returns the module address from this readout. | |
| unsigned int | moduleType () const |
| Returns the module type from this readout. | |
| virtual unsigned int | bufferSize () const |
| Returns the size, in 4-bytes, of this ojbect's contents in the buffer. | |
| const CbltTraits & | cbltTraits () const |
| Returns the CbltTraits instance used to parse this object's buffer. | |
| bool | hasDaqTraits () const |
| virtual unsigned int | gather (OutputBufferList &outputBuffers) const |
| virtual unsigned int | inspect (DaqBuffer::Bytes &inspectors) const |
Static Public Attributes | |
| static const unsigned int | kBytesInInt |
| static const unsigned int | kUndefinedFormatComponent |
Protected Member Functions | |
| CbltHead (const unsigned int moduleAddress, const unsigned int moduleType, const CbltTraits &traits) | |
| Create an instance of this class. | |
| CbltHead (const ByteBuffer &byteBuffer) | |
| Create an instance of this class. | |
| virtual unsigned int | formatComponent () const |
| Returns the component with the format of this buffer. | |
| const char * | buffer () const |
| char * | buffer () |
| bool | hasByteBuffer () const |
| const ByteBuffer & | byteBuffer () const |
| unsigned int | fillInspectors (DaqBuffer::Bytes &inspectors, unsigned int component, unsigned int cursor) const |
| virtual bool | readBool (const unsigned int field) const |
| virtual int | readInt (const unsigned int field) const |
| virtual unsigned char | readUnsignedChar (const unsigned int field) const |
| virtual unsigned int | readUnsignedInt (const unsigned int field) const |
| virtual void | writeField (const bool value, const unsigned int field) |
| virtual void | writeField (const int value, const unsigned int field) |
| virtual void | writeField (const unsigned int value, const unsigned int field) |
Private Member Functions | |
| CbltHead () | |
| Suppress default. | |
| CbltHead (CbltHead &rhs) | |
| Suppress default. | |
| CbltHead & | operator= (CbltHead &rhs) |
| Suppress default. | |
| void | setModuleAddress (const unsigned int moduleAddress) |
| Sets the module address from this readout. | |
| void | setModuleType (const unsigned int moduleType) |
| Sets the module address from this readout. | |
Private Attributes | |
| const CbltTraits * | m_traits |
| The CbltTraits instance used to parse this object's buffer. | |
Friends | |
| class | CbltReadout |
Definition at line 20 of file CbltHead.h.
| CbltHead::~CbltHead | ( | ) | [virtual] |
| CbltHead::CbltHead | ( | const unsigned int | moduleAddress, | |
| const unsigned int | moduleType, | |||
| const CbltTraits & | traits | |||
| ) | [protected] |
Create an instance of this class.
Definition at line 20 of file CbltHead.cc.
00022 : 00023 CbltBuffer(new char[traits.headSize() * kBytesInInt], 00024 traits) { 00025 m_traits = &traits; 00026 traits.initializeHead(buffer()); 00027 setModuleAddress(moduleAddress); 00028 setModuleType(moduleType); 00029 }
| CbltHead::CbltHead | ( | const ByteBuffer & | byteBuffer | ) | [protected] |
Create an instance of this class.
Definition at line 31 of file CbltHead.cc.
00031 : 00032 CbltBuffer(byteBuffer, 00033 *((CbltTraits*)0)) { 00034 const char* buffer = byteBuffer.cursor(); 00035 m_traits = CbltTraits::readTraits(buffer); 00036 byteBuffer.position(byteBuffer.position() + kBytesInInt); 00037 }
| DybDaq::CbltHead::CbltHead | ( | ) | [private] |
Suppress default.
| DybDaq::CbltHead::CbltHead | ( | CbltHead & | rhs | ) | [private] |
Suppress default.
| const DaqTraits & CbltHead::daqTraits | ( | ) | const [virtual] |
Returns the DaqTraits instance used to parse this object's buffer.
Reimplemented from DybDaq::DaqBuffer.
Definition at line 42 of file CbltHead.cc.
00042 { 00043 return *m_traits; 00044 }
| unsigned int CbltHead::majorVersion | ( | ) | const |
Returns the majorVersion of the CBLT format.
Definition at line 50 of file CbltHead.cc.
00050 { 00051 if (0 == m_traits->majorVersion()) { 00052 return m_traits->majorVersion(); 00053 } 00054 return readUnsignedInt(CbltTraits::kMajorVersion); 00055 }
| unsigned int CbltHead::minorVersion | ( | ) | const |
Returns the minorVersion of the CBLT format.
Definition at line 57 of file CbltHead.cc.
00057 { 00058 if (0 == m_traits->majorVersion()) { 00059 return m_traits->minorVersion(); 00060 } 00061 return readUnsignedInt(CbltTraits::kMinorVersion); 00062 }
| unsigned int CbltHead::moduleAddress | ( | ) | const |
Returns the module address from this readout.
Definition at line 64 of file CbltHead.cc.
00064 { 00065 return readUnsignedInt(CbltTraits::kHeadModuleAddress); 00066 }
| unsigned int CbltHead::moduleType | ( | ) | const |
Returns the module type from this readout.
Definition at line 68 of file CbltHead.cc.
00068 { 00069 return readUnsignedInt(CbltTraits::kHeadModuleType); 00070 }
| unsigned int CbltHead::bufferSize | ( | ) | const [virtual] |
Returns the size, in 4-bytes, of this ojbect's contents in the buffer.
Implements DybDaq::DaqBuffer.
Definition at line 72 of file CbltHead.cc.
00072 { 00073 return cbltTraits().headSize(); 00074 }
| unsigned int CbltHead::formatComponent | ( | ) | const [protected, virtual] |
Returns the component with the format of this buffer.
Reimplemented from DybDaq::DaqBuffer.
Definition at line 46 of file CbltHead.cc.
00046 { 00047 return CbltTraits::kHead; 00048 }
| void CbltHead::setModuleAddress | ( | const unsigned int | moduleAddress | ) | [private] |
Sets the module address from this readout.
Definition at line 76 of file CbltHead.cc.
00076 { 00077 writeField(moduleAddress, 00078 CbltTraits::kHeadModuleAddress); 00079 }
| void CbltHead::setModuleType | ( | const unsigned int | moduleType | ) | [private] |
Sets the module address from this readout.
Definition at line 81 of file CbltHead.cc.
00081 { 00082 writeField(moduleType, 00083 CbltTraits::kHeadModuleType); 00084 }
| const CbltTraits & CbltBuffer::cbltTraits | ( | ) | const [inherited] |
Returns the CbltTraits instance used to parse this object's buffer.
Definition at line 34 of file CbltBuffer.cc.
00034 { 00035 return dynamic_cast<const CbltTraits&>(daqTraits()); 00036 }
friend class CbltReadout [friend] |
Definition at line 24 of file CbltHead.h.
const CbltTraits* DybDaq::CbltHead::m_traits [private] |
The CbltTraits instance used to parse this object's buffer.
This is set after construction, so can not use base class's.
Reimplemented from DybDaq::DaqBuffer.
Definition at line 112 of file CbltHead.h.
1.4.7