4#ifndef L0MUONS1TGCVALIDATION_TGCL0TRUTHVALIDATIONALG_H
5#define L0MUONS1TGCVALIDATION_TGCL0TRUTHVALIDATIONALG_H
27 using AthReentrantAlgorithm::AthReentrantAlgorithm;
30 StatusCode
execute(
const EventContext& ctx)
const override;
34 this,
"CandidateKey",
"L0MuonTGCValidationCandidates",
35 "Pre-Inner-Coincidence transient candidates"};
37 this,
"SegmentKey",
"L0MuonTGCValidationSegments",
38 "Projection segments published by reconstruction"};
40 this,
"TruthEventKey",
"TruthEvent",
"Input truth-event collection"};
42 this,
"OutputKey",
"L0MuonTGCValidationEvent",
43 "Calculated event-local truth-validation data"};
45 this,
"TrackExtrapolator",
"",
"Truth-only extrapolator"};
48 this,
"TruthMatchMaxMeanDeltaR", 0.08F,
49 "Maximum station-averaged deltaR for truth matching"};
51 this,
"TruthWireSegmentMaxDeltaEta", 0.08F,
52 "Maximum |delta eta| for truth-to-wire-segment matching"};
54 this,
"TruthStripSegmentMaxDeltaPhi", 0.08F,
55 "Maximum |delta phi| for truth-to-strip-segment matching"};
57 this,
"MinTruthPt", 2000.0,
"Minimum truth-muon pT in MeV"};
59 this,
"MinTruthAbsEta", 0.95,
"Minimum absolute truth eta"};
61 this,
"MaxTruthAbsEta", 2.50,
"Maximum absolute truth eta"};
63 this,
"RequiredTruthStatus", 1,
64 "Generator status required for selected truth muons"};
66 this,
"MaxAbsBarcode", 9999,
67 "Maximum absolute HepMC barcode for selected truth muons"};
69 this,
"RequiredBcTag", 0,
70 "BC tag used for truth matching; set to -1 to disable the filter"};
72 this,
"StationAbsZ", {13436.5, 14728.2, 15148.2},
73 "Nominal absolute z positions of the M1, M2, and M3 validation planes"};
75 this,
"ValidationMinR", 0.0,
76 "Minimum radius of the truth-extrapolation validation planes"};
78 this,
"ValidationMaxR", 11977.0,
79 "Maximum radius of the truth-extrapolation validation planes"};
81 this,
"ValidationPlaneToleranceZ", 20.0,
82 "Maximum distance in z from an extrapolation target plane"};
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
Calculates event-local TGC truth-validation quantities.
Gaudi::Property< float > m_maxMeanDeltaR
Gaudi::Property< int > m_requiredTruthStatus
SG::WriteHandleKey< TgcL0ValidationEvent > m_outputKey
Gaudi::Property< double > m_minPt
Gaudi::Property< std::vector< double > > m_stationAbsZ
Gaudi::Property< int > m_maxAbsBarcode
StatusCode initialize() override
Gaudi::Property< double > m_validationMinR
SG::ReadHandleKey< TgcL0CandidateContainer > m_candidateKey
Gaudi::Property< double > m_validationMaxR
SG::ReadHandleKey< TgcL0SegmentContainer > m_segmentKey
Gaudi::Property< float > m_maxStripSegmentDeltaPhi
StatusCode execute(const EventContext &ctx) const override
Gaudi::Property< double > m_minAbsEta
Gaudi::Property< int > m_requiredBcTag
Gaudi::Property< double > m_maxAbsEta
Gaudi::Property< float > m_maxWireSegmentDeltaEta
Gaudi::Property< double > m_validationPlaneToleranceZ
ToolHandle< Trk::IExtrapolator > m_extrapolator
SG::ReadHandleKey< McEventCollection > m_truthEventKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.