This page contains several important points, which have to be taken into account during creation of new data / analysis classes.
Names of all classes in R3BRoot have to start with prefix R3B. Declaration (header) and implementation (source) files have to match the class name, having extensions .h and .cxx accordingly.
Except some special cases, second part of class name shows to which detector it belongs, e.g. Neuland, Califa, Gfi.
We define 3 major data levels, which can be extended on demand:
CAL-level: Fully calibrated
HIT-level: Physical quantities in cm, ns, MeV
- Data classes:
R3B[Detector][Level]Data, e.g. R3BTofdMappedData, R3BNeulandCalData.
- Analysis tasks or converters, which produce a data level:
R3B[Detector][FromLevel]2[ToLevel], e.g. R3BNeulandMapped2Cal.
- Parameter containers:
- Task, which calculates parameters:
R3B[Detector][FromLevel]2[ToLevel]Par, e.g. task R3BNeulandCal2HitPar with output R3BNeulandHitPar.
Branch name for a data object in the output file has to match the class name without prefix "R3B", e.g. R3BNeulandCalData is stored in a tree as "NeulandCalData".