SLAC ESD Software Engineering Group
Stanford Linear Accelerator Center

SLC History Data Provider Guide

SLAC Detailed
SLAC Computing
Software Home
Software Detailed

This page provides documentation for users and programmers of AIDA's SLC History Data Provider. SLC History provides data from an archive of the previous values of a large number of devices in the SLC Control System.

See Also: Basic Users Guide to Aida, REF_AIDASHR; AIDA SLC Peer Programmers Guide

Users Guide

This section describes what an AIDA user should know about accessing SLC History Data through AIDA.For general information on using see Basic Users Guide to Aida, and the Aida javadoc, in particular the classes DaObject and DaReference (and DaReference's parent _DaReference) in aida.lib.da which form Aida's programming interface. One can also use Matlab.

Table 1: Summary of AIDA Data Provider for SLC History Data

Acquires an array of the values of the named SLC device, between some given STARTTIME and a given ENDTIME.
Status and limitations Data Provider is compete. The names of historied SLC Devices known to AIDA is large, but may be out of date, since it has not been updated in some time.
Plan Populate Aida Directory service with names of SLC devices' history automatically after DBGEN.

Schematic Matlab example using a DaReference and returning a DaValue
>> r = DaReference('XCOR:LI03:120//BACT.HIST',da);
>> r.setParam('STARTTIME','07/15/2004 00:00:00');
>> r.setParam('ENDTIME','07/30/2004 00:00:00');
>> hist = r.getDaValue();
Java $CD_SOFT/ref/package/aida/test/java/
Matlab Example History Data acquisition from Matlab on Windows PC (screenshot)

Types Description
SLC Device Syntax <prim>:<micr>:<unit>//<secn>.HIST
Examples XCOR:LI03:120//BACT.HIST
Instance Attributes
Attribute Description
HIST The archived history of the device (d), usually sampled every 6 minutes
Methods Name Returns
getDaValue(d) DaValue containing a rectangular matrix of 4 arrays: [1,:] - the values (double); [2,:] - the times as strings "dd-mmm-yyyy hh:mm:ss" (matlab dateform '0', suitable for datenum); [3,:] repeat count, always valued 0 (maintained only for compatibility with EPICS Archiver); [4,:] the times as numeric timestamps in UNIX system time format. Extract each array with methods of java.util.Vector such as get() (which DaValue extends).See examples above.

A CORBA Any, which should be extracted with edu.stanford.slac.aida.dp.dpSlc.
See example.

Arguments Name


Syntax Semantics


mm/dd/yyyy hh:mm:ss
The time from which you want values of the SLC device named.
ENDTIME req as STARTTIME The time up-to which you want values of the SLC device named.
DATEFORMAT opt DATEFORM0 or MMDDYYYY The format of the data time strings returned. DATEFORM0 is the default format: "dd-mmm-yyyy hh:mm:ss". MMDDYYYY is the format "mm/dd/yyyy hh:mm:ss".


Programmers Guide

The SLC History Data Provider is a provider in the AIDA SLC Peer (along with the SLC DB Data Provider, the SLC Model Data Provider, the SLC BPM Data Provider, the SLC Magnet Data Provider, the SLC Multiknob Data Provider, the SLC Master Oscillator Data Provider, and the SLC Klystron Data Provider). Development of all these data providers is described in a Programmers Guide here.

[SLAC ESD Software Engineering Group][ SLAC Home Page]

Author:  Greg White 09-Dec-2004
Modified by: Bob Hall 01-Aug-2006, Added description of new numerical sample timestamps and changed ASTS name example.