...
Proposal: develop new applications assuming JFC/Swing. If the first couple are not performing adequately, convert to SWT/Jface. Use Eclipse as a launching platform.
APPLICATIONS
This section points out likely implementations of each of the applications in the Requirements for High level Software Applications.
Generic Diagnostic Packages
Package | Implementation |
---|---|
Beam Orbit Display | Exists in XAL. Need to check whether the interface to BPMs understood by XAL is that offered by our EPICS implementation. |
Wire Scanner User Interface | To be developed using XAL. Configs saved and restored to Oracle |
Profile Monitor user interface | To be developed in XAL or Eclipse Gumtree. There may be an existing implementation in Gumtree http://gumtree.sourceforge.net/wiki/index.php/Main_Page. |
Generic Tuning Packages
Package | Implementation |
---|---|
Multi-knob facility | To be implemented. Proposal: implement as a java library with multi-knob files defined in XML |
Correlation Plots | On SLC this is a complex package with heavy integration with other high level applications. Propose: review existing XAL "scan", "XIO" and "XYZ Correlator" packages (which each have aspects of correlation plots, implement one or more, but delay full Correlation Plots development until other applications have been built, so they have settled before CP is started.) |
Buffered Data Acquisition | Implement in XAL |
TOOL SUMMARY
Tool | Function |
---|---|
x86 Linux RH, KDE/GTK-2 window system | (Native) Desktop O/S for applications. Note, Windows is NOT listed. As described in the architecture Windows clients will go through X11 See X11. x86 and GTK-2 specification is important so performance can be tuned. |
Matlab | Ad-hoc analysis: acquiring data through aida, jca and XAL, performing computation and implementing results. Acquire hist data through Aida. |
XAL | 1) Modelling components (tracking); 2) OO device control, 3) Application framework, 4) Existing XAL applications. |
Eclipse RPC | Integrated application launching. Rich Client Platform (RPC) for integrated applications shared with "EPICS Office" and gumtree. |
Eclipse SWT/Jface | High performance Interactive Applications |
XAL (JCA), AIDA (CORBA), JCA/CAJ | Data Interoperability. Getting and setting device data. Aida can also get history and model data to unix apps from the SLC control system. |
Jcmlog, cmlog, Err | Error handling, logging and browsing. See error handling. |
Cvs, make | Source repository and building. Distribution by simple "install" to an AFS or mounted NFS directory. See Filesystem. Note not ANT |
Oracle | Enterprise RDB. Stores the XAL geometry, and in architecture described here also the optics. Applications acquire optics from the db rather by tracking an XAL lattice at runtime. |
OC4J or Jboss or Apache jakarta | Choose an Application Server. We're making heavy use of Oracle and XML, so displays based on contents of those datasources will go through an App server (AS). Pick one. |
Java | Programming Language |
Linux, Solaris | Server Hosts O/S |
NFS | Production Host Filesystem? See Filesystem |
AFS | Development Host Filesystem |
...