ATLAS Offline Software
Loading...
Searching...
No Matches
MuonValidationPlots.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MUONPHYSVALMONITORING_MUONVALIDATIONPLOTS_H
6#define MUONPHYSVALMONITORING_MUONVALIDATIONPLOTS_H
7
12#include "xAODMuon/Muon.h"
15
17public:
18 MuonValidationPlots(PlotBase* pParent, const std::string& sDir, std::set<int> wps, std::set<int> authors, bool isData,
19 bool doBinnedResolutionPlots, bool doSplitSAFMuons);
20
22 void fill(const xAOD::Muon& mu, float weight = 1.0);
23 bool isGoodTruthTrack(const xAOD::TruthParticle& truthMu);
24 void fill(const xAOD::TruthParticle& truthMu, float weight = 1.0);
25 void fill(const xAOD::TruthParticle* truthMu, const xAOD::Muon* mu, const xAOD::TrackParticleContainer* MSTracks, float weight = 1.0);
26
27 std::vector<int> m_selectedWPs;
28 std::vector<unsigned int> m_selectedAuthors;
29 std::vector<std::string> m_truthSelections;
30
31 std::unique_ptr<Muon::RecoMuonPlotOrganizer> m_oRecoMuonPlots;
32 std::unique_ptr<Muon::TruthRelatedMuonPlotOrganizer> m_oTruthRelatedMuonPlots;
33 std::vector<std::unique_ptr<Muon::RecoMuonPlotOrganizer>> m_oRecoMuonPlots_perQuality;
34 std::vector<std::unique_ptr<Muon::RecoMuonPlotOrganizer>> m_oRecoMuonPlots_perAuthor;
35 std::vector<std::unique_ptr<Muon::TruthRelatedMuonPlotOrganizer>> m_oTruthRelatedMuonPlots_perQuality;
36 std::vector<std::unique_ptr<Muon::TruthRelatedMuonPlotOrganizer>> m_oTruthRelatedMuonPlots_perAuthor;
37 std::vector<std::unique_ptr<Muon::TruthMuonPlotOrganizer>> m_oTruthMuonPlots;
38
39 std::vector<std::unique_ptr<Muon::TruthRelatedMuonPlotOrganizer>> m_oTruthRelatedMuonPlots_SiAssocFwrdMu;
40 std::vector<std::unique_ptr<Muon::RecoMuonPlotOrganizer>> m_oRecoMuonPlots_SiAssocFwrdMu;
41
42private:
43 void fillRecoMuonPlots(const xAOD::Muon& mu, float weight = 1.0);
44 void fillTruthMuonPlots(const xAOD::TruthParticle& truthMu, float weight = 1.0);
45
48};
49
50#endif
bool isGoodTruthTrack(const xAOD::TruthParticle &truthMu)
void fill(const xAOD::Muon &mu, float weight=1.0)
std::unique_ptr< Muon::RecoMuonPlotOrganizer > m_oRecoMuonPlots
MuonValidationPlots(PlotBase *pParent, const std::string &sDir, std::set< int > wps, std::set< int > authors, bool isData, bool doBinnedResolutionPlots, bool doSplitSAFMuons)
std::vector< int > m_selectedWPs
std::vector< std::unique_ptr< Muon::TruthMuonPlotOrganizer > > m_oTruthMuonPlots
void fillRecoMuonPlots(const xAOD::Muon &mu, float weight=1.0)
std::unique_ptr< Muon::TruthRelatedMuonPlotOrganizer > m_oTruthRelatedMuonPlots
std::vector< std::unique_ptr< Muon::RecoMuonPlotOrganizer > > m_oRecoMuonPlots_perAuthor
std::vector< std::string > m_truthSelections
std::vector< std::unique_ptr< Muon::TruthRelatedMuonPlotOrganizer > > m_oTruthRelatedMuonPlots_perAuthor
virtual ~MuonValidationPlots()
std::vector< std::unique_ptr< Muon::TruthRelatedMuonPlotOrganizer > > m_oTruthRelatedMuonPlots_perQuality
std::vector< unsigned int > m_selectedAuthors
std::vector< std::unique_ptr< Muon::RecoMuonPlotOrganizer > > m_oRecoMuonPlots_SiAssocFwrdMu
std::vector< std::unique_ptr< Muon::RecoMuonPlotOrganizer > > m_oRecoMuonPlots_perQuality
void fillTruthMuonPlots(const xAOD::TruthParticle &truthMu, float weight=1.0)
std::vector< std::unique_ptr< Muon::TruthRelatedMuonPlotOrganizer > > m_oTruthRelatedMuonPlots_SiAssocFwrdMu
PlotBase(PlotBase *parent, std::string_view sDir)
Definition PlotBase.cxx:29
TruthParticle_v1 TruthParticle
Typedef to implementation.
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
Muon_v1 Muon
Reference the current persistent version: