BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
eformat::old::ROBFragment Class Reference

#include <ROBFragment.h>

Inheritance diagram for eformat::old::ROBFragment:

Public Member Functions

 ROBFragment (const uint32_t *it)
virtual ~ROBFragment ()
virtual bool check () const
bool check_tree () const
uint32_t lvl1_id () const
uint32_t bc_id () const
uint32_t lvl1_trigger_type () const
uint32_t detev_type () const
eformat::old::RODFragment rod (size_t n) const
 ROBFragment (const uint32_t *it)
virtual ~ROBFragment ()
virtual bool check () const
bool check_tree () const
uint32_t lvl1_id () const
uint32_t bc_id () const
uint32_t lvl1_trigger_type () const
uint32_t detev_type () const
eformat::old::RODFragment rod (size_t n) const
 ROBFragment (const uint32_t *it)
virtual ~ROBFragment ()
virtual bool check () const
bool check_tree () const
uint32_t lvl1_id () const
uint32_t bc_id () const
uint32_t lvl1_trigger_type () const
uint32_t detev_type () const
eformat::old::RODFragment rod (size_t n) const
Public Member Functions inherited from eformat::old::Header
 Header (const uint32_t *it, uint32_t match)
virtual ~Header ()
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
 Header (const uint32_t *it, uint32_t match)
virtual ~Header ()
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
 Header (const uint32_t *it, uint32_t match)
virtual ~Header ()
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 28 of file Event/eformat/include/eformat/old/ROBFragment.h.

Constructor & Destructor Documentation

◆ ROBFragment() [1/3]

