12 TString gPathConfig = gSystem->Getenv(
"VMCWORKDIR");
13 TString gPathFull = gPathConfig +
"/macro/steering/qaHisto.dat";
16 ifstream
f(gPathFull.Data(), ios::in);
18 vector <Double_t> axisAttr;
23 TString currString(line);
25 if (currString.Contains(histoName.Data())) {
26 TObjArray* arr = currString.Tokenize(
" ");
27 for (Int_t iEle = 0; iEle < arr->GetEntriesFast(); iEle++) {
28 TString str = ((TObjString*) arr->UncheckedAt(iEle))->GetString();
29 if (str.Contains(
"nBins") || str.Contains(
"nBinsX") || str.Contains(
"nBinsY") ||
30 str.Contains(
"xLow") || str.Contains(
"xUp") || str.Contains(
"yLow") || str.Contains(
"yUp")) {
31 TString tmp = ((TObjString*) arr->UncheckedAt(iEle + 1))->GetString();
32 axisAttr.push_back(tmp.Atof());
41void BmnOfflineQaSteering::ParseSteerFile(TString fileName) {
42 TString gPathConfig = gSystem->Getenv(
"VMCWORKDIR");
43 TString gPathFull = gPathConfig +
"/macro/steering/" + fileName;
47 ifstream
f(gPathFull.Data(), ios::in);
51 f >> buff >> fNCanvases;
53 for (Int_t iCanvas = 0; iCanvas < fNCanvases; iCanvas++) {
55 Int_t
run, col1d, col2d, rows1d, rows2d;
56 const Int_t nSetups = 3;
59 for (Int_t iSetup = 0; iSetup < nSetups; iSetup++) {
61 f >> name >>
run >>
setup >> rows1d >> col1d >> rows2d >> col2d;
62 fListCanvases.push_back(name);
64 f >>
run >>
setup >> rows1d >> col1d >> rows2d >> col2d;
65 vector <TString> vec = {
66 TString::Format(
"%d",
run),
67 TString::Format(
"%s",
setup.Data()),
68 TString::Format(
"%s",
name.Data()),
69 TString::Format(
"%d", rows1d),
70 TString::Format(
"%d", col1d),
71 TString::Format(
"%d", rows2d),
72 TString::Format(
"%d", col2d)
75 fCanvasAttributes.push_back(vec);
80 for (Int_t iLine = 0; iLine < 3; iLine++) {
82 Int_t period, start, finish, Ndets, Ntrigs;
84 f >> period >>
setup >> start >> finish >> buff >> Ndets;
85 fBorderRuns[make_pair(period,
setup)] = make_pair(start, finish);
87 vector <TString> detectors;
89 for (Int_t iDet = 0; iDet < Ndets; iDet++) {
93 fDetectors[make_pair(period,
setup)] = detectors;
95 vector <TString> triggers;
97 for (Int_t iTrigger = 0; iTrigger < Ntrigs; iTrigger++) {
99 triggers.push_back(trigger);
101 fTriggers[make_pair(period,
setup)] = triggers;
106 f >> buff >> fNReleases;
109 for (Int_t iRelease = 0; iRelease < fNReleases; iRelease++) {
112 f >> buff >> releaseName;
115 fListReleases.push_back(releaseName);
virtual ~BmnOfflineQaSteering()
vector< Double_t > GetAxisAttributes(TString)