ATLAS Offline Software
Public Member Functions | Private Attributes | Friends | List of all members
TrigDec::TrigDecision Class Reference

The TrigDecision is an object which merges trigger informations from various levels. More...

#include <TrigDecision.h>

Collaboration diagram for TrigDec::TrigDecision:

Public Member Functions

 TrigDecision ()
 
 TrigDecision (const LVL1CTP::Lvl1Result &l1Result, const HLT::HLTResult &l2Result, const HLT::HLTResult &efResult, uint32_t masterKey=0)
 
 TrigDecision (const LVL1CTP::Lvl1Result &l1Result, const HLT::HLTResult &HltResult, uint32_t masterKey=0)
 
 TrigDecision (const LVL1CTP::Lvl1Result &l1Result, const DataLink< HLT::HLTResult > &l2Result, const DataLink< HLT::HLTResult > &efResult, uint32_t masterKey=0, char bgCode=0)
 
virtual ~TrigDecision ()
 
uint32_t masterKey () const
 
char BGCode () const
 
const LVL1CTP::Lvl1ResultgetL1Result () const
 
const HLT::HLTResultgetL2Result () const
 
const DataLink< HLT::HLTResult > & getL2ResultLink () const
 
const HLT::HLTResultgetEFResult () const
 
const DataLink< HLT::HLTResult > & getEFResultLink () const
 
const HLT::HLTResultgetHLTResult () const
 
const DataLink< HLT::HLTResult > & getHLTResultLink () const
 

Private Attributes

uint32_t m_configMasterKey
 
char m_bgCode
 
LVL1CTP::Lvl1Result m_l1_result
 Lvl1Result. More...
 
DataLink< HLT::HLTResultm_l2_result
 HLTResult of trigger level 2. More...
 
DataLink< HLT::HLTResultm_ef_result
 HLTResult of trigger level EF. More...
 
DataLink< HLT::HLTResultm_hlt_result
 HLTResult of merged L2EF. More...
 
HLT::HLTResultm_l2_result_ptr
 
HLT::HLTResultm_ef_result_ptr
 
HLT::HLTResultm_hlt_result_ptr
 

Friends

class TrigDecisionTool
 
class TrigDecisionMaker
 
class TrigDecisionCnv_p1
 

Detailed Description

The TrigDecision is an object which merges trigger informations from various levels.

Definition at line 60 of file Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h.

Constructor & Destructor Documentation

◆ TrigDecision() [1/4]

TrigDecision::TrigDecision ( )

Definition at line 30 of file TrigDecision.cxx.

31  : m_configMasterKey(0),
32  m_bgCode(0),
33  m_l2_result_ptr(0),
34  m_ef_result_ptr(0),
36 {
37  // m_detailLevel = NONE;
38  // m_status = true;
39 }

◆ TrigDecision() [2/4]

TrigDecision::TrigDecision ( const LVL1CTP::Lvl1Result l1Result,
const HLT::HLTResult l2Result,
const HLT::HLTResult efResult,
uint32_t  masterKey = 0 
)

Definition at line 41 of file TrigDecision.cxx.

44  :
46  m_bgCode(0),
47  m_l1_result(l1Result),
48  m_l2_result(l2Result),
49  m_ef_result(efResult),
50  m_l2_result_ptr(0),
51  m_ef_result_ptr(0),
53 { }

◆ TrigDecision() [3/4]

TrigDecision::TrigDecision ( const LVL1CTP::Lvl1Result l1Result,
const HLT::HLTResult HltResult,
uint32_t  masterKey = 0 
)

Definition at line 56 of file TrigDecision.cxx.

58  :
60  m_bgCode(0),
61  m_l1_result(l1Result),
62  // m_l2_result(0),
63  // m_ef_result(0),
64  m_hlt_result(hltResult),
65  m_l2_result_ptr(0),
66  m_ef_result_ptr(0),
67  m_hlt_result_ptr(0) { }

◆ TrigDecision() [4/4]

TrigDecision::TrigDecision ( const LVL1CTP::Lvl1Result l1Result,
const DataLink< HLT::HLTResult > &  l2Result,
const DataLink< HLT::HLTResult > &  efResult,
uint32_t  masterKey = 0,
char  bgCode = 0 
)

Definition at line 70 of file TrigDecision.cxx.

77  m_l1_result (l1Result),
78  m_l2_result (l2Result),
79  m_ef_result (efResult),
80  m_l2_result_ptr(nullptr),
81  m_ef_result_ptr(nullptr),
82  m_hlt_result_ptr(nullptr)
83 {
84 }

◆ ~TrigDecision()

TrigDecision::~TrigDecision ( )
virtual

Definition at line 87 of file TrigDecision.cxx.

88 {
89  // resetCache();
90  // if pointers to HLT results pointers are set we own them (we need to handle od version)
91  if (m_l2_result_ptr)
92  delete m_l2_result_ptr;
93 
94  if (m_ef_result_ptr)
95  delete m_ef_result_ptr;
96 
97 
98  if (m_hlt_result_ptr)
99  delete m_hlt_result_ptr;
100 
101 }

Member Function Documentation

◆ BGCode()

char TrigDec::TrigDecision::BGCode ( ) const
inline

◆ getEFResult()

const HLT::HLTResult & TrigDecision::getEFResult ( ) const

Definition at line 118 of file TrigDecision.cxx.

