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

#include <TrigDiTauHypoTool.h>

Inheritance diagram for TrigDiTauHypoTool:
Collaboration diagram for TrigDiTauHypoTool:

Public Member Functions

 TrigDiTauHypoTool (const std::string &type, const std::string &name, const IInterface *parent)
 
virtual ~TrigDiTauHypoTool ()
 
virtual StatusCode initialize () override
 
virtual StatusCode decide (std::vector< ITrigDiTauHypoTool::ToolInfo > &input) const override
 
virtual bool decide (const ITrigDiTauHypoTool::ToolInfo &i) const override
 

Public Attributes

 log
 

Private Attributes

HLT::Identifier m_decisionId
 
Gaudi::Property< float > m_ditau_pt_threshold {this, "ditau_pt_threshold", 200, "ditau pT threshold [GeV]" }
 
Gaudi::Property< float > m_ditau_omni_score {this, "ditau_id_score", 0.0, "ditau omni id score" }
 
Gaudi::Property< int > m_ditau_lead_max_trk {this, "ditau_lead_max_trk", 3, "ditau lead track multiplicity" }
 
Gaudi::Property< int > m_ditau_subl_max_trk {this, "ditau_subl_max_trk", 3, "ditau sublead track multiplicity" }
 

Detailed Description

Definition at line 15 of file TrigDiTauHypoTool.h.

Constructor & Destructor Documentation

◆ TrigDiTauHypoTool()

TrigDiTauHypoTool::TrigDiTauHypoTool ( const std::string &  type,
const std::string &  name,
const IInterface *  parent 
)

Definition at line 15 of file TrigDiTauHypoTool.cxx.

16  : base_class(type, name, parent),
18 {}

◆ ~TrigDiTauHypoTool()

TrigDiTauHypoTool::~TrigDiTauHypoTool ( )
virtual

Definition at line 21 of file TrigDiTauHypoTool.cxx.

22 {}

Member Function Documentation

◆ decide() [1/2]

bool TrigDiTauHypoTool::decide ( const ITrigDiTauHypoTool::ToolInfo i) const
overridevirtual

Definition at line 38 of file TrigDiTauHypoTool.cxx.

39 {
40  static const SG::ConstAccessor< int > n_tracks_leadAcc("n_tracks_lead");
41  static const SG::ConstAccessor< int > n_tracks_sublAcc("n_tracks_subl");
42  static const SG::ConstAccessor< float > ditau_ptAcc ("ditau_pt");
43  static const SG::ConstAccessor< float > omni_scoreAcc ("omni_score");
44  ATH_MSG_DEBUG(name() << ": in execute()");
45  // Tau pass flag
46  bool pass = false;
47  for(const xAOD::DiTauJet* diTau : *(input.diTauContainer)) {
48  if(ditau_ptAcc(*diTau) < m_ditau_pt_threshold.value()) continue;
49  if(omni_scoreAcc(*diTau) < m_ditau_omni_score.value()) continue;
50  if(n_tracks_leadAcc(*diTau) > m_ditau_lead_max_trk.value() || n_tracks_leadAcc(*diTau) < 0) continue;
51  if(n_tracks_sublAcc(*diTau) > m_ditau_subl_max_trk.value() || n_tracks_sublAcc(*diTau) < 0) continue;
52  pass = true;
53  }
54  ATH_MSG_DEBUG(" Pass hypo tool: " << pass);
55  return pass;
56 }

◆ decide() [2/2]

StatusCode TrigDiTauHypoTool::decide ( std::vector< ITrigDiTauHypoTool::ToolInfo > &  input) const
overridevirtual

Definition at line 59 of file TrigDiTauHypoTool.cxx.

59  {
60  for(auto& i : input) {
61  if(passed(m_decisionId.numeric(), i.previousDecisionIDs)) {
62  if(decide(i)) {
63  addDecisionID(m_decisionId, i.decision);
64  }
65  }
66  }
67 
68  return StatusCode::SUCCESS;
69 }

◆ initialize()

StatusCode TrigDiTauHypoTool::initialize ( )
overridevirtual

Definition at line 25 of file TrigDiTauHypoTool.cxx.

