Logo ROOT   6.08/07
Reference Guide
TEveJetConeGL.h
Go to the documentation of this file.
1 // @(#)root/eve:$Id$
2 // Author: Matevz Tadel, Jochen Thaeder 2009
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TEveJetConeGL
13 #define ROOT_TEveJetConeGL
14 
15 #include "TGLObject.h"
16 #include "TEveVector.h"
17 
18 class TGLViewer;
19 class TGLScene;
20 
21 class TEveJetCone;
23 
24 //------------------------------------------------------------------------------
25 // TEveJetCone
26 //------------------------------------------------------------------------------
27 
28 class TEveJetConeGL : public TGLObject
29 {
30 private:
31  TEveJetConeGL(const TEveJetConeGL&); // Not implemented
32  TEveJetConeGL& operator=(const TEveJetConeGL&); // Not implemented
33 
34 protected:
35  TEveJetCone *fC; // Model object.
36  mutable std::vector<TEveVector> fP;
37 
38  virtual void CalculatePoints() const;
39 
40 public:
41  TEveJetConeGL();
42  virtual ~TEveJetConeGL() {}
43 
44  virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0);
45  virtual void SetBBox();
46 
47  virtual void DLCacheClear();
48  virtual void Draw(TGLRnrCtx& rnrCtx) const;
49  virtual void DirectDraw(TGLRnrCtx & rnrCtx) const;
50 
51  ClassDef(TEveJetConeGL, 0); // GL renderer class for TEveJetCone.
52 };
53 
54 
55 //------------------------------------------------------------------------------
56 // TEveJetConeProjectedGL
57 //------------------------------------------------------------------------------
58 
60 {
61 private:
62  TEveJetConeProjectedGL(const TEveJetConeProjectedGL&); // Not implemented
63  TEveJetConeProjectedGL& operator=(const TEveJetConeProjectedGL&); // Not implemented
64 
65 protected:
66  TEveJetConeProjected *fM; // Model object.
67 
68  virtual void CalculatePoints() const;
69 
70  void RenderOutline() const;
71  void RenderPolygon() const;
72 
73 public:
76 
77  virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0);
78  virtual void SetBBox();
79 
80  virtual void Draw(TGLRnrCtx& rnrCtx) const;
81  virtual void DirectDraw(TGLRnrCtx & rnrCtx) const;
82 
83  ClassDef(TEveJetConeProjectedGL, 0); // GL renderer class for TEveJetCone.
84 };
85 
86 #endif
The TGLRnrCtx class aggregates data for a given redering context as needed by various parts of the RO...
Definition: TGLRnrCtx.h:40
const char Option_t
Definition: RtypesCore.h:62
virtual ~TEveJetConeProjectedGL()
Definition: TEveJetConeGL.h:75
Draws a jet cone with leading particle is specified in (eta,phi) and cone radius is given...
Definition: TEveJetCone.h:23
virtual void CalculatePoints() const
Calculate points for drawing.
bool Bool_t
Definition: RtypesCore.h:59
OpenGL renderer class for TEveJetConeProjected.
Definition: TEveJetConeGL.h:59
virtual void DLCacheClear()
Clear DL cache and reset internal point array.
#define ClassDef(name, id)
Definition: Rtypes.h:254
virtual Bool_t SetModel(TObject *obj, const Option_t *opt=0)
Set model object.
virtual void Draw(TGLRnrCtx &rnrCtx) const
Draw the cone.
Projection of TEveJetCone.
Definition: TEveJetCone.h:72
Base-class for direct OpenGL renderers.
Definition: TGLObject.h:21
virtual void SetBBox()
Set bounding box.
std::vector< TEveVector > fP
Definition: TEveJetConeGL.h:36
Base GL viewer object - used by both standalone and embedded (in pad) GL.
Definition: TGLViewer.h:53
TEveJetConeProjected * fM
Definition: TEveJetConeGL.h:66
TEveJetConeGL()
Constructor.
TEveJetConeGL & operator=(const TEveJetConeGL &)
TEveJetCone * fC
Definition: TEveJetConeGL.h:35
Mother of all ROOT objects.
Definition: TObject.h:37
OpenGL renderer class for TEveJetCone.
Definition: TEveJetConeGL.h:28
TGLScene provides management and rendering of ROOT&#39;s default 3D /object representation as logical and...
Definition: TGLScene.h:30
virtual void DirectDraw(TGLRnrCtx &rnrCtx) const
Render with OpenGL.
virtual ~TEveJetConeGL()
Definition: TEveJetConeGL.h:42