26 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]" 27 <<
" Constructing object...";
34 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]" 35 <<
" Destructing object...";
42 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]";
46 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]" 47 <<
" NULL pointer to SiStripConfigDb interface!" 48 <<
" Aborting upload...";
57 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]" 58 <<
" Uploading pedestals/noise to DB...";
61 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]" 62 <<
" Completed database upload of " << feds.size()
63 <<
" FED descriptions!";
66 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]" 67 <<
" TEST only! No pedestals/noise values will be uploaded to DB...";
78 SiStripConfigDb::FedDescriptionsV::const_iterator ifed;
79 for ( ifed = feds.begin(); ifed != feds.end(); ifed++ ) {
102 Analyses::const_iterator iter =
data().find( fec_key.key() );
103 if ( iter !=
data().end() ) {
106 if ( !iter->second->isValid() ) {
continue; }
111 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]" 112 <<
" NULL pointer to analysis object!";
118 for ( uint16_t istr = 0; istr < anal->
peds()[iapv].size(); istr++ ) {
123 Fed9U::Fed9UStripDescription
data( static_cast<uint32_t>( anal->
peds()[iapv][istr] ),
126 anal->
noise()[iapv][istr],
128 Fed9U::Fed9UAddress addr( ichan, iapv, istr );
129 (*ifed)->getFedStrips().setStrip( addr,
data );
137 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]" 138 <<
" Unable to find pedestals/noise for FedKey/Id/Ch: " 139 << hex << setw(8) << setfill(
'0') << fed_key.
key() <<
dec <<
"/" 140 << (*ifed)->getFedId() <<
"/" 142 <<
" and device with FEC/slot/ring/CCU/LLD " 143 << fec_key.fecCrate() <<
"/" 144 << fec_key.fecSlot() <<
"/" 145 << fec_key.fecRing() <<
"/" 146 << fec_key.ccuAddr() <<
"/" 147 << fec_key.ccuChan() <<
"/" 148 << fec_key.channel();
154 <<
"[NoiseHistosUsingDb::" << __func__ <<
"]" 155 <<
" Updated FED pedestals/noise for " 156 << updated <<
" channels";
166 if ( !anal ) {
return; }
171 for ( uint16_t iapv = 0; iapv < 2; ++iapv ) {
174 PedestalsAnalysisDescription*
tmp;
175 tmp =
new PedestalsAnalysisDescription( anal->
dead()[iapv],
205 typedef std::vector<std::string>
Strings;
207 Strings::const_iterator istr = errors.begin();
208 Strings::const_iterator jstr = errors.end();
209 for ( ; istr != jstr; ++istr ) { tmp->addComments( *istr ); }
212 desc.push_back( tmp );
const uint16_t & fecSlot() const
~NoiseHistosUsingDb() override
const uint16_t & fecCrate() const
const VVInt & dead() const
const VFloat & noiseMean() const
const uint32_t & fedKey() const
Analyses::iterator Analysis
const VFloat & noiseSpread() const
Analyses & data(bool getMaskedData=false)
FedChannelConnection fedConnection(uint16_t fed_id, uint16_t fed_ch) const
A container class for generic run and event-related info, information required by the commissioning a...
const uint16_t & fedCh() const
const VFloat & pedsMax() const
FedDescriptionsRange getFedDescriptions(std::string partition="")
bool isValid() const override
FedDescriptions::range FedDescriptionsRange
static const char mlDqmClient_[]
const VFloat & rawMin() const
uint16_t lldChannel() const
const VFloat & rawMax() const
const VFloat & pedsMean() const
const uint16_t & i2cAddr() const
const uint16_t & fedId() const
const uint32_t & key() const
Utility class that identifies a position within the strip tracker control structure, down to the level of an APV25.
const_iterator_range partitions() const
const uint16_t & fecRing() const
Class containning control, module, detector and connection information, at the level of a FED channel...
const VVFloat & noise() const
An interface class to the DeviceFactory.
const uint16_t & ccuChan() const
bool doUploadConf() const
const VVInt & noisy() const
const uint32_t & fecKey() const
const uint16_t & ccuAddr() const
const VFloat & pedsSpread() const
const VFloat & noiseMin() const
const VFloat & noiseMax() const
const VFloat & rawSpread() const
const VFloat & rawMean() const
const uint16_t & feUnit() const
const SiStripDbParams & dbParams() const
void uploadFedDescriptions(std::string partition="")
static const uint16_t invalid_
const VVFloat & peds() const
void create(SiStripConfigDb::AnalysisDescriptionsV &, Analysis) override
std::vector< std::vector< double > > tmp
void update(SiStripConfigDb::FedDescriptionsRange)
static const uint16_t FEDCH_PER_FED
std::vector< AnalysisDescription * > AnalysisDescriptionsV
const uint16_t & feChan() const
Histogram-based analysis for pedestal run.
SiStripConfigDb *const db() const
void uploadConfigurations() override
SiStripFedCabling *const cabling() const
const VString & getErrorCodes() const
static const uint16_t APVS_PER_FEDCH
NoiseHistosUsingDb(const edm::ParameterSet &pset, DQMStore *, SiStripConfigDb *const )
const VFloat & pedsMin() const