ATLAS Offline Software
Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
TileEMScaleCondAlg Class Reference

Condition algorithm to produce TileEMScale and put it into condition store. More...

#include <TileEMScaleCondAlg.h>

Inheritance diagram for TileEMScaleCondAlg:
Collaboration diagram for TileEMScaleCondAlg:

Public Member Functions

 TileEMScaleCondAlg (const std::string &name, ISvcLocator *pSvcLocator)
 
virtual ~TileEMScaleCondAlg ()=default
 
virtual StatusCode initialize () override
 
virtual StatusCode execute () override
 
virtual StatusCode finalize () override
 
virtual StatusCode sysInitialize () override
 Override sysInitialize. More...
 
virtual const DataObjIDColl & extraOutputDeps () const override
 Return the list of extra output dependencies. More...
 
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & evtStore () const
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. More...
 
virtual StatusCode sysStart () override
 Handle START transition. More...
 
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles. More...
 
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles. More...
 
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T > &t)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc="none")
 Declare a new Gaudi property. More...
 
void updateVHKA (Gaudi::Details::PropertyBase &)
 
MsgStream & msg () const
 
MsgStream & msg (const MSG::Level lvl) const
 
bool msgLvl (const MSG::Level lvl) const
 

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution More...
 
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
 
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed. More...
 

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t
 

Private Member Functions

Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &)
 specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &)
 specialization for handling Gaudi::Property<SG::VarHandleBase> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &)
 specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
 

Private Attributes

Gaudi::Property< std::string > m_onlCacheUnitString
 Online cache units as string, see TileIdentifier/TileRawChannelUnit.h. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflCisLinProxy
 Tool to get offline CIS calibration constants. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflCisNlnProxy
 Tool to get offline non-linear CIS calibration constants. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflLasLinProxy
 Tool to get offline linear Laser correction factors. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflLasNlnProxy
 Tool to get non-linear Laser corection factors. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflLasFibProxy
 Tool to get offline Laser fiber correction factors. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflCesProxy
 Tool to get offline Cesium calibration constants. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflEmsProxy
 Tool to get offline EMS factors. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_onlCisProxy
 Tool to get online CIS calibration constants. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_onlLasProxy
 Tool to get Tile online Laser correction factors. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_onlCesProxy
 Tool to get Tile online Cesium calibration constants. More...
 
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_onlEmsProxy
 Tool to get Tile online EMS factors. More...
 
SG::WriteCondHandleKey< TileEMScalem_calibEmsKey
 Name of output TileEMScale. More...
 
ServiceHandle< TileCablingSvcm_cablingSvc
 Name of Tile cabling service. More...
 
bool m_useOflLasFib
 
unsigned int m_maxChannels
 
unsigned int m_maxGains
 
TileRawChannelUnit::UNIT m_onlCacheUnit
 
DataObjIDColl m_extendedExtraObjects
 
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default) More...
 
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default) More...
 
std::vector< SG::VarHandleKeyArray * > m_vhka
 
bool m_varHandleArraysDeclared
 

Detailed Description

Condition algorithm to produce TileEMScale and put it into condition store.

Definition at line 25 of file TileEMScaleCondAlg.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< Algorithm > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ TileEMScaleCondAlg()

TileEMScaleCondAlg::TileEMScaleCondAlg ( const std::string &  name,
ISvcLocator *  pSvcLocator 
)

Definition at line 15 of file TileEMScaleCondAlg.cxx.

15  :
16  AthAlgorithm(name, pSvcLocator),
17  m_useOflLasFib(false),
18  m_maxChannels(0),
19  m_maxGains(0),
21 {
22 }

◆ ~TileEMScaleCondAlg()

virtual TileEMScaleCondAlg::~TileEMScaleCondAlg ( )
virtualdefault

Member Function Documentation

◆ declareGaudiProperty() [1/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleKeyArrayType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKeyArray>

Definition at line 170 of file AthCommonDataStore.h.

172  {
173  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
174  hndl.value(),
175  hndl.documentation());
176 
177  }

◆ declareGaudiProperty() [2/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleKeyType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158  {
159  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
160  hndl.value(),
161  hndl.documentation());
162 
163  }

◆ declareGaudiProperty() [3/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleBase>

Definition at line 184 of file AthCommonDataStore.h.

186  {
187  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
188  hndl.value(),
189  hndl.documentation());
190  }

◆ declareGaudiProperty() [4/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  t,
const SG::NotHandleType  
)
inlineprivateinherited

specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>

Definition at line 199 of file AthCommonDataStore.h.

200  {
201  return PBASE::declareProperty(t);
202  }

◆ declareProperty() [1/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleBase hndl,
const std::string &  doc,
const SG::VarHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleBase. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 245 of file AthCommonDataStore.h.

249  {
250  this->declare(hndl.vhKey());
251  hndl.vhKey().setOwner(this);
252 
253  return PBASE::declareProperty(name,hndl,doc);
254  }

◆ declareProperty() [2/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleKey hndl,
const std::string &  doc,
const SG::VarHandleKeyType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleKey. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 221 of file AthCommonDataStore.h.

225  {
226  this->declare(hndl);
227  hndl.setOwner(this);
228 
229  return PBASE::declareProperty(name,hndl,doc);
230  }

◆ declareProperty() [3/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleKeyArray hndArr,
const std::string &  doc,
const SG::VarHandleKeyArrayType  
)
inlineinherited

Definition at line 259 of file AthCommonDataStore.h.

263  {
264 
265  // std::ostringstream ost;
266  // ost << Algorithm::name() << " VHKA declareProp: " << name
267  // << " size: " << hndArr.keys().size()
268  // << " mode: " << hndArr.mode()
269  // << " vhka size: " << m_vhka.size()
270  // << "\n";
271  // debug() << ost.str() << endmsg;
272 
273  hndArr.setOwner(this);
274  m_vhka.push_back(&hndArr);
275 
276  Gaudi::Details::PropertyBase* p = PBASE::declareProperty(name, hndArr, doc);
277  if (p != 0) {
278  p->declareUpdateHandler(&AthCommonDataStore<PBASE>::updateVHKA, this);
279  } else {
280  ATH_MSG_ERROR("unable to call declareProperty on VarHandleKeyArray "
281  << name);
282  }
283 
284  return p;
285 
286  }

◆ declareProperty() [4/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc,
const SG::NotHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This is the generic version, for types that do not derive from SG::VarHandleKey. It just forwards to the base class version of declareProperty.

Definition at line 333 of file AthCommonDataStore.h.

337  {
338  return PBASE::declareProperty(name, property, doc);
339  }

◆ declareProperty() [5/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc = "none" 
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This dispatches to either the generic declareProperty or the one for VarHandle/Key/KeyArray.

Definition at line 352 of file AthCommonDataStore.h.

355  {
356  typedef typename SG::HandleClassifier<T>::type htype;
357  return declareProperty (name, property, doc, htype());
358  }

◆ declareProperty() [6/6]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( Gaudi::Property< T > &  t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145  {
146  typedef typename SG::HandleClassifier<T>::type htype;
148  }

◆ detStore()

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< Algorithm > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

95 { return m_detStore; }

◆ evtStore() [1/2]

ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

85 { return m_evtStore; }

◆ evtStore() [2/2]

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore ( ) const
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 90 of file AthCommonDataStore.h.

90 { return m_evtStore; }

◆ execute()

StatusCode TileEMScaleCondAlg::execute ( )
overridevirtual

Definition at line 136 of file TileEMScaleCondAlg.cxx.

136  {
137 
139 
140  if (calibEms.isValid()) {
141  ATH_MSG_DEBUG("Found valid TileEMScale: " << calibEms.key());
142  return StatusCode::SUCCESS;
143  }
144 
145 
146  std::unique_ptr<TileEMScale> emsData = std::make_unique<TileEMScale>();
147 
148  emsData->setMaxChannels(m_maxChannels);
149  emsData->setMaxGains(m_maxGains);
151 
152 
153  // Get offline CIS linear calibration constants
154  EventIDRange oflCisLinRange;
155  std::unique_ptr<TileCalibDataFlt> calibOflCisLin = std::make_unique<TileCalibDataFlt>();
156 
157  ATH_CHECK( m_oflCisLinProxy->fillCalibData(*calibOflCisLin, oflCisLinRange) );
158  emsData->setCalibOflCisLin(std::move(calibOflCisLin));
159 
160  // Get offline CIS non-linear calibration constants
161  EventIDRange oflCisNlnRange;
162  std::unique_ptr<TileCalibDataFlt> calibOflCisNln = std::make_unique<TileCalibDataFlt>();
163 
164  ATH_CHECK( m_oflCisNlnProxy->fillCalibData(*calibOflCisNln, oflCisNlnRange) );
165  emsData->setCalibOflCisNln(std::move(calibOflCisNln));
166 
167 
168  // Get offline Laser linear calibration constants
169  EventIDRange oflLasLinRange;
170  std::unique_ptr<TileCalibDataFlt> calibOflLasLin = std::make_unique<TileCalibDataFlt>();
171 
172  ATH_CHECK( m_oflLasLinProxy->fillCalibData(*calibOflLasLin, oflLasLinRange) );
173  emsData->setCalibOflLasLin(std::move(calibOflLasLin));
174 
175 
176  // Get offline Laser non-linear calibration constants
177  EventIDRange oflLasNlnRange;
178  std::unique_ptr<TileCalibDataFlt> calibOflLasNln = std::make_unique<TileCalibDataFlt>();
179 
180  ATH_CHECK( m_oflLasNlnProxy->fillCalibData(*calibOflLasNln, oflLasNlnRange) );
181  emsData->setCalibOflLasNln(std::move(calibOflLasNln));
182 
183 
184  // Get offline Ces calibration constants
185  EventIDRange oflCesRange;
186  std::unique_ptr<TileCalibDataFlt> calibOflCes = std::make_unique<TileCalibDataFlt>();
187 
188  ATH_CHECK( m_oflCesProxy->fillCalibData(*calibOflCes, oflCesRange) );
189  emsData->setCalibOflCes(std::move(calibOflCes));
190 
191 
192  // Get offline Ems calibration constants
193  EventIDRange oflEmsRange;
194  std::unique_ptr<TileCalibDataFlt> calibOflEms = std::make_unique<TileCalibDataFlt>();
195 
196  ATH_CHECK( m_oflEmsProxy->fillCalibData(*calibOflEms, oflEmsRange) );
197  emsData->setCalibOflEms(std::move(calibOflEms));
198 
199 
200  EventIDRange eventRange = EventIDRange::intersect(oflCisLinRange, oflCisNlnRange,
201  oflLasLinRange, oflLasNlnRange,
202  oflCesRange, oflEmsRange);
203 
204 
205  if (m_useOflLasFib) {
206  // Get offline Laser fiber calibration constants
207  EventIDRange oflLasFibRange;
208  std::unique_ptr<TileCalibDataFlt> calibOflLasFib = std::make_unique<TileCalibDataFlt>();
209 
210  ATH_CHECK( m_oflLasFibProxy->fillCalibData(*calibOflLasFib, oflLasFibRange) );
211  emsData->setCalibOflLasFib(std::move(calibOflLasFib));
212 
213  eventRange = EventIDRange::intersect(eventRange, oflLasFibRange);
214  }
215 
216  if (!m_onlCisProxy.empty()) {
217  // Get online CIS calibration constants
218  EventIDRange onlCisRange;
219  std::unique_ptr<TileCalibDataFlt> calibOnlCis = std::make_unique<TileCalibDataFlt>();
220 
221  ATH_CHECK( m_onlCisProxy->fillCalibData(*calibOnlCis, onlCisRange) );
222  emsData->setCalibOnlCis(std::move(calibOnlCis));
223 
224  eventRange = EventIDRange::intersect(eventRange, onlCisRange);
225  }
226 
227  if (!m_onlLasProxy.empty()) {
228  // Get online Laser calibration constants
229  EventIDRange onlLasRange;
230  std::unique_ptr<TileCalibDataFlt> calibOnlLas = std::make_unique<TileCalibDataFlt>();
231 
232  ATH_CHECK( m_onlLasProxy->fillCalibData(*calibOnlLas, onlLasRange) );
233  emsData->setCalibOnlLas(std::move(calibOnlLas));
234 
235  eventRange = EventIDRange::intersect(eventRange, onlLasRange);
236  }
237 
238  if (!m_onlCesProxy.empty()) {
239  // Get online Ces calibration constants
240  EventIDRange onlCesRange;
241  std::unique_ptr<TileCalibDataFlt> calibOnlCes = std::make_unique<TileCalibDataFlt>();
242 
243  ATH_CHECK( m_onlCesProxy->fillCalibData(*calibOnlCes, onlCesRange) );
244  emsData->setCalibOnlCes(std::move(calibOnlCes));
245 
246  eventRange = EventIDRange::intersect(eventRange, onlCesRange);
247  }
248 
249  if (!m_onlEmsProxy.empty()) {
250  // Get online Ems calibration constants
251  EventIDRange onlEmsRange;
252  std::unique_ptr<TileCalibDataFlt> calibOnlEms = std::make_unique<TileCalibDataFlt>();
253 
254  ATH_CHECK( m_onlEmsProxy->fillCalibData(*calibOnlEms, onlEmsRange) );
255  emsData->setCalibOnlEms(std::move(calibOnlEms));
256 
257  eventRange = EventIDRange::intersect(eventRange, onlEmsRange);
258  }
259 
260 
261  if(eventRange.start() > eventRange.stop()) {
262  ATH_MSG_ERROR("Invalid intersection range: " << eventRange);
263  return StatusCode::FAILURE;
264  }
265 
266  if (emsData->initialize()) {
267  ATH_MSG_DEBUG("TileEMScale object is initialized successfully.");
268  } else {
269  ATH_MSG_ERROR("Impossible to inizialize TileEMScale object!");
270  return StatusCode::FAILURE;
271  }
272 
273  if(calibEms.record(eventRange, emsData.release()).isFailure()) {
274  ATH_MSG_ERROR("Could not record TileEMScale object with "
275  << calibEms.key()
276  << " with EventRange " << eventRange
277  << " into Conditions Store");
278  return StatusCode::FAILURE;
279  } else {
280 
281  ATH_MSG_VERBOSE("Recorded TileEMScale object with "
282  << calibEms.key()
283  << " with EventRange " << eventRange
284  << " into Conditions Store");
285  }
286 
287  return StatusCode::SUCCESS;
288 
289 }

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase &  ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ extraOutputDeps()

const DataObjIDColl & AthAlgorithm::extraOutputDeps ( ) const
overridevirtualinherited

Return the list of extra output dependencies.

This list is extended to include symlinks implied by inheritance relations.

Definition at line 50 of file AthAlgorithm.cxx.

51 {
52  // If we didn't find any symlinks to add, just return the collection
53  // from the base class. Otherwise, return the extended collection.
54  if (!m_extendedExtraObjects.empty()) {
56  }
57  return Algorithm::extraOutputDeps();
58 }

◆ finalize()

StatusCode TileEMScaleCondAlg::finalize ( )
overridevirtual

Definition at line 292 of file TileEMScaleCondAlg.cxx.

292  {
293  return StatusCode::SUCCESS;
294 }

◆ initialize()

StatusCode TileEMScaleCondAlg::initialize ( )
overridevirtual

Definition at line 26 of file TileEMScaleCondAlg.cxx.

26  {
27 
28  ATH_MSG_DEBUG( "In initialize()" );
29 
30  //=== Configure online cache unit
31  if (m_onlCacheUnitString == "Invalid") {
33  } else if (m_onlCacheUnitString == "OnlineADCcounts") {
35  } else if (m_onlCacheUnitString == "OnlinePicoCoulombs") {
37  } else if (m_onlCacheUnitString == "OnlineCesiumPicoCoulombs") {
39  } else if (m_onlCacheUnitString == "OnlineMegaElectronVolts") {
41  } else {
42  ATH_MSG_WARNING( "Unrecoginzed jobOption OnlCacheUnit=" << m_onlCacheUnitString << ". "
43  << "Setting it to \"Invalid\"!" );
45  }
46 
47 
48  // Tile cabling service
49  ATH_CHECK( m_cablingSvc.retrieve() );
50 
51  ATH_CHECK( m_oflCisLinProxy.retrieve() );
52  ATH_CHECK( m_oflCisNlnProxy.retrieve() );
53 
54  ATH_CHECK( m_oflLasLinProxy.retrieve() );
55  ATH_CHECK( m_oflLasNlnProxy.retrieve() );
56 
57  m_useOflLasFib = !(m_oflLasFibProxy.empty());
58 
59  if (m_useOflLasFib) {
60  //=== retrieve offline proxy
61  CHECK( m_oflLasFibProxy.retrieve() );
62  ATH_MSG_INFO("ProxyOflLasFib is set up and can be used");
63  } else {
64  ATH_MSG_INFO("ProxyOflLasFib is not set up and cannot be used");
65  m_oflLasFibProxy.disable();
66  }
67 
68  ATH_CHECK( m_oflCesProxy.retrieve() );
69  ATH_CHECK( m_oflEmsProxy.retrieve() );
70 
72 
73  if (m_onlCisProxy.empty() || m_onlLasProxy.empty()
74  || m_onlCesProxy.empty() || m_onlEmsProxy.empty()) {
75 
76  ATH_MSG_ERROR( "Requested valid OnlCacheUnit (" << m_onlCacheUnitString << ") "
77  << "but at least one Onl{Cis|Las|Ces|Ems}Proxy is not set up!" );
78  return StatusCode::FAILURE;
79  }
80 
81  //=== Resize onlCache to desired size
82  const TileCablingService* cabling = m_cablingSvc->cablingService();
83  if (!cabling) {
84  ATH_MSG_ERROR( "Unable to retrieve TileCablingService" );
85  return StatusCode::FAILURE;
86  }
87 
88 
89  m_maxChannels = cabling->getMaxChannels();
90  m_maxGains = cabling->getMaxGains();
91 
92  } else {
93 
94  ATH_MSG_INFO( "Undoing online calibration is not requested, "
95  << "since OnlCacheUnit=" << m_onlCacheUnitString );
96  }
97 
98  if (m_onlCisProxy.empty()) {
99  ATH_MSG_INFO( "Loading of online CIS calibration constants is not requested" );
100 
101  m_onlCisProxy.disable();
102  } else {
103  ATH_CHECK( m_onlCisProxy.retrieve() );
104  }
105 
106  if (m_onlLasProxy.empty()) {
107  ATH_MSG_INFO( "Loading of online Laser calibration constants is not requested" );
108 
109  m_onlLasProxy.disable();
110  } else {
111  ATH_CHECK( m_onlLasProxy.retrieve() );
112  }
113 
114  if (m_onlCesProxy.empty()) {
115  ATH_MSG_INFO( "Loading of online Cesium calibration constants is not requested" );
116 
117  m_onlCesProxy.disable();
118  } else {
119  ATH_CHECK( m_onlCesProxy.retrieve() );
120  }
121 
122  if (m_onlEmsProxy.empty()) {
123  ATH_MSG_INFO( "Loading of online EM scale calibration constants is not requested" );
124 
125  m_onlEmsProxy.disable();
126  } else {
127  ATH_CHECK( m_onlEmsProxy.retrieve() );
128  }
129 
131 
132  return StatusCode::SUCCESS;
133 }

◆ inputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< Algorithm > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ msg() [1/2]

MsgStream& AthCommonMsg< Algorithm >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24  {
25  return this->msgStream();
26  }

◆ msg() [2/2]

MsgStream& AthCommonMsg< Algorithm >::msg ( const MSG::Level  lvl) const
inlineinherited

Definition at line 27 of file AthCommonMsg.h.

27  {
28  return this->msgStream(lvl);
29  }

◆ msgLvl()

bool AthCommonMsg< Algorithm >::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30  {
31  return this->msgLevel(lvl);
32  }

◆ outputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ renounce()

std::enable_if_t<std::is_void_v<std::result_of_t<decltype(&T::renounce)(T)> > && !std::is_base_of_v<SG::VarHandleKeyArray, T> && std::is_base_of_v<Gaudi::DataHandle, T>, void> AthCommonDataStore< AthCommonMsg< Algorithm > >::renounce ( T &  h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381  {
382  h.renounce();
383  PBASE::renounce (h);
384  }

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::renounceArray ( SG::VarHandleKeyArray handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364  {
365  handlesArray.renounce();
366  }

◆ sysInitialize()

StatusCode AthAlgorithm::sysInitialize ( )
overridevirtualinherited

Override sysInitialize.

Override sysInitialize from the base class.

Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc

Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc

Reimplemented from AthCommonDataStore< AthCommonMsg< Algorithm > >.

Reimplemented in AthAnalysisAlgorithm, AthFilterAlgorithm, PyAthena::Alg, and AthHistogramAlgorithm.

Definition at line 66 of file AthAlgorithm.cxx.

66  {
68 
69  if (sc.isFailure()) {
70  return sc;
71  }
72  ServiceHandle<ICondSvc> cs("CondSvc",name());
73  for (auto h : outputHandles()) {
74  if (h->isCondition() && h->mode() == Gaudi::DataHandle::Writer) {
75  // do this inside the loop so we don't create the CondSvc until needed
76  if ( cs.retrieve().isFailure() ) {
77  ATH_MSG_WARNING("no CondSvc found: won't autoreg WriteCondHandles");
78  return StatusCode::SUCCESS;
79  }
80  if (cs->regHandle(this,*h).isFailure()) {
81  sc = StatusCode::FAILURE;
82  ATH_MSG_ERROR("unable to register WriteCondHandle " << h->fullKey()
83  << " with CondSvc");
84  }
85  }
86  }
87  return sc;
88 }

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< Algorithm > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::updateVHKA ( Gaudi::Details::PropertyBase &  )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308  {
309  // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310  // << " size: " << m_vhka.size() << endmsg;
311  for (auto &a : m_vhka) {
312  std::vector<SG::VarHandleKey*> keys = a->keys();
313  for (auto k : keys) {
314  k->setOwner(this);
315  }
316  }
317  }

Member Data Documentation

◆ m_cablingSvc

ServiceHandle<TileCablingSvc> TileEMScaleCondAlg::m_cablingSvc
private
Initial value:
{ this,
"TileCablingSvc", "TileCablingSvc", "The Tile cabling service" }

Name of Tile cabling service.

Definition at line 121 of file TileEMScaleCondAlg.h.

◆ m_calibEmsKey

SG::WriteCondHandleKey<TileEMScale> TileEMScaleCondAlg::m_calibEmsKey
private
Initial value:
{this,
"TileEMScale", "TileEMScale", "Output Tile EMS calibration constants"}

Name of output TileEMScale.

Definition at line 115 of file TileEMScaleCondAlg.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< Algorithm > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_extendedExtraObjects

DataObjIDColl AthAlgorithm::m_extendedExtraObjects
privateinherited

Definition at line 79 of file AthAlgorithm.h.

◆ m_maxChannels

unsigned int TileEMScaleCondAlg::m_maxChannels
private

Definition at line 126 of file TileEMScaleCondAlg.h.

◆ m_maxGains

unsigned int TileEMScaleCondAlg::m_maxGains
private

Definition at line 127 of file TileEMScaleCondAlg.h.

◆ m_oflCesProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_oflCesProxy
private
Initial value:
{this,
"OflCesProxy", "", "Tile offline CES conditions proxy tool"}

Tool to get offline Cesium calibration constants.

Definition at line 76 of file TileEMScaleCondAlg.h.

◆ m_oflCisLinProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_oflCisLinProxy
private
Initial value:
{this,
"OflCisLinProxy", "", "Tile offline liner CIS conditions proxy tool"}

Tool to get offline CIS calibration constants.

Definition at line 46 of file TileEMScaleCondAlg.h.

◆ m_oflCisNlnProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_oflCisNlnProxy
private
Initial value:
{this,
"OflCisNlnProxy", "", "Tile offline non-linerar CIS conditions proxy tool"}

Tool to get offline non-linear CIS calibration constants.

Definition at line 52 of file TileEMScaleCondAlg.h.

◆ m_oflEmsProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_oflEmsProxy
private
Initial value:
{this,
"OflEmsProxy", "", "Tile offline EMS conditions proxy tool"}

Tool to get offline EMS factors.

Definition at line 82 of file TileEMScaleCondAlg.h.

◆ m_oflLasFibProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_oflLasFibProxy
private
Initial value:
{this,
"OflLasFibProxy", "", "Tile offline Laser fiber conditions proxy tool"}

Tool to get offline Laser fiber correction factors.

Definition at line 70 of file TileEMScaleCondAlg.h.

◆ m_oflLasLinProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_oflLasLinProxy
private
Initial value:
{this,
"OflLasLinProxy", "", "Tile offline linear Laser conditions proxy tool"}

Tool to get offline linear Laser correction factors.

Definition at line 58 of file TileEMScaleCondAlg.h.

◆ m_oflLasNlnProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_oflLasNlnProxy
private
Initial value:
{this,
"OflLasNlnProxy", "", "Tile offline non-linear Laser conditions proxy tool"}

Tool to get non-linear Laser corection factors.

Definition at line 64 of file TileEMScaleCondAlg.h.

◆ m_onlCacheUnit

TileRawChannelUnit::UNIT TileEMScaleCondAlg::m_onlCacheUnit
private

Definition at line 128 of file TileEMScaleCondAlg.h.

◆ m_onlCacheUnitString

Gaudi::Property<std::string> TileEMScaleCondAlg::m_onlCacheUnitString
private
Initial value:
{this,
"OnlCacheUnit", "Invalid", "Online cache unit string"}

Online cache units as string, see TileIdentifier/TileRawChannelUnit.h.

Definition at line 40 of file TileEMScaleCondAlg.h.

◆ m_onlCesProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_onlCesProxy
private
Initial value:
{this,
"OnlCesProxy", "", "Tile online CES conditions proxy tool"}

Tool to get Tile online Cesium calibration constants.

Definition at line 102 of file TileEMScaleCondAlg.h.

◆ m_onlCisProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_onlCisProxy
private
Initial value:
{this,
"OnlCisProxy", "", "Tile online CIS conditions proxy tool"}

Tool to get online CIS calibration constants.

Definition at line 90 of file TileEMScaleCondAlg.h.

◆ m_onlEmsProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_onlEmsProxy
private
Initial value:
{this,
"OnlEmsProxy", "", "Tile online EMS conditions proxy tool"}

Tool to get Tile online EMS factors.

Definition at line 108 of file TileEMScaleCondAlg.h.

◆ m_onlLasProxy

ToolHandle<ITileCondProxy<TileCalibDrawerFlt> > TileEMScaleCondAlg::m_onlLasProxy
private
Initial value:
{this,
"OnlLasProxy", "", "Tile online Laser conditions proxy tool"}

Tool to get Tile online Laser correction factors.

Definition at line 96 of file TileEMScaleCondAlg.h.

◆ m_useOflLasFib

bool TileEMScaleCondAlg::m_useOflLasFib
private

Definition at line 125 of file TileEMScaleCondAlg.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< Algorithm > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< Algorithm > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files:
TileEMScale::setCalibOnlLas
void setCalibOnlLas(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:441
TileEMScaleCondAlg::m_oflCisNlnProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflCisNlnProxy
Tool to get offline non-linear CIS calibration constants.
Definition: TileEMScaleCondAlg.h:52
TileEMScaleCondAlg::m_oflLasNlnProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflLasNlnProxy
Tool to get non-linear Laser corection factors.
Definition: TileEMScaleCondAlg.h:64
TileEMScale::setCalibOnlEms
void setCalibOnlEms(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:449
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
AthCommonDataStore::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
TileEMScaleCondAlg::m_oflLasLinProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflLasLinProxy
Tool to get offline linear Laser correction factors.
Definition: TileEMScaleCondAlg.h:58
ReadCellNoiseFromCool.cabling
cabling
Definition: ReadCellNoiseFromCool.py:154
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_evtStore
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
Definition: AthCommonDataStore.h:390
TileEMScale::setCalibOflCes
void setCalibOflCes(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:428
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_vhka
std::vector< SG::VarHandleKeyArray * > m_vhka
Definition: AthCommonDataStore.h:398
TileEMScaleCondAlg::m_calibEmsKey
SG::WriteCondHandleKey< TileEMScale > m_calibEmsKey
Name of output TileEMScale.
Definition: TileEMScaleCondAlg.h:115
TileEMScaleCondAlg::m_onlEmsProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_onlEmsProxy
Tool to get Tile online EMS factors.
Definition: TileEMScaleCondAlg.h:108
TileEMScale::setOnlineCacheUnit
void setOnlineCacheUnit(TileRawChannelUnit::UNIT onlCacheUnit)
Set online cache unit.
Definition: TileEMScale.h:445
TileEMScaleCondAlg::m_useOflLasFib
bool m_useOflLasFib
Definition: TileEMScaleCondAlg.h:125
TileRawChannelUnit::OnlineADCcounts
@ OnlineADCcounts
Definition: TileRawChannelUnit.h:21
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
ATH_MSG_VERBOSE
#define ATH_MSG_VERBOSE(x)
Definition: AthMsgStreamMacros.h:28
TileEMScale::setMaxChannels
void setMaxChannels(unsigned int maxChannels)
Definition: TileEMScale.h:450
TileEMScale::setCalibOflCisNln
void setCalibOflCisNln(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:412
TileEMScale::setMaxGains
void setMaxGains(unsigned int maxGains)
Definition: TileEMScale.h:455
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
TileEMScaleCondAlg::m_cablingSvc
ServiceHandle< TileCablingSvc > m_cablingSvc
Name of Tile cabling service.
Definition: TileEMScaleCondAlg.h:121
TileRawChannelUnit::OnlinePicoCoulombs
@ OnlinePicoCoulombs
Definition: TileRawChannelUnit.h:22
TileEMScaleCondAlg::m_maxGains
unsigned int m_maxGains
Definition: TileEMScaleCondAlg.h:127
TileEMScale::setCalibOnlCis
void setCalibOnlCis(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:437
AthCommonDataStore
Definition: AthCommonDataStore.h:52
AthAlgorithm::sysInitialize
virtual StatusCode sysInitialize() override
Override sysInitialize.
Definition: AthAlgorithm.cxx:66
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
TileEMScaleCondAlg::m_maxChannels
unsigned int m_maxChannels
Definition: TileEMScaleCondAlg.h:126
AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
TileRawChannelUnit::OnlineCesiumPicoCoulombs
@ OnlineCesiumPicoCoulombs
Definition: TileRawChannelUnit.h:23
TileEMScaleCondAlg::m_onlLasProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_onlLasProxy
Tool to get Tile online Laser correction factors.
Definition: TileEMScaleCondAlg.h:96
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
TileRawChannelUnit::Invalid
@ Invalid
Definition: TileRawChannelUnit.h:26
TileEMScale::setCalibOflLasLin
void setCalibOflLasLin(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:416
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
CHECK
#define CHECK(...)
Evaluate an expression and check for errors.
Definition: Control/AthenaKernel/AthenaKernel/errorcheck.h:422
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
TileCablingService
Definition: TileCablingService.h:23
SG::VarHandleKeyArray::renounce
virtual void renounce()=0
SG::HandleClassifier::type
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
Definition: HandleClassifier.h:54
TileEMScaleCondAlg::m_oflCesProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflCesProxy
Tool to get offline Cesium calibration constants.
Definition: TileEMScaleCondAlg.h:76
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
TileEMScale::setCalibOnlCes
void setCalibOnlCes(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:445
TileEMScaleCondAlg::m_oflLasFibProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflLasFibProxy
Tool to get offline Laser fiber correction factors.
Definition: TileEMScaleCondAlg.h:70
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TileEMScaleCondAlg::m_oflCisLinProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflCisLinProxy
Tool to get offline CIS calibration constants.
Definition: TileEMScaleCondAlg.h:46
TileEMScale::setCalibOflEms
void setCalibOflEms(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:432
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
TileEMScale::setCalibOflCisLin
void setCalibOflCisLin(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:408
AthAlgorithm::m_extendedExtraObjects
DataObjIDColl m_extendedExtraObjects
Definition: AthAlgorithm.h:79
TileEMScaleCondAlg::m_onlCisProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_onlCisProxy
Tool to get online CIS calibration constants.
Definition: TileEMScaleCondAlg.h:90
a
TList * a
Definition: liststreamerinfos.cxx:10
h
TileEMScale::setCalibOflLasFib
void setCalibOflLasFib(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:424
Amg::intersect
std::optional< double > intersect(const AmgVector(N)&posA, const AmgVector(N)&dirA, const AmgVector(N)&posB, const AmgVector(N)&dirB)
Calculates the closest approach of two lines.
Definition: GeoPrimitivesHelpers.h:302
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:616
declareProperty
#define declareProperty(n, p, h)
Definition: BaseFakeBkgTool.cxx:15
AthAlgorithm::AthAlgorithm
AthAlgorithm()
Default constructor:
TileEMScaleCondAlg::m_oflEmsProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_oflEmsProxy
Tool to get offline EMS factors.
Definition: TileEMScaleCondAlg.h:82
TileEMScale::initialize
bool initialize()
Definition: TileEMScale.cxx:35
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:790
TileEMScaleCondAlg::m_onlCacheUnitString
Gaudi::Property< std::string > m_onlCacheUnitString
Online cache units as string, see TileIdentifier/TileRawChannelUnit.h.
Definition: TileEMScaleCondAlg.h:40
TileEMScaleCondAlg::m_onlCacheUnit
TileRawChannelUnit::UNIT m_onlCacheUnit
Definition: TileEMScaleCondAlg.h:128
LHEF::Writer
Pythia8::Writer Writer
Definition: Prophecy4fMerger.cxx:12
SG::WriteCondHandle
Definition: WriteCondHandle.h:26
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
TileEMScale::setCalibOflLasNln
void setCalibOflLasNln(std::unique_ptr< TileCalibDataFlt > calibData)
Definition: TileEMScale.cxx:420
TileEMScaleCondAlg::m_onlCesProxy
ToolHandle< ITileCondProxy< TileCalibDrawerFlt > > m_onlCesProxy
Tool to get Tile online Cesium calibration constants.
Definition: TileEMScaleCondAlg.h:102
fitman.k
k
Definition: fitman.py:528
TileRawChannelUnit::OnlineMegaElectronVolts
@ OnlineMegaElectronVolts
Definition: TileRawChannelUnit.h:24
ServiceHandle< ICondSvc >