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

#include <LArPedestalValidationAlg.h>

Inheritance diagram for LArPedestalValidationAlg:
Collaboration diagram for LArPedestalValidationAlg:

Classes

class  DataPerFEB
 

Public Member Functions

 LArPedestalValidationAlg (const std::string &name, ISvcLocator *pSvcLocator)
 Regular algorithm constructor. More...
 
StatusCode initialize ()
 Standard initialization method. More...
 
StatusCode execute ()
 Standard execute method This method has to be emtpy since all the job is done in stop() More...
 
StatusCode stop ()
 Standard finalize method Loops over all channels and all gains and calls the validateChannel method. More...
 
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
 

Protected Types

typedef CONDITIONSCONTAINER::ConstConditionsMapIterator CONTIT
 
typedef CONDITIONSCONTAINER::LArCondObj LArCondObj
 
typedef CONDITIONSCONTAINER::MultChanCollection MULTICHANCOLL
 
typedef std::vector< std::pair< HWIdentifier, bool > > CHECKEDID_t
 Keeping track of channels failing the validation criteria (per gain) More...
 

Protected Member Functions

const std::string channelDescription (const HWIdentifier &chid, const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont, const unsigned gain=99, bool isFeb=false) const
 Textual representation of gain and location of a certain cell or FEB. More...
 
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...
 

Protected Attributes

MSG::Level m_myMsgLvl
 Message level for reporting deviations. More...
 
int m_myMsgLvlProp
 
SG::ReadCondHandleKey< LArOnOffIdMappingm_cablingKey {this,"CablingKey","LArOnOffIdMap","SG Key of LArOnOffIdMapping object"}
 
SG::ReadCondHandleKey< LArBadChannelContm_BCKey {this, "BadChanKey", "LArBadChannel", "SG bad channels key"}
 
SG::ReadCondHandleKey< LArCalibLineMappingm_CLKey {this, "CalibLineKey", "LArCalibLineMap", "SG calib line key"}
 
LArBadChannelMask m_bcMask
 
Gaudi::Property< std::vector< std::string > > m_problemsToMask {this,"ProblemsToMask",{}, "Bad-Channel categories to mask"}
 
Gaudi::Property< std::vector< unsigned int > > m_patchCBs {this, "PatchCBs", {}, "List of missing CalibBoards to patch using values from reference container."}
 
BooleanProperty m_isSC {this, "SuperCells", false, "Working on SuperCells ?"}
 
const LArOnlineID_Basem_onlineHelper =nullptr
 
const CaloCell_Base_IDm_caloId =nullptr
 
const REFCONTAINER * m_reference =nullptr
 Pointer to container with reference values. More...
 
const CONDITIONSCONTAINER * m_validation =nullptr
 Pointer to container to be validated. More...
 
CONDITIONSCONTAINER * m_nc_validation =nullptr
 Non-const pointer to container to be validated (for FEB patching) More...
 
std::string m_validationKey
 SG key of the container to be validated (job-property) More...
 
SG::ReadCondHandleKey< REFCONTAINER > m_referenceKey {this,"ReferenceKey","", "SG key of the LArConditionsContainer used as reference"}
 SG key of the reference container (job-property) More...
 
bool m_useBCInfo
 Flag set to true in order to use bad-channel info for the channel description as well as to ingore some types of bad-channels via the masking tool. More...
 
bool m_checkCompleteness
 wether completeness shall be checked or not (job-property) More...
 
bool m_patchMissingFEBs
 wether missing FEBS (incomplete COOL channels) should be patched More...
 
bool m_printFailedPattern
 wether to check for FEBs and Calib-lines with many deviating channels More...
 
bool m_doFebAverages
 wether to compare feb-averages (used only by derived class) More...
 
unsigned m_maxmessages
 Limit for the number of messages about indiviual deviating channels (usd only by derived class) More...
 
unsigned m_nChecked =0
 Number of channels that where checked (grand-total) More...
 
unsigned m_nFailedValidation =0
 Number of channels for which vaildateChannel returned false. More...
 
unsigned m_nValidated =0
 Number of channels for which vaildateChannel returned true. More...
 
unsigned m_nBad =0
 Number of channels known to be bad according to the bad-channel tool. More...
 
unsigned m_nNoReference =0
 Number of channels for which not reference channel could be found. More...
 
std::vector< CHECKEDID_tm_checkedIds
 
std::string m_chanFileName
 File name to store list of deviating channels. More...
 
std::ofstream m_chanFile
 File name to store list of deviating channels. More...
 
std::string m_febFileName
 File name to store list of FEBs with deviating channels. More...
 
std::ofstream m_febFile
 File name to store list of FEBs with deviating channels. More...
 
bool m_useCorrChannel
 

Private Types

typedef std::vector< std::pair< HWIdentifier, unsigned > > FEBANDGAIN_t
 
typedef std::vector< std::pair< std::pair< HWIdentifier, unsigned >, unsigned > > CBANDCHANANDGAIN_t
 
typedef ServiceHandle< StoreGateSvcStoreGateSvc_t
 

Private Member Functions

bool validateChannel (const LArCondObj &ref, const LArCondObj &val, const HWIdentifier chid, const int gain, const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont) override final
 Method to validate the pedestal single readout channels. More...
 
virtual LArCondObj getRefObj (const HWIdentifier chid, const int gain) const override final
 Method implmented in derived class to get the reference object from ref-container. More...
 
virtual StatusCode summary (const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont) override
 Summary method executed after the loop over all channels. More...
 
