]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVE/alice-macros/jetplane.C
AliEveMacro
[u/mrichter/AliRoot.git] / EVE / alice-macros / jetplane.C
index e24e34527e5002bf373b4c58c3c5b6c4a642c92a..e32838c050cbcac3176bb9968da50e3813b16bb5 100644 (file)
@@ -6,21 +6,41 @@
  * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
  * full copyright notice.                                                 *
  **************************************************************************/
-AliEveJetPlane* jetplane(Int_t iev)
+
+TEveViewer *gJPView   = 0;
+TEveScene  *gJPScene  = 0;
+
+AliEveJetPlane* jetplane()
 {
-  TFile* f       = new TFile("aod.root");
-  TTree* treeAOD = (TTree*) f->Get("AOD");
-  AliAODEvent* aod = new AliAODEvent();
-  aod->ReadFromTree(treeAOD);
-  treeAOD->GetEntry(iev);
+  if (gJPView == 0)
+  {
+    TEveWindowSlot *slot    = 0;
+    TEveBrowser    *browser = gEve->GetBrowser();
+
+    slot = TEveWindow::CreateWindowInTab(browser->GetTabRight());
+    slot->MakeCurrent();
+    gJPView  = gEve->SpawnNewViewer("JetPlane", "");
+    gJPScene = gEve->SpawnNewScene("JetPlane", "Scene holding elements of the jet-plane view.");
+    gJPView->AddScene(gJPScene);
+
+    gJPView->GetGLViewer()->SetCurrentCamera(TGLViewer::kCameraPerspXOY);
+  }
+
+  AliAODEvent* aod = AliEveEventManager::AssertAOD();
+  
+  // We have event id everywhere now.
+  Int_t iev = AliEveEventManager::GetMaster()->GetEventId();
+
+  gStyle->SetPalette(1, 0);
 
   AliEveJetPlane* jp = new AliEveJetPlane(iev);
+  jp->SetPickable(kTRUE);
 
   // Read Jets in current event
 
   TClonesArray* jets = aod->GetJets();
   Int_t njets = jets->GetEntries();
-  printf("AliEveEventManager: %5d Number of jets: %5d \n", iev, njets);
+  printf("Event: %5d Number of jets: %5d \n", iev, njets);
 
   for (Int_t ij = 0; ij < njets; ij++)
   {
@@ -32,7 +52,7 @@ AliEveJetPlane* jetplane(Int_t iev)
 
   TClonesArray* tracks = aod->GetTracks();
   Int_t ntracks = tracks->GetEntries();
-  printf("AliEveEventManager: %5d Number of tracks: %5d \n", iev, ntracks);
+  printf("Event: %5d Number of tracks: %5d \n", iev, ntracks);
 
   for (Int_t ij = 0; ij < ntracks; ij++)
   {
@@ -41,8 +61,9 @@ AliEveJetPlane* jetplane(Int_t iev)
   }
 
   // Render Jet Plane
-  gStyle->SetPalette(1, 0);
-  gEve->AddElement(jp);
+  gJPScene->AddElement(jp);
+  AliEveEventManager::RegisterTransient(jp);
+
   gEve->Redraw3D();
 
   return jp;