Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

eformat::old::ROSFragment Class Reference

#include <ROSFragment.h>

Inheritance diagram for eformat::old::ROSFragment:

eformat::old::Header eformat::old::Header List of all members.

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

Detailed Description

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


Constructor & Destructor Documentation

eformat::old::ROSFragment::ROSFragment 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:
it The exact position where this fragment should start.
00019   : eformat::old::Header(it, eformat::ROS),
00020     m_start(specific_header())
00021 {
00022 }

virtual eformat::old::ROSFragment::~ROSFragment  )  [inline, virtual]
 

Destructor virtualisation

00042 {}

eformat::old::ROSFragment::ROSFragment 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:
it The exact position where this fragment should start.

virtual eformat::old::ROSFragment::~ROSFragment  )  [inline, virtual]
 

Destructor virtualisation

00042 {}


Member Function Documentation

uint32_t eformat::old::ROSFragment::bc_id  )  const [inline]
 

Returns the bunch crossing identifier

00062 { return m_start[1]; }

uint32_t eformat::old::ROSFragment::bc_id  )  const [inline]
 

Returns the bunch crossing identifier

00062 { return m_start[1]; }

virtual bool eformat::old::ROSFragment::check  )  const [virtual]
 

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

Reimplemented from eformat::old::Header.

bool eformat::old::ROSFragment::check  )  const [virtual]
 

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 }

bool eformat::old::ROSFragment::check_tree  )  const
 

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

bool eformat::old::ROSFragment::check_tree  )  const
 

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 }

const uint32_t* eformat::old::Header::child size_t  n  )  const [inherited]
 

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

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

const uint32_t * eformat::old::Header::child size_t  n  )  const [inherited]
 

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

Parameters:
n The fragment position, starting at zero, of the child fragment you would like to get.
00040 {
00041   if (n >= noffset()) throw EFORMAT_NO_SUCH_CHILD(n, noffset());
00042   return &m_start[0xffffff & offset()[n]];
00043 }

uint32_t eformat::old::Header::fragment_size_word  )  const [inline, inherited]
 

Returns the size, in words, of the current fragment.

00072 { return m_start[1]; }

uint32_t eformat::old::Header::fragment_size_word  )  const [inline, inherited]
 

Returns the size, in words, of the current fragment.

00072 { return m_start[1]; }

uint32_t eformat::old::Header::header_size_word  )  const [inline, inherited]
 

Returns the size, in words, of the current header. That does include the specific part of the header.

00078 { return m_start[2]; }

uint32_t eformat::old::Header::header_size_word  )  const [inline, inherited]
 

Returns the size, in words, of the current header. That does include the specific part of the header.

00078 { return m_start[2]; }

uint32_t eformat::old::ROSFragment::lvl1_id  )  const [inline]
 

Returns the lvl1 identifier

00057 { return m_start[0]; }

uint32_t eformat::old::ROSFragment::lvl1_id  )  const [inline]
 

Returns the lvl1 identifier

00057 { return m_start[0]; }

uint32_t eformat::old::Header::marker  )  const [inline, inherited]
 

Returns the fragment type.

00067 { return m_start[0]; }

uint32_t eformat::old::Header::marker  )  const [inline, inherited]
 

Returns the fragment type.

00067 { return m_start[0]; }

uint32_t eformat::old::Header::noffset  )  const [inline, inherited]
 

Returns the number of offset words available. This will also determine the number of child fragments available to this super-fragment.

00110 { return m_start[7 + nstatus()]; }

uint32_t eformat::old::Header::noffset  )  const [inline, inherited]
 

Returns the number of offset words available. This will also determine the number of child fragments available to this super-fragment.

00110 { return m_start[7 + nstatus()]; }

uint32_t eformat::old::Header::nspecific  )  const [inline, inherited]
 

Returns the number of specific words available in the specific header part

00124       { return m_start[8 + nstatus() + noffset()]; }

uint32_t eformat::old::Header::nspecific  )  const [inline, inherited]
 

Returns the number of specific words available in the specific header part

00124       { return m_start[8 + nstatus() + noffset()]; }

uint32_t eformat::old::Header::nstatus void   )  const [inline, inherited]
 

Returns the number of status words available

00098 { return m_start[6]; }

uint32_t eformat::old::Header::nstatus  )  const [inline, inherited]
 

Returns the number of status words available

00098 { return m_start[6]; }

const uint32_t* eformat::old::Header::offset void   )  const [inline, inherited]
 

Returns the offset words, as an iterator to the offset words available.

00117       { return &m_start[8 + nstatus()]; }

const uint32_t* eformat::old::Header::offset void   )  const [inline, inherited]
 

Returns the offset words, as an iterator to the offset words available.

00117       { return &m_start[8 + nstatus()]; }

uint32_t eformat::old::Header::run_no  )  const [inline, inherited]
 

Returns the current run number.

00093 { return m_start[5]; }

uint32_t eformat::old::Header::run_no  )  const [inline, inherited]
 

Returns the current run number.

00093 { return m_start[5]; }

uint32_t eformat::old::Header::source_id void   )  const [inline, inherited]
 

Returns the full source identifier.

00088 { return m_start[4]; }

uint32_t eformat::old::Header::source_id  )  const [inline, inherited]
 

Returns the full source identifier.

00088 { return m_start[4]; }

const uint32_t* eformat::old::Header::specific_header void   )  const [inline, inherited]
 

Returns an iterator to the start of the specific header part (this includes the number of specific header fragments)

00131       { return &m_start[9 + nstatus() + noffset()]; }

const uint32_t* eformat::old::Header::specific_header void   )  const [inline, inherited]
 

Returns an iterator to the start of the specific header part (this includes the number of specific header fragments)

00131       { return &m_start[9 + nstatus() + noffset()]; }

const uint32_t* eformat::old::Header::status void   )  const [inline, inherited]
 

Returns the status words, as an iterator to the status words available.

00104 { return &m_start[7]; }

const uint32_t* eformat::old::Header::status  )  const [inline, inherited]
 

Returns the status words, as an iterator to the status words available.

00104 { return &m_start[7]; }

uint32_t eformat::old::Header::version  )  const [inline, inherited]
 

Returns the formatting version.

00083 { return m_start[3]; }

uint32_t eformat::old::Header::version  )  const [inline, inherited]
 

Returns the formatting version.

00083 { return m_start[3]; }


Member Data Documentation

const uint32_t* eformat::old::ROSFragment::m_start [private]
 

my start word

Reimplemented from eformat::old::Header.

const uint32_t* eformat::old::ROSFragment::m_start [private]
 

my start word

Reimplemented from eformat::old::Header.


The documentation for this class was generated from the following files:
Generated on Wed Feb 2 19:18:56 2011 for BOSS6.5.5 by  doxygen 1.3.9.1