ATLAS Offline Software
Loading...
Searching...
No Matches
xAODClusterMaker.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
12
13#ifndef EFTRACKINGFPGAINTEGRATION_XAODCLUSTERMAKER_H
14#define EFTRACKINGFPGAINTEGRATION_XAODCLUSTERMAKER_H
15
17#include "GaudiKernel/StatusCode.h"
18#include "GaudiKernel/EventContext.h"
20
23
26
27#include "GaudiKernel/ServiceHandle.h"
28#include "GaudiKernel/IChronoStatSvc.h"
29
34class xAODClusterMaker : public extends<AthAlgTool, IEFTrackingFPGAIntegrationTool> {
35public:
36 using extends::extends;
37
41 StatusCode initialize() override;
42
52 const EFTrackingTransient::Metadata *metadata,
53 const EventContext &ctx) const;
54
63 const uint32_t* stripClusters,
64 const EFTrackingTransient::Metadata *metadata,
65 const EventContext &ctx) const;
66
67
77 const EFTrackingTransient::Metadata *metadata,
78 const EventContext &ctx) const;
79
88 const uint32_t* pixelClusters,
89 const EFTrackingTransient::Metadata *metadata,
90 const EventContext &ctx) const;
91
92
93private:
96 this, "PixelClusterContainerKey", "FPGAPixelClusters",
97 "Key for output pixel cluster container"};
98
101 this, "StripClusterContainerKey", "FPGAStripClusters",
102 "Key for output strip cluster container"};
103
104 Gaudi::Property<bool> m_doBulkCopy{this, "DoBulkCopy", true, "Do bulk copy"};
105
106 ServiceHandle<IChronoStatSvc> m_chronoSvc{this, "ChronoStatSvc", "ChronoStatSvc"};
107};
108
109#endif
Property holding a SG store/key/clid from which a WriteHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
Creates xAOD pixel and strip cluster containers from FPGA input.
StatusCode makeStripClusterContainer(const EFTrackingTransient::StripClusterAuxInput &scAux, const EFTrackingTransient::Metadata *metadata, const EventContext &ctx) const
Make the strip cluster container.
StatusCode initialize() override
Initialise the tool.
SG::WriteHandleKey< xAOD::StripClusterContainer > m_stripClustersKey
Key for the strip clusters container to be created.
StatusCode makePixelClusterContainer(const EFTrackingTransient::PixelClusterAuxInput &pxAux, const EFTrackingTransient::Metadata *metadata, const EventContext &ctx) const
Make the pixel cluster container.
SG::WriteHandleKey< xAOD::PixelClusterContainer > m_pixelClustersKey
Key for the pixel clusters container to be created.
ServiceHandle< IChronoStatSvc > m_chronoSvc
Gaudi::Property< bool > m_doBulkCopy
Do bulk copy method.
The structure of the Metadata containing data after clusterization.
The PixelClusterAuxInput struct is used to simplify the creaction of the xAOD::PixelClusterContainer.
The StripClusterAuxInput struct is used to simplify the creaction of the xAOD::StripClusterContainer.