new class for omega measurement via 3 pion combinationomega3pi/
authorgconesab <gconesab@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 2 Jul 2009 15:41:38 +0000 (15:41 +0000)
committergconesab <gconesab@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 2 Jul 2009 15:41:38 +0000 (15:41 +0000)
PWG4/CMake_libPWG4omega3pi.txt [new file with mode: 0755]
PWG4/PROOF-INF.PWG4omega3pi/BUILD.sh [new file with mode: 0755]
PWG4/PROOF-INF.PWG4omega3pi/SETUP.C [new file with mode: 0755]
PWG4/PWG4omega3piLinkDef.h [new file with mode: 0644]
PWG4/libPWG4omega3pi.pkg [new file with mode: 0644]
PWG4/macros/AddTaskomega3pi.C [new file with mode: 0644]

diff --git a/PWG4/CMake_libPWG4omega3pi.txt b/PWG4/CMake_libPWG4omega3pi.txt
new file mode 100755 (executable)
index 0000000..a8b785d
--- /dev/null
@@ -0,0 +1,12 @@
+# -*- mode: cmake -*-
+
+set(SRCS
+       omega3pi/AliAnalysisTaskOmegaPi0PiPi.cxx 
+)
+
+# fill list of header files from list of source files
+# by exchanging the file extension
+String(REPLACE ".cxx" ".h" HDRS "${SRCS}")
+
+AddLibrary(PWG4omega3pi "${SRCS}" "${HDRS}")
+
diff --git a/PWG4/PROOF-INF.PWG4omega3pi/BUILD.sh b/PWG4/PROOF-INF.PWG4omega3pi/BUILD.sh
new file mode 100755 (executable)
index 0000000..fc9490a
--- /dev/null
@@ -0,0 +1,3 @@
+#! /bin/sh
+
+make 
diff --git a/PWG4/PROOF-INF.PWG4omega3pi/SETUP.C b/PWG4/PROOF-INF.PWG4omega3pi/SETUP.C
new file mode 100755 (executable)
index 0000000..0a1912e
--- /dev/null
@@ -0,0 +1,13 @@
+void SETUP()
+{
+
+   // Load the ESD library
+   gSystem->Load("libPWG4omega3pi");
+
+   // Set the Include paths
+   gSystem->SetIncludePath("-I$ROOTSYS/include -IPWG4omega3pi");
+   gROOT->ProcessLine(".include PWG4omega3pi/omega3pi");
+
+   // Set our location, so that other packages can find us
+   gSystem->Setenv("PWG4omega3pi_INCLUDE", "PWG4omega3pi/omega3pi");
+}
diff --git a/PWG4/PWG4omega3piLinkDef.h b/PWG4/PWG4omega3piLinkDef.h
new file mode 100644 (file)
index 0000000..ca33c39
--- /dev/null
@@ -0,0 +1,9 @@
+#ifdef __CINT__
+#pragma link off all globals;
+#pragma link off all classes;
+#pragma link off all functions;
+
+#pragma link C++ class AliAnalysisTaskOmegaPi0PiPi+;
+
+#endif
diff --git a/PWG4/libPWG4omega3pi.pkg b/PWG4/libPWG4omega3pi.pkg
new file mode 100644 (file)
index 0000000..91083a1
--- /dev/null
@@ -0,0 +1,15 @@
+#-*- Mode: Makefile -*-
+
+SRCS = omega3pi/AliAnalysisTaskOmegaPi0PiPi.cxx
+      
+HDRS:= $(SRCS:.cxx=.h) 
+
+DHDR:= PWG4omega3piLinkDef.h
+
+EXPORT:=$(SRCS:.cxx=.h)
+
+ifeq (win32gcc,$(ALICE_TARGET))
+PACKSOFLAGS:= $(SOFLAGS) -L$(ALICE_ROOT)/lib/tgt_$(ALICE_TARGET) -lSTEERBase \
+                         -lESD -lAOD -lANALYSIS -lANALYSISalice \
+                         -L$(shell root-config --libdir) -lEG
+endif
diff --git a/PWG4/macros/AddTaskomega3pi.C b/PWG4/macros/AddTaskomega3pi.C
new file mode 100644 (file)
index 0000000..4a2d561
--- /dev/null
@@ -0,0 +1,34 @@
+AliAnalysisTaskOmegaPi0PiPi* AddTaskomega3pi()
+{
+  // Creates an omega(782) --> pi0 pi+ pi- analysis task, 
+  // configures it and adds it to the analysis manager.
+
+  // Get the pointer to the existing analysis manager via the static access method.
+  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
+  if (!mgr) {
+    ::Error("AddTaskomega3pi", "No analysis manager to connect to.");
+    return NULL;
+  }  
+
+  // Check the analysis type using the event handlers connected to the analysis manager.
+  if (!mgr->GetInputEventHandler()) {
+    ::Error("AddTaskomega3pi", "This task requires an input event handler");
+    return NULL;
+  }
+  
+  // Add task
+  AliAnalysisTaskOmegaPi0PiPi *omegaTask = new AliAnalysisTaskOmegaPi0PiPi("OmegaPi0PiPi");
+  mgr->AddTask(omegaTask);
+
+  // Create containers for input/output
+  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
+  AliAnalysisDataContainer *coutput = mgr->CreateContainer("histos",TList::Class(),AliAnalysisManager::kOutputContainer,"histos.root");
+  
+  // Connect input/output
+  mgr->ConnectInput(omegaTask, 0, cinput);
+  mgr->ConnectOutput(omegaTask, 1, coutput);
+  
+  return omegaTask;
+}
+
+