adsc::adsc | ( | const char * | portName, | |
const char * | modelName | |||
) |
Constructor for ADSC driver; most parameters are simply passed to ADDriver::ADDriver.
After calling the base class constructor, this method creates a thread to collect the detector data and sets reasonable default values for the parameters defined in this class, asynNDArrayDriver and ADDriver.
[in] | portName | The name of the asyn port driver to be created |
[in] | modelName | The model name of the detector being used; choices are "Q4", "Q4r", "Q210", "Q210r", "Q270", "Q315", or "Q315r" |
adsc::~adsc | ( | ) | [virtual] |
AdscStatus_t adsc::acquireImages | ( | ) | [protected] |
void adsc::acquisitionFinished | ( | int | adstatus | ) | [protected] |
void adsc::clearLastDarksParameters | ( | ) | [protected] |
AdscStatus_t adsc::createFileNameNoIncrement | ( | char * | dst, | |
size_t | dstSize | |||
) | [protected] |
const char * adsc::getAdscCcdStateString | ( | int | ccdState | ) | [protected] |
AdscStatus_t adsc::getImage | ( | int | lastImage | ) | [protected] |
int adsc::getImageSize | ( | AdscModel_t | model, | |
int | binMode | |||
) | [protected] |
int adsc::getImageSizeX | ( | AdscModel_t | model, | |
int | binMode | |||
) | [protected] |
int adsc::getImageSizeY | ( | AdscModel_t | model, | |
int | binMode | |||
) | [protected] |
AdscStatus_t adsc::imageAcquired | ( | ) | [protected] |
void adsc::imageAcquisitionTask | ( | ) |
AdscStatus_t adsc::loadPerDatasetParameters | ( | ) | [protected] |
AdscStatus_t adsc::loadPerImageParameters | ( | ) | [protected] |
AdscStatus_t adsc::readDetectorCondition | ( | ) | [protected] |
void adsc::report | ( | FILE * | fp, | |
int | details | |||
) | [virtual] |
Report status of the driver.
Prints details about the driver if details>0. It then calls the ADDriver::report() method.
[in] | fp | File pointed passed by caller where the output is written to |
[in] | details | If >0 then driver details are printed |
Reimplemented from asynNDArrayDriver.
AdscStatus_t adsc::resetControlLibrary | ( | ) | [protected] |
AdscStatus_t adsc::setBinModeInParams | ( | int | binMode | ) | [protected] |
AdscStatus_t adsc::setExternSwTriggerControl | ( | AdscExternSwTriggerControl_t | value | ) | [protected] |
void adsc::setLastDarksParameters | ( | double | exposureTime, | |
int | adc, | |||
int | bin | |||
) | [protected] |
AdscStatus_t adsc::setOkToExpose | ( | int | isEnabled | ) | [protected] |
int adsc::shouldTakeDarks | ( | ) | [protected] |
AdscStatus_t adsc::startExposure | ( | ) | [protected] |
AdscStatus_t adsc::stopExposure | ( | ) | [protected] |
AdscStatus_t adsc::takeDarks | ( | const char * | destDir | ) | [protected] |
AdscStatus_t adsc::takeDarksIfRequired | ( | ) | [protected] |
AdscStatus_t adsc::takeImage | ( | const char * | fullFileName, | |
int | imageKind, | |||
int | lastImage, | |||
int | triggerMode | |||
) | [protected] |
AdscStatus_t adsc::waitForDetectorState | ( | int | desiredState, | |
double | timeout, | |||
int | failOnErrorState | |||
) | [protected] |
AdscStatus_t adsc::waitForExternalTrigger | ( | epicsEventId | eventId | ) | [protected] |
AdscStatus_t adsc::writeDetectorParametersBeforeDataset | ( | ) | [protected] |
AdscStatus_t adsc::writeDetectorParametersBeforeImage | ( | ) | [protected] |
asynStatus adsc::writeFloat64 | ( | asynUser * | pasynUser, | |
epicsFloat64 | value | |||
) | [virtual] |
Called when asyn clients call pasynFloat64->write().
This function performs actions for some parameters, including ADAcquireTime, AdscTwoTheta, etc. For all parameters it sets the value in the parameter library and calls any registered callbacks.
[in] | pasynUser | pasynUser structure that encodes the reason and address |
[in] | value | Value to write |
Reimplemented from asynPortDriver.
asynStatus adsc::writeInt32 | ( | asynUser * | pasynUser, | |
epicsInt32 | value | |||
) | [virtual] |
Called when asyn clients call pasynInt32->write().
This function performs actions for some parameters, including ADAcquire, ADBinX, etc. For all parameters it sets the value in the parameter library and calls any registered callbacks.
[in] | pasynUser | pasynUser structure that encodes the reason and address |
[in] | value | Value to write |
Reimplemented from ADDriver.
int adsc::AdscAdc [protected] |
int adsc::AdscAxis [protected] |
int adsc::AdscBeamCenterX [protected] |
int adsc::AdscBeamCenterY [protected] |
int adsc::AdscDezinger [protected] |
int adsc::AdscDistance [protected] |
int adsc::AdscExternSwTriggerControl [protected] |
int adsc::AdscImageTransform [protected] |
int adsc::AdscImageWidth [protected] |
int adsc::AdscKappa [protected] |
int adsc::AdscLastError [protected] |
int adsc::AdscLastImage [protected] |
int adsc::AdscOkToExpose [protected] |
int adsc::AdscOmega [protected] |
int adsc::AdscPhi [protected] |
int adsc::AdscPrivateStopExpRetryCnt [protected] |
int adsc::AdscRaw [protected] |
int adsc::AdscReadCondition [protected] |
int adsc::AdscReuseDarks [protected] |
int adsc::AdscSoftwareReset [protected] |
int adsc::AdscState [protected] |
int adsc::AdscStatus [protected] |
int adsc::AdscStoredDarks [protected] |
int adsc::AdscTwoTheta [protected] |
int adsc::AdscWavelength [protected] |
int adsc::lastDarksAdc [protected] |
int adsc::lastDarksBin [protected] |
double adsc::lastDarksExposureTime [protected] |
int adsc::lastImage [protected] |
epicsEventId adsc::lastImageEventId [protected] |
AdscModel_t adsc::model [protected] |
double adsc::perDatasetAcquirePeriod [protected] |
int adsc::perDatasetAdc [protected] |
int adsc::perDatasetAxis [protected] |
int adsc::perDatasetBin [protected] |
int adsc::perDatasetDezinger [protected] |
double adsc::perDatasetExposureTime [protected] |
int adsc::perDatasetImageMode [protected] |
int adsc::perDatasetImageTransform [protected] |
int adsc::perDatasetNumImages [protected] |
int adsc::perDatasetRaw [protected] |
int adsc::perDatasetReuseDarks [protected] |
int adsc::perDatasetStoredDarks [protected] |
int adsc::perDatasetTriggerMode [protected] |
double adsc::perImageBeamCenterX [protected] |
double adsc::perImageBeamCenterY [protected] |
double adsc::perImageDistance [protected] |
char adsc::perImageFullFileName[MAX_FILENAME_LEN] [protected] |
double adsc::perImageImageWidth [protected] |
double adsc::perImageKappa [protected] |
double adsc::perImageOmega [protected] |
double adsc::perImagePhi [protected] |
double adsc::perImageTwoTheta [protected] |
double adsc::perImageWavelength [protected] |
epicsEventId adsc::startEventId [protected] |
epicsEventId adsc::startTriggerEventId [protected] |
epicsEventId adsc::stopEventId [protected] |
epicsEventId adsc::stopTriggerEventId [protected] |