ATLAS Offline Software
TrackCountHypoAlg.h
Go to the documentation of this file.
1 /*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef TRIGMINBIAS_TRACKCOUNTHYPOALG_H
5 #define TRIGMINBIAS_TRACKCOUNTHYPOALG_H
6 
7 // Framework includes
8 #include "TrackCountHypoTool.h"
13 #include "Gaudi/Property.h"
14 
15 // STL includes
16 #include <string>
17 
18 class TrackCountHypoAlg : public ::HypoBase {
19 public:
20  TrackCountHypoAlg(const std::string& name, ISvcLocator* pSvcLocator);
21 
22  virtual StatusCode initialize() override;
23  virtual StatusCode execute(const EventContext& context) const override;
24 
25 private:
26  ToolHandleArray< TrackCountHypoTool > m_hypoTools {this, "HypoTools", {}, "Tools that perform actual selection"};
27  SG::ReadHandleKey<xAOD::TrackParticleContainer> m_tracksKey{this, "tracksKey", "Undefined", ""};
28  SG::WriteHandleKey<xAOD::TrigCompositeContainer> m_trackCountKey{this, "trackCountKey", "Undefined", ""};
29  Gaudi::Property<std::vector<float>> m_minPt{this, "minPt", {100, 200, 200, 500, 1000, 2000, 4000, 6000, 8000, 10000}, "Accept events with momentum higher than this limit in MeV"};
30  Gaudi::Property<std::vector<float>> m_maxZ0{this, "maxZ0", {401, 401, 401, 401, 401, 401, 401, 401, 401, 401}, "Accept events with absolute value of z position of track passing beamline lower than this limit in mm"};
31  Gaudi::Property<std::vector<float>> m_vertexZ{this, "vertexZ", {803, 803, 10, 803, 803, 803, 803, 803, 803, 803}, "Accept events with distance to vertex z position lower than this limit in mm"};
32 
33  ToolHandle<GenericMonitoringTool> m_monTool{this,"MonTool", "", "Monitoring tool"};
34 };
35 
36 #endif
TrackCountHypoAlg::m_hypoTools
ToolHandleArray< TrackCountHypoTool > m_hypoTools
Definition: TrackCountHypoAlg.h:26
SG::ReadHandleKey< xAOD::TrackParticleContainer >
TrackCountHypoAlg::m_minPt
Gaudi::Property< std::vector< float > > m_minPt
Definition: TrackCountHypoAlg.h:29
TrackCountHypoTool.h
TrackCountHypoAlg
Definition: TrackCountHypoAlg.h:18
TrackCountHypoAlg::m_maxZ0
Gaudi::Property< std::vector< float > > m_maxZ0
Definition: TrackCountHypoAlg.h:30
TrackCountHypoAlg::initialize
virtual StatusCode initialize() override
Definition: TrackCountHypoAlg.cxx:28
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrackCountHypoAlg::m_tracksKey
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_tracksKey
Definition: TrackCountHypoAlg.h:27
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
TrigCompositeContainer.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
HypoBase
Hypothesis algorithms take the output of reco algorithms and the decision from the preceeding InputMa...
Definition: HypoBase.h:13
TrackCountHypoAlg::TrackCountHypoAlg
TrackCountHypoAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TrackCountHypoAlg.cxx:24
TrackCountHypoAlg::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: TrackCountHypoAlg.h:33
HypoBase.h
TrackCountHypoAlg::m_vertexZ
Gaudi::Property< std::vector< float > > m_vertexZ
Definition: TrackCountHypoAlg.h:31
TrackCountHypoAlg::execute
virtual StatusCode execute(const EventContext &context) const override
Definition: TrackCountHypoAlg.cxx:48
TrackParticleContainer.h
TrackCountHypoAlg::m_trackCountKey
SG::WriteHandleKey< xAOD::TrigCompositeContainer > m_trackCountKey
Definition: TrackCountHypoAlg.h:28