ATLAS Offline Software
Public Types | Public Member Functions | Private Attributes | List of all members
TrigMonL1Item Class Reference

Encoded L1 decision for one item. More...

#include <TrigMonL1Item.h>

Collaboration diagram for TrigMonL1Item:

Public Types

enum  Decision {
  kReset = 0x0, kPassed = 0x6000, kPrescaled = 0x5000, kL1AfterVeto = 0x4000,
  kL1BeforePrescale = 0x2000, kL1AfterPrescale = 0x1000
}
 

Public Member Functions

 TrigMonL1Item ()
 
 TrigMonL1Item (uint16_t encoded)
 
 ~TrigMonL1Item ()=default
 
void setCtpId (unsigned int ctpid)
 
void addDecision (Decision value)
 
uint16_t getCtpId () const
 
uint16_t getEncoded () const
 
uint16_t getCounter () const
 
uint16_t getEncodedId () const
 
bool isPassed (Decision value) const
 
bool isPassedBeforePrescale () const
 
bool isPassedAfterPrescale () const
 
bool isPassedAfterVeto () const
 
bool isPassed () const
 
bool isPrescaled () const
 
bool isVeto () const
 
void print (std::ostream &os=std::cout) const
 

Private Attributes

uint16_t m_encoded
 

Detailed Description

Encoded L1 decision for one item.

Author
Rustem Ospanov
Date
July 2009

Definition at line 24 of file TrigMonL1Item.h.

Member Enumeration Documentation

◆ Decision

Enumerator
kReset 
kPassed 
kPrescaled 
kL1AfterVeto 
kL1BeforePrescale 
kL1AfterPrescale 

Definition at line 28 of file TrigMonL1Item.h.

28  {
29  kReset = 0x0,
30  kPassed = 0x6000, // not stored
31  kPrescaled = 0x5000, // not stored
32  kL1AfterVeto = 0x4000,
33  kL1BeforePrescale = 0x2000,
34  kL1AfterPrescale = 0x1000
35  };

Constructor & Destructor Documentation

◆ TrigMonL1Item() [1/2]

TrigMonL1Item::TrigMonL1Item ( )

Definition at line 18 of file TrigMonL1Item.cxx.

19  :m_encoded(0x0)
20 {
21 }

◆ TrigMonL1Item() [2/2]

TrigMonL1Item::TrigMonL1Item ( uint16_t  encoded)
explicit

Definition at line 24 of file TrigMonL1Item.cxx.

25  :m_encoded(encoded)
26 {
27 }

◆ ~TrigMonL1Item()

TrigMonL1Item::~TrigMonL1Item ( )
default

Member Function Documentation

◆ addDecision()

void TrigMonL1Item::addDecision ( Decision  value)

Definition at line 46 of file TrigMonL1Item.cxx.

47 {
48  //
49  // Set trigger decision bits
50  //
51  if (value == kReset) { m_encoded = getCtpId(); }
52  else if(value == kL1AfterVeto) { m_encoded |= value; }
53  else if(value == kL1BeforePrescale) { m_encoded |= value; }
54  else if(value == kL1AfterPrescale) { m_encoded |= value; }
55 }

◆ getCounter()

uint16_t TrigMonL1Item::getCounter ( ) const
inline

Definition at line 46 of file TrigMonL1Item.h.

46 { return getCtpId(); }

◆ getCtpId()

uint16_t TrigMonL1Item::getCtpId ( ) const

Definition at line 58 of file TrigMonL1Item.cxx.

59 {
60  //
61  // Mask decision bits and return ctp id
62  //
64 }

◆ getEncoded()

uint16_t TrigMonL1Item::getEncoded ( ) const
inline

Definition at line 45 of file TrigMonL1Item.h.

45 { return m_encoded; }

◆ getEncodedId()

uint16_t TrigMonL1Item::getEncodedId ( ) const
inline

Definition at line 80 of file TrigMonL1Item.h.

81 {
82  return Trig::getEncodedId(1, getCounter());
83 }

◆ isPassed() [1/2]

bool TrigMonL1Item::isPassed ( ) const
inline

Definition at line 54 of file TrigMonL1Item.h.

54 { return isPassedAfterVeto(); }

◆ isPassed() [2/2]

bool TrigMonL1Item::isPassed ( Decision  value) const

Definition at line 67 of file TrigMonL1Item.cxx.

