]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Modularize split-view (3d, r-phi, rho-z) setup from visscan_init.C so
authormtadel <mtadel@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 24 Sep 2009 17:34:56 +0000 (17:34 +0000)
committermtadel <mtadel@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 24 Sep 2009 17:34:56 +0000 (17:34 +0000)
that it can also  be used for online reco viz.

This is in new file / class MultiView.

EVE/macros/MultiView.C [new file with mode: 0644]
EVE/macros/alieve_online.C
EVE/macros/visscan_init.C

diff --git a/EVE/macros/MultiView.C b/EVE/macros/MultiView.C
new file mode 100644 (file)
index 0000000..5e6b161
--- /dev/null
@@ -0,0 +1,205 @@
+// Multi-view (3d, rphi, rhoz) service class using EVE Window Manager.
+// Author: Matevz Tadel 2009
+
+#include <TEveManager.h>
+
+#include <TEveViewer.h>
+#include <TGLViewer.h>
+
+#include <TEveScene.h>
+#include <TEveGeoShape.h>
+
+#include <TEveProjectionManager.h>
+#include <TEveProjectionAxes.h>
+
+#include <TEveBrowser.h>
+#include <TEveWindow.h>
+
+// MultiView
+//
+// Structure encapsulating standard views: 3D, r-phi and rho-z.
+// Includes scenes and projection managers.
+//
+// Should be used in compiled mode.
+
+class MultiView
+{
+public:
+   TEveProjectionManager *fRPhiMgr;
+   TEveProjectionManager *fRhoZMgr;
+
+   TEveViewer            *f3DView;
+   TEveViewer            *fRPhiView;
+   TEveViewer            *fRhoZView;
+
+   TEveScene             *fRPhiGeomScene;
+   TEveScene             *fRhoZGeomScene;
+   TEveScene             *fRPhiEventScene;
+   TEveScene             *fRhoZEventScene;
+
+   TEveGeoShape          *fGeomGentle;
+   TEveGeoShape          *fGeomGentleRPhi;
+   TEveGeoShape          *fGeomGentleRhoZ;
+   TEveGeoShape          *fGeomGentleTrd;
+   TEveGeoShape          *fGeomGentleMuon;
+
+   //-------------------------------------------------------------------------
+
+   MultiView() :
+      fGeomGentle(0), fGeomGentleRPhi(0), fGeomGentleRhoZ(0),
+      fGeomGentleTrd(0), fGeomGentleMuon(0)
+   {
+      // Constructor --- creates required scenes, projection managers
+      // and GL viewers.
+
+      // Scenes
+      //========
+
+      fRPhiGeomScene  = gEve->SpawnNewScene("RPhi Geometry",
+                                            "Scene holding projected geometry for the RPhi view.");
+      fRhoZGeomScene  = gEve->SpawnNewScene("RhoZ Geometry",
+                                            "Scene holding projected geometry for the RhoZ view.");
+      fRPhiEventScene = gEve->SpawnNewScene("RPhi Event Data",
+                                            "Scene holding projected event-data for the RPhi view.");
+      fRhoZEventScene = gEve->SpawnNewScene("RhoZ Event Data",
+                                            "Scene holding projected event-data for the RhoZ view.");
+
+
+      // Projection managers
+      //=====================
+
+      fRPhiMgr = new TEveProjectionManager();
+      fRPhiMgr->SetProjection(TEveProjection::kPT_RPhi);
+      gEve->AddToListTree(fRPhiMgr, kFALSE);
+      {
+         TEveProjectionAxes* a = new TEveProjectionAxes(fRPhiMgr);
+         a->SetMainColor(kWhite);
+         a->SetTitle("R-Phi");
+         a->SetTitleSize(0.05);
+         a->SetTitleFont(102);
+         a->SetLabelSize(0.025);
+         a->SetLabelFont(102);
+         fRPhiGeomScene->AddElement(a);
+      }
+
+      fRhoZMgr = new TEveProjectionManager();
+      fRhoZMgr->SetProjection(TEveProjection::kPT_RhoZ);
+      gEve->AddToListTree(fRhoZMgr, kFALSE);
+      {
+         TEveProjectionAxes* a = new TEveProjectionAxes(fRhoZMgr);
+         a->SetMainColor(kWhite);
+         a->SetTitle("Rho-Z");
+         a->SetTitleSize(0.05);
+         a->SetTitleFont(102);
+         a->SetLabelSize(0.025);
+         a->SetLabelFont(102);
+         fRhoZGeomScene->AddElement(a);
+      }
+
+
+      // Viewers
+      //=========
+
+      TEveWindowSlot *slot = 0;
+      TEveWindowPack *pack = 0;
+
+      slot = TEveWindow::CreateWindowInTab(gEve->GetBrowser()->GetTabRight());
+      pack = slot->MakePack();
+      pack->SetElementName("Multi View");
+      pack->SetHorizontal();
+      pack->SetShowTitleBar(kFALSE);
+      pack->NewSlot()->MakeCurrent();
+      f3DView = gEve->SpawnNewViewer("3D View", "");
+      f3DView->AddScene(gEve->GetGlobalScene());
+      f3DView->AddScene(gEve->GetEventScene());
+
+      pack = pack->NewSlot()->MakePack();
+      pack->SetShowTitleBar(kFALSE);
+      pack->NewSlot()->MakeCurrent();
+      fRPhiView = gEve->SpawnNewViewer("RPhi View", "");
+      fRPhiView->GetGLViewer()->SetCurrentCamera(TGLViewer::kCameraOrthoXOY);
+      fRPhiView->AddScene(fRPhiGeomScene);
+      fRPhiView->AddScene(fRPhiEventScene);
+
+      pack->NewSlot()->MakeCurrent();
+      fRhoZView = gEve->SpawnNewViewer("RhoZ View", "");
+      fRhoZView->GetGLViewer()->SetCurrentCamera(TGLViewer::kCameraOrthoXOY);
+      fRhoZView->AddScene(fRhoZGeomScene);
+      fRhoZView->AddScene(fRhoZEventScene);
+   }
+
+   //-------------------------------------------------------------------------
+
+   void InitGeomGentle(TEveGeoShape* g3d, TEveGeoShape* grphi, TEveGeoShape* grhoz)
+   {
+      fGeomGentle     = g3d;
+      fGeomGentleRPhi = grphi; fGeomGentleRPhi->IncDenyDestroy();
+      fGeomGentleRhoZ = grhoz; fGeomGentleRhoZ->IncDenyDestroy();
+
+      fRPhiMgr->SetCurrentDepth(-10);
+      ImportGeomRPhi(fGeomGentleRPhi);
+      fRPhiMgr->SetCurrentDepth(0);
+
+      fRhoZMgr->SetCurrentDepth(-10);
+      ImportGeomRhoZ(fGeomGentleRhoZ);
+      fRhoZMgr->SetCurrentDepth(0);
+   }
+
+   void InitGeomGentleTrd(TEveGeoShape* gtrd)
+   {
+      fGeomGentleTrd = gtrd;
+      ImportGeomRPhi(fGeomGentleTrd);
+      ImportGeomRhoZ(fGeomGentleTrd);
+   }
+
+   void InitGeomGentleMuon(TEveGeoShape* gmuon, Bool_t showRPhi, Bool_t showRhoZ)
+   {
+      fGeomGentleMuon = gmuon;
+      if (showRPhi) ImportGeomRPhi(fGeomGentleMuon);
+      if (showRhoZ) ImportGeomRhoZ(fGeomGentleMuon);
+   }
+
+   //-------------------------------------------------------------------------
+
+   void ImportGeomRPhi(TEveElement* el)
+   { 
+      fRPhiMgr->ImportElements(el, fRPhiGeomScene);
+   }
+
+   void ImportGeomRhoZ(TEveElement* el)
+   { 
+      fRhoZMgr->ImportElements(el, fRhoZGeomScene);
+   }
+
+   void ImportEventRPhi(TEveElement* el)
+   { 
+      fRPhiMgr->ImportElements(el, fRPhiEventScene);
+   }
+
+   void ImportEventRhoZ(TEveElement* el)
+   { 
+      fRhoZMgr->ImportElements(el, fRhoZEventScene);
+   }
+
+   void DestroyEventRPhi()
+   {
+      fRPhiEventScene->DestroyElements();
+   }
+
+   void DestroyEventRhoZ()
+   {
+      fRhoZEventScene->DestroyElements();
+   }
+
+   void SetCenterRPhi(Double_t x, Double_t y, Double_t z)
+   {
+      fRPhiMgr->SetCenter(x, y, z);
+   }
+
+   void SetCenterRhoZ(Double_t x, Double_t y, Double_t z)
+   {
+      fRhoZMgr->SetCenter(x, y, z);
+   }
+};
+
+MultiView *gMultiView = 0;
index 781b0748b9a8230fbafd509ec32bff466477e078..bdde4ecdd9729184fa7ee2153d8cfeacd84a7733 100644 (file)
@@ -8,25 +8,16 @@ class TEveProjectionManager;
 class TEveGeoShape;
 class TEveUtil;
 