virtual StatusCode preLoop () override
 Executed before the loop over all channels to reset global sums. More...
 
bool febSummary (const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont)
 Method to compare FEB averages. More...
 
bool checkCoolChannelCompleteness (const LArOnOffIdMapping *cabling, const LArCalibLineMapping *clCont, const LArBadChannelCont *bcCont)
 Verify if all FEBs of each Cool-Channel is present. More...
 
bool patchMissingFEBs (const FEBANDGAIN_t &febAndGain, const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont)
 Fills channels of missing FEBs. More...
 
bool patchMissingCalibBoards (const CBANDCHANANDGAIN_t &CBAndGain, const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont)
 Fills channels of missing calib boards. More...
 
void febOutput (const HWIdentifier &febid, const unsigned gain, const unsigned nGood, const unsigned nBad)
 
void findFailedPatterns (const LArOnOffIdMapping *cabling, const LArCalibLineMapping *clCont, const LArBadChannelCont *bcCont)
 
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

std::vector< std::string > m_pedToleranceInit
 Pedestal tolerance (in ADC counts) (job-Property) More...
 
CaloCellGroupList m_pedTolerance
 
std::vector< std::string > m_rmsToleranceInit
 Pedestal RMS tolerances as CaloCellGroupList (job-Properties) More...
 
CaloCellGroupList m_rmsTolerance
 
std::vector< std::string > m_pedToleranceFEBInit
 Tolerance fro the average pedestal of one FEB (in ADC counts) (job-Property) More...
 
CaloCellGroupList m_pedToleranceFEB
 
std::vector< std::string > m_rmsToleranceFEBInit
 Tolerance fro the average pedestal RMS (noise) of one FEB (in ADC counts) (job-Property) More...
 
CaloCellGroupList m_rmsToleranceFEB
 
std::vector< DataPerFEBm_vDataPerFEB
 
double m_pedGlobalVal
 
double m_rmsGlobalVal
 
double m_pedGlobalRef
 
double m_rmsGlobalRef
 
unsigned m_nEntriesGlobal
 
std::vector< std::string > m_gainMap
 
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 40 of file LArPedestalValidationAlg.h.

Member Typedef Documentation

◆ CBANDCHANANDGAIN_t

template<class CONDITIONSCONTAINER , class REFCONTAINER >
typedef std::vector<std::pair<std::pair<HWIdentifier,unsigned>, unsigned > > LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::CBANDCHANANDGAIN_t
privateinherited

Definition at line 145 of file LArCalibValidationAlg.h.

◆ CHECKEDID_t

template<class CONDITIONSCONTAINER , class REFCONTAINER >
typedef std::vector<std::pair<HWIdentifier, bool > > LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::CHECKEDID_t
protectedinherited

Keeping track of channels failing the validation criteria (per gain)

Definition at line 233 of file LArCalibValidationAlg.h.

◆ CONTIT

template<class CONDITIONSCONTAINER , class REFCONTAINER >
typedef CONDITIONSCONTAINER::ConstConditionsMapIterator LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::CONTIT
protectedinherited

Definition at line 79 of file LArCalibValidationAlg.h.

◆ FEBANDGAIN_t

template<class CONDITIONSCONTAINER , class REFCONTAINER >
typedef std::vector<std::pair<HWIdentifier,unsigned> > LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::FEBANDGAIN_t
privateinherited

Definition at line 135 of file LArCalibValidationAlg.h.

◆ LArCondObj

template<class CONDITIONSCONTAINER , class REFCONTAINER >
typedef CONDITIONSCONTAINER::LArCondObj LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::LArCondObj
protectedinherited

Definition at line 80 of file LArCalibValidationAlg.h.

◆ MULTICHANCOLL

template<class CONDITIONSCONTAINER , class REFCONTAINER >
typedef CONDITIONSCONTAINER::MultChanCollection LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::MULTICHANCOLL
protectedinherited

Definition at line 81 of file LArCalibValidationAlg.h.

◆ StoreGateSvc_t

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

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ LArPedestalValidationAlg()

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

Regular algorithm constructor.

Definition at line 8 of file LArPedestalValidationAlg.cxx.

8  :
9  LArPedestalValidationBase(name,pSvcLocator) {
10 
11  declareProperty("PedestalTolerance",m_pedToleranceInit,
12  "CaloCellGroup of allowed deviation of the pedestal (in ADC counts)");
13  declareProperty("PedestalRMSTolerance",m_rmsToleranceInit,
14  "CaloCellGroup of allowed deviation of the pedestal RMS (in ADC counts)");
15 
16  declareProperty("PedestalToleranceFEB",m_pedToleranceFEBInit,
17  "CaloCellGroup of allowed deviation of the pedestal (average over one FEB, in ADC counts)");
18  declareProperty("PedestalRMSToleranceFEB",m_rmsToleranceFEBInit,
19  "CaloCellGroup Allowed deviation of the pedestal RMS (average over one FEB, in ADC counts)");
20  m_pedGlobalRef=0.;
21  m_rmsGlobalRef=0.;
22  m_pedGlobalVal=0.;
23  m_rmsGlobalVal=0.;
25 }

Member Function Documentation

◆ channelDescription()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
const std::string LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::channelDescription ( const HWIdentifier chid,
const LArOnOffIdMapping cabling,
const LArBadChannelCont bcCont,
const unsigned  gain = 99,
bool  isFeb = false 
) const
protectedinherited

Textual representation of gain and location of a certain cell or FEB.

