Event Cut developed; Spacial event move implemented; and few others
[u/mrichter/AliRoot.git] / ANALYSIS / AliBaseEventCut.h
index d9923a3f1a4df58fb215c4da38fe3ee4a82a643a..42010074ba443419dada141651cecafff727b329 100644 (file)
 
 class AliAOD;
 
+enum AliEventCutProperty
+ {
+   kPrimVertexXCut,
+   kPrimVertexYCut,
+   kPrimVertexZCut,
+   kNChargedCut
+ };
+
 class AliBaseEventCut: public TObject
 {
   public: 
     AliBaseEventCut();
+    AliBaseEventCut(Double_t min,Double_t max);
     virtual ~AliBaseEventCut(){}
     
     virtual Bool_t Pass(AliAOD* aod) const;//returns kTRUE if rejected
@@ -31,4 +40,68 @@ class AliBaseEventCut: public TObject
     ClassDef(AliBaseEventCut,1)
 };
 
+/************************************************************/
+
+class AliPrimVertexXCut: public AliBaseEventCut
+{
+ public: 
+   AliPrimVertexXCut(){}
+   AliPrimVertexXCut(Double_t min,Double_t max):AliBaseEventCut(min,max){}
+   virtual ~AliPrimVertexXCut(){}
+ protected:
+   Double_t GetValue(AliAOD* aod) const;
+   
+ private:
+   ClassDef(AliPrimVertexXCut,1)
+};
+/************************************************************/
+
+class AliPrimVertexYCut: public AliBaseEventCut
+{
+ public: 
+   AliPrimVertexYCut(){}
+   AliPrimVertexYCut(Double_t min,Double_t max):AliBaseEventCut(min,max){}
+   virtual ~AliPrimVertexYCut(){}
+   
+ protected:
+   Double_t GetValue(AliAOD* aod) const;
+   
+ private:
+   ClassDef(AliPrimVertexYCut,1)
+};
+/************************************************************/
+
+class AliPrimVertexZCut: public AliBaseEventCut
+{
+ public: 
+   AliPrimVertexZCut(){}
+   AliPrimVertexZCut(Double_t min,Double_t max):AliBaseEventCut(min,max){}
+   virtual ~AliPrimVertexZCut(){}
+ protected:
+   Double_t GetValue(AliAOD* aod) const;
+   
+ private:
+   ClassDef(AliPrimVertexZCut,1)
+};
+
+
+/************************************************************/
+
+class AliNChargedCut: public AliBaseEventCut
+{
+ public: 
+   AliNChargedCut(){}
+   AliNChargedCut(Double_t min, Double_t max, Double_t etamin = -10.0, Double_t etamax = 10.0):
+       AliBaseEventCut(min,max),fEtaMin(etamin),fEtaMax(etamax){}
+   virtual ~AliNChargedCut(){}
+ protected:
+   Double_t GetValue(AliAOD* aod) const;
+   Double_t fEtaMin;//Defines max of eta range where mult is caclulated
+   Double_t fEtaMax;//Defines min of eta range where mult is caclulated
+   
+ private:
+   ClassDef(AliNChargedCut,1)
+};
+
+
 #endif