updated doc

This commit is contained in:
Jeff Hill
2003-04-07 22:48:01 +00:00
parent 7429e6a1de
commit fe98915920
+61 -9
View File
@@ -1,11 +1,63 @@
The files in this directory build an example ca server. The example
server exports 4 process variables (PVs): "fred", "freddy", "jane", and
"janet". "fred" and "jane" are synchronous PVs. "freddy" and "janet"
are asynchronous. Many ca servers will find that synchronous variables
will meet there needs and therefore will not require the increased
complexity associated with asynchronous PVs. The PVs in the example
server are updated periodically. Some random "noise" is added to each
PVs current value each time that it is updated.
The example server does not so far implement enumerated data types.
The files in this directory build an example CA server. This code
is meant to provide some examples of how the CA server library can
be used but is not intended to be an example of exemplary code organization
and therefore care should be taken when emulating what is found here.
The example server exports the process variables (PVs) in the table below.
ScanPeriod Name HOPR LOPR Type Asynchronous Elements
.1 "jane" 10.0 0.0 DBR_DOUBLE No 1
2.0 "fred" 10.0 -10.0 DBR_DOUBLE No 1
.1 "janet" 10.0 0.0 DBR_DOUBLE Yes 1
2.0 "freddy"10.0 -10.0 DBR_DOUBLE Yes 1
2.0 "alan" 10.0 -10.0 DBR_DOUBLE No 100
20.0 "albert"10.0 -10.0 DBR_DOUBLE No 1000
-1.0 "boot" 10.0 -10.0 DBR_ENUM No 1
-1.0 "booty" 10.0 -10.0 DBR_ENUM Yes 1
-1.0 "bill" 10.0 -10.0 DBR_DOUBLE No 1
-1.0 "billy" 10.0 -10.0 DBR_DOUBLE Yes 1
-1.0 "bloaty"10.0 -10.0 DBR_DOUBLE No 100000
Many ca servers will find that synchronous variables will meet
their needs and will not require the increased complexity
associated with asynchronous PVs. Asynchronous PVs are needed
when read and write IO requests cant be completed immediately.
The PVs in the example server are updated periodically if the
"ScanPeriod" column above contains a positive number. Some random
"noise" is added to a PV's current value each time that it is
updated.
usage:
excas [-d<debug level> -t<execution time> -p<PV name prefix>
-c<numbered alias count> -s<1=scan on (default), 0=scan off>
-ss<1=synchronous scan (default), 0=asynchronous scan>]
-d<debug level>
Increased diagnostics messages with increasing debug level. Defaults to no
messages.
-t<execution time>
Specifies the duration that the server will run. Defaults to forever.
-p<PV name prefix>
Specifies the prefix applied to all PV names. If you specify "-pxxx:"
then clients must specify PV names like "xxx:fred" or "xxx:jane".
This is useful when several example servers are running on the same
IP subnet for testing purposes. Defaults to no prefix.
-c<numbered alias count>
Useful when you need lots of aliased PV names. The alias names are
of the form "fred1", "fred2", etc. Defaults to no aliases.
-s<1=scan on (default), 0=scan off>
Used to turn off updating of the PVs with random noise. Default is
to update all PVs with a positive scan period.
-ss<1=synchronous scan (default), 0=asynchronous scan>
Controls updating of PVs from an asynchronous thread (tests thread
safety of the server library). Defaults to synchronous.