Parameters
chidOnline identifier of the cell or FEB
gainGain in question, a value >2 won't be printed
iFebIf chid should be interpreted as FEB identifer
Returns
string Creates a string containing the Side, Barrel-EC, FT, Slot, FEB-Channel in human-readable form

◆ checkCoolChannelCompleteness()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
bool LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::checkCoolChannelCompleteness ( const LArOnOffIdMapping cabling,
const LArCalibLineMapping clCont,
const LArBadChannelCont bcCont 
)
privateinherited

Verify if all FEBs of each Cool-Channel is present.

Returns
False if at least one incomplete COOL channel is found, true otherwise Calls patchMissingFEBs if m_patchMissingFebs is true

◆ 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()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
StatusCode LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::execute ( )
inlineinherited

Standard execute method This method has to be emtpy since all the job is done in stop()

Definition at line 69 of file LArCalibValidationAlg.h.

69 {return StatusCode::SUCCESS;}

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

◆ febOutput()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
void LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::febOutput ( const HWIdentifier febid,
const unsigned  gain,
const unsigned  nGood,
const unsigned  nBad 
)
privateinherited

◆ febSummary()

bool LArPedestalValidationAlg::febSummary ( const LArOnOffIdMapping cabling,
const LArBadChannelCont bcCont 
)
private

Method to compare FEB averages.

Definition at line 157 of file LArPedestalValidationAlg.cxx.

157  {
158 
159  unsigned nBadFebs=0;
160 
161  msg().precision(3);
162  msg().setf(std::ios::fixed,std::ios::floatfield);
163 
164 
165  for (DataPerFEB& dataPerFeb : m_vDataPerFEB) {
166  dataPerFeb.pedVal/=dataPerFeb.nEntries;
167  dataPerFeb.pedRef/=dataPerFeb.nEntries;
168  dataPerFeb.rmsVal/=dataPerFeb.nEntries;
169  dataPerFeb.rmsRef/=dataPerFeb.nEntries;
170 
171 
172  const Identifier id=cabling->cnvToIdentifier(dataPerFeb.chid);
173  const float& pedToleranceFEB=m_pedToleranceFEB.valuesForCell(id)[dataPerFeb.gain];
174  const float& rmsToleranceFEB=m_rmsToleranceFEB.valuesForCell(id)[dataPerFeb.gain];
175 
176  if (fabs(dataPerFeb.pedVal-dataPerFeb.pedRef)>pedToleranceFEB ||
177  fabs(dataPerFeb.rmsVal-dataPerFeb.rmsRef)>rmsToleranceFEB) {
178 
179  msg() << m_myMsgLvl << "Deviating!" <<channelDescription(dataPerFeb.febid, cabling, bcCont, dataPerFeb.gain, true)
180  << "Average Ped: " << dataPerFeb.pedVal << " (" << dataPerFeb.pedRef << ")"
181  << " RMS: " << dataPerFeb.rmsVal << " (" << dataPerFeb.rmsRef << ")" << endmsg;
182  ATH_MSG_DEBUG ( "Pdestal FEB Tolerance: " << pedToleranceFEB << " RMS FEB Tolerance:" << rmsToleranceFEB ) ;
183  ++nBadFebs;
184  }
185  }
186 
187  if (nBadFebs) {
188  msg() << m_myMsgLvl << "Found " << nBadFebs << " out of " << m_vDataPerFEB.size() << " FEBs devating from reference" << endmsg;
189  return false;
190  }
191  else {
192  ATH_MSG_INFO ( "All " << m_vDataPerFEB.size() << " FEBs withing given tolerance." ) ;
193  return true;
194  }
195 }

◆ finalize()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
StatusCode LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::finalize ( )
inlineinherited

Definition at line 76 of file LArCalibValidationAlg.h.

76 {return StatusCode::SUCCESS;}

◆ findFailedPatterns()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
void LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::findFailedPatterns ( const LArOnOffIdMapping cabling,
const LArCalibLineMapping clCont,
const LArBadChannelCont bcCont 
)
privateinherited

◆ getRefObj()

LArPedestalValidationAlg::LArCondObj LArPedestalValidationAlg::getRefObj ( const HWIdentifier  chid,
const int  gain 
) const
finaloverrideprivatevirtual

Method implmented in derived class to get the reference object from ref-container.

Implements LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >.

Definition at line 223 of file LArPedestalValidationAlg.cxx.

223  {
224  return LArCondObj(m_reference->pedestal(chid,gain),m_reference->pedestalRMS(chid,gain));
225 
226 }

◆ initialize()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
StatusCode LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::initialize ( )
inherited

Standard initialization method.

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

◆ patchMissingCalibBoards()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
bool LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::patchMissingCalibBoards ( const CBANDCHANANDGAIN_t CBAndGain,
const LArOnOffIdMapping cabling,
const LArBadChannelCont bcCont 
)
privateinherited

Fills channels of missing calib boards.

Parameters
febAndGainA vector of (CalibId,gain) pairs
Returns
True on success, false otherwise Inserts the corresponding channel from the reference container as correction channel to the validation container

◆ patchMissingFEBs()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
bool LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::patchMissingFEBs ( const FEBANDGAIN_t febAndGain,
const LArOnOffIdMapping cabling,
const LArBadChannelCont bcCont 
)
privateinherited

Fills channels of missing FEBs.

Parameters
febAndGainA vector of (febId,gain) pairs
Returns
True on success, false otherwise Inserts the corresponding channel from the reference container as correction channel to the validation container

◆ preLoop()

StatusCode LArPedestalValidationAlg::preLoop ( )
overrideprivatevirtual

