]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG2/FEMTOSCOPY/AliFemto/AliAnalysisTaskFemto.cxx
Add PID code
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemto / AliAnalysisTaskFemto.cxx
index bb5511c50944eceeb50571eb85ec0ba7cd30fbdf..ae6cbf6f5958c4e0c6e582c291835a45aa61fabf 100644 (file)
@@ -41,7 +41,9 @@ AliAnalysisTaskFemto::AliAnalysisTaskFemto(const char *name, const char *aConfig
     fManager(0x0),\r
     fAnalysisType(0),\r
     fConfigMacro(0),\r
-    fConfigParams(0)\r
+    fConfigParams(0),\r
+    fESDpid(0),\r
+    fAODpidUtil(0)\r
 {\r
   // Constructor.\r
   // Input slot #0 works with an Ntuple\r
@@ -64,7 +66,9 @@ AliAnalysisTaskFemto::AliAnalysisTaskFemto(const char *name, const char *aConfig
     fManager(0x0),\r
     fAnalysisType(0),\r
     fConfigMacro(0),\r
-    fConfigParams(0)\r
+    fConfigParams(0),\r
+    fESDpid(0),\r
+    fAODpidUtil(0)\r
 {\r
   // Constructor.\r
   // Input slot #0 works with an Ntuple\r
@@ -87,11 +91,15 @@ AliAnalysisTaskFemto::AliAnalysisTaskFemto(const AliAnalysisTaskFemto& aFemtoTas
     fManager(0x0),\r
     fAnalysisType(0),\r
     fConfigMacro(0),\r
-    fConfigParams(0)\r
+    fConfigParams(0),\r
+    fESDpid(0),\r
+    fAODpidUtil(0)\r
 {\r
   // copy constructor\r
   fESD = aFemtoTask.fESD; \r
+  fESDpid = aFemtoTask.fESDpid; \r
   fAOD = aFemtoTask.fAOD; \r
+  fAODpidUtil = aFemtoTask.fAODpidUtil;\r
   fStack = aFemtoTask.fStack;\r
   fOutputList = aFemtoTask.fOutputList;   \r
   fReader = aFemtoTask.fReader;       \r
@@ -110,7 +118,9 @@ AliAnalysisTaskFemto& AliAnalysisTaskFemto::operator=(const AliAnalysisTaskFemto
     return *this;\r
 \r
   fESD = aFemtoTask.fESD; \r
+  fESDpid = aFemtoTask.fESDpid;\r
   fAOD = aFemtoTask.fAOD; \r
+  fAODpidUtil = aFemtoTask.fAODpidUtil;\r
   fStack = aFemtoTask.fStack;\r
   fOutputList = aFemtoTask.fOutputList;   \r
   fReader = aFemtoTask.fReader;       \r
@@ -138,7 +148,9 @@ void AliAnalysisTaskFemto::ConnectInputData(Option_t *) {
   AliInfo(Form("   ConnectInputData %s\n", GetName()));\r
 \r
   fESD = 0;\r
+  fESDpid = 0;\r
   fAOD = 0;\r
+  fAODpidUtil = 0;\r
   fAnalysisType = 0;\r
 \r
   TTree* tree = dynamic_cast<TTree*> (GetInputData(0));\r
@@ -147,6 +159,7 @@ void AliAnalysisTaskFemto::ConnectInputData(Option_t *) {
     return;\r
   } \r
 \r
+  AliFemtoEventReaderESDChain *femtoReader = dynamic_cast<AliFemtoEventReaderESDChain *> (fReader);\r
   if ((dynamic_cast<AliFemtoEventReaderESDChain *> (fReader)) ||\r
       (dynamic_cast<AliFemtoEventReaderESDChainKine *> (fReader))) {\r
     AliESDInputHandler *esdH = dynamic_cast<AliESDInputHandler*> (AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());\r
@@ -160,10 +173,13 @@ void AliAnalysisTaskFemto::ConnectInputData(Option_t *) {
 //       } \r
 //       else {\r
        fESD = esdH->GetEvent();\r
+        fESDpid = esdH->GetESDpid();\r
+        femtoReader->SetESDPid(fESDpid);\r
 //       }\r
     }\r
   }\r
   \r
+    AliFemtoEventReaderAODChain *femtoReaderAOD = dynamic_cast<AliFemtoEventReaderAODChain *> (fReader);\r
   if (dynamic_cast<AliFemtoEventReaderAODChain *> (fReader)) {\r
     AliAODInputHandler *aodH = dynamic_cast<AliAODInputHandler*> (AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());\r
        \r
@@ -185,6 +201,10 @@ void AliAnalysisTaskFemto::ConnectInputData(Option_t *) {
       fAnalysisType = 2;\r
       \r
       fAOD = aodH->GetEvent();\r
+\r
+      fAODpidUtil = aodH->GetAODpidUtil();\r
+      printf("aodH->GetAODpidUtil(): %x",aodH->GetAODpidUtil());\r
+      femtoReaderAOD->SetAODpidUtil(fAODpidUtil);\r
     }\r
   }\r
 \r
@@ -268,6 +288,7 @@ void AliAnalysisTaskFemto::Exec(Option_t *) {
     } \r
     else {\r
       fESD = esdH->GetEvent();\r
+      fESDpid = esdH->GetESDpid();   \r
     }\r
 \r
     AliInfo(Form("Tracks in ESD: %d \n",fESD->GetNumberOfTracks()));\r