eformat::old::ROBFragment::ROBFragment ( 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 ROBFragment24.cxx.

19 : eformat::old::Header( it, eformat::ROB ), m_start( specific_header() ) {}

◆ ~ROBFragment() [1/3]

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

Destructor virtualisation

Definition at line 42 of file Event/eformat/include/eformat/old/ROBFragment.h.

42{}

◆ ROBFragment() [2/3]

eformat::old::ROBFragment::ROBFragment ( 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.

◆ ~ROBFragment() [2/3]

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

Destructor virtualisation

Definition at line 42 of file InstallArea/x86_64-el9-gcc13-dbg/include/eformat/old/ROBFragment.h.

42{}

◆ ROBFragment() [3/3]

eformat::old::ROBFragment::ROBFragment ( 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.

◆ ~ROBFragment() [3/3]

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

Destructor virtualisation

Definition at line 42 of file InstallArea/x86_64-el9-gcc13-opt/include/eformat/old/ROBFragment.h.

42{}

Member Function Documentation

◆ bc_id() [1/3]

uint32_t eformat::old::ROBFragment::bc_id ( ) const
inline

Returns the bunch crossing identifier

Definition at line 62 of file Event/eformat/include/eformat/old/ROBFragment.h.

62{ return m_start[1]; }

◆ bc_id() [2/3]

uint32_t eformat::old::ROBFragment::bc_id ( ) const
inline

Returns the bunch crossing identifier

Definition at line 62 of file InstallArea/x86_64-el9-gcc13-dbg/include/eformat/old/ROBFragment.h.

62{ return m_start[1]; }

◆ bc_id() [3/3]

uint32_t eformat::old::ROBFragment::bc_id ( ) const
inline

Returns the bunch crossing identifier

Definition at line 62 of file InstallArea/x86_64-el9-gcc13-opt/include/eformat/old/ROBFragment.h.

62{ return m_start[1]; }

◆ check() [1/3]

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

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

Reimplemented from eformat::old::Header.

Definition at line 21 of file ROBFragment24.cxx.

21 {
22 eformat::old::Header::check(); //< first do a generic check
23 if ( nspecific() != 4 ) throw EFORMAT_SIZE_CHECK( 4, nspecific() );
24 return true;
25}
#define EFORMAT_SIZE_CHECK(actual, informed)
virtual bool check() const
Definition Header24.cxx:27

Referenced by check_tree(), and rod().

◆ check() [2/3]

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

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

Reimplemented from eformat::old::Header.

◆ check() [3/3]

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

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

Reimplemented from eformat::old::Header.

◆ check_tree() [1/3]

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

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

Definition at line 27 of file ROBFragment24.cxx.

27 {
28 check(); // check myself
29 for ( size_t i = 0; i < noffset(); ++i )
30 {
31 size_t rod_size = 0;
32 // typical
33 if ( noffset() == 1 ) rod_size = fragment_size_word() - header_size_word();
34 else
35 { // more atypical, have to calculate
36 if ( i != noffset() - 1 ) rod_size = ( 0xffffff & offset()[i + 1] );
37 else rod_size = fragment_size_word();
38 rod_size -= ( 0xffffff & offset()[i] );
39 }
40 eformat::old::RODFragment f( child( i ), rod_size );
41 f.check();
42 }
43 return true;
44}
TFile f("ana_bhabha660a_dqa_mcPat_zy_old.root")
const uint32_t * child(size_t n) const
Definition Header24.cxx:36
virtual bool check() const

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

◆ check_tree() [2/3]

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

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

◆ check_tree() [3/3]

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

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

◆ detev_type() [1/3]

uint32_t eformat::old::ROBFragment::detev_type ( ) const
inline

Returns the detector event type

Definition at line 72 of file Event/eformat/include/eformat/old/ROBFragment.h.

72{ return m_start[3]; }

◆ detev_type() [2/3]

uint32_t eformat::old::ROBFragment::detev_type ( ) const
inline

Returns the detector event type

Definition at line 72 of file InstallArea/x86_64-el9-gcc13-dbg/include/eformat/old/ROBFragment.h.

72{ return m_start[3]; }

◆ detev_type() [3/3]

uint32_t eformat::old::ROBFragment::detev_type ( ) const
inline

Returns the detector event type

Definition at line 72 of file InstallArea/x86_64-el9-gcc13-opt/include/eformat/old/ROBFragment.h.

72{ return m_start[3]; }

◆ lvl1_id() [1/3]

uint32_t eformat::old::ROBFragment::lvl1_id ( ) const
inline

Returns the lvl1 identifier

Definition at line 57 of file Event/eformat/include/eformat/old/ROBFragment.h.

57{ return m_start[0]; }

◆ lvl1_id() [2/3]

uint32_t eformat::old::ROBFragment::lvl1_id ( ) const
inline

Returns the lvl1 identifier

Definition at line 57 of file InstallArea/x86_64-el9-gcc13-dbg/include/eformat/old/ROBFragment.h.

57{ return m_start[0]; }

◆ lvl1_id() [3/3]

uint32_t eformat::old::ROBFragment::lvl1_id ( ) const
inline

Returns the lvl1 identifier

Definition at line 57 of file InstallArea/x86_64-el9-gcc13-opt/include/eformat/old/ROBFragment.h.

57{ return m_start[0]; }

◆ lvl1_trigger_type() [1/3]

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

Returns the lvl1 trigger type

Definition at line 67 of file Event/eformat/include/eformat/old/ROBFragment.h.

67{ return m_start[2]; }

◆ lvl1_trigger_type() [2/3]

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

Returns the lvl1 trigger type

Definition at line 67 of file InstallArea/x86_64-el9-gcc13-dbg/include/eformat/old/ROBFragment.h.

67{ return m_start[2]; }

◆ lvl1_trigger_type() [3/3]

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

Returns the lvl1 trigger type

Definition at line 67 of file InstallArea/x86_64-el9-gcc13-opt/include/eformat/old/ROBFragment.h.

67{ return m_start[2]; }

◆ rod() [1/3]

eformat::old::RODFragment eformat::old::ROBFragment::rod ( size_t n) const

Returns the nth child fragment. If the nth fragment doesn't exist, an exception is thrown.

Parameters
nThe fragment position, starting at zero, of the child fragment you would like to get.

Definition at line 46 of file ROBFragment24.cxx.

46 {
47 check();
48 size_t rod_size = 0;
49 // typical
50 if ( noffset() == 1 ) rod_size = fragment_size_word() - header_size_word();
51 else
52 { // more atypical, have to calculate
53 if ( n != noffset() - 1 ) rod_size = ( 0xffffff & offset()[n + 1] );
54 else rod_size = fragment_size_word();
55 rod_size -= ( 0xffffff & offset()[n] );
56 }
57 eformat::old::RODFragment f( child( n ), rod_size );
58 f.check();
59 return f;
60}
const Int_t n

Referenced by eformat::old::convert(), and convert_ros().

◆ rod() [2/3]

eformat::old::RODFragment eformat::old::ROBFragment::rod ( size_t n) const

Returns the nth child fragment. If the nth fragment doesn't exist, an exception is thrown.

Parameters
nThe fragment position, starting at zero, of the child fragment you would like to get.

◆ rod() [3/3]

eformat::old::RODFragment eformat::old::ROBFragment::rod ( size_t n) const

Returns the nth child fragment. If the nth fragment doesn't exist, an exception is thrown.

Parameters
nThe fragment position, starting at zero, of the child fragment you would like to get.

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