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

#include <LArAutoCorrTotalCondAlg.h>

Inheritance diagram for LArAutoCorrTotalCondAlg:
Collaboration diagram for LArAutoCorrTotalCondAlg:

Public Member Functions

 LArAutoCorrTotalCondAlg (const std::string &name, ISvcLocator *pSvcLocator)
 
virtual ~LArAutoCorrTotalCondAlg () override
 
virtual StatusCode initialize () override
 
virtual StatusCode execute () 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

SG::ReadCondHandleKey< LArADC2MeVm_LArADC2MeVObjKey
 
SG::ReadCondHandleKey< LArOnOffIdMappingm_LArOnOffIdMappingObjKey
 
SG::ReadCondHandleKey< ILArShapem_LArShapeObjKey
 
SG::ReadCondHandleKey< ILArAutoCorrm_LArAutoCorrObjKey
 
SG::ReadCondHandleKey< ILArNoisem_LArNoiseObjKey
 
SG::ReadCondHandleKey< ILArPedestalm_LArPedestalObjKey
 
SG::ReadCondHandleKey< ILArfSamplm_LArfSamplObjKey
 
SG::ReadCondHandleKey< ILArMinBiasm_LArMinBiasObjKey
 
SG::WriteCondHandleKey< LArAutoCorrTotalm_LArAutoCorrTotalObjKey
 
bool m_NoPile
 
bool m_isMC
 
bool m_isSuperCell
 
int m_Nsamples
 
unsigned int m_firstSample
 
int m_deltaBunch
 
size_t m_nGains = 0UL
 
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

Definition at line 26 of file LArAutoCorrTotalCondAlg.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

◆ LArAutoCorrTotalCondAlg()

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

Definition at line 15 of file LArAutoCorrTotalCondAlg.cxx.

17  : ::AthAlgorithm(name, pSvcLocator),
18  m_LArADC2MeVObjKey("LArADC2MeV"),
19  m_LArOnOffIdMappingObjKey("LArOnOffIdMap"),
20  m_LArShapeObjKey("LArShapeSym"),
21  m_LArAutoCorrObjKey("LArAutoCorrSym"),
22  m_LArNoiseObjKey("LArNoiseSym"),
23  m_LArPedestalObjKey("LArPedestal"),
24  m_LArfSamplObjKey("LArfSamplSym"),
25  m_LArMinBiasObjKey("LArMinBiasSym"),
26  m_LArAutoCorrTotalObjKey("LArAutoCorrTotal"),
27  m_NoPile(false), m_isMC(true),
28  m_isSuperCell(false), m_Nsamples(5),
30  declareProperty("LArADC2MeVObjKey", m_LArADC2MeVObjKey,
31  "Key to read LArADC2MeV object");
32  declareProperty("LArOnOffIdMappingObjKey", m_LArOnOffIdMappingObjKey,
33  "Key to read LArOnOffIdMapping object");
34  declareProperty("LArShapeObjKey", m_LArShapeObjKey,
35  "Key to read LArShape object");
36  declareProperty("LArAutoCorrObjKey", m_LArAutoCorrObjKey,
37  "Key to read LArAutoCorr object");
38  declareProperty("LArNoiseObjKey", m_LArNoiseObjKey,
39  "Key to read LArNoise object");
40  declareProperty("LArPedestalObjKey", m_LArPedestalObjKey,
41  "Key to read LArPedestal object");
42  declareProperty("LArfSamplObjKey", m_LArfSamplObjKey,
43  "Key to read LArfSampl object");
44  declareProperty("LArMinBiasObjKey", m_LArMinBiasObjKey,
45  "Key to read LArMinBias object");
46  declareProperty("LArAutoCorrTotalObjKey", m_LArAutoCorrTotalObjKey,
47  "Key to write LArAutoCorrTotal object");
48  declareProperty("NoPileUp", m_NoPile);
49  declareProperty("isMC", m_isMC);
50  declareProperty("isSuperCell", m_isSuperCell);
51  declareProperty("Nsamples", m_Nsamples, "Max number of samples to use");
53  "firstSample", m_firstSample,
54  "First sample to use for in-time event on the full pulse shape");
55  declareProperty("deltaBunch", m_deltaBunch,
56  "Delta between filled bunches in 25 ns units");
57 }

