#ifndef ALIMUONTRACKERDATAMAKER_H
#define ALIMUONTRACKERDATAMAKER_H
#ifndef ALIMUONVTRACKERDATAMAKER_H
# include "AliMUONVTrackerDataMaker.h"
#endif
#ifndef ROOT_TString
# include "TString.h"
#endif
class AliMUONRecoParam;
class AliMUONCalibrationData;
class AliMUONDigitCalibrator;
class AliMUONVStore;
class AliMUONVTrackerData;
class AliRawReader;
class AliMUONLogger;
class AliMUONTrackerDataMaker : public AliMUONVTrackerDataMaker
{
public:
AliMUONTrackerDataMaker(TRootIOCtor*);
AliMUONTrackerDataMaker(const AliMUONRecoParam* recoParam,
Int_t runNumber,
AliRawReader* rawReader,
const char* cdbPath,
const char* calibMode,
Bool_t histogram=kFALSE,
Double_t xmin=0.0,
Double_t xmax=4095.0);
AliMUONTrackerDataMaker(const AliMUONRecoParam* recoParam,
AliRawReader* rawReader,
const char* cdbPath,
const char* calibMode,
Bool_t histogram=kFALSE,
Double_t xmin=0.0,
Double_t xmax=4095.0);
AliMUONTrackerDataMaker(AliRawReader* rawReader, Bool_t histogram=kFALSE);
virtual ~AliMUONTrackerDataMaker();
Bool_t Add(const AliMUONTrackerDataMaker& other);
Bool_t IsValid() const { return fRawReader != 0x0; }
AliMUONVTrackerData* Data() const { return fAccumulatedData; }
void SetOwnerOfData(Bool_t flag) { fIsOwnerOfAccumulatedData = flag; }
Bool_t IsEventByEvent() const { return fIsEventByEvent; }
void SetEventByEvent(Bool_t flag) { fIsEventByEvent = flag; }
Bool_t IsRunnable() const { return IsValid(); }
Bool_t IsRunning() const { return fIsRunning; }
void SetRunning(Bool_t flag) { fIsRunning = flag; }
Bool_t ProcessEvent();
Bool_t NextEvent();
void Print(Option_t* opt="") const;
void Rewind();
TString Source() const { return fSource.Data(); }
void SetSource(const char* source) { fSource = source; }
Int_t NumberOfEvents() const { return fNumberOfEvents; }
Int_t NumberOfPhysicsEvents() const { return fNumberOfPhysicsEvents; }
Int_t NumberOfGoodPhysicsEvents() const { return fNumberOfGoodPhysicsEvents; }
Long64_t Merge(TCollection* li);
void SetRawReader(AliRawReader* rawReader);
void EnableErrorLogger(AliMUONLogger* logger) { fLogger = logger; }
Bool_t LastEventWasEmpty() const { return fLastEventWasEmpty; }
void SetTryRecover(Bool_t flag) { fTryRecover = flag; }
void SetEventRange(Int_t first, Int_t last) { fFirstEvent=first; fLastEvent=last; }
private:
AliMUONTrackerDataMaker(const AliMUONTrackerDataMaker& rhs);
AliMUONTrackerDataMaker& operator=(const AliMUONTrackerDataMaker& rhs);
void Ctor(const AliMUONRecoParam* param,
Int_t runNumber,
const char* calibMode,
Bool_t histogram,
Double_t xmin=0.0,
Double_t xmax=4095.0);
private:
AliRawReader* fRawReader;
AliMUONVTrackerData* fAccumulatedData;
Bool_t fIsOwnerOfAccumulatedData;
AliMUONVStore* fOneEventData;
AliMUONDigitCalibrator* fDigitCalibrator;
AliMUONCalibrationData* fCalibrationData;
TString fSource;
TString fOCDBPath;
Int_t fNumberOfEvents;
Int_t fRunNumber;
Bool_t fIsRunning;
Bool_t fIsOwnerOfRawReader;
Bool_t fIsEventByEvent;
static Int_t fgkCounter;
AliMUONLogger* fLogger;
Bool_t fLastEventWasEmpty;
Int_t fNumberOfPhysicsEvents;
Int_t fNumberOfGoodPhysicsEvents;
Bool_t fTryRecover;
Int_t fFirstEvent;
Int_t fLastEvent;
ClassDef(AliMUONTrackerDataMaker,5)
};
#endif
AliMUONTrackerDataMaker.h:1 AliMUONTrackerDataMaker.h:2 AliMUONTrackerDataMaker.h:3 AliMUONTrackerDataMaker.h:4 AliMUONTrackerDataMaker.h:5 AliMUONTrackerDataMaker.h:6 AliMUONTrackerDataMaker.h:7 AliMUONTrackerDataMaker.h:8 AliMUONTrackerDataMaker.h:9 AliMUONTrackerDataMaker.h:10 AliMUONTrackerDataMaker.h:11 AliMUONTrackerDataMaker.h:12 AliMUONTrackerDataMaker.h:13 AliMUONTrackerDataMaker.h:14 AliMUONTrackerDataMaker.h:15 AliMUONTrackerDataMaker.h:16 AliMUONTrackerDataMaker.h:17 AliMUONTrackerDataMaker.h:18 AliMUONTrackerDataMaker.h:19 AliMUONTrackerDataMaker.h:20 AliMUONTrackerDataMaker.h:21 AliMUONTrackerDataMaker.h:22 AliMUONTrackerDataMaker.h:23 AliMUONTrackerDataMaker.h:24 AliMUONTrackerDataMaker.h:25 AliMUONTrackerDataMaker.h:26 AliMUONTrackerDataMaker.h:27 AliMUONTrackerDataMaker.h:28 AliMUONTrackerDataMaker.h:29 AliMUONTrackerDataMaker.h:30 AliMUONTrackerDataMaker.h:31 AliMUONTrackerDataMaker.h:32 AliMUONTrackerDataMaker.h:33 AliMUONTrackerDataMaker.h:34 AliMUONTrackerDataMaker.h:35 AliMUONTrackerDataMaker.h:36 AliMUONTrackerDataMaker.h:37 AliMUONTrackerDataMaker.h:38 AliMUONTrackerDataMaker.h:39 AliMUONTrackerDataMaker.h:40 AliMUONTrackerDataMaker.h:41 AliMUONTrackerDataMaker.h:42 AliMUONTrackerDataMaker.h:43 AliMUONTrackerDataMaker.h:44 AliMUONTrackerDataMaker.h:45 AliMUONTrackerDataMaker.h:46 AliMUONTrackerDataMaker.h:47 AliMUONTrackerDataMaker.h:48 AliMUONTrackerDataMaker.h:49 AliMUONTrackerDataMaker.h:50 AliMUONTrackerDataMaker.h:51 AliMUONTrackerDataMaker.h:52 AliMUONTrackerDataMaker.h:53 AliMUONTrackerDataMaker.h:54 AliMUONTrackerDataMaker.h:55 AliMUONTrackerDataMaker.h:56 AliMUONTrackerDataMaker.h:57 AliMUONTrackerDataMaker.h:58 AliMUONTrackerDataMaker.h:59 AliMUONTrackerDataMaker.h:60 AliMUONTrackerDataMaker.h:61 AliMUONTrackerDataMaker.h:62 AliMUONTrackerDataMaker.h:63 AliMUONTrackerDataMaker.h:64 AliMUONTrackerDataMaker.h:65 AliMUONTrackerDataMaker.h:66 AliMUONTrackerDataMaker.h:67 AliMUONTrackerDataMaker.h:68 AliMUONTrackerDataMaker.h:69 AliMUONTrackerDataMaker.h:70 AliMUONTrackerDataMaker.h:71 AliMUONTrackerDataMaker.h:72 AliMUONTrackerDataMaker.h:73 AliMUONTrackerDataMaker.h:74 AliMUONTrackerDataMaker.h:75 AliMUONTrackerDataMaker.h:76 AliMUONTrackerDataMaker.h:77 AliMUONTrackerDataMaker.h:78 AliMUONTrackerDataMaker.h:79 AliMUONTrackerDataMaker.h:80 AliMUONTrackerDataMaker.h:81 AliMUONTrackerDataMaker.h:82 AliMUONTrackerDataMaker.h:83 AliMUONTrackerDataMaker.h:84 AliMUONTrackerDataMaker.h:85 AliMUONTrackerDataMaker.h:86 AliMUONTrackerDataMaker.h:87 AliMUONTrackerDataMaker.h:88 AliMUONTrackerDataMaker.h:89 AliMUONTrackerDataMaker.h:90 AliMUONTrackerDataMaker.h:91 AliMUONTrackerDataMaker.h:92 AliMUONTrackerDataMaker.h:93 AliMUONTrackerDataMaker.h:94 AliMUONTrackerDataMaker.h:95 AliMUONTrackerDataMaker.h:96 AliMUONTrackerDataMaker.h:97 AliMUONTrackerDataMaker.h:98 AliMUONTrackerDataMaker.h:99 AliMUONTrackerDataMaker.h:100 AliMUONTrackerDataMaker.h:101 AliMUONTrackerDataMaker.h:102 AliMUONTrackerDataMaker.h:103 AliMUONTrackerDataMaker.h:104 AliMUONTrackerDataMaker.h:105 AliMUONTrackerDataMaker.h:106 AliMUONTrackerDataMaker.h:107 AliMUONTrackerDataMaker.h:108 AliMUONTrackerDataMaker.h:109 AliMUONTrackerDataMaker.h:110 AliMUONTrackerDataMaker.h:111 AliMUONTrackerDataMaker.h:112 AliMUONTrackerDataMaker.h:113 AliMUONTrackerDataMaker.h:114 AliMUONTrackerDataMaker.h:115 AliMUONTrackerDataMaker.h:116 AliMUONTrackerDataMaker.h:117 AliMUONTrackerDataMaker.h:118 AliMUONTrackerDataMaker.h:119 AliMUONTrackerDataMaker.h:120 AliMUONTrackerDataMaker.h:121 AliMUONTrackerDataMaker.h:122 AliMUONTrackerDataMaker.h:123 AliMUONTrackerDataMaker.h:124 AliMUONTrackerDataMaker.h:125 AliMUONTrackerDataMaker.h:126 AliMUONTrackerDataMaker.h:127 AliMUONTrackerDataMaker.h:128 AliMUONTrackerDataMaker.h:129 AliMUONTrackerDataMaker.h:130 AliMUONTrackerDataMaker.h:131 AliMUONTrackerDataMaker.h:132 AliMUONTrackerDataMaker.h:133 AliMUONTrackerDataMaker.h:134 AliMUONTrackerDataMaker.h:135 AliMUONTrackerDataMaker.h:136 AliMUONTrackerDataMaker.h:137 AliMUONTrackerDataMaker.h:138 AliMUONTrackerDataMaker.h:139 AliMUONTrackerDataMaker.h:140 AliMUONTrackerDataMaker.h:141 AliMUONTrackerDataMaker.h:142 AliMUONTrackerDataMaker.h:143 AliMUONTrackerDataMaker.h:144 AliMUONTrackerDataMaker.h:145 AliMUONTrackerDataMaker.h:146 AliMUONTrackerDataMaker.h:147 AliMUONTrackerDataMaker.h:148 AliMUONTrackerDataMaker.h:149 AliMUONTrackerDataMaker.h:150 AliMUONTrackerDataMaker.h:151 AliMUONTrackerDataMaker.h:152 AliMUONTrackerDataMaker.h:153 AliMUONTrackerDataMaker.h:154 AliMUONTrackerDataMaker.h:155 AliMUONTrackerDataMaker.h:156 AliMUONTrackerDataMaker.h:157 AliMUONTrackerDataMaker.h:158 AliMUONTrackerDataMaker.h:159 AliMUONTrackerDataMaker.h:160