fdhwlib
2.0.25
|
#include <FltPixRegister.h>
General class for Register vectors on the FLT boards - in most cases the elements correspond with the pixel in one column.
The registers are numbered always starting from 0. E.g. the pixel in one column can be addressed from 0..21.
Changes:
Definition at line 42 of file FltPixRegister.h.
FltPixRegister::FltPixRegister | ( | const char * | name, |
int | slotID, | ||
int | regID, | ||
int | r, | ||
int | w, | ||
int | len | ||
) |
virtual FltPixRegister::~FltPixRegister | ( | ) | [virtual] |
void FltPixRegister::broadcast | ( | unsigned long | data, |
int | mode | ||
) |
Write to all to all registers (mode=0) and/or all registers in all slots (mode=1) at the same time.
void FltPixRegister::get | ( | FEunitData ** | data | ) |
Get the data of the register.
unsigned long FltPixRegister::getAddr | ( | int | ch = 0 | ) |
Get address.
int FltPixRegister::getLength | ( | ) |
Display the length of the register vector.
const char* FltPixRegister::getName | ( | ) |
bool FltPixRegister::isReadable | ( | ) |
bool FltPixRegister::isWriteable | ( | ) |
unsigned long FltPixRegister::read | ( | int | ch | ) |
Read the register number <ch>
Reimplemented in FltPeriphRegister, FltThreshold, FltCurrent, and FltSum.
void FltPixRegister::read | ( | unsigned long * | data, |
int | allPixel = 0 |
||
) |
Perform a block read on all registers.
The Array <data> must have an appropriate size.
data | Array of 22, 24, 440 or 480 elements depending on the register |
allPixel | 0 = Read only the pixel in this column, 1 = Read the values of all pixel |
void FltPixRegister::write | ( | int | ch, |
unsigned long | data | ||
) |
Write to the register number <ch>
Reimplemented in FltPeriphRegister, FltThreshold, and FltCurrent.
void FltPixRegister::write | ( | unsigned long * | data | ) |
Perform a block write on all registers.
The Array <data> must have an appropriate size.
Reimplemented in FltPeriphRegister, FltThreshold, and FltTestPattern.
void FltPixRegister::writeBits | ( | int | ch, |
unsigned long | data, | ||
unsigned long | mask, | ||
int | shift | ||
) |
Write the <data> to a bit sequence in register number <ch>.
An example is given with FltRegister::writeBits
Reimplemented in FltPeriphRegister.
virtual int FltPixRegister::writeBitsByName | ( | int | ch, |
char * | name, | ||
unsigned long | data | ||
) | [virtual] |
Set a bit field by name.
The bit field have to be defined in the specialized classes.
ch | number of the channel |
name | name of the bit field |
data | vaues to write to the specified bit field |
Reimplemented in FltPeriphStatus, FltThreshold, and FltStatistic.
unsigned long FltPixRegister::addr [private] |
Pbus base address.
Definition at line 123 of file FltPixRegister.h.
int FltPixRegister::len [private] |
Length of the register vector.
Definition at line 139 of file FltPixRegister.h.
const char* FltPixRegister::name [private] |
Name.
Definition at line 127 of file FltPixRegister.h.
bool FltPixRegister::readable [private] |
Definition at line 131 of file FltPixRegister.h.
bool FltPixRegister::writeable [private] |
Definition at line 135 of file FltPixRegister.h.