new classes for resonance and V0 analysis (from R. Vernet)
[u/mrichter/AliRoot.git] / CORRFW / AliCFV0TopoCuts.h
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16
17 ///////////////////////////////////////////////////////////////////////////
18 //          ----   CORRECTION FRAMEWORK   ----
19 // Class to cut on V0 topology
20 //   -> support for :
21 //                    DCA between V0 daughters
22 //                    V0 daughter impact parameters wrt primary vertex
23 //                    cosine of V0 pointing angle
24 //
25 ///////////////////////////////////////////////////////////////////////////
26 // author : R. Vernet (renaud.vernet@cern.ch)
27 ///////////////////////////////////////////////////////////////////////////
28
29 #ifndef ALICFV0TOPOCUTS_H
30 #define ALICFV0TOPOCUTS_H
31
32 #include "AliCFCutBase.h"
33
34 class TObject;
35
36 class AliCFV0TopoCuts : public AliCFCutBase 
37 {
38  public :
39   AliCFV0TopoCuts () ;
40   AliCFV0TopoCuts (const Char_t* name, const Char_t* title) ;
41   AliCFV0TopoCuts (const AliCFV0TopoCuts& c) ;
42   AliCFV0TopoCuts& operator=(const AliCFV0TopoCuts& c) ;
43   virtual ~AliCFV0TopoCuts() { } ;
44   virtual Bool_t IsSelected(TObject* v0) ;
45
46   void   SetMaxDcaDaughters (Double32_t dca)  {fMaxDcaDaughters = dca;}
47   void   SetMinDcaNeg       (Double32_t dca)  {fMinDcaNeg = dca;}
48   void   SetMinDcaPos       (Double32_t dca)  {fMinDcaPos = dca;}
49   void   SetMinCosPointAngle(Double32_t cos)  {fMinCosP   = cos;}
50   
51  private :
52   Double32_t   fMaxDcaDaughters ; // max. dca between V0 daughters
53   Double32_t   fMinDcaNeg ;       // min impact parameter (aka dca to prim. vertex) of neg. daughter
54   Double32_t   fMinDcaPos ;       // min impact parameter (aka dca to prim. vertex) of pos. daughter
55   Double32_t   fMinCosP ;         // min cosine of pointing angle
56   
57   ClassDef(AliCFV0TopoCuts,0);
58 };
59
60 #endif