SLAC ESD Software Engineering Group
Stanford Linear Accelerator Center
AIDA

Accelerator Integrated Data Access


Princess Aida by Rafal Olbinski
Rafal Olbinski's Opera Posters
SLAC Detailed
SLAC Computing
Software Home
Software Detailed
AidaWeb

AIDA javadoc CVSWEB (Aida is in /package/aida).

AIDA helps programmers write high level applications which have to connect to different databases, data sources, or control systems, on possibly different platforms and whose APIs may be in different languages, to perform data interactions in the time-scales necessary for on-line accelerator applications. It is not real-time control. Rather, it interfaces real-time control environments such as EPICS to high level interactive scientific applications and servers, like Orbit Correction, Correlation Plots and so on. In the language of computer programming, it is a middleware framework and API for multi-platform, multi-language, distributed data access and message passing. It is implemented on top of CORBA and has Java, Matlab, shell-script, and C++ APIs, and also has a Web based interface. It is now in use in the SLAC accelerator system.

Authors: Greg White, George McIntyre, Bob Sass, Bob Hall, Ron MacKenzie


Users Guides

These pages are for users of Aida, such as physicists, operations and programmers wishing to use Aida to interact with data.

Basic User Guide to Aida Using Aida from Matlab
Aida Command Line Tools AidaWeb Help

Individual Data Provider Users Guides

These pages give help on getting data from each data provider server in the AIDA cloud. The basic API is the same across all servers, but the options available are different for each server. These pages describe the data that may be acquired from that server, and formally describes the available options. Examples are given for each server.

EPICS Channel Access SLC History
EPICS Channel Archiver SLC Control Database
Oracle XAL Accelerator Model SLC Trigger
Oracle Relational Database SLC Multiknob
SLC Accelerator Model SLC Klystron
SLC BPM Orbit Data SLC BGRP Set Variable
SLC MasterOscillator SLC Magnet

Programmers Guides

These pages are for developers of the Aida system itself.

New Labour basic development cheat-sheet Aida Directory Service Database Guide
AIDA Event Handling Directory Service Oracle Schema (pdf)
ESD Error Handling: Exception Handling Aida Query Specification (AQS) (Word)
AIDA Coding Conventions Names Database Contributor Taxonomy
Troubleshooting Aida Development in Eclipse
Performance Report Issues and Bugs
Using the Java JNI on OpenVMS

Individual Peer and Data Provider Programmers Guides

Summary of Data Providers (out of date) EPICS Channel Access Provider Programmers Guide
SLC Peer Programmers Guide EPICS Channel Archiver
Creating an SLC Data Provider AIDA System Management Guide

Development Resources

Aida Confluence Wiki
Aida SQL CheatSheet
Netbeans CheatSheet
European Bioinformatics Institute (EBI) Corba Tutorials Jim Peterson's CORBA notes from Clemson Uni

References

J2SE 1.3 API Javadoc   J2SE 1.4 API Javadoc Java Soft
J2SE 1.4 org.omg.CORBA Javadoc
Sun ONE Whitepapers
HP Java HP OpenVMS Java Technology Center
CVS Users Guide Independent CVS notes Matlab support for Java
Orbacus 4.2.1 Users Guide Java Native Interface
Enterprise Java CD Bookshelf at SLAC Java at SLAC
JavaDoc Tags New Features of CORBA 3.0
Java Development Environment for Emacs (JDEE) JDEE User Guide (no frames)
Oracle and SQL*Plus Concepts and Features  

Talks and Papers

Aida Presentation to EPICS 2001 at PSI - ppt or pdf Aida Paper at ICALEPCS 2001
Design Review Minutes - ESD Exceptions. AIDA The Video! See chat for July 17th 2002
Aida Orientation and References (Word) Aida Review (Aug 2004): Context (pdf), Technical (pdf), Performance, Error handling spin-off.
Talk to operations of May 2005: Matlab and slides (html) Aida Oracle Data Provider PowerPoint (June 2008) AidaOracle.ppt

The Other Aida

Aida at Classical.net Aida Opera.com
Aida on Broadway Abstract Interfaces for Data Analysis (AIDA).

[Aida Template Page][SLAC Controls Software Group][ SLAC Home Page]

Author: Greg White

Valid XHTML 1.0!