AliPhysics  a6017e1 (a6017e1)
AliPicoV0MC.h
Go to the documentation of this file.
1 #ifndef ALIPICOV0MC_H
2 #define ALIPICOV0MC_H
3 
4 #include <TLorentzVector.h>
5 
6 #include "AliPicoV0.h"
7 
8 
9 class AliPicoV0MC : public AliPicoV0 {
10 
11  public :
12 
13  AliPicoV0MC();
14  AliPicoV0MC(UInt_t wMask,
15  Double_t dV0Radius,
16  Double_t dV0CosPA,
17  Double_t dV0DistToPVoverP,
18  Double_t dDausDCA,
19  Double_t dPosDCAtoPV,
20  Double_t dNegDCAtoPV,
21  Float_t dDauXrowsTPC,
22  Double_t dDauXrowsOverFindableClusTPC,
23  Double_t dPosPx, Double_t dPosPy, Double_t dPosPz,
24  Double_t dNegPx, Double_t dNegPy, Double_t dNegPz,
25  Bool_t bPosInJC, Bool_t bNegInJC,
26  Int_t idV, UInt_t wsV, Double_t dV0Px, Double_t dV0Py, Double_t dV0Pz, Double_t dV0E,
27  Int_t idM=0, UInt_t wsM=0, Double_t dPtM=0., Double_t dEtaM=0., Double_t dRapM=0.);
28  AliPicoV0MC(const AliPicoV0MC &src);
29  AliPicoV0MC& operator=(const AliPicoV0MC &src);
30  virtual ~AliPicoV0MC();
31 //=============================================================================
32 
33  virtual Bool_t IsKshort(Double_t const dCuts[9]) const;
34  virtual Bool_t IsLambda(Double_t const dCuts[9]) const;
35  virtual Bool_t IsAntiLa(Double_t const dCuts[9]) const;
36 
37  virtual void GetControlVariables(Float_t d[18]) const;
38 //=============================================================================
39 
40  TLorentzVector KineMC() const { return fV0Kine; }
41 
42  Double_t MotherPt() const { return fMotherPt; }
43  Double_t MotherEta() const { return fMotherEta; }
44  Double_t MotherRap() const { return fMotherRap; }
45 //=============================================================================
46 
48 
49  Bool_t IsKshortMC() const { return (fV0PDG== 310); }
50  Bool_t IsLambdaMC() const { return (fV0PDG== 3122); }
51  Bool_t IsAntiLaMC() const { return (fV0PDG==-3122); }
52 
53  Bool_t IsMotherXiNeg() const { return (fMotherPDG== 3312); }
54  Bool_t IsMotherXiPos() const { return (fMotherPDG==-3312); }
55 
56  Bool_t IsLambdaFd() const { return (AliPicoV0::IsLambda() && IsMotherXiNeg()); }
57  Bool_t IsAntiLaFd() const { return (AliPicoV0::IsAntiLa() && IsMotherXiPos()); }
58 //=============================================================================
59 
60  Bool_t IsV0Primary() const {
61  return ((fV0Status & AliPicoBase::kPrimary) == AliPicoBase::kPrimary);
62  }
63 
65  return ((fV0Status & AliPicoBase::kPhysicalPrimary) == AliPicoBase::kPhysicalPrimary);
66  }
67 
69  return ((fV0Status & AliPicoBase::kSecondaryFromWeakDecay) == AliPicoBase::kSecondaryFromWeakDecay);
70  }
71 
73  return ((fV0Status & AliPicoBase::kSecondaryFromMaterial) == AliPicoBase::kSecondaryFromMaterial);
74  }
75 //=============================================================================
76 
78  return ((fMotherStatus & AliPicoBase::kPrimary) == AliPicoBase::kPrimary);
79  }
80 
82  return ((fMotherStatus & AliPicoBase::kPhysicalPrimary) == AliPicoBase::kPhysicalPrimary);
83  }
84 
86  return ((fMotherStatus & AliPicoBase::kSecondaryFromWeakDecay) == AliPicoBase::kSecondaryFromWeakDecay);
87  }
88 
90  return ((fMotherStatus & AliPicoBase::kSecondaryFromMaterial) == AliPicoBase::kSecondaryFromMaterial);
91  }
92 //=============================================================================
93 
94  private :
95 
98  TLorentzVector fV0Kine; //
99 
102 
106 
107  ClassDef(AliPicoV0MC, 5);
108 };
109 
110 #endif
TLorentzVector KineMC() const
Definition: AliPicoV0MC.h:40
double Double_t
Definition: External.C:58
TLorentzVector fV0Kine
Definition: AliPicoV0MC.h:98
Double_t MotherEta() const
Definition: AliPicoV0MC.h:43
UInt_t fV0Status
Definition: AliPicoV0MC.h:97
virtual Bool_t IsLambda(Double_t const dCuts[9]) const
AliPicoV0MC & operator=(const AliPicoV0MC &src)
Definition: AliPicoV0MC.cxx:81
Bool_t IsV0PhysicalPrimary() const
Definition: AliPicoV0MC.h:64
UInt_t fMotherStatus
Definition: AliPicoV0MC.h:101
Bool_t IsMotherSecondaryFromMaterial() const
Definition: AliPicoV0MC.h:89
Double_t fMotherEta
Definition: AliPicoV0MC.h:104
Bool_t IsAntiLaMC() const
Definition: AliPicoV0MC.h:51
virtual void GetControlVariables(Float_t d[18]) const
Double_t fMotherPt
Definition: AliPicoV0MC.h:103
Bool_t IsMotherPrimary() const
Definition: AliPicoV0MC.h:77
virtual Bool_t IsAntiLa(Double_t const dCuts[9]) const
int Int_t
Definition: External.C:63
unsigned int UInt_t
Definition: External.C:33
Int_t fV0PDG
Definition: AliPicoV0MC.h:96
float Float_t
Definition: External.C:68
Bool_t IsMotherXiNeg() const
Definition: AliPicoV0MC.h:53
Bool_t IsV0SecondaryFromWeakDecay() const
Definition: AliPicoV0MC.h:68
Bool_t IsV0InRapAcc(Double_t dMin, Double_t dMax)
Int_t fMotherPDG
Definition: AliPicoV0MC.h:100
Bool_t IsLambdaMC() const
Definition: AliPicoV0MC.h:50
Double_t MotherRap() const
Definition: AliPicoV0MC.h:44
virtual Bool_t IsAntiLa(Double_t const *=nullptr) const
Definition: AliPicoV0.h:54
Double_t MotherPt() const
Definition: AliPicoV0MC.h:42
Bool_t IsMotherPhysicalPrimary() const
Definition: AliPicoV0MC.h:81
virtual Bool_t IsKshort(Double_t const dCuts[9]) const
Bool_t IsMotherXiPos() const
Definition: AliPicoV0MC.h:54
virtual Bool_t IsLambda(Double_t const *=nullptr) const
Definition: AliPicoV0.h:50
Bool_t IsMotherSecondaryFromWeakDecay() const
Definition: AliPicoV0MC.h:85
virtual ~AliPicoV0MC()
bool Bool_t
Definition: External.C:53
Bool_t IsAntiLaFd() const
Definition: AliPicoV0MC.h:57
Bool_t IsKshortMC() const
Definition: AliPicoV0MC.h:49
Bool_t IsLambdaFd() const
Definition: AliPicoV0MC.h:56
Bool_t IsV0Primary() const
Definition: AliPicoV0MC.h:60
Double_t fMotherRap
Definition: AliPicoV0MC.h:105
Bool_t IsV0SecondaryFromMaterial() const
Definition: AliPicoV0MC.h:72