]> jspc29.x-matter.uni-frankfurt.de Git - daqdata.git/commitdiff
*** empty log message ***
authorhades <hades>
Sat, 31 Mar 2001 16:26:53 +0000 (16:26 +0000)
committerhades <hades>
Sat, 31 Mar 2001 16:26:53 +0000 (16:26 +0000)
allParam/ca/README

index 7f367570c58991613d13b00eba53d93c0239168c..3ee2226c6170391e0a26ea5683969a179a914045 100644 (file)
@@ -4,46 +4,98 @@ Author:  Benjamin Sailer
 Version: 0.1
 Date:    2000-09-10
 
-libcaParam.a
-============
-
 Content
--------
+=======
+
+
+daq_<lib>_param_cas
+
+1. libcaParam.a
+1.1 Compiletime requirements
+1.2 Linktime requirements
+1.3 Runtime requirments
+1.4 Known bugs and further developement perspectives
+2. daq_<lib>_param_cas
+2.1 Compile- and linktime requirements
+2.2 Runtime requirements
+2.3 Known bugs and further developement perspectives
 
-1. Compiletime requirements
-2. Linktime requirements
-3. Runtime requirments
-4. Known bugs and further developement perspectives
+1. libcaParam.a
+===============
 
-1. Compiletime requirements
----------------------------
+1.1 Compiletime requirements
+----------------------------
 
   To compile the channel access param library, you need the enviroment variable
 EPICS_HOME set to the root of the EPICS tree. Make assumes that the used base
 directory is right below the EPICS_HOME and called 'base/'. Tested with
 R3.13.3, libcaParam.a can happen to work with earlier versions.
 
-2. Linktime requirements
-------------------------
+1.2 Linktime requirements
+-------------------------
 
 Ensure, that the EPICS libraries linked to the final objects are the same ones
 you use to compile the libcaParam.a.
 
-3. Runtime requirments
-----------------------
+1.3 Runtime requirments
+-----------------------
 
   At runtime the library assumes to have a channel access server within the
 EPICS_CA_ADDR_LIST that serves the parameters requested by the hosting program.
 The requested channel names are
-HAD:PARA:(uppercase <name>):(uppercase <idx>)
-and the library only asks for DBR_STRING types (as the EPICS conversion does
-not treat hex-numbers like strtoul(3) does). So conversion to integers is done
-by the library itself.
+HAD:
+P(uppercase <type>):
+[(uppercase <setup>):]
+(uppercase <name>):
+(uppercase <idx>)
+, e.g.
+HAD:PS:SETUP:NAME:IDX
+where <type> is one out of B (blob), F (filename), I (int) and S (string).
+Setup can be ommited when asking for the default parameter source.
+
+1.4 Known bugs and further developement perspectives
+----------------------------------------------------
+
+- Transport of blobs is limited to file-sizes up to 16368 bytes (nearly 16K)
+  due to limitations in EPICS channel access.
+- Behaviour with the wrong data types is not the same as it is in the other
+  libraries: Integer-requests for parameters, that have only string-type
+  values, do not deliver a '-1' return value, but '0' (as this cannot be
+  distinguished from just not available parameters.
+- Behaviour with timeouts is not understood quite well.
+
+2. daq_<lib>_param_cas
+======================
+
+  Since version 0.2 the sources for the channel access server providing the
+parameters are also included in this package. The server has been rewritten so
+that he can serve Parameters from different setups simultaneously as long as
+all the setups can be provided via one type of parameter source (i.e. only
+one type of param library can be linked against the server).
+
+2.1 Compile- and linktime requirements
+--------------------------------------
+
+  Each parameter server hast to be linked against one param library. All the
+libraries neccesary for param library also have to be available for the linker
+as well as libcas, libca, libCom from the EPICS package.
+
+2.2 Runtime requirements
+------------------------
+
+  Each time a parameter is requested, the server first checks whether it
+already contains a corresponding parameter structure or at least can construct
+one. This is checked by looking at the return value of the constructor (that
+corresponds for example to the availability of a tcl-file with the name of the
+setup - in case of libfileParam and libtclParam). If this test is successful,
+for each request a PV is generated. Available parameters result in a supported
+read-function, while all parameters are writeable (for Param_storeInt() resp.
+Param_storeString()).
 
-4. Known bugs and further developement perspectives
----------------------------------------------------
+2.3 Known bugs and further developement perspectives
+----------------------------------------------------
 
-  Behaviour with timeouts is not understood quite well.
+- See 1.4.
 
 Please send bug reports to