///////////////////////////////////////////////////////////////////////////////
-#include "AliMonitorHisto.h"
-#include <TProfile.h>
#include <TH2.h>
+#include <TMath.h>
+#include <TProfile.h>
#include <TVirtualPad.h>
+#include "AliLog.h"
+
+#include "AliMonitorHisto.h"
+
ClassImp(AliMonitorHisto)
//_____________________________________________________________________________
-AliMonitorHisto::AliMonitorHisto()
+AliMonitorHisto::AliMonitorHisto() :
+ AliMonitorPlot(),
+ fHisto(NULL),
+ fHistoList(),
+ fNHistos(0),
+ fHistoRun(NULL),
+ fHistoDraw(NULL),
+ fHistoRef(NULL),
+ fHistoCompare(NULL),
+ fNorm(kNormNone)
{
// default contructor
- fHisto = NULL;
- fNHistos = 0;
- fHistoRun = NULL;
- fHistoDraw = NULL;
- fHistoRef = NULL;
- fHistoCompare = NULL;
- fNorm = kNormNone;
}
//_____________________________________________________________________________
AliMonitorHisto::AliMonitorHisto(const AliMonitorHisto& histo) :
- AliMonitorPlot(histo)
+ AliMonitorPlot(histo),
+ fHisto(NULL),
+ fHistoList(),
+ fNHistos(histo.fNHistos),
+ fHistoRun(NULL),
+ fHistoDraw(NULL),
+ fHistoRef(NULL),
+ fHistoCompare(NULL),
+ fNorm(histo.fNorm)
{
// copy constructor
Bool_t addStatus = TH1::AddDirectoryStatus();
TH1::AddDirectory(kFALSE);
- fHisto = NULL;
if (histo.fHisto) fHisto = (TH1*) histo.fHisto->Clone();
- fNHistos = histo.fNHistos;
TObjLink* link = histo.fHistoList.FirstLink();
for (Int_t i = 0; i < fNHistos; i++) {
fHistoList.Add(link->GetObject()->Clone());
link = link->Next();
}
- fHistoRun = NULL;
if (histo.fHistoRun) fHistoRun = (TH1*) histo.fHistoRun->Clone();
- fHistoDraw = NULL;
- fHistoRef = NULL;
if (histo.fHistoRef) fHistoRef = (TH1*) histo.fHistoRef->Clone();
- fHistoCompare = NULL;
- fNorm = histo.fNorm;
TH1::AddDirectory(addStatus);
}
//_____________________________________________________________________________
AliMonitorHisto& AliMonitorHisto::operator =(const AliMonitorHisto& histo)
{
-// assignment operatore
+// assignment operator
AliMonitorPlot::operator =(histo);
//_____________________________________________________________________________
AliMonitorHisto::AliMonitorHisto(TH1* histo, ENorm norm) :
- AliMonitorPlot(histo->GetName(), histo->GetTitle())
+ AliMonitorPlot(histo->GetName(), histo->GetTitle()),
+ fHisto(histo),
+ fHistoList(),
+ fNHistos(0),
+ fHistoRun(NULL),
+ fHistoDraw(NULL),
+ fHistoRef(NULL),
+ fHistoCompare(NULL),
+ fNorm(norm)
{
// create a monitor histogram from the given histogram
if (histo->GetDimension() > 2) {
- Fatal("AliMonitorHisto", "3 dimensional histograms are not supported");
+ AliFatal("3 dimensional histograms are not supported");
}
histo->SetDirectory(NULL);
histo->Reset();
- fHisto = histo;
fHisto->Sumw2();
- fNHistos = 0;
Bool_t addStatus = TH1::AddDirectoryStatus();
TH1::AddDirectory(kFALSE);
fHistoRun = (TH1*) histo->Clone();
TH1::AddDirectory(addStatus);
- fHistoDraw = NULL;
- fHistoRef = NULL;
- fHistoCompare = NULL;
- fNorm = norm;
}
//_____________________________________________________________________________
} else if (fHisto->InheritsFrom(TProfile::Class())) {
((TProfile*)fHisto)->Fill(x, y, w);
} else {
- Error("Fill", "trying to fill x and y of a 1 dimensinal histogram");
+ AliError("trying to fill x and y of a 1 dimensinal histogram");
return;
}
}
if (!fHistoRef) return kTRUE;
if (fgThreshold <= 0) return kTRUE;
if (!fHistoDraw) {
- Info("Compare", "no data histogram available for comparison\ncall DrawEvent, DrawSum or DrawRaw before calling Compare");
+ AliWarning("no data histogram available for comparison\ncall DrawEvent, DrawSum or DrawRaw before calling Compare");
return kTRUE;
}
if (fHistoCompare) delete fHistoCompare;
// get the normalized monitor histogram for the "number"th last event
if (fNHistos == 0) {
- Info("GetEvent", "there are no histograms for single events available");
+ AliWarning("there are no histograms for single events available");
return kFALSE;
}
if (number > fNHistos) {
- Error("GetEvent", "requested event number (%d) exceeds range of available events (%d)\n",
- number, fNHistos);
+ AliError(Form("requested event number (%d) exceeds range of available events (%d)",
+ number, fNHistos));
return kFALSE;
}
if (number <= 0) return kFALSE;
// "number" events
if (fNHistos == 0) {
- Info("GetSum", "there are no histograms for single events available");
+ AliWarning("there are no histograms for single events available");
return kFALSE;
}
if (number > fNHistos) {
- Info("GetSum", "requested number of events (%d) exceeds range of available events (%d)\nusing last %d event(s)",
- number, fNHistos, fNHistos);
+ AliError(Form("requested number of events (%d) exceeds range of available events (%d)\nusing last %d event(s)",
+ number, fNHistos, fNHistos));
number = fNHistos;
}
if (number <= 0) return kFALSE;