]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG/EMCAL/macros/AddTaskEmcalEsdTrackFilter.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWG / EMCAL / macros / AddTaskEmcalEsdTrackFilter.C
index 5aa6211ee4af0041f5ee92c2b6a3adcfe0ceb1d1..6eff15abc02fef4e2b474e4c824df1bfa3c06c69 100644 (file)
@@ -1,8 +1,9 @@
 // $Id$
 
 AliEmcalEsdTrackFilterTask* AddTaskEmcalEsdTrackFilter(
-  const char *name              = "AliEmcalEsdTrackFilter",
-  const char *trackCuts         = "Hybrid_LHC11h"
+  const char *name              = "TrackFilter",
+  const char *trackCuts         = "Hybrid_LHC11h",
+  const char *taskName          = "AliEmcalEsdTrackFilterTask"
 )
 { 
   enum CutsType {
@@ -29,66 +30,79 @@ AliEmcalEsdTrackFilterTask* AddTaskEmcalEsdTrackFilter(
 
   if (strTrackCuts.Contains("hybrid")) {
     cutsType = kHybrid;
-  }
-  else if (strTrackCuts.Contains("tpconly")) {
+  } else if (strTrackCuts.Contains("tpconly")) {
     cutsType = kTpcOnly;
     cutsLabel = "TPC only constrained tracks";
-  }
-  else {
+  } else {
     ::Warning("AddTaskEmcalEsdTpcTrack", "Cuts type not recognized, will assume Hybrid");
   }
 
   if (strTrackCuts.Contains("lhc10h")) {
     dataSet = kLHC10h;
-  }
-  else if (strTrackCuts.Contains("lhc11a") || strTrackCuts.Contains("lhc12a15a")) {
+  } else if (strTrackCuts.Contains("lhc11a") || strTrackCuts.Contains("lhc12a15a")) {
     dataSet = kLHC11a;
     dataSetLabel = "LHC11a";
-  }
-  else if (strTrackCuts.Contains("lhc11c")) {
+  } else if (strTrackCuts.Contains("lhc10e")   ||  strTrackCuts.Contains("lhc10d")   ||
+            strTrackCuts.Contains("lhc10e20") ||  strTrackCuts.Contains("lhc10f6a") ||
+            strTrackCuts.Contains("lhc11a1a") ||  strTrackCuts.Contains("lhc11a1b") ||
+            strTrackCuts.Contains("lhc11a1c") ||  strTrackCuts.Contains("lhc11a1d") ||
+            strTrackCuts.Contains("lhc11a1e") ||  strTrackCuts.Contains("lhc11a1f") ||
+            strTrackCuts.Contains("lhc11a1g") ||  strTrackCuts.Contains("lhc11a1h") ||
+            strTrackCuts.Contains("lhc11a1i") ||  strTrackCuts.Contains("lhc11a1j")) {
+    dataSet = kLHC11a;
+    dataSetLabel = "LHC10e";
+  } else if (strTrackCuts.Contains("lhc11c")) {
     dataSet = kLHC11c;
     dataSetLabel = "LHC11c";
-  }
-  else if (strTrackCuts.Contains("lhc11d")) {
+  } else if (strTrackCuts.Contains("lhc11d")) {
     dataSet = kLHC11d;
     dataSetLabel = "LHC11d";
-  }
-  else if (strTrackCuts.Contains("lhc11h") || strTrackCuts.Contains("lhc12a15e"))
-  {
+  } else if (strTrackCuts.Contains("lhc11h") || strTrackCuts.Contains("lhc12a15e")) {
     dataSet = kLHC11h;
     dataSetLabel = "LHC11h";
-  }
-  else if (strTrackCuts.Contains("lhc12g"))
-  {
+  } else if (strTrackCuts.Contains("lhc12g")) {
     dataSet = kLHC11h;
     dataSetLabel = "LHC12g";
-  }
-  else if (strTrackCuts.Contains("lhc13b"))
-  {
+  } else if (strTrackCuts.Contains("lhc12")) {
+    dataSet = kLHC11h;
+    dataSetLabel = "LHC12";
+  } else if (strTrackCuts.Contains("lhc13b")) {
     dataSet = kLHC11h;
     dataSetLabel = "LHC13b";
-  }
-  else if (strTrackCuts.Contains("lhc13c"))
-  {
+  } else if (strTrackCuts.Contains("lhc13c")) {
     dataSet = kLHC11h;
     dataSetLabel = "LHC13c";
-  }
-  else if (strTrackCuts.Contains("lhc12a15f"))
-  {
+  } else if (strTrackCuts.Contains("lhc13d")) {
+    dataSet = kLHC11h;
+    dataSetLabel = "LHC13d";
+  } else if (strTrackCuts.Contains("lhc13e")) {
+    dataSet = kLHC11h;
+    dataSetLabel = "LHC13e";
+  } else if (strTrackCuts.Contains("lhc13f")) {
+    dataSet = kLHC11h;
+    dataSetLabel = "LHC13f";
+  } else if (strTrackCuts.Contains("lhc13g")) {
+    dataSet = kLHC11h;
+    dataSetLabel = "LHC13g";
+  } else if (strTrackCuts.Contains("lhc12a15f")) {
     dataSet = kLHC11h;
     dataSetLabel = "LHC12a15f";
-  }
-  else if (strTrackCuts.Contains("lhc12a15g"))
-  {
+  } else if (strTrackCuts.Contains("lhc13b4")) {
+    dataSet = kLHC11h;
+    dataSetLabel = "LHC13b4";
+  } else if (strTrackCuts.Contains("lhc12a15g")) {
     dataSet = kLHC11d;
     dataSetLabel = "LHC12a15g";
-  }
-  else if (strTrackCuts.Contains("lhc12f2a"))
-  {
+  } else if (strTrackCuts.Contains("lhc12f2a")) {
     dataSet = kLHC11d;
     dataSetLabel = "LHC12f2a";
-  }
-  else {
+  } else if (strTrackCuts.Contains("lhc12a17")) {
+    dataSet = kLHC11h;
+    dataSetLabel = "LHC12a17";
+  } else if (strTrackCuts.Contains("lhc14a1")) {
+    dataSet = kLHC11h;
+    dataSetLabel = "LHC14a1";
+  } else {
     ::Warning("AddTaskEmcalEsdTpcTrack", "Dataset not recognized, will assume LHC11h");
   }
 
@@ -118,32 +132,37 @@ AliEmcalEsdTrackFilterTask* AddTaskEmcalEsdTrackFilter(
   //-------------------------------------------------------
 
   gROOT->LoadMacro("$ALICE_ROOT/PWGJE/macros/CreateTrackCutsPWGJE.C");
-  Bool_t includeNoITS = kFALSE;
-  AliEmcalEsdTrackFilterTask *eTask = new AliEmcalEsdTrackFilterTask(); // default is TPC only tracks constrained to the vertex
-
+  AliEmcalEsdTrackFilterTask *eTask = new AliEmcalEsdTrackFilterTask(taskName); // default is no cut
   if ((dataSet == kLHC11c && cutsType == kHybrid) ||
       (dataSet == kLHC11d && cutsType == kHybrid) ||
       (dataSet == kLHC11h && cutsType == kHybrid)) {
     /* hybrid track cuts*/
     AliESDtrackCuts *cutsp = CreateTrackCutsPWGJE(10001008);       //1000 adds SPD any requirement
+    eTask->SetTrackCuts(cutsp);
     AliESDtrackCuts *hybsp = CreateTrackCutsPWGJE(10041008);       //1004 removes ITSrefit requirement from standard set   
     hybsp->SetClusterRequirementITS(AliESDtrackCuts::kSPD, AliESDtrackCuts::kOff);
-    eTask->SetTrackCuts(cutsp);
     eTask->SetHybridTrackCuts(hybsp);
-  }
-  else if ((dataSet == kLHC10h && cutsType == kHybrid) ||
-           (dataSet == kLHC11a && cutsType == kHybrid)) {
+    eTask->SetIncludeNoITS(kFALSE);
+  else if ((dataSet == kLHC10h && cutsType == kHybrid) ||
+            (dataSet == kLHC11a && cutsType == kHybrid)) {
     /* hybrid track cuts*/
     AliESDtrackCuts *cutsp = CreateTrackCutsPWGJE(10001006);       //1000 adds SPD any requirement
+    eTask->SetTrackCuts(cutsp);
     AliESDtrackCuts *hybsp = CreateTrackCutsPWGJE(10041006);       //1004 removes ITSrefit requirement from standard set    
     hybsp->SetClusterRequirementITS(AliESDtrackCuts::kSPD, AliESDtrackCuts::kOff);
-    eTask->SetTrackCuts(cutsp);
     eTask->SetHybridTrackCuts(hybsp);
-    includeNoITS = kTRUE;
+    eTask->SetIncludeNoITS(kTRUE);
+  }
+  else if (dataSet == kLHC11h && cutsType == kTpcOnly) {
+    /* TPC-only constrained track cuts*/
+    AliESDtrackCuts *cutsp = CreateTrackCutsPWGJE(2001);       //TPC-only loose track cuts
+    eTask->SetTrackCuts(cutsp);
+    eTask->SetHybridTrackCuts(0);
+  }
+  else {
+    ::Error("AddTaskEmcalEsdTrackFilter","Track cuts type / period not recognized! Undefined beahviour will follow!");
   }
-
   eTask->SetTracksName(name);
-  eTask->SetIncludeNoITS(includeNoITS);
 
   cout << " *** Track selector task configured to select " << cutsLabel  << " in dataset "<< dataSetLabel << " *** " << endl;