#include <SubDetectorFragment.h>
Inheritance diagram for eformat::old::SubDetectorFragment:
Public Member Functions | |
virtual bool | check () const |
virtual bool | check () const |
bool | check_tree () const |
bool | check_tree () const |
const uint32_t * | child (size_t n) const |
const uint32_t * | child (size_t n) const |
uint32_t | fragment_size_word () const |
uint32_t | fragment_size_word () const |
uint32_t | header_size_word () const |
uint32_t | header_size_word () const |
uint32_t | lvl1_trigger_type () const |
uint32_t | lvl1_trigger_type () const |
uint32_t | marker () const |
uint32_t | marker () const |
uint32_t | noffset () const |
uint32_t | noffset () const |
uint32_t | nspecific () const |
uint32_t | nspecific () const |
uint32_t | nstatus () const |
uint32_t | nstatus () const |
const uint32_t * | offset (void) const |
const uint32_t * | offset (void) const |
uint32_t | run_no () const |
uint32_t | run_no () const |
uint32_t | source_id () const |
uint32_t | source_id () const |
const uint32_t * | specific_header (void) const |
const uint32_t * | specific_header (void) const |
const uint32_t * | status () const |
const uint32_t * | status () const |
SubDetectorFragment (const uint32_t *it) | |
SubDetectorFragment (const uint32_t *it) | |
uint32_t | version () const |
uint32_t | version () const |
virtual | ~SubDetectorFragment () |
virtual | ~SubDetectorFragment () |
Private Attributes | |
const uint32_t * | m_start |
my start word | |
const uint32_t * | m_start |
my start word |
|
To build a fragment given the containing buffer. I need to know where the fragment starts in order to do that.
00019 : eformat::old::Header(it, eformat::SUB_DETECTOR), 00020 m_start(specific_header()) 00021 { 00022 }
|
|
Destructor virtualisation 00042 {}
|
|
To build a fragment given the containing buffer. I need to know where the fragment starts in order to do that.
|
|
Destructor virtualisation 00042 {}
|
|
Says if the the fragment is valid. This may throw exceptions. Reimplemented from eformat::old::Header. |
|
Says if the the fragment is valid. This may throw exceptions. Reimplemented from eformat::old::Header. 00025 { 00026 eformat::old::Header::check(); //< first do a generic check 00027 if (nspecific() != 1) throw EFORMAT_SIZE_CHECK(1, nspecific()); 00028 return true; 00029 }
|
|
Says if the the fragment is valid. This may throw exceptions. |
|
Says if the the fragment is valid. This may throw exceptions. 00032 { 00033 check(); // check myself 00034 for (size_t i=0; i<noffset(); ++i) { 00035 eformat::old::ROSFragment ros(child(i)); 00036 ros.check_tree(); 00037 } 00038 return true; 00039 }
|
|
Returns the nth child fragment. If the nth fragment doesn't exist, an exception is thrown.
|
|
Returns the nth child fragment. If the nth fragment doesn't exist, an exception is thrown.
00040 { 00041 if (n >= noffset()) throw EFORMAT_NO_SUCH_CHILD(n, noffset()); 00042 return &m_start[0xffffff & offset()[n]]; 00043 }
|
|
Returns the size, in words, of the current fragment. 00072 { return m_start[1]; }
|
|
Returns the size, in words, of the current fragment. 00072 { return m_start[1]; }
|
|
Returns the size, in words, of the current header. That does include the specific part of the header. 00078 { return m_start[2]; }
|
|
Returns the size, in words, of the current header. That does include the specific part of the header. 00078 { return m_start[2]; }
|
|
Returns the lvl1 trigger type 00057 { return m_start[0]; }
|
|
Returns the lvl1 trigger type 00057 { return m_start[0]; }
|
|
Returns the fragment type. 00067 { return m_start[0]; }
|
|
Returns the fragment type. 00067 { return m_start[0]; }
|
|
Returns the number of offset words available. This will also determine the number of child fragments available to this super-fragment.
|
|
Returns the number of offset words available. This will also determine the number of child fragments available to this super-fragment.
|
|
Returns the number of specific words available in the specific header part
|
|
Returns the number of specific words available in the specific header part
|
|
Returns the number of status words available 00098 { return m_start[6]; }
|
|
Returns the number of status words available 00098 { return m_start[6]; }
|
|
Returns the offset words, as an iterator to the offset words available.
|
|
Returns the offset words, as an iterator to the offset words available.
|
|
Returns the current run number. 00093 { return m_start[5]; }
|
|
Returns the current run number. 00093 { return m_start[5]; }
|
|
Returns the full source identifier. 00088 { return m_start[4]; }
|
|
Returns the full source identifier. 00088 { return m_start[4]; }
|
|
Returns an iterator to the start of the specific header part (this includes the number of specific header fragments)
|
|
Returns an iterator to the start of the specific header part (this includes the number of specific header fragments)
|
|
Returns the status words, as an iterator to the status words available. 00104 { return &m_start[7]; }
|
|
Returns the status words, as an iterator to the status words available. 00104 { return &m_start[7]; }
|
|
Returns the formatting version. 00083 { return m_start[3]; }
|
|
Returns the formatting version. 00083 { return m_start[3]; }
|
|
my start word
Reimplemented from eformat::old::Header. |
|
my start word
Reimplemented from eformat::old::Header. |