CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
FedTimingTask Class Reference

#include <FedTimingTask.h>

Inheritance diagram for FedTimingTask:
CommissioningTask

Public Member Functions

 FedTimingTask (DQMStore *, const FedChannelConnection &)
 
 ~FedTimingTask () override
 
- Public Member Functions inherited from CommissioningTask
void bookHistograms ()
 
 CommissioningTask (DQMStore *, const FedChannelConnection &, const std::string &my_name)
 
void eventSetup (const edm::EventSetup *)
 
const uint32_t & fillCntr () const
 
void fillHistograms (const SiStripEventSummary &, const edm::DetSet< SiStripRawDigi > &)
 
void fillHistograms (const SiStripEventSummary &, const edm::DetSet< SiStripRawDigi > &, const edm::DetSet< SiStripRawDigi > &)
 
void fillHistograms (const SiStripEventSummary &, const edm::DetSet< SiStripRawDigi > &, const edm::DetSet< SiStripRawDigi > &, const std::vector< uint16_t > &)
 
void fillHistograms (const SiStripEventSummary &, const uint16_t &fed_id, const std::map< uint16_t, float > &fed_ch)
 
const std::string & myName () const
 
const uint32_t & updateFreq () const
 
void updateFreq (const uint32_t &)
 
void updateHistograms ()
 
virtual ~CommissioningTask ()
 

Private Member Functions

void book () override
 
void fill (const SiStripEventSummary &, const edm::DetSet< SiStripRawDigi > &) override
 
void update () override
 

Private Attributes

uint16_t nBins_
 
HistoSet timing_
 

Additional Inherited Members

- Public Types inherited from CommissioningTask
typedef dqm::legacy::DQMStore DQMStore
 
typedef dqm::legacy::MonitorElement MonitorElement
 
- Protected Member Functions inherited from CommissioningTask
const FedChannelConnectionconnection () const
 
DQMStore *const dqm () const
 
const edm::EventSetup *const eventSetup () const
 
const uint32_t & fecKey () const
 
const uint32_t & fedKey () const
 
void updateHistoSet (HistoSet &, const uint32_t &bin, const float &value)
 
void updateHistoSet (CompactHistoSet &, const uint32_t &bin, const short &value)
 
void updateHistoSet (HistoSet &, const uint32_t &bin)
 
void updateHistoSet (CompactHistoSet &, const uint32_t &bin)
 
void updateHistoSet (HistoSet &, const float &value)
 
void updateHistoSet (CompactHistoSet &)
 
void updateHistoSet (HistoSet &)
 

Detailed Description

Definition at line 9 of file FedTimingTask.h.

Constructor & Destructor Documentation

◆ FedTimingTask()

FedTimingTask::FedTimingTask ( DQMStore dqm,
const FedChannelConnection conn 
)

Definition at line 10 of file FedTimingTask.cc.

References LogDebug.

11  : CommissioningTask(dqm, conn, "FedTimingTask"),
12  timing_(),
13  nBins_(
14  40) //@@ this should be from number of scope mode samples (mean booking in event loop and putting scope mode length in trigger fed)
15 {
16  LogDebug("Commissioning") << "[FedTimingTask::FedTimingTask] Constructing object...";
17 }
uint16_t nBins_
Definition: FedTimingTask.h:21
conn
Definition: getInfo.py:9
Definition: DQMStore.h:18
HistoSet timing_
Definition: FedTimingTask.h:19
#define LogDebug(id)

◆ ~FedTimingTask()

FedTimingTask::~FedTimingTask ( )
override

Definition at line 21 of file FedTimingTask.cc.

References LogDebug.

21 { LogDebug("Commissioning") << "[FedTimingTask::FedTimingTask] Destructing object..."; }
#define LogDebug(id)

Member Function Documentation

◆ book()

void FedTimingTask::book ( )
overrideprivatevirtual

Reimplemented from CommissioningTask.

Definition at line 25 of file FedTimingTask.cc.

