]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG0/dNdPt/AlidNdPtAnalysis.cxx
-- trigger selecion changed
[u/mrichter/AliRoot.git] / PWG0 / dNdPt / AlidNdPtAnalysis.cxx
index f8f290ae083888e94196feb2766ff6e96ef36775..c9536c6bab1232f63f3eca14144187aeaa73d285 100644 (file)
@@ -34,6 +34,8 @@
 #include "THnSparse.h"\r
 \r
 #include "AliHeader.h"  \r
+#include "AliInputEventHandler.h"  \r
+#include "AliAnalysisManager.h"  \r
 #include "AliGenEventHeader.h"  \r
 #include "AliStack.h"  \r
 #include "AliESDEvent.h"  \r
@@ -1023,9 +1025,54 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
 \r
   // trigger selection\r
   Bool_t isEventTriggered = kTRUE;\r
-  AliPhysicsSelection *trigSel = NULL;\r
-  AliTriggerAnalysis *trigAna = NULL;\r
+  AliPhysicsSelection *physicsSelection = NULL;\r
+  AliTriggerAnalysis* triggerAnalysis = NULL;\r
+\r
+  // \r
+  AliInputEventHandler* inputHandler = (AliInputEventHandler*) AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler();\r
+  if (!inputHandler)\r
+  {\r
+    Printf("ERROR: Could not receive input handler");\r
+    return;\r
+  }\r
 \r
+  if(evtCuts->IsTriggerRequired())  \r
+  {\r
+    // always MB\r
+    isEventTriggered = inputHandler->IsEventSelected() & AliVEvent::kMB;\r
+\r
+    physicsSelection = static_cast<AliPhysicsSelection*> (inputHandler->GetEventSelection());\r
+    if(!physicsSelection) return;\r
+    //SetPhysicsTriggerSelection(physicsSelection);\r
+\r
+    if (isEventTriggered) {\r
+      // set trigger (V0AND)\r
+      triggerAnalysis = physicsSelection->GetTriggerAnalysis();\r
+      if(!triggerAnalysis) return;\r
+      isEventTriggered = triggerAnalysis->IsOfflineTriggerFired(esdEvent, GetTrigger());\r
+    }\r
+\r
+    // calculate LHC background\r
+    if(!IsUseMCInfo()) \r
+    { \r
+      //\r
+      // 0-multiplicity bin for LHC background correction\r
+      //\r
+      if( GetAnalysisMode() == AlidNdPtHelper::kTPCITS || \r
+          GetAnalysisMode() == AlidNdPtHelper::kTPCTrackSPDvtx || \r
+         GetAnalysisMode() == AlidNdPtHelper::kTPCTrackSPDvtxUpdate || \r
+          GetAnalysisMode() == AlidNdPtHelper::kTPCITSHybridTrackSPDvtx || \r
+         GetAnalysisMode() == AlidNdPtHelper::kTPCITSHybridTrackSPDvtxDCArPt ) \r
+      {\r
+        physicsSelection->SetBin0CallbackViaPointer(&AlidNdPtAnalysis::IsBinZeroTrackSPDvtx);\r
+      } else {\r
+        physicsSelection->SetBin0CallbackViaPointer(&AlidNdPtAnalysis::IsBinZeroSPDvtx);\r
+      }\r
+    }\r
+  }\r
+\r
+\r
+  /*\r
   if(evtCuts->IsTriggerRequired())  \r
   {\r
     //\r
@@ -1147,6 +1194,7 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
       }\r
     }\r
   }\r
+  */\r
 \r
 \r
   // use MC information\r
@@ -1934,7 +1982,7 @@ Long64_t AlidNdPtAnalysis::Merge(TCollection* const list)
   TObject* obj = 0;\r
 \r
   //\r
-  TList *collPhysSelection = new TList;\r
+  //TList *collPhysSelection = new TList;\r
 \r
   // collection of generated histograms\r
 \r
@@ -1945,7 +1993,7 @@ Long64_t AlidNdPtAnalysis::Merge(TCollection* const list)
 \r
     // physics selection\r
     //printf("entry->GetPhysicsTriggerSelection() %p \n", entry->GetPhysicsTriggerSelection());\r
-    collPhysSelection->Add(entry->GetPhysicsTriggerSelection());\r
+    //collPhysSelection->Add(entry->GetPhysicsTriggerSelection());\r
     \r
     //\r
     fRecEventHist->Add(entry->fRecEventHist);\r
@@ -2031,9 +2079,9 @@ Long64_t AlidNdPtAnalysis::Merge(TCollection* const list)
   count++;\r
   }\r
 \r
-  AliPhysicsSelection *trigSelection = GetPhysicsTriggerSelection();\r
-  trigSelection->Merge(collPhysSelection);\r
-  if(collPhysSelection) delete collPhysSelection;\r
+  //AliPhysicsSelection *trigSelection = GetPhysicsTriggerSelection();\r
+  //trigSelection->Merge(collPhysSelection);\r
+  //if(collPhysSelection) delete collPhysSelection;\r
 \r
 return count;\r
 }\r
@@ -2102,8 +2150,8 @@ void AlidNdPtAnalysis::Analyse()
   //\r
   // LHC backgraund in all and 0-bins\r
   //\r
-  AliPhysicsSelection *trigSel = GetPhysicsTriggerSelection();\r
-  trigSel->SaveHistograms("physics_selection");\r
+  //AliPhysicsSelection *trigSel = GetPhysicsTriggerSelection();\r
+  //trigSel->SaveHistograms("physics_selection");\r
 \r
   //\r
   // Reconstructed event vertex\r