-TEveGeoShape *gGeomGentle = 0;
-
-TEveScene *gRPhiGeomScene  = 0;
-TEveScene *gRhoZGeomScene  = 0;
-TEveScene *gRPhiEventScene = 0;
-TEveScene *gRhoZEventScene = 0;
-
-TEveProjectionManager *gRPhiMgr = 0;
-TEveProjectionManager *gRhoZMgr = 0;
-
-TEveViewer *g3DView   = 0;
-TEveViewer *gRPhiView = 0;
-TEveViewer *gRhoZView = 0;
-
 Bool_t gCenterProjectionsAtPrimaryVertex = kFALSE;
 
+
 void alieve_online_init()
 {
-  gROOT->LoadMacro("geom_gentle.C");
+  if (gROOT->LoadMacro("MultiView.C+") != 0)
+  {
+    gEnv->SetValue("Root.Stacktrace", "no");
+    Fatal("alieve_online.C", "Failed loading MultiView.C in compiled mode.");
+  }
 
   gROOT->LoadMacro("primary_vertex.C");
   gROOT->LoadMacro("esd_tracks.C");
@@ -51,85 +42,17 @@ void alieve_online_init()
   TEveBrowser         *browser = gEve->GetBrowser();
   browser->ShowCloseTab(kFALSE);
 
-  // Temp fix !!!
-  TGeoManager *man = gGeoManager;
-  gGeomGentle = geom_gentle();
-  gGeomGentleRPhi = geom_gentle_rphi(); gGeomGentleRPhi->IncDenyDestroy();
-  gGeomGentleRhoZ = geom_gentle_rhoz(); gGeomGentleRhoZ->IncDenyDestroy();
-  // Temp fix !!!
-  gGeoManager = man;
-
-  // Scenes
-  gRPhiGeomScene  = gEve->SpawnNewScene("RPhi Geometry",
-                    "Scene holding projected geometry for the RPhi view.");
-  gRhoZGeomScene  = gEve->SpawnNewScene("RhoZ Geometry",
-                   "Scene holding projected geometry for the RhoZ view.");
-  gRPhiEventScene = gEve->SpawnNewScene("RPhi Event Data",
-                   "Scene holding projected geometry for the RPhi view.");
-  gRhoZEventScene = gEve->SpawnNewScene("RhoZ Event Data",
-                   "Scene holding projected geometry for the RhoZ view.");
-
-  gRPhiMgr = new TEveProjectionManager();
-  gRPhiMgr->SetProjection(TEveProjection::kPT_RPhi);
-  gEve->AddToListTree(gRPhiMgr, kFALSE);
-  {
-    TEveProjectionAxes* a = new TEveProjectionAxes(gRPhiMgr);
-    a->SetMainColor(kWhite);
-    a->SetTitle("R-Phi");
-    a->SetTitleSize(0.05);
-    a->SetTitleFont(102);
-    a->SetLabelSize(0.025);
-    a->SetLabelFont(102);
-    gRPhiGeomScene->AddElement(a);
-  }
-  gRPhiMgr->SetCurrentDepth(-10);
-  gRPhiMgr->ImportElements(gGeomGentleRPhi, gRPhiGeomScene);
-  gRPhiMgr->SetCurrentDepth(0);
+  // Gentle-geom loading changes gGeoManager.
+  TEveGeoManagerHolder mgrRestore;
 
-  gRhoZMgr = new TEveProjectionManager();
-  gRhoZMgr->SetProjection(TEveProjection::kPT_RhoZ);
-  gEve->AddToListTree(gRhoZMgr, kFALSE);
-  {
-    TEveProjectionAxes* a = new TEveProjectionAxes(gRhoZMgr);
-    a->SetMainColor(kWhite);
-    a->SetTitle("Rho-Z");
-    a->SetTitleSize(0.05);
-    a->SetTitleFont(102);
-    a->SetLabelSize(0.025);
-    a->SetLabelFont(102);
-    gRhoZGeomScene->AddElement(a);
-  }
-  gRhoZMgr->SetCurrentDepth(-10);
-  gRhoZMgr->ImportElements(gGeomGentleRhoZ, gRhoZGeomScene);
-  gRhoZMgr->SetCurrentDepth(0);
-
-  // Viewers
-  TEveWindowSlot *slot = 0;
-  TEveWindowPack *pack = 0;
-
-  slot = TEveWindow::CreateWindowInTab(browser->GetTabRight());
-  pack = slot->MakePack();
-  pack->SetElementName("Multi View");
-  pack->SetHorizontal();
-  pack->SetShowTitleBar(kFALSE);
-  pack->NewSlot()->MakeCurrent();
-  g3DView = gEve->SpawnNewViewer("3D View", "");
-  g3DView->AddScene(gEve->GetGlobalScene());
-  g3DView->AddScene(gEve->GetEventScene());
-
-  pack = pack->NewSlot()->MakePack();
-  pack->SetShowTitleBar(kFALSE);
-  pack->NewSlot()->MakeCurrent();
-  gRPhiView = gEve->SpawnNewViewer("RPhi View", "");
-  gRPhiView->GetGLViewer()->SetCurrentCamera(TGLViewer::kCameraOrthoXOY);
-  gRPhiView->AddScene(gRPhiGeomScene);
-  gRPhiView->AddScene(gRPhiEventScene);
-
-  pack->NewSlot()->MakeCurrent();
-  gRhoZView = gEve->SpawnNewViewer("RhoZ View", "");
-  gRhoZView->GetGLViewer()->SetCurrentCamera(TGLViewer::kCameraOrthoXOY);
-  gRhoZView->AddScene(gRhoZGeomScene);
-  gRhoZView->AddScene(gRhoZEventScene);
+  gMultiView = new MultiView;
+
+  TEveUtil::LoadMacro("geom_gentle.C");
+  gMultiView->InitGeomGentle(geom_gentle(),
+                             geom_gentle_rphi(), 
+                             geom_gentle_rhoz());
+
+  // See visscan_init.C for how to add TRD / MUON geometry.
 
   browser->GetTabRight()->SetTab(1);
 
@@ -178,18 +101,13 @@ void alieve_online_on_new_event()
 
   TEveElement* top = gEve->GetCurrentEvent();
 
-  if (gRPhiMgr && top)
-  {
-    gRPhiEventScene->DestroyElements();
-    if (gCenterProjectionsAtPrimaryVertex)
-      gRPhiMgr->SetCenter(x[0], x[1], x[2]);
-    gRPhiMgr->ImportElements(top, gRPhiEventScene);
-  }
-  if (gRhoZMgr && top)
-  {
-    gRhoZEventScene->DestroyElements();
-    if (gCenterProjectionsAtPrimaryVertex)
-      gRhoZMgr->SetCenter(x[0], x[1], x[2]);
-    gRhoZMgr->ImportElements(top, gRhoZEventScene);
-  }
+  gMultiView->DestroyEventRPhi();
+  if (gCenterProjectionsAtPrimaryVertex)
+    gMultiView->SetCenterRPhi(x[0], x[1], x[2]);
+  gMultiView->ImportEventRPhi(top);
+
+  gMultiView->DestroyEventRhoZ();
+  if (gCenterProjectionsAtPrimaryVertex)
+    gMultiView->SetCenterRhoZ(x[0], x[1], x[2]);
+  gMultiView->ImportEventRhoZ(top);
 }
