ATLAS Offline Software
Loading...
Searching...
No Matches
SegmentDriftCircleAssValidation.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#ifndef SegmentDriftCircleAssValidation_H
6#define SegmentDriftCircleAssValidation_H
7
8#include <string>
9#include <map>
14
17
18//Drift circle
20
22
23namespace InDet {
24
25
26 // Class-algorithm for track cluster association validation
27 //
29 {
30
32 // Public methods:
34
35 public:
36
38 // Standard Algotithm methods
40
41 SegmentDriftCircleAssValidation(const std::string &name, ISvcLocator *pSvcLocator);
43 StatusCode initialize();
44 StatusCode execute();
45 StatusCode finalize();
46
48 // Print internal tool parameters and status
50
51 MsgStream& dump (MsgStream& out) const;
52 std::ostream& dump (std::ostream& out) const;
53
54 protected:
55
57 // Protected data
59
61 SG::ReadHandleKey<Trk::SegmentCollection> m_origtrackKey{ this, "OrigTracksLocation", "TRTSegments", "TRT Segments collection name" };
62 SG::ReadHandleKey<PRD_MultiTruthCollection> m_PRDTruthTRTKey{ this, "TruthNameTRT", "PRD_MultiTruthTRT", "PRD Multitruth collection name" };
63 SG::ReadHandleKey<TRT_DriftCircleContainer> m_circlesTRTKey{ this, "TRT_DriftCirclesName", "TRT_DriftCircles", "TRT Driftcircle container name" };
64 double m_pTmin ;
65 double m_tcut ;
66 double m_rapcut ;
67 int m_dccut ;
68 double m_rmin ;
69 double m_rmax ;
70
73 std::multimap<int,const Trk::PrepRawData*> m_kinecircle ;
74 std::list<int> m_allBarcodes ;
76 std::list<int> m_particles ;
77 std::multimap<int,int> m_allParticles ;
78 std::multimap<int,int> m_tracks ;
79 int m_efficiency[5]{} ;
80
82 // Protected methods
84
89
90 std::list<int> kine(const InDet::TRT_DriftCircle*, const PRD_MultiTruthCollection* prdCollection );
91 std::list<PRD_MultiTruthCollection::const_iterator>
93
95
96 std::list<PRD_MultiTruthCollection::const_iterator>
98
99 MsgStream& dumptools(MsgStream& out) const;
100 MsgStream& dumpevent(MsgStream& out) const;
101
102 };
103 MsgStream& operator << (MsgStream& ,const SegmentDriftCircleAssValidation&);
104 std::ostream& operator << (std::ostream&,const SegmentDriftCircleAssValidation&);
105}
106#endif // SegmentDriftCircleAssValidation_H
Property holding a SG store/key/clid from which a ReadHandle is made.
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
SG::ReadHandleKey< TRT_DriftCircleContainer > m_circlesTRTKey
SG::ReadHandleKey< Trk::SegmentCollection > m_origtrackKey
std::list< int > kine(const InDet::TRT_DriftCircle *, const PRD_MultiTruthCollection *prdCollection)
std::list< PRD_MultiTruthCollection::const_iterator > kinpart(const InDet::TRT_DriftCircle *, const PRD_MultiTruthCollection *)
std::multimap< int, const Trk::PrepRawData * > m_kinecircle
bool isTheSameStrawElement(int, const Trk::PrepRawData *)
SegmentDriftCircleAssValidation(const std::string &name, ISvcLocator *pSvcLocator)
void tracksComparison(const Trk::SegmentCollection *, const PRD_MultiTruthCollection *)
std::list< PRD_MultiTruthCollection::const_iterator > findTruth(const InDet::TRT_DriftCircle *, bool &, const PRD_MultiTruthCollection *)
SG::ReadHandleKey< PRD_MultiTruthCollection > m_PRDTruthTRTKey
void newCirclesEvent(const PRD_MultiTruthCollection *)
A PRD is mapped onto all contributing particles.
Property holding a SG store/key/clid from which a ReadHandle is made.
Primary Vertex Finder.
MsgStream & operator<<(MsgStream &, const GNNTrackFinderTritonTool &)
DataVector< Trk::Segment > SegmentCollection
-event-from-file