automatic creation of galice file (C.Cheshkov)
[u/mrichter/AliRoot.git] / MONITOR / monitor.C
1 #if !defined(__CINT__) || defined(__MAKECINT__)
2 #include <TSystem.h>
3 #include <TError.h>
4 #include <TInterpreter.h>
5 #include "MONITOR/AliMonitorProcess.h"
6 #include "MONITOR/AliMonitorControl.h"
7 #endif
8
9 void monitor(const char* alienHost = "alien://", const char* alienDir = ".")
10 {
11   // load libraries
12   if (strcmp(gSystem->Getenv("ALIHLT_USEPACKAGE"), "ALIROOT") == 0) {
13     if (!gROOT->GetClass("AliLevel3")) {
14       gSystem->Load("libAliL3Src.so");
15       gSystem->Load("libAliL3Misc.so");
16       gSystem->Load("libAliL3Hough.so");
17       gSystem->Load("libAliL3Comp.so");
18     }
19   }
20   if (!gROOT->GetClass("AliMonitorProcess")) {
21     gSystem->Load("libMONITOR.so");
22   }
23
24   // make sure galice.root and compression tables are there
25   if (!gSystem->Which(".", "galice.root")) {
26     gAlice->Init("$ALICE_ROOT/MONITOR/galice.C");
27     gAlice->GetRunLoader()->Write();
28     delete gAlice->GetRunLoader();
29   }
30   if (!gSystem->Which(".", "Table0.dat")) {
31     gSystem->Exec("cp $ALICE_ROOT/RAW/Table*.dat .");
32   }
33
34   // start the monitoring
35   AliMonitorProcess *process = new AliMonitorProcess(alienHost, alienDir);
36   //  process->Run();
37   new AliMonitorControl(process);
38 }