Privacy and Security Notice
MEDM using CDEV
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.