BOSS 6.6.4.p03
BESIII Offline Software System
Loading...
Searching...
No Matches
eformat::old::SubDetectorFragment Class Reference

#include <SubDetectorFragment.h>

+ Inheritance diagram for eformat::old::SubDetectorFragment:

Public Member Functions

 SubDetectorFragment (const uint32_t *it)
 
virtual ~SubDetectorFragment ()
 
virtual bool check () const
 
bool check_tree () const
 
uint32_t lvl1_trigger_type () const
 
- Public Member Functions inherited from eformat::old::Header
 Header (const uint32_t *it, uint32_t match)
 
virtual ~Header ()
 
virtual bool check () const
 
uint32_t marker () const
 
uint32_t fragment_size_word () const
 
uint32_t header_size_word () const
 
uint32_t version () const
 
uint32_t source_id () const
 
uint32_t run_no () const
 
uint32_t nstatus () const
 
const uint32_t * status () const
 
uint32_t noffset () const
 
const uint32_t * offset (void) const
 
uint32_t nspecific () const
 
const uint32_t * specific_header (void) const
 
const uint32_t * child (size_t n) const
 

Detailed Description

Describes how to access the contents of a subdetector fragment, as prescribed by the event format note.

Definition at line 27 of file old/SubDetectorFragment.h.

Constructor & Destructor Documentation

◆ SubDetectorFragment()

eformat::old::SubDetectorFragment::SubDetectorFragment ( const uint32_t *  it)

To build a fragment given the containing buffer. I need to know where the fragment starts in order to do that.

Parameters
itThe exact position where this fragment should start.

Definition at line 18 of file SubDetectorFragment24.cxx.

20 m_start(specific_header())
21{
22}
const uint32_t * specific_header(void) const
Definition: old/Header.h:130
@ SUB_DETECTOR
The SubDet. marker.
Definition: HeaderMarker.h:29

◆ ~SubDetectorFragment()

virtual eformat::old::SubDetectorFragment::~SubDetectorFragment ( )
inlinevirtual

Destructor virtualisation

Definition at line 42 of file old/SubDetectorFragment.h.

42{}

Member Function Documentation

◆ check()

bool eformat::old::SubDetectorFragment::check ( ) const
virtual

Says if the the fragment is valid. This may throw exceptions.

Reimplemented from eformat::old::Header.

Definition at line 24 of file SubDetectorFragment24.cxx.

25{
26 eformat::old::Header::check(); //< first do a generic check
27 if (nspecific() != 1) throw EFORMAT_SIZE_CHECK(1, nspecific());
28 return true;
29}
#define EFORMAT_SIZE_CHECK(actual, informed)
virtual bool check() const
Definition: Header24.cxx:29
uint32_t nspecific() const
Definition: old/Header.h:123

◆ check_tree()

bool eformat::old::SubDetectorFragment::check_tree ( ) const

Says if the the fragment is valid. This may throw exceptions.

Definition at line 31 of file SubDetectorFragment24.cxx.

32{
33 check(); // check myself
34 for (size_t i=0; i<noffset(); ++i) {
36 ros.check_tree();
37 }
38 return true;
39}
const uint32_t * child(size_t n) const
Definition: Header24.cxx:39
uint32_t noffset() const
Definition: old/Header.h:110

Referenced by eformat::old::FullEventFragment::check_tree().

◆ lvl1_trigger_type()

uint32_t eformat::old::SubDetectorFragment::lvl1_trigger_type ( ) const
inline

Returns the lvl1 trigger type

Definition at line 57 of file old/SubDetectorFragment.h.

57{ return m_start[0]; }

The documentation for this class was generated from the following files: