]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/EveBase/AliEveMultiView.h
Changes in order to modify also ITSonly tracks
[u/mrichter/AliRoot.git] / EVE / EveBase / AliEveMultiView.h
CommitLineData
1e9caa37 1// $Id$
2// Author: Matevz Tadel 2009
3
4/**************************************************************************
5 * Copyright(c) 1998-2009, 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#ifndef AliEveMultiView_H
11#define AliEveMultiView_H
12
13#include <TEveManager.h>
14
15#include <TEveViewer.h>
16#include <TGLViewer.h>
17
18#include <TEveScene.h>
19#include <TEveGeoShape.h>
20
21#include <TEveProjectionManager.h>
22#include <TEveProjectionAxes.h>
23
24#include <TEveBrowser.h>
25#include <TEveWindow.h>
26
27//______________________________________________________________________________
28// Short description of AliEveMultiView
29//
30
31class AliEveMultiView
32{
33public:
5f4e9982 34 AliEveMultiView(Bool_t setMuonView = kFALSE);
1e9caa37 35 virtual ~AliEveMultiView() {}
36
37 static AliEveMultiView* Instance();
38
5f4e9982 39 void InitGeomGentle(TEveGeoShape* g3d, TEveGeoShape* grphi, TEveGeoShape* grhoz, TEveGeoShape* gmuon);
1e9caa37 40 void InitGeomGentleTrd(TEveGeoShape* gtrd);
5f4e9982 41 void InitGeomGentleMuon(TEveGeoShape* gmuon, Bool_t showRPhi, Bool_t showRhoZ, Bool_t showMuon);
1e9caa37 42
43 //-------------------------------------------------------------------------
44
45 void SetDepth(Float_t d);
46
47 //-------------------------------------------------------------------------
48
49 void ImportGeomRPhi(TEveElement* el);
50 void ImportGeomRhoZ(TEveElement* el);
5f4e9982 51 void ImportGeomMuon(TEveElement* el);
1e9caa37 52 void ImportEventRPhi(TEveElement* el);
53 void ImportEventRhoZ(TEveElement* el);
5f4e9982 54 void ImportEventMuon(TEveElement* el);
1e9caa37 55
56 void DestroyEventRPhi();
57 void DestroyEventRhoZ();
5f4e9982 58 void DestroyEventMuon();
1e9caa37 59
60 void SetCenterRPhi(Double_t x, Double_t y, Double_t z);
61 void SetCenterRhoZ(Double_t x, Double_t y, Double_t z);
5f4e9982 62 void SetCenterMuon(Double_t x, Double_t y, Double_t z);
1e9caa37 63
a13d7c88 64 void DestroyAllGeometries();
65
1e9caa37 66 //-------------------------------------------------------------------------
67
68 TEveViewer* Get3DView() { return f3DView; }
69 TEveViewer* GetRPhiView() { return fRPhiView; }
70 TEveViewer* GetRhoZView() { return fRhoZView; }
5f4e9982 71 TEveViewer* GetMuonView() { return fMuonView; }
72
73 void SetMuonView(Bool_t set) { fIsMuonView = set; }
74 Bool_t IsMuonView() { return fIsMuonView; }
1e9caa37 75
76
77protected:
78 TEveProjectionManager *fRPhiMgr; // Obvious meaning.
79 TEveProjectionManager *fRhoZMgr; // Obvious meaning.
5f4e9982 80 TEveProjectionManager *fMuonMgr; // Obvious meaning.
1e9caa37 81
82 TEveViewer *f3DView; // Obvious meaning.
83 TEveViewer *fRPhiView; // Obvious meaning.
84 TEveViewer *fRhoZView; // Obvious meaning.
5f4e9982 85 TEveViewer *fMuonView; // Obvious meaning.
1e9caa37 86
87 TEveScene *fRPhiGeomScene; // Obvious meaning.
88 TEveScene *fRhoZGeomScene; // Obvious meaning.
5f4e9982 89 TEveScene *fMuonGeomScene; // Obvious meaning.
1e9caa37 90 TEveScene *fRPhiEventScene; // Obvious meaning.
91 TEveScene *fRhoZEventScene; // Obvious meaning.
5f4e9982 92 TEveScene *fMuonEventScene; // Obvious meaning.
1e9caa37 93
94 TEveGeoShape *fGeomGentle; // Obvious meaning.
95 TEveGeoShape *fGeomGentleRPhi; // Obvious meaning.
96 TEveGeoShape *fGeomGentleRhoZ; // Obvious meaning.
97 TEveGeoShape *fGeomGentleTrd; // Obvious meaning.
98 TEveGeoShape *fGeomGentleMuon; // Obvious meaning.
99
5f4e9982 100 Bool_t fIsMuonView;
101
1e9caa37 102 static AliEveMultiView* fgInstance; // Obvious meaning.
103
104private:
105 AliEveMultiView(const AliEveMultiView&); // Not implemented
106 AliEveMultiView& operator=(const AliEveMultiView&); // Not implemented
107
108 ClassDef(AliEveMultiView, 0); // Multiple-views.
109};
110
111#endif