Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Related Pages

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_T_SctApi &api) const=0
 Sub-classes should override this to apply changes to a module configuration as a result of a Test.


Protected Member Functions

unsigned long getMID (const SctData::TestResult &t, Sct_SctApi_T_SctApi &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_T_SctApi &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_T_SctApi &  api
const [protected]
 

Gets the module id for a TestResult

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

Todo:
remove the nasty const_cast below when proper CORBA implementation arrives.

Definition at line 17 of file ConfigUpdater.cpp.

References SctData::TestResult::getModuleName().

Referenced by maskChannels().

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 46 of file ConfigUpdater.cpp.

References SctData::ModuleConfiguration::getChipConfiguration(), SctData::ModuleElement::getFirst(), SctData::ModuleElement::getLast(), and SctData::ChipConfiguration::mask().

Here is the call graph for this function:

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

Masks all channels with a severity >= s

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

Definition at line 24 of file ConfigUpdater.cpp.

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

Here is the call graph for this function:

virtual void SctCalibrationController::ConfigUpdater::update const SctData::TestResult t,
Sct_SctApi_T_SctApi &  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

Referenced by SctCalibrationController::ConfigUpdaterManager::update().


The documentation for this class was generated from the following files:
Generated on Thu Jul 15 09:52:19 2004 for SCT DAQ/DCS Software - C++ by doxygen 1.3.5