Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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.
Physics Applications: apps may be implemented directly in Matlab using above tools, plus Accelerator Toolkit (AT) #inv_AT.

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 (question)

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

...