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

SctData::ModuleConfiguration Class Reference

Represents the configuration of a module. More...

#include <ModuleConfiguration.h>

Inheritance diagram for SctData::ModuleConfiguration:

Sct::Streamable

Public Member Functions

 ModuleConfiguration () throw ()
 Simple constructor and destructor.

virtual ~ModuleConfiguration () throw ()
 ModuleConfiguration (const ModuleConfiguration &config) throw ()
 Copy constructor.

ModuleConfiguration & operator= (const ModuleConfiguration &config) throw ()
 Assignment operator.

virtual std::string getClassName () const throw ()
 Get the class name for this object.

ChipConfigurationgetChipConfiguration (const unsigned int chip) throw ()
const ChipConfigurationgetChipConfiguration (const unsigned int chip) const throw ()
bool isPresent () const throw ()
 presence means module configurations are present in the ROD and therefore sent triggers and read out by the histogramming code

bool isActive () const throw ()
 active means a module "takes part in a scan" ie has its configuration modified by the histogramming engine

void setActive (bool active) throw ()
 set the activity @}

bool usingPrimaryClock () const throw ()
void setUsingPrimaryClock (bool usePrimaryClock) throw ()
char getGroupId () const throw ()
 Group ID This is used to indicate which slave DSP will receive the module's data (if group based distribution is set), and also to allow different module groups to be triggered independently (for cross-talk studies).

void setGroupId (const char) throw ()
 Mutator @}.

bool channelIsMasked (const unsigned int ichannel) const throw ()
 check if a channel is masked.
Parameters:
ichannel in the range 0 to 1535.


void maskChannel (const unsigned int ichannel) throw ()
 mask a particular channel.
Parameters:
ichannel in the range 0 to 1535



Private Attributes

ABCDModule configuration
 The underlying data representation.

vector< shared_ptr< ChipConfiguration > > chipConfigs
 ChipConfigurations for each chip.


Friends

class ModuleConfigurationIOHelper

Detailed Description

Represents the configuration of a module.

Just a placeholder for now, but will probably be an interface to ABCDModule. It is worth noting that this class and its components define access to the data in terms of the physical setting e.g. DAC settings. If a user wants to think of a variable in terms of a higher level quantity, such as charge, mV etc then he should use an appropriate strategy for performing the conversion. This is motivated by the realisation that typically DAC step sizes are only approximate so expressing the setting in terms of e.g. mV is just as meaningless as expressing it in terms of DAC steps. However, we have decided to stick with functions in terms of nominal values for now.

Author:
Matthew Palmer

Definition at line 29 of file ModuleConfiguration.h.


Constructor & Destructor Documentation

SctData::ModuleConfiguration::ModuleConfiguration   throw ()
 

Simple constructor and destructor.

Definition at line 10 of file ModuleConfiguration.cpp.

SctData::ModuleConfiguration::~ModuleConfiguration   throw () [virtual]
 

Definition at line 20 of file ModuleConfiguration.cpp.

SctData::ModuleConfiguration::ModuleConfiguration const ModuleConfiguration &    config throw ()
 

Copy constructor.

Definition at line 23 of file ModuleConfiguration.cpp.


Member Function Documentation

bool SctData::ModuleConfiguration::channelIsMasked const unsigned int    ichannel const throw ()
 

check if a channel is masked.

Parameters:
ichannel in the range 0 to 1535.

Definition at line 37 of file ModuleConfiguration.cpp.

const ChipConfiguration & SctData::ModuleConfiguration::getChipConfiguration const unsigned int    chip const throw ()
 

Definition at line 50 of file ModuleConfiguration.cpp.

ChipConfiguration & SctData::ModuleConfiguration::getChipConfiguration const unsigned int    chip throw ()
 

Definition at line 46 of file ModuleConfiguration.cpp.

string SctData::ModuleConfiguration::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 42 of file ModuleConfiguration.cpp.

char SctData::ModuleConfiguration::getGroupId   const throw () [inline]
 

Group ID This is used to indicate which slave DSP will receive the module's data (if group based distribution is set), and also to allow different module groups to be triggered independently (for cross-talk studies).

valid range: [0,3]

Accessor

Definition at line 125 of file ModuleConfiguration.h.

bool SctData::ModuleConfiguration::isActive   const throw () [inline]
 

active means a module "takes part in a scan" ie has its configuration modified by the histogramming engine

check activity

Returns:
true if active

Definition at line 109 of file ModuleConfiguration.h.

bool SctData::ModuleConfiguration::isPresent   const throw () [inline]
 

presence means module configurations are present in the ROD and therefore sent triggers and read out by the histogramming code

Returns:
true if present

Definition at line 105 of file ModuleConfiguration.h.

References ABCDModule::present.

void SctData::ModuleConfiguration::maskChannel const unsigned int    ichannel throw ()
 

mask a particular channel.

Parameters:
ichannel in the range 0 to 1535

ModuleConfiguration & SctData::ModuleConfiguration::operator= const ModuleConfiguration &    config throw ()
 

Assignment operator.

Definition at line 32 of file ModuleConfiguration.cpp.

void SctData::ModuleConfiguration::setActive bool    active throw () [inline]
 

set the activity @}

Definition at line 113 of file ModuleConfiguration.h.

void SctData::ModuleConfiguration::setGroupId const    char throw () [inline]
 

Mutator @}.

Definition at line 129 of file ModuleConfiguration.h.

void SctData::ModuleConfiguration::setUsingPrimaryClock bool    usePrimaryClock throw () [inline]
 

Definition at line 121 of file ModuleConfiguration.h.

bool SctData::ModuleConfiguration::usingPrimaryClock   const throw () [inline]
 

Definition at line 117 of file ModuleConfiguration.h.


Friends And Related Function Documentation

friend class ModuleConfigurationIOHelper [friend]
 

Definition at line 94 of file ModuleConfiguration.h.


Field Documentation

vector<shared_ptr<ChipConfiguration> > SctData::ModuleConfiguration::chipConfigs [private]
 

ChipConfigurations for each chip.

Definition at line 93 of file ModuleConfiguration.h.

ABCDModule SctData::ModuleConfiguration::configuration [private]
 

The underlying data representation.

Definition at line 92 of file ModuleConfiguration.h.


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