|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRT_CALIBTOOLS__TRTCALIBRATOR_H
6 #define TRT_CALIBTOOLS__TRTCALIBRATOR_H
26 #include "GaudiKernel/ToolHandle.h"
27 #include "GaudiKernel/ServiceHandle.h"
28 #include "Gaudi/Property.h"
39 class TRT_DetectorManager;
86 std::string
SubLev(std::string,
int);
91 bool IsSubLev(
const std::string&,
int,
const std::string&);
101 int GetSubLevels(
const std::string&,
int, std::set<int>*);
106 void MakeBDKeys(
int,
int,
int,
int,
int,
int);
115 ToolHandle<ITRT_CalDbTool>
m_trtcaldbTool {
this,
"TRTCalDbTool",
"ITRT_CalDbTool",
""};
116 ToolHandle<ITRT_StrawStatusSummaryTool>
m_TRTStrawSummaryTool {
this,
"TRTStrawSummaryTool",
"ITRT_StrawStatusSummaryTool",
""};
124 Gaudi::Property<float>
m_t0offset {
this,
"T0Offset" , -0.3 ,
""};
127 Gaudi::Property<int>
m_minrt {
this,
"MinRt" , 10000 ,
"minimum number of hits required to do R-t calibration" };
128 Gaudi::Property<int>
m_mint0 {
this,
"MinT0" , 200 ,
"minimum number of hits required to do T0 calibration" };
129 Gaudi::Property<int>
m_nevents {
this,
"Nevents" , -1 ,
"The number of hits or histograms read from the input file"};
132 Gaudi::Property<bool>
m_useP0 {
this,
"UseP0" , true ,
""};
133 Gaudi::Property<bool>
m_floatP3 {
this,
"FloatP3" , true ,
""};
137 Gaudi::Property<std::string>
m_selstring {
this,
"Selstring" ,
"_*_-_-_-_-_-_-" ,
""};
138 Gaudi::Property<std::string>
m_calsub {
this,
"SubPart" ,
"user" ,
""};
139 Gaudi::Property<std::string>
m_options {
this,
"Options" ,
"" ,
""};
140 Gaudi::Property<std::string>
m_hittuple {
this,
"Hittuple" ,
"merged.root" ,
""};
141 Gaudi::Property<std::string>
m_rtrel {
this,
"RtRel" ,
"basic" ,
"the rt relation to use"};
142 Gaudi::Property<std::string>
m_rtbinning {
this,
"RtBinning" ,
"t" ,
""};
143 Gaudi::Property<std::string>
m_ntrtmanager {
this,
"TrtManagerLocation" ,
"TRT" ,
""};
145 Gaudi::Property< std::vector<std::string> >
m_doRt {
this,
"CalibrateRt" , {} ,
""};
146 Gaudi::Property< std::vector<std::string> >
m_doT0 {
this,
"CalibrateT0" , {} ,
""};
147 Gaudi::Property< std::vector<std::string> >
m_doRes {
this,
"FitResidual" , {} ,
""};
148 Gaudi::Property< std::vector<std::string> >
m_beQuiet {
this,
"NoHistograms" , {} ,
""};
149 Gaudi::Property< std::vector<std::string> >
m_useBoardRef {
this,
"UseBoardRef" , {} ,
""};
150 Gaudi::Property< std::vector<std::string> >
m_doLogPrint {
this,
"PrintLog" , {} ,
""};
151 Gaudi::Property< std::vector<std::string> >
m_doOutPrint {
this,
"PrintT0Out" , {} ,
""};
152 Gaudi::Property< std::vector<std::string> >
m_doRtPrint {
this,
"PrintRtOut" , {} ,
""};
163 class BDzero{
public:
int z;};
class BDstraw{
public: std::map<std::string,BDzero>
s;};
class BDchip{
public: std::map<std::string,BDstraw>
c;};
class BDboard{
public: std::map<std::string,BDchip>
b;};
class BDmodule{
public: std::map<std::string,BDboard>
m;};
class BDlayer{
public: std::map<std::string,BDmodule>
l;};
class BDdetector{
public: std::map<std::string,BDlayer>
d;};
class BDTRT{
public: std::map<std::string,BDdetector>
t;}; BDTRT
m_trt;
194 #endif // TRT_CALIBTOOLS__TRTCALIBRATOR_H
Gaudi::Property< int > m_minrt
Gaudi::Property< std::vector< std::string > > m_doT0
Gaudi::Property< float > m_t0offset
std::map< std::string, BDboard > m
Gaudi::Property< bool > m_useP0
Gaudi::Property< bool > m_SplitBarrel
virtual StatusCode finalize() override
Gaudi::Property< int > m_minTimebinsOverThreshold
Gaudi::Property< std::string > m_hittuple
Gaudi::Property< std::vector< std::string > > m_doLogPrint
std::map< std::string, std::set< int > > selections
std::map< std::string, BDdetector > t
std::map< std::string, BDzero > s
Gaudi::Property< bool > m_floatP3
Gaudi::Property< bool > m_DoArXenonSep
std::map< std::string, BDlayer > d
BDTRT m_trt_acc
instance if the dictionary class for the full TRT
const AtlasDetectorID * m_DetID
virtual bool calibrate ATLAS_NOT_THREAD_SAFE() override
Method for doing the actual calibration.
std::map< std::string, conf > m_config
std::map< std::string, BDstraw > c
Gaudi::Property< std::vector< std::string > > m_doRes
Gaudi::Property< std::vector< std::string > > m_doOutPrint
Gaudi::Property< std::string > m_ntrtmanager
Gaudi::Property< std::string > m_options
std::string m_comTimeName
Gaudi::Property< std::vector< std::string > > m_useBoardRef
std::map< std::string, BDmodule > l
void MakeBDKeys(int, int, int, int, int, int)
makes the key strings for a sub-module
::StatusCode StatusCode
StatusCode definition for legacy code.
ToolHandle< ITRT_StrawStatusSummaryTool > m_TRTStrawSummaryTool
Gaudi::Property< std::vector< std::string > > m_doRt
Gaudi::Property< bool > m_DoShortStrawCorrection
std::vector< std::string > PrintLog
std::string SubLev(std::string, int)
return sub-level i from a selection string with the form _X_X_X_X_X_X_X
Gaudi::Property< std::string > m_rtrel
Gaudi::Property< int > m_mint0
bool IncludedLevels(std::string, int *)
unsigned int m_numOfProcessedTracks
Gaudi::Property< std::string > m_calsub
std::vector< std::string > FitResidual
Gaudi::Property< int > m_nevents
Gaudi::Property< std::string > m_selstring
std::vector< std::string > CalibrateRt
std::vector< std::string > PrintRtOut
Gaudi::Property< float > m_maxTimeResidual
const InDetDD::TRT_DetectorManager * m_trtmanager
Abstract interface to information on straws electronic grouping.
Gaudi::Property< float > m_maxDistance
ServiceHandle< ITRT_StrawNeighbourSvc > m_neighbourSvc
unsigned int m_numOfHitsAccepted
Gaudi::Property< float > m_maxTrackChisquarePerDof
The Detector Manager for all TRT Detector elements, it acts as the interface to the detector elements...
BDTRT m_trt
instance if the dictionary class for the full TRT
Gaudi::Property< std::string > m_rtbinning
virtual ~TRTCalibrator()
Destructor.
unsigned int m_numOfHitsTotal
std::vector< std::string > CalibrateT0
std::vector< std::string > PrintT0Out
std::map< std::string, BDchip > b
virtual StatusCode initialize() override
Pre-define standard calibration configuration.
void DumpStrawData(int)
returns true if the ...
Gaudi::Property< std::vector< std::string > > m_beQuiet
TRTCalibrator(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
virtual bool fill(const Trk::Track *aTrack, TRT::TrackInfo *output) override
int GetSubLevels(const std::string &, int, std::set< int > *)
fills a set of integers with the indexes af the sub-modules that are conatined in a selection
ToolHandle< ITRT_CalDbTool > m_trtcaldbTool
Gaudi::Property< std::vector< std::string > > m_doRtPrint
std::vector< std::string > NoHistograms
bool IsSubLev(const std::string &, int, const std::string &)
returns true if the ...
The TRTCalibrator is called from TRTCalibrationMgr.
This class provides an interface to generate or decode an identifier for the upper levels of the dete...