if(sum2<cuts[10])return kFALSE;
return kTRUE;
}
+//--------------------------------------------------------------------------
+Bool_t AliAODRecoDecayHF3Prong::SelectDs(const Double_t *cuts,Int_t &okDsKKpi,Int_t &okDspiKK)
+ const {
+//
+// This function compares the Ds with a set of cuts (only mass at the moment)
+//
+// cuts[0] = inv. mass half width [GeV]
+//
+// If candidate Ds does not pass the cuts return kFALSE
+//
+ Double_t mDsKKpi,mDspiKK;
+ okDsKKpi=1; okDspiKK=1;
+
+ Double_t mDsPDG = TDatabasePDG::Instance()->GetParticle(431)->Mass();
+
+ mDsKKpi=InvMassDsKKpi();
+ mDspiKK=InvMassDspiKK();
+
+ if(TMath::Abs(mDsKKpi-mDsPDG)>cuts[0]) okDsKKpi = 0;
+ if(TMath::Abs(mDspiKK-mDsPDG)>cuts[0]) okDspiKK = 0;
+ if(!okDsKKpi && !okDspiKK) return kFALSE;
+
+ return kTRUE;
+}
+//--------------------------------------------------------------------------
+Bool_t AliAODRecoDecayHF3Prong::SelectLc(const Double_t *cuts,Int_t &okLcpKpi,Int_t &okLcpiKp)
+ const {
+//
+// This function compares the Lc with a set of cuts (only mass at the moment)
+//
+// cuts[0] = inv. mass half width [GeV]
+//
+// If candidate Lc does not pass the cuts return kFALSE
+//
+ Double_t mLcpKpi,mLcpiKp;
+ okLcpKpi=1; okLcpiKp=1;
+
+ Double_t mLcPDG = TDatabasePDG::Instance()->GetParticle(4122)->Mass();
+
+ mLcpKpi=InvMassLcpKpi();
+ mLcpiKp=InvMassLcpiKp();
+
+ if(TMath::Abs(mLcpKpi-mLcPDG)>cuts[0]) okLcpKpi = 0;
+ if(TMath::Abs(mLcpiKp-mLcPDG)>cuts[0]) okLcpiKp = 0;
+ if(!okLcpKpi && !okLcpiKp) return kFALSE;
+
+ return kTRUE;
+}
Double_t InvMassDplus() const {UInt_t pdg[3]={211,321,211};return InvMass(3,pdg);}
Bool_t SelectDplus(const Double_t* cuts) const;
- // Ds+->KKpi
+ // Ds+->KKpi
Double_t EDs() const {return E(431);}
Double_t YDs() const {return Y(431);}
Double_t CtDs() const {return Ct(431);}
Double_t InvMassDsKKpi() const {UInt_t pdg[3]={321,321,211};return InvMass(3,pdg);}
Double_t InvMassDspiKK() const {UInt_t pdg[3]={211,321,321};return InvMass(3,pdg);}
Bool_t SelectDs(const Double_t* cuts,Int_t &okDsKKpi,Int_t &okDspiKK)
- const;//to be implemented
+ const; // only mass cut
+
+ // Lambdac+->pKpi
+ Double_t ELc() const {return E(4122);}
+ Double_t YLc() const {return Y(4122);}
+ Double_t CtLc() const {return Ct(4122);}
+ Double_t CtLc(Double_t point[3]) const {return AliAODRecoDecay::Ct(4122,point);}
+ Double_t CtLc(AliAODVertex *vtx1) const {return AliAODRecoDecay::Ct(4122,vtx1);}
+ Double_t InvMassLcpKpi() const {UInt_t pdg[3]={2212,321,211};return InvMass(3,pdg);}
+ Double_t InvMassLcpiKp() const {UInt_t pdg[3]={211,321,2212};return InvMass(3,pdg);}
+ Bool_t SelectLc(const Double_t* cuts,Int_t &okLcpKpi,Int_t &okLcpiKp)
+ const;// only mass cut
private: