SctData::ModuleConfiguration Class Reference

Represents the configuration of a module. More...

#include <ModuleConfiguration.h>

Inheritance diagram for SctData::ModuleConfiguration:

Inheritance graph
[legend]
Collaboration diagram for SctData::ModuleConfiguration:

Collaboration graph
[legend]

Public Member Functions

 ModuleConfiguration () throw ()
 Simple constructor - creates an empty ABCDModule.
virtual ~ModuleConfiguration () throw ()
 ModuleConfiguration (const ModuleConfiguration &config) throw ()
 Copy constructor.
ModuleConfigurationoperator= (const ModuleConfiguration &config) throw ()
 Assignment operator.
virtual std::string getClassName () const throw ()
 Get the class name for this object.
ChipConfigurationgetChipConfiguration (const unsigned int chip)
const ChipConfigurationgetChipConfiguration (const unsigned int chip) const
bool isPresent () const throw ()
 presence means module configurations are present in the ROD and therefore sent triggers and read out by the histogramming code
void setActive (bool active) throw ()
 set the activity
bool usingPrimaryClock () const throw ()
void setUsingPrimaryClock (bool usePrimaryClock) throw ()
void setGroupId (const char) throw ()
 Mutator.
const ABCDModule & getABCDModule () const
 Get const access to the underlying ABCDModule.
ABCDModule & getABCDModule ()
 Get full access to the underlying ABCDModule.
bool isActive () const throw ()
 active means a module "takes part in a scan" ie has its configuration modified by the histogramming engine check activity
bool channelIsMasked (const unsigned int ichannel) const throw ()
 check if a channel is masked.
void maskChannel (const unsigned int ichannel) throw ()
 mask a particular channel.
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).

Private Attributes

ABCDModule configuration
 The underlying data representation.
vector< shared_ptr< ChipConfiguration > > chipConfigs
 ChipConfigurations for each chip.

Detailed Description

Represents the configuration of a module.

An interface around 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 - creates an empty ABCDModule.

Definition at line 12 of file ModuleConfiguration.cpp.

References chipConfigs, configuration, and Sct::nChipModule.

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

Copy constructor.

Definition at line 25 of file ModuleConfiguration.cpp.

References Sct::nChipModule.


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 39 of file ModuleConfiguration.cpp.

References Sct::nChannelChip.

ABCDModule & SctData::ModuleConfiguration::getABCDModule  ) 
 

Get full access to the underlying ABCDModule.

Definition at line 62 of file ModuleConfiguration.cpp.

References configuration.

const ABCDModule & SctData::ModuleConfiguration::getABCDModule  )  const
 

Get const access to the underlying ABCDModule.

Definition at line 58 of file ModuleConfiguration.cpp.

References configuration.

Referenced by TrimRangeCompare::compareChannel(), SctData::IO::ModuleConfigurationStreamer_v2::read(), SctData::IO::ModuleConfigurationStreamer_v1::read(), SctData::IO::ModuleConfigurationStreamer_v2::write(), and SctData::IO::ModuleConfigurationStreamer_v1::write().

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

Get the class name for this object.

This is used to identify the precise type.

Returns:
the class name
Note:
Nothrow

Implements Sct::Streamable.

Definition at line 44 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 129 of file ModuleConfiguration.h.

References configuration.

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 113 of file ModuleConfiguration.h.

References configuration.

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 109 of file ModuleConfiguration.h.

References configuration.

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 34 of file ModuleConfiguration.cpp.

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

set the activity

Definition at line 117 of file ModuleConfiguration.h.

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

Mutator.

Definition at line 133 of file ModuleConfiguration.h.


Field Documentation

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

ChipConfigurations for each chip.

Definition at line 103 of file ModuleConfiguration.h.

Referenced by getChipConfiguration(), and ModuleConfiguration().

ABCDModule SctData::ModuleConfiguration::configuration [private]
 

The underlying data representation.

Definition at line 102 of file ModuleConfiguration.h.

Referenced by getABCDModule(), getGroupId(), isActive(), isPresent(), ModuleConfiguration(), and usingPrimaryClock().


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