ATLAS Offline Software
Loading...
Searching...
No Matches
AnalysisMuonThinningAlg.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 DERIVATIONFRAMEWORK_ANALYSISMUONTHINNINGALG__H
5#define DERIVATIONFRAMEWORK_ANALYSISMUONTHINNINGALG__H
6
13
14namespace DerivationFramework {
15
17 public:
18 AnalysisMuonThinningAlg(const std::string& n, ISvcLocator* p);
19
21
22 virtual StatusCode initialize() override;
23
24 virtual StatusCode execute(const EventContext& ctx) const override;
25
26 private:
27 ToolHandle<CP::IMuonSelectionTool> m_muonSelTool{this, "SelectionTool", "", "Configured instance of the MuonSelectionTool"};
28 Gaudi::Property<int> m_quality{this, "QualityWP",
29 static_cast<int>(xAOD::Muon::Quality::Loose),
30 "Minimum working point that the muon has to satisfy in order to be survive"};
31
33 this, "MuonPassFlags", {}, "Decorators to safe analysis muons needed for MCP studies "};
34
36 this, "TrkPassFlags", {}, "Decorator to safe tracks needed for MCP studies"};
37
39 Gaudi::Property<std::string> m_streamName{this, "StreamName", "", "Name of the stream being thinned"};
40
41 SG::ThinningHandleKey<xAOD::MuonContainer> m_muonKey{this, "MuonThinning", "Muons", "Name of the muon container behind"};
42 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_IdTrkKey{this, "IdTrkThinnig", "InDetTrackParticles",
43 "Thin the unneeded ID track particles associated with muons"};
45 this, "IdTrkFwdThinning", "InDetForwardTrackParticles",
46 "Thin the unneeded forward ID tracks (Needed for Sillicon associated Forward)"};
47 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_MSTrkKey{this, "MSTrkThinning", "MuonSpectrometerTrackParticles",
48 "Key to get rid of the unneeded MS tracks"};
49 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_METrkKey{this, "METrkThinning", "ExtrapolatedMuonTrackParticles",
50 "Key to get rid of the unneeded ME tracks"};
51 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_MSOETrkKey{this, "MSOETrkThinning", "MSOnlyExtrapolatedMuonTrackParticles",
52 "Key to get rid of the unneeded MSOE tracks"};
53 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_CmbTrkKey{this, "CmbTrkThinning", "CombinedMuonTrackParticles",
54 "Key to get rid of the unneeded MSOE tracks"};
55 SG::ThinningHandleKey<xAOD::MuonSegmentContainer> m_SegmentKey{this, "SegmentThinning", "MuonSegments",
56 "Key to get rid of the unneeded segments"};
57 };
58
59} // namespace DerivationFramework
60
61#endif
HandleKey object for adding thinning to an object.
An algorithm that can be simultaneously executed in multiple threads.
SG::ThinningHandleKey< xAOD::MuonContainer > m_muonKey
virtual StatusCode execute(const EventContext &ctx) const override
ToolHandle< CP::IMuonSelectionTool > m_muonSelTool
AnalysisMuonThinningAlg(const std::string &n, ISvcLocator *p)
SG::ThinningHandleKey< xAOD::MuonSegmentContainer > m_SegmentKey
SG::ReadDecorHandleKeyArray< xAOD::MuonContainer > m_MuonPassKeys
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_FwdIdTrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_MSTrkKey
Gaudi::Property< std::string > m_streamName
Thinning of unneeded muon tracks.
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_METrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_MSOETrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_CmbTrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_IdTrkKey
SG::ReadDecorHandleKeyArray< xAOD::TrackParticleContainer > m_TrkPassKeys
HandleKey object for adding thinning to an object.
THE reconstruction tool.
DecorHandleKeyArray< ReadDecorHandle< T, S >, ReadDecorHandleKey< T >, Gaudi::DataHandle::Reader > ReadDecorHandleKeyArray