EUTelescope And IBL Testbeam pages
Notes on customising analysis of IBL testbeam data using
tbmon
.
Assuming you are in
PATH_TO_ANALYSIS
directory (i.e. something like
path_to_tbmon/tbmon/trunk
) ...
To add new code to analyses you'll need to create/edit files in
PATH_TO_ANALYSIS/analysis/
part of the file structure. This is done in the standard header/source code way. A header (i.e.
.h
file) must be in the
analysis/include
directory with all declarations (classes, member functions, variables etc.). The corresponding source (i.e.
.cc
file) file must be in the
analysis/src
directory with all the analysis functionality.
If you are creating a new anlysis you'll need to tell the rest of the software about it. Once you have created
someanalysis.h
and
someanalysis.cc
files the code must be introduced in the
driver.cc
file in the
PATH_TO_ANALYSIS
directory. The analysis must be added to the set of included files at the beginning of the
driver
file (e.g.
#include "someanalysis.h"
) and added to the list of possible analyses in the
allAnalyses
function (e.g.
config.addAnalysis(new SomeAnalysis, "someanalysis", dut);
).
The last thing to do is mention the new analysis in the
Makefile
so that it is compiled along with the rest of the software. You must add a
.o
mention (e.g.
someanalysis.o
to the
ANALYSIS
section of the Makefile.
After any changes the code must be recompiled:
> make
Then, supposing you have gone through all the steps required before running analysis algorithms* (
here) you can run your custom analysis like any other task:
> ./tbmon -s/r/l RUN_NUMBER(s)/RUN_LIST -a ANALYSIS_TASK -c CONFIGURATION_SET
* Changes made only to
analysis
files, rather than
core
or
eventbuilders
, will not require rerunning of hotpixelfinder, checkalign, getetacorr, checkalign steps.
--
KennyWraight - 2013-06-11