Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Public Member Functions | Private Attributes | List of all members
DerivationFramework::DESDM_EXOTHIP_SkimmingTool Class Reference

#include <DESDM_EXOTHIP_SkimmingTool.h>

Inheritance diagram for DerivationFramework::DESDM_EXOTHIP_SkimmingTool:
Collaboration diagram for DerivationFramework::DESDM_EXOTHIP_SkimmingTool:

Public Member Functions

 DESDM_EXOTHIP_SkimmingTool (const std::string &CPP_exothip, const std::string &skimtool, const IInterface *interface)
 
virtual ~DESDM_EXOTHIP_SkimmingTool ()=default
 
virtual StatusCode initialize () override
 
virtual StatusCode finalize () override
 
virtual bool eventPassesFilter () const override
 

Private Attributes

std::string m_trnnoutContName
 
ToolHandle< Trig::TrigDecisionToolm_trigDec
 
std::atomic< unsigned int > m_ntot = 0
 
std::atomic< unsigned int > m_npass = 0
 
double m_minHTratioWedge
 

Detailed Description

Definition at line 31 of file DESDM_EXOTHIP_SkimmingTool.h.

Constructor & Destructor Documentation

◆ DESDM_EXOTHIP_SkimmingTool()

DerivationFramework::DESDM_EXOTHIP_SkimmingTool::DESDM_EXOTHIP_SkimmingTool ( const std::string &  CPP_exothip,
const std::string &  skimtool,
const IInterface *  interface 
)

Definition at line 21 of file DESDM_EXOTHIP_SkimmingTool.cxx.

23  :
24 
25  base_class(CPP_exothip, skimtool, interface),
26  m_trigDec("Trig::TrigDecisionTool/TrigDecisionTool")
27 
28 {
29  declareProperty("HTTRTHitsCounter", m_trnnoutContName);
30  declareProperty("MinHTRatioWedge", m_minHTratioWedge);
31 }

◆ ~DESDM_EXOTHIP_SkimmingTool()

virtual DerivationFramework::DESDM_EXOTHIP_SkimmingTool::~DESDM_EXOTHIP_SkimmingTool ( )
virtualdefault

Member Function Documentation

◆ eventPassesFilter()

bool DerivationFramework::DESDM_EXOTHIP_SkimmingTool::eventPassesFilter ( ) const
overridevirtual

Definition at line 50 of file DESDM_EXOTHIP_SkimmingTool.cxx.

50  {
51 
52  m_ntot++;
53 
54  auto trig_fht_wedge = std::make_unique<std::vector<float>>();
55 
56  const xAOD::TrigRNNOutputContainer* trnnoutCont = 0;
57  StatusCode sc = evtStore()->retrieve( trnnoutCont, m_trnnoutContName);
58  if (sc.isFailure()){
59  ATH_MSG_FATAL("No HTTRT collection with name " << m_trnnoutContName << " found in StoreGate!");
60  return false;
61  }
62 
63  for (const xAOD::TrigRNNOutput* trnnout : *trnnoutCont){
64  trig_fht_wedge->push_back(trnnout->rnnDecision().at(3));
65  }
66 
67  for (float value : *trig_fht_wedge) {
68  if (static_cast<double>(value) > m_minHTratioWedge) {
69  m_npass++;
70  return true;
71  }
72  }
73 
74  return false;
75 }

◆ finalize()

StatusCode DerivationFramework::DESDM_EXOTHIP_SkimmingTool::finalize ( )
overridevirtual

Definition at line 42 of file DESDM_EXOTHIP_SkimmingTool.cxx.

42  {
43 
44  ATH_MSG_VERBOSE("finalize() ...");
45  ATH_MSG_INFO("Processed " << m_ntot << " events, " << m_npass << " events passed filter ");
46 
47  return StatusCode::SUCCESS;
48 }

◆ initialize()

StatusCode DerivationFramework::DESDM_EXOTHIP_SkimmingTool::initialize ( )
overridevirtual

Definition at line 33 of file DESDM_EXOTHIP_SkimmingTool.cxx.

34 {
35  ATH_MSG_VERBOSE("initialize() ...");
36  ATH_CHECK(m_trigDec.retrieve());
37 
38  ATH_MSG_INFO("Retrieved tool: " << m_trigDec);
39  return StatusCode::SUCCESS;
40 }

Member Data Documentation

◆ m_minHTratioWedge

double DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_minHTratioWedge
private

Definition at line 52 of file DESDM_EXOTHIP_SkimmingTool.h.

◆ m_npass

std::atomic<unsigned int> DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_npass = 0
mutableprivate

Definition at line 50 of file DESDM_EXOTHIP_SkimmingTool.h.

◆ m_ntot

std::atomic<unsigned int> DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_ntot = 0
mutableprivate

Definition at line 49 of file DESDM_EXOTHIP_SkimmingTool.h.

◆ m_trigDec

ToolHandle<Trig::TrigDecisionTool> DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_trigDec
private

Definition at line 48 of file DESDM_EXOTHIP_SkimmingTool.h.

◆ m_trnnoutContName

std::string DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_trnnoutContName
private

Definition at line 46 of file DESDM_EXOTHIP_SkimmingTool.h.


The documentation for this class was generated from the following files:
xAOD::TrigRNNOutput_v2
Definition: TrigRNNOutput_v2.h:24
ATH_MSG_FATAL
#define ATH_MSG_FATAL(x)
Definition: AthMsgStreamMacros.h:34
DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_minHTratioWedge
double m_minHTratioWedge
Definition: DESDM_EXOTHIP_SkimmingTool.h:52
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_trnnoutContName
std::string m_trnnoutContName
Definition: DESDM_EXOTHIP_SkimmingTool.h:46
DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_trigDec
ToolHandle< Trig::TrigDecisionTool > m_trigDec
Definition: DESDM_EXOTHIP_SkimmingTool.h:48
athena.value
value
Definition: athena.py:124
ATH_MSG_VERBOSE
#define ATH_MSG_VERBOSE(x)
Definition: AthMsgStreamMacros.h:28
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_ntot
std::atomic< unsigned int > m_ntot
Definition: DESDM_EXOTHIP_SkimmingTool.h:49
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
DerivationFramework::DESDM_EXOTHIP_SkimmingTool::m_npass
std::atomic< unsigned int > m_npass
Definition: DESDM_EXOTHIP_SkimmingTool.h:50