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

SctData::ConfigurationVariable Class Reference

ConfigurationVariable represents a variable within ModuleConfiguration/ABCDModule. More...

#include <ConfigurationVariable.h>

Inheritance diagram for SctData::ConfigurationVariable:

Sct::Streamable SctData::CalChargeVariable SctData::DefaultVariable SctData::NullVariable SctData::StrobeDelayVariable SctData::ThresholdVariable SctData::mVCalChargeVariable SctData::mVThresholdVariable

Public Member Functions

virtual ~ConfigurationVariable () throw ()
string getClassName () const throw ()
 Get the class name for this object.

bool operator== (const ConfigurationVariable &var) const throw ()
string getVariableName () const throw ()
string getStrategyDescription () const throw ()
virtual double getLinkActualPoint (double logicalPt, const ModuleConfiguration &config, unsigned int link) const=0 throw ()
virtual double getChipActualPoint (double logicalPt, const ModuleConfiguration &config, unsigned int chip) const=0 throw ()
virtual double getChannelActualPoint (double logicalPt, const ModuleConfiguration &config, unsigned int channel) const=0 throw ()
virtual double getLinkLogicalPoint (double actualPt, const ModuleConfiguration &config, unsigned int link) const=0 throw ()
virtual double getChipLogicalPoint (double actualPt, const ModuleConfiguration &config, unsigned int chip) const=0 throw ()
virtual double getChannelLogicalPoint (double actualPt, const ModuleConfiguration &config, unsigned int channel) const=0 throw ()
virtual double getChipActualPoint (const ModuleConfiguration &config, unsigned int chip) const=0 throw ()
virtual void setChipActualPoint (double actualPt, ModuleConfiguration &config, unsigned int chip) const=0 throw ()
virtual double getChipLogicalPoint (const ModuleConfiguration &config, unsigned int chip) const throw ()
virtual void setChipLogicalPoint (double logicalPt, ModuleConfiguration &config, unsigned int chip) const throw ()
virtual double getModuleLogicalPoint (const ModuleConfiguration &config) const throw ()
virtual void setModuleLogicalPoint (double logicalPt, ModuleConfiguration &config) const throw ()

Protected Member Functions

 ConfigurationVariable (unsigned int typeVal, string variableName, string strategyDescription)

Private Types

typedef map< unsigned short,
shared_ptr< ConfigurationVariable > > 
VariableTypeMap

Static Private Member Functions

VariableTypeMapgetMap () throw ()

Private Attributes

unsigned short typeVal
string variableName
string strategyDescription

Friends

class ConfigurationVariableIOHelper

Detailed Description

ConfigurationVariable represents a variable within ModuleConfiguration/ABCDModule.

Sub-classes represent the particular (logical) variables and the different ways of setting them (e.g. ThresholdVariable represents the logical variable threshold and mVThresholdVariable represents setting the threshold in mV, fCThresholdVariable represents setting it in fC). The sub-classes are intended to be singletons (as they are really strategies and flyweights).

Author:
Matthew Palmer

Definition at line 26 of file ConfigurationVariable.h.


Member Typedef Documentation

typedef map<unsigned short, shared_ptr<ConfigurationVariable> > SctData::ConfigurationVariable::VariableTypeMap [private]
 

Definition at line 64 of file ConfigurationVariable.h.


Constructor & Destructor Documentation

virtual SctData::ConfigurationVariable::~ConfigurationVariable   throw () [inline, virtual]
 

Definition at line 28 of file ConfigurationVariable.h.

SctData::ConfigurationVariable::ConfigurationVariable unsigned int    typeVal,
string    variableName,
string    strategyDescription
[protected]
 

Definition at line 7 of file ConfigurationVariable.cpp.

References getMap().


Member Function Documentation

virtual double SctData::ConfigurationVariable::getChannelActualPoint double    logicalPt,
const ModuleConfiguration   config,
unsigned int    channel
const throw () [pure virtual]
 

Implemented in SctData::DefaultVariable, SctData::mVCalChargeVariable, SctData::mVThresholdVariable, SctData::NullVariable, and SctData::StrobeDelayVariable.

virtual double SctData::ConfigurationVariable::getChannelLogicalPoint double    actualPt,
const ModuleConfiguration   config,
unsigned int    channel
const throw () [pure virtual]
 

Implemented in SctData::DefaultVariable, SctData::mVCalChargeVariable, SctData::mVThresholdVariable, SctData::NullVariable, and SctData::StrobeDelayVariable.

virtual double SctData::ConfigurationVariable::getChipActualPoint const ModuleConfiguration   config,
unsigned int    chip
const throw () [pure virtual]
 

