|
ATLAS Offline Software
|
Go to the documentation of this file.
11 #ifndef LARHVCONDALG_H
12 #define LARHVCONDALG_H
17 #include "Identifier/Identifier.h"
72 "DCS folders with HV values"};
84 "Input key for HVScaleCorr from conditions database (used online)"};
89 Gaudi::Property<bool>
m_doHV{
this,
"doHV",
true,
"create HV Scale Correction"};
90 Gaudi::Property<bool>
m_doRProp{
this,
"doR",
true,
"Use R values with current to improve HV"};
91 Gaudi::Property<bool>
m_undoOnlineHVCorr{
this,
"UndoOnlineHVCorr",
true,
"Undo the HVCorr done online"};
92 Gaudi::Property<bool>
m_useCurrentEMB{
this,
"UseCurrentsInHVEM",
false,
"Use currents in EMB as well"};
93 Gaudi::Property<bool>
m_useCurrentFCAL1{
this,
"UseCurrentsInHVFCAL1",
false,
"Use currents in FCAL1 as well"};
94 Gaudi::Property<bool>
m_useCurrentOthers{
this,
"UseCurrentsInHVOthers",
false,
"Use currents in other partitions as well"};
97 Gaudi::Property<bool>
m_doAffected{
this,
"doAffected",
true,
"create affected region info"};
98 Gaudi::Property<bool>
m_doAffectedHV{
this,
"doAffectedHV",
true,
"include HV non nominal regions info"};
137 typedef std::vector<std::vector<unsigned short> >
pathVec;
164 ,
const float* rValues)
const;
201 float HV_nominal(
const char *identification,
const float eta)
const;
Gaudi::Property< bool > m_doRProp
std::vector< CaloAffectedRegionInfo > CaloAffectedRegionInfoVec
const LArHVLineID * m_hvLineID
StatusCode dcs2LineVoltage(voltagePerLine_t &result, const std::vector< const CondAttrListCollection * > &fldvec) const
Read HV from DCS, store them in internal data structure per HV-line (Step 1)
SG::ReadCondHandleKey< AthenaAttributeList > m_hvRKey
DCS_t(float ihv, float icurr)
SG::ReadCondHandleKey< LArHVPathology > m_pathologiesKey
SG::ReadCondHandleKey< ILArHVScaleCorr > m_onlineHVScaleCorrKey
std::unordered_map< unsigned, DCS_t > voltagePerLine_t
Scalar phi() const
phi method
StatusCode execute() override
StatusCode searchNonNominalHV_EMEC_INNER(CaloAffectedRegionInfoVec *vAffected, const LArHVIdMapping *hvCabling, const voltagePerLine_t &voltage) const
StatusCode searchNonNominalHV_HEC(CaloAffectedRegionInfoVec *vAffected, const LArHVIdMapping *hvCabling, const voltagePerLine_t &voltage) const
Scalar eta() const
pseudorapidity method
Helper for the Liquid Argon Calorimeter cell at the electrode level.
Conditions-Data class holding LAr Bad Channel or Bad Feb information.
Gaudi::Property< bool > m_doAffected
Gaudi::Property< bool > m_useCurrentEMB
std::vector< int > returnProblem(const float eta, const float phi, const float delta_eta, const float delta_phi)
StatusCode makeHVScaleCorr(const EventContext &ctx, voltagePerLine_t &voltagePerLine) const
Helper class for LArHEC offline identifiers.
void extendPhiRegion(float phi, float &phi_min, float &phi_max) const
std::vector< std::vector< unsigned short > > pathVec
Internal structure for HV pathologies.
This class is a collection of AttributeLists where each one is associated with a channel number....
Definition of CaloDetDescrManager.
Gaudi::Property< bool > m_useCurrentFCAL1
StatusCode makeAffectedRegionInfo(const EventContext &ctx, voltagePerLine_t &voltagePerLine) const
std::vector< unsigned int > getElecList(const Identifier &id, const LArHVPathology &pathologies) const
SG::ReadCondHandleKeyArray< CondAttrListCollection > m_DCSFolderKeys
float HV_nominal(const char *identification, const float eta) const
virtual StatusCode initialize() override
std::vector< voltageCell_t > voltagePerCell_t
const LArElectrodeID * m_electrodeID
::StatusCode StatusCode
StatusCode definition for legacy code.
StatusCode searchNonNominalHV_EMB(CaloAffectedRegionInfoVec *vAffected, const LArHVIdMapping *hvCabling, const voltagePerLine_t &voltage) const
virtual ~LArHVCondAlg()=default
Gaudi::Property< std::vector< std::string > > m_fixHVStrings
const CaloCell_ID * m_calocellID
SG::ReadCondHandleKey< LArBadFebCont > m_BFKey
An AttributeList represents a logical row of attributes in a metadata table. The name and type of eac...
Helper class for offline cell identifiers.
Gaudi::Property< bool > m_doHV
const LArEM_ID * m_larem_id
const LArFCAL_ID * m_larfcal_id
StatusCode fillPathAndCellHV(const CaloDetDescrManager *calodetdescrmgr, voltagePerCell_t &hvdata, const LArHVIdMapping *hvCabling, const voltagePerLine_t &voltage, const LArHVPathology &pathologies, pathVec &hasPathologyEM, pathVec &hasPathologyHEC, pathVec &hasPathologyFCAL, const float *rValues) const
Read the voltage per HV line and store it in structure per readout-cell (resolve the many-HV-lines-to...
const LArHEC_ID * m_larhec_id
std::function< const EventIDRange &(SG::ReadCondHandle< CondAttrListCollection > &h)> addDepFcn_t
StatusCode updateMethod(const EventContext &ctx, CaloAffectedRegionInfoVec *vAffected, const LArBadFebCont *bfCont, const LArOnOffIdMapping *cabling) const
StatusCode searchNonNominalHV_FCAL(CaloAffectedRegionInfoVec *vAffected, const LArHVIdMapping *hvCabling, const voltagePerLine_t &voltage) const
std::atomic< unsigned > m_nPathologies
Gaudi::Property< bool > m_undoOnlineHVCorr
const LArOnlineID * m_onlineID
SG::WriteCondHandleKey< LArHVCorr > m_outputHVScaleCorrKey
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
LArHVScaleCorrTool::HV_t HV_t
This class provides the client interface for accessing the detector description information common to...
Gaudi::Property< bool > m_useCurrentOthers
Gaudi::Property< bool > m_doAffectedHV
def delta_phi(phi1, phi2)
std::unique_ptr< const LArHVScaleCorrTool > m_scaleTool
StatusCode searchNonNominalHV_EMEC_OUTER(CaloAffectedRegionInfoVec *vAffected, const LArHVIdMapping *hvCabling, const voltagePerLine_t &voltage) const
StatusCode getVoltagePerLine(const EventContext &ctx, voltagePerLine_t &voltagePerLine, const addDepFcn_t &addDep) const
AthAlgorithm()
Default constructor:
Helper class for LArEM offline identifiers.
Helper class for LArFCAL offline identifiers.
LArHVScaleCorrTool::voltageCell_t voltageCell_t
SG::ReadCondHandleKey< LArHVIdMapping > m_hvMappingKey
SG::WriteCondHandleKey< CaloAffectedRegionInfoVec > m_affectedKey
void addHV(voltageCell_t &v, float hv, float weight) const
Add voltage/weight for a sub-gap of a cell.
Helper for the Liquid Argon Calorimeter High-Voltage identifiers.