New class TrackCounter[Editor]; added RenderElement typedefs.
[u/mrichter/AliRoot.git] / EVE / README
1 EVE - Event Visualization Environment
2 =====================================
3
4 EVE is composed of:
5 1. small application kernel;
6 2. graphics classes with editors and OpenGL renderers;
7 3. CINT scripts that extract data, fill graphics classes and register
8    them to the application.
9
10 The framework is still evolving ... some things might not work as expected.
11
12
13 Usage
14 =====
15
16 1. Initialize ALICE environment.
17
18 2. Spawn 'alieve' executable and invoke the alieve_init.C macro, for example:
19
20 To load first event from current directory:
21    # alieve  alieve_init.C 
22 To load 5th event from directory /data/my-pp-run:
23    # alieve 'alieve_init.C("/data/my-pp-run", 5)' 
24 Interactively:
25    # alieve
26    root[0] .L alieve_init.C
27    root[1] alieve_init("/somedir")
28
29 3. Use GUI or CINT command-line to invoke further visualization macros.
30
31 4. To navigate the events use macros 'event_next.C' and 'event_prev.C'.
32    These are equivalent to the command-line invocations:
33    root[x] Alieve::gEvent->NextEvent()
34 or
35    root[x] Alieve::gEvent->PrevEvent()
36 The general form to go to event via its number is:
37    root[x] Alieve::gEvent->GotoEvent(<event-number>)
38
39 See files in EVE/alice-macros/. For specific uses these should be
40 edited to suit your needs.
41
42
43 Directory structure
44 ===================
45
46 EVE is split into two modules: REVE (ROOT part, not dependent on
47 AliROOT) and ALIEVE (ALICE specific part). For the time being both
48 modules are kept in AliROOT CVS.
49
50 Alieve/ and Reve/ -- sources
51
52 macros/           -- macros for bootstraping and internal steering
53 alice-macros/     -- macros for ALICE visualization
54 alica-data/       -- data files used by ALICE macros
55 test-macros/      -- macros for tests of specific features; usually one needs
56                      to copy and edit them
57
58 bin/, Makefile and make_base.inc are used for stand-alone build of the
59 packages.
60
61
62 Notes
63 =====
64
65 1. Problems with macro-execution
66 --------------------------------
67
68 A failed macro-execution can leave CINT in a poorly defined state that
69 prevents further execution of macros. For example:
70
71   Exception Reve::Exc_t: Event::Open failed opening ALICE ESDfriend from
72   '/alice-data/coctail_10k/AliESDfriends.root'.
73
74   root [1] Error: Function MUON_geom() is not defined in current scope  :0:
75   *** Interpreter error recovered ***
76   Error: G__unloadfile() File "/tmp/MUON_geom.C" not loaded  :0:
77
78 'gROOT->Reset()' helps in most of the cases.