Merge of EVE-dev branch.
[u/mrichter/AliRoot.git] / EVE / alice-macros / acorde_hits.C
1 // $Id$
2 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3
4 /**************************************************************************
5  * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6  * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
7  * full copyright notice.                                                 *
8  **************************************************************************/
9
10 TEvePointSet*
11 acorde_hits(const char  *varexp    = "ACORDE.fX:ACORDE.fY:ACORDE.fZ",
12             const char  *selection = "",
13             TEveElement *cont      = 0)
14 {
15   AliRunLoader* rl =  AliEveEventManager::AssertRunLoader();
16   rl->LoadHits("ACORDE");
17
18   TTree* ht = rl->GetTreeH("ACORDE", false);
19
20   //PH The line below is replaced waiting for a fix in Root
21   //PH which permits to use variable siza arguments in CINT
22   //PH on some platforms (alphalinuxgcc, solariscc5, etc.)
23   //PH  TEvePointSet* points = new TEvePointSet(Form("ACORDE Hits '%s'", selection));
24   char form[1000];
25   sprintf(form,"ACORDE Hits '%s'", selection);
26   TEvePointSet* points = new TEvePointSet(form);
27
28   TEvePointSelector ps(ht, points, varexp, selection);
29   ps.Select();
30
31   if(points->Size() == 0 && gEve->GetKeepEmptyCont() == kFALSE)
32   {
33     Warning("acorde_hits", Form("No hits match '%s'", selection));
34     delete points;
35     return 0;
36   }
37
38   //PH  points->SetTitle(Form("N=%d", points->Size()));
39   sprintf(form,"N=%d", points->Size());
40   points->SetTitle(form);
41   points->SetMarkerSize(.5);
42   points->SetMarkerColor(2);
43
44   gEve->AddElement(points, cont);
45   gEve->Redraw3D();
46
47   return points;
48 }