]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - FMD/scripts/Compile.C
histogram titles cosmetics
[u/mrichter/AliRoot.git] / FMD / scripts / Compile.C
index 0ce263b9e7a3a447496d5fa2f275c3536dc7a6a3..af92981456b962ae17308b43ce65e090ba245ebb 100644 (file)
     @ingroup FMD_script
 */
 void
-Compile(const char* script, Option_t* option="g")
+AddInclude(const char* what)
 {
+  TString path(gSystem->GetIncludePath());
+  if (path.Contains(what)) return;
+  gSystem->AddIncludePath(what);
+}
+Bool_t
+Compile(const char* script=0, Option_t* option="g")
+{
+  if (!script || script[0] == '\0') { 
+    std::cerr << "No script to compile!" << std::endl;
+    return kFALSE;
+  }
+  gSystem->Load("libANALYSIS.so");
+  gSystem->Load("libANALYSISalice.so");
   gSystem->Load("libFMDutil.so");
-  gSystem->SetIncludePath("-I`root-config --incdir` "
-                         "-I${ALICE_ROOT}/include " 
-                         "-I${ALICE_ROOT}/FMD "
-                         "-I${ALICE_ROOT}/geant3/TGeant3");
-  gROOT->ProcessLine(Form(".L %s+%s", script, option));
+  TString macroPath(gROOT->GetMacroPath());
+  macroPath.Append(":${ALICE_ROOT}/FMD/scripts");
+  gROOT->SetMacroPath(macroPath.Data());
+  AddInclude("-I`root-config --incdir`");
+  AddInclude("-I${ALICE_ROOT}");
+  AddInclude("-I${ALICE_ROOT}/include");
+  AddInclude("-I${ALICE_ROOT}/FMD");
+  AddInclude("-I${ALICE_ROOT}/geant3/TGeant3");
+  AddInclude("-I${ALICE_ROOT}/../master-src");
+  AddInclude("-I${ALICE_ROOT}/../master-src/FMD");
+  AddInclude("-I${ALICE_ROOT}/../master-src/RAW");
+  Long_t ret = gROOT->ProcessLine(Form(".L %s+%s", script, option));
+  return ret == 0;
 }
 
 //____________________________________________________________________