Executed before the loop over all channels to reset global sums.

Reimplemented from LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >.

Definition at line 28 of file LArPedestalValidationAlg.cxx.

28  {
29  m_pedGlobalRef=0.;
30  m_rmsGlobalRef=0.;
31  m_pedGlobalVal=0.;
32  m_rmsGlobalVal=0.;
34 
35  bool stat;
36 
37 
38  ATH_MSG_INFO ( "Initialize Pedestal Tolerances (CaloCellGroup)" ) ;
40  if (!stat) {
41  ATH_MSG_ERROR ( "Failed to initialize CaloCellGroup of pedestal tolerances!" ) ;
42  return StatusCode::FAILURE;
43  }
44  if (m_pedTolerance.getDefaults().size()!=3) {
45  ATH_MSG_ERROR ( "Configuration error: Expected three pedestal tolerance values (one per gain), got "
46  << m_pedTolerance.getDefaults().size() ) ;
47  return StatusCode::FAILURE;
48  }
49  if (this->msgLvl(MSG::DEBUG)) m_pedTolerance.printDef();//for debugging....
50 
51 
52  ATH_MSG_INFO ( "Initialize Pedestal RMS Tolerances (CaloCellGroup)" ) ;
54  if (!stat) {
55  ATH_MSG_ERROR ( "Failed to initialize CaloCellGroup of rms tolerances!" ) ;
56  return StatusCode::FAILURE;
57  }
58  if (m_rmsTolerance.getDefaults().size()!=3) {
59  ATH_MSG_ERROR ( "Configuration error: Expected three rms tolerance values (one per gain), got "
60  << m_rmsTolerance.getDefaults().size() ) ;
61  return StatusCode::FAILURE;
62  }
63  if (this->msgLvl(MSG::DEBUG)) m_rmsTolerance.printDef();//for debugging...
64 
65 
66  ATH_MSG_INFO ( "Initialize FEB Pedestal Tolerances (CaloCellGroup)" ) ;
68  if (!stat) {
69  ATH_MSG_ERROR ( "Failed to initialize CaloCellGroup of pedestal tolerances!" ) ;
70  return StatusCode::FAILURE;
71  }
72  if (m_pedToleranceFEB.getDefaults().size()!=3) {
73  ATH_MSG_ERROR ( "Configuration error: Expected three pedestal tolerance values (one per gain), got "
74  << m_pedToleranceFEB.getDefaults().size() ) ;
75  return StatusCode::FAILURE;
76  }
77  if (this->msgLvl(MSG::DEBUG)) m_pedToleranceFEB.printDef();//for debugging....
78 
79  ATH_MSG_INFO ( "Initialize FEB Pedestal RMS Tolerances (CaloCellGroup)" ) ;
81  if (!stat) {
82  ATH_MSG_ERROR ( "Failed to initialize CaloCellGroup of rms tolerances!" ) ;
83  return StatusCode::FAILURE;
84  }
85  if (m_rmsToleranceFEB.getDefaults().size()!=3) {
86  ATH_MSG_ERROR ( "Configuration error: Expected three rms tolerance values (one per gain), got "
87  << m_rmsToleranceFEB.getDefaults().size() ) ;
88  return StatusCode::FAILURE;
89  }
90  if (this->msgLvl(MSG::DEBUG)) m_rmsToleranceFEB.printDef();//for debugging...
91 
92  return StatusCode::SUCCESS;
93 }

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

◆ stop()

template<class CONDITIONSCONTAINER , class REFCONTAINER >
StatusCode LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::stop ( )
inherited

Standard finalize method Loops over all channels and all gains and calls the validateChannel method.

◆ summary()

StatusCode LArPedestalValidationAlg::summary ( const LArOnOffIdMapping cabling,
const LArBadChannelCont bcCont 
)
overrideprivatevirtual

Summary method executed after the loop over all channels.

Reimplemented from LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >.

Definition at line 196 of file LArPedestalValidationAlg.cxx.

196  {
197  StatusCode sc=StatusCode::SUCCESS;
198  //1nd step: Check the FEB-averages:
199  if (m_doFebAverages && !febSummary(cabling,bcCont))
200  sc=StatusCode::RECOVERABLE;
201 
202  //2st step: Call the summary method from base-class (single-channel summary)
203  if (!LArPedestalValidationBase::summary(cabling, bcCont).isSuccess())
204  sc=StatusCode::RECOVERABLE;
205 
206  //3rd step: Check the gobal averages:
207  if (m_nEntriesGlobal) {
212  }
213  msg().precision(3);
214  msg().setf(std::ios::fixed,std::ios::floatfield);
215  ATH_MSG_INFO ( "Global pedestal average: " << m_pedGlobalVal << " Reference:" << m_pedGlobalRef
216  << " Deviation:" << m_pedGlobalVal-m_pedGlobalRef ) ;
217  ATH_MSG_INFO ( "Global elec noise average: " << m_rmsGlobalVal << " Reference:" << m_rmsGlobalRef
218  << " Deviation:" << m_rmsGlobalVal-m_rmsGlobalRef ) ;
219  return sc;
220 }

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

◆ validateChannel()

bool LArPedestalValidationAlg::validateChannel ( const LArCondObj ref,
const LArCondObj val,
const HWIdentifier  chid,
const int  gain,
const LArOnOffIdMapping cabling,
const LArBadChannelCont bcCont 
)
finaloverrideprivatevirtual

Method to validate the pedestal single readout channels.

Implements LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >.

