- fixing major bug in clusterizer causing almost all events to contain only one cluster
[u/mrichter/AliRoot.git] / TPC / AliTPCQADataMakerRec.h
CommitLineData
44f32dd2 1#ifndef ALITPCQADATAMAKERREC_H
2#define ALITPCQADATAMAKERREC_H
3/* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6
7/* $Id: $ */
8
9/*
10 Based on AliPHOSQADataMaker
11 Produces the data needed to calculate the quality assurance.
12 All data must be mergeable objects.
13 P. Christiansen, Lund, January 2008
14*/
15
16
17// --- ROOT system ---
18#include <TH1.h>
19
20// --- Standard library ---
21
22// --- AliRoot header files ---
23#include <AliQADataMakerRec.h>
24#include <AliRawReader.h>
be4f1702 25#include <AliTPCAltroMapping.h>
44f32dd2 26
27#include <AliTPCdataQA.h>
28
29class AliTPCQADataMakerRec: public AliQADataMakerRec {
30
31public:
ce0175fa 32 enum HRawsType_t {kRawsOccupancy=0, kRawsOccupancyVsSector, kRawsNClustersPerEventVsSector, kRawsQVsSector, kRawsQmaxVsSector, kRawsOccupancyVsEvent, kRawsNclustersVsEvent} ;
44ed7a66 33 enum HDigitType_t {kDigitsADC=0} ;
57acd2d2 34 enum HRECPOINTsType_t {KClusters=0, kRatio, kPt} ;
35 enum HESDsType_t {kQmaxShort=0, kQmaxMedium, kQmaxLong, kQShort, kQMedium, kQLong, kRow} ;
36
44f32dd2 37 AliTPCQADataMakerRec() ; // ctor
38 AliTPCQADataMakerRec(const AliTPCQADataMakerRec& qadm) ;
39 AliTPCQADataMakerRec& operator = (const AliTPCQADataMakerRec& qadm) ;
be4f1702 40 virtual ~AliTPCQADataMakerRec();
44f32dd2 41
1267cf3a 42 virtual void ResetDetector(AliQAv1::TASKINDEX_t task);
ce0175fa 43
1267cf3a 44 Int_t GetRawMaxEvents() const { return fRawMaxEvents; }
45 Int_t GetRawEventsPerBin() const { return fRawEventsPerBin; }
46 Int_t GetRawFirstTimeBin() const { return fRawFirstTimeBin; }
47 Int_t GetRawLastTimeBin() const { return fRawLastTimeBin; }
ce0175fa 48
1267cf3a 49 void SetRawMaxEvents (Int_t value) { fRawMaxEvents = value; }
50 void SetRawEventsPerBin(Int_t value) { fRawEventsPerBin = value; }
51 void SetRawRangeTime(Int_t tMin, Int_t tMax){ fRawFirstTimeBin=tMin; fRawLastTimeBin=tMax;}
556a0e5b 52
44f32dd2 53private:
54 virtual void StartOfDetectorCycle() {}; // empty
4e25ac79 55 virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray** list) ;
44f32dd2 56
57 // ESD QA
58 virtual void InitESDs() ;
59 virtual void MakeESDs(AliESDEvent *esd) ;
60
61 // Raw QA
62 virtual void InitRaws();
63 virtual void MakeRaws(AliRawReader* rawReader);
64
44ed7a66 65 // Digits QA
66 virtual void InitDigits();
6252ceeb 67 virtual void MakeDigits() {return;}
44ed7a66 68 virtual void MakeDigits(TTree *digTree);
69
44f32dd2 70 // RecPoints QA
71 virtual void InitRecPoints();
72 virtual void MakeRecPoints(TTree *recTree);
44ed7a66 73
be4f1702 74 virtual void LoadMaps();
75
1267cf3a 76 TH1F* CreateEventsHistCopy(const TH1F* hist, const Char_t* copyName);
77
be4f1702 78 AliTPCAltroMapping *fMapping[6]; //! Pointers to ALTRO mapping
57acd2d2 79 AliTPCdataQA** fTPCdataQA;//! TPC calibration object for making raw data QA
44f32dd2 80
1267cf3a 81 Int_t fRawMaxEvents; //! Max events for RAW QA event histograms
82 Int_t fRawEventsPerBin; //! Events per bin for RAW QA event histograms
83 Int_t fRawFirstTimeBin; //! First Time bin needed for RAW QA
84 Int_t fRawLastTimeBin; //! Last Time bin needed for RAW QA
85
44f32dd2 86 ClassDef(AliTPCQADataMakerRec,1) // TPC Rec Quality Assurance Data Maker
87};
88
89#endif // ALITPCQADATAMAKERREC_H