ATLAS Offline Software
Loading...
Searching...
No Matches
TruthSegmentWriter.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3 */
4#ifndef MUONACTSDUMP_TRUTHSEGMENTWRITER_H
5#define MUONACTSDUMP_TRUTHSEGMENTWRITER_H
6
8
12
16
19
21
22
23namespace Acts{
24 class Surface;
25}
26
27namespace MuonValR4{
29 public:
31 virtual StatusCode initialize() override final;
32 virtual StatusCode execute(const EventContext& ctx)override final;
33 virtual StatusCode finalize() override final;
34 private:
36 const Acts::Surface& getSurface(const Identifier& simHitId) const;
38 const Acts::Surface& getSurface(const xAOD::MuonSegment& segment) const;
40 PublicToolHandle<ActsTrk::ITrackingGeometryTool> m_trackingGeometryTool{this, "TrackingGeometryTool", ""};
41
43 SG::ReadHandleKey<xAOD::MuonSegmentContainer> m_segmentKey{this, "segmentKey", "MuonTruthSegments"};
46
48 ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
51
53 MuonVal::MuonTesterTree m_tree{"MuonTruth", "ActsMuonTruthDump"};
55 MuonVal::ScalarBranch<std::uint32_t>& m_eventId{m_tree.newScalar<std::uint32_t>("event_id")};
57 std::shared_ptr<MuonPRDTest::SegmentVariables> m_segmentBranches{};
59 std::shared_ptr<MuonVal::CoordSystemsBranch> m_segmentFrames{};
61 std::shared_ptr<MuonVal::IParticleFourMomBranch> m_truthTrks{};
62
63
64
65 };
66}
67
68
69#endif
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
virtual StatusCode initialize() override final
virtual StatusCode execute(const EventContext &ctx) override final
Execute method.
virtual StatusCode finalize() override final
std::shared_ptr< MuonVal::IParticleFourMomBranch > m_truthTrks
The pointer to the associated truth particles.
SG::ReadHandleKey< xAOD::MuonSegmentContainer > m_segmentKey
Data dependency on the truth segment container.
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
The tool handle of the tracking geometry tool.
std::shared_ptr< MuonVal::CoordSystemsBranch > m_segmentFrames
Pointer to the associated track vari.
MuonVal::ScalarBranch< std::uint32_t > & m_eventId
The event number in this event.
const MuonGMR4::MuonDetectorManager * m_detMgr
The muon detector manager.
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Service handle towards the IdHelper svc.
MuonVal::MuonTesterTree m_tree
instance to the Event tree
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
std::shared_ptr< MuonPRDTest::SegmentVariables > m_segmentBranches
The pointer to the segment variables.
const Acts::Surface & getSurface(const Identifier &simHitId) const
Retrieves the surface associated with a sim hit identifier.
SG::ReadDecorHandleKey< xAOD::MuonSegmentContainer > m_truthLinkKey
Data dependency on the truth particle link.
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
Lightweight algorithm to read xAOD MDT sim hits and (fast-digitised) drift circles from SG and fill a...
MuonSegment_v1 MuonSegment
Reference the current persistent version: