2 Reve::PointSet* phos_clusters(RenderElement* cont=0)
4 Alieve::Event::AssertGeometry();
6 AliRunLoader* rl = Alieve::Event::AssertRunLoader();
7 rl->LoadRecPoints("PHOS");
9 TTree *cTree = rl->GetTreeR("PHOS", false);
11 Reve::PointSet* clusters = new Reve::PointSet(10000);
12 clusters->SetOwnIds(kTRUE);
15 TBranch *branch=cTree->GetBranch("PHOSEmcRP");
16 branch->SetAddress(&arr);
18 Int_t nentr=(Int_t)branch->GetEntries();
19 for (Int_t i=0; i<nentr; i++) {
20 if (!branch->GetEvent(i)) continue;
22 Int_t ncl=arr->GetEntriesFast();
24 AliCluster *cl=(AliCluster*)arr->UncheckedAt(ncl);
26 Float_t g[3]; //global coordinates
29 AliCluster *atp = new AliCluster(*cl);
30 clusters->SetNextPoint(g[0], g[1], g[2]);
31 clusters->SetPointId(atp);
35 Warning("phos_clusters"," %d",clusters->Size());
37 if(clusters->Size() == 0 && gReve->GetKeepEmptyCont() == kFALSE) {
38 Warning("phos_clusters", "No PHOS clusters");
43 clusters->SetMarkerStyle(2);
44 clusters->SetMarkerSize(0.5);
45 clusters->SetMarkerColor(4);
48 sprintf(form,"PHOS Clusters");
49 clusters->SetName(form);
52 sprintf(tip,"N=%d", clusters->Size());
53 clusters->SetTitle(tip);
56 gReve->AddRenderElement(clusters);