Definition at line 95 of file LArPedestalValidationAlg.cxx.

95  {
96 
97  if (gain<0 || gain>2) {
98  ATH_MSG_ERROR ( "Unexpected gain value " << gain ) ;
99  return false;
100  }
101 
102  const float& pedVal=val.m_Pedestal;
103  const float& pedRef=ref.m_Pedestal;
104 
105  const float& rmsVal=val.m_PedestalRMS;
106  const float& rmsRef=ref.m_PedestalRMS;
107 
108  const Identifier id=cabling->cnvToIdentifier(chid);
109 
110  const float pedTolerance=m_pedTolerance.valuesForCell(id)[gain];
111  const float rmsTolerance=m_rmsTolerance.valuesForCell(id)[gain];
112 
113 
114  const HWIdentifier febid=m_onlineHelper->feb_Id(chid);
115 
116  DataPerFEB* dataPerFEB = m_vDataPerFEB.empty() ? nullptr : &(m_vDataPerFEB.back());
117  if (!dataPerFEB || dataPerFEB->febid!=febid) {//Got to new FEB
118  m_vDataPerFEB.push_back(DataPerFEB(chid,febid,gain));
119  dataPerFEB=&(m_vDataPerFEB.back());
120  }
121 
122  dataPerFEB->pedVal+=pedVal;
123  dataPerFEB->pedRef+=pedRef;
124  dataPerFEB->rmsVal+=rmsVal;
125  dataPerFEB->rmsRef+=rmsRef;
126  ++(dataPerFEB->nEntries);
127 
128 
129  m_pedGlobalVal+=pedVal;
130  m_rmsGlobalVal+=rmsVal;
131  m_pedGlobalRef+=pedRef;
132  m_rmsGlobalRef+=rmsRef;
134 
135 
136  if (fabs(pedVal-pedRef)> pedTolerance ||
137  fabs(rmsVal-rmsRef)> rmsTolerance){
139  msg().precision(2);
140  msg().setf(std::ios::fixed,std::ios::floatfield);
141  msg() << this->m_myMsgLvl << "Deviating! " << channelDescription(chid,cabling,bcCont,gain) << " Ped: " << val.m_Pedestal
142  << " (" << ref.m_Pedestal << ", " << val.m_Pedestal-ref.m_Pedestal << " ADC)"
143  << " RMS: " << val.m_PedestalRMS << " (" << ref.m_PedestalRMS << ", "
144  << ((val.m_PedestalRMS-ref.m_PedestalRMS)/ref.m_PedestalRMS)*100 << "%)" << endmsg;
145 
146  ATH_MSG_DEBUG ( "Pedestal Tolerance: " << pedTolerance << " RMS Tolerance:" << rmsTolerance ) ;
147  }
149  msg() << this->m_myMsgLvl << "Channel deviation message has already been printed " << m_maxmessages << " times. Now silent..." << endmsg;
150  return false;
151  }
152  else
153  return true;
154 }

Member Data Documentation

◆ m_BCKey

template<class CONDITIONSCONTAINER , class REFCONTAINER >
SG::ReadCondHandleKey<LArBadChannelCont> LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_BCKey {this, "BadChanKey", "LArBadChannel", "SG bad channels key"}
protectedinherited

Definition at line 168 of file LArCalibValidationAlg.h.

◆ m_bcMask

template<class CONDITIONSCONTAINER , class REFCONTAINER >
LArBadChannelMask LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_bcMask
protectedinherited

Definition at line 170 of file LArCalibValidationAlg.h.

◆ m_cablingKey

template<class CONDITIONSCONTAINER , class REFCONTAINER >
SG::ReadCondHandleKey<LArOnOffIdMapping> LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_cablingKey {this,"CablingKey","LArOnOffIdMap","SG Key of LArOnOffIdMapping object"}
protectedinherited

Definition at line 167 of file LArCalibValidationAlg.h.

◆ m_caloId

template<class CONDITIONSCONTAINER , class REFCONTAINER >
const CaloCell_Base_ID* LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_caloId =nullptr
protectedinherited

Definition at line 178 of file LArCalibValidationAlg.h.

◆ m_chanFile

template<class CONDITIONSCONTAINER , class REFCONTAINER >
std::ofstream LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_chanFile
protectedinherited

File name to store list of deviating channels.

Definition at line 240 of file LArCalibValidationAlg.h.

◆ m_chanFileName

template<class CONDITIONSCONTAINER , class REFCONTAINER >
std::string LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_chanFileName
protectedinherited

File name to store list of deviating channels.

Definition at line 237 of file LArCalibValidationAlg.h.

◆ m_checkCompleteness

template<class CONDITIONSCONTAINER , class REFCONTAINER >
bool LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_checkCompleteness
protectedinherited

wether completeness shall be checked or not (job-property)

Definition at line 201 of file LArCalibValidationAlg.h.

◆ m_checkedIds

template<class CONDITIONSCONTAINER , class REFCONTAINER >
std::vector<CHECKEDID_t> LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_checkedIds
protectedinherited

Definition at line 234 of file LArCalibValidationAlg.h.

◆ m_CLKey

template<class CONDITIONSCONTAINER , class REFCONTAINER >
SG::ReadCondHandleKey<LArCalibLineMapping> LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_CLKey {this, "CalibLineKey", "LArCalibLineMap", "SG calib line key"}
protectedinherited

Definition at line 169 of file LArCalibValidationAlg.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_doFebAverages

template<class CONDITIONSCONTAINER , class REFCONTAINER >
bool LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_doFebAverages
protectedinherited

