Scaler Data Class Package for Hall A
Robert Michaels, rom@jlab.org, Jefferson
Lab Hall A, Jan 2003
This file:
hallaweb.jlab.org/equipment/daq/THaScaler.html
SCALER DATA IN HALL A
In Hall A we have crates of scaler data, see also
dstruct.html (write-up about data structure).
The present class package is intended to analyze those data
and works either as a standlone code suite, or within
the context of the
new Root/C++ analyzer .
DESIGN GOALS
The scaler package combines features of
existing codes.
The usage covers several implementations:
- Works within context of full analyzer, or standalone.
- A time dependent channel mapping to account for movement
of channels or addition of new channels. This map
exists in an ASCII file
scaler.map
which I maintain.
This allows all experiments to use the same software
with no cumbersome changes of indices, etc.
- Adding new scalers is easy, see comments in the code.
- Source of data may be either THaEvData (event data object),
or directly from CODA file, or from VME crate online,
or the end-run "scaler history file", depending on context.
- Optional displays of rates, counts, history -- xscaler style.
This is the class THaScalerGui.
- Several examples exist for looking at data online,
analyzing a CODA file, computing charge, deadtime,
helicity correlations, etc. The examples are a good
form of documentation.
DOCUMENTATION
- The design is well expressed through the
public interface of the header file THaScaler.h
- A good way to get started is to look at the following examples:
DOWNLOAD
Download the tar file (updated 31-Jan-03) from
www.jlab.org/~rom/hana_scaler_2.0.tar
untar it and see the README. If using with
the Hall A Root/C++ analyzer, put it in a subdirectory
under the main directory. A copy will be maintained
on the adaq account on the adaq cluster for experiments
to use online.
PROGRAMMING NOTES
Here are some detailed notes on how to
program with THaScaler class.
You will need the hana decoder at
www.jlab.org/~rom/hana_decode_2.0.tar
(or whatever is the most recent version). To run standalone
(independent of main analyzer), do this:
- In hana_decoder directory, uncomment the line "export STANDALONE = 1" in Makefile
- "make" the decoder.
- Copy library to hana_scaler, e.g.: cp libdc.a ../hana_scaler_VERS/libdc_local.a
- Similarly uncomment "export STANDALONE = 1" in hana_scaler Makefile
- "make" the scaler executibles.
Robert Michaels --
e-mail:
rom@jlab.org