CMS 3D CMS Logo

Protected Member Functions

OptoScanSummaryFactory Class Reference

#include <OptoScanSummaryFactory.h>

Inheritance diagram for OptoScanSummaryFactory:
SummaryPlotFactory< CommissioningAnalysis * > SummaryPlotFactoryBase

List of all members.

Protected Member Functions

void extract (Iterator)
void format ()

Detailed Description

Definition at line 6 of file OptoScanSummaryFactory.h.


Member Function Documentation

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

Reimplemented from SummaryPlotFactory< CommissioningAnalysis * >.

Definition at line 12 of file OptoScanSummaryFactory.cc.

References OptoScanAnalysis::bias(), error, SummaryGenerator::fillMap(), OptoScanAnalysis::gain(), SummaryPlotFactoryBase::generator_, SummaryPlotFactoryBase::gran_, sistrip::invalid_, SummaryPlotFactoryBase::level_, OptoScanAnalysis::liftOff(), OptoScanAnalysis::linkNoise(), OptoScanAnalysis::measGain(), sistrip::mlSummaryPlots_, SummaryPlotFactoryBase::mon_, SiStripEnumsAndStrings::monitorable(), sistrip::OPTO_SCAN_BASELINE_LIFT_OFF, sistrip::OPTO_SCAN_LASER_THRESHOLD, sistrip::OPTO_SCAN_LINK_NOISE, sistrip::OPTO_SCAN_LLD_BIAS_SETTING, sistrip::OPTO_SCAN_LLD_GAIN_SETTING, sistrip::OPTO_SCAN_MEASURED_GAIN, sistrip::OPTO_SCAN_TICK_HEIGHT, sistrip::OPTO_SCAN_ZERO_LIGHT_LEVEL, OptoScanAnalysis::threshold(), OptoScanAnalysis::tickHeight(), sistrip::valid_, relativeConstraints::value, and OptoScanAnalysis::zeroLight().

                                                    {
  
  OptoScanAnalysis* anal = dynamic_cast<OptoScanAnalysis*>( iter->second );
  if ( !anal ) { return; }

  uint16_t igain = anal->gain();
  if ( igain > sistrip::valid_ ) { return; }
  
  float value = 1. * sistrip::invalid_;
  float error = 1. * sistrip::invalid_;
  
  if ( SummaryPlotFactoryBase::mon_ == sistrip::OPTO_SCAN_LLD_GAIN_SETTING ) { 
    value = igain; 
  } else if ( SummaryPlotFactoryBase::mon_ == sistrip::OPTO_SCAN_LLD_BIAS_SETTING ) { 
    value = anal->bias()[igain]; 
  } else if ( SummaryPlotFactoryBase::mon_ == sistrip::OPTO_SCAN_MEASURED_GAIN ) { 
    value = anal->measGain()[igain]; 
  } else if ( SummaryPlotFactoryBase::mon_ == sistrip::OPTO_SCAN_ZERO_LIGHT_LEVEL ) { 
    value = anal->zeroLight()[igain]; 
  } else if ( SummaryPlotFactoryBase::mon_ == sistrip::OPTO_SCAN_LINK_NOISE ) { 
    value = anal->linkNoise()[igain]; 
  } else if ( SummaryPlotFactoryBase::mon_ == sistrip::OPTO_SCAN_BASELINE_LIFT_OFF ) { 
    value = anal->liftOff()[igain]; 
  } else if ( SummaryPlotFactoryBase::mon_ == sistrip::OPTO_SCAN_LASER_THRESHOLD ) { 
    value = anal->threshold()[igain]; 
  } else if ( SummaryPlotFactoryBase::mon_ == sistrip::OPTO_SCAN_TICK_HEIGHT ) { 
    value = anal->tickHeight()[igain]; 
  } else { 
    edm::LogWarning(mlSummaryPlots_)
      << "[SummaryPlotFactory::" << __func__ << "]" 
      << " Unexpected monitorable: "
      << SiStripEnumsAndStrings::monitorable( SummaryPlotFactoryBase::mon_ );
    return; 
    
  }
  
  SummaryPlotFactoryBase::generator_->fillMap( SummaryPlotFactoryBase::level_, 
                                               SummaryPlotFactoryBase::gran_, 
                                               iter->first, 
                                               value,
                                               error );
  
}
void OptoScanSummaryFactory::format ( ) [protected, virtual]