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", xAOD::Muon::Loose,
29 "Minimum working point that the muon has to satisfy in order to be survive"};
30
32 this, "MuonPassFlags", {}, "Decorators to safe analysis muons needed for MCP studies "};
33
35 this, "TrkPassFlags", {}, "Decorator to safe tracks needed for MCP studies"};
36
38 Gaudi::Property<std::string> m_streamName{this, "StreamName", "", "Name of the stream being thinned"};
39
40 SG::ThinningHandleKey<xAOD::MuonContainer> m_muonKey{this, "MuonThinning", "Muons", "Name of the muon container behind"};
41 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_IdTrkKey{this, "IdTrkThinnig", "InDetTrackParticles",
42 "Thin the unneeded ID track particles associated with muons"};
44 this, "IdTrkFwdThinning", "InDetForwardTrackParticles",
45 "Thin the unneeded forward ID tracks (Needed for Sillicon associated Forward)"};
46 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_MSTrkKey{this, "MSTrkThinning", "MuonSpectrometerTrackParticles",
47 "Key to get rid of the unneeded MS tracks"};
48 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_METrkKey{this, "METrkThinning", "ExtrapolatedMuonTrackParticles",
49 "Key to get rid of the unneeded ME tracks"};
50 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_MSOETrkKey{this, "MSOETrkThinning", "MSOnlyExtrapolatedMuonTrackParticles",
51 "Key to get rid of the unneeded MSOE tracks"};
52 SG::ThinningHandleKey<xAOD::TrackParticleContainer> m_CmbTrkKey{this, "CmbTrkThinning", "CombinedMuonTrackParticles",
53 "Key to get rid of the unneeded MSOE tracks"};
54 SG::ThinningHandleKey<xAOD::MuonSegmentContainer> m_SegmentKey{this, "SegmentThinning", "MuonSegments",
55 "Key to get rid of the unneeded segments"};
56 };
57
58} // namespace DerivationFramework
59
60#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