Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TEveDigitSetGL.h
Go to the documentation of this file.
1// @(#)root/eve:$Id$
2// Author: Matevz Tadel 2007
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_TEveDigitSetGL
13#define ROOT_TEveDigitSetGL
14
15#include "TGLObject.h"
16#include "TEveDigitSet.h"
17
18#include <set>
19
20class TGLViewer;
21class TGLScene;
22
23class TEveDigitSet;
24
26{
27private:
28 TEveDigitSetGL(const TEveDigitSetGL&); // Not implemented
29 TEveDigitSetGL& operator=(const TEveDigitSetGL&); // Not implemented
30
31protected:
32 mutable const std::set<Int_t> *fHighlightSet;
33
35 void DrawFrameIfNeeded(TGLRnrCtx& rnrCtx) const;
36
37public:
39 virtual ~TEveDigitSetGL() {}
40
41 virtual void SetBBox();
42
43 virtual void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape* pshp, Int_t lvl=-1) const;
44
45 virtual Bool_t SupportsSecondarySelect() const { return kTRUE; }
46 virtual Bool_t AlwaysSecondarySelect() const { return ((TEveDigitSet*)fExternalObj)->GetAlwaysSecSelect(); }
47 virtual void ProcessSelection(TGLRnrCtx& rnrCtx, TGLSelectRecord& rec);
48
49 ClassDef(TEveDigitSetGL, 0); // GL renderer class for TEveDigitSet.
50};
51
52#endif
int Int_t
Definition RtypesCore.h:45
const Bool_t kTRUE
Definition RtypesCore.h:100
#define ClassDef(name, id)
Definition Rtypes.h:325
float * q
OpenGL renderer class for TEveDigitSet.
virtual Bool_t SupportsSecondarySelect() const
const std::set< Int_t > * fHighlightSet
virtual void DrawHighlight(TGLRnrCtx &rnrCtx, const TGLPhysicalShape *pshp, Int_t lvl=-1) const
Draw the quad-set in highlight mode.
virtual void ProcessSelection(TGLRnrCtx &rnrCtx, TGLSelectRecord &rec)
Processes secondary selection from TGLViewer.
virtual void SetBBox()
Set bounding box.
virtual ~TEveDigitSetGL()
TEveDigitSetGL(const TEveDigitSetGL &)
void DrawFrameIfNeeded(TGLRnrCtx &rnrCtx) const
Make a decision if the frame should be drawn.
virtual Bool_t AlwaysSecondarySelect() const
Bool_t SetupColor(const TEveDigitSet::DigitBase_t &q) const
Set color for rendering of the specified digit.
TEveDigitSetGL & operator=(const TEveDigitSetGL &)
TEveDigitSetGL()
Constructor.
Base-class for storage of digit collections; provides transformation matrix (TEveTrans),...
TObject * fExternalObj
first replica
Base-class for direct OpenGL renderers.
Definition TGLObject.h:22
Concrete physical shape - a GL drawable.
The TGLRnrCtx class aggregates data for a given redering context as needed by various parts of the RO...
Definition TGLRnrCtx.h:41
TGLScene provides management and rendering of ROOT's default 3D /object representation as logical and...
Definition TGLScene.h:29
Standard selection record including information about containing scene and details ob out selected ob...
Base GL viewer object - used by both standalone and embedded (in pad) GL.
Definition TGLViewer.h:55