ATLAS Offline Software
Loading...
Searching...
No Matches
FPGATrackSimActsTrackInspectionTool.h
Go to the documentation of this file.
1// Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2
3#ifndef FPGATRACKSIMACTSTRACKINSPECTIONTOOL_H
4#define FPGATRACKSIMACTSTRACKINSPECTIONTOOL_H
5
8
9
10#include <deque>
11#include <memory>
12#include <map>
13#include <vector>
14#include <string>
15
16namespace FPGATrackSim {
18 public:
19
20 ActsTrackInspectionTool(const std::string&, const std::string&, const IInterface*);
21 virtual ~ActsTrackInspectionTool() = default;
22
23 virtual StatusCode initialize() override;
24
26 struct Measurement {
27 unsigned long identifier;
28 std::string type; // "Pixel" or "Strip"
30 double x = 0;
31 double y = 0;
32 double z = 0;
34 // Acts flags
35 bool measurementFlag = false;
36 bool outlierFlag = false;
37 bool holeFlag = false;
38 bool materialFlag = false;
39 bool sharedHitFlag = false;
40 };
41 Acts::BoundVector parameters = {};
42 std::deque<std::unique_ptr<Measurement>> trackMeasurements;
43 double chi2 = 0.0;
44 unsigned int ndof = 0u;
45 };
46
47 // Typedef within the class
48 using fpgaActsEventTracks = std::vector<std::unique_ptr<FpgaActsTrack>>;
49
50 fpgaActsEventTracks getActsTracks (const ActsTrk::TrackContainer& tracksContainer) const;
51 std::string getPrintoutActsEventTracks(const fpgaActsEventTracks& tracks) const;
52 std::string getPrintoutStatistics(const std::map<std::string, std::map<uint32_t,std::vector<uint32_t>> >& tracksForAllEvents) const;
53 private:
54 mutable std::vector<std::unique_ptr<FpgaActsTrack>> m_actsTracks ATLAS_THREAD_SAFE;
55 };
56}
57
58//typedef for all acts tracks of one event
60
61#endif
FPGATrackSim::ActsTrackInspectionTool::fpgaActsEventTracks FPGATrackSimActsEventTracks
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
std::string getPrintoutStatistics(const std::map< std::string, std::map< uint32_t, std::vector< uint32_t > > > &tracksForAllEvents) const
std::string getPrintoutActsEventTracks(const fpgaActsEventTracks &tracks) const
std::vector< std::unique_ptr< FpgaActsTrack > > fpgaActsEventTracks
ActsTrackInspectionTool(const std::string &, const std::string &, const IInterface *)
fpgaActsEventTracks getActsTracks(const ActsTrk::TrackContainer &tracksContainer) const
virtual ~ActsTrackInspectionTool()=default
std::vector< std::unique_ptr< FpgaActsTrack > > m_actsTracks ATLAS_THREAD_SAFE
struct FPGATrackSim::ActsTrackInspectionTool::FpgaActsTrack::Measurement::globalCoordinates coordinates