]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGHF/vertexingHF/AliCFVertexingHFLctoV0bachelor.h
Code for computing MC efficiency for Lc->K0s+proton (Annalisa)
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / AliCFVertexingHFLctoV0bachelor.h
1 #ifndef ALICFVERTEXINGHFLCTOV0BACHELOR_H
2 #define ALICFVERTEXINGHFLCTOV0BACHELOR_H
3
4 /**************************************************************************
5  * Copyright(c) 1998-2011, ALICE Experiment at CERN, All rights reserved. *
6  *                                                                        *
7  * Author: The ALICE Off-line Project.                                    *
8  * Contributors are mentioned in the code where appropriate.              *
9  *                                                                        *
10  * Permission to use, copy, modify and distribute this software and its   *
11  * documentation strictly for non-commercial purposes is hereby granted   *
12  * without fee, provided that the above copyright notice appears in all   *
13  * copies and that both the copyright notice and this permission notice   *
14  * appear in the supporting documentation. The authors make no claims     *
15  * about the suitability of this software for any purpose. It is          *
16  * provided "as is" without express or implied warranty.                  *
17  **************************************************************************/
18
19 /* $Id$ */ 
20
21 //-----------------------------------------------------------------------
22 // Class for HF corrections as a function of many variables and steps
23 // For Lc->V0 bachelor
24 // 
25 // Author : A. De Caro
26 //-----------------------------------------------------------------------
27
28
29 #include "AliCFVertexingHF.h"
30 #include "AliAODRecoDecayHF.h"
31 #include "AliAODRecoCascadeHF.h"
32 #include "AliAODRecoDecayHF2Prong.h"
33
34 class AliAODMCParticle;
35 class TClonesArray;
36 class AliCFVertexingHF;
37 class AliESDtrack;
38 class TDatabasePDG;
39
40 class AliCFVertexingHFLctoV0bachelor : public AliCFVertexingHF{
41  public:
42
43   enum ELctoV0Sel {
44     kCountK0Sp=0,
45     kCountLambdapi=1,
46     kCountAllLctoV0=2
47   };
48
49   AliCFVertexingHFLctoV0bachelor();
50   AliCFVertexingHFLctoV0bachelor(TClonesArray *mcArray, UShort_t originDselection, Int_t lcDecay=0);
51
52   virtual ~AliCFVertexingHFLctoV0bachelor(){};
53
54   Bool_t GetGeneratedValuesFromMCParticle(Double_t* /*vectorMC*/);
55   Bool_t GetRecoValuesFromCandidate(Double_t* /*vectorReco*/ ) const;
56   Bool_t CheckMCChannelDecay()const;
57   
58   Bool_t SetRecoCandidateParam(AliAODRecoDecayHF *recoCand);
59
60   void SetPtAccCut(Float_t* ptAccCut);
61   void SetEtaAccCut(Float_t* etaAccCut);
62   void SetAccCut(Float_t* ptAccCut, Float_t* etaAccCut);
63   void SetAccCut();
64
65   Double_t GetEtaProng(Int_t iProng)const;
66   Double_t GetPtProng(Int_t iProng) const;
67
68  protected:
69
70   Double_t Ctau(AliAODMCParticle *mcPartCandidate);
71
72  private:       
73
74   AliCFVertexingHFLctoV0bachelor(const AliCFVertexingHFLctoV0bachelor& c);
75   AliCFVertexingHFLctoV0bachelor& operator= (const AliCFVertexingHFLctoV0bachelor& other);
76   
77   Int_t fGenLcOption;  // option for selection Lc (see enum)
78
79   ClassDef(AliCFVertexingHFLctoV0bachelor, 1); // CF class for Lc->V0+bachelor and other cascades
80   
81 };
82
83 #endif