MWPSlowController Class Reference
[Modules]

Inheritance diagram for MWPSlowController:

QDriver QBaseModule List of all members.

Detailed Description

to be done

Author:
Marco Vignati
The purpose of this module is to handle parallelization in the load curves procedure.


Public Member Functions

 MWPSlowController (QSequence *s)
 constructor
virtual ~MWPSlowController ()
 destructor
Action Init ()
 Init method.
Action Do (QEvent *ev)
 return immediately if there are still measurements to be performed with current electronics configuration, or prepare new configuration if there are no channels that are still waiting for a measurement with current one
Action Done ()
 Done method.

Private Member Functions

void GroupChannels (const std::list< unsigned short > &channels)
 group logical channels in subgroups
void InitConfig (QLCSlowConfig &conf)
 init QLCMeasConfig object with default front end settings values
QWPCommon::Step PopulateNextConfig (const QWPCommon::Step step)
 determine electronics configuration for next set of measurements and apply to hardware

Private Attributes

std::vector< std::list< unsigned
short > > 
fGroups
 vector of logical channel subgroups. Each element is in turn a list of logical channels belonging to a given subgroup
std::map< unsigned short,
QLCSlowConfig
fGroupStartConfigs
std::map< unsigned short,
QLCSlowConfig
fDumpStartConfigs
std::set< unsigned short > fNextChannels
std::string fTmpConfigOutputFile
std::string fConfigOutputFile
QLCConfigWriter fFullCfgWriter
QLCConfigReader fCfgReader
bool fGndMeasurement
int fRL
int fBias
double fExternalBias
bool fInvertPolarity
bool fAdjustOffset
QWPCommon::Step fStep
short fGain
unsigned int fDaqRun
bool fReadConfigFromFile


Member Function Documentation

QDriver::Action MWPSlowController::Init (  )  [virtual]

Init method.

This method reads init values from cfg, create channel groups to be processed at each iteration of the load curves sequence and initialize the QLCSlowConfigHandler singleton.

Implements QDriver.

void MWPSlowController::GroupChannels ( const std::list< unsigned short > &  channels  )  [private]

group logical channels in subgroups

Parameters:
channels list of all logical channels to be grouped
channels are grouped in ascending order and with the group size specified in the cfg file

void MWPSlowController::InitConfig ( QLCSlowConfig conf  )  [private]

init QLCMeasConfig object with default front end settings values

Parameters:
conf QLCMeasConfig object to be initialized (passed by reference)
polarity bias polarity to be set in new configuration

QWPCommon::Step MWPSlowController::PopulateNextConfig ( const QWPCommon::Step  step  )  [private]

determine electronics configuration for next set of measurements and apply to hardware

Returns:
false unless all curves are done and the measurement can be stopped


The documentation for this class was generated from the following files:
Generated on Fri Mar 6 13:40:42 2009 for CUORE Software by  doxygen 1.5.1