68 {
69  //
70  // Check trigger decision value
71  //
72  if (value == kPassed) return isPassed();
73  else if(value == kPrescaled) return isPrescaled();
74 
75  return m_encoded & value;
76 }

◆ isPassedAfterPrescale()

bool TrigMonL1Item::isPassedAfterPrescale ( ) const
inline

Definition at line 52 of file TrigMonL1Item.h.

52 { return isPassed(kL1AfterPrescale); }

◆ isPassedAfterVeto()

bool TrigMonL1Item::isPassedAfterVeto ( ) const
inline

Definition at line 53 of file TrigMonL1Item.h.

53 { return isPassed(kL1AfterVeto); }

◆ isPassedBeforePrescale()

bool TrigMonL1Item::isPassedBeforePrescale ( ) const
inline

Definition at line 51 of file TrigMonL1Item.h.

51 { return isPassed(kL1BeforePrescale); }

◆ isPrescaled()

bool TrigMonL1Item::isPrescaled ( ) const
inline

Definition at line 55 of file TrigMonL1Item.h.

◆ isVeto()

bool TrigMonL1Item::isVeto ( ) const
inline

Definition at line 56 of file TrigMonL1Item.h.

56 { return isPassedAfterPrescale() && !isPassedAfterVeto(); }

◆ print()

void TrigMonL1Item::print ( std::ostream &  os = std::cout) const

Definition at line 79 of file TrigMonL1Item.cxx.

80 {
81  os << str(*this) << std::endl;
82 }

◆ setCtpId()

void TrigMonL1Item::setCtpId ( unsigned int  ctpid)

Definition at line 30 of file TrigMonL1Item.cxx.

31 {
32  //
33  // Set ctp id
34  //
35  if(ctpid < 4096) {
37  m_encoded |= ctpid;
38  }
39  else {
40  REPORT_MESSAGE_WITH_CONTEXT(MSG::ERROR, "TrigMonL1Item")
41  << "setCtpId error! Bad ctp id";
42  }
43 }

Member Data Documentation

◆ m_encoded

uint16_t TrigMonL1Item::m_encoded
private

Definition at line 62 of file TrigMonL1Item.h.


The documentation for this class was generated from the following files:
str
std::string str(const TrigMonL1Item &o)
Definition: TrigMonL1Item.cxx:85
TrigMonL1Item::isPassedBeforePrescale
bool isPassedBeforePrescale() const
Definition: TrigMonL1Item.h:51
TrigMonL1Item::isPrescaled
bool isPrescaled() const
Definition: TrigMonL1Item.h:55
TrigMonL1Item::getCounter
uint16_t getCounter() const
Definition: TrigMonL1Item.h:46
TrigMonL1Item::kL1BeforePrescale
@ kL1BeforePrescale
Definition: TrigMonL1Item.h:33
TrigMonL1Item::kReset
@ kReset
Definition: TrigMonL1Item.h:29
athena.value
value
Definition: athena.py:122
TrigMonL1Item::kL1AfterVeto
@ kL1AfterVeto
Definition: TrigMonL1Item.h:32
TrigMonL1Item::kL1AfterPrescale
@ kL1AfterPrescale
Definition: TrigMonL1Item.h:34
TrigMonL1Item::kPrescaled
@ kPrescaled
Definition: TrigMonL1Item.h:31
TrigMonL1Item::isPassedAfterVeto
bool isPassedAfterVeto() const
Definition: TrigMonL1Item.h:53
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
TrigMonL1Item::getCtpId
uint16_t getCtpId() const
Definition: TrigMonL1Item.cxx:58
TrigMonL1Item::kPassed
@ kPassed
Definition: TrigMonL1Item.h:30
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
L1Bits::maskCtpId
const uint32_t maskCtpId
Definition: TrigMonL1Item.cxx:13
TrigMonL1Item::m_encoded
uint16_t m_encoded
Definition: TrigMonL1Item.h:62
TrigMonL1Item::isPassed
bool isPassed() const
Definition: TrigMonL1Item.h:54
TrigMonL1Item::isPassedAfterPrescale
bool isPassedAfterPrescale() const
Definition: TrigMonL1Item.h:52
Trig::getEncodedId
uint16_t getEncodedId(int level, int counter)
Definition: TrigConfChain.cxx:15
L1Bits
Definition: TrigMonL1Item.cxx:12