end-of-line normalization
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / AliCFVertexingHF3Prong.h
1 #ifndef ALICFVERTEXINGHF3PRONG_H
2 #define ALICFVERTEXINGHF3PRONG_H
3
4 /* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */
8
9 ///////////////////////////////////////////////////////////////////
10 //                                                               //
11 // Class to compute variables for correction framework           //  
12 // for 3-body decays of D mesons (D+, Ds, Lc)                    //
13 // in bins of cut variables                                      //
14 // Origin:       Francesco Prino (prino@to.infn.it)              //
15 //               Renu Bala       (bala@to.infn.it)               //
16 //                                                               //
17 ///////////////////////////////////////////////////////////////////
18
19 #include "AliCFVertexingHF.h"
20 #include "AliAODRecoDecayHF.h"
21 #include "AliAODRecoDecayHF3Prong.h"
22
23 class AliAODMCParticle;
24 class TClonesArray;
25 class AliCFVertexingHF;
26 class AliESDtrack;
27 class TDatabasePDG;
28
29 class AliCFVertexingHF3Prong : public AliCFVertexingHF{
30         public:
31                 
32   AliCFVertexingHF3Prong(Int_t decay,UInt_t resonantDecay);
33   AliCFVertexingHF3Prong(Int_t decay);
34   AliCFVertexingHF3Prong(TClonesArray *mcArray, UShort_t originDselection, Int_t decay);  
35   AliCFVertexingHF3Prong(TClonesArray *mcArray, UShort_t originDselection, Int_t decay,UInt_t resonantDecay);  
36   virtual ~AliCFVertexingHF3Prong(){};
37   
38   
39   
40   Bool_t GetGeneratedValuesFromMCParticle(Double_t* /*vectorMC*/);
41   Bool_t GetRecoValuesFromCandidate(Double_t* /*vectorReco*/ ) const;
42   Bool_t CheckMCChannelDecay()const;
43   
44   Bool_t SetRecoCandidateParam(AliAODRecoDecayHF *recoCand);
45   virtual void SetDecay3Prong(Int_t decay){fDecay=decay;}
46   Bool_t CheckLc3Prong() const;
47   void SetResonantDecay(UInt_t resonantDecay) {fResonantDecay = resonantDecay;}
48   UInt_t GetResonantDecay() const {return fResonantDecay;}
49  
50   void SetGeneratedDsOption(Int_t opt) {fGenDsOption=opt;}
51   Int_t GetGeneratedDsOption() const {return fGenDsOption;}
52
53   enum EDsSel {kCountAllDsKKpi=0, kCountPhipi=1, kCountK0stK=2, kCountResonant=3, kCountNonResonant=4};
54
55  protected:
56   
57   
58   
59  private:       
60   AliCFVertexingHF3Prong(const AliCFVertexingHF3Prong& c);
61   AliCFVertexingHF3Prong& operator= (const AliCFVertexingHF3Prong& other);
62   
63   Int_t fDecay;   // decay mode id
64   Int_t fGenDsOption;  // option for selection Ds (see enum)
65   UInt_t fResonantDecay; // resonant decay for which to run the CF
66
67   ClassDef(AliCFVertexingHF3Prong, 3);
68   
69 };
70
71 #endif