wether to compare feb-averages (used only by derived class)

Definition at line 210 of file LArCalibValidationAlg.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_febFile

template<class CONDITIONSCONTAINER , class REFCONTAINER >
std::ofstream LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_febFile
protectedinherited

File name to store list of FEBs with deviating channels.

Definition at line 246 of file LArCalibValidationAlg.h.

◆ m_febFileName

template<class CONDITIONSCONTAINER , class REFCONTAINER >
std::string LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_febFileName
protectedinherited

File name to store list of FEBs with deviating channels.

Definition at line 243 of file LArCalibValidationAlg.h.

◆ m_gainMap

template<class CONDITIONSCONTAINER , class REFCONTAINER >
std::vector<std::string> LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_gainMap
privateinherited

Definition at line 159 of file LArCalibValidationAlg.h.

◆ m_isSC

template<class CONDITIONSCONTAINER , class REFCONTAINER >
BooleanProperty LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_isSC {this, "SuperCells", false, "Working on SuperCells ?"}
protectedinherited

Definition at line 173 of file LArCalibValidationAlg.h.

◆ m_maxmessages

template<class CONDITIONSCONTAINER , class REFCONTAINER >
unsigned LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_maxmessages
protectedinherited

Limit for the number of messages about indiviual deviating channels (usd only by derived class)

Definition at line 213 of file LArCalibValidationAlg.h.

◆ m_myMsgLvl

template<class CONDITIONSCONTAINER , class REFCONTAINER >
MSG::Level LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_myMsgLvl
protectedinherited

Message level for reporting deviations.

Definition at line 163 of file LArCalibValidationAlg.h.

◆ m_myMsgLvlProp

template<class CONDITIONSCONTAINER , class REFCONTAINER >
int LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_myMsgLvlProp
protectedinherited

Definition at line 164 of file LArCalibValidationAlg.h.

◆ m_nBad

template<class CONDITIONSCONTAINER , class REFCONTAINER >
unsigned LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_nBad =0
protectedinherited

Number of channels known to be bad according to the bad-channel tool.

Definition at line 227 of file LArCalibValidationAlg.h.

◆ m_nc_validation

template<class CONDITIONSCONTAINER , class REFCONTAINER >
CONDITIONSCONTAINER* LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_nc_validation =nullptr
protectedinherited

Non-const pointer to container to be validated (for FEB patching)

Definition at line 188 of file LArCalibValidationAlg.h.

◆ m_nChecked

template<class CONDITIONSCONTAINER , class REFCONTAINER >
unsigned LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_nChecked =0
protectedinherited

Number of channels that where checked (grand-total)

Definition at line 218 of file LArCalibValidationAlg.h.

◆ m_nEntriesGlobal

unsigned LArPedestalValidationAlg::m_nEntriesGlobal
private

Definition at line 115 of file LArPedestalValidationAlg.h.

◆ m_nFailedValidation

template<class CONDITIONSCONTAINER , class REFCONTAINER >
unsigned LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_nFailedValidation =0
protectedinherited

Number of channels for which vaildateChannel returned false.

Definition at line 221 of file LArCalibValidationAlg.h.

◆ m_nNoReference

template<class CONDITIONSCONTAINER , class REFCONTAINER >
unsigned LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_nNoReference =0
protectedinherited

Number of channels for which not reference channel could be found.

Definition at line 230 of file LArCalibValidationAlg.h.

◆ m_nValidated

template<class CONDITIONSCONTAINER , class REFCONTAINER >
unsigned LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_nValidated =0
protectedinherited

Number of channels for which vaildateChannel returned true.

Definition at line 224 of file LArCalibValidationAlg.h.

◆ m_onlineHelper

template<class CONDITIONSCONTAINER , class REFCONTAINER >
const LArOnlineID_Base* LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_onlineHelper =nullptr
protectedinherited

Definition at line 177 of file LArCalibValidationAlg.h.

◆ m_patchCBs

template<class CONDITIONSCONTAINER , class REFCONTAINER >
Gaudi::Property<std::vector<unsigned int> > LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_patchCBs {this, "PatchCBs", {}, "List of missing CalibBoards to patch using values from reference container."}
protectedinherited

Definition at line 172 of file LArCalibValidationAlg.h.

◆ m_patchMissingFEBs

template<class CONDITIONSCONTAINER , class REFCONTAINER >
bool LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_patchMissingFEBs
protectedinherited

wether missing FEBS (incomplete COOL channels) should be patched

Definition at line 204 of file LArCalibValidationAlg.h.

◆ m_pedGlobalRef

double LArPedestalValidationAlg::m_pedGlobalRef
private

Definition at line 114 of file LArPedestalValidationAlg.h.

◆ m_pedGlobalVal

double LArPedestalValidationAlg::m_pedGlobalVal
private

Definition at line 113 of file LArPedestalValidationAlg.h.

◆ m_pedTolerance

CaloCellGroupList LArPedestalValidationAlg::m_pedTolerance
private

Definition at line 70 of file LArPedestalValidationAlg.h.

◆ m_pedToleranceFEB

CaloCellGroupList LArPedestalValidationAlg::m_pedToleranceFEB
private

Definition at line 82 of file LArPedestalValidationAlg.h.

◆ m_pedToleranceFEBInit

std::vector<std::string> LArPedestalValidationAlg::m_pedToleranceFEBInit
private

Tolerance fro the average pedestal of one FEB (in ADC counts) (job-Property)

Definition at line 81 of file LArPedestalValidationAlg.h.