26 {
27  ATH_MSG_DEBUG(name() << ": in initialize()");
28 
29  ATH_MSG_DEBUG("TrigDiTauHypoTool will cut on:");
30  ATH_MSG_DEBUG(" - PtMin : " << m_ditau_pt_threshold.value());
31  ATH_MSG_DEBUG(" - ID Score : " << m_ditau_omni_score.value());
32  ATH_MSG_DEBUG(" - Max Lead Trk: " << m_ditau_lead_max_trk.value());
33  ATH_MSG_DEBUG(" - Max Subl Trk: " << m_ditau_subl_max_trk.value());
34  return StatusCode::SUCCESS;
35 }

Member Data Documentation

◆ log

TrigDiTauHypoTool.log

Definition at line 6 of file TrigDiTauHypoTool.py.

◆ m_decisionId

HLT::Identifier TrigDiTauHypoTool::m_decisionId
private

Definition at line 23 of file TrigDiTauHypoTool.h.

◆ m_ditau_lead_max_trk

Gaudi::Property<int> TrigDiTauHypoTool::m_ditau_lead_max_trk {this, "ditau_lead_max_trk", 3, "ditau lead track multiplicity" }
private

Definition at line 26 of file TrigDiTauHypoTool.h.

◆ m_ditau_omni_score

Gaudi::Property<float> TrigDiTauHypoTool::m_ditau_omni_score {this, "ditau_id_score", 0.0, "ditau omni id score" }
private

Definition at line 25 of file TrigDiTauHypoTool.h.

◆ m_ditau_pt_threshold

Gaudi::Property<float> TrigDiTauHypoTool::m_ditau_pt_threshold {this, "ditau_pt_threshold", 200, "ditau pT threshold [GeV]" }
private

Definition at line 24 of file TrigDiTauHypoTool.h.

◆ m_ditau_subl_max_trk

Gaudi::Property<int> TrigDiTauHypoTool::m_ditau_subl_max_trk {this, "ditau_subl_max_trk", 3, "ditau sublead track multiplicity" }
private

Definition at line 27 of file TrigDiTauHypoTool.h.


The documentation for this class was generated from the following files:
TrigCompositeUtils::passed
bool passed(DecisionID id, const DecisionIDContainer &idSet)
checks if required decision ID is in the set of IDs in the container
Definition: TrigCompositeUtilsRoot.cxx:117
HLT::Identifier::numeric
TrigCompositeUtils::DecisionID numeric() const
numeric ID
Definition: TrigCompositeUtils/TrigCompositeUtils/HLTIdentifier.h:41
TrigCompositeUtils::addDecisionID
void addDecisionID(DecisionID id, Decision *d)
Appends the decision (given as ID) to the decision object.
Definition: TrigCompositeUtilsRoot.cxx:58
SG::ConstAccessor< int >
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
python.BuildSignatureFlags.diTau
AthConfigFlags diTau(AthConfigFlags flags, str instanceName, str recoMode)
Definition: BuildSignatureFlags.py:341
TrigDiTauHypoTool::m_decisionId
HLT::Identifier m_decisionId
Definition: TrigDiTauHypoTool.h:23
lumiFormat.i
int i
Definition: lumiFormat.py:85
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TrigDiTauHypoTool::m_ditau_omni_score
Gaudi::Property< float > m_ditau_omni_score
Definition: TrigDiTauHypoTool.h:25
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
TrigDiTauHypoTool::m_ditau_pt_threshold
Gaudi::Property< float > m_ditau_pt_threshold
Definition: TrigDiTauHypoTool.h:24
HLT::Identifier::fromToolName
static HLT::Identifier fromToolName(const std::string &tname)
Definition: HLTIdentifier.cxx:21
TrigDiTauHypoTool::m_ditau_lead_max_trk
Gaudi::Property< int > m_ditau_lead_max_trk
Definition: TrigDiTauHypoTool.h:26
xAOD::DiTauJet_v1
Definition: DiTauJet_v1.h:31
TrigDiTauHypoTool::decide
virtual StatusCode decide(std::vector< ITrigDiTauHypoTool::ToolInfo > &input) const override
Definition: TrigDiTauHypoTool.cxx:59
TrigDiTauHypoTool::m_ditau_subl_max_trk
Gaudi::Property< int > m_ditau_subl_max_trk
Definition: TrigDiTauHypoTool.h:27