21 if (selPlots.empty()) {
22 for (unsigned int i=0; i<MAX_TRUTHRELATEDPLOTCLASS; i++) m_selPlots.push_back(i);
29 m_oMatchedPlots = std::make_unique< Trk::ParamPlots>(
this,
"/kinematics/",
"Matched Muons");
32 m_oMatchedRecoPlots = std::make_unique< Trk::ParamPlots>(
this,
"/kinematicsReco/",
"Matched Muons");
44 m_oMuonResolutionPlots = std::make_unique< Muon::MuonResolutionPlots>(
this,
"/resolution/",
"",doBinnedResolutionPlots);
76 if (!primaryTrk)
return;
96 extrapLinkAcc(
"extrapolatedMuonSpectrometerTrackParticleLink");
101 msTrk = mu.trackParticle( xAOD::Muon::MuonSpectrometerTrackParticle );
107 truthParticleLinkAcc(
"truthParticleLink");
108 if (msExtrapTrkLink.
isValid()) {
111 if( truthParticleLinkAcc.
isAvailable(**msExtrapTrkLink) ) {
112 truthLink_muTrk = truthParticleLinkAcc(**msExtrapTrkLink);
114 if (truthLink_muTrk.
isValid()) {
115 for (
const auto trk: *MSTracks) {
118 truthLink_msTrk = truthParticleLinkAcc(*trk);
119 if (truthLink_msTrk.
isValid()) {
120 if (truthLink_msTrk == truthLink_muTrk) {
132 if (mu.parameter(eloss,xAOD::Muon::EnergyLoss)) {
133 if ( mu.energyLossType()!=xAOD::Muon::Tail ) {
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
Helper class to provide constant type-safe access to aux data.
bool isValid() const
Test to see if the link can be dereferenced.
PlotBase(PlotBase *parent, const std::string &sDir)
Helper class to provide constant type-safe access to aux data.
bool isAvailable(const ELT &e) const
Test to see if this variable exists in the store.
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
TrackParticle_v1 TrackParticle
Reference the current persistent version:
TruthParticle_v1 TruthParticle
Typedef to implementation.
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
Muon_v1 Muon
Reference the current persistent version: