1 #ifndef ALI_TPC_PERFORMANCE_SUMMARY_H
2 #define ALI_TPC_PERFORMANCE_SUMMARY_H
4 //------------------------------------------------------------------------------
5 // Class to extract some TPC Performance parameters from AliPerformanceTPC and
6 // AliPerformanceDEdx objects and produce trend graphs.
8 // by M.Knichel 15/10/2010
9 //------------------------------------------------------------------------------
13 class TTreeSRedirector;
14 class AliPerformanceTPC;
15 class AliPerformanceDEdx;
16 class AliPerformanceDCA;
18 class AliTPCPerformanceSummary
21 AliTPCPerformanceSummary() {} // default contructor
22 virtual ~AliTPCPerformanceSummary() {} // destructor
24 static Int_t WriteToTTreeSRedirector(const AliPerformanceTPC* pTPC, const AliPerformanceDEdx* pTPCgain, TTreeSRedirector* pcstream, Int_t run = -1); // called by WriteToFile
26 static Int_t WriteToFile(const AliPerformanceTPC* pTPC, const AliPerformanceDEdx* pTPCgain, const Char_t* outfile, Int_t run = -1); // calles by MakeReport
28 // the two key functions
29 static Int_t MakeReport(const Char_t* infile, const Char_t* outfile, Int_t run);
30 static Int_t ProduceTrends(const Char_t* infilelist, const Char_t* outfile);
32 static Bool_t getForceTHnSparse() { return fgForceTHnSparse; }
33 static void setForceTHnSparse(Bool_t forceSparse = kTRUE) { fgForceTHnSparse = forceSparse; }
37 static Bool_t fgForceTHnSparse;
38 // save graphs to current directory
40 static Int_t SaveGraph(TTree* tree, const Char_t* y, const Char_t* x, const Char_t* condition);
42 // helper functions to extract parameter and write to TTreeSRedirector
43 static Int_t AnalyzeDCARPhi(const AliPerformanceTPC* pTPC, TTreeSRedirector* pcstream);
44 static Int_t AnalyzeDCARPhiPos(const AliPerformanceTPC* pTPC, TTreeSRedirector* pcstream);
45 static Int_t AnalyzeDCARPhiNeg(const AliPerformanceTPC* pTPC, TTreeSRedirector* pcstream);
46 static Int_t AnalyzeNCL(const AliPerformanceTPC* pTPC, TTreeSRedirector* pcstream);
47 static Int_t AnalyzeDrift(const AliPerformanceTPC* pTPC, TTreeSRedirector* pcstream);
48 static Int_t AnalyzeDriftPos(const AliPerformanceTPC* pTPC, TTreeSRedirector* pcstream);
49 static Int_t AnalyzeDriftNeg(const AliPerformanceTPC* pTPC, TTreeSRedirector* pcstream);
50 static Int_t AnalyzeGain(const AliPerformanceDEdx* pTPCgain, TTreeSRedirector* pcstream);
51 static Int_t AnalyzeEvent(const AliPerformanceTPC* pTPC, TTreeSRedirector* pcstream);
54 AliTPCPerformanceSummary(const AliTPCPerformanceSummary&); // copy contructor (not implemented)
55 AliTPCPerformanceSummary& operator=(const AliTPCPerformanceSummary&); // assignment operator (not implemented)
57 ClassDef(AliTPCPerformanceSummary, 3);