ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetValidation
InDetTrackPerfMon
src
RoiSelectionTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef INDETTRACKPERFMON_ROISELECTIONTOOL_H
6
#define INDETTRACKPERFMON_ROISELECTIONTOOL_H
7
9
#include "
AsgTools/AsgTool.h
"
10
#include "
TrigDecisionTool/TrigDecisionTool.h
"
11
#include "
TrigSteeringEvent/TrigRoiDescriptor.h
"
12
14
//#include "TrackRoiSelectionTool.h" // TODO - to be included in later MRs
15
17
#include <string>
18
#include <vector>
19
26
27
28
namespace
IDTPM
{
29
30
typedef
TrigCompositeUtils::LinkInfo< TrigRoiDescriptorCollection >
roiCollection_t
;
31
32
class
RoiSelectionTool
:
33
public
virtual
asg::IAsgTool
,
34
public
asg::AsgTool
{
35
36
ASG_TOOL_CLASS
(
RoiSelectionTool
, IAsgTool );
37
38
public
:
39
41
RoiSelectionTool
(
const
std::string& name );
42
44
virtual
~RoiSelectionTool
() =
default
;
45
47
virtual
StatusCode
initialize
()
override
;
48
50
std::vector< roiCollection_t >
getRois
(
51
const
std::string& chainName )
const
;
52
53
private
:
54
56
std::vector< roiCollection_t >
retrieveRois
(
57
const
std::string& chainName,
58
const
std::string& roiKey,
59
const
int
& chainLeg=-1 )
const
;
60
62
std::vector< roiCollection_t >
getRoisStandard
(
63
const
std::string& chainName )
const
;
64
66
std::vector< roiCollection_t >
getRoisTnP
(
67
const
std::string& chainName )
const
;
68
70
StringProperty
m_roiKey
{
this
,
"RoiKey"
,
""
,
"RoI name to process"
};
71
72
IntegerProperty
m_chainLeg
{
73
this
,
"ChainLeg"
, -1,
"Restrict to a specific \"leg\" of a multi-object trigger chain (default = all)"
};
74
75
BooleanProperty
m_doTnP
{
this
,
"doTagNProbe"
,
false
,
"Do Tag&Probe RoI selection"
};
76
77
StringProperty
m_roiKeyTag
{
this
,
"RoiKeyTag"
,
""
,
"RoI name for the tag"
};
78
79
IntegerProperty
m_chainLegTag
{
80
this
,
"ChainLegTag"
, 0,
"Tag \"leg\" of a multi-object trigger chain (default = 0)"
};
81
82
StringProperty
m_roiKeyProbe
{
this
,
"RoiKeyProbe"
,
""
,
"RoI name for the probe"
};
83
84
IntegerProperty
m_chainLegProbe
{
85
this
,
"ChainLegProbe"
, 1,
"Probe \"leg\" of a multi-object trigger chain (default = 1)"
};
86
87
PublicToolHandle<Trig::TrigDecisionTool>
m_trigDecTool
{
88
this
,
"TrigDecisionTool"
,
"Trig::TrigDecisionTool/TrigDecisionTool"
,
""
};
89
90
};
// class RoiSelectionTool
91
92
}
// namespace IDTPM
93
94
95
#endif
// > !INDETTRACKPERFMON_ROISELECTIONTOOL_H
AsgTool.h
TrigDecisionTool.h
TrigRoiDescriptor.h
IDTPM::RoiSelectionTool::RoiSelectionTool
RoiSelectionTool(const std::string &name)
Constructor.
Definition
RoiSelectionTool.cxx:16
IDTPM::RoiSelectionTool::m_chainLeg
IntegerProperty m_chainLeg
Definition
RoiSelectionTool.h:72
IDTPM::RoiSelectionTool::getRois
std::vector< roiCollection_t > getRois(const std::string &chainName) const
Main method to get selected RoIs.
Definition
RoiSelectionTool.cxx:136
IDTPM::RoiSelectionTool::m_chainLegProbe
IntegerProperty m_chainLegProbe
Definition
RoiSelectionTool.h:84
IDTPM::RoiSelectionTool::initialize
virtual StatusCode initialize() override
RoiSelectionTool methods.
Definition
RoiSelectionTool.cxx:24
IDTPM::RoiSelectionTool::m_roiKeyTag
StringProperty m_roiKeyTag
Definition
RoiSelectionTool.h:77
IDTPM::RoiSelectionTool::m_roiKeyProbe
StringProperty m_roiKeyProbe
Definition
RoiSelectionTool.h:82
IDTPM::RoiSelectionTool::~RoiSelectionTool
virtual ~RoiSelectionTool()=default
Destructor.
IDTPM::RoiSelectionTool::m_chainLegTag
IntegerProperty m_chainLegTag
Definition
RoiSelectionTool.h:79
IDTPM::RoiSelectionTool::m_roiKey
StringProperty m_roiKey
Properties to fine-tune the tool behaviour.
Definition
RoiSelectionTool.h:70
IDTPM::RoiSelectionTool::m_trigDecTool
PublicToolHandle< Trig::TrigDecisionTool > m_trigDecTool
Definition
RoiSelectionTool.h:87
IDTPM::RoiSelectionTool::retrieveRois
std::vector< roiCollection_t > retrieveRois(const std::string &chainName, const std::string &roiKey, const int &chainLeg=-1) const
Retrieve RoIs.
Definition
RoiSelectionTool.cxx:39
IDTPM::RoiSelectionTool::ASG_TOOL_CLASS
ASG_TOOL_CLASS(RoiSelectionTool, IAsgTool)
IDTPM::RoiSelectionTool::getRoisStandard
std::vector< roiCollection_t > getRoisStandard(const std::string &chainName) const
get selected RoIs (non-Tag&Probe selection)
Definition
RoiSelectionTool.cxx:98
IDTPM::RoiSelectionTool::getRoisTnP
std::vector< roiCollection_t > getRoisTnP(const std::string &chainName) const
get selected RoIs (Tag&Probe selection)
Definition
RoiSelectionTool.cxx:110
IDTPM::RoiSelectionTool::m_doTnP
BooleanProperty m_doTnP
Definition
RoiSelectionTool.h:75
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition
AsgTool.h:47
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition
IAsgTool.h:41
IDTPM
Athena include(s).
Definition
IPlotsDefinitionSvc.h:25
IDTPM::roiCollection_t
TrigCompositeUtils::LinkInfo< TrigRoiDescriptorCollection > roiCollection_t
Definition
RoiSelectionTool.h:30
TrigCompositeUtils::LinkInfo< TrigRoiDescriptorCollection >
Generated on
for ATLAS Offline Software by
1.17.0