ATLAS Offline Software
Loading...
Searching...
No Matches
FPGADataFormatAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4
5
6
7#ifndef EFTRACKING_FPGA_INTEGRATION_FPGADATAFORMATTER_BASE_H
8#define EFTRACKING_FPGA_INTEGRATION_FPGADATAFORMATTER_BASE_H
9
10// Athena include
14#include "FPGADataFormatTool.h"
15#include "TestVectorTool.h"
17#include "xAODClusterMaker.h"
18#include "xAODSpacePointMaker.h"
19#include "GaudiKernel/ServiceHandle.h"
20#include "GaudiKernel/IChronoSvc.h"
21
22// STL include
23#include <string>
24#include <vector>
25
30{
31 public:
32 using AthReentrantAlgorithm::AthReentrantAlgorithm;
33
34 virtual StatusCode initialize() override;
35
39 virtual StatusCode execute(const EventContext &ctx) const override;
40
41 private:
42 SG::ReadHandleKey<PixelRDO_Container> m_pixelRDOKey { this, "PixelRDO", "ITkPixelRDOs" };
43 SG::ReadHandleKey<SCT_RDO_Container> m_stripRDOKey { this, "StripRDO", "ITkStripRDOs" };
44
45 // Test vector related properties
46 Gaudi::Property<std::string> m_pixelEDMRefTVPath{this, "PixelEDMRefTV", "",
47 "Path to pixel EDM L2G reference test vector"};
48 Gaudi::Property<std::string> m_stripEDMRefTVPath{this, "StripEDMRefTV", "",
49 "Path to strip EDM L2G reference test vector"};
50 Gaudi::Property<std::string> m_spacePointRefTVPath{this, "SpacePointRefTV", "",
51 "Path to space point reference test vector"};
52
53 // Tool for converting the RDO into FPGA format
54 ToolHandle<FPGADataFormatTool> m_FPGADataFormatTool{this, "FPGADataFormatTool", "FPGADataFormatTool", "tool to convert RDOs into FPGA data format"};
55
56 // Tool for reading in TV
57 ToolHandle<TestVectorTool> m_testVectorTool{this, "TestVectorTool", "TestVectorTool", "tool to read in test vector"};
58
59 // Tool for output conversion
60 ToolHandle<OutputConversionTool> m_outputConversionTool{this, "OutputConversionTool", "OutputConversionTool", "tool for output conversion"};
61
62 // Tool for making xAOD containers
63 ToolHandle<xAODClusterMaker> m_xAODClusterMaker{this, "xAODClusterMaker", "xAODClusterMaker", "tool for making xAOD cluster"};
64 ToolHandle<xAODSpacePointMaker> m_xAODSpacePointMaker{this, "xAODSpacePointMaker", "xAODSpacePointMaker", "tool for making xAOD space point"};
65
66 // Chrono service
68};
69
70#endif // EFTRACKING_FPGA_INTEGRATION_INTEGRATION_BASE_H
An algorithm that can be simultaneously executed in multiple threads.
Testing alogrithms for RDO to FPGA data converted.
SG::ReadHandleKey< SCT_RDO_Container > m_stripRDOKey
SG::ReadHandleKey< PixelRDO_Container > m_pixelRDOKey
virtual StatusCode initialize() override
Gaudi::Property< std::string > m_spacePointRefTVPath
Space point reference test vector.
ToolHandle< TestVectorTool > m_testVectorTool
Gaudi::Property< std::string > m_pixelEDMRefTVPath
Pixel L2G reference test vector.
virtual StatusCode execute(const EventContext &ctx) const override
Performs the data convertsion.
ToolHandle< OutputConversionTool > m_outputConversionTool
ToolHandle< xAODSpacePointMaker > m_xAODSpacePointMaker
Gaudi::Property< std::string > m_stripEDMRefTVPath
Strip L2G reference test vector.
ServiceHandle< IChronoStatSvc > m_chronoSvc
ToolHandle< FPGADataFormatTool > m_FPGADataFormatTool
ToolHandle< xAODClusterMaker > m_xAODClusterMaker
Property holding a SG store/key/clid from which a ReadHandle is made.