...and the "infrastructure" for the dielectron updates/additions
authorandronic <andronic@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 4 May 2010 09:31:14 +0000 (09:31 +0000)
committerandronic <andronic@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 4 May 2010 09:31:14 +0000 (09:31 +0000)
PWG3/Makefile
PWG3/PROOF-INF.PWG3dielectron/BUILD.sh
PWG3/PROOF-INF.PWG3dielectron/SETUP.C
PWG3/PWG3dielectronLinkDef.h
PWG3/libPWG3dielectron.pkg

index b42fbe6..f423471 100644 (file)
@@ -2,7 +2,7 @@
 
 include $(ROOTSYS)/test/Makefile.arch
 
-default-target: libPWG3base.so libPWG3muon.so libPWG3muondep.so libPWG3vertexingHF.so libPWG3hfe.so 
+default-target: libPWG3base.so libPWG3muon.so libPWG3muondep.so libPWG3vertexingHF.so libPWG3hfe.so libPWG3dielectron.so
 
 ALICEINC      = -I.
 
@@ -216,3 +216,25 @@ G__PWG3hfe.cxx G__PWG3hfe.h: $(HDRS_PWG3hfe) $(DHDR_PWG3hfe)
        @echo "Generating dictionary ..."
        rootcint -f $@ -c $(ALICEINC) $^
 
+## libPWG3dielectron part
+##include libPWG3dielectron.pkg
+       
+DHDR_PWG3dielectron := $(DHDR)
+HDRS_PWG3dielectron := $(HDRS)
+SRCS_PWG3dielectron := $(SRCS) G__PWG3dielectron.cxx
+OBJS_PWG3dielectron := $(SRCS_PWG3dielectron:.cxx=.o)
+
+libPWG3dielectron.so: $(OBJS_PWG3dielectron)
+       @echo "Linking" $@ ...
+       @/bin/rm -f $@
+ifeq ($(ARCH),macosx)
+       @$(LD) -bundle -undefined $(UNDEFOPT) $(LDFLAGS) $^ -o $@
+else
+       @$(LD) $(SOFLAGS) $(LDFLAGS) $^ -o $@
+endif
+       @chmod a+x $@
+       @echo "done"
+                       
+G__PWG3dielectron.cxx G__PWG3dielectron.h: $(HDRS_PWG3dielectron) $(DHDR_PWG3dielectron)
+       @echo "Generating dictionary ..."
+       rootcint -f $@ -c $(ALICEINC) $^
index e6041ba..ba124f6 100644 (file)
@@ -1,9 +1,39 @@
+
+
+
+void SETUP()
 {
-  gSystem->Load("libDielectron.so");
-  // Set the include paths
-  gROOT->ProcessLine(".include Dielectron");
+  // Load some ROOT libraries
+  CheckLoadLibrary("libTree");
+  CheckLoadLibrary("libGeom");
+  CheckLoadLibrary("libVMC");
+  CheckLoadLibrary("libMinuit");
+  CheckLoadLibrary("libRooFit");
+  
+  // Load the AliROOT library
+  CheckLoadLibrary("libANALYSIS");
+  CheckLoadLibrary("libSTEERBase");
+  CheckLoadLibrary("libESD");
+  CheckLoadLibrary("libCDB");
+  CheckLoadLibrary("libAOD");
+  CheckLoadLibrary("libCORRFW");
+  CheckLoadLibrary("libANALYSISalice");
+  CheckLoadLibrary("libPWG3dielectron");
   
+  // Set the include paths
+  gROOT->ProcessLine(".include PWG3dielectron");
+    
   // Set our location, so that other packages can find us
-  gSystem->Setenv("Dielectron_INCLUDE", "Dielectron");
+  gSystem->Setenv("PWG3dielectron_INCLUDE", "PWG3dielectron");
+}
+
+
+Int_t CheckLoadLibrary(const char* library)
+{
+  // checks if a library is already loaded, if not loads the library
+  
+  if (strlen(gSystem->GetLibraries(Form("%s.so", library), "", kFALSE)) > 0)
+    return 1;
   
+  return gSystem->Load(library);
 }
index 27662d0..93d4dcb 100644 (file)
@@ -19,4 +19,9 @@
 #pragma link C++ class AliAnalysisTaskMultiDielectron+;
 #pragma link C++ class AliDielectronVarCuts+;
 #pragma link C++ class AliDielectronPairLegCuts+;
+#pragma link C++ class AliDielectronSignalBase+;
+#pragma link C++ class AliDielectronSignalFunc+;
+#pragma link C++ class AliDielectronSignalExt+;
+#pragma link C++ class AliDielectronSpectrum+;
+#pragma link C++ class AliDielectronDebugTree+;
 #endif
index 4e4aeb5..1f3e28b 100644 (file)
@@ -12,7 +12,12 @@ SRCS= dielectron/AliDielectron.cxx \
       dielectron/AliAnalysisTaskDielectronEfficiency.cxx \
       dielectron/AliAnalysisTaskMultiDielectron.cxx \
       dielectron/AliDielectronVarCuts.cxx \
-      dielectron/AliDielectronPairLegCuts.cxx
+      dielectron/AliDielectronPairLegCuts.cxx \
+      dielectron/AliDielectronSignalBase.cxx \
+      dielectron/AliDielectronSignalFunc.cxx \
+      dielectron/AliDielectronSignalExt.cxx \
+      dielectron/AliDielectronSpectrum.cxx \
+      dielectron/AliDielectronDebugTree.cxx 
 
 HDRS= $(SRCS:.cxx=.h)