Implemented in SctData::CalChargeVariable, SctData::DefaultVariable, SctData::NullVariable, SctData::StrobeDelayVariable, and SctData::ThresholdVariable.

virtual double SctData::ConfigurationVariable::getChipActualPoint double    logicalPt,
const ModuleConfiguration   config,
unsigned int    chip
const throw () [pure virtual]
 

Implemented in SctData::DefaultVariable, SctData::mVCalChargeVariable, SctData::mVThresholdVariable, SctData::NullVariable, and SctData::StrobeDelayVariable.

double SctData::ConfigurationVariable::getChipLogicalPoint const ModuleConfiguration   config,
unsigned int    chip
const throw () [virtual]
 

Definition at line 32 of file ConfigurationVariable.cpp.

virtual double SctData::ConfigurationVariable::getChipLogicalPoint double    actualPt,
const ModuleConfiguration   config,
unsigned int    chip
const throw () [pure virtual]
 

Implemented in SctData::DefaultVariable, SctData::mVCalChargeVariable, SctData::mVThresholdVariable, SctData::NullVariable, and SctData::StrobeDelayVariable.

string SctData::ConfigurationVariable::getClassName   const throw () [virtual]
 

Get the class name for this object.

This is used to identify the precise type.

Todo:
We could use typeid instead here, but that would probably mean removing the namespace stuff.
Returns:
the class name

Implements Sct::Streamable.

Definition at line 20 of file ConfigurationVariable.cpp.

virtual double SctData::ConfigurationVariable::getLinkActualPoint double    logicalPt,
const ModuleConfiguration   config,
unsigned int    link
const throw () [pure virtual]
 

Implemented in SctData::DefaultVariable, SctData::mVCalChargeVariable, SctData::mVThresholdVariable, SctData::NullVariable, and SctData::StrobeDelayVariable.

virtual double SctData::ConfigurationVariable::getLinkLogicalPoint double    actualPt,
const ModuleConfiguration   config,
unsigned int    link
const throw () [pure virtual]
 

Implemented in SctData::DefaultVariable, SctData::mVCalChargeVariable, SctData::mVThresholdVariable, SctData::NullVariable, and SctData::StrobeDelayVariable.

map< unsigned short, shared_ptr< ConfigurationVariable > > & SctData::ConfigurationVariable::getMap   throw () [static, private]
 

Definition at line 11 of file ConfigurationVariable.cpp.

Referenced by ConfigurationVariable().

double SctData::ConfigurationVariable::getModuleLogicalPoint const ModuleConfiguration   config const throw () [virtual]
 

Definition at line 40 of file ConfigurationVariable.cpp.

string SctData::ConfigurationVariable::getStrategyDescription   const throw ()
 

Definition at line 28 of file ConfigurationVariable.cpp.

string SctData::ConfigurationVariable::getVariableName   const throw ()
 

Definition at line 24 of file ConfigurationVariable.cpp.

bool SctData::ConfigurationVariable::operator== const ConfigurationVariable &    var const throw ()
 

Definition at line 16 of file ConfigurationVariable.cpp.

virtual void SctData::ConfigurationVariable::setChipActualPoint double    actualPt,
ModuleConfiguration   config,
unsigned int    chip
const throw () [pure virtual]
 

Implemented in SctData::CalChargeVariable, SctData::DefaultVariable, SctData::NullVariable, SctData::StrobeDelayVariable, and SctData::ThresholdVariable.

void SctData::ConfigurationVariable::setChipLogicalPoint double    logicalPt,
ModuleConfiguration   config,
unsigned int    chip
const throw () [virtual]
 

Definition at line 36 of file ConfigurationVariable.cpp.

void SctData::ConfigurationVariable::setModuleLogicalPoint double    logicalPt,
ModuleConfiguration   config
const throw () [virtual]
 

Definition at line 44 of file ConfigurationVariable.cpp.


Friends And Related Function Documentation

friend class ConfigurationVariableIOHelper [friend]
 

Definition at line 66 of file ConfigurationVariable.h.


Field Documentation

string SctData::ConfigurationVariable::strategyDescription [private]
 

Definition at line 63 of file ConfigurationVariable.h.

unsigned short SctData::ConfigurationVariable::typeVal [private]
 

Definition at line 61 of file ConfigurationVariable.h.

string SctData::ConfigurationVariable::variableName [private]
 

Definition at line 62 of file ConfigurationVariable.h.


The documentation for this class was generated from the following files:
Generated on Mon Dec 15 19:37:43 2003 for SCT DAQ/DCS Software by doxygen1.3-rc3