ATLAS Offline Software
Loading...
Searching...
No Matches
TrigMonTE Class Reference

Summary of one trigger element from navigation tree. More...

#include <TrigMonTE.h>

Collaboration diagram for TrigMonTE:

Public Types

enum  Type { kELEM = 0 , kINIT = 1 , kROI = 2 , kL1TH = 3 }
enum  State {
  activeState = 0x010000 , errorState = 0x020000 , terminalNode = 0x040000 , outputL2Node = 0x080000 ,
  outputEFNode = 0x100000 , topologicalTE = 0x200000
}

Public Member Functions

 TrigMonTE ()
 TrigMonTE (uint32_t id, uint16_t index)
 ~TrigMonTE ()
void addChildIndex (uint16_t index)
void addParentIndex (uint16_t index)
void addRoiId (uint8_t roiid)
void addClid (uint32_t clid)
void addVar (const TrigMonVar &var)
void setType (Type type)
void addState (State state)
void clearIndexes ()
void clearClids ()
uint32_t getId () const
uint16_t getIndex () const
Type getType () const
bool getActiveState () const
bool getErrorState () const
bool isTerminalNode () const
bool isOutputL2Node () const
bool isOutputEFNode () const
bool isTopologicalTE () const
const std::vector< uint16_t > & getChildIndex () const
const std::vector< uint16_t > & getParentIndex () const
const std::vector< uint8_t > & getRoiId () const
const std::vector< uint32_t > & getClid () const
const std::vector< TrigMonVargetVar () const
const std::vector< uint16_t > & getVarKey () const
const std::vector< float > & getVarVal () const
void print (std::ostream &os=std::cout)

Private Attributes

uint32_t m_id
uint32_t m_encoded
std::vector< uint16_t > m_child
std::vector< uint16_t > m_parent
std::vector< uint8_t > m_roi
std::vector< uint32_t > m_clid
std::vector< uint16_t > m_var_key
std::vector< float > m_var_val

Friends

class TrigMonTECnv_p1

Detailed Description

Summary of one trigger element from navigation tree.

Author
Rustem Ospanov
Date
July 2009

Definition at line 27 of file TrigMonTE.h.

Member Enumeration Documentation

◆ State

Enumerator
activeState 
errorState 
terminalNode 
outputL2Node 
outputEFNode 
topologicalTE 

Definition at line 37 of file TrigMonTE.h.

37 {
38 activeState = 0x010000, // Active/inactive state of TE
39 errorState = 0x020000, // There was an error in algorithms dealing with this TE
40 terminalNode = 0x040000, // Node is terminal (no more TriggerElement are seeded by it)
41 outputL2Node = 0x080000, // This is output TE of passed or passedRaw L2 chain
42 outputEFNode = 0x100000, // This is output TE of passed or passedRaw EF chain
43 topologicalTE = 0x200000 // Topological TE (more than 1 parent)
44 };
@ terminalNode
Definition TrigMonTE.h:40
@ outputL2Node
Definition TrigMonTE.h:41
@ activeState
Definition TrigMonTE.h:38
@ topologicalTE
Definition TrigMonTE.h:43
@ outputEFNode
Definition TrigMonTE.h:42

◆ Type

Enumerator
kELEM 
kINIT 
kROI 
kL1TH 

Definition at line 31 of file TrigMonTE.h.

31 {
32 kELEM = 0, // Regular TE in navigation tree (default)
33 kINIT = 1, // Initial TE
34 kROI = 2, // RoI TE attached to initial TE
35 kL1TH = 3 // L1 threshold TE attached to ROI TE
36 };

Constructor & Destructor Documentation

◆ TrigMonTE() [1/2]

TrigMonTE::TrigMonTE ( )

Definition at line 23 of file TrigMonTE.cxx.

24 :m_id(0),
25 m_encoded(0x0)
26{
27}
uint32_t m_id
Definition TrigMonTE.h:90
uint32_t m_encoded
Definition TrigMonTE.h:91

◆ TrigMonTE() [2/2]

TrigMonTE::TrigMonTE ( uint32_t id,
uint16_t index )

Definition at line 30 of file TrigMonTE.cxx.

