ATLAS Offline Software
Public Types | Public Member Functions | Private Attributes | Friends | List of all members
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  };

◆ 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 }

◆ TrigMonTE() [2/2]

TrigMonTE::TrigMonTE ( uint32_t  id,
uint16_t  index 
)

Definition at line 30 of file TrigMonTE.cxx.

31  :m_id(id),
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); }

◆ addClid()

void TrigMonTE::addClid ( uint32_t  clid)
inline

Definition at line 54 of file TrigMonTE.h.

54 { m_clid.push_back(clid); }

◆ addParentIndex()

void TrigMonTE::addParentIndex ( uint16_t  index)
inline

Definition at line 51 of file TrigMonTE.h.

51 { m_parent.push_back(index); }

◆ addRoiId()

void TrigMonTE::addRoiId ( uint8_t  roiid)
inline

Definition at line 53 of file TrigMonTE.h.

53 { m_roi.push_back(roiid); }

◆ 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 }

◆ 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  //
92  return (m_encoded & SeqBits::maskLow16);
93 }

◆ 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 }

◆ 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.

119 {
120  os << str(*this) << std::endl;
121 }

◆ 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 }

Friends And Related Function Documentation

◆ 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:
beamspotnt.var
var
Definition: bin/beamspotnt.py:1394
index
Definition: index.py:1
TrigMonTE::kINIT
@ kINIT
Definition: TrigMonTE.h:33
TrigMonTE::m_id
uint32_t m_id
Definition: TrigMonTE.h:90
TrigMonTE::m_clid
std::vector< uint32_t > m_clid
Definition: TrigMonTE.h:96
TrigMonTE::outputEFNode
@ outputEFNode
Definition: TrigMonTE.h:42
SeqBits::maskType
const uint32_t maskType
Definition: TrigMonTE.cxx:17
str
std::string str(const TrigMonTE &o)
Definition: TrigMonTE.cxx:124
SeqBits::shiftType
const uint32_t shiftType
Definition: TrigMonTE.cxx:19
lumiFormat.i
int i
Definition: lumiFormat.py:85
TrigMonTE::activeState
@ activeState
Definition: TrigMonTE.h:38
TrigMonTE::kELEM
@ kELEM
Definition: TrigMonTE.h:32
TrigMonVar
Definition: TrigMonVar.h:59
TrigMonTE::m_encoded
uint32_t m_encoded
Definition: TrigMonTE.h:91
TrigMonTE::kROI
@ kROI
Definition: TrigMonTE.h:34
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
TrigMonTE::errorState
@ errorState
Definition: TrigMonTE.h:39
TrigMonTE::m_var_key
std::vector< uint16_t > m_var_key
Definition: TrigMonTE.h:98
REPORT_MESSAGE_WITH_CONTEXT
#define REPORT_MESSAGE_WITH_CONTEXT(LVL, CONTEXT_NAME)
Report a message, with an explicitly specified context name.
Definition: Control/AthenaKernel/AthenaKernel/errorcheck.h:345
TrigMonTE::kL1TH
@ kL1TH
Definition: TrigMonTE.h:35
TrigMonTE::topologicalTE
@ topologicalTE
Definition: TrigMonTE.h:43
SeqBits::maskLow16
const uint32_t maskLow16
Definition: TrigMonSeq.cxx:15
TrigMonTE::m_child
std::vector< uint16_t > m_child
Definition: TrigMonTE.h:93
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TrigMonTE::outputL2Node
@ outputL2Node
Definition: TrigMonTE.h:41
TrigMonTE::m_var_val
std::vector< float > m_var_val
Definition: TrigMonTE.h:99
TrigMonTE::terminalNode
@ terminalNode
Definition: TrigMonTE.h:40
TrigMonTE::m_roi
std::vector< uint8_t > m_roi
Definition: TrigMonTE.h:95
TrigMonTE::m_parent
std::vector< uint16_t > m_parent
Definition: TrigMonTE.h:94