As we know the EPICS community is unlikely to ever standardize on a single display manager. The display managers currently in wide use:
CSS/BOY (.opi files)
CSS/DisplayBuilder (.bob files)
medm (.adl files)
edm (.edl files)
caQtDM (.ui files)
This is of course a problem for those of us who maintain EPICS modules that are used at many sites, such as asyn, areaDetector, motor, quadEM, mca, etc. Normally the
module developer only has 1 or 2 of these display managers installed and is proficient in their use.
One solution is to automatically convert screens from one format to the others. For this purpose medm is the least common denominator, since it has converters to edm,
caQtDM, and CSS/BOY. Because CSS/DisplayBuilder can import .opi files, medm can also be converted to DisplayBuilder.
The edm and caQtDM converters are command-line utilities. This means that the conversions can be scripted. In fact Pete Jemian has recently written Makefiles to do the
conversion as part of the build system in ADSimDetector, and this can be copied to other EPICS modules. This will be very nice, because it means that is trivial to generate new edm and caQtDM autoconverted files with each release of the module.
The problem is with CSS/BOY. The converter for that runs within the CSS/BOY GUI. In order to do the conversion one must copy the .adl files into the CSS Workspace, do
the conversion from the GUI, and then copy the converted files back to their target location. The converter itself it written in Java, but only runs in the CSS Eclipse framework.
I am hoping that someone who is proficient in Java could refactor that Java converter so that it can be run from the command line, and thus from within a Makefile. At
the same time perhaps the converter could also have the option of creating .bob files as well as .opi files.
Any volunteers? I think this would be a significant improvement to the EPICS toolkit, since CSS is gaining in popularity.