31 :m_id(id),
32 m_encoded(index)
33{
34}

◆ ~TrigMonTE()

TrigMonTE::~TrigMonTE ( )
inline

Definition at line 48 of file TrigMonTE.h.

48{}

Member Function Documentation

◆ addChildIndex()

void TrigMonTE::addChildIndex ( uint16_t index)
inline

Definition at line 50 of file TrigMonTE.h.

50{ m_child.push_back(index); }
std::vector< uint16_t > m_child
Definition TrigMonTE.h:93

◆ addClid()

void TrigMonTE::addClid ( uint32_t clid)
inline

Definition at line 54 of file TrigMonTE.h.

54{ m_clid.push_back(clid); }
std::vector< uint32_t > m_clid
Definition TrigMonTE.h:96

◆ addParentIndex()

void TrigMonTE::addParentIndex ( uint16_t index)
inline

Definition at line 51 of file TrigMonTE.h.

51{ m_parent.push_back(index); }
std::vector< uint16_t > m_parent
Definition TrigMonTE.h:94

◆ addRoiId()

void TrigMonTE::addRoiId ( uint8_t roiid)
inline

Definition at line 53 of file TrigMonTE.h.

53{ m_roi.push_back(roiid); }
std::vector< uint8_t > m_roi
Definition TrigMonTE.h:95

◆ addState()

void TrigMonTE::addState ( State state)

Definition at line 58 of file TrigMonTE.cxx.

59{
60 //
61 // Set state bits directly
62 //
63 m_encoded |= state;
64}

◆ addVar()

void TrigMonTE::addVar ( const TrigMonVar & var)

Definition at line 37 of file TrigMonTE.cxx.

38{
39 //
40 // Store variable as int and float, reserve 0-9 keys
41 //
42 if(var.getKey() > 9) {
43 m_var_key.push_back(var.getKey());
44 m_var_val.push_back(var.getData());
45 }
46}
std::vector< float > m_var_val
Definition TrigMonTE.h:99
std::vector< uint16_t > m_var_key
Definition TrigMonTE.h:98

◆ clearClids()

void TrigMonTE::clearClids ( )
inline

Definition at line 62 of file TrigMonTE.h.

62{ m_clid.clear(); }

◆ clearIndexes()

void TrigMonTE::clearIndexes ( )
inline

Definition at line 61 of file TrigMonTE.h.

61{ m_child.clear(); m_parent.clear(); }

◆ getActiveState()

bool TrigMonTE::getActiveState ( ) const
inline

Definition at line 68 of file TrigMonTE.h.

68{ return m_encoded & activeState; }

◆ getChildIndex()

const std::vector< uint16_t > & TrigMonTE::getChildIndex ( ) const
inline

Definition at line 75 of file TrigMonTE.h.

75{ return m_child; }

◆ getClid()

const std::vector< uint32_t > & TrigMonTE::getClid ( ) const
inline

Definition at line 79 of file TrigMonTE.h.

79{ return m_clid; }

◆ getErrorState()

bool TrigMonTE::getErrorState ( ) const
inline

Definition at line 69 of file TrigMonTE.h.

69{ return m_encoded & errorState; }

◆ getId()

uint32_t TrigMonTE::getId ( ) const
inline

Definition at line 64 of file TrigMonTE.h.

64{ return m_id; }

◆ getIndex()

uint16_t TrigMonTE::getIndex ( ) const

Definition at line 87 of file TrigMonTE.cxx.

88{
89 //
90 // Return index - mask low 16 bits
91 //
93}
const uint32_t maskLow16

◆ getParentIndex()

const std::vector< uint16_t > & TrigMonTE::getParentIndex ( ) const
inline

Definition at line 76 of file TrigMonTE.h.

76{ return m_parent; }

◆ getRoiId()

const std::vector< uint8_t > & TrigMonTE::getRoiId ( ) const
inline

Definition at line 78 of file TrigMonTE.h.

78{ return m_roi; }

◆ getType()

TrigMonTE::Type TrigMonTE::getType ( ) const

Definition at line 67 of file TrigMonTE.cxx.

