ATLAS Offline Software
ActsFatrasWriteHandler.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // ActsFatrasWriteHandler.h, (c) ATLAS Detector software
8 
9 #ifndef ISF_ACTSTOOLS_ACTSFATRASWRITEHANDLER_H
10 #define ISF_ACTSTOOLS_ACTSFATRASWRITEHANDLER_H
11 
12 // GaudiKernel & Athena
15 
16 
17 // ISF
18 #include "ISF_Event/ISFParticle.h"
19 // Acts
20 #include "Acts/Geometry/TrackingGeometry.hpp"
21 // ActsFatras
22 #include "ActsFatras/EventData/Particle.hpp"
23 #include "ActsFatras/EventData/Hit.hpp"
24 // ATLAS
26 #include "InDetIdentifier/SCT_ID.h"
28 
29 
30 // STL
31 #include <utility>
32 #include <array>
33 #include <string>
34 
35 // class IHitCreator;
36 
46 {
47 public:
49  ActsFatrasWriteHandler(const std::string&,const std::string&,const IInterface*);
50 
53 
54  // Athena algtool's Hooks
55  virtual StatusCode initialize() override;
56  virtual StatusCode finalize() override;
57 
58  // Hits read & write to SG
59  StatusCode WriteHits(std::vector<SiHitCollection>& HitCollections,const EventContext& ctx) const;
60 
63  void createHits(const ISF::ISFParticle& isp,
64  std::shared_ptr<const Acts::TrackingGeometry> trackingGeometry,
65  const std::vector<ActsFatras::Hit>& hits,
66  SiHitCollection& pixelSiHits, SiHitCollection& sctSiHits) const; // override final;
67 
68 protected:
70  const SCT_ID* m_sctIdHelper{};
71 
72  std::array<StringProperty,2> m_HitCollectionNames{{{this,"PixelCollectionName","PixelHits_ActsFatras"},{this,"SCTCollectionName","SCT_Hits_ActsFatras"}}};
74 
75 };
76 
77 #endif
PixelID.h
This is an Identifier helper class for the Pixel subdetector. This class is a factory for creating co...
ActsFatrasWriteHandler::ActsFatrasWriteHandler
ActsFatrasWriteHandler(const std::string &, const std::string &, const IInterface *)
Constructor.
Definition: ActsFatrasWriteHandler.cxx:19
SCT_ID.h
This is an Identifier helper class for the SCT subdetector. This class is a factory for creating comp...
TRTCalib_Extractor.hits
hits
Definition: TRTCalib_Extractor.py:35
ActsFatrasWriteHandler::initialize
virtual StatusCode initialize() override
Definition: ActsFatrasWriteHandler.cxx:25
ActsFatrasWriteHandler::WriteHits
StatusCode WriteHits(std::vector< SiHitCollection > &HitCollections, const EventContext &ctx) const
Definition: ActsFatrasWriteHandler.cxx:42
AtlasHitsVector
Definition: AtlasHitsVector.h:33
ISF::ISFParticle
Definition: ISFParticle.h:42
SG::HandleKeyArray
Definition: StoreGate/StoreGate/HandleKeyArray.h:38
ActsFatrasWriteHandler::~ActsFatrasWriteHandler
~ActsFatrasWriteHandler()
Destructor.
Definition: ActsFatrasWriteHandler.cxx:23
ISFParticle.h
ActsFatrasWriteHandler::finalize
virtual StatusCode finalize() override
Definition: ActsFatrasWriteHandler.cxx:53
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
WriteHandleKeyArray.h
ActsFatrasWriteHandler::m_sctIdHelper
const SCT_ID * m_sctIdHelper
the SCT ID helper
Definition: ActsFatrasWriteHandler.h:70
ActsFatrasWriteHandler::m_HitCollectionNames
std::array< StringProperty, 2 > m_HitCollectionNames
Definition: ActsFatrasWriteHandler.h:72
SCT_ID
Definition: SCT_ID.h:68
ActsFatrasWriteHandler
Definition: ActsFatrasWriteHandler.h:46
AthAlgTool
Definition: AthAlgTool.h:26
ActsFatrasWriteHandler::m_HitCollectionKeys
SG::WriteHandleKeyArray< SiHitCollection > m_HitCollectionKeys
Definition: ActsFatrasWriteHandler.h:73
PixelID
Definition: PixelID.h:67
ActsFatrasWriteHandler::createHits
void createHits(const ISF::ISFParticle &isp, std::shared_ptr< const Acts::TrackingGeometry > trackingGeometry, const std::vector< ActsFatras::Hit > &hits, SiHitCollection &pixelSiHits, SiHitCollection &sctSiHits) const
Loop over the hits and call the hit creator, provide the ActsFatras::Particle to create the hits.
Definition: ActsFatrasWriteHandler.cxx:58
ActsFatrasWriteHandler::m_pixIdHelper
const PixelID * m_pixIdHelper
the Pixel ID helper
Definition: ActsFatrasWriteHandler.h:69
SiHitCollection.h