15#ifndef LARCALIBPATCHINGALG_H
16#define LARCALIBPATCHINGALG_H
52template<
class CONDITIONSCONTAINER>
76 StatusCode
execute() {
return StatusCode::SUCCESS;}
84 StatusCode
finalize(){
return StatusCode::SUCCESS;}
88 typedef typename CONDITIONSCONTAINER::ConstConditionsMapIterator
CONTIT;
89 typedef typename CONDITIONSCONTAINER::LArCondObj
LArCondObj;
135#ifdef LARRAWCONDITIONS_LARMPHYSOVERMCALP
148#ifdef LARRAWCONDITIONS_LARSINGLEFLOATP
180 {
return StatusCode::SUCCESS;};
195 Gaudi::Property<std::vector<std::string> >
m_problemsToPatch{
this,
"ProblemsToPatch",{},
"Bad-Channel categories to patch"};
196 Gaudi::Property<std::vector<unsigned int> >
m_doNotPatchCBs{
this,
"DoNotPatchCBs", {},
"Do not patch channels from this CalibBoard"};
199 BooleanProperty
m_useCorrChannel{
this,
"UseCorrChannels",
true,
"True: Use separate correction COOL channel, False: Correction + data in the same channel"};
200 BooleanProperty
m_patchAllMissing{
this,
"PatchAllMissing",
false,
"True: Patch missing calibration constants regardless of their bad-channel status"};
201 BooleanProperty
m_unlock{
this,
"Unlock",
false,
"Modify input container"};
202 BooleanProperty
m_isSC{
this,
"SuperCells",
false,
"Working on the SuperCells ?"};
211 StringProperty
m_containerKey{
this,
"ContainerKey",
"",
"SG key of the LArConditionsContainer to be patched"};
212 StringProperty
m_newContainerKey{
this,
"NewContainerKey",
"",
"If the corrections go in a separate container put SG key here"};
213 StringProperty
m_patchMethodProp{
this,
"PatchMethod",
"FEBNeighbor",
"Method to patch conditions for channels with broken calibration line"};
Helper class for offline supercell identifiers.
LArBadXCont< LArBadChannel > LArBadChannelCont
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Helper base class for offline cell identifiers.
This class implements the ILArAutoCorr interface.
c-struct reproducing the structure of the persistent data
Liquid Argon Cumulative Wave Container.
const LArOnlineID_Base * m_onlineHelper
bool getAverage(const HWIdentifier chid, const int gain, LArRampP1 &patch, const LArBadChannelCont *bcCont, const LArOnOffIdMapping *cabling, bool isphi=true)
Specialized method to average Ramps over a phi-ring.
bool patch(const HWIdentifier chid, const int gain, const LArBadChannelCont *bcCont, const LArOnOffIdMapping *cabling, const LArCalibLineMapping *clCont)
patch method
bool setZero(const HWIdentifier chid, const int gain, LArRampP1 &patch)
Gaudi::Property< std::vector< unsigned int > > m_doNotPatchCBs
Gaudi::Property< std::vector< std::string > > m_problemsToPatch
BooleanProperty m_useCorrChannel
StringProperty m_patchMethodProp
bool setZero(const HWIdentifier chid, const int gain, LArCaliWaveVec &patch)
BooleanProperty m_patchAllMissing
bool getAverage(const HWIdentifier, const int, LArCaliWaveVec &, const LArBadChannelCont *bcCont, const LArOnOffIdMapping *cabling, bool isphi=true)
bool setZero(const HWIdentifier chid, const int gain, LArAutoCorrP1 &patch)
StatusCode initialize()
Initialize method.
StatusCode setSymlink(const LArMphysOverMcalComplete *ramp) const
std::vector< HWIdentifier > & getFEBChans(const HWIdentifier chid, const LArBadChannelCont *bcCont)
bool setZero(const HWIdentifier chid, const int gain, LArOFCP1 &patch)
StatusCode setSymlink(const LArRampComplete *ramp) const
const LArRampComplete * m_contIn
SG::ReadCondHandleKey< LArBadChannelCont > m_BCKey
~LArCalibPatchingAlg()
Destructor.
CONDITIONSCONTAINER::ConstConditionsMapIterator CONTIT
LArRampComplete * m_contOut
LArCalibPatchingAlg(const std::string &name, ISvcLocator *pSvcLocator)
regular Algorithm constructor
patchMethod m_patchMethod
const CaloCell_Base_ID * m_caloId
std::vector< HWIdentifier > m_idList
StringProperty m_newContainerKey
bool getAverage(const HWIdentifier chid, const int gain, LArAutoCorrP1 &patch, const LArBadChannelCont *bcCont, const LArOnOffIdMapping *cabling, bool isphi=false)
Specialized method to average LArAutoCorr over a FEB.
bool getAverage(const HWIdentifier chid, const int gain, LArOFCP1 &patch, const LArBadChannelCont *bcCont, const LArOnOffIdMapping *cabling, bool isphi=true)
Specialized method to average OFCs over a phi-ring.
LArBadChannelMask m_bcMask
StatusCode stop()
Finalize method.
StringProperty m_containerKey
SG::ReadCondHandleKey< LArCalibLineMapping > m_CLKey
std::vector< HWIdentifier > & getPhiRing(const HWIdentifier chid, const LArBadChannelCont *bcCont, const LArOnOffIdMapping *cabling, unsigned distance=1)
Helper method to get a phi-ring.
StatusCode setSymlink(const LArCaliWaveContainer *) const
StatusCode setSymlink(const LArAutoCorrComplete *) const
StatusCode setSymlink(const LArOFCComplete *ofc) const
StatusCode execute()
Empty Execute method.
CONDITIONSCONTAINER::LArCondObj LArCondObj
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
This class implements the ILArMphysOverMcal interface.
c-struct reproducing the structure of the persistent data
This class implements the ILArOFC interface.
c-struct reproducing the structure of the persistent data
Helper for the Liquid Argon Calorimeter cell identifiers.
Persistent data for LArRamp Copied from LAr.