|
ATLAS Offline Software
|
#include <LArCaliWaveBuilder.h>
|
| LArCaliWaveBuilder (const std::string &name, ISvcLocator *pSvcLocator) |
|
| ~LArCaliWaveBuilder () |
|
StatusCode | initialize () |
|
StatusCode | execute () |
|
virtual StatusCode | stop () |
|
StatusCode | finalize () |
|
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 |
|
|
SG::ReadCondHandleKey< LArOnOffIdMapping > | m_cablingKey {this,"CablingKey","LArOnOffIdMap","SG Key of LArOnOffIdMapping object"} |
|
SG::ReadCondHandleKey< LArOnOffIdMapping > | m_cablingKeySC {this,"ScCablingKey","LArOnOffIdMapSC","SG Key of SC LArOnOffIdMapping object"} |
|
SG::ReadCondHandleKey< LArCalibLineMapping > | m_calibMapKey {this,"CalibLineKey","LArCalibLineMap","SG Key of calib. line mapping object"} |
|
SG::ReadCondHandleKey< ILArPedestal > | m_pedKey {this,"PedestalKey","Pedestal","SG Key of pedestal object"} |
|
bool | m_useAccumulatedDigits |
|
std::vector< std::string > | m_keylist |
|
std::vector< std::string > | m_keylistproperty |
|
std::string | m_keyoutput |
|
std::string | m_groupingType |
|
WaveContainer | m_waves |
|
bool | m_pedSub |
|
unsigned | m_baseline |
|
bool | m_recAll |
|
bool | m_isSC |
|
bool | m_useDacAndIsPulsedIndex |
|
int | m_ADCsatur |
|
bool | m_checkEmptyPhases |
|
const LArOnlineID_Base * | m_onlineID |
|
unsigned | m_event_counter |
|
int | m_NStep |
|
float | m_SamplingPeriod |
|
float | m_dt |
|
uint16_t | m_fatalFebErrorPattern |
|
int | m_usePatt |
|
bool | m_useParams |
|
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 |
|
Definition at line 28 of file LArCaliWaveBuilder.h.
◆ StoreGateSvc_t
◆ WaveContainer
◆ WaveMap
◆ LArCaliWaveBuilder()
LArCaliWaveBuilder::LArCaliWaveBuilder |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ ~LArCaliWaveBuilder()
LArCaliWaveBuilder::~LArCaliWaveBuilder |
( |
| ) |
|
|
default |
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation 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.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation 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.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation 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.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation 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.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode LArCaliWaveBuilder::execute |
( |
| ) |
|
Definition at line 117 of file LArCaliWaveBuilder.cxx.
120 const EventContext& ctx = getContext();
133 return StatusCode::SUCCESS;
137 const EventContext& ctx = Gaudi::Hive::currentContext();
142 return StatusCode::FAILURE;
151 ATH_MSG_ERROR(
"Key list is empty! No containers to process!" );
152 return StatusCode::FAILURE;
◆ executeWithAccumulatedDigits()
Definition at line 163 of file LArCaliWaveBuilder.cxx.
169 std::vector<std::string>::const_iterator key_it=
m_keylist.begin();
170 std::vector<std::string>::const_iterator key_it_e=
m_keylist.end();
172 for (;key_it!=key_it_e; ++key_it) {
174 sc =
evtStore()->retrieve(larAccumulatedCalibDigitContainer,*key_it);
175 if (
sc.isFailure()) {
176 ATH_MSG_WARNING(
"Cannot read LArAccumulatedCalibDigitContainer from StoreGate! key=" << *key_it );
177 if ( (
std::next(key_it) == key_it_e) && foundkey==0 ){
178 ATH_MSG_ERROR(
"None of the provided LArAccumulatedDigitContainer keys could be read");
179 return StatusCode::FAILURE;
187 if (
evtStore()->contains<LArFebErrorSummary>(
"LArFebErrorSummary")) {
189 if (
sc.isFailure()) {
190 ATH_MSG_ERROR(
"Failed to retrieve FebErrorSummary object!" );
196 ATH_MSG_WARNING(
"No FebErrorSummaryObject found! Feb errors not checked!" );
203 ATH_MSG_DEBUG(
"LArAccumulatedCalibDigitContainer with key=" << *key_it <<
" is empty ");
207 const float delayScale = larAccumulatedCalibDigitContainer->
getDelayScale();
208 const float deltaDelay = 25*
ns/(delayScale*
m_NStep);
210 for (;
it!=it_end; ++
it) {
214 const std::vector<HWIdentifier>& calibLineLeg = clcabling->
calibSlotLine((*it)->hardwareID());
215 for (
const HWIdentifier &calibLineHWID : calibLineLeg) {
219 ispulsed=(*it)->isPulsed();
230 if (febid!=lastFailedFEB) {
233 <<
" reports error(s):" << febErrSum->
error_to_string(febErrs) <<
". Data ignored." );
242 return StatusCode::FAILURE;
246 std::vector<double> samplesum;
247 std::vector < uint64_t >::const_iterator samplesum_it=(*it)->sampleSum().begin();
248 std::vector < uint64_t >::const_iterator samplesum_it_e=(*it)->sampleSum().end();
249 for (;samplesum_it!=samplesum_it_e; ++samplesum_it)
250 samplesum.push_back((
double)(*samplesum_it));
253 std::vector<double> sample2sum;
254 std::vector < uint64_t >::const_iterator sample2sum_it=(*it)->sample2Sum().begin();
255 std::vector < uint64_t >::const_iterator sample2sum_it_e=(*it)->sample2Sum().end();
256 for (;sample2sum_it!=sample2sum_it_e; ++sample2sum_it)
257 sample2sum.push_back((
double)(*sample2sum_it));
263 float delay = (*it)->delay();
264 int dac=(*it)->DAC();
268 const std::vector<HWIdentifier>& calibLineLeg = clcabling->
calibSlotLine((*it)->hardwareID());
269 if(calibLineLeg.empty()) {
270 ATH_MSG_WARNING(
"Why do not have calib lines for "<<(*it)->hardwareID()<<
" ?");
276 for (
unsigned i=0;
i<calibLineLeg.size(); ++
i) {
279 dacPulsed=(dacPulsed | (0x1 << (15+
i+1)));
280 pulsed=(pulsed | (0x1 << (15+
i+1)));
285 dacPulsed=(*it)->DAC();
286 for(
int iLine=1;iLine<5;iLine++){
287 if((*it)->isPulsed(iLine)){
289 dacPulsed=(dacPulsed | (0x1 << (15+iLine)));
290 pulsed=(pulsed | (0x1 << (15+iLine)));
302 ATH_MSG_DEBUG(
"with " << (*it)->sampleSum().size() <<
" samples " <<
index <<
" DAC " <<
delay <<
" delay " << dacPulsed <<
" dacPulsed " );
306 if ( itm == waveMap.end() ) {
308 itm = (waveMap.insert(WaveMap::value_type(
index,wave))).
first;
311 (*itm).second.addAccumulatedEvent(
int(std::roundf(
delay/deltaDelay)),
m_NStep,
312 samplesum, sample2sum, (*it)->nTriggers());
317 return StatusCode::SUCCESS;
◆ executeWithStandardDigits()
Definition at line 321 of file LArCaliWaveBuilder.cxx.
327 std::vector<std::string>::const_iterator key_it=
m_keylist.begin();
328 std::vector<std::string>::const_iterator key_it_e=
m_keylist.end();
330 for (;key_it!=key_it_e; ++key_it) {
332 sc =
evtStore()->retrieve(larCalibDigitContainer,*key_it);
333 if (
sc.isFailure()) {
334 ATH_MSG_WARNING(
"Cannot read LArCalibDigitContainer from StoreGate! key=" << *key_it );
342 ATH_MSG_INFO(
"LArCalibDigitContainer with key=" << *key_it <<
" is empty " );
346 const float delayScale = larCalibDigitContainer->
getDelayScale();
347 const float deltaDelay = 25*
ns/(delayScale*
m_NStep);
349 for (;
it!=it_end; ++
it) {
352 int dac = (*it)->DAC();
353 float delay= (*it)->delay();
355 const std::vector<HWIdentifier>& calibLineLeg = clcabling->
calibSlotLine((*it)->hardwareID());
358 for (
const HWIdentifier &calibLineHWID : calibLineLeg) {
362 pulsed=(*it)->isPulsed();
364 if ((!
m_recAll) && !pulsed )
continue ;
371 return StatusCode::FAILURE;
375 std::vector<double> samples;
376 for (
short sample : (*it)->samples())
377 samples.push_back((
double)(
sample));
382 if ( itm == waveMap.end() ) {
384 itm = (waveMap.insert(WaveMap::value_type((*it)->DAC(),wave))).
first;
387 (*itm).second.addEvent((
int)roundf(
delay/deltaDelay),
m_NStep, samples);
392 return StatusCode::SUCCESS;
◆ extraDeps_update_handler()
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.
57 return Algorithm::extraOutputDeps();
◆ finalize()
StatusCode LArCaliWaveBuilder::finalize |
( |
| ) |
|
|
inline |
◆ initialize()
StatusCode LArCaliWaveBuilder::initialize |
( |
| ) |
|
Definition at line 57 of file LArCaliWaveBuilder.cxx.
69 ATH_MSG_ERROR(
"Failed to set groupingType for LArCaliWave intermediate object" );
76 ATH_MSG_ERROR(
"Failed initialize LArCaliWave intermediate object" );
107 ATH_MSG_ERROR(
"Inconsistent configuration, for UsePattern > 0 the UseParams must be true");
108 return StatusCode::FAILURE;
113 return StatusCode::SUCCESS;
◆ inputHandles()
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]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
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()
◆ renounceArray()
◆ stop()
StatusCode LArCaliWaveBuilder::stop |
( |
| ) |
|
|
virtual |
get iterator for all channels for a gain
Definition at line 397 of file LArCaliWaveBuilder.cxx.
400 auto caliWaveContainer = std::make_unique<LArCaliWaveContainer>();
403 if (
sc.isFailure()) {
404 ATH_MSG_ERROR(
"Failed to set groupingType for LArCaliWaveContainer object" );
409 sc=caliWaveContainer->initialize();
410 if (
sc.isFailure()) {
411 ATH_MSG_ERROR(
"Failed initialize LArCaliWaveContainer object" );
415 const EventContext& ctx = Gaudi::Hive::currentContext();
422 return StatusCode::FAILURE;
430 return StatusCode::FAILURE;
437 ATH_MSG_INFO(
"Using fake (baseline) pedestal subtraction..." );
454 for (; cell_it!=cell_it_e; ++cell_it) {
471 const WaveMap& waveMap = (*cell_it);
472 if (waveMap.empty()) {
473 ATH_MSG_INFO(
"Empty accumulated wave. Last id: " << MSG::hex
475 << lastId <<
" this id: "<<hwId<<MSG::dec );
484 std::map<int, LArCaliWave>::const_iterator dac_it = cell_it->begin();
485 std::map<int, LArCaliWave>::const_iterator dac_it_e = cell_it->end();
489 for (; dac_it != dac_it_e; ++dac_it) {
494 const std::vector<int>& thisTriggers = thisWave.
getTriggers();
495 for (
unsigned i=0;
i<thisTriggers.size();++
i) {
496 if (thisTriggers[
i]==0) {
497 ATH_MSG_FATAL(
"Empty phase found in channel 0x" << MSG::hex << chid << MSG::dec
498 <<
"., aborting reconstruction. Sorry." );
499 return StatusCode::FAILURE;
508 float pedestal = larPedestal->pedestal(chid,
gain);
510 ATH_MSG_DEBUG(
"No pedestal(s) found for channel 0x" << MSG::hex << chid << MSG::dec);
511 ATH_MSG_INFO(
"Using fake (baseline) pedestal subtraction..." );
519 ATH_MSG_DEBUG(
"Pedestal for channel 0x" << MSG::hex << chid << MSG::dec <<
" is = " << pedAve <<
" ADC");
524 ATH_MSG_INFO(
"Absolute ADC saturation at DAC = " << thisWave.
getDAC() <<
" ... skip!" ) ;
527 dacWaves.emplace_back(((thisWave)+(-pedAve)).getWave() ,
547 ATH_MSG_INFO(
" Summary : Number of cells with a CaliWave reconstructed : " << NCaliWave );
548 ATH_MSG_INFO(
" Summary : Number of Barrel PS cells side A or C (connected+unconnected): 3904+ 192 = 4096 " );
549 ATH_MSG_INFO(
" Summary : Number of Barrel cells side A or C (connected+unconnected): 50944+2304 = 53248 " );
550 ATH_MSG_INFO(
" Summary : Number of EMEC cells side A or C (connected+unconnected): 31872+3456 = 35328 " );
551 ATH_MSG_INFO(
" Summary : Number of HEC cells side A or C (connected+unconnected): 2816+ 256 = 3072 " );
552 ATH_MSG_INFO(
" Summary : Number of FCAL cells side A or C (connected+unconnected): 1762+ 30 = 1792 " );
558 return StatusCode::SUCCESS;
◆ sysInitialize()
StatusCode AthAlgorithm::sysInitialize |
( |
| ) |
|
|
overridevirtualinherited |
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_ADCsatur
int LArCaliWaveBuilder::m_ADCsatur |
|
private |
◆ m_baseline
unsigned LArCaliWaveBuilder::m_baseline |
|
private |
◆ m_cablingKey
◆ m_cablingKeySC
◆ m_calibMapKey
◆ m_checkEmptyPhases
bool LArCaliWaveBuilder::m_checkEmptyPhases |
|
private |
◆ m_detStore
◆ m_dt
float LArCaliWaveBuilder::m_dt |
|
private |
◆ m_event_counter
unsigned LArCaliWaveBuilder::m_event_counter |
|
private |
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthAlgorithm::m_extendedExtraObjects |
|
privateinherited |
◆ m_fatalFebErrorPattern
uint16_t LArCaliWaveBuilder::m_fatalFebErrorPattern |
|
private |
◆ m_groupingType
std::string LArCaliWaveBuilder::m_groupingType |
|
private |
◆ m_isSC
bool LArCaliWaveBuilder::m_isSC |
|
private |
◆ m_keylist
std::vector<std::string> LArCaliWaveBuilder::m_keylist |
|
private |
◆ m_keylistproperty
std::vector<std::string> LArCaliWaveBuilder::m_keylistproperty |
|
private |
◆ m_keyoutput
std::string LArCaliWaveBuilder::m_keyoutput |
|
private |
◆ m_NStep
int LArCaliWaveBuilder::m_NStep |
|
private |
◆ m_onlineID
◆ m_pedKey
◆ m_pedSub
bool LArCaliWaveBuilder::m_pedSub |
|
private |
◆ m_recAll
bool LArCaliWaveBuilder::m_recAll |
|
private |
◆ m_SamplingPeriod
float LArCaliWaveBuilder::m_SamplingPeriod |
|
private |
◆ m_useAccumulatedDigits
bool LArCaliWaveBuilder::m_useAccumulatedDigits |
|
private |
◆ m_useDacAndIsPulsedIndex
bool LArCaliWaveBuilder::m_useDacAndIsPulsedIndex |
|
private |
◆ m_useParams
bool LArCaliWaveBuilder::m_useParams |
|
private |
◆ m_usePatt
int LArCaliWaveBuilder::m_usePatt |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_waves
The documentation for this class was generated from the following files:
def retrieve(aClass, aKey=None)
JetConstituentVector::iterator iterator
StatusCode executeWithStandardDigits(const LArCalibParams *calibParams=nullptr, const LArCalibLineMapping *clcabling=nullptr)
bool m_useAccumulatedDigits
Const iterator class for DataVector/DataList.
unsigned getNumberPatterns(const HWIdentifier calibModuleID) const
unsigned getFlag() const
flag: ...
unsigned NTrigger(const HWIdentifier calibModuleID) const
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
const LArOnlineID_Base * m_onlineID
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
const std::vector< HWIdentifier > & calibSlotLine(const HWIdentifier id) const
double getBaseline(const LArWave &theWave, unsigned nBase) const
std::vector< std::string > m_keylist
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKeySC
const double & getDt() const
delta time
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
int getDAC() const
DAC value.
StatusCode executeWithAccumulatedDigits(const LArCalibParams *calibParams=nullptr, const LArCalibLineMapping *clcabling=nullptr)
static std::string error_to_string(uint16_t error)
interpret the error in string
std::string m_groupingType
uint16_t m_fatalFebErrorPattern
const std::string & key() const
Return the StoreGate ID for the referenced object.
unsigned int getMax(const LArWave &theWave) const
return index of maximum sample
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual void setOwner(IDataHandleHolder *o)=0
int getIsPulsedInt() const
isPulsed value
uint16_t feb_error(HWIdentifier febid) const
get error for feb
const double & getSample(const unsigned int i) const
Amplitude per time bin.
Container class for LArCalibDigit.
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysInitialize() override
Override sysInitialize.
std::vector< std::string > m_keylistproperty
SG::ReadCondHandleKey< LArCalibLineMapping > m_calibMapKey
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
ConstConditionsMapIterator end(unsigned int gain) const
end of all channels for this gain
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::ReadCondHandleKey< ILArPedestal > m_pedKey
ConstReference get(const HWIdentifier id, unsigned int gain=0) const
get data with online identifier
double getDelayScale() const
get delay scale
bool isPulsed(const unsigned event, const HWIdentifier calibLineID) const
double delay(std::size_t d)
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
ConditionsMap::iterator ConditionsMapIterator
HWIdentifier feb_Id(int barrel_ec, int pos_neg, int feedthrough, int slot) const
Create feb_Id from fields.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
unsigned DAC(const unsigned event, const HWIdentifier calibLineID) const
Helper for the Liquid Argon Calorimeter cell identifiers.
bool m_useDacAndIsPulsedIndex
unsigned Delay(const unsigned event, const HWIdentifier calibLineID) const
StatusCode initialize(bool used=true)
std::map< int, LArCaliWave > WaveMap
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
DataObjIDColl m_extendedExtraObjects
double getDelayScale() const
get the delay Scale
virtual StatusCode initialize()
Initialization done after creation or read back - derived classes may augment the functionality.
#define ATH_MSG_WARNING(x)
Holds information from the FEB Error Summary.
ConstConditionsMapIterator begin(unsigned int gain) const
get iterator for all channels for a gain
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
AthAlgorithm()
Default constructor:
std::string channel_name(const HWIdentifier id) const
Return a string corresponding to a feedthrough name given an identifier.
Container class for LArAccumulatedCalibDigit.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
const std::vector< double > & getErrors() const
error vector
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
const std::vector< int > & getTriggers() const
trigger vector