ATLAS Offline Software
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 
12 #include <xAODMuon/MuonContainer.h>
13 
14 namespace 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
DerivationFramework::AnalysisMuonThinningAlg::m_MSOETrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_MSOETrkKey
Definition: AnalysisMuonThinningAlg.h:50
LikeEnum::Loose
@ Loose
Definition: LikelihoodEnums.h:12
DerivationFramework::AnalysisMuonThinningAlg::m_streamName
Gaudi::Property< std::string > m_streamName
Thinning of unneeded muon tracks.
Definition: AnalysisMuonThinningAlg.h:38
DerivationFramework::AnalysisMuonThinningAlg::initialize
virtual StatusCode initialize() override
Definition: AnalysisMuonThinningAlg.cxx:25
DerivationFramework::AnalysisMuonThinningAlg::m_muonKey
SG::ThinningHandleKey< xAOD::MuonContainer > m_muonKey
Definition: AnalysisMuonThinningAlg.h:40
DerivationFramework::AnalysisMuonThinningAlg::m_CmbTrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_CmbTrkKey
Definition: AnalysisMuonThinningAlg.h:52
SG::ThinningHandleKey
HandleKey object for adding thinning to an object.
Definition: ThinningHandleKey.h:38
IThinningTool.h
DerivationFramework::AnalysisMuonThinningAlg::m_IdTrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_IdTrkKey
Definition: AnalysisMuonThinningAlg.h:41
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
DerivationFramework::AnalysisMuonThinningAlg::m_TrkPassKeys
SG::ReadDecorHandleKeyArray< xAOD::TrackParticleContainer > m_TrkPassKeys
Definition: AnalysisMuonThinningAlg.h:34
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
DerivationFramework::AnalysisMuonThinningAlg::m_SegmentKey
SG::ThinningHandleKey< xAOD::MuonSegmentContainer > m_SegmentKey
Definition: AnalysisMuonThinningAlg.h:54
IMuonSelectionTool.h
DerivationFramework::AnalysisMuonThinningAlg::m_MuonPassKeys
SG::ReadDecorHandleKeyArray< xAOD::MuonContainer > m_MuonPassKeys
Definition: AnalysisMuonThinningAlg.h:31
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
DerivationFramework::AnalysisMuonThinningAlg::m_muonSelTool
ToolHandle< CP::IMuonSelectionTool > m_muonSelTool
Definition: AnalysisMuonThinningAlg.h:27
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
DerivationFramework::AnalysisMuonThinningAlg::~AnalysisMuonThinningAlg
~AnalysisMuonThinningAlg()=default
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DerivationFramework::AnalysisMuonThinningAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: AnalysisMuonThinningAlg.cxx:61
DerivationFramework::AnalysisMuonThinningAlg::m_quality
Gaudi::Property< int > m_quality
Definition: AnalysisMuonThinningAlg.h:28
AthReentrantAlgorithm.h
DerivationFramework::AnalysisMuonThinningAlg::AnalysisMuonThinningAlg
AnalysisMuonThinningAlg(const std::string &n, ISvcLocator *p)
Definition: AnalysisMuonThinningAlg.cxx:22
DerivationFramework::AnalysisMuonThinningAlg::m_METrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_METrkKey
Definition: AnalysisMuonThinningAlg.h:48
DerivationFramework::AnalysisMuonThinningAlg
Definition: AnalysisMuonThinningAlg.h:16
MuonContainer.h
ThinningHandleKey.h
HandleKey object for adding thinning to an object.
DerivationFramework::AnalysisMuonThinningAlg::m_MSTrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_MSTrkKey
Definition: AnalysisMuonThinningAlg.h:46
ReadDecorHandleKeyArray.h
DerivationFramework::AnalysisMuonThinningAlg::m_FwdIdTrkKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_FwdIdTrkKey
Definition: AnalysisMuonThinningAlg.h:43