◆ ~LArAutoCorrTotalCondAlg()

LArAutoCorrTotalCondAlg::~LArAutoCorrTotalCondAlg ( )
overridevirtual

Definition at line 59 of file LArAutoCorrTotalCondAlg.cxx.

59 {}

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 LArAutoCorrTotalCondAlg::execute ( )
overridevirtual

Definition at line 88 of file LArAutoCorrTotalCondAlg.cxx.

88  {
89 
90  // WriteHandle setup
92  // So the following should not be called usually?!
93  if (writeHandle.isValid()) {
95  "CondHandle "
96  << writeHandle.fullKey() << " is already valid.");
97  return StatusCode::SUCCESS;
98  }
99 
100  // Identifier helper
101  const LArOnlineID_Base *larOnlineID = nullptr;
102  if (m_isSuperCell) {
103  const LArOnline_SuperCellID *scidhelper;
104  ATH_CHECK(detStore()->retrieve(scidhelper, "LArOnline_SuperCellID"));
105  larOnlineID = scidhelper; // cast to base-class
106  } else { // regular cells
107  const LArOnlineID *idhelper;
108  ATH_CHECK(detStore()->retrieve(idhelper, "LArOnlineID"));
109  larOnlineID = idhelper; // cast to base-class
110  }
111  // Mapping helper
112  const LArOnOffIdMapping *larOnOffIdMapping = nullptr;
113  SG::ReadCondHandle<LArOnOffIdMapping> larOnOffIdMappingHdl{
115  };
116  larOnOffIdMapping = *larOnOffIdMappingHdl;
117  if (larOnOffIdMapping == nullptr) {
118  ATH_MSG_ERROR("Failed to retrieve LArOnOffIdMapping object");
119  }
120 
121  // Get pointers to inputs
123  // FIXME: should check if handle is properly created and/or check if handle is
124  // properly retrieved
125  // operator star of a ReadCondHandle returns a const pointer to type T
126  const ILArShape *larShape{ *ShapeHdl };
127  writeHandle.addDependency(ShapeHdl);
128 
130  const ILArAutoCorr *larAutoCorr{ *AutoCorrHdl };
131  writeHandle.addDependency(AutoCorrHdl);
132 
134  const LArADC2MeV *larADC2MeV = nullptr;
135  larADC2MeV = *ADC2MeVHdl;
136  if (larADC2MeV == nullptr) {
137  ATH_MSG_ERROR("Failed to retrieve LArADC2MeV object");
138  }
139  writeHandle.addDependency(ADC2MeVHdl);
140 
141  // Consider the determinstic objects
142  // checking isMC and NoPile again seems very clumsy. How to check if key has
143  // already been initialized?
144  const ILArNoise *larNoise = nullptr;
145  const ILArPedestal *larPedestal = nullptr;
146  const ILArfSampl *larfSampl = nullptr;
147  const ILArMinBias *larMinBias = nullptr;
148 
149  if (!m_NoPile) {
150  if (m_isMC) {
152  larNoise = *NoiseHdl;
153  writeHandle.addDependency(NoiseHdl);
154  } else {
156  larPedestal = *PedestalHdl;
157  writeHandle.addDependency(PedestalHdl);
158  }
159 
161  larfSampl = *fSamplHdl;
162  writeHandle.addDependency(fSamplHdl);
163 
165  larMinBias = *MinBiasHdl;
166  writeHandle.addDependency(MinBiasHdl);
167  }
168 
169  ATH_MSG_INFO("IOV found from intersection for AutoCorrTotal object: "
170  << writeHandle.getRange());
171 
172  // make output object
173  // dimensions: number of gains x number of channel IDs x elements of
174  // AutoCorrTotal
175  std::unique_ptr<LArAutoCorrTotal> larAutoCorrTotal =
176  std::make_unique<LArAutoCorrTotal>(larOnlineID, larOnOffIdMapping, m_nGains);
177 
178  int count = 0;
179  int count2 = 0;
180  int count3 =0;
181 
182  for (const HWIdentifier chid : larOnlineID->channel_range()) {
183  count++;
184  const IdentifierHash hid = larOnlineID->channel_Hash(chid);
185  // const unsigned int id32 = chid.get_identifier32().get_compact();
186 
187  if (larOnOffIdMapping->isOnlineConnected(chid)) {
188  count2++;
189 
190  for (size_t igain = 0; igain < m_nGains; igain++) {
191  const ILArShape::ShapeRef_t Shape = larShape->Shape(chid, igain);
192  const int nsamples_shape = static_cast<int>(Shape.size());
193 
195  larAutoCorr->autoCorr(chid, igain);
196 
197  if (AC.size() == 0) {
198  ATH_MSG_INFO("No ElecCalib AC for channel " << larOnlineID->channel_name(chid) << ", gain "<<igain << ". Skip.");
199  continue;
200  }
201 
202  count3++;
203  int nsamples_AC_OFC = AC.size() + 1;
204 
205  if (nsamples_AC_OFC > m_Nsamples) {
206  nsamples_AC_OFC = m_Nsamples;
207  }
208 
209  // fix HEC first sample +1 if the firstSample is 0 and nsamples 4
210  unsigned int ihecshift = 0;
211  if (larOnlineID->isHECchannel(chid) && nsamples_AC_OFC == 4 &&
212  m_firstSample == 0) {
213  ihecshift = 1;
214  // ATH_MSG_DEBUG( "Using firstSample +1 for HEC ChID 0x" << MSG::hex
215  // << id << MSG::dec );
216  }
217 
218  //:::::::::::::::::::::::::::::::
219  // NB:
220  // nsamples_shape = number of samples of the Shape function (e.g 32)
221  // nsamples_AC_OFC = size of AC matrix & OFC vector (e.g 5 in Atlas)
222  //:::::::::::::::::::::::::::::::
223  float fSigma2 = 0.;
224  if (!m_NoPile) {
225  float SigmaNoise;
226  if (m_isMC)
227  SigmaNoise = larNoise->noise(chid, igain);
228  else {
229  float RMSpedestal = larPedestal->pedestalRMS(chid, igain);
230  if (RMSpedestal > (1.0 + LArElecCalib::ERRORCODE))
231  SigmaNoise = RMSpedestal;
232  else
233  SigmaNoise = 0.; //(we will have the ERROR message below)
234  }
235  float fSampl = larfSampl->FSAMPL(chid);
236  float MinBiasRMS = larMinBias->minBiasRMS(chid);
237  if (fSampl != 0)
238  MinBiasRMS /= fSampl;
239  const auto polynom_adc2mev =
240  larADC2MeV->ADC2MEV(hid, igain);
241  float Adc2MeV = 0.;
242  if (polynom_adc2mev.size() > 0) {
243  Adc2MeV = (polynom_adc2mev)[1];
244  }
245  if (SigmaNoise != 0 && Adc2MeV != 0)
246  fSigma2 = pow(MinBiasRMS / (SigmaNoise * Adc2MeV), 2);
247 
248  if (fSampl == 0 || SigmaNoise == 0 || Adc2MeV == 0) {
249  if (m_isMC) {
250  ATH_MSG_ERROR(larOnlineID->show_to_string(
251  larOnOffIdMapping->cnvToIdentifier(chid))
252  << "fSampl (" << fSampl << "), SigmaNoise ("
253  << SigmaNoise << ") or Adc2MeV (" << Adc2MeV
254  << ") null "
255  << "=> AutoCorrTotal = only AutoCorr elect. part ");
256  }
257  fSigma2 = 0.;
258  }
259  ATH_MSG_DEBUG(chid.get_identifier32().get_compact()
260  << ") fSampl (" << fSampl << ") "
261  << ") SigmaNoise (" << SigmaNoise << ") "
262  << ") Adc2MeV (" << Adc2MeV << ") "
263 
264  );
265 
266  // warning: MinBiasRMS is in MeV (at the scale of the hits)
267  // SigmaNoise is in ADC counts
268  // so MinBiasRMS/fScale and SigmaNoise*Adc2MeV are the same scale
269  // (MeV at the scale of the cells)
270  } // end if m_NoPile
271 
272  // get in vTerms all the possible non trivial N(N-1)/2 terms of the
273  // autocorrelation matrix
274  int nsize_tot = (nsamples_AC_OFC - 1) * (nsamples_AC_OFC) / 2;
275 
276  ATH_MSG_DEBUG(chid.get_identifier32().get_compact()
277  << ") fSigma2 (" << fSigma2 << ") "
278  << ") nsamples_AC_OFC ( " << nsamples_AC_OFC);
279  std::vector<float> vTerms;
280 
281  vTerms.resize(2 * nsize_tot + nsamples_AC_OFC, 0.);
282  //:::::::::::::::::::::::::::::::
283 
284  for (int j1 = 0; j1 < nsamples_AC_OFC - 1; j1++) {
285  for (int j2 = j1 + 1; j2 < nsamples_AC_OFC; j2++) {
286  int l = abs(j2 - j1) - 1;
287  int index =
288  j1 * nsamples_AC_OFC - j1 * (j1 + 1) / 2 + j2 - (j1 + 1);
289  vTerms[index] = AC[l];
290  }
291  }
292 
293  ATH_MSG_DEBUG(chid.get_identifier32().get_compact()
294  << ") vTerms[1] (" << vTerms[1] << ") ");
295  // 2nd terms :
296  for (int j1 = 0; j1 < nsamples_AC_OFC - 1; ++j1) {
297  for (int j2 = j1 + 1; j2 < nsamples_AC_OFC; j2++) {
298  int index =
299  j1 * nsamples_AC_OFC - j1 * (j1 + 1) / 2 + j2 - (j1 + 1);
300  float Rij = 0;
301  for (int k = 0; k < nsamples_shape; ++k) {
302  if ((j2 - j1 + k) >= 0 && (j2 - j1 + k) < nsamples_shape) {
303  int ibunch = 0;
304  if ((j1 + m_firstSample + ihecshift - k) % m_deltaBunch == 0)
305  ibunch = 1;
306  Rij += Shape[k] * Shape[j2 - j1 + k] * ibunch;
307  }
308  }
309  vTerms[nsize_tot + index] = fSigma2 * Rij;
310  }
311  }
312  ATH_MSG_DEBUG(chid.get_identifier32().get_compact()
313  << ") vTerms[mid] (" << vTerms[vTerms.size()/2] << ") ");
314 
315  // 3rd term : RMS of pileup per samples (multiplied by fSigma2)
316  for (int j1 = 0; j1 < nsamples_AC_OFC; j1++) {
317  float Rms2i = 0;
318  for (int k = 0; k < nsamples_shape; ++k) {
319  int ibunch = 0;
320  if ((j1 + m_firstSample + ihecshift - k) % m_deltaBunch == 0)
321  ibunch = 1;
322  Rms2i += pow(Shape[k], 2) * ibunch;
323  }
324  vTerms[2 * nsize_tot + j1] = fSigma2 * Rms2i;
325  }
326  ATH_MSG_DEBUG(chid.get_identifier32().get_compact()
327  << ") vTerms[last] (" << vTerms[vTerms.size()-1] << ") ");
328 
329 
330  // storage
331  larAutoCorrTotal->set(hid, igain, vTerms);
332 
333  } //(loop on gains)
334 
335  } else // unconnected
336  for (unsigned int igain = 0; igain < m_nGains; igain++) {
337  unsigned nsize_tot = (m_Nsamples - 1) * (m_Nsamples) + m_Nsamples;
338  std::vector<float> empty(nsize_tot, 0.);
339  larAutoCorrTotal->set(hid, igain, empty);
340  }
341  }
342 
343  ATH_MSG_INFO("LArAutoCorrTotal Ncell " << count);
344  ATH_MSG_INFO("LArAutoCorrTotal Ncell * Ngain " << count3);
345  ATH_MSG_INFO("LArAutoCorrTotal Nconnected " << count2);
346 
347  ATH_MSG_INFO("LArAutoCorrTotal record with key" << m_LArAutoCorrTotalObjKey);
348 
349  ATH_CHECK(writeHandle.record(std::move(larAutoCorrTotal)));
350 
351 
352  return StatusCode::SUCCESS;
353 }

