ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetRecAlgs
TRT_StandaloneTrackFinder
TRT_StandaloneTrackFinder
TRT_StandaloneTrackFinder.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
Header file for class TRT_StandaloneTrackFinder
7
(c) ATLAS Detector software
8
Algorithm for Trk::Track production in TRT only
9
Version 1.0: 09/28/2007
10
Authors : Thomas Koffas, Markus Elsing
11
email : Thomas.Koffas@cern.ch
12
**********************************************************************************/
13
14
#ifndef TRT_StandaloneTrackFinder_H
15
#define TRT_StandaloneTrackFinder_H
16
17
#include <array>
18
#include <string>
19
#include <mutex>
20
21
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
22
#include "GaudiKernel/ToolHandle.h"
23
25
#include "
TrkTrack/TrackCollection.h
"
26
#include "
TrkEventUtils/PRDtoTrackMap.h
"
27
#include "
InDetRecToolInterfaces/ITRT_SegmentToTrackTool.h
"
28
30
#include "
TrkSegment/SegmentCollection.h
"
31
#include "
StoreGate/ReadHandleKey.h
"
32
#include "
StoreGate/WriteHandleKey.h
"
33
34
#include "GaudiKernel/SystemOfUnits.h"
35
36
namespace
InDet
{
37
45
46
class
ITRT_SegmentToTrackTool
;
47
48
class
TRT_StandaloneTrackFinder
:
public
AthReentrantAlgorithm
49
{
50
52
// Public methods:
54
55
public
:
56
58
60
61
TRT_StandaloneTrackFinder
(
const
std::string &name, ISvcLocator *pSvcLocator);
62
virtual
~TRT_StandaloneTrackFinder
();
63
StatusCode
initialize
();
64
StatusCode
execute
(
const
EventContext& ctx)
const
;
65
StatusCode
finalize
();
66
68
70
71
MsgStream&
dump
(MsgStream& out)
const
;
72
73
private
:
74
76
/* Private data */
78
79
80
IntegerProperty
m_minNumDriftCircles
81
{
this
,
"MinNumDriftCircles"
, 15,
82
"Minimum number of drift circles for TRT segment tracks"
};
83
DoubleProperty
m_minPt
84
{
this
,
"MinPt"
, 1.0 * Gaudi::Units::GeV,
85
"Minimum pt cut for TRT only (used in preselection * 0.9)"
};
86
BooleanProperty
m_oldLogic
87
{
this
,
"OldTransitionLogic"
,
true
,
88
"use old transition region hit logic "
};
89
90
ToolHandle< ITRT_SegmentToTrackTool >
m_segToTrackTool
91
{
this
,
"TRT_SegToTrackTool"
,
"InDet::TRT_SegmentToTrackTool"
};
92
93
SG::ReadHandleKey<Trk::SegmentCollection >
m_Segments
94
{this ,
"InputSegmentsLocation"
,
"TRTSegments"
};
95
SG::ReadHandleKey<Trk::PRDtoTrackMap>
m_prdToTrackMap
96
{
this
,
"PRDtoTrackMap"
,
""
};
97
100
SG::WriteHandleKey<TrackCollection>
m_finalTracks
101
{
this
,
"OutputTracksLocation"
,
"TRTStandaloneTracks"
};
102
104
105
enum
ECounter
{
kNTrtSeg
,
106
kNUsedSeg
,
107
kNRejectedSeg
,
108
kNTrtSegGood
,
109
kNSegFailed
,
110
kNTrkScoreZeroTotal
,
111
kNTrkSegUsedTotal
,
112
kNTRTTrkTotal
,
113
kNCounter
};
114
115
typedef
std::array<int,kNCounter>
Counter_t
;
116
117
mutable
std::mutex m_statMutex
ATLAS_THREAD_SAFE
;
118
mutable
Counter_t
m_total
ATLAS_THREAD_SAFE
{};
119
MsgStream&
dumpContainerNames
(MsgStream& out)
const
;
120
static
MsgStream&
dumpevent
(MsgStream&,
const
InDet::TRT_StandaloneTrackFinder::Counter_t
&);
121
friend
MsgStream&
operator<<
(MsgStream&,
const
InDet::TRT_StandaloneTrackFinder::Counter_t
&);
122
};
123
124
MsgStream&
operator<<
(MsgStream&,
const
InDet::TRT_StandaloneTrackFinder::Counter_t
&);
125
126
}
127
128
129
MsgStream&
operator<<
(MsgStream&,
const
InDet::TRT_StandaloneTrackFinder
&);
130
131
#endif
// TRT_StandaloneTrackFinder_H
AthReentrantAlgorithm.h
ITRT_SegmentToTrackTool.h
PRDtoTrackMap.h
SegmentCollection.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
operator<<
MsgStream & operator<<(MsgStream &, const InDet::TRT_StandaloneTrackFinder &)
Definition
TRT_StandaloneTrackFinder.cxx:266
TrackCollection.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
InDet::ITRT_SegmentToTrackTool
Definition
ITRT_SegmentToTrackTool.h:41
InDet::TRT_StandaloneTrackFinder
InDet::TRT_StandaloneTrackFinde is an algorithm which produces tracks from stand-alone TRT segments w...
Definition
TRT_StandaloneTrackFinder.h:49
InDet::TRT_StandaloneTrackFinder::dumpevent
static MsgStream & dumpevent(MsgStream &, const InDet::TRT_StandaloneTrackFinder::Counter_t &)
Definition
TRT_StandaloneTrackFinder.cxx:214
InDet::TRT_StandaloneTrackFinder::Counter_t
std::array< int, kNCounter > Counter_t
Definition
TRT_StandaloneTrackFinder.h:115
InDet::TRT_StandaloneTrackFinder::execute
StatusCode execute(const EventContext &ctx) const
Definition
TRT_StandaloneTrackFinder.cxx:55
InDet::TRT_StandaloneTrackFinder::~TRT_StandaloneTrackFinder
virtual ~TRT_StandaloneTrackFinder()
InDet::TRT_StandaloneTrackFinder::ATLAS_THREAD_SAFE
std::mutex m_statMutex ATLAS_THREAD_SAFE
Definition
TRT_StandaloneTrackFinder.h:117
InDet::TRT_StandaloneTrackFinder::m_Segments
SG::ReadHandleKey< Trk::SegmentCollection > m_Segments
TRT segments to use.
Definition
TRT_StandaloneTrackFinder.h:94
InDet::TRT_StandaloneTrackFinder::dumpContainerNames
MsgStream & dumpContainerNames(MsgStream &out) const
Definition
TRT_StandaloneTrackFinder.cxx:225
InDet::TRT_StandaloneTrackFinder::m_minNumDriftCircles
IntegerProperty m_minNumDriftCircles
Definition
TRT_StandaloneTrackFinder.h:81
InDet::TRT_StandaloneTrackFinder::ECounter
ECounter
Global Counters for final algorithm statistics.
Definition
TRT_StandaloneTrackFinder.h:105
InDet::TRT_StandaloneTrackFinder::kNUsedSeg
@ kNUsedSeg
Number of TRT segments excluded at input (by BackTracking tracks).
Definition
TRT_StandaloneTrackFinder.h:106
InDet::TRT_StandaloneTrackFinder::kNSegFailed
@ kNSegFailed
Number of segments failing to translate to a track (inclusing refit).
Definition
TRT_StandaloneTrackFinder.h:109
InDet::TRT_StandaloneTrackFinder::kNTrtSeg
@ kNTrtSeg
Number of input TRT segments to be investigated per event.
Definition
TRT_StandaloneTrackFinder.h:105
InDet::TRT_StandaloneTrackFinder::kNTRTTrkTotal
@ kNTRTTrkTotal
Number of TRT-only tracks on output.
Definition
TRT_StandaloneTrackFinder.h:112
InDet::TRT_StandaloneTrackFinder::kNRejectedSeg
@ kNRejectedSeg
Number of segments rejected in selection at input.
Definition
TRT_StandaloneTrackFinder.h:107
InDet::TRT_StandaloneTrackFinder::kNTrkSegUsedTotal
@ kNTrkSegUsedTotal
Number of excluded segments by other TRT segments.
Definition
TRT_StandaloneTrackFinder.h:111
InDet::TRT_StandaloneTrackFinder::kNTrkScoreZeroTotal
@ kNTrkScoreZeroTotal
Number of tracks rejected by score zero.
Definition
TRT_StandaloneTrackFinder.h:110
InDet::TRT_StandaloneTrackFinder::kNTrtSegGood
@ kNTrtSegGood
Number of input TRT segments after cuts per event.
Definition
TRT_StandaloneTrackFinder.h:108
InDet::TRT_StandaloneTrackFinder::kNCounter
@ kNCounter
Definition
TRT_StandaloneTrackFinder.h:113
InDet::TRT_StandaloneTrackFinder::initialize
StatusCode initialize()
Definition
TRT_StandaloneTrackFinder.cxx:39
InDet::TRT_StandaloneTrackFinder::m_oldLogic
BooleanProperty m_oldLogic
Definition
TRT_StandaloneTrackFinder.h:87
InDet::TRT_StandaloneTrackFinder::m_finalTracks
SG::WriteHandleKey< TrackCollection > m_finalTracks
Tracks that will be passed out of AmbiProcessor.
Definition
TRT_StandaloneTrackFinder.h:101
InDet::TRT_StandaloneTrackFinder::m_prdToTrackMap
SG::ReadHandleKey< Trk::PRDtoTrackMap > m_prdToTrackMap
map between PRDs and tracks to identify shared hits.
Definition
TRT_StandaloneTrackFinder.h:96
InDet::TRT_StandaloneTrackFinder::m_segToTrackTool
ToolHandle< ITRT_SegmentToTrackTool > m_segToTrackTool
Segment to track tool.
Definition
TRT_StandaloneTrackFinder.h:91
InDet::TRT_StandaloneTrackFinder::TRT_StandaloneTrackFinder
TRT_StandaloneTrackFinder(const std::string &name, ISvcLocator *pSvcLocator)
Standard Algotithm methods.
Definition
TRT_StandaloneTrackFinder.cxx:28
InDet::TRT_StandaloneTrackFinder::finalize
StatusCode finalize()
Definition
TRT_StandaloneTrackFinder.cxx:196
InDet::TRT_StandaloneTrackFinder::m_minPt
DoubleProperty m_minPt
Definition
TRT_StandaloneTrackFinder.h:84
InDet::TRT_StandaloneTrackFinder::operator<<
friend MsgStream & operator<<(MsgStream &, const InDet::TRT_StandaloneTrackFinder::Counter_t &)
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
InDet::operator<<
MsgStream & operator<<(MsgStream &, const GNNTrackFinderTritonTool &)
dump
-event-from-file
Generated on
for ATLAS Offline Software by
1.17.0