ATLAS Offline Software
Loading...
Searching...
No Matches
HoleSearchValidation.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
6// HoleSearchValidation.h, (c) ATLAS Detector software
8
9#ifndef TRK_HOLESEARCHVALIDATION_H
10#define TRK_HOLESEARCHVALIDATION_H
11
12// Gaudi includes
15#include "GaudiKernel/ToolHandle.h"
16#include "GaudiKernel/ServiceHandle.h"
18
20#include <mutex>
21
22// forward declarations
23class AtlasDetectorID;
24class PixelID;
25class SCT_ID;
26class TRT_ID;
27class SiliconID;
28
29namespace CLHEP {
30 class HepRandomEngine;
31}
32
33namespace Trk {
36 class Track;
37}
38
49
50namespace InDet {
51
53 public:
55 HoleSearchValidation(const std::string& name, ISvcLocator* pSvcLocator);
58
60 StatusCode initialize();
62 StatusCode execute(const EventContext& ctx) const;
64 StatusCode finalize();
65
66 private:
67
68 void printInfoTSoS( const Trk::TrackStateOnSurface* tsos) const;
69 unsigned int doHoleSearch( const Trk::Track* track) const;
70
73 const SCT_ID* m_sctID;
74 const TRT_ID* m_trtID;
76
77 ToolHandle<Trk::ITrackHoleSearchTool> m_holeSearchTool;
80 //unsigned int m_numberHitsToRemove; //!< jobOption: number of hits to remove from tracks
81 //unsigned int m_numberHitsToKeep; //!< jobOption: number of hits to remove
83
84
105
109
111 unsigned int m_maxNumberOfHoles;
112
114 std::string m_randomEngineName;
115
116 // some information for statistics -> printout in finalize
117 mutable std::mutex m_trackStatsMutex;
118 mutable std::vector< std::vector< unsigned int > > m_trackStats ATLAS_THREAD_SAFE;
119
120 }; // end of class
121
122} // close of namespace
123
124#endif // TRK_HOLESEARCHVALIDATION_H
125
Define macros for attributes used to control the static checker.
An algorithm that can be simultaneously executed in multiple threads.
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
SG::WriteHandleKey< TrackCollection > m_trackCollectionOutputKey
jobOption: name of the TrackCollection
std::vector< std::vector< unsigned int > > m_trackStats ATLAS_THREAD_SAFE
ServiceHandle< IAthRNGSvc > m_rndmGenSvc
Random number generator.
StatusCode finalize()
standard Athena-Algorithm method
StatusCode initialize()
standard Athena-Algorithm method
std::string m_randomEngineName
Name of the random number stream.
HoleSearchValidation(const std::string &name, ISvcLocator *pSvcLocator)
Standard Athena-Algorithm Constructor.
SG::ReadHandleKey< TrackCollection > m_trackCollectionKey
jobOption: name of the TrackCollection
const AtlasDetectorID * m_idHelper
StatusCode execute(const EventContext &ctx) const
standard Athena-Algorithm method
bool m_saveNewTracksInSG
jobOption: save new tracks to SG ?
~HoleSearchValidation()
Default Destructor.
void printInfoTSoS(const Trk::TrackStateOnSurface *tsos) const
ToolHandle< Trk::ITrackHoleSearchTool > m_holeSearchTool
unsigned int doHoleSearch(const Trk::Track *track) 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
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
This is an Identifier helper class for both the Pixel and SCT subdetectors.
Definition SiliconID.h:42
This is an Identifier helper class for the TRT subdetector.
Definition TRT_ID.h:82
interface for searching, counting and adding holes on tracks anywhere in ATLAS.
represents the track state (measurement, material, fit parameters and quality) at a surface.
Primary Vertex Finder.
Ensure that the ATLAS eigen extensions are properly loaded.