118  {
119  if (m_ef_result_ptr) // if we have ptr we should use it (old data 13.0.X and 14.0.0)
120  return *m_ef_result_ptr;
121  if (m_ef_result.isValid()) { // add protection against invalid DataLinks
122  return *m_ef_result; // this is data link, derefencing it means whole lot different thing
123  } else {
124  return invalid_result; // if DataLink invalid, return dummy HLTResult
125  }
126 }

◆ getEFResultLink()

const DataLink<HLT::HLTResult>& TrigDec::TrigDecision::getEFResultLink ( ) const
inline

◆ getHLTResult()

const HLT::HLTResult & TrigDecision::getHLTResult ( ) const

Definition at line 129 of file TrigDecision.cxx.

129  {
130  if (m_hlt_result_ptr) // if we have ptr we should use it (old data 13.0.X and 14.0.0)
131  return *m_hlt_result_ptr;
132  if (m_hlt_result.isValid()) { // add protection against invalid DataLinks
133  return *m_hlt_result; // this is data link, derefencing it means whole lot different thing
134  } else {
135  return invalid_result; // if DataLink invalid, return dummy HLTResult
136  }
137 }

◆ getHLTResultLink()

const DataLink<HLT::HLTResult>& TrigDec::TrigDecision::getHLTResultLink ( ) const
inline

◆ getL1Result()

const LVL1CTP::Lvl1Result& TrigDec::TrigDecision::getL1Result ( ) const
inline

◆ getL2Result()

const HLT::HLTResult & TrigDecision::getL2Result ( ) const

Definition at line 107 of file TrigDecision.cxx.

107  {
108  if (m_l2_result_ptr) // if we have ptr we should use it (old data 13.0.X and 14.0.0)
109  return *m_l2_result_ptr;
110  if (m_l2_result.isValid()) { // add protection against invalid DataLinks
111  return *m_l2_result; // this is data link, derefencing it means whole lot different thing
112  } else {
113  return invalid_result; // if DataLink invalid, return dummy HLTResult
114  }
115 }

◆ getL2ResultLink()

const DataLink<HLT::HLTResult>& TrigDec::TrigDecision::getL2ResultLink ( ) const
inline

◆ masterKey()

uint32_t TrigDec::TrigDecision::masterKey ( ) const
inline

Friends And Related Function Documentation

◆ TrigDecisionCnv_p1

friend class TrigDecisionCnv_p1
friend

◆ TrigDecisionMaker

friend class TrigDecisionMaker
friend

◆ TrigDecisionTool

friend class TrigDecisionTool
friend

Member Data Documentation

◆ m_bgCode

char TrigDec::TrigDecision::m_bgCode
private

◆ m_configMasterKey

uint32_t TrigDec::TrigDecision::m_configMasterKey
private

◆ m_ef_result

DataLink<HLT::HLTResult> TrigDec::TrigDecision::m_ef_result
private

HLTResult of trigger level EF.

Definition at line 110 of file Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h.

◆ m_ef_result_ptr

HLT::HLTResult* TrigDec::TrigDecision::m_ef_result_ptr
private

◆ m_hlt_result

DataLink<HLT::HLTResult> TrigDec::TrigDecision::m_hlt_result
private

HLTResult of merged L2EF.

Definition at line 111 of file Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h.

◆ m_hlt_result_ptr

HLT::HLTResult* TrigDec::TrigDecision::m_hlt_result_ptr
private

◆ m_l1_result

LVL1CTP::Lvl1Result TrigDec::TrigDecision::m_l1_result
private

◆ m_l2_result

DataLink<HLT::HLTResult> TrigDec::TrigDecision::m_l2_result
private

HLTResult of trigger level 2.

Definition at line 109 of file Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h.

◆ m_l2_result_ptr

HLT::HLTResult* TrigDec::TrigDecision::m_l2_result_ptr
private

The documentation for this class was generated from the following files:
xAOD::bgCode
bgCode
Definition: TrigDecision_v1.cxx:39
TrigDec::TrigDecision::masterKey
uint32_t masterKey() const
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:85
TrigDec::TrigDecision::m_hlt_result_ptr
HLT::HLTResult * m_hlt_result_ptr
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:115
TrigDec::TrigDecision::m_ef_result_ptr
HLT::HLTResult * m_ef_result_ptr
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:114
TrigDec::TrigDecision::m_l2_result_ptr
HLT::HLTResult * m_l2_result_ptr
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:113
TrigDec::TrigDecision::m_bgCode
char m_bgCode
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:103
TrigDec::TrigDecision::m_hlt_result
DataLink< HLT::HLTResult > m_hlt_result
HLTResult of merged L2EF.
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:111
TrigDec::TrigDecision::m_configMasterKey
uint32_t m_configMasterKey
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:102
TrigDec::TrigDecision::m_l1_result
LVL1CTP::Lvl1Result m_l1_result
Lvl1Result.
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:108
TrigDec::TrigDecision::m_ef_result
DataLink< HLT::HLTResult > m_ef_result
HLTResult of trigger level EF.
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:110
TrigDec::TrigDecision::m_l2_result
DataLink< HLT::HLTResult > m_l2_result
HLTResult of trigger level 2.
Definition: Trigger/TrigEvent/TrigDecisionEvent/TrigDecisionEvent/TrigDecision.h:109