REST-for-Physics  v2.3
Rare Event Searches ToolKit for Physics
TRestEveEventViewer.h
1
14
15#ifndef RestCore_TRestEveEventViewer
16#define RestCore_TRestEveEventViewer
17
18#include <TEveArrow.h>
19#include <TEveBrowser.h>
20#include <TEveEventManager.h>
21#include <TEveGeoNode.h>
22#include <TEveLine.h>
23#include <TEveManager.h>
24#include <TEveProjectionAxes.h>
25#include <TEveProjectionManager.h>
26#include <TEveScene.h>
27#include <TEveText.h>
28#include <TEveTrans.h>
29#include <TEveViewer.h>
30#include <TGLViewer.h>
31#include <TGTab.h>
32#include <TGeoManager.h>
33#include <TGeoMaterial.h>
34#include <TGeoNode.h>
35#include <TObject.h>
36#include <TPad.h>
37#include <TVector3.h>
38
39#include "TRestEventViewer.h"
40
42 protected:
43 TEveManager* gEve;
44
45 TEveWindowSlot* slot;
46 TEveWindowPack* pack;
47
48 TEveViewer* viewer3D;
49 TEveViewer* rphiViewer;
50 TEveViewer* rhozViewer;
51
52 TEveScene* rphiScene;
53 TEveScene* rhozScene;
54
55 TEveProjectionManager* rphi;
56 TEveProjectionManager* rhoz;
57
58 TEveProjectionAxes* rphiAxes;
59 TEveProjectionAxes* rhozAxes;
60
61 TEvePointSet* fEnergyDeposits;
62
63 char pointName[256];
64
65 Double_t fMinRadius = 0.2;
66 Double_t fMaxRadius = 3.0;
67
68 public:
69 virtual void Initialize();
70
71 virtual void Embed(TBrowser* b) {}
72
73 virtual void DeleteCurrentEvent();
74 void DeleteGeometry();
75
76 virtual void AddEvent(TRestEvent* ev) = 0;
77
78 virtual void Plot(const char* option) {}
79
80 void AddSphericalHit(double x, double y, double z, double radius, double en);
81
82 void MultiView();
83 void DrawTab();
84 void SetGeometry(TGeoManager* geo);
85 void Update();
86
87 void SetMinRadius(Double_t rmin) { fMinRadius = rmin; }
88 void SetMaxRadius(Double_t rmax) { fMaxRadius = rmax; }
89
90 // Constructor
92 // Destructor
93 virtual ~TRestEveEventViewer();
94
95 ClassDef(TRestEveEventViewer, 1); // class inherited from TRestEventViewer
96};
97#endif
A base class for any REST event.
Definition: TRestEvent.h:38