ATLAS Offline Software
TrigTauFastTrackHypoTool.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
8 
9 
10 using namespace TrigCompositeUtils;
11 
12 TrigTauFastTrackHypoTool::TrigTauFastTrackHypoTool(const std::string& type, const std::string& name, const IInterface* parent)
13  : base_class(type, name, parent), m_decisionId(HLT::Identifier::fromToolName(name))
14 {
15 
16 }
17 
18 
20 {
21  ATH_MSG_DEBUG("Tool configured for chain/id: " << m_decisionId);
22 
23  return StatusCode::SUCCESS;
24 }
25 
26 
28 {
29  // Get RoI descriptor
30  ATH_MSG_DEBUG( "Input RoI eta: " << input.roi->eta() << ", phi: " << input.roi->phi() << ", z: " << input.roi->zed());
31 
32  // Check the input TrackParticles
33  const xAOD::TrackParticleContainer* tracks = input.trackCollection;
34  if(!tracks->empty()){
35  ATH_MSG_DEBUG("Input Fast TrackParticle collection has size: " << tracks->size());
36  }
37 
38  // This is (for now) a dummy step, so we won't be applying any decision here
39  bool pass = true;
40 
41  return pass;
42 }
43 
44 
45 StatusCode TrigTauFastTrackHypoTool::decide(std::vector<ITrigTauFastTrackHypoTool::ToolInfo>& input) const
46 {
47  for(auto& i : input) {
48  if(passed(m_decisionId.numeric(), i.previousDecisionIDs)) {
49  if(decide(i)) {
50  addDecisionID(m_decisionId, i.decision);
51  }
52  }
53  }
54 
55  return StatusCode::SUCCESS;
56 }
TrigTauFastTrackHypoTool::m_decisionId
HLT::Identifier m_decisionId
Definition: TrigTauFastTrackHypoTool.h:30
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
TrigTauFastTrackHypoTool::initialize
virtual StatusCode initialize() override
Definition: TrigTauFastTrackHypoTool.cxx:19
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
TrigTauFastTrackHypoTool::TrigTauFastTrackHypoTool
TrigTauFastTrackHypoTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TrigTauFastTrackHypoTool.cxx:12
TrigCompositeUtils.h
HLT
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
Definition: HLTResultReader.h:26
lumiFormat.i
int i
Definition: lumiFormat.py:85
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
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
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
ITrigTauFastTrackHypoTool::ToolInfo
Definition: ITrigTauFastTrackHypoTool.h:25
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
TrigTauFastTrackHypoTool.h
TrigCompositeUtils
Definition: Event/xAOD/xAODTrigger/xAODTrigger/TrigComposite.h:19
TrigTauFastTrackHypoTool::decide
virtual StatusCode decide(std::vector< ITrigTauFastTrackHypoTool::ToolInfo > &input) const override
Definition: TrigTauFastTrackHypoTool.cxx:45
DataVector::size
size_type size() const noexcept
Returns the number of elements in the collection.
DataVector::empty
bool empty() const noexcept
Returns true if the collection is empty.
TrackParticleContainer.h
Identifier
Definition: IdentifierFieldParser.cxx:14