33 dead_[0].reserve(256);
34 dead_[1].reserve(256);
61 dead_[0].reserve(256);
62 dead_[1].reserve(256);
87 dead_[0].reserve(256);
88 dead_[1].reserve(256);
118 std::stringstream extra1, extra2, extra3;
168 <<
":" << title1 <<
";" << title2 <<
";" << title3 <<
";" << title4 << std::endl;
174 if (iapv == 1 || iapv == 2) {
182 <<
" Unexpected number of pedestal/noise values: " <<
peds_[iapv].size() <<
", " 183 <<
noise_[iapv].size() <<
", " <<
raw_[iapv].size();
188 ss <<
" Monitorables for APV number : " << iapv;
190 ss <<
" (first of pair)";
191 }
else if (iapv == 1) {
192 ss <<
" (second of pair)";
196 ss <<
" Example peds/noise for strips : " 197 <<
" 0, 31, 63, 127" << std::endl
198 <<
" Peds [ADC] : " << std::setw(6) <<
peds_[iapv][0] <<
", " << std::setw(6)
199 <<
peds_[iapv][31] <<
", " << std::setw(6) <<
peds_[iapv][63] <<
", " << std::setw(6) <<
peds_[iapv][127]
201 <<
" Noise [ADC] : " << std::setw(6) <<
noise_[iapv][0] <<
", " << std::setw(6)
202 <<
noise_[iapv][31] <<
", " << std::setw(6) <<
noise_[iapv][63] <<
", " << std::setw(6) <<
noise_[iapv][127]
204 <<
" Raw noise [ADC] : " << std::setw(6) <<
raw_[iapv][0] <<
", " << std::setw(6) <<
raw_[iapv][31]
205 <<
", " << std::setw(6) <<
raw_[iapv][63] <<
", " << std::setw(6) <<
raw_[iapv][127] << std::endl
206 <<
" Dead strips (<5s) [strip] : (" <<
dead_[iapv].size() <<
" in total) ";
207 for (uint16_t
ii = 0;
ii <
dead_[iapv].size();
ii++) {
212 ss <<
" Noisy strips (>5s) [strip] : (" <<
noisy_[iapv].size() <<
" in total) ";
218 <<
" Min/Max pedestal [ADC] : " <<
pedsMin_[iapv] <<
" <-> " <<
pedsMax_[iapv] << std::endl
220 <<
" Min/Max noise [ADC] : " <<
noiseMin_[iapv] <<
" <-> " <<
noiseMax_[iapv] << std::endl
221 <<
" Mean raw noise +/- spread [ADC] : " <<
rawMean_[iapv] <<
" +/- " <<
rawSpread_[iapv] << std::endl
222 <<
" Min/Max raw noise [ADC] : " <<
rawMin_[iapv] <<
" <-> " <<
rawMax_[iapv] << std::endl
223 <<
" Normalised noise : " 224 <<
"(yet to be implemented...)" << std::endl
225 << std::boolalpha <<
" isValid : " <<
isValid() << std::endl
226 << std::noboolalpha <<
" Error codes (found " << std::setw(2) << std::setfill(
' ') <<
getErrorCodes().size()
233 for (; istr != jstr; ++istr) {
const VString & getErrorCodes() const
const uint16_t & ccuAddr() const
Utility class that holds histogram title.
A container class for generic run and event-related info, information required by the commissioning a...
static const char noiseMean_[]
void summary(std::stringstream &) const override
const uint16_t & ccuChan() const
static const char noiseMax_[]
static const char noiseMin_[]
const uint16_t & lldChan() const
void print(std::stringstream &, uint32_t apv_number=0) override
Utility class that identifies a position within the strip tracker control structure, down to the level of an APV25.
static std::string runType(const sistrip::RunType &)
const std::string & myName() const
std::vector< float > VFloat
static const char mlCommissioning_[]
const uint16_t & i2cAddr() const
static const char controlView_[]
const uint32_t & key() const
static const uint16_t maximum_
static const char dqmRoot_[]
static const char noiseSpread_[]
key
prepare the HTCondor submission files and eventually submit them
const uint32_t & fecKey() const
const uint32_t & fedKey() const
std::vector< uint16_t > VInt
bool isValid() const override
std::vector< VInt > VVInt
static const uint16_t invalid_
const uint16_t & fecSlot() const
virtual void header(std::stringstream &) const
std::vector< VFloat > VVFloat
Abstract base for derived classes that provide analysis of commissioning histograms.
Log< level::Warning, false > LogWarning
const uint16_t & fecRing() const
const uint16_t & fecCrate() const