New mehtod for tagging Lc candidates from Hijing generator
authorfprino <prino@to.infn.it>
Wed, 12 Mar 2014 15:01:31 +0000 (16:01 +0100)
committerhristov <Peter.Hristov@cern.ch>
Thu, 27 Mar 2014 15:24:53 +0000 (16:24 +0100)
PWGHF/vertexingHF/AliVertexingHFUtils.cxx
PWGHF/vertexingHF/AliVertexingHFUtils.h

index 867231c..d35aeb5 100644 (file)
@@ -539,6 +539,26 @@ Bool_t AliVertexingHFUtils::IsCandidateInjected(AliAODRecoDecayHF *cand, AliAODM
   return kFALSE;
 }
 //____________________________________________________________________________
+Bool_t AliVertexingHFUtils::HasCascadeCandidateAnyDaughInjected(AliAODRecoCascadeHF *cand, AliAODMCHeader *header,TClonesArray *arrayMC){
+  // method to check if a cascade candidate comes from the signal event or from the underlying Hijing event
+
+  AliAODTrack* bach = cand->GetBachelor();
+  if(IsTrackInjected(bach, header, arrayMC)) {
+    AliDebug(2, "Bachelor is injected, the whole candidate is then injected");
+    return kTRUE;
+  }
+  AliAODv0* v0 = cand->Getv0();
+  Int_t nprongs = v0->GetNProngs();
+  for(Int_t i = 0; i < nprongs; i++){
+    AliAODTrack *daugh = (AliAODTrack*)v0->GetDaughter(i);
+    if(IsTrackInjected(daugh,header,arrayMC)) {
+      AliDebug(2, Form("V0 daughter number %d is injected, the whole candidate is then injected", i));
+      return kTRUE;
+    }
+  }
+  return kFALSE;
+}
+//____________________________________________________________________________
 Int_t AliVertexingHFUtils::CheckOrigin(TClonesArray* arrayMC, AliAODMCParticle *mcPart, Bool_t searchUpToQuark){
   // checking whether the mother of the particles come from a charm or a bottom quark
 
index d0d7401..7723300 100644 (file)
@@ -18,6 +18,7 @@
 #include "AliAODTrack.h"
 #include "AliAODRecoDecay.h"
 #include "AliAODRecoDecayHF.h"
+#include "AliAODRecoCascadeHF.h"
 
 class AliAODMCParticle;
 class AliAODMCHeader;
@@ -72,6 +73,7 @@ class AliVertexingHFUtils : public TObject{
   Bool_t IsTrackInjected(AliAODTrack *track,AliAODMCHeader *header,TClonesArray *arrayMC);
   void GetTrackPrimaryGenerator(AliAODTrack *track,AliAODMCHeader *header,TClonesArray *arrayMC,TString &nameGen);
   Bool_t IsCandidateInjected(AliAODRecoDecayHF *cand, AliAODMCHeader *header,TClonesArray *arrayMC);
+  Bool_t HasCascadeCandidateAnyDaughInjected(AliAODRecoCascadeHF *cand, AliAODMCHeader *header,TClonesArray *arrayMC);
   // Functions for tracklet multiplcity calculation
   void SetEtaRangeForTracklets(Double_t mineta, Double_t maxeta){
     fMinEtaForTracklets=mineta;