]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ZDC/AliZDCReconstructor.h
Added missing files
[u/mrichter/AliRoot.git] / ZDC / AliZDCReconstructor.h
index 771c58e436686b8a401821dcd1634f3f68970d8f..e1e56f3107d42985176844c604653fc23018fffa 100644 (file)
 ///////////////////////////////////////////////////////////////////////////////
 
 #include "AliReconstructor.h"
+#include "AliCDBManager.h"
+#include "AliCDBStorage.h"
+#include "AliZDCPedestals.h"
+#include "AliZDCCalib.h"
+#include "AliZDCRecoParam.h"
+#include "AliZDCRecoParampp.h"
+#include "AliZDCRecoParamPbPb.h"
+#include "AliLog.h"
 
-class TF1;
 class AliLoader;
 
-
 class AliZDCReconstructor: public AliReconstructor {
 public:
   AliZDCReconstructor();
   virtual ~AliZDCReconstructor();
 
-  virtual void         Reconstruct(AliRunLoader* runLoader) const;
-  virtual void         Reconstruct(AliRunLoader* runLoader, 
-                                   AliRawReader* rawReader) const;
-  virtual void         Reconstruct(TTree* digitsTree, TTree* clustersTree) const { AliReconstructor::Reconstruct(digitsTree,clustersTree);}
-  virtual void         Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const {AliReconstructor::Reconstruct(rawReader,clustersTree);}
-  virtual void         FillESD(AliRunLoader* runLoader, AliESD* esd) const;
-  virtual void         FillESD(TTree* digitsTree, TTree* clustersTree, 
-                              AliESD* esd) const {
-    AliReconstructor::FillESD(digitsTree,clustersTree,esd);
-  }
-  virtual void         FillESD(AliRawReader* rawReader, TTree* clustersTree, 
-                              AliESD* esd) const {
-    AliReconstructor::FillESD(rawReader,clustersTree,esd);
-  }
-  virtual void         FillESD(AliRunLoader* runLoader, 
-                              AliRawReader* rawReader, AliESD* esd) const {
-    AliReconstructor::FillESD(runLoader,rawReader,esd);
-  }
+  virtual Bool_t HasDigitConversion() const {return kFALSE;};
+
+  virtual void Reconstruct(TTree* digitsTree, TTree* clustersTree) const; 
+  virtual void Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const;
+
+  virtual void FillESD(TTree* /*digitsTree*/, TTree* clustersTree, AliESDEvent* esd) const 
+               {FillZDCintoESD(clustersTree,esd);}
+  virtual void FillESD(AliRawReader* /*rawReader*/, TTree* clustersTree, AliESDEvent* esd) const 
+               {FillZDCintoESD(clustersTree,esd);}
 
+  // parameter settings for reconstruction
+  void SetRecoMode();
+  void SetRecoMode(Int_t recoMode, Float_t beamEnergy) 
+          {fRecoMode=recoMode; fBeamEnergy=beamEnergy;}
+  static void SetRecoParam(AliZDCRecoParam * param){fRecoParam = param;}
+  
+  Int_t   GetRecoMode() {return fRecoMode;}
+  Float_t GetBeamEnergy() {return fBeamEnergy;}
+  
+  static const AliZDCRecoParam* GetRecoParam(){return fRecoParam;}
+
+  void  SetPedSubMode(Int_t pedsubMode) {fPedSubMode=pedsubMode;}
+  Int_t GetPedSubMode() {return fPedSubMode;}
+  
+  // OCDB objects for reconstruction
+  AliCDBStorage   *SetStorage(const char* uri);
+  AliZDCPedestals *GetPedData() const; 
+  AliZDCCalib     *GetECalibData() const; 
+  
 private:
-  AliZDCReconstructor(const AliZDCReconstructor& reconstructor);
-  AliZDCReconstructor& operator = (const AliZDCReconstructor& reconstructor);
-
-  void                 ReconstructEvent(AliLoader* loader, Int_t znraw,
-                                        Int_t zpraw, Int_t zemraw) const;
-
-  TF1*   fZNCen;     //! Nspectator n true vs. EZN
-  TF1*   fZNPer;     //! Nspectator n true vs. EZN
-  TF1*   fZPCen;     //! Nspectator p true vs. EZP
-  TF1*   fZPPer;     //! Nspectator p true vs. EZP
-  TF1*   fZDCCen;    //! Nspectators true vs. EZDC
-  TF1*   fZDCPer;    //! Nspectators true vs. EZDC
-  TF1*   fbCen;      //! b vs. EZDC
-  TF1*   fbPer;      //! b vs. EZDC
-  TF1*   fZEMn;      //! Nspectators n from ZEM energy
-  TF1*   fZEMp;      //! Nspectators p from ZEM energy
-  TF1*   fZEMsp;     //! Nspectators from ZEM energy
-  TF1*   fZEMb;      //! b from ZEM energy
-
-  ClassDef(AliZDCReconstructor, 0)   // class for the ZDC reconstruction
+  AliZDCReconstructor(const AliZDCReconstructor&);
+  AliZDCReconstructor& operator =(const AliZDCReconstructor&);
+
+  void   ReconstructEventpp(TTree *clustersTree, 
+           Float_t* ZN1ADCCorr, Float_t* ZP1ADCCorr, Float_t* ZN2ADCCorr, Float_t* ZP2ADCCorr,
+           Float_t* ZEM1ADCCorr, Float_t* ZEM2ADCCorr, Float_t* PMRef1, Float_t* PMRef2) const;
+  void   ReconstructEventPbPb(TTree *clustersTree, 
+           Float_t* ZN1ADCCorr, Float_t* ZP1ADCCorr, Float_t* ZN2ADCCorr, Float_t* ZP2ADCCorr,
+           Float_t* ZEM1ADCCorr, Float_t* ZEM2ADCCorr, Float_t* PMRef1, Float_t* PMRef2) const;
+  void   FillZDCintoESD(TTree *clustersTree, AliESDEvent*esd) const;
+
+  static AliZDCRecoParam *fRecoParam; // reconstruction parameters
+
+  AliZDCPedestals *fPedData;   //! pedestal calibration data
+  AliZDCCalib     *fECalibData; //! energy and equalization calibration data
+  Int_t           fRecoMode;   // =0->p-p, =1->A-A
+  Float_t         fBeamEnergy; // beam energy
+
+  Int_t           fPedSubMode; // =0->mean values, =1->from correlations
+
+  ClassDef(AliZDCReconstructor, 6)   // class for the ZDC reconstruction
 };
 
 #endif