ADC gate simulated + changes in reconstruction
[u/mrichter/AliRoot.git] / ZDC / AliZDCReconstructor.h
CommitLineData
8309c1ab 1#ifndef ALIZDCRECONSTRUCTOR_H
2#define ALIZDCRECONSTRUCTOR_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8///////////////////////////////////////////////////////////////////////////////
9// //
10// class for ZDC reconstruction //
11// //
12///////////////////////////////////////////////////////////////////////////////
13
14#include "AliReconstructor.h"
48642b09 15#include "AliCDBManager.h"
16#include "AliCDBStorage.h"
6024ec85 17#include "AliZDCPedestals.h"
18#include "AliZDCCalib.h"
7bff3766 19#include "AliZDCRecoParam.h"
20#include "AliZDCRecoParampp.h"
21#include "AliZDCRecoParamPbPb.h"
70f04f6d 22#include "AliLog.h"
8309c1ab 23
8309c1ab 24class AliLoader;
25
8309c1ab 26class AliZDCReconstructor: public AliReconstructor {
27public:
28 AliZDCReconstructor();
29 virtual ~AliZDCReconstructor();
30
a4cab348 31 virtual Bool_t HasDigitConversion() const {return kFALSE;};
70f04f6d 32
33 virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const;
34 virtual void Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
35
70f04f6d 36 virtual void FillESD(TTree* /*digitsTree*/, TTree* clustersTree, AliESDEvent* esd) const
37 {FillZDCintoESD(clustersTree,esd);}
38 virtual void FillESD(AliRawReader* /*rawReader*/, TTree* clustersTree, AliESDEvent* esd) const
39 {FillZDCintoESD(clustersTree,esd);}
fd9afd60 40
7bff3766 41 // parameter settings for reconstruction
fd9afd60 42 void SetRecoMode();
7bff3766 43 static void SetRecoParam(AliZDCRecoParam * param){fRecoParam = param;}
fd9afd60 44
45 Int_t GetRecoMode() {return fRecoMode;}
7bff3766 46 static const AliZDCRecoParam* GetRecoParam(){return fRecoParam;}
47
48 // OCDB objects for reconstruction
78d18275 49 AliCDBStorage *SetStorage(const char* uri);
6024ec85 50 AliZDCPedestals *GetPedData() const;
51 AliZDCCalib *GetECalibData() const;
646f1679 52
8309c1ab 53private:
cc2abffd 54 AliZDCReconstructor(const AliZDCReconstructor&);
55 AliZDCReconstructor& operator =(const AliZDCReconstructor&);
8309c1ab 56
7bff3766 57 void ReconstructEventpp(TTree *clustersTree,
58 Float_t* ZN1ADCCorr, Float_t* ZP1ADCCorr, Float_t* ZN2ADCCorr, Float_t* ZP2ADCCorr,
59 Float_t* ZEM1ADCCorr, Float_t* ZEM2ADCCorr, Float_t* PMRef1, Float_t* PMRef2) const;
60 void ReconstructEventPbPb(TTree *clustersTree,
c35ed519 61 Float_t* ZN1ADCCorr, Float_t* ZP1ADCCorr, Float_t* ZN2ADCCorr, Float_t* ZP2ADCCorr,
62 Float_t* ZEM1ADCCorr, Float_t* ZEM2ADCCorr, Float_t* PMRef1, Float_t* PMRef2) const;
70f04f6d 63 void FillZDCintoESD(TTree *clustersTree, AliESDEvent*esd) const;
8309c1ab 64
7bff3766 65 static AliZDCRecoParam *fRecoParam; // reconstruction parameters
66
6024ec85 67 AliZDCPedestals *fPedData; //! pedestal calibration data
68 AliZDCCalib *fECalibData; //! energy and equalization calibration data
fd9afd60 69 Int_t fRecoMode; // =0->p-p, =1->A-A
70 Float_t fBeamEnergy; // beam energy
8309c1ab 71
fd9afd60 72 ClassDef(AliZDCReconstructor, 5) // class for the ZDC reconstruction
8309c1ab 73};
74
75#endif