◆ m_pedToleranceInit

std::vector<std::string> LArPedestalValidationAlg::m_pedToleranceInit
private

Pedestal tolerance (in ADC counts) (job-Property)

Pedestal RMS tolerance (in ADC counts) (job-Property) Pedestal tolerances as CaloCellGroupList (job-Properties)

Definition at line 69 of file LArPedestalValidationAlg.h.

◆ m_printFailedPattern

template<class CONDITIONSCONTAINER , class REFCONTAINER >
bool LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_printFailedPattern
protectedinherited

wether to check for FEBs and Calib-lines with many deviating channels

Definition at line 207 of file LArCalibValidationAlg.h.

◆ m_problemsToMask

template<class CONDITIONSCONTAINER , class REFCONTAINER >
Gaudi::Property<std::vector<std::string> > LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_problemsToMask {this,"ProblemsToMask",{}, "Bad-Channel categories to mask"}
protectedinherited

Definition at line 171 of file LArCalibValidationAlg.h.

◆ m_reference

template<class CONDITIONSCONTAINER , class REFCONTAINER >
const REFCONTAINER* LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_reference =nullptr
protectedinherited

Pointer to container with reference values.

Definition at line 182 of file LArCalibValidationAlg.h.

◆ m_referenceKey

template<class CONDITIONSCONTAINER , class REFCONTAINER >
SG::ReadCondHandleKey<REFCONTAINER> LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_referenceKey {this,"ReferenceKey","", "SG key of the LArConditionsContainer used as reference"}
protectedinherited

SG key of the reference container (job-property)

Definition at line 194 of file LArCalibValidationAlg.h.

◆ m_rmsGlobalRef

double LArPedestalValidationAlg::m_rmsGlobalRef
private

Definition at line 114 of file LArPedestalValidationAlg.h.

◆ m_rmsGlobalVal

double LArPedestalValidationAlg::m_rmsGlobalVal
private

Definition at line 113 of file LArPedestalValidationAlg.h.

◆ m_rmsTolerance

CaloCellGroupList LArPedestalValidationAlg::m_rmsTolerance
private

Definition at line 76 of file LArPedestalValidationAlg.h.

◆ m_rmsToleranceFEB

CaloCellGroupList LArPedestalValidationAlg::m_rmsToleranceFEB
private

Definition at line 87 of file LArPedestalValidationAlg.h.

◆ m_rmsToleranceFEBInit

std::vector<std::string> LArPedestalValidationAlg::m_rmsToleranceFEBInit
private

Tolerance fro the average pedestal RMS (noise) of one FEB (in ADC counts) (job-Property)

Definition at line 86 of file LArPedestalValidationAlg.h.

◆ m_rmsToleranceInit

std::vector<std::string> LArPedestalValidationAlg::m_rmsToleranceInit
private

Pedestal RMS tolerances as CaloCellGroupList (job-Properties)

Definition at line 75 of file LArPedestalValidationAlg.h.

◆ m_useBCInfo

template<class CONDITIONSCONTAINER , class REFCONTAINER >
bool LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_useBCInfo
protectedinherited

Flag set to true in order to use bad-channel info for the channel description as well as to ingore some types of bad-channels via the masking tool.

Definition at line 198 of file LArCalibValidationAlg.h.

◆ m_useCorrChannel

template<class CONDITIONSCONTAINER , class REFCONTAINER >
bool LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_useCorrChannel
protectedinherited

Definition at line 248 of file LArCalibValidationAlg.h.

◆ m_validation

template<class CONDITIONSCONTAINER , class REFCONTAINER >
const CONDITIONSCONTAINER* LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_validation =nullptr
protectedinherited

Pointer to container to be validated.

Definition at line 185 of file LArCalibValidationAlg.h.

◆ m_validationKey

template<class CONDITIONSCONTAINER , class REFCONTAINER >
std::string LArCalibValidationAlg< CONDITIONSCONTAINER, REFCONTAINER >::m_validationKey
protectedinherited

SG key of the container to be validated (job-property)

Definition at line 191 of file LArCalibValidationAlg.h.

◆ m_varHandleArraysDeclared

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

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vDataPerFEB

std::vector<DataPerFEB> LArPedestalValidationAlg::m_vDataPerFEB
private

