 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRUTHPARTICLEALGS_RecoToTruthAssociationAlg_H
6 #define TRUTHPARTICLEALGS_RecoToTruthAssociationAlg_H
9 #include "GaudiKernel/ServiceHandle.h"
21 using AthReentrantAlgorithm::AthReentrantAlgorithm;
30 this,
"MuonTruthParticleContainerName",
"MuonTruthParticles"};
33 this,
"MuonContainerName",
"Muons",
34 "container name for muon truth particles; the full handle name, including the reco muon link auxdata, is set in initialize()"};
38 "container name for muon truth particles; the full handle name, including the reco muon link auxdata, is set in initialize()"};
40 this,
"MuonTruthParticleLink",
m_recoMuKey,
"truthParticleLink",
41 "muon truth particle link auxdata name; name will be reset in initialize() based on m_muonName"};
43 this,
"MuonTruthParticleType",
m_recoMuKey,
"truthType",
44 "muon truth type auxdata name; name will be reset in initialize() based on m_muonName"};
46 this,
"MuonTruthParticleOrigin",
m_recoMuKey,
"truthOrigin",
47 "muon truth origin auxdata name; name will be reset in initialize() based on m_muonName"};
49 this,
"MuonTruthParticleNPrecMatched",
m_recoMuKey,
"nprecMatchedHitsPerChamberLayer",
50 "muon vector of number of precision matched hits per chamber layer auxdata name; name will be reset in initialize() based on "
53 this,
"MuonTruthParticleNPhiMatched",
m_recoMuKey,
"nphiMatchedHitsPerChamberLayer",
54 "muon vector of number of phi matched hits per chamber layer auxdata name; name will be reset in initialize() based on m_muonName"};
56 this,
"MuonTruthParticleNTrigEtaMatched",
m_recoMuKey,
"ntrigEtaMatchedHitsPerChamberLayer",
57 "muon vector of number of phi matched hits per chamber layer auxdata name; name will be reset in initialize() based on m_muonName"};
61 this,
"TrkTruthLinkKeys", {},
62 "Declare the decoration dependencies of this algorithm. Steer via TrackContainers property"};
63 Gaudi::Property<std::vector<std::string>>
m_assocTrkContainers{
this,
"TrackContainers", {
"CombinedMuonTrackParticles",
64 "ExtrapolatedMuonTrackParticles",
65 "MSOnlyExtrapolatedMuonTrackParticles"},
66 "Collection of track containers to be decorated before this alg can be scheduled. truthLink decoration exploited "};
67 Gaudi::Property<std::string>
m_recoLink{
this,
"RecoLinkName",
"recoMuonLink" ,
"Decoration to the truth particle pointing to the muon"};
68 Gaudi::Property<bool>
m_associateWithInDetTP{
this,
"AssociateWithInDetTP",
false,
"force use of ID track particles for association"};
73 std::vector<unsigned int>& nprecHitsPerChamberLayer, std::vector<unsigned int>& nphiHitsPerChamberLayer,
74 std::vector<unsigned int>& ntrigEtaHitsPerChamberLayer)
const;
79 #endif // TRUTHPARTICLEALGS_MUONTRUTHDECORATIONALG_H
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleNPhiMatched
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleNPrecMatched
std::vector< size_t > vec
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Class providing the definition of the 4-vector interface.
void count_chamber_layers(const xAOD::IParticle *truth_particle, const Trk::Track *ptrk, std::vector< unsigned int > &nprecHitsPerChamberLayer, std::vector< unsigned int > &nphiHitsPerChamberLayer, std::vector< unsigned int > &ntrigEtaHitsPerChamberLayer) const
Gaudi::Property< std::vector< std::string > > m_assocTrkContainers
Gaudi::Property< bool > m_associateWithInDetTP
An algorithm that can be simultaneously executed in multiple threads.
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleType
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthMuKey
Key to the filtered muon truth particles
StatusCode initialize() override
StatusCode execute(const EventContext &ctx) const override
SG::ReadHandleKey< xAOD::MuonContainer > m_recoMuKey
void clear_dummys(const std::vector< unsigned long long > &identifiers, std::vector< unsigned int > &vec) const
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_muonTruthRecoLink
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleNTrigEtaMatched
std::vector< Identifier > identifiers(const InDetSimDataCollection &coll)
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleLink
SG::ReadDecorHandleKeyArray< xAOD::IParticleContainer > m_inputDecorKey
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleOrigin
Gaudi::Property< std::string > m_recoLink