Given the pulser hardware, two channels belonging to the same board cannot fire at the same time. Therefore a time delay must be introduced among pulser channels from the same board. This class is a simple collection of pulses that can fire at the same time (i.e. they belong to different board).
Public Member Functions | |
bool | AddChannel (QPulserChannel *ch) |
add pulser channel to group | |
unsigned int | GetDelay () const |
get delay index associated to current group | |
void | SetDelay (unsigned short delay) |
set delay for this group | |
const std::vector< QPulserChannel * > & | GetChannels () const |
get const reference to pulser channels vector | |
QTimer< class QPulserController > * | GetDelayTimer () |
get delay timer associated to this pulser group | |
const unsigned short & | GetGroupId () const |
Private Attributes | |
unsigned short | fDelay |
QTimer< QPulserController > | fDelayTimer |
std::vector< QPulserChannel * > | fChannels |
unsigned short | fGroupId |
Static Private Attributes | |
static unsigned short | gGroupIdCtr |
bool QPulserGroup::AddChannel | ( | QPulserChannel * | ch | ) |
add pulser channel to group
ch | pointer to QPulserChannel object to be added |
unsigned short QPulserGroup::fDelay [private] |
delay in ms