CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

ApvTimingTask Class Reference

#include <ApvTimingTask.h>

Inheritance diagram for ApvTimingTask:
CommissioningTask

List of all members.

Public Member Functions

 ApvTimingTask (DQMStore *, const FedChannelConnection &)
virtual ~ApvTimingTask ()

Private Member Functions

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

Private Attributes

uint16_t nBins_
uint16_t nFineDelays_
uint16_t nSamples_
HistoSet timing_

Detailed Description

Definition at line 9 of file ApvTimingTask.h.


Constructor & Destructor Documentation

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

Definition at line 11 of file ApvTimingTask.cc.

                                                                 :
  CommissioningTask( dqm, conn, "ApvTimingTask" ),
  timing_(),
  nSamples_(40),
  nFineDelays_(24),
  nBins_(40) 
{}
ApvTimingTask::~ApvTimingTask ( ) [virtual]

Definition at line 22 of file ApvTimingTask.cc.

                              {
}

Member Function Documentation

void ApvTimingTask::book ( ) [private, virtual]
void ApvTimingTask::fill ( const SiStripEventSummary summary,
const edm::DetSet< SiStripRawDigi > &  digis 
) [private, virtual]

Reimplemented from CommissioningTask.

Definition at line 58 of file ApvTimingTask.cc.

References edm::DetSet< T >::data, sistrip::mlDqmSource_, nBins_, SiStripEventSummary::pllFine(), timing_, and CommissioningTask::updateHistoSet().

                                                                   {
  
  if ( digis.data.size() < nBins_ ) { //@@ check scope mode length?
    edm::LogWarning(mlDqmSource_)
      << "[ApvTimingTask::" << __func__ << "]"
      << " Unexpected number of digis! " 
      << digis.data.size(); 
    return;
  }
  
  uint32_t pll_fine = summary.pllFine();
  for ( uint16_t coarse = 0; coarse < nBins_/*digis.data.size()*/; coarse++ ) {
    uint16_t fine = (coarse+1)*24 - (pll_fine+1);
    updateHistoSet( timing_, fine, digis.data[coarse].adc() );
  }
  
}
void ApvTimingTask::update ( void  ) [private, virtual]

Reimplemented from CommissioningTask.

Definition at line 79 of file ApvTimingTask.cc.

References timing_, and CommissioningTask::updateHistoSet().


Member Data Documentation

uint16_t ApvTimingTask::nBins_ [private]

Definition at line 27 of file ApvTimingTask.h.

Referenced by book(), and fill().

uint16_t ApvTimingTask::nFineDelays_ [private]

Definition at line 26 of file ApvTimingTask.h.

uint16_t ApvTimingTask::nSamples_ [private]

Definition at line 25 of file ApvTimingTask.h.

Definition at line 23 of file ApvTimingTask.h.

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