PerkinElmer Class Reference

Driver for the Perkin Elmer flat panel amorphous silicon detectors. More...

#include <PerkinElmer.h>

Inheritance diagram for PerkinElmer:

ADDriver asynNDArrayDriver

List of all members.

Public Member Functions

 PerkinElmer (const char *portName, int maxSizeX, int maxSizeY, NDDataType_t dataType, int maxBuffers, size_t maxMemory, int priority, int stackSize)
 Constructor for this driver.
virtual asynStatus writeInt32 (asynUser *pasynUser, epicsInt32 value)
 Sets an int32 parameter.
virtual asynStatus writeFloat64 (asynUser *pasynUser, epicsFloat64 value)
virtual asynStatus drvUserCreate (asynUser *pasynUser, const char *drvInfo, const char **pptypeName, size_t *psize)
 Sets pasynUser->reason to one of the enum values for the parameters defined in ADDriver.h if the drvInfo field matches one the strings defined.
void report (FILE *fp, int details)
 Report status of the driver.
void acquireTask ()
 This task is spawned off in a new thread to watch over acquisition.
void frameCallback (unsigned int buffFrame)
 called from OnEndFrameCallback to process data from the detector into the pArray
void offsetCallback ()
 Called from OnEndAcqCallback after offset data has been collected to flag to the user that this data is available.
void gainCallback ()
 Called from OnEndAcqCallback after gain data has been collected to flag to the user that this data is available.
 ~PerkinElmer ()

Public Attributes

int imagesRemaining
epicsEventId startAcquisitionEventId
epicsEventId stopAcquisitionEventId
NDArraypRaw


Detailed Description

Driver for the Perkin Elmer flat panel amorphous silicon detectors.

Constructor & Destructor Documentation

PerkinElmer::PerkinElmer ( const char *  portName,
int  maxSizeX,
int  maxSizeY,
NDDataType_t  dataType,
int  maxBuffers,
size_t  maxMemory,
int  priority,
int  stackSize 
)

Constructor for this driver.

PerkinElmer::~PerkinElmer (  ) 


Member Function Documentation

void PerkinElmer::acquireTask (  ) 

This task is spawned off in a new thread to watch over acquisition.

asynStatus PerkinElmer::drvUserCreate ( asynUser *  pasynUser,
const char *  drvInfo,
const char **  pptypeName,
size_t *  psize 
) [virtual]

Sets pasynUser->reason to one of the enum values for the parameters defined in ADDriver.h if the drvInfo field matches one the strings defined.

Simply calls asynPortDriver::drvUserCreateParam with the parameter table for this driver.

Parameters:
[in] pasynUser pasynUser structure that driver modifies
[in] drvInfo String containing information about what driver function is being referenced
[out] pptypeName Location in which driver puts a copy of drvInfo.
[out] psize Location where driver puts size of param
Returns:
Returns asynSuccess if a matching string was found, asynError if not found.

Reimplemented from ADDriver.

void PerkinElmer::frameCallback ( unsigned int  buffFrame  ) 

called from OnEndFrameCallback to process data from the detector into the pArray

void PerkinElmer::gainCallback (  ) 

Called from OnEndAcqCallback after gain data has been collected to flag to the user that this data is available.

void PerkinElmer::offsetCallback (  ) 

Called from OnEndAcqCallback after offset data has been collected to flag to the user that this data is available.

void PerkinElmer::report ( FILE *  fp,
int  details 
) [virtual]

Report status of the driver.

This method calls the report function in the asynPortDriver base class. It then calls the NDArrayPool::report() method if details >5.

Parameters:
[in] fp File pointed passed by caller where the output is written to.
[in] details If >5 then NDArrayPool::report and NDAttributeList::report are both called.

Reimplemented from asynNDArrayDriver.

asynStatus PerkinElmer::writeFloat64 ( asynUser *  pasynUser,
epicsFloat64  value 
) [virtual]

asynStatus PerkinElmer::writeInt32 ( asynUser *  pasynUser,
epicsInt32  value 
) [virtual]

Sets an int32 parameter.

Parameters:
[in] pasynUser asynUser structure that contains the function code in pasynUser->reason.
[in] value The value for this parameter
Takes action if the function code requires it. Currently only ADShutterControl requires action here. This method is normally called from the writeInt32 method in derived classes, which should set the value of the parameter in the parameter library.

Reimplemented from ADDriver.


Member Data Documentation


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

Generated on Tue Aug 25 16:53:04 2009 for areaDetector by  doxygen 1.5.7.1