CMS 3D CMS Logo

ApvTimingTask.cc
Go to the documentation of this file.
6 
7 using namespace sistrip;
8 
9 // -----------------------------------------------------------------------------
10 //@@ nBins_ should be number of scope mode samples from trigger fed data???
12  : CommissioningTask(dqm, conn, "ApvTimingTask"), timing_(), nSamples_(40), nFineDelays_(24), nBins_(40) {}
13 
14 // -----------------------------------------------------------------------------
15 //
17 
18 // -----------------------------------------------------------------------------
19 //
21  uint16_t nbins = 24 * nBins_;
22 
26  fedKey(),
28  connection().lldChannel())
29  .title();
30 
31  timing_.histo(dqm()->bookProfile(title, title, nbins, -0.5, nBins_ * 25. - 0.5, 1025, 0., 1025.));
32 
33  timing_.vNumOfEntries_.resize(nbins, 0);
34  timing_.vSumOfContents_.resize(nbins, 0);
35  timing_.vSumOfSquares_.resize(nbins, 0);
36 }
37 
38 // -----------------------------------------------------------------------------
39 //
40 /*
41  Some notes:
42  - use all samples
43  - extract number of samples from trigger fed
44  - need to book histos in event loop?
45  - why only use fine skew setting when filling histos? should use coarse setting as well?
46  - why do different settings every 100 events - change more freq?
47 */
49  if (digis.data.size() < nBins_) { //@@ check scope mode length?
50  edm::LogWarning(mlDqmSource_) << "[ApvTimingTask::" << __func__ << "]"
51  << " Unexpected number of digis! " << digis.data.size();
52  return;
53  }
54 
55  uint32_t pll_fine = summary.pllFine();
56  for (uint16_t coarse = 0; coarse < nBins_ /*digis.data.size()*/; coarse++) {
57  uint16_t fine = (coarse + 1) * 24 - (pll_fine + 1);
58  updateHistoSet(timing_, fine, digis.data[coarse].adc());
59  }
60 }
61 
62 // -----------------------------------------------------------------------------
63 //
CommissioningTask::HistoSet::vSumOfSquares_
std::vector< double > vSumOfSquares_
Definition: CommissioningTask.h:46
sistrip::mlDqmSource_
static const char mlDqmSource_[]
Definition: ConstantsForLogger.h:20
runGCPTkAlMap.title
string title
Definition: runGCPTkAlMap.py:94
MessageLogger.h
CommissioningTask::HistoSet::vSumOfContents_
std::vector< float > vSumOfContents_
Definition: CommissioningTask.h:45
ApvTimingTask::update
void update() override
Definition: ApvTimingTask.cc:64
sistrip::APV_TIMING
Definition: ConstantsForRunType.h:75
ApvTimingTask::timing_
HistoSet timing_
Definition: ApvTimingTask.h:19
edm::DetSet
Definition: DetSet.h:23
CommissioningTask::connection
const FedChannelConnection & connection() const
Definition: CommissioningTask.h:189
ApvTimingTask::nBins_
uint16_t nBins_
Definition: ApvTimingTask.h:23
ApvTimingTask::book
void book() override
Definition: ApvTimingTask.cc:20
ApvTimingTask::ApvTimingTask
ApvTimingTask(DQMStore *, const FedChannelConnection &)
Definition: ApvTimingTask.cc:11
SiStripCommissioningClient_cfg.conn
conn
Definition: SiStripCommissioningClient_cfg.py:5
DQMStore.h
CommissioningTask
Definition: CommissioningTask.h:24
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
CommissioningTask::HistoSet::vNumOfEntries_
std::vector< float > vNumOfEntries_
Definition: CommissioningTask.h:44
CommissioningTask::fedKey
const uint32_t & fedKey() const
Definition: CommissioningTask.h:192
dqm::legacy::DQMStore
Definition: DQMStore.h:727
sistrip::EXPERT_HISTO
Definition: ConstantsForHistoType.h:29
LaserClient_cfi.nbins
nbins
Definition: LaserClient_cfi.py:51
ApvTimingTask.h
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
FedChannelConnection
Class containning control, module, detector and connection information, at the level of a FED channel...
Definition: FedChannelConnection.h:26
SiStripConstants.h
CommissioningTask::HistoSet::histo
void histo(MonitorElement *)
Definition: CommissioningTask.cc:89
ApvTimingTask::fill
void fill(const SiStripEventSummary &, const edm::DetSet< SiStripRawDigi > &) override
Definition: ApvTimingTask.cc:48
edmLumisInFiles.summary
summary
Definition: edmLumisInFiles.py:39
CommissioningTask::updateHistoSet
void updateHistoSet(HistoSet &, const uint32_t &bin, const float &value)
Definition: CommissioningTask.cc:274
CommissioningTask::dqm
DQMStore *const dqm() const
Definition: CommissioningTask.h:188
SiStripHistoTitle.h
SiStripHistoTitle::title
const std::string & title() const
Definition: SiStripHistoTitle.h:109
edm::DetSet::data
collection_type data
Definition: DetSet.h:80
SiStripHistoTitle
Utility class that holds histogram title.
Definition: SiStripHistoTitle.h:20
dqm
Definition: DQMStore.h:18
sistrip::FED_KEY
Definition: ConstantsForKeyType.h:30
sistrip
sistrip classes
Definition: SiStripQualityHelpers.h:14
SiStripEventSummary
Definition: SiStripEventSummary.h:22
ApvTimingTask::~ApvTimingTask
~ApvTimingTask() override
Definition: ApvTimingTask.cc:16
sistrip::LLD_CHAN
Definition: ConstantsForGranularity.h:78