◆ 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 }

◆ initialize()

StatusCode LArAutoCorrTotalCondAlg::initialize ( )
overridevirtual

Definition at line 61 of file LArAutoCorrTotalCondAlg.cxx.

61  {
62  ATH_MSG_DEBUG("initialize " << name());
63 
64  // ReadCondHandle initialization
69 
71 
76 
77  // Number of gains (does this have to be in initialize now b/c of AthenaMT?)
78  if (m_isSuperCell) {
79  m_nGains = 1;
80  } else {
81  m_nGains = 3;
82  }
83 
84  ATH_MSG_DEBUG("settings: m_NoPile " << m_NoPile);
85  return StatusCode::SUCCESS;
86 }

◆ 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_deltaBunch

int LArAutoCorrTotalCondAlg::m_deltaBunch
private

Definition at line 54 of file LArAutoCorrTotalCondAlg.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_firstSample

unsigned int LArAutoCorrTotalCondAlg::m_firstSample
private

Definition at line 53 of file LArAutoCorrTotalCondAlg.h.

◆ m_isMC

bool LArAutoCorrTotalCondAlg::m_isMC
private

Definition at line 50 of file LArAutoCorrTotalCondAlg.h.

◆ m_isSuperCell

bool LArAutoCorrTotalCondAlg::m_isSuperCell
private

