ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetCalibAlgs
TRT_CalibAlgs
TRT_CalibAlgs
TRTCalibrationMgr.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRT_CALIBALGS_TRTCALIBRATIONMGR_H
6
#define TRT_CALIBALGS_TRTCALIBRATIONMGR_H
7
8
#include "
TRT_CalibTools/ITRTCalibrator.h
"
9
#include <string>
10
#include <vector>
11
#include "
AthenaBaseComps/AthAlgorithm.h
"
12
#include "GaudiKernel/ToolHandle.h"
13
#include "GaudiKernel/ServiceHandle.h"
14
#include "
AthenaKernel/IAthenaOutputStreamTool.h
"
15
#include "
xAODEventInfo/EventInfo.h
"
16
#include "
xAODTracking/VertexContainer.h
"
17
#include "
TrkTrack/TrackCollection.h
"
18
#include "
TrkTrack/Track.h
"
19
#include "
StoreGate/ReadHandleKey.h
"
20
#include "
TRT_ConditionsData/RtRelationMultChanContainer.h
"
21
#include "
TRT_ConditionsData/StrawT0MultChanContainer.h
"
22
#include "
CxxUtils/checker_macros.h
"
23
#include "
TRT_CalibTools/IFitTool.h
"
24
#include "
TrkFitterInterfaces/ITrackFitter.h
"
25
#include "
TrkToolInterfaces/ITrackSelectorTool.h
"
26
#include "
TRT_CalibTools/IFillAlignTrkInfo.h
"
27
#include "
TRT_CalibData/TrackInfo.h
"
28
29
30
class
IAccumulator
;
31
32
54
55
// TRTCalibrator is called by TRTCalibrationMgr and is not thread-safe.
56
// But the job calling TRTCalibrator reconstructs only one event, in order to get access to Athena tools. This job never run multi-threaded.
57
class
ATLAS_NOT_THREAD_SAFE
TRTCalibrationMgr
:
public
AthAlgorithm
58
{
59
60
public
:
61
TRTCalibrationMgr
(
const
std::string &name, ISvcLocator *pSvcLocator);
62
~TRTCalibrationMgr
(
void
);
63
64
typedef
TRTCond::RtRelationMultChanContainer
RtRelationContainer
;
65
typedef
TRTCond::StrawT0MultChanContainer
StrawT0Container
;
66
67
virtual
StatusCode
initialize
(
void
)
override
;
68
virtual
StatusCode
execute
(
const
EventContext& ctx)
override
;
69
virtual
StatusCode
finalize
(
void
)
override
;
70
StatusCode
streamOutCalibObjects
();
71
72
private
:
73
74
// Tools for the algorithm
75
ToolHandleArray<IFillAlignTrkInfo>
m_TrackInfoTools
{
this
,
"AlignTrkTools"
, {},
""
};
76
PublicToolHandleArray<ITRTCalibrator>
m_TRTCalibTools
{
this
,
"TRTCalibrator"
, {},
""
};
77
ToolHandleArray<IFitTool>
m_FitTools
{
this
,
"FitTools"
, {},
""
};
78
ToolHandle<Trk::ITrackFitter>
m_trackFitter
{
this
,
"TrackFitter"
,
"Trk::GlobalChi2Fitter/InDetTrackFitter"
,
""
};
79
ToolHandle<Trk::ITrackSelectorTool>
m_trackSelector
{
this
,
"TrackSelectorTool"
,
"InDet::InDetTrackSelectorTool/InDetTrackSelectorTool"
,
"Tool for the selection of tracks"
};
80
ToolHandle<IAthenaOutputStreamTool>
m_streamer
{
this
,
"StreamTool"
,
"AthenaOutputStreamTool/CondStream1"
,
"OutputStreamTool"
};
81
82
// Gaudi properties
83
Gaudi::Property<bool>
m_dorefit
{
this
,
"DoRefit"
, true ,
"Does a Re-Fit"
};
84
Gaudi::Property<bool>
m_docalibrate
{
this
,
"DoCalibrate"
,
false
,
"Does the calibration"
};
85
Gaudi::Property<bool>
m_writeConstants
{
this
,
"WriteConstants"
,
false
,
"Write out the calibration constants"
};
86
87
Gaudi::Property<unsigned int>
m_max_ntrk
{
this
,
"Max_ntrk"
, 100000,
""
};
88
89
Gaudi::Property<std::string>
m_par_rtcontainerkey
{
this
,
"Par_rtcontainer"
,
"/TRT/Calib/RT"
,
""
};
90
Gaudi::Property<std::string>
m_par_t0containerkey
{
this
,
"par_t0container"
,
"/TRT/Calib/T0"
,
""
};
91
92
93
int
m_ntrk
= 0;
94
95
// ReadHandleKeys
96
SG::ReadHandleKey<xAOD::VertexContainer>
m_verticesKey
{
this
,
"VerticesKey"
,
"PrimaryVertices"
,
"RHK for primary vertices"
};
97
SG::ReadHandleKey<xAOD::EventInfo>
m_EventInfoKey
{
this
,
"EventInfoKey"
,
"EventInfo"
,
"RHK for xAOD::EventInfo"
};
98
SG::ReadHandleKey<TrackCollection>
m_TrkCollection
{
this
,
"TrkCollectionKey"
,
"CombinedInDetTracks"
,
"RHKs for track collections"
};
99
};
100
101
#endif
// TRT_CALIBALGS_TRTCALIBRATIONMGR_H
AthAlgorithm.h
IAthenaOutputStreamTool.h
Interface to an output stream tool.
IFillAlignTrkInfo.h
IFitTool.h
ITRTCalibrator.h
ITrackFitter.h
ITrackSelectorTool.h
TrackInfo.h
RtRelationMultChanContainer.h
Class for storing/accessing trt rtrelations with channels 1;95;0c.
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
StrawT0MultChanContainer.h
TrackCollection.h
Track.h
VertexContainer.h
checker_macros.h
Define macros for attributes used to control the static checker.
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition
checker_macros.h:212
AthAlgorithm::execute
virtual StatusCode execute(const EventContext &ctx)=0
Execute method.
AthAlgorithm::AthAlgorithm
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthAlgorithm.cxx:10
IAccumulator
Definition
IAccumulator.h:37
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
TRTCalibrationMgr::m_trackSelector
ToolHandle< Trk::ITrackSelectorTool > m_trackSelector
Definition
TRTCalibrationMgr.h:79
TRTCalibrationMgr::m_FitTools
ToolHandleArray< IFitTool > m_FitTools
Definition
TRTCalibrationMgr.h:77
TRTCalibrationMgr::m_TRTCalibTools
PublicToolHandleArray< ITRTCalibrator > m_TRTCalibTools
Definition
TRTCalibrationMgr.h:76
TRTCalibrationMgr::StrawT0Container
TRTCond::StrawT0MultChanContainer StrawT0Container
Definition
TRTCalibrationMgr.h:65
TRTCalibrationMgr::m_par_t0containerkey
Gaudi::Property< std::string > m_par_t0containerkey
Definition
TRTCalibrationMgr.h:90
TRTCalibrationMgr::m_docalibrate
Gaudi::Property< bool > m_docalibrate
Definition
TRTCalibrationMgr.h:84
TRTCalibrationMgr::RtRelationContainer
TRTCond::RtRelationMultChanContainer RtRelationContainer
Definition
TRTCalibrationMgr.h:64
TRTCalibrationMgr::m_TrackInfoTools
ToolHandleArray< IFillAlignTrkInfo > m_TrackInfoTools
Definition
TRTCalibrationMgr.h:75
TRTCalibrationMgr::m_par_rtcontainerkey
Gaudi::Property< std::string > m_par_rtcontainerkey
Definition
TRTCalibrationMgr.h:89
TRTCalibrationMgr::m_trackFitter
ToolHandle< Trk::ITrackFitter > m_trackFitter
Definition
TRTCalibrationMgr.h:78
TRTCalibrationMgr::finalize
virtual StatusCode finalize(void) override
Definition
TRTCalibrationMgr.cxx:214
TRTCalibrationMgr::TRTCalibrationMgr
TRTCalibrationMgr(const std::string &name, ISvcLocator *pSvcLocator)
Definition
TRTCalibrationMgr.cxx:28
TRTCalibrationMgr::m_ntrk
int m_ntrk
Definition
TRTCalibrationMgr.h:93
TRTCalibrationMgr::m_max_ntrk
Gaudi::Property< unsigned int > m_max_ntrk
Definition
TRTCalibrationMgr.h:87
TRTCalibrationMgr::m_EventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_EventInfoKey
Definition
TRTCalibrationMgr.h:97
TRTCalibrationMgr::m_verticesKey
SG::ReadHandleKey< xAOD::VertexContainer > m_verticesKey
Definition
TRTCalibrationMgr.h:96
TRTCalibrationMgr::m_writeConstants
Gaudi::Property< bool > m_writeConstants
Definition
TRTCalibrationMgr.h:85
TRTCalibrationMgr::m_dorefit
Gaudi::Property< bool > m_dorefit
Definition
TRTCalibrationMgr.h:83
TRTCalibrationMgr::m_streamer
ToolHandle< IAthenaOutputStreamTool > m_streamer
Definition
TRTCalibrationMgr.h:80
TRTCalibrationMgr::m_TrkCollection
SG::ReadHandleKey< TrackCollection > m_TrkCollection
Definition
TRTCalibrationMgr.h:98
TRTCalibrationMgr::streamOutCalibObjects
StatusCode streamOutCalibObjects()
Definition
TRTCalibrationMgr.cxx:230
TRTCond::RtRelationMultChanContainer
Multichannel container for RtRelation objects.
Definition
RtRelationMultChanContainer.h:29
TRTCond::StrawT0MultChanContainer
A COOL Multichannel container for StrawT0 objects.
Definition
StrawT0MultChanContainer.h:31
initialize
void initialize()
Definition
run_EoverP.cxx:894
EventInfo.h
Generated on
for ATLAS Offline Software by
1.17.0