Fixes in case no raw data is available during online reco+viz (Matevz)
[u/mrichter/AliRoot.git] / EVE / macros / alieve_online.C
index 0d0d57eac50310302eb6f61a338549f1596fd5b4..b5d3b344a48336a2d873d2e24820eac3d5c57c2c 100644 (file)
@@ -4,7 +4,7 @@
  * full copyright notice.                                                 *
  **************************************************************************/
 
-TEveGeoShape *gGeomGentle    = 0;
+TEveGeoShape *gGeomGentle = 0;
 
 void alieve_online_init()
 {
@@ -13,17 +13,24 @@ void alieve_online_init()
   gROOT->LoadMacro("primary_vertex.C");
   gROOT->LoadMacro("esd_tracks.C");
 
-  gROOT->LoadMacro("its_clusters.C+");
-  gROOT->LoadMacro("tpc_clusters.C+");
-  gROOT->LoadMacro("trd_clusters.C+");
+  gROOT->LoadMacro("its_clusters.C++");
+  gROOT->LoadMacro("tpc_clusters.C++");
+  gROOT->LoadMacro("trd_clusters.C++");
+  gROOT->LoadMacro("hmpid_clusters.C++");
 
   gROOT->LoadMacro("acorde_raw.C");
   gROOT->LoadMacro("its_raw.C");
   gROOT->LoadMacro("tpc_raw.C");
 
+  TEveUtil::AssertMacro("VizDB_scan.C");
+
+  // Temp fix !!!
+  TGeoManager *man = gGeoManager;
   gGeomGentle = geom_gentle();
+  // Temp fix !!!
+  gGeoManager = man;
 
-  gROOT->ProcessLine(".L SplitGLView.C+g"); // !!!! debug-mode
+  gROOT->ProcessLine(".L SplitGLView.C++g"); // !!!! debug-mode
   TEveBrowser* browser = gEve->GetBrowser();
   browser->ExecPlugin("SplitGLView", 0, "new SplitGLView(gClient->GetRoot(), 600, 450, kTRUE)");
 
@@ -44,19 +51,29 @@ void alieve_online_init()
     gEve->GetScenes()->FindChild("Rho-Z Projection")->AddElement(a);
   }
 
+  TEveBrowser* browser = gEve->GetBrowser();
+
+  browser->StartEmbedding(TRootBrowser::kBottom);
+  new AliEveEventManagerWindow(AliEveEventManager::GetMaster());
+  browser->StopEmbedding("EventCtrl");
+
   gEve->Redraw3D(kTRUE);
 }
 
 void alieve_online_on_new_event()
 {
-
-  its_raw();
+  if (AliEveEventManager::HasRawReader())
+    its_raw();
   its_clusters();
 
-  tpc_raw();
+  if (AliEveEventManager::HasRawReader())
+    tpc_raw();
   tpc_clusters();
 
-  acorde_raw();
+  hmpid_clusters();
+
+  if (AliEveEventManager::HasRawReader())
+    acorde_raw();
 
   primary_vertex();
   esd_tracks();