]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - JETAN/AliJetAODReader.h
fixing some minor coverty reports
[u/mrichter/AliRoot.git] / JETAN / AliJetAODReader.h
index 889f15a3c8990fb0c8a88d8c2d6ed87486b3d214..9b5b708f9f9d3e176fd9d29c4664d9929bab78ff 100644 (file)
 //---------------------------------------------------------------------
 
 #include "AliJetReader.h"
+#include "AliJetUnitArray.h"
+#include "AliJetGrid.h"
+class AliJetUnitArray;
+class AliJetDummyGeo;
+class AliJetHadronCorrection;
 class AliJetAODReaderHeader;
 class AliJetReaderHeader;
+class AliAODMCParticle;
 class AliAODEvent;
 class TRefArray;
 
@@ -25,20 +31,65 @@ class AliJetAODReader : public AliJetReader
   TRefArray*   GetReferences() const {return fRef;}
 
   Bool_t FillMomentumArray(); 
+  static Bool_t AcceptAODMCParticle(AliAODMCParticle *mcP,Short_t flag);
+
   void   OpenInputFiles();
   void   ConnectTree(TTree* tree, TObject* data);
-  void   SetInputEvent(TObject* /*esd*/, TObject* aod, TObject* /*mc*/) {fAOD = (AliAODEvent*) aod;}
+  void   InitUnitArray();
+  void   CreateTasks(TChain* tree);
+  Bool_t ExecTasks(Bool_t procid, TRefArray* refArray);
+
+  void SetInputEvent(const TObject* /*esd*/, const TObject* aod, const TObject* /*mc*/) {fAOD = (AliAODEvent*) aod;}
+  void SetTPCGrid(AliJetGrid *grid)   {fTpcGrid = grid;}
+  void SetEMCalGrid(AliJetGrid *grid) {fEmcalGrid = grid;}
+  // Correction of hadronic energy
+  void SetHadronCorrection(const Int_t flag = 1) {fHCorrection = flag;}
+  void SetHadronCorrector(AliJetHadronCorrection* corr) {fHadCorr = corr;}
+  void SetApplyElectronCorrection(const Int_t flag = 1) {fECorrection = flag; fEFlag=kTRUE;}
+  void SetApplyMIPCorrection(const Bool_t val);
+  void SetApplyFractionHadronicCorrection(Bool_t val);
+  void SetFractionHadronicCorrection(Double_t val);
+
+
  private:
+  Bool_t SetEMCALGeometry();
+  Bool_t FillMomentumArrayMC();
+
+
+  void InitParameters();
   AliJetAODReader(const AliJetAODReader &det);
   AliJetAODReader &operator=(const AliJetAODReader &det);
 
  private:
-  TChain                     *fChain;  //! chain for reconstructed tracks
   AliAODEvent                *fAOD;    //! pointer to aod
   TRefArray                  *fRef;    //! pointer to array of references to tracks
   Int_t                       fDebug;  // Debug option
   Int_t                       fOpt;    // Detector to be used for jet reconstruction
-  ClassDef(AliJetAODReader,1)
+  AliJetDummyGeo             *fGeom;             //! EMCAL Geometry
+
+  AliJetHadronCorrection     *fHadCorr;          //! Pointer to Hadron Correction Object
+  AliJetGrid                 *fTpcGrid;          //! Pointer to grid object
+  AliJetGrid                 *fEmcalGrid;        //! Pointer to grid object
+  AliJetGrid                 *fGrid0;            // Pointer to grid object
+  AliJetGrid                 *fGrid1;            // Pointer to grid object
+  AliJetGrid                 *fGrid2;            // Pointer to grid object
+  AliJetGrid                 *fGrid3;            // Pointer to grid object
+  AliJetGrid                 *fGrid4;            // Pointer to grid object
+  Int_t                       fApplyElectronCorrection;      // Electron correction flag
+  Bool_t                      fApplyMIPCorrection; // Apply MIP or not ? Exclusive with fApplyFractionHadronicCorrection
+  Bool_t                      fApplyFractionHadronicCorrection; // Another type of charged particle energy deposition in EMC
+  Double_t                    fFractionHadronicCorrection; // Fraction of momentum of the TPC track to be subtracted from EMC tower
+  Int_t                       fNumUnits;         // Number of units in the unit object array
+                                                 // (same as num towers in EMCAL)
+  Float_t                     fMass;             // Particle mass
+  Int_t                       fSign;             // Particle sign
+  Int_t                       fNIn;              // Number of Array filled in UnitArray
+  Bool_t                      fDZ;               // Use or not dead zones
+  Int_t                       fNeta;             // Number of bins in eta of tpc grid
+  Int_t                       fNphi;             // Number of bins in phi of tpc grid
+  TRefArray                  *fRefArray;         // array of digit position and energy
+  Bool_t                      fProcId;           // Bool_t for TProcessID synchronization
+  ClassDef(AliJetAODReader,2)
 };
  
 #endif