using namespace std;
#include <iostream>
#include <iomanip>
#include <math.h>
#include "TObjString.h"
#include "TProfile.h"
#include "TList.h"
#include "hqascalers.h"
ClassImp(HQAScalers)
ClassImp(HQAScaler)
ClassImp(HQAScaler6)
HQAScalers::HQAScalers()
{
scalerList = new TList();
resetPointers();
}
void HQAScalers::resetPointers()
{
;
richCal_n = 0;
richHit_n = 0;
mdcCal1_n_m0 = 0;
mdcCal1_n_m1 = 0;
mdcCal1_n_m2 = 0;
mdcCal1_n_m3 = 0;
tofHit_n = 0;
shoHit_n = 0;
shoHitTof_n = 0;
kickTrack_n = 0;
trigRich_n = 0;
trigTof_n = 0;
trigShower_n = 0;
trigTlepton_n = 0;
trigSlepton_n = 0;
}
void HQAScalers::activateScalers()
{
TList *activeList = new TList();
const Char_t *scalers[1000] = {
#include "QAscalers.h"
};
for (Int_t i = 0; scalers[i] != 0; i++)
activeList->Add(new TObjString(scalers[i]));
TIter next(scalerList);
while (TNamed *scal = (TNamed*) next()) {
if (! activeList->Contains(scal->GetName()))
scalerList->Remove(scal);
}
activeList->Delete();
delete activeList;
}
void HQAScalers::bookScalers()
{
richCal_n = new HQAScaler6("richCal_n", "richCal: pads/event");
scalerList->Add(richCal_n, "rich--sectorwise");
richHit_n = new HQAScaler6("richHit_n", "richHit: hits/event (*1000)");
scalerList->Add(richHit_n, "rich--sectorwise");
mdcCal1_n_m0 = new HQAScaler6("mdcCal1_n_m0", "mdcCal1: Plane I, avg. mult.");
scalerList->Add(mdcCal1_n_m0, "mdc--sectorwise");
mdcCal1_n_m1 = new HQAScaler6("mdcCal1_n_m1", "mdcCal1: Plane II, avg. mult.");
scalerList->Add(mdcCal1_n_m1, "mdc--sectorwise");
mdcCal1_n_m2 = new HQAScaler6("mdcCal1_n_m2", "mdcCal1: Plane III, avg. mult.");
scalerList->Add(mdcCal1_n_m2, "mdc--sectorwise");
mdcCal1_n_m3 = new HQAScaler6("mdcCal1_n_m3", "mdcCal1: Plane IV, avg. mult.");
scalerList->Add(mdcCal1_n_m3, "mdc--sectorwise");
tofHit_n = new HQAScaler6("tofHit_n", "tofHit: multiplicity/event");
scalerList->Add(tofHit_n, "tof--sectorwise");
shoHit_n = new HQAScaler6("shoHit_n", "showerHit: multiplicity/event");
scalerList->Add(shoHit_n, "shower--sectorwise");
shoHitTof_n = new HQAScaler6("shoHitTof_n", "showerHitTof: multiplicity/event");
scalerList->Add(shoHitTof_n, "shower--sectorwise");
kickTrack_n = new HQAScaler6("kickTrack_n", "kickTrack: tracks/event");
scalerList->Add(kickTrack_n, "kick--sectorwise");
trigRich_n = new HQAScaler6("trigRich_n", "RichIPU: hits/event");
scalerList->Add(trigRich_n, "trigger--sectorwise");
trigTof_n = new HQAScaler6("trigTof_n", "TofIPU: hits/event");
scalerList->Add(trigTof_n, "trigger--sectorwise");
trigShower_n = new HQAScaler6("trigShower_n", "ShowerIPU: hits/event");
scalerList->Add(trigShower_n, "trigger--sectorwise");
trigTlepton_n = new HQAScaler6("trigTlepton_n", "MU Leptonen(Tof): hits/event");
scalerList->Add(trigTlepton_n, "trigger--sectorwise");
trigSlepton_n = new HQAScaler6("trigSlepton_n", "MU Leptonen(Shower): hits/event");
scalerList->Add(trigSlepton_n, "trigger--sectorwise");
activateScalers();
}