]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG4/AliNeutralMesonSelection.h
Increase speed of SDD raw data decoding (F.Prino)
[u/mrichter/AliRoot.git] / PWG4 / AliNeutralMesonSelection.h
index 73421fe9df06069922ab0a0f21695a0a1e83a5a2..ceaf3d37b64edb027995bf0b4cc42cfd0852e620 100644 (file)
@@ -4,29 +4,24 @@
  * See cxx source for full Copyright notice     */
 /* $Id$ */
 
-/* History of cvs commits:
- *
- * $Log$
- * Revision 1.2  2007/08/17 12:40:04  schutz
- * New analysis classes by Gustavo Conesa
- *
- * Revision 1.1.2.1  2007/07/26 10:32:09  schutz
- * new analysis classes in the the new analysis framework
- *
- *
- */
 //_________________________________________________________________________
 // Class that contains methods to select candidate pairs to neutral meson 
+// 2 main selections, invariant mass around pi0 (also any other mass),
+// apperture angle to distinguish from combinatorial.
+// There is a 3rd cut based on the gamma correlation on phi or pt.
 //-- Author: Gustavo Conesa (INFN-LNF)
 
 // --- ROOT system ---
 #include<TObject.h>
-#include <TArrayD.h>
+#include<TArrayD.h>
 
 class TLorentzVector ;
-class TParticle ;
 class TList ;
 class TH2F ;
+class Riostream ;
+
+//--- ANALYSIS system ---
+class AliLog ;
 
 class AliNeutralMesonSelection : public TObject {
 
@@ -37,8 +32,6 @@ class AliNeutralMesonSelection : public TObject {
   AliNeutralMesonSelection & operator = (const AliNeutralMesonSelection & g) ;//cpy assignment
   virtual ~AliNeutralMesonSelection() ; //virtual dtor
 
-  enum type_t {kSelectPhiMinPt, kSelectPhiPtRatio, kNoSelectPhiPt};
-
   TList * GetCreateOutputObjects();
   
   Double_t GetAngleMaxParam(Int_t i) const {return fAngleMaxParam.At(i) ; }
@@ -48,58 +41,34 @@ class AliNeutralMesonSelection : public TObject {
   Double_t GetInvMassMinCut() const {return fInvMassMinCut ; }
   void SetInvMassCutRange(Double_t invmassmin, Double_t invmassmax)
   {fInvMassMaxCut =invmassmax;  fInvMassMinCut =invmassmin;}   
-  
-  Double_t GetDeltaPhiMaxCut() const {return fDeltaPhiMaxCut ; }
-  Double_t GetDeltaPhiMinCut() const {return fDeltaPhiMinCut ; }
-  void SetDeltaPhiCutRange(Double_t phimin, Double_t phimax)
-  {fDeltaPhiMaxCut =phimax;  fDeltaPhiMinCut =phimin;}
-
-  Double_t GetRatioMaxCut() const {return fRatioMaxCut ; }
-  Double_t GetRatioMinCut() const {return fRatioMinCut ; }
-  void SetRatioCutRange(Double_t ratiomin, Double_t ratiomax)
-  {fRatioMaxCut = ratiomax;  fRatioMinCut = ratiomin;}
-
-  Float_t    GetMinPt() const {return fMinPt ; }
-  void SetMinPt(Float_t pt){fMinPt = pt; };
 
   Double_t GetMass() const {return fM ; }
   void SetMass(Double_t m) { fM =m ; }
-  
-  Int_t GetPhiPtSelection(){  return fSelect ; }
-  void SetPhiPtSelection(Int_t ana ){  fSelect = ana ; }
 
-  Bool_t AreNeutralMesonSelectionHistosKept() { return fKeepNeutralMesonHistos ; }
+  Bool_t AreNeutralMesonSelectionHistosKept() const { return fKeepNeutralMesonHistos ; }
   void KeepNeutralMesonSelectionHistos(Bool_t keep) { fKeepNeutralMesonHistos = keep ; }
 
   void InitParameters();       
-  Bool_t IsAngleInWindow(const Float_t angle, const Float_t e);
+  Bool_t IsAngleInWindow(const Float_t angle, const Float_t e) const ;
   void Print(const Option_t * opt) const;
 
-  Bool_t  CutPtPhi(Double_t ptg, Double_t phig, Double_t pt, Double_t phi) ;
-  Bool_t  SelectPair(TParticle * photon, TLorentzVector particlei,  TLorentzVector particlej)  ;
+  Bool_t  SelectPair(TLorentzVector particlei,  TLorentzVector particlej)  ;
   
   private:
-  Int_t fSelect; //Pair selection depends on analysis
   Double_t fM ; //mass of the neutral meson
   Double_t   fInvMassMaxCut ;  // Invariant Mass cut maximum
   Double_t   fInvMassMinCut ;  // Invariant Masscut minimun
   TArrayD    fAngleMaxParam ; //Max opening angle selection parameters
-  Double_t   fMinPt;       // Minimum pt 
-  Double_t   fDeltaPhiMaxCut ;      // 
-  Double_t   fDeltaPhiMinCut ;      // 
-  Double_t   fRatioMaxCut ;    // Leading particle/gamma Ratio cut maximum
-  Double_t   fRatioMinCut ;    // Leading particle/gamma Ratio cut minimum
+
   Bool_t  fKeepNeutralMesonHistos ; // Keep neutral meson selection histograms
 
   //Histograms
-  TH2F * fhAnglePairNoCut  ; 
-  TH2F * fhAnglePairCorrelationCut  ; 
-  TH2F * fhAnglePairOpeningAngleCut   ; 
-  TH2F * fhAnglePairAllCut   ; 
-  TH2F * fhInvMassPairNoCut    ; 
-  TH2F * fhInvMassPairCorrelationCut    ;
-  TH2F * fhInvMassPairOpeningAngleCut  ; 
-  TH2F * fhInvMassPairAllCut   ; 
+  TH2F * fhAnglePairNoCut  ;  //Aperture angle of decay photons, no cuts
+  TH2F * fhAnglePairOpeningAngleCut   ;  //Aperture angle of decay photons, cut on opening angle
+  TH2F * fhAnglePairAllCut   ;  //Aperture angle of decay photons, all cuts
+  TH2F * fhInvMassPairNoCut    ;  //Invariant mass of decay photons, no cuts
+  TH2F * fhInvMassPairOpeningAngleCut  ;  //Invariant mass of decay photons, cut on opening angle
+  TH2F * fhInvMassPairAllCut   ;  //Invariant mass of decay photons, all cuts
   
   ClassDef(AliNeutralMesonSelection,1)