LHIS is a histogram booking, filling, and mainpulation package based on LOOK. For information about the layout of the data area and about the available routines see App. A.
LHIS is written in FORTRAN. For the most important histogramming routines, C wrappers exist. They are contained in the file FarmUtils.c which goes to the SiFarm.a library. The LHIS routines themselves are contained in the library sifil.a which is located on h1l4 under /h1/l4trig/lib.
LHIS depends on the correct setup of a FORTRAN Common Block
YCLHIS. This is done by the main RAID task.
All the user has to do is to store the indices of the booked histograms to
make them available for filling.
A sample call to book a single histogram would be:
ind = cbhs( 1000, 0, 100, 0., 100.);
To add a title:
ctext( 1000, 1, ``Sample Histogram'');
To fill it:
cfhs( ind, 500.);
For Monitoring Silicon Data, one wants to have sets of histograms to display the same histograms for different RIOs, FADCs, APCs etc. To make this histogram set handling easier, the HistSpecBlock structure has been introduced. It contains for a set of 1D-histograms:
A sample set definition is:
HistSpecBlock HitFindTime= {
, 516, "HitFindTime, RIO x", 150, 100., 15000., "musecs"};
A call to the routine
BookSet ( &HitFindTime);
then books 8 histograms starting with ID 516 and stores the indices in HitFindTime.index[0-7].
The routine also modifies the title template for each of the histograms in the set: see the source code (file SiFarmHistos.c).