ATLAS Offline Software
Loading...
Searching...
No Matches
TrackIsolationDecorAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef TRACKISOLATIONDECORALG_H_
5#define TRACKISOLATIONDECORALG_H_
6
13
16
17namespace DerivationFramework {
19public:
21 TrackIsolationDecorAlg(const std::string& name, ISvcLocator* pSvcLocator);
22
25
27 StatusCode initialize() override;
28 StatusCode execute(const EventContext& ctx) const override;
29
30private:
31 static bool isSame(const xAOD::IParticle* a, const xAOD::IParticle* b);
32 SG::ReadHandleKey<xAOD::TrackParticleContainer> m_idTrkKey{this, "IdTrackCollection", "InDetTrackParticles",
33 "Collection of track particles making up the isolation cones"};
34
35 SG::ReadHandleKey<xAOD::TrackParticleContainer> m_toDeorTrkKey{this, "TrackCollection", "InDetTrackParticles",
36 "Collection of track particles to decorate the isolation onto"};
37 SG::ReadHandleKey<xAOD::VertexContainer> m_vtx_key{this, "VertexCollection", "PrimaryVertices"};
38
39 Gaudi::Property<std::string> m_customName{this, "customName", "", "Custom appendix of the isolation variables"};
40
41 Gaudi::Property<float> m_pt_min{this, "PtMin", 2.5 * Gaudi::Units::GeV, "Minimal track pt required to decorate the ID track"};
42
45 Gaudi::Property<std::vector<std::string>> m_trkSel_Decors{this, "TrackSelections", {},
46 "List of decorator names of which one needs to be true to run the isolation" };
48 "Will be overwritten in initialize"};
49
54
58
59 ToolHandle<xAOD::ITrackIsolationTool> m_isoTool{this, "IsolationTool", ""};
60
63};
64}
65#endif /* TRACKISOLATIONDECORALG_H_ */
static Double_t a
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptvarcone20_key
StatusCode execute(const EventContext &ctx) const override
static bool isSame(const xAOD::IParticle *a, const xAOD::IParticle *b)
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptcone20_key
Now let's come to the WriteDecorHandleKeys.
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptcone30_key
StatusCode initialize() override
Athena algorithm's Hooks.
ToolHandle< xAOD::ITrackIsolationTool > m_isoTool
Gaudi::Property< std::vector< std::string > > m_trkSel_Decors
Optional list of decorators to select only the good tracks for the isolation decoration.
SG::ReadDecorHandleKeyArray< xAOD::TrackParticleContainer > m_trkSel_keys
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_toDeorTrkKey
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptvarcone40_key
SG::ReadHandleKey< xAOD::VertexContainer > m_vtx_key
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptcone40_key
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_idTrkKey
TrackIsolationDecorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
SG::WriteDecorHandleKey< xAOD::TrackParticleContainer > m_ptvarcone30_key
std::vector< xAOD::Iso::IsolationType > m_trk_iso_types
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Class providing the definition of the 4-vector interface.
THE reconstruction tool.
DecorHandleKeyArray< ReadDecorHandle< T, S >, ReadDecorHandleKey< T >, Gaudi::DataHandle::Reader > ReadDecorHandleKeyArray
@ ptcone20
Track isolation.