ATLAS Offline Software
Loading...
Searching...
No Matches
FPGAActsTrkConverter.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef FPGATrkConverter_FPGAACTSTRKCONVERTER__H
6#define FPGATrkConverter_FPGAACTSTRKCONVERTER__H 1
7
10
13
14class PixelID;
15class SCT_ID;
16
17class FPGAActsTrkConverter : public extends<AthAlgTool,IFPGAActsTrkConverter> {
18 public:
19
20 FPGAActsTrkConverter(const std::string& type,
21 const std::string& name,
22 const IInterface* parent);
23 virtual ~FPGAActsTrkConverter() = default;
24 virtual StatusCode initialize() override final;
25 virtual StatusCode findProtoTracks(const EventContext& ctx,
26 const xAOD::PixelClusterContainer & pixelContainer,
27 const xAOD::StripClusterContainer & stripContainer,
28 std::vector<ActsTrk::ProtoTrack> & foundProtoTracks,
29 const std::vector<std::vector<FPGATrackSimHit>>& hitsInRoads,
30 const std::vector<FPGATrackSimRoad>& roads) const override final;
31 virtual StatusCode findProtoTracks(const EventContext& ctx,
32 const xAOD::PixelClusterContainer & pixelContainer,
33 const xAOD::StripClusterContainer & stripContainer,
34 std::vector<ActsTrk::ProtoTrack> & foundProtoTracks,
35 const std::vector<FPGATrackSimTrack>& tracks) const override final;
37 std::unique_ptr<Acts::BoundTrackParameters> makeParams (const FPGATrackSimRoad &road) const;
38 std::unique_ptr<Acts::BoundTrackParameters> makeParams (const FPGATrackSimTrack &track) const;
39
40 template <typename XAOD_CLUSTER>
41 StatusCode matchTrackMeasurements(const EventContext& ctx,
42 const XAOD_CLUSTER& cluster,
43 const FPGATrackSimHit & trackHit,
44 std::vector<ActsTrk::ATLASUncalibSourceLink>& measurements,
45 const DataVector<XAOD_CLUSTER>& clusterContainer) const;
46
47 StatusCode findPrototrackMeasurements( const EventContext& ctx,
48 const xAOD::PixelClusterContainer &pixelClusterContainer,
49 const xAOD::StripClusterContainer &stripClusterContainer,
50 const std::multimap<xAOD::DetectorIdentType, const xAOD::PixelCluster*> & pixelClusterMap,
51 const std::multimap<xAOD::DetectorIdentType, const xAOD::StripCluster*> & stripClusterMap,
52 std::vector<ActsTrk::ATLASUncalibSourceLink>& measurements,
54 private:
56 const SCT_ID* m_SCTId{nullptr};
57
58 };
59
60#endif
#define protected
This is an Identifier helper class for the Pixel subdetector.
This is an Identifier helper class for the SCT subdetector.
Derived DataVector<T>.
Definition DataVector.h:795
FPGAActsTrkConverter(const std::string &type, const std::string &name, const IInterface *parent)
StatusCode findPrototrackMeasurements(const EventContext &ctx, const xAOD::PixelClusterContainer &pixelClusterContainer, const xAOD::StripClusterContainer &stripClusterContainer, const std::multimap< xAOD::DetectorIdentType, const xAOD::PixelCluster * > &pixelClusterMap, const std::multimap< xAOD::DetectorIdentType, const xAOD::StripCluster * > &stripClusterMap, std::vector< ActsTrk::ATLASUncalibSourceLink > &measurements, const std::vector< FPGATrackSimHit > &hits) const
virtual ~FPGAActsTrkConverter()=default
virtual StatusCode findProtoTracks(const EventContext &ctx, const xAOD::PixelClusterContainer &pixelContainer, const xAOD::StripClusterContainer &stripContainer, std::vector< ActsTrk::ProtoTrack > &foundProtoTracks, const std::vector< std::vector< FPGATrackSimHit > > &hitsInRoads, const std::vector< FPGATrackSimRoad > &roads) const override final
std::unique_ptr< Acts::BoundTrackParameters > makeParams(const FPGATrackSimRoad &road) const
virtual StatusCode initialize() override final
StatusCode matchTrackMeasurements(const EventContext &ctx, const XAOD_CLUSTER &cluster, const FPGATrackSimHit &trackHit, std::vector< ActsTrk::ATLASUncalibSourceLink > &measurements, const DataVector< XAOD_CLUSTER > &clusterContainer) const
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
STL class.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
STL namespace.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
#define private