Definition at line 51 of file LArAutoCorrTotalCondAlg.h.

◆ m_LArADC2MeVObjKey

SG::ReadCondHandleKey<LArADC2MeV> LArAutoCorrTotalCondAlg::m_LArADC2MeVObjKey
private

Definition at line 36 of file LArAutoCorrTotalCondAlg.h.

◆ m_LArAutoCorrObjKey

SG::ReadCondHandleKey<ILArAutoCorr> LArAutoCorrTotalCondAlg::m_LArAutoCorrObjKey
private

Definition at line 41 of file LArAutoCorrTotalCondAlg.h.

◆ m_LArAutoCorrTotalObjKey

SG::WriteCondHandleKey<LArAutoCorrTotal> LArAutoCorrTotalCondAlg::m_LArAutoCorrTotalObjKey
private

Definition at line 47 of file LArAutoCorrTotalCondAlg.h.

◆ m_LArfSamplObjKey

SG::ReadCondHandleKey<ILArfSampl> LArAutoCorrTotalCondAlg::m_LArfSamplObjKey
private

Definition at line 44 of file LArAutoCorrTotalCondAlg.h.

◆ m_LArMinBiasObjKey

SG::ReadCondHandleKey<ILArMinBias> LArAutoCorrTotalCondAlg::m_LArMinBiasObjKey
private

