areaDetector 1-9
Public Member Functions | Protected Attributes
URLDriver Class Reference

URL driver; reads images from URLs, such as Web cameras and Axis video servers, but also files, etc. More...

Inheritance diagram for URLDriver:
ADDriver asynNDArrayDriver asynPortDriver

List of all members.

Public Member Functions

 URLDriver (const char *portName, int maxBuffers, size_t maxMemory, int priority, int stackSize)
 Constructor for URLDriver; most parameters are simply passed to ADDriver::ADDriver.
virtual asynStatus writeInt32 (asynUser *pasynUser, epicsInt32 value)
 Called when asyn clients call pasynInt32->write().
virtual void report (FILE *fp, int details)
 Report status of the driver.
void URLTask ()
 Should be private, but gets called from C, so must be public.

Protected Attributes

int URLName

Detailed Description

URL driver; reads images from URLs, such as Web cameras and Axis video servers, but also files, etc.


Constructor & Destructor Documentation

URLDriver::URLDriver ( const char *  portName,
int  maxBuffers,
size_t  maxMemory,
int  priority,
int  stackSize 
)

Constructor for URLDriver; most parameters are simply passed to ADDriver::ADDriver.

After calling the base class constructor this method creates a thread to read the URL images, and sets reasonable default values for parameters defined in this class, asynNDArrayDriver and ADDriver.

Parameters:
[in]portNameThe name of the asyn port driver to be created.
[in]maxBuffersThe maximum number of NDArray buffers that the NDArrayPool for this driver is allowed to allocate. Set this to -1 to allow an unlimited number of buffers.
[in]maxMemoryThe maximum amount of memory that the NDArrayPool for this driver is allowed to allocate. Set this to -1 to allow an unlimited amount of memory.
[in]priorityThe thread priority for the asyn port driver thread if ASYN_CANBLOCK is set in asynFlags.
[in]stackSizeThe stack size for the asyn port driver thread if ASYN_CANBLOCK is set in asynFlags.

Member Function Documentation

void URLDriver::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.

Parameters:
[in]fpFile pointed passed by caller where the output is written to.
[in]detailsIf >0 then driver details are printed.

Reimplemented from asynNDArrayDriver.

void URLDriver::URLTask ( )

Should be private, but gets called from C, so must be public.

This thread calls computeImage to compute new image data and does the callbacks to send it to higher layers.

It implements the logic for single, multiple or continuous acquisition.

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

Called when asyn clients call pasynInt32->write().

This function performs actions for some parameters, including ADAcquire, ADColorMode, etc. For all parameters it sets the value in the parameter library and calls any registered callbacks..

Parameters:
[in]pasynUserpasynUser structure that encodes the reason and address.
[in]valueValue to write.

Reimplemented from ADDriver.


Member Data Documentation

int URLDriver::URLName [protected]

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