|
ATLAS Offline Software
|
CTB simplified LArRawChannelBuilder using hardcoded calib. constants.
More...
#include <LArRawChannelSimpleBuilder.h>
|
| LArRawChannelSimpleBuilder (const std::string &name, ISvcLocator *pSvcLocator) |
|
virtual StatusCode | initialize () override |
|
virtual StatusCode | execute (const EventContext &ctx) const override |
|
virtual StatusCode | finalize () override |
|
virtual StatusCode | sysInitialize () override |
| Override sysInitialize. More...
|
|
virtual bool | isClonable () const override |
| Specify if the algorithm is clonable. More...
|
|
virtual unsigned int | cardinality () const override |
| Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant. More...
|
|
virtual StatusCode | sysExecute (const EventContext &ctx) override |
| Execute an algorithm. More...
|
|
virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. More...
|
|
virtual bool | filterPassed (const EventContext &ctx) const |
|
virtual void | setFilterPassed (bool state, const EventContext &ctx) const |
|
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, "OnOffMap", "LArOnOffIdMap", "SG key for mapping object"} |
|
SG::ReadCondHandleKey< LArADC2MeV > | m_adc2mevKey { this, "ADC2MeVKey", "LArADC2MeV", "SG Key of the LArADC2MeV CDO" } |
|
const LArEM_ID * | m_emId |
|
const LArFCAL_ID * | m_fcalId |
|
const LArHEC_ID * | m_hecId |
|
const LArOnlineID * | m_onlineHelper |
|
ToolHandle< LArParabolaPeakRecoTool > | m_peakParabolaTool |
|
SG::ReadHandleKey< LArDigitContainer > | m_DataLocation { this, "DataLocation", "FREE", "" } |
|
SG::WriteHandleKey< LArRawChannelContainer > | m_ChannelContainerName { this, "LArRawChannelContainerName", "LArRawChannels", "" } |
|
int | m_imaxSamp |
|
std::string | m_mode |
|
std::string | m_FCALmodeTime |
|
float | m_cubicAdcCut |
|
bool | m_useRampDB |
|
bool | m_usePedestalDB |
|
int | m_averageSamplesEM |
|
int | m_averageSamplesHEC |
|
int | m_averageSamplesFCAL |
|
float | m_averageScaleEM |
|
float | m_averageScaleHEC |
|
float | m_averageScaleFCAL |
|
float | m_ADCtoMeVFCAL [3] {} |
|
float | m_ADCtoMeVHEC [2] {} |
|
float | m_ADCtoMeVEMECInner [2] {} |
|
float | m_ADCtoMeVEMECOuter [4] {} |
|
float | m_ADCtoMeVEMB [4] {} |
|
unsigned int | m_iPedestal |
|
DataObjIDColl | m_extendedExtraObjects |
| Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks. More...
|
|
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 |
|
CTB simplified LArRawChannelBuilder using hardcoded calib. constants.
- Author
- Walter Lampl
-
Rob McPherson
-
Sandrine Laplace
Definition at line 35 of file LArRawChannelSimpleBuilder.h.
◆ StoreGateSvc_t
◆ LArRawChannelSimpleBuilder()
LArRawChannelSimpleBuilder::LArRawChannelSimpleBuilder |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ cardinality()
unsigned int AthReentrantAlgorithm::cardinality |
( |
| ) |
const |
|
overridevirtualinherited |
Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant.
Override this to return 0 for reentrant algorithms.
Override this to return 0 for reentrant algorithms.
Definition at line 55 of file AthReentrantAlgorithm.cxx.
◆ 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);
◆ 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.
◆ 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.
◆ 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 LArRawChannelSimpleBuilder::execute |
( |
const EventContext & |
ctx | ) |
const |
|
overridevirtual |
Definition at line 104 of file LArRawChannelSimpleBuilder.cxx.
111 ATH_MSG_DEBUG(
"1) LArDigitContainer container size = " << digitContainer->size() );
113 ATH_MSG_DEBUG(
"2) LArDigitContainer container size = " << digitContainer->size() );
114 if( digitContainer->empty() ) {
116 return StatusCode::SUCCESS;
119 auto larRawChannelContainer = std::make_unique<LArRawChannelContainer>();
126 ATH_MSG_DEBUG(
"No pedestal found in database. Use default values." );
134 return StatusCode::FAILURE;
149 int nMinEM(0),nMinHEC(0),nMinFCAL(0);
150 std::vector<float> fSumEM,fSumHEC,fSumFCAL;
151 std::vector<float> *pSum =
nullptr;
157 for(
int iloop=0;iloop<2;iloop++) {
165 const std::vector<short>& samples =
digit->samples();
166 unsigned int nSamples = samples.size();
171 float thePedestal=-1;
175 thePedestal=DBpedestal;
179 ATH_MSG_DEBUG(
"No pedestal found for this cell. Use default value " << thePedestal );
182 std::vector<float> mySamples;
183 mySamples.resize(samples.size());
188 for (
unsigned int i=0;
i<samples.size();
i++ )
190 mySamples[
i] = ((
float)samples[
i]) - thePedestal;
196 GainFactor = 9.8*9.8;
209 ATH_MSG_DEBUG( std::hex <<
" FebID / chid / channel = " << FebID <<
" / " << chid <<
" / " <<
channel );
217 unsigned int nAverage = 1;
259 << nAverage <<
") is larger than total number of samples ("
260 <<
nSamples <<
")! adjusting nAverage ... " );
272 for(
unsigned j=0;j<nAverage;j++ ) {
273 (*pSum)[
i] += mySamples[
i+j];
278 float maxADCPeak = 0.;
279 unsigned int iPeakSamp = 0;
280 float averagedADC = 0;
282 if ( maxADCPeak < mySamples[
i] )
284 maxADCPeak = mySamples[
i];
287 if ( (
int)
i >= nMin &&
i < nMin+nAverage )
288 averagedADC += mySamples[
i];
290 averagedADC /= myScale;
292 bool CubicFailed =
false;
300 ADCPeak = maxADCPeak;
316 const float invT[3][3]
322 if ( iPeakSamp <= 1 ) {
324 }
else if ( iPeakSamp >=
nSamples - 1 ) {
332 float A[3] = {0, 0, 0};
335 for (
int ia = 0; ia < 3; ia++)
336 for (
int it = 0;
it < 3;
it++)
337 A[ia] += invT[ia][
it] * mySamples[it0+
it];
340 if ( not ( CubicFailed = (
A[2] == 0 ) ) ) {
341 dtmax = -1.0 *
A[1] / 2.0 /
A[2];
342 if ( ! ( CubicFailed = ( dtmax < 0 || dtmax > 2 ) ) ) {
345 for(
int ia = 0; ia < 3; ia++)
346 ADCPeak +=
A[ia] *
pow(dtmax, ia);
352 float weightSum = 0.;
354 for(
int it=0;
it<3;
it++) {
356 weightSum +=
float(mySamples[it0+
it]);
368 if (
m_mode ==
"PARABOLA" &&
381 <<
" Cannot get offline identifier from online ID = " << chid );
386 ADCPeak = peak[0]-thePedestal;
387 if (peak.size()==2)
time = peak[1];
390 ATH_MSG_DEBUG(
"No pic is computed from Parabola. Use scaled average of selected samples" );
391 ADCPeak = averagedADC;
395 ATH_MSG_FATAL(
"No parabola tool available ! Choose another mode" );
400 else if (
m_mode ==
"CUBIC" &&
404 const float invT[4][4]
406 { -1.83333, 3, -1.5, 0.333333},
408 {-0.166666, 0.5, -0.5, 0.166666} };
411 if ( iPeakSamp <= 1 ) {
413 }
else if ( iPeakSamp >=
nSamples - 2 ) {
416 it0 = ( mySamples[iPeakSamp-2] > mySamples[iPeakSamp+2] )
422 float A[4] = {0, 0, 0, 0};
426 for (
int ia = 0; ia < 4; ia++)
427 for (
int it = 0;
it < 4;
it++)
428 A[ia] += invT[ia][
it] * mySamples[it0+
it];
431 disc =
A[2]*
A[2] - 3*
A[1]*
A[3];
432 if ( ! ( CubicFailed = ( disc < 0 ||
A[3] == 0 ) ) ) {
433 dtmax = (-
A[2]-std::sqrt(disc))/(
A[3]*3);
434 if ( ! ( CubicFailed = ( dtmax < 0 || dtmax > 3 ) ) ) {
436 for(
int ia = 0; ia < 4; ia++)
437 ADCPeak +=
A[ia] *
pow(dtmax, ia);
445 if(
m_mode ==
"FIXED" || CubicFailed ) {
446 ADCPeak = averagedADC;
453 << (isEM?
"EM":(isHEC?
"HEC":(
isFCAL?
"FCAL":
"none")))
466 float ADCPeakPower=ADCPeak;
470 if (ramp.size()>1 && ramp[1]<500 && ramp[1]>0) {
472 for (
unsigned i=1;
i<ramp.size();
i++)
475 ADCPeakPower*=ADCPeak;
480 ATH_MSG_DEBUG(
"No Ramp found for this cell. Use default values" );
483 float ADCtoMeV = 10.0;
500 ADCtoMeV=ADCtoMeV*(12./18.);
527 energy = ADCPeak * ADCtoMeV * GainFactor;
535 larRawChannelContainer->add(larRawChannel);
543 if ( !fSumEM.empty() ) {
544 for(
i=0;
i<fSumEM.size();
i++) {
545 if (
i == 0 || fSumEM[
i] > tmpSum ) {
550 ATH_MSG_DEBUG(
"Found best EM window starting at sample <" << nMinEM <<
">" );
553 for(
i=0;
i<fSumHEC.size();
i++) {
554 if (
i == 0 || fSumHEC[
i] > tmpSum ) {
559 if ( !fSumHEC.empty() ) {
560 ATH_MSG_DEBUG(
"Found best HEC window starting at sample <" << nMinHEC <<
">" );
563 for(
i=0;
i<fSumFCAL.size();
i++) {
564 if (
i == 0 || fSumFCAL[
i] > tmpSum ) {
566 tmpSum = fSumFCAL[
i];
569 if ( !fSumFCAL.empty() ) {
570 ATH_MSG_DEBUG(
"Found best FCAL window starting at sample <" << nMinFCAL <<
">" );
581 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 & AthReentrantAlgorithm::extraOutputDeps |
( |
| ) |
const |
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 79 of file AthReentrantAlgorithm.cxx.
86 return Algorithm::extraOutputDeps();
◆ filterPassed()
virtual bool AthReentrantAlgorithm::filterPassed |
( |
const EventContext & |
ctx | ) |
const |
|
inlinevirtualinherited |
◆ finalize()
StatusCode LArRawChannelSimpleBuilder::finalize |
( |
| ) |
|
|
overridevirtual |
◆ initialize()
StatusCode LArRawChannelSimpleBuilder::initialize |
( |
| ) |
|
|
overridevirtual |
◆ 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.
◆ isClonable()
bool AthReentrantAlgorithm::isClonable |
( |
| ) |
const |
|
overridevirtualinherited |
Specify if the algorithm is clonable.
Reentrant algorithms are clonable.
Reimplemented in Simulation::BeamEffectsAlg, InDet::SiTrackerSpacePointFinder, InDet::SCT_Clusterization, InDet::SiSPSeededTrackFinder, SCTRawDataProvider, InDet::GNNSeedingTrackMaker, SCT_PrepDataToxAOD, RoIBResultToxAOD, SCT_CablingCondAlgFromCoraCool, SCT_ReadCalibDataTestAlg, SCT_CablingCondAlgFromText, InDet::SiSPGNNTrackMaker, SCT_ReadCalibChipDataTestAlg, SCT_TestCablingAlg, SCT_ConfigurationConditionsTestAlg, ITkPixelCablingAlg, ITkStripCablingAlg, SCTEventFlagWriter, SCT_ConditionsSummaryTestAlg, SCT_ModuleVetoTestAlg, SCT_MonitorConditionsTestAlg, SCT_LinkMaskingTestAlg, SCT_MajorityConditionsTestAlg, SCT_RODVetoTestAlg, SCT_SensorsTestAlg, SCT_TdaqEnabledTestAlg, SCT_SiliconConditionsTestAlg, SCTSiLorentzAngleTestAlg, SCT_ByteStreamErrorsTestAlg, SCT_ConditionsParameterTestAlg, SCT_FlaggedConditionTestAlg, SCT_StripVetoTestAlg, SCT_RawDataToxAOD, and SCTSiPropertiesTestAlg.
Definition at line 44 of file AthReentrantAlgorithm.cxx.
◆ 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()
◆ setFilterPassed()
virtual void AthReentrantAlgorithm::setFilterPassed |
( |
bool |
state, |
|
|
const EventContext & |
ctx |
|
) |
| const |
|
inlinevirtualinherited |
◆ sysExecute()
StatusCode AthReentrantAlgorithm::sysExecute |
( |
const EventContext & |
ctx | ) |
|
|
overridevirtualinherited |
Execute an algorithm.
We override this in order to work around an issue with the Algorithm base class storing the event context in a member variable that can cause crashes in MT jobs.
Definition at line 67 of file AthReentrantAlgorithm.cxx.
69 return Gaudi::Algorithm::sysExecute (ctx);
◆ sysInitialize()
StatusCode AthReentrantAlgorithm::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< Gaudi::Algorithm > >.
Reimplemented in InputMakerBase, and HypoBase.
Definition at line 96 of file AthReentrantAlgorithm.cxx.
107 if ( cs.retrieve().isFailure() ) {
109 return StatusCode::SUCCESS;
111 if (cs->regHandle(
this,*
h).isFailure()) {
112 sc = StatusCode::FAILURE;
113 ATH_MSG_ERROR(
"unable to register WriteCondHandle " <<
h->fullKey()
◆ 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_adc2mevKey
◆ m_ADCtoMeVEMB
float LArRawChannelSimpleBuilder::m_ADCtoMeVEMB[4] {} |
|
private |
◆ m_ADCtoMeVEMECInner
float LArRawChannelSimpleBuilder::m_ADCtoMeVEMECInner[2] {} |
|
private |
◆ m_ADCtoMeVEMECOuter
float LArRawChannelSimpleBuilder::m_ADCtoMeVEMECOuter[4] {} |
|
private |
◆ m_ADCtoMeVFCAL
float LArRawChannelSimpleBuilder::m_ADCtoMeVFCAL[3] {} |
|
private |
◆ m_ADCtoMeVHEC
float LArRawChannelSimpleBuilder::m_ADCtoMeVHEC[2] {} |
|
private |
◆ m_averageSamplesEM
int LArRawChannelSimpleBuilder::m_averageSamplesEM |
|
private |
◆ m_averageSamplesFCAL
int LArRawChannelSimpleBuilder::m_averageSamplesFCAL |
|
private |
◆ m_averageSamplesHEC
int LArRawChannelSimpleBuilder::m_averageSamplesHEC |
|
private |
◆ m_averageScaleEM
float LArRawChannelSimpleBuilder::m_averageScaleEM |
|
private |
◆ m_averageScaleFCAL
float LArRawChannelSimpleBuilder::m_averageScaleFCAL |
|
private |
◆ m_averageScaleHEC
float LArRawChannelSimpleBuilder::m_averageScaleHEC |
|
private |
◆ m_cablingKey
◆ m_ChannelContainerName
◆ m_cubicAdcCut
float LArRawChannelSimpleBuilder::m_cubicAdcCut |
|
private |
◆ m_DataLocation
◆ m_detStore
◆ m_emId
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthReentrantAlgorithm::m_extendedExtraObjects |
|
privateinherited |
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
Empty if no symlinks were found.
Definition at line 153 of file AthReentrantAlgorithm.h.
◆ m_fcalId
◆ m_FCALmodeTime
std::string LArRawChannelSimpleBuilder::m_FCALmodeTime |
|
private |
◆ m_hecId
◆ m_imaxSamp
int LArRawChannelSimpleBuilder::m_imaxSamp |
|
private |
◆ m_iPedestal
unsigned int LArRawChannelSimpleBuilder::m_iPedestal |
|
private |
◆ m_mode
std::string LArRawChannelSimpleBuilder::m_mode |
|
private |
◆ m_onlineHelper
◆ m_peakParabolaTool
◆ m_usePedestalDB
bool LArRawChannelSimpleBuilder::m_usePedestalDB |
|
private |
◆ m_useRampDB
bool LArRawChannelSimpleBuilder::m_useRampDB |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
def retrieve(aClass, aKey=None)
SG::WriteHandleKey< LArRawChannelContainer > m_ChannelContainerName
virtual float pedestal(const HWIdentifier &id, int gain) const =0
const LArVectorProxy ADC2MEV(const HWIdentifier &id, int gain) const
const LArEM_ID * em_idHelper() const
access to EM idHelper
bool is_lar_fcal(Identifier id) const
bool is_em_endcap_outer(const Identifier id) const
test if the id belongs to the EM Endcap outer wheel
Scalar eta() const
pseudorapidity method
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
ToolHandle< LArParabolaPeakRecoTool > m_peakParabolaTool
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)
SG::ReadCondHandleKey< LArADC2MeV > m_adc2mevKey
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
int module(const Identifier id) const
module [1,3]
int sampling(const Identifier id) const
return sampling according to :
const std::string & key() const
Return the StoreGate ID for the referenced object.
int eta(const Identifier id) const
return eta according to :
const LArHEC_ID * hec_idHelper() const
access to HEC idHelper
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
virtual void setOwner(IDataHandleHolder *o)=0
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
float m_ADCtoMeVEMECOuter[4]
int channel(const HWIdentifier id) const
Return the channel number of a hardware cell identifier channel = [0,127] in all FEB.
AthReentrantAlgorithm()
Default constructor:
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
Liquid Argon digit base class.
Liquid Argon ROD output object base class.
::StatusCode StatusCode
StatusCode definition for legacy code.
const LArHEC_ID * m_hecId
bool is_lar_hec(Identifier id) const
const LArFCAL_ID * m_fcalId
Helper class for offline cell identifiers.
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
float m_ADCtoMeVEMECInner[2]
DataObjIDColl m_extendedExtraObjects
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
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
virtual StatusCode sysInitialize() override
Override sysInitialize.
bool isFCAL(const xAOD::CaloCluster *cluster)
return true if the cluster (or the majority of its energy) is in the FCAL0
StatusCode initialize(bool used=true)
bool is_em_endcap_inner(const Identifier id) const
test if the id belongs to the EM Endcap inner wheel
def time(flags, cells_name, *args, **kw)
bool is_em_barrel(const Identifier id) const
test if the id belongs to the EM barrel
#define ATH_MSG_WARNING(x)
int sampling(const Identifier id) const
return sampling [0,3] (only 0 for supercells)
std::string m_FCALmodeTime
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
const LArOnlineID * m_onlineHelper
bool is_lar_em(Identifier id) const
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
SG::ReadHandleKey< LArDigitContainer > m_DataLocation
Exception class for LAr Identifiers.
const LArFCAL_ID * fcal_idHelper() const
access to FCAL idHelper
Proxy for accessing a range of float values like a vector.