ATLAS Offline Software
TileInfoLoader.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 #ifndef TILECONDITIONS_TILEINFOLOADER_H
6 #define TILECONDITIONS_TILEINFOLOADER_H
7 //****************************************************************************
8 // Filename : TileInfoLoader.h
9 // Author : Ed Frank
10 // Created : May 2002
11 //
12 // DESCRIPTION
13 //
14 // TileConditions/TileInfo.h is the Tile interface to the transient
15 // detector store. Rather than having every item accessed separately from
16 // the TDS, people will grab a TileInfo from the TDS and make calls on it.
17 // Those calls will defer back to the TDS so that time validity is done
18 // correctly. We think this may be simpler than getting everything
19 // separately. We expect, in the future, to break the TileInfo into pieces,
20 // but for now, it's all in one.
21 //
22 // Until a conditions database exists, we just make a TileInfo from parameters
23 // in a fplain file. TileInfoLoader exists just to produce a tileInfo at
24 // the start of the job until the conditions DB comes along.
25 //
26 // Properties (JobOption Parameters):
27 //
28 //
29 // History:
30 // 07Feb01 efrank Creation, based upon LArTowerBuilder.h
31 //
32 // BUGS:
33 //
34 //****************************************************************************
35 
36 // Gaudi includes
37 #include "GaudiKernel/ServiceHandle.h"
38 
39 // Athena includes
41 
42 #include <string>
43 
44 class TilePulseShapes;
46 class StoreGateSvc;
47 class TileCablingSvc;
48 template<class TYPE> class SvcFactory;
49 class TileInfo;
50 
51 static const InterfaceID IID_TileInfoLoader("TileInfoLoader", 1, 0);
52 
53 class TileInfoLoader: public AthService {
54 
55  friend class SvcFactory<TileInfoLoader> ;
56 
57  public:
58 
59  TileInfoLoader(const std::string& name, ISvcLocator* pSvcLocator);
60  virtual ~TileInfoLoader();
61 
62  virtual StatusCode initialize() override;
63  virtual StatusCode finalize() override;
64  static const InterfaceID& interfaceID() { return IID_TileInfoLoader; }
65 
66 private:
67  //** Loading stuff from files */
70  const std::string& ShapeFile,
71  int &NBins, int &Time0Bin, int &BinsPerX
72  , std::vector<double> &FullShape, std::vector<double> &Shape);
74 
75  Gaudi::Property<std::string> m_tileInfoName{this,
76  "TileInfo", "TileInfo", "Name of TileInfo object in Detector Store"};
77 
78  //=== services
80 
83 
93  double m_ttL1Calib;
95  double m_ttL1Thresh;
96  double m_ttL1Ped;
97  double m_ttL1Max;
98  double m_MuRcvCalib;
101  double m_MuRcvPed;
102  double m_MuRcvMax;
103  double m_muL1Calib;
105  double m_muL1Thresh;
106  double m_muL1Ped;
107  double m_muL1Max;
111  double m_mbtsL1Ped;
112  double m_mbtsL1Max;
115  int m_ADCmax;
117 
118 
119 
122 
124  std::string m_digitsShapeFileHi;
125  std::string m_digitsShapeFileLo;
126  std::string m_TTL1ShapeFile;
127  std::string m_MuRcvShapeFile;
128  std::string m_MuL1ShapeFile;
129  std::string m_DecoCovaFilePrefix;
130 
132 
133  // name of TileCalibContainer in detector store
134  std::string m_calibCntName;
135 
136  std::vector<std::string> m_connectedDrawers; // list of connected drawers
137  // we assume that list contains even number of elements - pairs of (begin,end) range,
138  // e.g. all drawers connected looks like this:
139  // [ "0x100", "0x13F", "0x200", "0x23F", "0x300", "0x33F", "0x400", "0x43F" ]
140  // and this is the list for few drawers in LBA connected:
141  // [ "0x10A", "0x10C", "0x121", "0x123" ]
142  // empty list is equivalent to list with all drawers connected
143 
146 };
147 
148 #endif // TILECONDITIONS_TILEINFOLOADER_H
grepfile.info
info
Definition: grepfile.py:38
TileInfoLoader::m_mbtsL1Max
double m_mbtsL1Max
Definition: TileInfoLoader.h:112
TileInfoLoader::initialize
virtual StatusCode initialize() override
Definition: TileInfoLoader.cxx:183
TileInfoLoader::m_TTL1ShapeFile
std::string m_TTL1ShapeFile
Definition: TileInfoLoader.h:126
TileInfoLoader::m_MuRcvShapeFile
std::string m_MuRcvShapeFile
Definition: TileInfoLoader.h:127
TileInfoLoader::m_mbtsL1Thresh
double m_mbtsL1Thresh
Definition: TileInfoLoader.h:110
TileInfoLoader::m_mbtsL1NoiseSigma
double m_mbtsL1NoiseSigma
Definition: TileInfoLoader.h:109
TileInfoLoader::m_calibCntName
std::string m_calibCntName
Definition: TileInfoLoader.h:134
TileInfoLoader::m_tileZeroSuppress
bool m_tileZeroSuppress
Definition: TileInfoLoader.h:89
TileInfoLoader::m_tileCoherNoise
bool m_tileCoherNoise
Definition: TileInfoLoader.h:88
TileInfoLoader::m_loadWienerFilterWeights
bool m_loadWienerFilterWeights
Definition: TileInfoLoader.h:131
SvcFactory
Definition: AthCnvSvc.h:28
TileInfoLoader::m_tileInfoName
Gaudi::Property< std::string > m_tileInfoName
Definition: TileInfoLoader.h:75
TileInfoLoader::m_muL1NoiseSigma
double m_muL1NoiseSigma
Definition: TileInfoLoader.h:104
TileInfoLoader::m_iTrigSample
int m_iTrigSample
Definition: TileInfoLoader.h:86
TileInfoLoader::m_tileNoise
bool m_tileNoise
Definition: TileInfoLoader.h:87
TileInfoLoader::m_ADCmax
int m_ADCmax
Definition: TileInfoLoader.h:115
TileInfo
Definition: TileInfo.h:49
TileInfoLoader::m_ttL1Thresh
double m_ttL1Thresh
Definition: TileInfoLoader.h:95
TileInfoLoader::m_connectedDrawers
std::vector< std::string > m_connectedDrawers
Definition: TileInfoLoader.h:136
TileInfoLoader::m_digitsShapeFileLo
std::string m_digitsShapeFileLo
Definition: TileInfoLoader.h:125
TileInfoLoader::m_ADCmaskValue
int m_ADCmaskValue
Definition: TileInfoLoader.h:116
TileInfoLoader::m_nSamples
int m_nSamples
Properties to forward to TileInfo.
Definition: TileInfoLoader.h:85
TileInfoLoader
Definition: TileInfoLoader.h:53
TileInfoLoader::TileInfoLoader
TileInfoLoader(const TileInfoLoader &)
TileInfoLoader::m_DecoCovaFilePrefix
std::string m_DecoCovaFilePrefix
Definition: TileInfoLoader.h:129
TileInfoLoader::buildCovMatrix
void buildCovMatrix(TileInfo &info)
Definition: TileInfoLoader.cxx:633
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:128
TileInfoLoader::m_digitsShapeFileHi
std::string m_digitsShapeFileHi
Filenames of input files.
Definition: TileInfoLoader.h:124
TileInfoLoader::buildTTL1Shapes
StatusCode buildTTL1Shapes(TileInfo &info, const std::string &ShapeFile, int &NBins, int &Time0Bin, int &BinsPerX, std::vector< double > &FullShape, std::vector< double > &Shape)
Definition: TileInfoLoader.cxx:515
TileCablingSvc
Definition: TileCablingSvc.h:29
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthService
Definition: AthService.h:32
TileInfoLoader::m_ttL1Ped
double m_ttL1Ped
Definition: TileInfoLoader.h:96
TileInfoLoader::m_muL1Calib
double m_muL1Calib
Definition: TileInfoLoader.h:103
TileInfoLoader::m_ttL1CosmicsThresh
double m_ttL1CosmicsThresh
Definition: TileInfoLoader.h:114
TileInfoLoader::finalize
virtual StatusCode finalize() override
Definition: TileInfoLoader.cxx:310
TileInfoLoader::m_MuRcvNoiseSigma
double m_MuRcvNoiseSigma
Definition: TileInfoLoader.h:99
TileInfoLoader::m_MuRcvMax
double m_MuRcvMax
Definition: TileInfoLoader.h:102
TileInfoLoader::m_ttL1NoiseSigma
double m_ttL1NoiseSigma
Definition: TileInfoLoader.h:94
TileInfoLoader::interfaceID
static const InterfaceID & interfaceID()
Definition: TileInfoLoader.h:64
TileInfoLoader::m_ttL1Calib
double m_ttL1Calib
Definition: TileInfoLoader.h:93
TileInfoLoader::m_muL1Thresh
double m_muL1Thresh
Definition: TileInfoLoader.h:105
TileInfoLoader::m_noiseScaleIndex
int m_noiseScaleIndex
Definition: TileInfoLoader.h:90
TileInfoLoader::m_muL1Ped
double m_muL1Ped
Definition: TileInfoLoader.h:106
TileInfoLoader::m_MuRcvThresh
double m_MuRcvThresh
Definition: TileInfoLoader.h:100
TileInfoLoader::m_muL1Max
double m_muL1Max
Definition: TileInfoLoader.h:107
TileInfoLoader::m_MuRcvCalib
double m_MuRcvCalib
Definition: TileInfoLoader.h:98
TileInfoLoader::m_ttL1Max
double m_ttL1Max
Definition: TileInfoLoader.h:97
TileInfoLoader::m_ttL1CosmicsGain
double m_ttL1CosmicsGain
Definition: TileInfoLoader.h:113
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TileInfoLoader::TileInfoLoader
TileInfoLoader(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TileInfoLoader.cxx:54
TileInfoLoader::m_mbtsL1Calib
double m_mbtsL1Calib
Definition: TileInfoLoader.h:108
TileInfoLoader::~TileInfoLoader
virtual ~TileInfoLoader()
Definition: TileInfoLoader.cxx:176
TilePulseShapes
Definition: TilePulseShapes.h:119
TileWienerFilterWeights
Definition: TileWienerFilterWeights.h:17
TileInfoLoader::m_thresholdRawChannel
double m_thresholdRawChannel
Definition: TileInfoLoader.h:91
TileInfoLoader::m_MuL1ShapeFile
std::string m_MuL1ShapeFile
Definition: TileInfoLoader.h:128
TileInfoLoader::operator=
TileInfoLoader & operator=(const TileInfoLoader &)
TileInfoLoader::m_WFWeights
TileWienerFilterWeights * m_WFWeights
Pointer to Wiener Filtering weights.
Definition: TileInfoLoader.h:121
AthService.h
TileInfoLoader::m_mbtsL1Ped
double m_mbtsL1Ped
Definition: TileInfoLoader.h:111
TileInfoLoader::m_pulsevar
TilePulseShapes * m_pulsevar
Pointer to TilePulseShapes object.
Definition: TileInfoLoader.h:82
TileInfoLoader::m_detStore
ServiceHandle< StoreGateSvc > m_detStore
Definition: TileInfoLoader.h:79
TileInfoLoader::m_thresholdDigits
double m_thresholdDigits
Definition: TileInfoLoader.h:92
TileInfoLoader::buildDigitsShapesHiLo
StatusCode buildDigitsShapesHiLo(TileInfo &info)
Definition: TileInfoLoader.cxx:321
TileInfoLoader::m_MuRcvPed
double m_MuRcvPed
Definition: TileInfoLoader.h:101
ServiceHandle< StoreGateSvc >