Definition at line 45 of file LArAutoCorrTotalCondAlg.h.

◆ m_LArNoiseObjKey

SG::ReadCondHandleKey<ILArNoise> LArAutoCorrTotalCondAlg::m_LArNoiseObjKey
private

Definition at line 42 of file LArAutoCorrTotalCondAlg.h.

◆ m_LArOnOffIdMappingObjKey

SG::ReadCondHandleKey<LArOnOffIdMapping> LArAutoCorrTotalCondAlg::m_LArOnOffIdMappingObjKey
private

Definition at line 38 of file LArAutoCorrTotalCondAlg.h.

◆ m_LArPedestalObjKey

SG::ReadCondHandleKey<ILArPedestal> LArAutoCorrTotalCondAlg::m_LArPedestalObjKey
private

Definition at line 43 of file LArAutoCorrTotalCondAlg.h.

◆ m_LArShapeObjKey

SG::ReadCondHandleKey<ILArShape> LArAutoCorrTotalCondAlg::m_LArShapeObjKey
private

Definition at line 40 of file LArAutoCorrTotalCondAlg.h.

◆ m_nGains

size_t LArAutoCorrTotalCondAlg::m_nGains = 0UL
private

Definition at line 56 of file LArAutoCorrTotalCondAlg.h.

◆ m_NoPile

bool LArAutoCorrTotalCondAlg::m_NoPile
private

Definition at line 49 of file LArAutoCorrTotalCondAlg.h.

◆ m_Nsamples

int LArAutoCorrTotalCondAlg::m_Nsamples
private

