1 #ifndef ALITPCCALIBBASE_H
2 #define ALITPCCALIBBASE_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
12 #include "TObjString.h"
17 class TTreeSRedirector;
23 class AliTPCcalibBase:public TNamed {
26 AliTPCcalibBase(const char * name, const char * title);
27 AliTPCcalibBase(const AliTPCcalibBase&calib);
28 AliTPCcalibBase &operator=(const AliTPCcalibBase&calib);
29 virtual ~AliTPCcalibBase();
30 virtual void Process(AliESDEvent *event){ fCurrentEvent = event; return;}
31 virtual void Process(AliTPCseed *track){fCurrentSeed = track; return;}
32 virtual void Process(AliESDtrack *track, Int_t /*runNo=-1*/){fCurrentTrack=track; return;}
33 virtual Long64_t Merge(TCollection */*li*/){return 0;}
34 virtual void Analyze(){return;}
35 virtual void Terminate();
36 virtual void UpdateEventInfo(AliESDEvent * event);
37 virtual Bool_t AcceptTrigger();
38 virtual void SetTriggerMask(Int_t accept, Int_t reject, Bool_t rejectLaser){fTriggerMaskAccept=accept;fTriggerMaskReject=reject; fRejectLaser = rejectLaser;}
41 // debug streamer support
42 TTreeSRedirector *GetDebugStreamer();
43 void SetStreamLevel(Int_t streamLevel){fStreamLevel=streamLevel;}
44 void SetDebugLevel(Int_t level) {fDebugLevel = level;}
45 Int_t GetStreamLevel() const {return fStreamLevel;}
46 Int_t GetDebugLevel() const {return fDebugLevel;}
47 virtual void RegisterDebugOutput(const char *path);
48 static Bool_t HasLaser(AliESDEvent *event);
49 static TGraphErrors * FitSlices(THnSparse *h, Int_t axisDim1, Int_t axisDim2, Int_t minEntries, Int_t nmaxBin, Float_t fracLow=0.1, Float_t fracUp=0.9, Bool_t useMedian=kFALSE, TTreeSRedirector *cstream=0, Int_t ival=1);
50 static void BinLogX(THnSparse *h, Int_t axisDim);
51 static void BinLogX(TH1 *h);
53 TTreeSRedirector *fDebugStreamer; //! debug streamer
54 Int_t fStreamLevel; // debug stream level
55 Int_t fRun; //! current Run number
56 Int_t fEvent; //! current Event number
57 Int_t fTime; //! current Time
58 ULong64_t fTrigger; //! current trigger mask
59 Float_t fMagF; //! current magnetic field
60 Int_t fTriggerMaskReject; //trigger mask - non accept trigger
61 Int_t fTriggerMaskAccept; //trigger mask - accept
62 Bool_t fHasLaser; //flag the laser is overlayed with given event
63 Bool_t fRejectLaser; //flag- reject laser
64 TObjString fTriggerClass; // trigger class
65 AliESDEvent *fCurrentEvent; //! current event
66 AliESDtrack *fCurrentTrack; //! current esd track
67 AliTPCseed *fCurrentSeed; //! current seed
69 Int_t fDebugLevel; // debug level
71 ClassDef(AliTPCcalibBase,1)