BOSS
7.0.7
BESIII Offline Software System
Loading...
Searching...
No Matches
old/ROBFragment.h
Go to the documentation of this file.
1
//Dear emacs, this is -*- c++ -*-
2
3
/**
4
* @file eformat/old/ROBFragment.h
5
* @author <a href="mailto:
[email protected]
">Andre DOS ANJOS</a>
6
* $Author: zhangy $
7
* $Revision: 1.1.1.1 $
8
* $Date: 2009/06/19 07:35:41 $
9
*
10
* @brief Defines the ROB fragment entity as described in the Event Format
11
* note.
12
*/
13
14
#ifndef EFORMAT_OLD_ROBFRAGMENT_H
15
#define EFORMAT_OLD_ROBFRAGMENT_H
16
17
#include "
eformat/old/Header.h
"
18
#include "
eformat/old/RODFragment.h
"
19
20
namespace
eformat
{
21
22
namespace
old {
23
24
/**
25
* Describes how to access the contents of a subdetector fragment, as
26
* prescribed by the event format note.
27
*/
28
class
ROBFragment
:
public
eformat::old::Header
{
29
30
public
:
//interface
31
32
/**
33
* To build a fragment given the containing buffer. I need to know
34
* where the fragment starts in order to do that.
35
*
36
* @param it The exact position where this fragment should start.
37
*/
38
ROBFragment
(
const
uint32_t* it);
39
40
/**
41
* Destructor virtualisation
42
*/
43
virtual
~ROBFragment
() {}
44
45
/**
46
* Says if the the fragment is valid. This may throw exceptions.
47
*/
48
virtual
bool
check
()
const
;
49
50
/**
51
* Says if the the fragment is valid. This may throw exceptions.
52
*/
53
bool
check_tree
()
const
;
54
55
/**
56
* Returns the lvl1 identifier
57
*/
58
inline
uint32_t
lvl1_id
()
const
{
return
m_start[0]; }
59
60
/**
61
* Returns the bunch crossing identifier
62
*/
63
inline
uint32_t
bc_id
()
const
{
return
m_start[1]; }
64
65
/**
66
* Returns the lvl1 trigger type
67
*/
68
inline
uint32_t
lvl1_trigger_type
()
const
{
return
m_start[2]; }
69
70
/**
71
* Returns the detector event type
72
*/
73
inline
uint32_t
detev_type
()
const
{
return
m_start[3]; }
74
75
/**
76
* Returns the nth child fragment. If the nth fragment doesn't exist, an
77
* exception is thrown.
78
*
79
* @param n The fragment position, starting at zero, of the child
80
* fragment you would like to get.
81
*/
82
eformat::old::RODFragment
rod
(
size_t
n)
const
;
83
84
private
:
//representation
85
86
const
uint32_t* m_start;
///< my last word
87
88
};
89
90
}
91
92
}
93
94
#endif
/* EFORMAT_OLD_ROBFRAGMENT_H */
RODFragment.h
Definition of the ROD header entity, following the description of the Event Format note,...
eformat::old::Header
Definition:
old/Header.h:40
eformat::old::ROBFragment
Definition:
old/ROBFragment.h:28
eformat::old::ROBFragment::lvl1_id
uint32_t lvl1_id() const
Definition:
old/ROBFragment.h:58
eformat::old::ROBFragment::check
virtual bool check() const
Definition:
ROBFragment24.cxx:24
eformat::old::ROBFragment::check_tree
bool check_tree() const
Definition:
ROBFragment24.cxx:31
eformat::old::ROBFragment::bc_id
uint32_t bc_id() const
Definition:
old/ROBFragment.h:63
eformat::old::ROBFragment::rod
eformat::old::RODFragment rod(size_t n) const
Definition:
ROBFragment24.cxx:49
eformat::old::ROBFragment::detev_type
uint32_t detev_type() const
Definition:
old/ROBFragment.h:73
eformat::old::ROBFragment::lvl1_trigger_type
uint32_t lvl1_trigger_type() const
Definition:
old/ROBFragment.h:68
eformat::old::ROBFragment::~ROBFragment
virtual ~ROBFragment()
Definition:
old/ROBFragment.h:43
eformat::old::RODFragment
Definition:
RODFragment.h:32
eformat
Definition:
BadVersionIssue.h:20
Header.h
Defines the Header entity. The definition is based on the update of ATL-DAQ-98-129,...
source
Event
eformat
eformat-00-00-04
eformat
old
ROBFragment.h
Generated by
1.9.6