]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/alice-macros/its_hits.C
recover the detector tag int and not the string from the AOD particle
[u/mrichter/AliRoot.git] / EVE / alice-macros / its_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 #if !defined(__CINT__) || defined(__MAKECINT__)
11 #include <TTree.h>
12 #include <TEvePointSet.h>
13 #include <TEveElement.h>
14 #include <TEveManager.h>
15 #include <TEveTreeTools.h>
16
17 #include <AliRunLoader.h>
18 #include <AliEveEventManager.h>
19 #endif
20
21 TEvePointSet*
22 its_hits(const char *varexp    = "fX:fY:fZ",
23          const char *selection = "",
24          TEveElement* cont = 0)
25 {
26   AliRunLoader* rl =  AliEveEventManager::AssertRunLoader();
27   rl->LoadHits("ITS");
28
29   TTree* ht = rl->GetTreeH("ITS", false);
30
31   TEvePointSet* points = new TEvePointSet(Form("ITS Hits '%s'", selection));
32
33   TEvePointSelector ps(ht, points, varexp, selection);
34   // ps.SetSubIdExp("fTrack:fStatus");
35   ps.Select();
36
37   if(points->Size() == 0 && gEve->GetKeepEmptyCont() == kFALSE) {
38     Warning("its_hits", "No hits match '%s'", selection);
39     delete points;
40     return 0;
41   }
42
43   points->SetName(Form("ITS Hits"));
44   points->SetTitle(Form("N=%d", points->Size()));
45
46   points->ApplyVizTag("SIM Hits ITS", "Hits");
47
48   gEve->AddElement(points, cont);
49   gEve->Redraw3D();
50
51   return points;
52 }