index 19917ea4a9965b4b6e2935fcbf1c31c0c37d2df7..2171cb225913bbdda8f34da4cefa5b58a8fa37a0 100644 (file)
@@ -8,33 +8,15 @@
  **************************************************************************/
 
 class AliEveMacroExecutor;
-
+class MultiView;
 class TEveProjectionManager;
 class TEveGeoShape;
 class TEveUtil;
 
-TEveGeoShape *gGeomGentle     = 0;
-TEveGeoShape *gGeomGentleRPhi = 0;
-TEveGeoShape *gGeomGentleRhoZ = 0;
-TEveGeoShape *gGeomGentleTRD  = 0;
-TEveGeoShape *gGeomGentleMUON = 0;
-
-TEveScene *gRPhiGeomScene  = 0;
-TEveScene *gRhoZGeomScene  = 0;
-TEveScene *gRPhiEventScene = 0;
-TEveScene *gRhoZEventScene = 0;
-
-TEveProjectionManager *gRPhiMgr = 0;
-TEveProjectionManager *gRhoZMgr = 0;
 
-TEveViewer *g3DView   = 0;
-TEveViewer *gRPhiView = 0;
-TEveViewer *gRhoZView = 0;
-
-Bool_t gShowTRD      = kFALSE;
-Bool_t gShowMUON     = kTRUE;
-Bool_t gShowMUONRPhi = kFALSE;
-Bool_t gShowMUONRhoZ = kTRUE;
+Bool_t gShowTrd      = kTRUE;
+Bool_t gShowMuonRPhi = kFALSE;
+Bool_t gShowMuonRhoZ = kTRUE;
 
 Bool_t gCenterProjectionsAtPrimaryVertex = kFALSE;
 
