![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRUTHPARTICLEALGS_MUONTRUTHASSOCIATIONALG_H
6 #define TRUTHPARTICLEALGS_MUONTRUTHASSOCIATIONALG_H
9 #include "GaudiKernel/ServiceHandle.h"
27 this,
"MuonTruthParticleContainerName",
"MuonTruthParticles",
28 "container name for muon truth particles; the full handle name, including the reco muon link auxdata, is set in initialize()"};
31 this,
"MuonContainerName",
"Muons",
32 "container name for muon truth particles; the full handle name, including the reco muon link auxdata, is set in initialize()"};
36 "container name for muon truth particles; the full handle name, including the reco muon link auxdata, is set in initialize()"};
38 this,
"MuonTruthParticleLink",
m_recoMuKey,
"truthParticleLink",
39 "muon truth particle link auxdata name; name will be reset in initialize() based on m_muonName"};
41 this,
"MuonTruthParticleType",
m_recoMuKey,
"truthType",
42 "muon truth type auxdata name; name will be reset in initialize() based on m_muonName"};
44 this,
"MuonTruthParticleOrigin",
m_recoMuKey,
"truthOrigin",
45 "muon truth origin auxdata name; name will be reset in initialize() based on m_muonName"};
47 this,
"MuonTruthParticleNPrecMatched",
m_recoMuKey,
"nprecMatchedHitsPerChamberLayer",
48 "muon vector of number of precision matched hits per chamber layer auxdata name; name will be reset in initialize() based on "
51 this,
"MuonTruthParticleNPhiMatched",
m_recoMuKey,
"nphiMatchedHitsPerChamberLayer",
52 "muon vector of number of phi matched hits per chamber layer auxdata name; name will be reset in initialize() based on m_muonName"};
54 this,
"MuonTruthParticleNTrigEtaMatched",
m_recoMuKey,
"ntrigEtaMatchedHitsPerChamberLayer",
55 "muon vector of number of phi matched hits per chamber layer auxdata name; name will be reset in initialize() based on m_muonName"};
59 this,
"TrkTruthLinkKeys", {},
60 "Declare the decoration dependencies of this algorithm. Steer via TrackContainers property"};
61 Gaudi::Property<std::vector<std::string>>
m_assocTrkContainers{
this,
"TrackContainers", {
"CombinedMuonTrackParticles",
62 "ExtrapolatedMuonTrackParticles",
63 "InDetTrackParticles",
64 "MSOnlyExtrapolatedMuonTrackParticles"},
65 "Collection of track containers to be decorated before this alg can be scheduled. truthLink decoration exploited "};
66 Gaudi::Property<std::string>
m_recoLink{
this,
"RecoLinkName",
"recoMuonLink" ,
"Decoration to the truth particle pointing to the muon"};
67 Gaudi::Property<bool>
m_associateWithInDetTP{
this,
"AssociateWithInDetTP",
false,
"force use of ID track particles for association"};
72 std::vector<unsigned int>& nprecHitsPerChamberLayer, std::vector<unsigned int>& nphiHitsPerChamberLayer,
73 std::vector<unsigned int>& ntrigEtaHitsPerChamberLayer)
const;
78 #endif // TRUTHPARTICLEALGS_MUONTRUTHDECORATIONALG_H
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_muonTruthRecoLink
SG::ReadHandleKey< xAOD::MuonContainer > m_recoMuKey
std::vector< size_t > vec
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleNPrecMatched
Class providing the definition of the 4-vector interface.
An algorithm that can be simultaneously executed in multiple threads.
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
SG::ReadDecorHandleKeyArray< xAOD::TrackParticleContainer > m_trkTruthKeys
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleOrigin
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Gaudi::Property< bool > m_associateWithInDetTP
StatusCode initialize() override
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleType
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleNPhiMatched
Gaudi::Property< std::string > m_recoLink
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleNTrigEtaMatched
std::vector< Identifier > identifiers(const InDetSimDataCollection &coll)
MuonTruthAssociationAlg(const std::string &name, ISvcLocator *pSvcLocator)
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
void clear_dummys(const std::vector< unsigned long long > &identifiers, std::vector< unsigned int > &vec) const
StatusCode execute(const EventContext &ctx) const override
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthMuKey
Gaudi::Property< std::vector< std::string > > m_assocTrkContainers
SG::WriteDecorHandleKey< xAOD::MuonContainer > m_muonTruthParticleLink