Definition at line 110 of file LArPedestalValidationAlg.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:
LArPedestalValidationAlg::m_rmsGlobalRef
double m_rmsGlobalRef
Definition: LArPedestalValidationAlg.h:114
LArPedestalValidationAlg::m_pedTolerance
CaloCellGroupList m_pedTolerance
Definition: LArPedestalValidationAlg.h:70
LArCalibValidationAlg::m_onlineHelper
const LArOnlineID_Base * m_onlineHelper
Definition: LArCalibValidationAlg.h:177
LArCalibValidationAlg::m_nFailedValidation
unsigned m_nFailedValidation
Number of channels for which vaildateChannel returned false.
Definition: LArCalibValidationAlg.h:221
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
LArCalibValidationAlg::m_reference
const REFCONTAINER * m_reference
Pointer to container with reference values.
Definition: LArCalibValidationAlg.h:182
LArPedestalValidationAlg::m_rmsToleranceFEBInit
std::vector< std::string > m_rmsToleranceFEBInit
Tolerance fro the average pedestal RMS (noise) of one FEB (in ADC counts) (job-Property)
Definition: LArPedestalValidationAlg.h:86
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
CaloCellGroupList::getDefaults
const std::vector< float > & getDefaults() const
Definition: CaloCellGroup.h:72
LArPedestalValidationAlg::m_pedGlobalVal
double m_pedGlobalVal
Definition: LArPedestalValidationAlg.h:113
CaloCondBlobAlgs_fillNoiseFromASCII.gain
gain
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:110
ReadCellNoiseFromCool.cabling
cabling
Definition: ReadCellNoiseFromCool.py:154
LArPedestalValidationAlg::m_pedToleranceInit
std::vector< std::string > m_pedToleranceInit
Pedestal tolerance (in ADC counts) (job-Property)
Definition: LArPedestalValidationAlg.h:69
LArPedestalValidationAlg::m_vDataPerFEB
std::vector< DataPerFEB > m_vDataPerFEB
Definition: LArPedestalValidationAlg.h:110
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
AthCommonMsg< Algorithm >::msgLvl
bool msgLvl(const MSG::Level lvl) const
Definition: AthCommonMsg.h:30
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
HWIdentifier
Definition: HWIdentifier.h:13
LArPedestalValidationAlg::m_rmsGlobalVal
double m_rmsGlobalVal
Definition: LArPedestalValidationAlg.h:113
LArPedestalValidationAlg::m_nEntriesGlobal
unsigned m_nEntriesGlobal
Definition: LArPedestalValidationAlg.h:115
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
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
AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
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
LArPedestalValidationAlg::m_rmsToleranceFEB
CaloCellGroupList m_rmsToleranceFEB
Definition: LArPedestalValidationAlg.h:87
LArPedestalValidationAlg::m_pedToleranceFEBInit
std::vector< std::string > m_pedToleranceFEBInit
Tolerance fro the average pedestal of one FEB (in ADC counts) (job-Property)
Definition: LArPedestalValidationAlg.h:81
LArCalibValidationAlg::summary
virtual StatusCode summary(const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont)
Method executed after the loop over all channels The implementation in the base class writes out only...
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
LArCalibValidationAlg::m_caloId
const CaloCell_Base_ID * m_caloId
Definition: LArCalibValidationAlg.h:178
LArPedestalValidationAlg::m_rmsToleranceInit
std::vector< std::string > m_rmsToleranceInit
Pedestal RMS tolerances as CaloCellGroupList (job-Properties)
Definition: LArPedestalValidationAlg.h:75
LArCalibValidationAlg::LArCondObj
CONDITIONSCONTAINER::LArCondObj LArCondObj
Definition: LArCalibValidationAlg.h:80
beamspotman.stat
stat
Definition: beamspotman.py:266
LArOnlineID_Base::feb_Id
HWIdentifier feb_Id(int barrel_ec, int pos_neg, int feedthrough, int slot) const
Create feb_Id from fields.
Definition: LArOnlineID_Base.cxx:1483
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
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
LArCalibValidationAlg::m_myMsgLvl
MSG::Level m_myMsgLvl
Message level for reporting deviations.
Definition: LArCalibValidationAlg.h:163
LArPedestalValidationBase
LArCalibValidationAlg< LArPedestalComplete, ILArPedestal > LArPedestalValidationBase
Definition: LArPedestalValidationAlg.h:29
AthAlgorithm::m_extendedExtraObjects
DataObjIDColl m_extendedExtraObjects
Definition: AthAlgorithm.h:79
a
TList * a
Definition: liststreamerinfos.cxx:10
h
LArPedestalValidationAlg::m_pedGlobalRef
double m_pedGlobalRef
Definition: LArPedestalValidationAlg.h:114
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
ref
const boost::regex ref(r_ef)
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
DEBUG
#define DEBUG
Definition: page_access.h:11
AthCommonMsg< Algorithm >::msg
MsgStream & msg() const
Definition: AthCommonMsg.h:24
LArCalibValidationAlg::m_maxmessages
unsigned m_maxmessages
Limit for the number of messages about indiviual deviating channels (usd only by derived class)
Definition: LArCalibValidationAlg.h:213
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
LArPedestalValidationAlg::m_rmsTolerance
CaloCellGroupList m_rmsTolerance
Definition: LArPedestalValidationAlg.h:76
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:790
CaloCellGroupList::printDef
void printDef() const
Definition: CaloCellGroup.cxx:301
LArPedestalValidationAlg::febSummary
bool febSummary(const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont)
Method to compare FEB averages.
Definition: LArPedestalValidationAlg.cxx:157
LHEF::Writer
Pythia8::Writer Writer
Definition: Prophecy4fMerger.cxx:12
LArCalibValidationAlg::channelDescription
const std::string channelDescription(const HWIdentifier &chid, const LArOnOffIdMapping *cabling, const LArBadChannelCont *bcCont, const unsigned gain=99, bool isFeb=false) const
Textual representation of gain and location of a certain cell or FEB.
CaloCellGroupList::valuesForCell
const std::vector< float > & valuesForCell(const Identifier id)
Definition: CaloCellGroup.cxx:266
CaloCellGroupList::setDefinition
bool setDefinition(const CaloCell_Base_ID *caloCellId, const std::vector< std::string > &definitions, MsgStream &logStr)
Definition: CaloCellGroup.cxx:225
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
LArCalibValidationAlg::m_doFebAverages
bool m_doFebAverages
wether to compare feb-averages (used only by derived class)
Definition: LArCalibValidationAlg.h:210
LArPedestalValidationAlg::m_pedToleranceFEB
CaloCellGroupList m_pedToleranceFEB
Definition: LArPedestalValidationAlg.h:82
fitman.k
k
Definition: fitman.py:528
ServiceHandle< ICondSvc >