@@ -48,9 +30,15 @@ void visscan_init(const TString& cdburi = "",
     Fatal("visscan_init.C", "OCDB path MUST be specified as the first argument.");
   }
 
+  if (gROOT->LoadMacro("MultiView.C+") != 0)
+  {
+    gEnv->SetValue("Root.Stacktrace", "no");
+    Fatal("visscan_init.C", "Failed loading MultiView.C in compiled mode.");
+  }
+
   if (!show_extra_geo)
   {
-    gShowTRD = gShowMUON = gShowMUONRPhi = gShowMUONRhoZ = kFALSE;
+    gShowTrd = gShowMuonRPhi = gShowMuonRhoZ = kFALSE;
   }
 
   AliEveEventManager::AddAODfriend("AliAOD.VertexingHF.root");
@@ -64,107 +52,29 @@ void visscan_init(const TString& cdburi = "",
 
   AliEveMacroExecutor *exec    = AliEveEventManager::GetMaster()->GetExecutor();
   TEveBrowser         *browser = gEve->GetBrowser();
+  browser->ShowCloseTab(kFALSE);
+
 
   //==============================================================================
   // Geometry, scenes, projections and viewers
   //==============================================================================
 
-  browser->ShowCloseTab(kFALSE);
-
-  // Geometry
+  gMultiView = new MultiView;
 
   TEveUtil::LoadMacro("geom_gentle.C");
-  gGeomGentle = geom_gentle();
-  gGeomGentleRPhi = geom_gentle_rphi(); gGeomGentleRPhi->IncDenyDestroy();
-  gGeomGentleRhoZ = geom_gentle_rhoz(); gGeomGentleRhoZ->IncDenyDestroy();
-  if (gShowTRD) {
+  gMultiView->InitGeomGentle(geom_gentle(),
+                             geom_gentle_rphi(), 
+                             geom_gentle_rhoz());
+
+  if (gShowTrd) {
     TEveUtil::LoadMacro("geom_gentle_trd.C");
-    gGeomGentleTRD = geom_gentle_trd();
+    gMultiView->InitGeomGentleTrd(geom_gentle_trd());
   }
-  if (gShowMUON) {
-    TEveUtil::LoadMacro("geom_gentle_muon.C");
-    gGeomGentleMUON = geom_gentle_muon(kFALSE);
-  }
-
-  // Scenes
-
-  gRPhiGeomScene  = gEve->SpawnNewScene("RPhi Geometry",
-                    "Scene holding projected geometry for the RPhi view.");
-  gRhoZGeomScene  = gEve->SpawnNewScene("RhoZ Geometry",
-                   "Scene holding projected geometry for the RhoZ view.");
-  gRPhiEventScene = gEve->SpawnNewScene("RPhi Event Data",
-                   "Scene holding projected geometry for the RPhi view.");
-  gRhoZEventScene = gEve->SpawnNewScene("RhoZ Event Data",
-                   "Scene holding projected geometry for the RhoZ view.");
 
-  // Projection managers
-
-  gRPhiMgr = new TEveProjectionManager();
-  gRPhiMgr->SetProjection(TEveProjection::kPT_RPhi);
-  gEve->AddToListTree(gRPhiMgr, kFALSE);
-  {
-    TEveProjectionAxes* a = new TEveProjectionAxes(gRPhiMgr);
-    a->SetMainColor(kWhite);
-    a->SetTitle("R-Phi");
-    a->SetTitleSize(0.05);
-    a->SetTitleFont(102);
-    a->SetLabelSize(0.025);
-    a->SetLabelFont(102);
-    gRPhiGeomScene->AddElement(a);
-  }
-  gRPhiMgr->SetCurrentDepth(-10);
-  gRPhiMgr->ImportElements(gGeomGentleRPhi, gRPhiGeomScene);
-  gRPhiMgr->SetCurrentDepth(0);
-  if (gShowTRD)      gRPhiMgr->ImportElements(gGeomGentleTRD, gRPhiGeomScene);
-  if (gShowMUONRPhi) gRPhiMgr->ImportElements(gGeomGentleMUON, gRPhiGeomScene);
-
-  gRhoZMgr = new TEveProjectionManager();
-  gRhoZMgr->SetProjection(TEveProjection::kPT_RhoZ);
-  gEve->AddToListTree(gRhoZMgr, kFALSE);
-  {
-    TEveProjectionAxes* a = new TEveProjectionAxes(gRhoZMgr);
-    a->SetMainColor(kWhite);
-    a->SetTitle("Rho-Z");
-    a->SetTitleSize(0.05);
-    a->SetTitleFont(102);
-    a->SetLabelSize(0.025);
-    a->SetLabelFont(102);
-    gRhoZGeomScene->AddElement(a);
+  if (gShowMuonRPhi || gShowMuonRhoZ) {
+    TEveUtil::LoadMacro("geom_gentle_muon.C");
+    gMultiView->InitGeomGentleMuon(geom_gentle_muon(kFALSE), gShowMuonRPhi, gShowMuonRhoZ);
   }
-  gRhoZMgr->SetCurrentDepth(-10);
-  gRhoZMgr->ImportElements(gGeomGentleRhoZ, gRhoZGeomScene);
-  gRhoZMgr->SetCurrentDepth(0);
-  if (gShowTRD)      gRhoZMgr->ImportElements(gGeomGentleTRD, gRhoZGeomScene);
-  if (gShowMUONRhoZ) gRhoZMgr->ImportElements(gGeomGentleMUON, gRhoZGeomScene);
-
-  // Viewers
-
-  TEveWindowSlot *slot = 0;
-  TEveWindowPack *pack = 0;
-
-  slot = TEveWindow::CreateWindowInTab(browser->GetTabRight());
-  pack = slot->MakePack();
-  pack->SetElementName("Multi View");
-  pack->SetHorizontal();
-  pack->SetShowTitleBar(kFALSE);
-  pack->NewSlot()->MakeCurrent();
-  g3DView = gEve->SpawnNewViewer("3D View", "");
-  g3DView->AddScene(gEve->GetGlobalScene());
-  g3DView->AddScene(gEve->GetEventScene());
-
-  pack = pack->NewSlot()->MakePack();
-  pack->SetShowTitleBar(kFALSE);
-  pack->NewSlot()->MakeCurrent();
-  gRPhiView = gEve->SpawnNewViewer("RPhi View", "");
-  gRPhiView->GetGLViewer()->SetCurrentCamera(TGLViewer::kCameraOrthoXOY);
-  gRPhiView->AddScene(gRPhiGeomScene);
-  gRPhiView->AddScene(gRPhiEventScene);
-
-  pack->NewSlot()->MakeCurrent();
-  gRhoZView = gEve->SpawnNewViewer("RhoZ View", "");
-  gRhoZView->GetGLViewer()->SetCurrentCamera(TGLViewer::kCameraOrthoXOY);
-  gRhoZView->AddScene(gRhoZGeomScene);
-  gRhoZView->AddScene(gRhoZEventScene);
 
 
   //==============================================================================
@@ -225,6 +135,7 @@ void visscan_init(const TString& cdburi = "",
   exec->AddMacro(new AliEveMacro(AliEveMacro::kAOD, "ANA HF",   "aod_HF.C",   "aod_HF",   "", kFALSE));
   exec->AddMacro(new AliEveMacro(AliEveMacro::kAOD, "ANA Jets", "jetplane.C", "jetplane", "", kFALSE));
 
+
   //==============================================================================
   // Additional GUI components
   //==============================================================================
@@ -259,6 +170,7 @@ void visscan_init(const TString& cdburi = "",
     "are placed here when the main-frame is closed.");
   gEve->GetWindowManager()->SetDefaultContainer(store_tab);
 
+
   //==============================================================================
   // AliEve objects - global tools
   //==============================================================================
@@ -341,18 +253,13 @@ void on_new_event()
 
   TEveElement* top = gEve->GetCurrentEvent();
 
-  if (gRPhiMgr && top)
-  {
-    gRPhiEventScene->DestroyElements();
-    if (gCenterProjectionsAtPrimaryVertex)
-      gRPhiMgr->SetCenter(x[0], x[1], x[2]);
-    gRPhiMgr->ImportElements(top, gRPhiEventScene);
-  }
-  if (gRhoZMgr && top)
-  {
-    gRhoZEventScene->DestroyElements();
-    if (gCenterProjectionsAtPrimaryVertex)
-      gRhoZMgr->SetCenter(x[0], x[1], x[2]);
-    gRhoZMgr->ImportElements(top, gRhoZEventScene);
-  }
+  gMultiView->DestroyEventRPhi();
+  if (gCenterProjectionsAtPrimaryVertex)
+    gMultiView->SetCenterRPhi(x[0], x[1], x[2]);
+  gMultiView->ImportEventRPhi(top);
+
+  gMultiView->DestroyEventRhoZ();
+  if (gCenterProjectionsAtPrimaryVertex)
+    gMultiView->SetCenterRhoZ(x[0], x[1], x[2]);
+  gMultiView->ImportEventRhoZ(top);
 }