From cb12f61a36bd7705190c357123334309f879eaba Mon Sep 17 00:00:00 2001 From: rivers Date: Mon, 22 Mar 2010 18:09:15 +0000 Subject: [PATCH] Minor updates for R1-6 git-svn-id: https://subversion.xor.aps.anl.gov/synApps/areaDetector/trunk@10303 dc6c5ff5-0b8b-c028-a01f-ffb33f00fc8b --- documentation/pluginDoc.html | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/documentation/pluginDoc.html b/documentation/pluginDoc.html index 6016bfd..3e7d51d 100755 --- a/documentation/pluginDoc.html +++ b/documentation/pluginDoc.html @@ -76,17 +76,17 @@ NDPluginDriver is the class from which actual plugins are directly derived. The NDPluginDriver class handles most of the details of processing NDArray callbacks from the driver. Plugins derived from this class typically need to implement the - processCallbacks method, the drvUser method, and one or more of the write(Int32, - Float64, Octet) methods. The - NDPluginDriver class documentation describes this class in detail. + processCallbacks method, and one or more of the write(Int32, Float64, Octet) methods. + The NDPluginDriver + class documentation describes this class in detail.

NDPluginDriver defines parameters that all plugin drivers should implement if possible. - These parameters are defined by enum values with an associated asyn interface, and - access (read-only or read-write). The EPICS database NDPluginBase.template provides - access to these standard plugin parameters, listed in the following table. Note - that to reduce the width of this table the enum names have been split into 2 lines, - but these are just a single name, for example NDPluginDriverArrayPort. + These parameters are defined by strings (drvInfo strings in asyn) with an associated + asyn interface, and access (read-only or read-write). The EPICS database NDPluginBase.template + provides access to these standard plugin parameters, listed in the following table. + Note that to reduce the width of this table the parameter index variable names have + been split into 2 lines, but these are just a single name, for example NDPluginDriverArrayPort.

@@ -96,7 +96,7 @@ + Parameter index variable + drvInfo string
- Enum name asyn interface @@ -104,7 +104,7 @@ Description - drvUser string EPICS record name @@ -548,10 +548,11 @@ or getStringParam() function calls when they are needed.
  • If the writeInt32(), writeFloat64() or writeOctet() functions are implemented they must call the base class function for parameters that they do not handle - and whose enum value is less than the value of NDPluginDriverLastParam, i.e. parameters - that belong to a base class.
  • -
  • Plugins will need to implement the drvUserCreate() function if they have additional - parameters beyond those in the asynPortDriver or NDPluginDriver base classes.
  • + and whose parameter index value is less than the first parameter of this class, + i.e. parameters that belong to a base class. +
  • Plugins will need to call the createParam() function in their constructor if they + have additional parameters beyond those in the asynPortDriver or NDPluginDriver + base classes.
  • Plugins may never modify the NDArray that they receive in the processCallbacks() function. The reason is that other plugins may be concurrently operating on the same NDArray, since each is passed the same pointer. This means also that when getting