68{
69 //
70 // Return trigger element type
71 //
72 const unsigned int val = (m_encoded & SeqBits::maskType) >> SeqBits::shiftType;
73
74 switch (val) {
75 case 0: return kELEM;
76 case 1: return kINIT;
77 case 2: return kROI;
78 case 3: return kL1TH;
79 default: break;
80 }
81 REPORT_MESSAGE_WITH_CONTEXT(MSG::ERROR, "TrigMonTE")
82 << "getType error! Bad value";
83 return kELEM;
84}
#define REPORT_MESSAGE_WITH_CONTEXT(LVL, CONTEXT_NAME)
Report a message, with an explicitly specified context name.
const uint32_t maskType
Definition TrigMonTE.cxx:17
const uint32_t shiftType
Definition TrigMonTE.cxx:19

◆ getVar()

const std::vector< TrigMonVar > TrigMonTE::getVar ( ) const

Definition at line 96 of file TrigMonTE.cxx.

97{
98 //
99 // Build variables on a fly and return vector by value
100 //
101 std::vector<TrigMonVar> var;
102
103 if(m_var_key.size() == m_var_val.size()) {
104 //
105 // Iterate over keys abd values
106 //
107 var.reserve(m_var_key.size());
108
109 for(unsigned int i = 0; i < m_var_key.size(); ++i) {
110 var.push_back(TrigMonVar(m_var_key[i], m_var_val[i]));
111 }
112 }
113
114 return var;
115}

◆ getVarKey()

const std::vector< uint16_t > & TrigMonTE::getVarKey ( ) const
inline

Definition at line 82 of file TrigMonTE.h.

82{ return m_var_key; }

◆ getVarVal()

const std::vector< float > & TrigMonTE::getVarVal ( ) const
inline

Definition at line 83 of file TrigMonTE.h.

83{ return m_var_val; }

◆ isOutputEFNode()

bool TrigMonTE::isOutputEFNode ( ) const
inline

Definition at line 72 of file TrigMonTE.h.

72{ return m_encoded & outputEFNode; }

◆ isOutputL2Node()

bool TrigMonTE::isOutputL2Node ( ) const
inline

Definition at line 71 of file TrigMonTE.h.

71{ return m_encoded & outputL2Node; }

◆ isTerminalNode()

bool TrigMonTE::isTerminalNode ( ) const
inline

Definition at line 70 of file TrigMonTE.h.

70{ return m_encoded & terminalNode; }

◆ isTopologicalTE()

bool TrigMonTE::isTopologicalTE ( ) const
inline

Definition at line 73 of file TrigMonTE.h.

73{ return m_encoded & topologicalTE; }

◆ print()

void TrigMonTE::print ( std::ostream & os = std::cout)

Definition at line 118 of file TrigMonTE.cxx.

◆ setType()

void TrigMonTE::setType ( Type type)

Definition at line 49 of file TrigMonTE.cxx.

50{
51 //
52 // Set trigger element type: use 2 bits
53 //
55}

◆ TrigMonTECnv_p1

friend class TrigMonTECnv_p1
friend

Definition at line 88 of file TrigMonTE.h.

Member Data Documentation

◆ m_child

std::vector<uint16_t> TrigMonTE::m_child
private

Definition at line 93 of file TrigMonTE.h.

◆ m_clid

std::vector<uint32_t> TrigMonTE::m_clid
private

Definition at line 96 of file TrigMonTE.h.

◆ m_encoded

uint32_t TrigMonTE::m_encoded
private

Definition at line 91 of file TrigMonTE.h.

◆ m_id

uint32_t TrigMonTE::m_id
private

Definition at line 90 of file TrigMonTE.h.

◆ m_parent

std::vector<uint16_t> TrigMonTE::m_parent
private

Definition at line 94 of file TrigMonTE.h.

◆ m_roi

std::vector<uint8_t> TrigMonTE::m_roi
private

Definition at line 95 of file TrigMonTE.h.

◆ m_var_key

std::vector<uint16_t> TrigMonTE::m_var_key
private

Definition at line 98 of file TrigMonTE.h.

◆ m_var_val

std::vector<float> TrigMonTE::m_var_val
private

Definition at line 99 of file TrigMonTE.h.


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