Motif Editing and Displaying Management using CDEV
Medm was
originally developed for
EPICS using channel access as network communication
protocol to get and monitor data from remote computers. The medm_cdev is a
modifed medm using
cdev 1.6.2 instead of channle access as communication layer.
- Enhancements over medm:
- medm_cdev uses cdev instead of channel access as network
communication layer. By doing so, it enables medm_cdev to display
and monitor data not only from channel access servers but also from
other network servers that have cdev interface.
- medm_cdev used a free Motif 2d plotting widget in place of XRT
commercial widget. Currently one can compile and run on most
Unix platforms with Motif.
- A bug which is related to the limit on the open file descriptors
has been fixed.
- medm_cdev supports more flexible data monitoring/controlling scheme.
In the existing medm, one can only specify channel name to monitor.
Now in addition to the above, one can specify "device verb attribute"
to a display. For example: "cdev_ai0 get VAL" or "cdev_ai0
monitorOn VAL".
- How to install:
medm_cdev can be installed in two ways.
- How to use medm_cdev:
Complete documentation on medm can be found at APS
The medm_cdev works with existing adl files created by existing
medm. In addition, the medm_cdev also allows one to use
"device verb attribute" to specify how to display an attribute.
- Requirements for cdev services:
- In order to use medm_cdev with a cdev service, the service has to
support message "get attribute" at least.
- If one wants to use medm_cdev to monitor a set of strings as choices,
the service has to return a cdevData with "displayHigh", "displayLow",
and "value" tags in it. For Example:
char** selections;
int numselections = 10;
cdevData result;
result.insert ("value", selections);
result.insert ("displayHigh", numselections - 1);
result.insert ("displayLow", 0);
If returned dada has no "displayHigh" and "displayLow", the medm_cdev
will not display 'selections' properly.
See a running medm_cdev in JLAB control system.
Download source
code.