688111c2d8db7ad2c5446192d1d93ada77bb304f
[u/mrichter/AliRoot.git] / TPC / macros / tpc_tracks.C
1
2 class TEveProjectionManager;
3 class TEveGeoShape;
4 class TEveElement;
5 class TEveElementList;
6
7 TEveProjectionManager  * proj = 0;
8 TEveGeoShape * geom = 0;
9
10 void tpc_tracks()
11 {
12   TEveUtil::LoadMacro("alieve_init.C");
13   alieve_init(".", -1);
14
15   TEveUtil::LoadMacro("geom_gentle.C");
16
17   TEveUtil::LoadMacro("primary_vertex.C");
18   TEveUtil::LoadMacro("esd_tracks.C");
19   TEveUtil::LoadMacro("its_clusters.C+");
20   TEveUtil::LoadMacro("tpc_clusters.C+");
21
22   TEveViewer* nv = gEve->SpawnNewViewer("NLT Projected");
23   TEveScene*  ns = gEve->SpawnNewScene("NLT"); 
24   nv->AddScene(ns);
25   TGLViewer* v = nv->GetGLViewer();
26   v->SetCurrentCamera(TGLViewer::kCameraOrthoXOY);
27   TGLCameraMarkupStyle* mup = v->GetCameraMarkup();
28   if(mup) mup->SetShow(kFALSE);
29
30   TEveTrackCounter* g_trkcnt = new TEveTrackCounter("Primary Counter");
31   gEve->AddToListTree(g_trkcnt, kFALSE);
32
33   TEveProjectionManager* p = new TEveProjectionManager; proj = p;
34   gEve->AddToListTree(p, kTRUE);
35   gEve->AddElement(proj, ns);
36
37   // geometry
38   TEveGeoShape* gg = geom_gentle();
39   geom = gg;
40
41   // event
42   gEvent->AddNewEventCommand("on_new_event();");
43   gEvent->GotoEvent(0);
44
45   gEve->Redraw3D(kTRUE);
46 }
47
48 /**************************************************************************/
49
50 void on_new_event()
51 {
52   try {
53     //TEvePointSet* itsc = its_clusters();
54     //itsc->SetMarkerColor(5);
55
56     TEvePointSet* tpcc = tpc_clusters();
57     tpcc->SetMarkerColor(4);
58   }
59   catch(TEveException& exc) {
60     printf("Exception loading ITS/TPC clusters: %s\n", exc.Data());
61   }
62
63   TEveTrackList* cont = esd_tracks();
64   cont->SetLineWidth((Width_t)2);
65
66   TEveElement* top = gEve->GetCurrentEvent();
67   proj->DestroyElements();
68   //AliESDEvent* esd = AliEveEventManager::AssertESD();
69
70   // geom
71   proj->ImportElements(geom);
72   // event
73   proj->ImportElements(top);
74   // top->SetRnrState(kFALSE);
75 }