ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkValidation
TrkValHistUtils
Root
MSHitDiffPlots.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
TrkValHistUtils/MSHitDiffPlots.h
"
6
#include "
xAODTracking/TrackingPrimitives.h
"
7
#include "
AthContainers/ConstAccessor.h
"
8
// #include "TrkValHistUtils/TrkValHistUtilities.h"
9
10
namespace
Trk
{
11
MSHitDiffPlots::MSHitDiffPlots
(
PlotBase
*pParent,
const
std::string& sDir) :
12
PlotBase
(pParent, sDir),
13
nprecLayers
(this,
"nprecLayers"
,
"Precision Layers"
, -5, 5),
14
nphiLayers
(this,
"nphiLayers"
,
"Phi Layers"
, -5, 5),
15
ntrigEtaLayers
(this,
"ntrigEtaLayers"
,
"Eta Trigger Layers"
, -5, 5) {
16
}
17
18
void
19
MSHitDiffPlots::fill
(
const
xAOD::TrackParticle
&trkprt,
const
xAOD::TruthParticle
&truthprt,
float
weight) {
20
fillPlot
(
nprecLayers
,
xAOD::numberOfPrecisionLayers
,
"nprecLayers"
, trkprt, truthprt, weight);
21
fillPlot
(
nphiLayers
,
xAOD::numberOfPhiLayers
,
"nphiLayers"
, trkprt, truthprt, weight);
22
fillPlot
(
ntrigEtaLayers
,
xAOD::numberOfTriggerEtaLayers
,
"ntrigEtaLayers"
, trkprt, truthprt, weight);
23
}
24
25
void
26
MSHitDiffPlots::fillPlot
(
HitTypePlots
&hitPlots,
const
xAOD::SummaryType
&info,
const
std::string &sInfo,
27
const
xAOD::TrackParticle
&trkprt,
const
xAOD::TruthParticle
&truthprt,
float
weight) {
28
uint8_t hitval = 0;
29
30
if
(!trkprt.
summaryValue
(hitval, info)) {
31
return
;
32
}
33
SG::ConstAccessor<uint8_t>
infoAcc (sInfo);
34
if
(!infoAcc.
isAvailable
(truthprt)) {
35
return
;
36
}
37
uint8_t truthhitval = infoAcc(truthprt);
38
hitPlots.
fill
(truthhitval - hitval, trkprt.
eta
(), trkprt.
phi
(), weight);
39
}
40
}
ConstAccessor.h
Helper class to provide constant type-safe access to aux data.
MSHitDiffPlots.h
TrackingPrimitives.h
PlotBase::PlotBase
PlotBase(PlotBase *parent, std::string_view sDir)
Definition
PlotBase.cxx:29
SG::ConstAccessor
Helper class to provide constant type-safe access to aux data.
Definition
ConstAccessor.h:55
SG::ConstAccessor::isAvailable
bool isAvailable(const ELT &e) const
Test to see if this variable exists in the store.
Trk::HitTypePlots
Definition
HitTypePlots.h:12
Trk::HitTypePlots::fill
void fill(int iHits, float fEta, float fPhi, float weight=1.0)
Definition
HitTypePlots.cxx:32
Trk::MSHitDiffPlots::nphiLayers
Trk::HitTypePlots nphiLayers
Definition
MSHitDiffPlots.h:22
Trk::MSHitDiffPlots::fill
void fill(const xAOD::TrackParticle &trkprt, const xAOD::TruthParticle &truthprt, float weight=1.0)
Definition
MSHitDiffPlots.cxx:19
Trk::MSHitDiffPlots::nprecLayers
Trk::HitTypePlots nprecLayers
Definition
MSHitDiffPlots.h:21
Trk::MSHitDiffPlots::MSHitDiffPlots
MSHitDiffPlots(PlotBase *pParent, const std::string &sDir)
Definition
MSHitDiffPlots.cxx:11
Trk::MSHitDiffPlots::ntrigEtaLayers
Trk::HitTypePlots ntrigEtaLayers
Definition
MSHitDiffPlots.h:23
Trk::MSHitDiffPlots::fillPlot
static void fillPlot(HitTypePlots &hitPlots, const xAOD::SummaryType &info, const std::string &sInfo, const xAOD::TrackParticle &trkprt, const xAOD::TruthParticle &truthprt, float weight=1.0)
Definition
MSHitDiffPlots.cxx:26
xAOD::TrackParticle_v1::phi
virtual double phi() const override final
The azimuthal angle ( ) of the particle (has range to .).
xAOD::TrackParticle_v1::summaryValue
bool summaryValue(uint8_t &value, const SummaryType &information) const
Accessor for TrackSummary values.
Definition
TrackParticle_v1.cxx:688
xAOD::TrackParticle_v1::eta
virtual double eta() const override final
The pseudorapidity ( ) of the particle.
Definition
TrackParticle_v1.cxx:79
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
xAOD::TrackParticle
TrackParticle_v1 TrackParticle
Reference the current persistent version:
Definition
Event/xAOD/xAODTracking/xAODTracking/TrackParticle.h:13
xAOD::TruthParticle
TruthParticle_v1 TruthParticle
Typedef to implementation.
Definition
Event/xAOD/xAODTruth/xAODTruth/TruthParticle.h:15
xAOD::SummaryType
SummaryType
Enumerates the different types of information stored in Summary.
Definition
TrackingPrimitives.h:229
xAOD::numberOfPrecisionLayers
@ numberOfPrecisionLayers
layers with at least 3 hits [unit8_t].
Definition
TrackingPrimitives.h:294
xAOD::numberOfTriggerEtaLayers
@ numberOfTriggerEtaLayers
layers with trigger eta hits [unit8_t].
Definition
TrackingPrimitives.h:298
xAOD::numberOfPhiLayers
@ numberOfPhiLayers
layers with a trigger phi hit [unit8_t].
Definition
TrackingPrimitives.h:296
Generated on
for ATLAS Offline Software by
1.17.0