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] portName The name of the asyn port driver to be created.
[in] maxBuffers The 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] maxMemory The 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] priority The thread priority for the asyn port driver thread if ASYN_CANBLOCK is set in asynFlags.
[in] stackSize The 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] fp File pointed passed by caller where the output is written to.
[in] details If >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] pasynUser pasynUser structure that encodes the reason and address.
[in] value Value to write.

Reimplemented from ADDriver.


Member Data Documentation

int URLDriver::URLName [protected]


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

Generated on Tue Aug 9 14:44:39 2011 for areaDetector by  doxygen 1.5.7.1