#include <ROSFragment.h>
Inheritance diagram for eformat::old::ROSFragment:
Public Member Functions | |
uint32_t | bc_id () const |
uint32_t | bc_id () const |
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_id () const |
uint32_t | lvl1_id () 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 |
ROSFragment (const uint32_t *it) | |
ROSFragment (const uint32_t *it) | |
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 |
uint32_t | version () const |
uint32_t | version () const |
virtual | ~ROSFragment () |
virtual | ~ROSFragment () |
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::ROS), 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 {}
|
|
Returns the bunch crossing identifier 00062 { return m_start[1]; }
|
|
Returns the bunch crossing identifier 00062 { return m_start[1]; }
|
|
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() != 2) { 00028 throw EFORMAT_SIZE_CHECK(2, nspecific()); 00029 } 00030 return true; 00031 }
|
|
Says if the the fragment is valid. This may throw exceptions. |
|
Says if the the fragment is valid. This may throw exceptions. 00034 { 00035 check(); // check myself 00036 for (size_t i=0; i<noffset(); ++i) { 00037 eformat::old::ROBFragment rob(child(i)); 00038 rob.check_tree(); 00039 } 00040 return true; 00041 }
|
|
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 identifier 00057 { return m_start[0]; }
|
|
Returns the lvl1 identifier 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. |