ATLAS Offline Software
Loading...
Searching...
No Matches
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
19// Acts
20#include "Acts/Geometry/TrackingGeometry.hpp"
21// ActsFatras
22#include "ActsFatras/EventData/Particle.hpp"
23#include "ActsFatras/EventData/Hit.hpp"
24// ATLAS
28
29
30// STL
31#include <utility>
32#include <array>
33#include <string>
34
35// class IHitCreator;
36
44
46{
47public:
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
68protected:
71
72 std::array<StringProperty,2> m_HitCollectionNames{{{this,"PixelCollectionName","PixelHits_ActsFatras"},{this,"SCTCollectionName","SCT_Hits_ActsFatras"}}};
74
75};
76
77#endif
This is an Identifier helper class for the Pixel subdetector.
This is an Identifier helper class for the SCT subdetector.
AtlasHitsVector< SiHit > SiHitCollection
StatusCode WriteHits(std::vector< SiHitCollection > &HitCollections, const EventContext &ctx) const
SG::WriteHandleKeyArray< SiHitCollection > m_HitCollectionKeys
std::array< StringProperty, 2 > m_HitCollectionNames
virtual StatusCode initialize() override
const PixelID * m_pixIdHelper
the Pixel ID helper
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.
virtual StatusCode finalize() override
const SCT_ID * m_sctIdHelper
the SCT ID helper
ActsFatrasWriteHandler(const std::string &, const std::string &, const IInterface *)
Constructor.
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
The generic ISF particle definition,.
Definition ISFParticle.h:42
This is an Identifier helper class for the Pixel subdetector.
Definition PixelID.h:67
This is an Identifier helper class for the SCT subdetector.
Definition SCT_ID.h:68
HandleKeyArray< WriteHandle< T >, WriteHandleKey< T >, Gaudi::DataHandle::Writer > WriteHandleKeyArray