Definition at line 52 of file LArAutoCorrTotalCondAlg.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:
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
LArADC2MeV::ADC2MEV
const LArVectorProxy ADC2MEV(const HWIdentifier &id, int gain) const
Definition: LArADC2MeV.h:32
LArOnlineID_Base::channel_Hash
IdentifierHash channel_Hash(HWIdentifier channelId) const
Create channel_hash from channel_Id.
Definition: LArOnlineID_Base.cxx:1632
LArAutoCorrTotalCondAlg::m_LArADC2MeVObjKey
SG::ReadCondHandleKey< LArADC2MeV > m_LArADC2MeVObjKey
Definition: LArAutoCorrTotalCondAlg.h:36
SG::ReadCondHandle
Definition: ReadCondHandle.h:44
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
index
Definition: index.py:1
AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
ILArPedestal
Definition: ILArPedestal.h:12
LArAutoCorrTotalCondAlg::m_NoPile
bool m_NoPile
Definition: LArAutoCorrTotalCondAlg.h:49
LArElecCalib::ERRORCODE
@ ERRORCODE
Definition: LArCalibErrorCode.h:17
LArAutoCorrTotal::set
bool set(const IdentifierHash &hid, const int gain, std::vector< float > &autocorrtotal)
Definition: LArAutoCorrTotal.cxx:23
conifer::pow
constexpr int pow(int x)
Definition: conifer.h:20
TRT_PAI_gasdata::AC
const float AC
Definition: TRT_PAI_gasdata.h:27
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_evtStore
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
Definition: AthCommonDataStore.h:390
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_vhka
std::vector< SG::VarHandleKeyArray * > m_vhka
Definition: AthCommonDataStore.h:398
UploadAMITag.l
list l
Definition: UploadAMITag.larcaf.py:158
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
HWIdentifier
Definition: HWIdentifier.h:13
empty
bool empty(TH1 *h)
Definition: computils.cxx:294
XMLtoHeader.count
count
Definition: XMLtoHeader.py:85
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
ILArNoise
Definition: ILArNoise.h:12
AthCommonDataStore< AthCommonMsg< Algorithm > >::detStore
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:95
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
ILArAutoCorr
This class defines the interface for accessing AutoCorrelation parameters for each channel @stereotyp...
Definition: ILArAutoCorr.h:29
IDTPMcnv.htype
htype
Definition: IDTPMcnv.py:27
LArAutoCorrTotalCondAlg::m_firstSample
unsigned int m_firstSample
Definition: LArAutoCorrTotalCondAlg.h:53
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
AthCommonDataStore
Definition: AthCommonDataStore.h:52
LArAutoCorrTotalCondAlg::m_isMC
bool m_isMC
Definition: LArAutoCorrTotalCondAlg.h:50
AthAlgorithm::sysInitialize
virtual StatusCode sysInitialize() override
Override sysInitialize.
Definition: AthAlgorithm.cxx:66
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
LArOnlineID_Base::channel_range
id_range channel_range() const
Definition: LArOnlineID_Base.cxx:1932
doubleTestComp.j1
j1
Definition: doubleTestComp.py:21
AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
LArOnlineID_Base::isHECchannel
virtual bool isHECchannel(const HWIdentifier id) const =0
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
ILArfSampl::FSAMPL
virtual const float & FSAMPL(const HWIdentifier &id) const =0
ILArNoise::noise
virtual const float & noise(const HWIdentifier &id, int gain) const =0
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
WriteCellNoiseToCool.igain
igain
Definition: WriteCellNoiseToCool.py:338
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
ILArMinBias
Definition: ILArMinBias.h:13
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
LArAutoCorrTotalCondAlg::m_deltaBunch
int m_deltaBunch
Definition: LArAutoCorrTotalCondAlg.h:54
LArAutoCorrTotalCondAlg::m_LArAutoCorrTotalObjKey
SG::WriteCondHandleKey< LArAutoCorrTotal > m_LArAutoCorrTotalObjKey
Definition: LArAutoCorrTotalCondAlg.h:47
LArOnlineID_Base
Helper for the Liquid Argon Calorimeter cell identifiers.
Definition: LArOnlineID_Base.h:105
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
LArAutoCorrTotalCondAlg::m_LArPedestalObjKey
SG::ReadCondHandleKey< ILArPedestal > m_LArPedestalObjKey
Definition: LArAutoCorrTotalCondAlg.h:43
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
LArOnlineID
Definition: LArOnlineID.h:20
LArOnline_SuperCellID
Definition: LArOnline_SuperCellID.h:20
LArADC2MeV
Definition: LArADC2MeV.h:21
AthAlgorithm::m_extendedExtraObjects
DataObjIDColl m_extendedExtraObjects
Definition: AthAlgorithm.h:79
DeMoScan.index
string index
Definition: DeMoScan.py:364
LArAutoCorrTotalCondAlg::m_LArMinBiasObjKey
SG::ReadCondHandleKey< ILArMinBias > m_LArMinBiasObjKey
Definition: LArAutoCorrTotalCondAlg.h:45
a
TList * a
Definition: liststreamerinfos.cxx:10
h
AtlasDetectorID::show_to_string
std::string show_to_string(Identifier id, const IdContext *context=0, char sep='.') const
or provide the printout in string form
Definition: AtlasDetectorID.cxx:574
LArAutoCorrTotalCondAlg::m_LArOnOffIdMappingObjKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_LArOnOffIdMappingObjKey
Definition: LArAutoCorrTotalCondAlg.h:38
LArOnOffIdMapping::cnvToIdentifier
Identifier cnvToIdentifier(const HWIdentifier &sid) const
create an Identifier from a HWIdentifier (inline)
Definition: LArOnOffIdMapping.h:116
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
LArAutoCorrTotalCondAlg::m_isSuperCell
bool m_isSuperCell
Definition: LArAutoCorrTotalCondAlg.h:51
ILArMinBias::minBiasRMS
virtual const float & minBiasRMS(const HWIdentifier &id) const =0
access to RMS of E in minimum bias events index by Identifier
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:623
AthAlgorithm::AthAlgorithm
AthAlgorithm()
Default constructor:
LArAutoCorrTotalCondAlg::m_LArfSamplObjKey
SG::ReadCondHandleKey< ILArfSampl > m_LArfSamplObjKey
Definition: LArAutoCorrTotalCondAlg.h:44
LArAutoCorrTotalCondAlg::m_nGains
size_t m_nGains
Definition: LArAutoCorrTotalCondAlg.h:56
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:798
LHEF::Writer
Pythia8::Writer Writer
Definition: Prophecy4fMerger.cxx:12
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
LArAutoCorrTotalCondAlg::m_LArNoiseObjKey
SG::ReadCondHandleKey< ILArNoise > m_LArNoiseObjKey
Definition: LArAutoCorrTotalCondAlg.h:42
LArOnlineID_Base::channel_name
std::string channel_name(const HWIdentifier id) const
Return a string corresponding to a feedthrough name given an identifier.
Definition: LArOnlineID_Base.cxx:219
ILArShape
Definition: ILArShape.h:13
LArAutoCorrTotalCondAlg::m_LArAutoCorrObjKey
SG::ReadCondHandleKey< ILArAutoCorr > m_LArAutoCorrObjKey
Definition: LArAutoCorrTotalCondAlg.h:41
ILArPedestal::pedestalRMS
virtual float pedestalRMS(const HWIdentifier &id, int gain) const =0
access to RMS of Pedestal index by Identifier, and gain setting
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
doubleTestComp.j2
j2
Definition: doubleTestComp.py:22
LArAutoCorrTotalCondAlg::m_Nsamples
int m_Nsamples
Definition: LArAutoCorrTotalCondAlg.h:52
LArOnOffIdMapping::isOnlineConnected
bool isOnlineConnected(const HWIdentifier &sid) const
Test whether a HWIdentifier is connected of not (inline)
Definition: LArOnOffIdMapping.h:121
fitman.k
k
Definition: fitman.py:528
LArVectorProxy
Proxy for accessing a range of float values like a vector.
Definition: LArVectorProxy.h:38
LArAutoCorrTotalCondAlg::m_LArShapeObjKey
SG::ReadCondHandleKey< ILArShape > m_LArShapeObjKey
Definition: LArAutoCorrTotalCondAlg.h:40
ILArfSampl
Definition: ILArfSampl.h:14
ServiceHandle< ICondSvc >
LArOnOffIdMapping
Definition: LArOnOffIdMapping.h:20