]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG/CaloTrackCorrBase/AliCaloTrackReader.h
avoid string comparisons; avoid passing TLorentzVectors; avoid declaring TLorentzVect...
[u/mrichter/AliRoot.git] / PWG / CaloTrackCorrBase / AliCaloTrackReader.h
index cd89f3928ebd7d6600325e2ddc2f235f8078e298..30a75a6bd852e2b5230e0020ed9a48597a3bdaae 100755 (executable)
@@ -98,6 +98,9 @@ public:
   // Clusters/Tracks arrays filtering/filling methods and switchs 
   //------------------------------------------------------------
   
+  // detector identificator enum, used here and in AliAnaCaloTrackBaseClass and derived classes
+  enum detector {kEMCAL = 0, kPHOS = 1, kCTS = 2, kDCAL = 3, kDCALPHOS = 4 };
+
   // Minimum pt setters and getters
   
   Float_t          GetEMCALPtMin()                   const { return fEMCALPtMin            ; }
@@ -192,6 +195,10 @@ public:
   void             SwitchOnEMCAL()                         { fFillEMCAL = kTRUE            ; }
   void             SwitchOffEMCAL()                        { fFillEMCAL = kFALSE           ; }
 
+  Bool_t           IsDCALSwitchedOn()                const { return fFillDCAL              ; }
+  void             SwitchOnDCAL()                          { fFillDCAL = kTRUE             ; }
+  void             SwitchOffDCAL()                         { fFillDCAL = kFALSE            ; }
+  
   Bool_t           IsPHOSSwitchedOn()                const { return fFillPHOS              ; }
   void             SwitchOnPHOS()                          { fFillPHOS = kTRUE             ; }
   void             SwitchOffPHOS()                         { fFillPHOS = kFALSE            ; }
@@ -236,6 +243,7 @@ public:
   
   virtual TObjArray*     GetCTSTracks()              const { return fCTSTracks              ; }
   virtual TObjArray*     GetEMCALClusters()          const { return fEMCALClusters          ; }
+  virtual TObjArray*     GetDCALClusters()           const { return fDCALClusters           ; }
   virtual TObjArray*     GetPHOSClusters()           const { return fPHOSClusters           ; }
   virtual AliVCaloCells* GetEMCALCells()             const { return fEMCALCells             ; }
   virtual AliVCaloCells* GetPHOSCells()              const { return fPHOSCells              ; }
@@ -658,6 +666,7 @@ public:
   TList          * fAODBranchList ;            //-> List with AOD branches created and needed in analysis
   TObjArray      * fCTSTracks ;                //-> temporal array with tracks
   TObjArray      * fEMCALClusters ;            //-> temporal array with EMCAL CaloClusters
+  TObjArray      * fDCALClusters ;             //-> temporal array with DCAL CaloClusters, not needed in the normal case, use just EMCal array with DCal limits
   TObjArray      * fPHOSClusters ;             //-> temporal array with PHOS  CaloClusters
   AliVCaloCells  * fEMCALCells ;               //! temporal array with EMCAL CaloCells
   AliVCaloCells  * fPHOSCells ;                //! temporal array with PHOS  CaloCells
@@ -668,6 +677,7 @@ public:
 
   Bool_t           fFillCTS;                   // use data from CTS
   Bool_t           fFillEMCAL;                 // use data from EMCAL
+  Bool_t           fFillDCAL;                  // use data from DCAL, not needed in the normal case, use just EMCal array with DCal limits
   Bool_t           fFillPHOS;                  // use data from PHOS
   Bool_t           fFillEMCALCells;            // use data from EMCAL
   Bool_t           fFillPHOSCells;             // use data from PHOS
@@ -803,6 +813,8 @@ public:
 
   Bool_t           fRejectEMCalTriggerEventsWith2Tresholds; // Reject events EG2 also triggered by EG1 or EJ2 also triggered by EJ1
   
+  TLorentzVector   fMomentum;                    //! Temporal TLorentzVector container, avoid declaration of  TLorentzVectors per event
+  
   AliCaloTrackReader(              const AliCaloTrackReader & r) ; // cpy ctor
   AliCaloTrackReader & operator = (const AliCaloTrackReader & r) ; // cpy assignment