From 95751452c17eccd187c1dc4011d08dfb06b6a492 Mon Sep 17 00:00:00 2001 From: hades Date: Sat, 31 Mar 2001 16:26:53 +0000 Subject: [PATCH] *** empty log message *** --- allParam/ca/README | 94 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 73 insertions(+), 21 deletions(-) diff --git a/allParam/ca/README b/allParam/ca/README index 7f36757..3ee2226 100644 --- a/allParam/ca/README +++ b/allParam/ca/README @@ -4,46 +4,98 @@ Author: Benjamin Sailer Version: 0.1 Date: 2000-09-10 -libcaParam.a -============ - Content -------- +======= + + +daq__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__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 ):(uppercase ) -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 ): +[(uppercase ):] +(uppercase ): +(uppercase ) +, e.g. +HAD:PS:SETUP:NAME:IDX +where 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__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 -- 2.43.0