References CommissioningTask::connection(), CommissioningTask::dqm(), sistrip::EXPERT_HISTO, sistrip::FED_KEY, sistrip::FED_TIMING, CommissioningTask::fedKey(), CommissioningTask::HistoSet::histo(), sistrip::LLD_CHAN, LogDebug, LaserClient_cfi::nbins, nBins_, AlCaHLTBitMon_QueryRunRegistry::string, timing_, SiStripHistoTitle::title(), runGCPTkAlMap::title, CommissioningTask::HistoSet::vNumOfEntries_, CommissioningTask::HistoSet::vSumOfContents_, and CommissioningTask::HistoSet::vSumOfSquares_.

25  {
26  LogDebug("Commissioning") << "[FedTimingTask::book]";
27 
28  uint16_t nbins = 24 * nBins_; // 24 "fine" pll skews possible
29 
31 
35  fedKey(),
37  connection().lldChannel())
38  .title();
39 
40  timing_.histo(dqm()->bookProfile(title, title, nbins, -0.5, nbins * 1. - 0.5, 1025, 0., 1025.));
41 
42  timing_.vNumOfEntries_.resize(nbins, 0);
43  timing_.vSumOfContents_.resize(nbins, 0);
44  timing_.vSumOfSquares_.resize(nbins, 0);
45 }
std::vector< float > vNumOfEntries_
Utility class that holds histogram title.
std::vector< float > vSumOfContents_
uint16_t nBins_
Definition: FedTimingTask.h:21
const uint32_t & fedKey() const
DQMStore *const dqm() const
void histo(MonitorElement *)
std::vector< double > vSumOfSquares_
const std::string & title() const
const FedChannelConnection & connection() const
HistoSet timing_
Definition: FedTimingTask.h:19
#define LogDebug(id)

◆ fill()

void FedTimingTask::fill ( const SiStripEventSummary summary,
const edm::DetSet< SiStripRawDigi > &  digis 
)
overrideprivatevirtual

Reimplemented from CommissioningTask.

Definition at line 57 of file FedTimingTask.cc.

References edm::DetSet< T >::data, LogDebug, nBins_, edmLumisInFiles::summary, timing_, and CommissioningTask::updateHistoSet().

57  {
58  LogDebug("Commissioning") << "[FedTimingTask::fill]";
59 
60  //@@ if scope mode length is in trigger fed, then
61  //@@ can add check here on number of digis
62  if (digis.data.size() < nBins_) {
63  edm::LogWarning("Commissioning") << "[FedTimingTask::fill]"
64  << " Unexpected number of digis! " << digis.data.size();
65  } else {
66  uint32_t pll_fine = summary.pllFine();
67  for (uint16_t coarse = 0; coarse < nBins_ /*digis.data.size()*/; coarse++) {
68  uint16_t fine = (coarse + 1) * 24 - (pll_fine + 1);
69  updateHistoSet(timing_, fine, digis.data[coarse].adc());
70  }
71  }
72 }
void updateHistoSet(HistoSet &, const uint32_t &bin, const float &value)
uint16_t nBins_
Definition: FedTimingTask.h:21
collection_type data
Definition: DetSet.h:80
Log< level::Warning, false > LogWarning
HistoSet timing_
Definition: FedTimingTask.h:19
#define LogDebug(id)

◆ update()

void FedTimingTask::update ( )
overrideprivatevirtual

Reimplemented from CommissioningTask.

Definition at line 76 of file FedTimingTask.cc.

References LogDebug, timing_, and CommissioningTask::updateHistoSet().

Referenced by progressbar.ProgressBar::__next__(), MatrixUtil.Matrix::__setitem__(), MatrixUtil.Steps::__setitem__(), dqm-mbProfile.Profile::finish(), progressbar.ProgressBar::finish(), and MatrixUtil.Steps::overwrite().

76  {
77  LogDebug("Commissioning") << "[FedTimingTask::update]";
79 }
void updateHistoSet(HistoSet &, const uint32_t &bin, const float &value)
HistoSet timing_
Definition: FedTimingTask.h:19
#define LogDebug(id)

Member Data Documentation

◆ nBins_

uint16_t FedTimingTask::nBins_
private

Definition at line 21 of file FedTimingTask.h.

Referenced by book(), and fill().

◆ timing_

HistoSet FedTimingTask::timing_
private

Definition at line 19 of file FedTimingTask.h.

Referenced by book(), fill(), and update().