remoe duplicate QA initialisation and do ESD QA for same detectors as RecPoint QA
[u/mrichter/AliRoot.git] / MUON / AliMUONTrackerCalibratedDataMaker.h
CommitLineData
8741815f 1#ifndef ALIMUONTRACKERCALIBRATEDDATAMAKER_H
2#define ALIMUONTRACKERCALIBRATEDDATAMAKER_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5* See cxx source for full Copyright notice */
6
7// $Id$
8
9/// \ingroup graphics
10/// \class AliMUONTrackerCalibratedDataMaker
11/// \brief Creator of calibrated AliMUONVTrackerData from AliRawReader
12///
13// Author Laurent Aphecetche, Subatech
14
15#ifndef ALIMUONVTRACKERDATAMAKER_H
16# include "AliMUONVTrackerDataMaker.h"
17#endif
18#ifndef ROOT_TString
19# include "TString.h"
20#endif
21
22class AliRawReader;
23class AliMUONCalibrationData;
24class AliMUONDigitCalibrator;
25class AliMUONDigitMaker;
26class AliMUONVTrackerData;
27class AliMUONVStore;
28class AliMUONVDigitStore;
29
30class AliMUONTrackerCalibratedDataMaker : public AliMUONVTrackerDataMaker
31{
32public:
10eb3d17 33 AliMUONTrackerCalibratedDataMaker(AliRawReader* reader = 0x0,
34 const char* cdbpath=0x0,
35 const char* calibMode=0x0,
36 Bool_t histogram=kFALSE,
37 Double_t xmin=0.0,
38 Double_t xmax=4096.0);
8741815f 39 virtual ~AliMUONTrackerCalibratedDataMaker();
40
41 /// Whether we have a valid raw reader
42 Bool_t IsValid() const { return fRawReader != 0x0; }
43
44 /// Our data
45 AliMUONVTrackerData* Data() const { return fAccumulatedData; }
46
47 /// We can be run
48 virtual Bool_t IsRunnable() const { return kTRUE; }
49
50 /// Whether we are running or not
51 virtual Bool_t IsRunning() const { return fIsRunning; }
52
53 /// Set the running status
54 virtual void SetRunning(Bool_t flag) { fIsRunning = flag; }
55
56 Bool_t NextEvent();
57
58 void Print(Option_t* opt="") const;
59
60 void Rewind();
61
8741815f 62 /// Get our source URI
63 virtual TString Source() const { return fSource.Data(); }
64
65 /// Set our source URI
66 void SetSource(const char* source) { fSource = source; }
67
68 /// Get our digit store
69 AliMUONVDigitStore* DigitStore() const { return fDigitStore; }
70
71 /// Number of events seen
72 Int_t NumberOfEvents() const { return fNumberOfEvents; }
73
49419555 74 virtual Long64_t Merge(TCollection* list);
75
8741815f 76private:
77 /// Not implemented
78 AliMUONTrackerCalibratedDataMaker(const AliMUONTrackerCalibratedDataMaker& rhs);
79 /// Not implemented
80 AliMUONTrackerCalibratedDataMaker& operator=(const AliMUONTrackerCalibratedDataMaker& rhs);
81
82 Bool_t ConvertDigits();
83
84private:
49419555 85 AliRawReader* fRawReader; //!< reader of the data (owner)
86 AliMUONVTrackerData* fAccumulatedData; ///< data (owner)
8741815f 87 AliMUONVStore* fOneEventData; ///< data for one event (owner)
8741815f 88 TString fSource; ///< where the data comes from
89 Bool_t fIsRunning; ///< whether we are running or are paused
90 AliMUONDigitMaker* fDigitMaker; ///< digit maker
49419555 91 AliMUONDigitCalibrator* fDigitCalibrator; //!< digit calibrator (if calibrating data)
8741815f 92 AliMUONCalibrationData* fCalibrationData; ///< calibration data (if calibrating data)
93 AliMUONVDigitStore* fDigitStore; ///< digit store (if calibrating data)
94 TString fCDBPath; ///< OCDB path (if calibrating data)
95 Int_t fNumberOfEvents; ///< number of events seen
96 static Int_t fgkCounter; ///< to count the number of instances
97
49419555 98 ClassDef(AliMUONTrackerCalibratedDataMaker,2) // Producer of calibrated AliMUONVTrackerData from raw data
8741815f 99};
100
101#endif