QPulserChannel Class Reference

List of all members.


Detailed Description

Author:
Sergio Di Domizio

Public Member Functions

 QPulserChannel ()
 constructor
 QPulserChannel (const QDaqChannel &daqChan)
 copy constructor
void Set (const QDaqChannel &daqChan)
 load settings from QDaqChannel
void Set (const QPulserChannel &other)
 load settings from another QPulserChannel
virtual ~QPulserChannel ()
 destructor
const QPulserConfigGetNextConfig ()
 get next configuration
unsigned int GetDelay () const
 get delay associated to current channel (delay is in ms)
unsigned int GetId () const
 get pulse id
void SetId (unsigned int id)
void SetCh (unsigned int ch)
void SetDelay (unsigned int delay)
void SetPattern (const std::vector< QPulserConfig * > &pattern)

Private Member Functions

void EmptyPattern ()
void Consolidate (QPulserConfig *config)
 check that status bits are coherent and adjust them if they are not
void FillIds ()
 fill confId field in all QPulserConfig objects

Private Attributes

unsigned int fId
unsigned int fCh
std::vector< QPulserConfig * > fPattern
std::vector< QPulserConfig * >
::const_iterator 
fNext
unsigned int fDelayMs

Constructor & Destructor Documentation

QPulserChannel::QPulserChannel ( const QDaqChannel daqChan  ) 

copy constructor

Parameters:
daqChan QDaqChannel object from which settings are copied
pulser configuration (i.e. delay and pulses pattern) are copied from the QDaqChannel object supplied as argument. This constructor simply calls the Set() method with daqChan as argument

References Set().


Member Function Documentation

void QPulserChannel::Set ( const QDaqChannel daqChan  ) 

void QPulserChannel::Set ( const QPulserChannel other  ) 

load settings from another QPulserChannel

Parameters:
other QPulserChannel object from which settings are loaded

References EmptyPattern(), fCh, fDelayMs, fId, fPattern, and SetPattern().

const QPulserConfig * QPulserChannel::GetNextConfig (  ) 

get next configuration

Returns:
pointer to next configuration or NULL if fPattern is empty

References fNext, and fPattern.

void QPulserChannel::SetId ( unsigned int  id  )  [inline]

set pulse id as stored in the database

References fId.

Referenced by QPulserGroupList::AddChannel().

void QPulserChannel::SetCh ( unsigned int  ch  )  [inline]

set pulser hardware channel (0..3)

References fCh.

Referenced by QPulserGroupList::AddChannel().

void QPulserChannel::SetDelay ( unsigned int  delay  )  [inline]

set delay associated to this channel (in ms)

References fDelayMs.

Referenced by QPulserGroupList::AddChannel(), and QPulserGroup::AddChannel().

void QPulserChannel::SetPattern ( const std::vector< QPulserConfig * > &  pattern  ) 

set pattern of pulse configurations to be fired

References EmptyPattern(), fNext, and fPattern.

Referenced by QPulserGroupList::AddChannel(), and Set().

void QPulserChannel::EmptyPattern (  )  [private]

clear pulse pattern

References fNext, and fPattern.

Referenced by Set(), SetPattern(), and ~QPulserChannel().

void QPulserChannel::Consolidate ( QPulserConfig config  )  [private]

check that status bits are coherent and adjust them if they are not

Parameters:
config pointer to QPulserConfig object

References fCh, QPulserConfig::GetMem2(), and QPulserConfig::SetMem2().

Referenced by Set().


Member Data Documentation

unsigned int QPulserChannel::fId [private]

pulser id

Referenced by GetId(), Set(), and SetId().

unsigned int QPulserChannel::fCh [private]

pulser hardware channel

Referenced by Consolidate(), Set(), and SetCh().

std::vector<QPulserConfig*> QPulserChannel::fPattern [private]

vector containing pulser configurations

Referenced by EmptyPattern(), FillIds(), GetNextConfig(), QPulserChannel(), Set(), and SetPattern().

std::vector<QPulserConfig*>::const_iterator QPulserChannel::fNext [private]

iterator pointing to next configuration

Referenced by EmptyPattern(), GetNextConfig(), QPulserChannel(), Set(), and SetPattern().

unsigned int QPulserChannel::fDelayMs [private]

delay time associated to this channel (in ms)

Referenced by GetDelay(), Set(), and SetDelay().


The documentation for this class was generated from the following files:

Generated on Tue Nov 16 10:50:08 2010 for CUORE Software by  doxygen 1.5.6