Removing additional 0MQ dependency
[u/mrichter/AliRoot.git] / MONITOR / monitor.C
index 116c26a..01967e9 100644 (file)
@@ -1,19 +1,42 @@
 #if !defined(__CINT__) || defined(__MAKECINT__)
-#include "TSystem.h"
-#include "TInterpreter.h"
+#include <TSystem.h>
+#include <TError.h>
+#include <TInterpreter.h>
+#include "AliRun.h"
 #include "MONITOR/AliMonitorProcess.h"
 #include "MONITOR/AliMonitorControl.h"
 #endif
 
-void monitor(const char* alienDir = ".")
+void monitor(Bool_t batchMode = kFALSE,
+            const char* selection = "ALL",
+            const char* alienHost = "alien://aliens7.cern.ch:15000/?direct",
+            const char* alienDir = "/alice_mdc/DC")
 {
+  // load libraries
+  if (!gROOT->GetClass("AliLevel3")) {
+    gSystem->Load("libAliHLTSrc.so");
+    gSystem->Load("libAliHLTMisc.so");
+    gSystem->Load("libAliHLTHough.so");
+    gSystem->Load("libAliHLTComp.so");
+  }
+  if (!gROOT->GetClass("AliMonitorProcess")) {
+    gSystem->Load("libMONITOR.so");
+  }
+
+  // make sure galice.root is there
   if (!gSystem->Which(".", "galice.root")) {
-    gInterpreter->ExecuteMacro("$ALICE_ROOT/MONITOR/galice.C");
+    gAlice->InitMC("$ALICE_ROOT/MONITOR/galice.C");
+    AliRunLoader::Instance()->Write();
+    delete AliRunLoader::Instance();
   }
-  if (!gSystem->Which(".", "Table0.dat")) {
-    gSystem->Exec("cp $ALICE_ROOT/RAW/Table*.dat .");
+
+  // start the monitoring
+  AliMonitorProcess *process = new AliMonitorProcess(alienHost, alienDir,
+                                                    selection);
+  if (batchMode) {
+    process->Run();
+    delete process;
+  } else {
+    new AliMonitorControl(process);
   }
-  AliMonitorProcess process(alienDir);
-  process.Run();
-//  new AliMonitorControl(&process);
 }