CMS 3D CMS Logo

Protected Member Functions

VpspScanSummaryFactory Class Reference

#include <VpspScanSummaryFactory.h>

Inheritance diagram for VpspScanSummaryFactory:
SummaryPlotFactory< CommissioningAnalysis * > SummaryPlotFactoryBase

List of all members.

Protected Member Functions

void extract (Iterator)
void format ()

Detailed Description

Definition at line 6 of file VpspScanSummaryFactory.h.


Member Function Documentation

void VpspScanSummaryFactory::extract ( Iterator  iter) [protected, virtual]

Reimplemented from SummaryPlotFactory< CommissioningAnalysis * >.

Definition at line 12 of file VpspScanSummaryFactory.cc.

References VpspScanAnalysis::adcLevel(), VpspScanAnalysis::bottomLevel(), error, SummaryGenerator::fillMap(), SummaryPlotFactoryBase::generator_, SummaryPlotFactoryBase::gran_, sistrip::invalid_, SummaryPlotFactoryBase::level_, sistrip::mlSummaryPlots_, SummaryPlotFactoryBase::mon_, SiStripEnumsAndStrings::monitorable(), VpspScanAnalysis::topLevel(), relativeConstraints::value, VpspScanAnalysis::vpsp(), sistrip::VPSP_SCAN_ADC_LEVEL, sistrip::VPSP_SCAN_APV0_SETTING, sistrip::VPSP_SCAN_APV1_SETTING, sistrip::VPSP_SCAN_APV_SETTINGS, sistrip::VPSP_SCAN_DIGITAL_HIGH, and sistrip::VPSP_SCAN_DIGITAL_LOW.

                                                    {
  
  VpspScanAnalysis* anal = dynamic_cast<VpspScanAnalysis*>( iter->second );
  if ( !anal ) { return; }
    
  std::vector<float> value( 2, 1. * sistrip::invalid_ );
  std::vector<float> error( 2, 1. * sistrip::invalid_ );

  bool two = true;
  if ( mon_ == sistrip::VPSP_SCAN_APV_SETTINGS ) {
    value[0] = 1. * anal->vpsp()[0]; 
    value[1] = 1. * anal->vpsp()[1]; 
  } else if ( mon_ == sistrip::VPSP_SCAN_APV0_SETTING ) {
    value[0] = 1. * anal->vpsp()[0]; 
    two = false;
  } else if ( mon_ == sistrip::VPSP_SCAN_APV1_SETTING ) {
    value[0] = 1. * anal->vpsp()[1]; 
    two = false;
  } else if ( mon_ == sistrip::VPSP_SCAN_ADC_LEVEL ) {
    value[0] = 1. * anal->adcLevel()[0]; 
    value[1] = 1. * anal->adcLevel()[1]; 
  } else if ( mon_ == sistrip::VPSP_SCAN_DIGITAL_HIGH ) {
    value[0] = 1. * anal->topLevel()[0]; 
    value[1] = 1. * anal->topLevel()[1]; 
  } else if ( mon_ == sistrip::VPSP_SCAN_DIGITAL_LOW ) {
    value[0] = 1. * anal->bottomLevel()[0]; 
    value[1] = 1. * anal->bottomLevel()[1]; 
  } else { 
    edm::LogWarning(mlSummaryPlots_)
      << "[SummaryPlotFactory::" << __func__ << "]" 
      << " Unexpected monitorable: "
      << SiStripEnumsAndStrings::monitorable( SummaryPlotFactoryBase::mon_ );
    return; 
  }

  SummaryPlotFactoryBase::generator_->fillMap( SummaryPlotFactoryBase::level_, 
                                               SummaryPlotFactoryBase::gran_, 
                                               iter->first, 
                                               value[0],
                                               error[0] );
  
  if ( two ) {
    SummaryPlotFactoryBase::generator_->fillMap( SummaryPlotFactoryBase::level_, 
                                                 SummaryPlotFactoryBase::gran_, 
                                                 iter->first, 
                                                 value[1],
                                                 error[1] );
  }
  
}
void VpspScanSummaryFactory::format ( ) [protected, virtual]