#include <spdMeanTHScan.h>
Public Member Functions | |
spdMeanTHScan (SPDConfig *spdConfig) | |
constructor of the class | |
~spdMeanTHScan (void) | |
unsigned | start (unsigned int tpLowMinimum, unsigned int tpLowMaximum, unsigned int tpLowStep, unsigned int rowStart, unsigned int rowEnd, unsigned int rowStep, unsigned int triggerNumber) |
Method to start the mean threshold scan. | |
bool | isActive () |
returns if this scan is being performed or not | |
unsigned | restart () |
Method to restart the mean threshold scan. | |
void | stop () |
Method to stop the mean threshold scan. | |
void | scan () |
Method for the mean threshold scan. | |
Private Member Functions | |
UInt32 | setMeanTHScanHeader (void) |
UInt32 | getTPAmplitude (unsigned int routerNum, float *tpAmplitude) |
UInt32 | SetMatrixToAllEnabled (UInt8 rowStart, UInt8 nRows) |
UInt32 | SetTestLowToAllEnabled (int testLowValue) |
float | convertAdcValue (unsigned adcCount) |
method to conver the analog pilot ADC value | |
UInt32 | testLowStep (int currentValue, unsigned sleepTime) |
Performs a testpulse low step (sends triggers and writes headers also). | |
Private Attributes | |
SPDConfig * | parent |
the parent class to handle heardware access | |
spdLogger * | log |
logger instance for this class | |
bool | active |
stores if the scan is active or not | |
timer | timerScan |
timer to measure the scan result | |
int | tpLowMinimum |
test pulse low minimum for the scan | |
int | tpLowMaximum |
test pulse low maximum for the scan | |
int | tpLowStep |
the step of the scan | |
int | tpLowCurrent |
the current value for a certain test pulse low step | |
int | tpLowIndex |
stores the test pulse low index to be written in the router header | |
unsigned int | rowStart |
row start | |
unsigned int | rowEnd |
unsigned int | rowStep |
unsigned int | rowCurrent |
unsigned int | activeRows |
unsigned int | triggerNum |
This class performs the mean threshold class a test pulse will be set and then the test pulse amplitude will be increased in steps. test-pulse high will be fixed and test-pulse low will be looped increasing the charge injected in the detector. so its basicaly a Uniformity matix with several steps of test pulse amplitude per row
spdMeanTHScan::spdMeanTHScan | ( | SPDConfig * | spdConfig | ) |
constructor of the class
spdMeanTHScan::~spdMeanTHScan | ( | void | ) |
UInt32 spdMeanTHScan::setMeanTHScanHeader | ( | void | ) | [private] |
Method to set the scan header in all active routers
UInt32 spdMeanTHScan::getTPAmplitude | ( | unsigned int | routerNum, | |
float * | tpAmplitude | |||
) | [private] |
Method to get the test pulse amplitude in mV
routerNum- | number of the router | |
tpAmplitude- | array of test pulse amplitudes for the 6 half-staves in a router |
Method to set several rows in a matrix
UInt32 spdMeanTHScan::SetTestLowToAllEnabled | ( | int | testLowValue | ) | [private] |
Method to set the value of test pulse low in all enabled half staves
testLowValue- | value of the test pulse low DAC |
float spdMeanTHScan::convertAdcValue | ( | unsigned | adcCount | ) | [private] |
method to conver the analog pilot ADC value
adcCount | ADC digital value |
UInt32 spdMeanTHScan::testLowStep | ( | int | currentValue, | |
unsigned | sleepTime | |||
) | [private] |
Performs a testpulse low step (sends triggers and writes headers also).
currentValue | current value of test pulse | |
sleepTime | wait time between steps |
unsigned spdMeanTHScan::start | ( | unsigned int | tpLowMinimum, | |
unsigned int | tpLowMaximum, | |||
unsigned int | tpLowStep, | |||
unsigned int | rowStart, | |||
unsigned int | rowEnd, | |||
unsigned int | rowStep, | |||
unsigned int | triggerNumber | |||
) |
Method to start the mean threshold scan.
bool spdMeanTHScan::isActive | ( | ) | [inline, virtual] |
unsigned spdMeanTHScan::restart | ( | void | ) | [virtual] |
void spdMeanTHScan::stop | ( | ) | [inline, virtual] |
void spdMeanTHScan::scan | ( | ) | [virtual] |
SPDConfig* spdMeanTHScan::parent [private] |
the parent class to handle heardware access
spdLogger* spdMeanTHScan::log [private] |
logger instance for this class
bool spdMeanTHScan::active [private] |
stores if the scan is active or not
timer spdMeanTHScan::timerScan [private] |
timer to measure the scan result
int spdMeanTHScan::tpLowMinimum [private] |
test pulse low minimum for the scan
int spdMeanTHScan::tpLowMaximum [private] |
test pulse low maximum for the scan
int spdMeanTHScan::tpLowStep [private] |
the step of the scan
int spdMeanTHScan::tpLowCurrent [private] |
the current value for a certain test pulse low step
int spdMeanTHScan::tpLowIndex [private] |
stores the test pulse low index to be written in the router header
unsigned int spdMeanTHScan::rowStart [private] |
row start
unsigned int spdMeanTHScan::rowEnd [private] |
unsigned int spdMeanTHScan::rowStep [private] |
unsigned int spdMeanTHScan::rowCurrent [private] |
unsigned int spdMeanTHScan::activeRows [private] |
unsigned int spdMeanTHScan::triggerNum [private] |