SctCalibrationController::ConfigUpdater Class Reference

Algorithm interface for updating the module configuration after the result of a test (TestResult) becomes available. More...

#include <ConfigUpdater.h>

Inheritance diagram for SctCalibrationController::ConfigUpdater:

Inheritance graph
[legend]

Public Member Functions

virtual void update (const SctData::TestResult &t, Sct_SctApi::SctApiIPC_ptr api) const =0
 Sub-classes should override this to apply changes to a module configuration as a result of a Test.

Protected Member Functions

 ConfigUpdater ()
virtual ~ConfigUpdater ()
unsigned long getMID (const SctData::TestResult &t, Sct_SctApi::SctApiIPC_ptr api) const
 Gets the module id for a TestResult
Exceptions:
SctApiAccessException if there is a problem with the api.

void maskChannels (const SctData::TestResult &t, SctData::DefectSeverity s, Sct_SctApi::SctApiIPC_ptr api) const
 Masks all channels with a severity >= s
Exceptions:
SctApiAccessException if there is a problem with the api.


Private Member Functions

void maskChannels (SctData::ModuleConfiguration &config, SctData::ModuleElement element) const
 Masks all the channels in element.

Detailed Description

Algorithm interface for updating the module configuration after the result of a test (TestResult) becomes available.

Concrete sub-classes must impliment the update() method. Applies changes via the IPC interface of the SctApi.

Definition at line 23 of file ConfigUpdater.h.


Member Function Documentation

unsigned long SctCalibrationController::ConfigUpdater::getMID const SctData::TestResult t,
Sct_SctApi::SctApiIPC_ptr  api
const [protected]
 

Gets the module id for a TestResult

Exceptions:
SctApiAccessException if there is a problem with the api.

Definition at line 17 of file ConfigUpdater.cpp.

References SctData::TestResult::getModuleName().

Referenced by SctCalibrationController::TxCurrentConfigUpdater::update(), SctCalibrationController::TrimRangeConfigUpdater::update(), SctCalibrationController::StrobeDelayConfigUpdater::update(), SctCalibrationController::RxThresholdConfigUpdater::update(), SctCalibrationController::RxThresholdBasedOnConfigRegisterConfigUpdater::update(), SctCalibrationController::RxDelayConfigUpdater::update(), SctCalibrationController::NPtGainConfigUpdater::update(), and SctCalibrationController::MarkSpaceRatioConfigUpdater::update().

Here is the call graph for this function:

void SctCalibrationController::ConfigUpdater::maskChannels SctData::ModuleConfiguration config,
SctData::ModuleElement  element
const [private]
 

Masks all the channels in element.

Definition at line 47 of file ConfigUpdater.cpp.

References Sct::nChannelChip.

void SctCalibrationController::ConfigUpdater::maskChannels const SctData::TestResult t,
SctData::DefectSeverity  s,
Sct_SctApi::SctApiIPC_ptr  api
const [protected]
 

Masks all channels with a severity >= s

Exceptions:
SctApiAccessException if there is a problem with the api.

Definition at line 23 of file ConfigUpdater.cpp.

References SctData::DefectList::getAllDefects(), SctData::ModuleConfiguration::getChipConfiguration(), SctData::TestResult::getDefects(), Sct::nChipModule, and SctData::ChipConfiguration::resetMask().

Referenced by SctCalibrationController::PipelineConfigUpdater::update(), and SctCalibrationController::NPtGainConfigUpdater::update().

Here is the call graph for this function:

virtual void SctCalibrationController::ConfigUpdater::update const SctData::TestResult t,
Sct_SctApi::SctApiIPC_ptr  api
const [pure virtual]
 

Sub-classes should override this to apply changes to a module configuration as a result of a Test.

Exceptions:
SctApiAccessException if there is a problem with the api

Implemented in SctCalibrationController::MarkSpaceRatioConfigUpdater, SctCalibrationController::NPtGainConfigUpdater, SctCalibrationController::PipelineConfigUpdater, SctCalibrationController::RxDelayConfigUpdater, SctCalibrationController::RxThresholdBasedOnConfigRegisterConfigUpdater, SctCalibrationController::RxThresholdConfigUpdater, SctCalibrationController::StrobeDelayConfigUpdater, SctCalibrationController::TrimRangeConfigUpdater, and SctCalibrationController::TxCurrentConfigUpdater.


The documentation for this class was generated from the following files:
Generated on Mon Feb 6 14:05:24 2006 for SCT DAQ/DCS Software - C++ by  doxygen 1.4.6