|
ATLAS Offline Software
|
Go to the documentation of this file.
24 return StatusCode::SUCCESS;
42 if (doExecSummary && !
m_isSC) {
44 badFebCont=(*badFebHdl);
53 return StatusCode::FAILURE;
63 return StatusCode::FAILURE;
70 std::ostream *
out = &(std::cout);
85 std::vector<std::vector<unsigned> > problemMatrix(
nProblemTypes, std::vector<unsigned>(
nParts));
87 std::vector<HWIdentifier>::const_iterator
it = larOnlineID->
channel_begin();
88 std::vector<HWIdentifier>::const_iterator it_e = larOnlineID->
channel_end();
89 unsigned count = 0, nConnected = 0;
90 std::vector<unsigned> nPerPart(
nParts);
92 for (;
it != it_e; ++
it) {
171 ATH_MSG_INFO (
"Found " <<
count <<
" entries in the bad-channel database. (Number of connected cells: " << nConnected <<
")" );
173 ATH_MSG_INFO (
"Found " <<
count <<
" entries in the bad-channel database. (Number of cells: " << nConnected <<
")");
183 std::ofstream exeSum;
185 if (!exeSum.is_open()) {
187 return StatusCode::FAILURE;
193 exeSum <<
"LAr SuperCells dead readout (incl masked OSUM)" << std::endl;
196 exeSum <<
"LAr SuperCells suffering from high noise:" << std::endl;
199 exeSum <<
"LAr SuperCells w/o calibration (constants from phi average of eta neighbours):" << std::endl;
202 exeSum <<
"LAr SuperCells with distorted pulse shape:" << std::endl;
205 exeSum <<
"LAr SuperCells having problems with the peak reco:" << std::endl;
208 exeSum <<
"LAr SuperCells having problems with the optical transmission:" << std::endl;
211 exeSum <<
"LAr SuperCells not usable:" << std::endl;
215 exeSum <<
"LAr dead readout channels:" << std::endl;
218 exeSum <<
"LAr permanently dead channels inside detector:" << std::endl;
221 exeSum <<
"LAr noisy readout channels (more than 10 sigma above phi average or unstable):" << std::endl;
224 exeSum <<
"LAr readout channels showing sporadic noise bursts:" << std::endl;
227 exeSum <<
"LAr readout channels w/o calibration (constants from phi average of eta neighbours):" << std::endl;
230 exeSum <<
"LAr readout channels connected to inactive Front End Boards:" << std::endl;
233 exeSum <<
"LAr readout channels not usable:" << std::endl;
240 return StatusCode::SUCCESS;
249 constexpr
const char*
fmt=
"{:>7}: {:>5} of {} ({:.3f}%)\n";
251 auto f = [](
unsigned den)->
double{
252 if (den > 0)
return 100./den;
262 exeFile << std::endl;
bool good() const
Returns true if no problems at all (all bits at zero)
SG::ReadCondHandleKey< LArBadFebCont > m_BFKey
Gaudi::Property< bool > m_skipDisconnected
Conditions-Data class holding LAr Bad Channel or Bad Feb information.
bool accumulate(AccumulateMap &map, std::vector< module_t > const &modules, FPGATrackSimMatrixAccumulator const &acc)
Accumulates an accumulator (e.g.
bool sporadicBurstNoise() const
bool deadReadout() const
FEB is not sending readout data, but the L1 trigger path is working.
int slot(const HWIdentifier id) const
Return the slot number of a hardware cell identifier: slot = [1,15] Slot-ID in top part of the crat...
Identifier32 get_identifier32() const
Get the 32-bit version Identifier, will be invalid if >32 bits needed.
int barrel_ec(const HWIdentifier id) const
Return the position barrel or endcap of a hardware cell identifier: barrel_ec = [0,...
LArBC_t status(const HWIdentifier channel) const
Query the status of a particular channel or FEB This is the main client access method.
id_iterator channel_end() const
value_type get_compact() const
Get the compact id.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
bool deformedTail() const
virtual StatusCode initialize() final
bool isFCALchannel(const HWIdentifier id) const
int channel(const HWIdentifier id) const
Return the channel number of a hardware cell identifier channel = [0,127] in all FEB.
Gaudi::Property< std::string > m_fileName
virtual bool isHECchannel(const HWIdentifier id) const =0
::StatusCode StatusCode
StatusCode definition for legacy code.
void writeSum(std::ofstream &exeFile, const std::vector< unsigned > &probs, const std::vector< unsigned > &nChans) const
bool deadAll() const
FEB is completely missing, e.g. powered off.
Gaudi::Property< bool > m_isSC
int pos_neg(const HWIdentifier id) const
Return the side of a hardware cell identifier pos_neg = [0,1] positive-side or negative-side Barrel...
virtual StatusCode execute() final
HWIdentifier feb_Id(int barrel_ec, int pos_neg, int feedthrough, int slot) const
Create feb_Id from fields.
Helper for the Liquid Argon Calorimeter cell identifiers.
virtual bool isEMECchannel(const HWIdentifier id) const =0
StatusCode initialize(bool used=true)
bool deactivatedInOKS() const
Deactivated in OKS.
bool lowLightFibre() const
std::string stringStatus(const LArBadChannel &bc) const
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
int feedthrough(const HWIdentifier id) const
Return the feedthrough of a hardware cell identifier : feedthrough = [0,31] Barrel - A/C side or H/...
bool offAmplitude() const
Gaudi::Property< std::string > m_executiveSummaryFile
SG::ReadCondHandleKey< LArBadChannelCont > m_BCKey
bool transmissionErrorFibre() const
Gaudi::Property< bool > m_wMissing
bool nonLinearRamp() const
id_iterator channel_begin() const
Returns an iterator pointing to a channel identifier collection.
bool deformedPulse() const