Yvonne's update
authorrbailhac <Raphaelle.Bailhache@cern.ch>
Mon, 24 Feb 2014 18:09:03 +0000 (19:09 +0100)
committerrbailhac <Raphaelle.Bailhache@cern.ch>
Mon, 24 Feb 2014 18:09:03 +0000 (19:09 +0100)
PWGHF/hfe/AliAnalysisTaskHFE.cxx
PWGHF/hfe/AliHFEpidTPC.cxx
PWGHF/hfe/AliHFEreducedEventCreatorESD.cxx
PWGHF/hfe/AliHFEtaggedTrackAnalysis.cxx
PWGHF/hfe/AliHFEtaggedTrackAnalysis.h

index a9a28ea..0c801e0 100644 (file)
@@ -556,6 +556,7 @@ void AliAnalysisTaskHFE::UserCreateOutputObjects(){
     fTaggedTrackAnalysis = new AliHFEtaggedTrackAnalysis(Form("taggedTrackAnalysis%s", GetName()));
     fTaggedTrackAnalysis->SetCuts(fTaggedTrackCuts);
     fTaggedTrackAnalysis->SetClean(fCleanTaggedTrack);
+    if(IsAODanalysis()) fTaggedTrackAnalysis->SetAOD(); 
     AliHFEvarManager *varManager = fTaggedTrackAnalysis->GetVarManager();
     TObjArray *array = fVarManager->GetVariables();
     Int_t nvars = array->GetEntriesFast();
index 1e87f93..d17d5b7 100644 (file)
@@ -404,7 +404,10 @@ Double_t AliHFEpidTPC::GetP(const AliVParticle *track, AliHFEpidObject::Analysis
     // ESD analysis: Use Inner Params for the momentum estimate
     const AliESDtrack *esdtrack = dynamic_cast<const AliESDtrack *>(track);
     if(esdtrack) p = esdtrack->GetInnerParam() ? esdtrack->GetInnerParam()->GetP() : esdtrack->P();
-  } else { 
+  }
+
+  if(anatype == AliHFEpidObject::kAODanalysis)
+  {
     // AOD analysis: Use TPC momentum stored in the AliAODpid object
     const AliAODTrack *aodtrack = dynamic_cast<const AliAODTrack *>(track);
     if(aodtrack) p = aodtrack->GetDetPid() ? aodtrack->GetDetPid()->GetTPCmomentum() : aodtrack->P();
index 7758e99..fe0d388 100644 (file)
@@ -103,6 +103,7 @@ AliHFEreducedEventCreatorESD::AliHFEreducedEventCreatorESD(const char *name):
   fTPCpid = new AliHFEpidTPC("QAtpcPID");
   fAnalysisUtils = new AliAnalysisUtils;
   fTRDTriggerAnalysis = new AliTRDTriggerAnalysis();
+  fTRDTriggerAnalysis->SetRequireMatchElectron(kTRUE); 
   DefineOutput(1, TTree::Class());
 }
 
@@ -238,8 +239,8 @@ void AliHFEreducedEventCreatorESD::UserExec(Option_t *){
   if(trigger & AliVEvent::kEMCEJE) fHFEevent->SetEMCALTrigger();
 
   fTRDTriggerAnalysis->CalcTriggers(event);
-  if(fTRDTriggerAnalysis->IsFired(AliTRDTriggerAnalysis::kHSE)) fHFEevent->SetTRDSETrigger();
-  if(fTRDTriggerAnalysis->IsFired(AliTRDTriggerAnalysis::kHQU)) fHFEevent->SetTRDDQTrigger();
+  if(fTRDTriggerAnalysis->HasTriggeredConfirmed(AliTRDTriggerAnalysis::kHSE)) fHFEevent->SetTRDSETrigger();
+  if(fTRDTriggerAnalysis->HasTriggeredConfirmed(AliTRDTriggerAnalysis::kHQU)) fHFEevent->SetTRDDQTrigger();
 
   // Get Primary Vertex
   const AliVVertex *vertex = fInputEvent->GetPrimaryVertex();
index ee9d515..fb9fe35 100644 (file)
@@ -58,6 +58,7 @@ AliHFEtaggedTrackAnalysis::AliHFEtaggedTrackAnalysis():
   , fVariablesTRD(kFALSE)
   , fIsPbPb(kFALSE)
   , fIspPb(kFALSE)
+  , fIsAOD(kFALSE) 
 {
   //
   // Dummy constructor
@@ -80,6 +81,7 @@ AliHFEtaggedTrackAnalysis::AliHFEtaggedTrackAnalysis(const char *name):
   , fVariablesTRD(kFALSE)
   , fIsPbPb(kFALSE)
   , fIspPb(kFALSE)
+  , fIsAOD(kFALSE)
 {
   //
   // Default constructor
@@ -111,6 +113,7 @@ AliHFEtaggedTrackAnalysis::AliHFEtaggedTrackAnalysis(const AliHFEtaggedTrackAnal
   , fVariablesTRD(ref.fVariablesTRD)
   , fIsPbPb(ref.fIsPbPb)
   , fIspPb(ref.fIspPb)
+  , fIsAOD(ref.fIsAOD)
 {
   //
   // Copy constructor
@@ -140,6 +143,7 @@ AliHFEtaggedTrackAnalysis &AliHFEtaggedTrackAnalysis::operator=(const AliHFEtagg
     fVariablesTRD = ref.fVariablesTRD;
     fIsPbPb = ref.fIsPbPb;
     fIspPb = ref.fIspPb;
+    fIsAOD = ref.fIsAOD;
 
     if(ref.fContainer) InitContainer();
    
@@ -277,10 +281,8 @@ void AliHFEtaggedTrackAnalysis::ProcessTrack(AliVTrack *track, Int_t abinitioPID
      AliDebug(2, "Use track in the PID");
      // Apply PID
      AliHFEpidObject hfetrack;
-     if(track->IsA() == AliESDtrack::Class())
-      hfetrack.SetAnalysisType(AliHFEpidObject::kESDanalysis);
-     else
-      hfetrack.SetAnalysisType(AliHFEpidObject::kAODanalysis);
+     if(!fIsAOD) hfetrack.SetAnalysisType(AliHFEpidObject::kESDanalysis);
+     else hfetrack.SetAnalysisType(AliHFEpidObject::kAODanalysis);
      hfetrack.SetRecTrack(track);
      hfetrack.SetAbInitioPID(abinitioPID);
      hfetrack.SetCentrality(fCentralityF);
index 93f051b..a6c2730 100644 (file)
@@ -61,6 +61,7 @@ class AliHFEtaggedTrackAnalysis : public TNamed{
     void SetPbPb(){ fIsPbPb = kTRUE; }
     void SetPP() { fIsPbPb = kFALSE; }
     void SetpPb() { fIsPbPb = kFALSE; fIspPb=kTRUE; }
+    void SetAOD() { fIsAOD = kTRUE; }
     void SetClean(Bool_t clean) { fClean = clean; };
     void SetMagneticField(Double_t magneticField) { fMagneticField = magneticField; };
     void SetVariablesTRD(Bool_t variablesTRD) { fVariablesTRD = variablesTRD; };
@@ -83,7 +84,8 @@ class AliHFEtaggedTrackAnalysis : public TNamed{
     Bool_t               fVariablesTRD;  //  Use phi angle at the first plane of the TRD
     Bool_t               fIsPbPb;        // Analysis Type: PbPb or no PbPb
     Bool_t               fIspPb;        // Analysis Type: pPb or no pPb
-    
+    Bool_t               fIsAOD;        // Analysis Type: AOD
+
   ClassDef(AliHFEtaggedTrackAnalysis, 0)
 };
 #endif