|
ATLAS Offline Software
|
Go to the documentation of this file.
23 #include "GaudiKernel/SystemOfUnits.h"
31 (
const std::string&
name, ISvcLocator* pSvcLocator)
60 return StatusCode::SUCCESS;
78 return StatusCode::FAILURE;
85 if(!prd_to_track_map.
isValid()){
87 return StatusCode::FAILURE;
89 prd_to_track_map_cptr = prd_to_track_map.
cptr();
95 ATH_MSG_DEBUG (
"Begin looping over all TRT segments in the event");
115 ATH_MSG_DEBUG (
"Segment pt = " << std::abs(
sin(
p(3))/
p(4)) <<
" , fails pre-cut, drop it !");
131 bool is_toLower =
false;
146 ATH_MSG_DEBUG (
"Segment fails number of DC requirements, reject it");
151 ATH_MSG_DEBUG (
"Segment considered for further processing, enter into list");
158 ATH_MSG_DEBUG (
"Failed to make a track out of the TRT segment!");
164 if((
int)ttsos->
size()<10) {
180 std::unique_ptr<TrackCollection> final_tracks(
m_segToTrackTool->resolveTracks(prd_to_track_map.
cptr(),event_data));
182 ATH_MSG_WARNING (
"Could not save the reconstructed TRT seeded Si tracks!");
183 return StatusCode::FAILURE;
191 std::lock_guard<std::mutex> lock(m_statMutex);
200 return StatusCode::SUCCESS;
210 return StatusCode::SUCCESS;
238 const std::string::size_type max_width =65;
241 <<
"|----------------------------------------------------------------------"
242 <<
"-------------------|"<<std::endl;
243 out<<
"| Location of input tracks | "<<
m_Segments.key() << std::setw( max_width-
m_Segments.key().size())<<
" " <<
"|" <<std::endl;
245 out<<
"|----------------------------------------------------------------------"
246 <<
"-------------------|";
257 <<
"|-------------------------------------------------------------------|" <<std::endl;
258 out<<
"| Investigated |" <<std::endl;
262 out<<
"|-------------------------------------------------------------------|" <<std::endl;
268 out<<
"|-------------------------------------------------------------------|";
@ kNTrtSegGood
Number of input TRT segments after cuts per event.
MsgStream & operator<<(MsgStream &, const GNNTrackReaderTool &)
@ kNSegFailed
Number of segments failing to translate to a track (inclusing refit)
Eigen::Matrix< double, Eigen::Dynamic, 1 > VectorX
Dynamic Vector - dynamic allocation.
@ kNTrtSeg
Number of input TRT segments to be investigated per event.
const_pointer_type cptr()
Dereference the pointer.
double m_minPt
Minimum pt cut for TRT only (used in preselection * 0.9)
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
@ kNUsedSeg
Number of TRT segments excluded at input (by BackTracking tracks)
bool m_oldLogic
use old transition region hit logic
const std::string & key() const
Return the StoreGate ID for the referenced object.
TRT_StandaloneTrackFinder(const std::string &name, ISvcLocator *pSvcLocator)
Standard Algotithm methods
SG::ReadHandleKey< Trk::PRDtoTrackMap > m_prdToTrackMap
map between PRDs and tracks to identify shared hits.
StatusCode execute(const EventContext &ctx) const
unsigned int numberOfMeasurementBases() const
Return the number of contained Trk::MeasurementBase (s)
An algorithm that can be simultaneously executed in multiple threads.
@ kNTrkSegUsedTotal
Number of excluded segments by other TRT segments.
@ kNRejectedSeg
Number of segments rejected in selection at input.
::StatusCode StatusCode
StatusCode definition for legacy code.
ToolHandle< ITRT_SegmentToTrackTool > m_segToTrackTool
Segment to track tool.
MsgStream & dumpContainerNames(MsgStream &out) const
SG::WriteHandleKey< TrackCollection > m_finalTracks
Tracks that will be passed out of AmbiProcessor.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
MsgStream & dump(MsgStream &out) const
Print internal tool parameters and status
static MsgStream & dumpevent(MsgStream &, const InDet::TRT_StandaloneTrackFinder::Counter_t &)
@ kNTRTTrkTotal
Number of TRT-only tracks on output.
const LocalParameters & localParameters() const
Interface method to get the LocalParameters.
const DataVector< const MeasurementBase > * measurementsOnTrack() const
return a pointer to a vector of MeasurementBase (NOT including any that come from outliers).
SG::ReadHandleKey< Trk::SegmentCollection > m_Segments
TRT segments to use.
std::array< int, kNCounter > Counter_t
#define ATH_MSG_WARNING(x)
int m_minNumDriftCircles
Minimum number of drift circles for TRT segment tracks.
virtual ~TRT_StandaloneTrackFinder()
size_type size() const noexcept
Returns the number of elements in the collection.
@ kNTrkScoreZeroTotal
Number of tracks rejected by score zero.