Logo ROOT   master
Reference Guide
TGLSceneInfo Class Reference

Base class for extended scene context.

Scenes can be shared among several viewers and each scene needs to cache some viewer/camera/clipping specific state => this is a storage class for this data.

Sub-classes of TGLSceneBase can override the virtual CreateSceneInfo() method and in it instantiate a sub-class of TGLSceneInfo containing the needed information. See TGLScene and inner class SceneInfo; note that some casting is needed in actual methods as TGLRnrCtx holds the base-class pointer.

Definition at line 26 of file TGLSceneInfo.h.

Public Types

enum  EClipTest { kClipNone, kClipOutside, kClipInside }
 

Public Member Functions

 TGLSceneInfo (TGLViewerBase *view=0, TGLSceneBase *scene=0)
 
virtual ~TGLSceneInfo ()
 
UInt_t CameraStamp () const
 
TGLClipClip () const
 
Char_t ClipMode () const
 
void ClipMode (Char_t m)
 
std::vector< TGLPlane > & ClipPlanes ()
 
UInt_t ClipStamp () const
 
std::vector< TGLPlane > & FrustumPlanes ()
 
Bool_t GetActive () const
 
TGLSceneBaseGetScene () const
 
const TGLBoundingBoxGetTransformedBBox ()
 
TGLViewerBaseGetViewer () const
 
Bool_t HasUpdateTimeouted () const
 
void InClip (Bool_t c)
 
void InFrustum (Bool_t f)
 
Bool_t IsInClip () const
 
Bool_t IsInFrustum () const
 
Bool_t IsVisible () const
 
TGLCameraLastCamera () const
 
TGLClipLastClip () const
 
Short_t LastLOD () const
 
Float_t LastOLLineW () const
 
Short_t LastStyle () const
 
Float_t LastWFLineW () const
 
Short_t LOD () const
 
Float_t OLLineW () const
 
TGLSceneBaseRefScene () const
 
TGLViewerBaseRefViewer () const
 
void ResetCameraStamp ()
 
void ResetClipStamp ()
 
void ResetSceneStamp ()
 
void ResetUpdateTimeouted ()
 
UInt_t SceneStamp () const
 
void SetActive (Bool_t a)
 Set active state of the scene, mark viewer as changed. More...
 
void SetCameraStamp (UInt_t ts)
 
void SetClip (TGLClip *p)
 
void SetClipStamp (UInt_t ts)
 
void SetLastCamera (TGLCamera *p)
 
void SetLastClip (TGLClip *p)
 
void SetLastLOD (Short_t ld)
 
void SetLastOLLineW (Float_t w)
 
void SetLastStyle (Short_t st)
 
void SetLastWFLineW (Float_t w)
 
void SetLOD (Short_t lod)
 
void SetOLLineW (Float_t w)
 
void SetSceneStamp (UInt_t ts)
 
virtual void SetSceneTrans (TGLMatrix &)
 
void SetStyle (Short_t st)
 
void SetupTransformsAndBBox ()
 Combine information from scene, scene-info and camera (should be optional) into transformation matrices. More...
 
void SetWFLineW (Float_t w)
 
Bool_t ShouldClip () const
 
Short_t Style () const
 
void UpdateTimeouted ()
 
Bool_t ViewCheck () const
 
void ViewCheck (Bool_t c)
 
Float_t WFLineW () const
 

Protected Attributes

Bool_t fActive
 
UInt_t fCameraStamp
 
TGLClipfClip
 
Char_t fClipMode
 
TGLPlaneSet_t fClipPlanes
 
UInt_t fClipStamp
 
TGLPlaneSet_t fFrustumPlanes
 
Bool_t fInClip
 
Bool_t fInFrustum
 
TGLCamerafLastCamera
 
TGLClipfLastClip
 
Short_t fLastLOD
 
Float_t fLastOLLineW
 
Short_t fLastStyle
 
Float_t fLastWFLineW
 
Short_t fLOD
 
Float_t fOLLineW
 
TGLSceneBasefScene
 
UInt_t fSceneStamp
 
Short_t fStyle
 
TGLBoundingBox fTransformedBBox
 
Bool_t fUpdateTimeouted
 
Bool_t fViewCheck
 
TGLViewerBasefViewer
 
Float_t fWFLineW
 

Private Member Functions

 TGLSceneInfo (const TGLSceneInfo &)
 
TGLSceneInfooperator= (const TGLSceneInfo &)
 

Friends

class TGLSceneBase
 

#include <TGLSceneInfo.h>

Inheritance diagram for TGLSceneInfo:
[legend]

Member Enumeration Documentation

◆ EClipTest

Enumerator
kClipNone 
kClipOutside 
kClipInside 

Definition at line 31 of file TGLSceneInfo.h.

Constructor & Destructor Documentation

◆ TGLSceneInfo() [1/2]

TGLSceneInfo::TGLSceneInfo ( const TGLSceneInfo )
private

◆ TGLSceneInfo() [2/2]

TGLSceneInfo::TGLSceneInfo ( TGLViewerBase view = 0,
TGLSceneBase scene = 0 
)

Definition at line 36 of file TGLSceneInfo.cxx.

◆ ~TGLSceneInfo()

virtual TGLSceneInfo::~TGLSceneInfo ( )
inlinevirtual

Definition at line 79 of file TGLSceneInfo.h.

Member Function Documentation

◆ CameraStamp()

UInt_t TGLSceneInfo::CameraStamp ( ) const
inline

Definition at line 149 of file TGLSceneInfo.h.

◆ Clip()

TGLClip* TGLSceneInfo::Clip ( ) const
inline

Definition at line 121 of file TGLSceneInfo.h.

◆ ClipMode() [1/2]

Char_t TGLSceneInfo::ClipMode ( ) const
inline

Definition at line 101 of file TGLSceneInfo.h.

◆ ClipMode() [2/2]

void TGLSceneInfo::ClipMode ( Char_t  m)
inline

Definition at line 102 of file TGLSceneInfo.h.

◆ ClipPlanes()

std::vector<TGLPlane>& TGLSceneInfo::ClipPlanes ( )
inline

Definition at line 108 of file TGLSceneInfo.h.

◆ ClipStamp()

UInt_t TGLSceneInfo::ClipStamp ( ) const
inline

Definition at line 145 of file TGLSceneInfo.h.

◆ FrustumPlanes()

std::vector<TGLPlane>& TGLSceneInfo::FrustumPlanes ( )
inline

Definition at line 107 of file TGLSceneInfo.h.

◆ GetActive()

Bool_t TGLSceneInfo::GetActive ( ) const
inline

Definition at line 86 of file TGLSceneInfo.h.

◆ GetScene()

TGLSceneBase* TGLSceneInfo::GetScene ( ) const
inline

Definition at line 83 of file TGLSceneInfo.h.

◆ GetTransformedBBox()

const TGLBoundingBox& TGLSceneInfo::GetTransformedBBox ( )
inline

Definition at line 91 of file TGLSceneInfo.h.

◆ GetViewer()

TGLViewerBase* TGLSceneInfo::GetViewer ( ) const
inline

Definition at line 81 of file TGLSceneInfo.h.

◆ HasUpdateTimeouted()

Bool_t TGLSceneInfo::HasUpdateTimeouted ( ) const
inline

Definition at line 153 of file TGLSceneInfo.h.

◆ InClip()

void TGLSceneInfo::InClip ( Bool_t  c)
inline

Definition at line 100 of file TGLSceneInfo.h.

◆ InFrustum()

void TGLSceneInfo::InFrustum ( Bool_t  f)
inline

Definition at line 98 of file TGLSceneInfo.h.

◆ IsInClip()

Bool_t TGLSceneInfo::IsInClip ( ) const
inline

Definition at line 99 of file TGLSceneInfo.h.

◆ IsInFrustum()

Bool_t TGLSceneInfo::IsInFrustum ( ) const
inline

Definition at line 97 of file TGLSceneInfo.h.

◆ IsVisible()

Bool_t TGLSceneInfo::IsVisible ( ) const
inline

Definition at line 105 of file TGLSceneInfo.h.

◆ LastCamera()

TGLCamera* TGLSceneInfo::LastCamera ( ) const
inline

Definition at line 138 of file TGLSceneInfo.h.

◆ LastClip()

TGLClip* TGLSceneInfo::LastClip ( ) const
inline

Definition at line 135 of file TGLSceneInfo.h.

◆ LastLOD()

Short_t TGLSceneInfo::LastLOD ( ) const
inline

Definition at line 124 of file TGLSceneInfo.h.

◆ LastOLLineW()

Float_t TGLSceneInfo::LastOLLineW ( ) const
inline

Definition at line 132 of file TGLSceneInfo.h.

◆ LastStyle()

Short_t TGLSceneInfo::LastStyle ( ) const
inline

Definition at line 127 of file TGLSceneInfo.h.

◆ LastWFLineW()

Float_t TGLSceneInfo::LastWFLineW ( ) const
inline

Definition at line 130 of file TGLSceneInfo.h.

◆ LOD()

Short_t TGLSceneInfo::LOD ( ) const
inline

Definition at line 110 of file TGLSceneInfo.h.

◆ OLLineW()

Float_t TGLSceneInfo::OLLineW ( ) const
inline

Definition at line 118 of file TGLSceneInfo.h.

◆ operator=()

TGLSceneInfo& TGLSceneInfo::operator= ( const TGLSceneInfo )
private

◆ RefScene()

TGLSceneBase& TGLSceneInfo::RefScene ( ) const
inline

Definition at line 84 of file TGLSceneInfo.h.

◆ RefViewer()

TGLViewerBase& TGLSceneInfo::RefViewer ( ) const
inline

Definition at line 82 of file TGLSceneInfo.h.

◆ ResetCameraStamp()

void TGLSceneInfo::ResetCameraStamp ( )
inline

Definition at line 151 of file TGLSceneInfo.h.

◆ ResetClipStamp()

void TGLSceneInfo::ResetClipStamp ( )
inline

Definition at line 147 of file TGLSceneInfo.h.

◆ ResetSceneStamp()

void TGLSceneInfo::ResetSceneStamp ( )
inline

Definition at line 143 of file TGLSceneInfo.h.

◆ ResetUpdateTimeouted()

void TGLSceneInfo::ResetUpdateTimeouted ( )
inline

Definition at line 155 of file TGLSceneInfo.h.

◆ SceneStamp()

UInt_t TGLSceneInfo::SceneStamp ( ) const
inline

Definition at line 141 of file TGLSceneInfo.h.

◆ SetActive()

void TGLSceneInfo::SetActive ( Bool_t  a)

Set active state of the scene, mark viewer as changed.

Definition at line 70 of file TGLSceneInfo.cxx.

◆ SetCameraStamp()

void TGLSceneInfo::SetCameraStamp ( UInt_t  ts)
inline

Definition at line 150 of file TGLSceneInfo.h.

◆ SetClip()

void TGLSceneInfo::SetClip ( TGLClip p)
inline

Definition at line 122 of file TGLSceneInfo.h.

◆ SetClipStamp()

void TGLSceneInfo::SetClipStamp ( UInt_t  ts)
inline

Definition at line 146 of file TGLSceneInfo.h.

◆ SetLastCamera()

void TGLSceneInfo::SetLastCamera ( TGLCamera p)
inline

Definition at line 139 of file TGLSceneInfo.h.

◆ SetLastClip()

void TGLSceneInfo::SetLastClip ( TGLClip p)
inline

Definition at line 136 of file TGLSceneInfo.h.

◆ SetLastLOD()

void TGLSceneInfo::SetLastLOD ( Short_t  ld)
inline

Definition at line 125 of file TGLSceneInfo.h.

◆ SetLastOLLineW()

void TGLSceneInfo::SetLastOLLineW ( Float_t  w)
inline

Definition at line 133 of file TGLSceneInfo.h.

◆ SetLastStyle()

void TGLSceneInfo::SetLastStyle ( Short_t  st)
inline

Definition at line 128 of file TGLSceneInfo.h.

◆ SetLastWFLineW()

void TGLSceneInfo::SetLastWFLineW ( Float_t  w)
inline

Definition at line 131 of file TGLSceneInfo.h.

◆ SetLOD()

void TGLSceneInfo::SetLOD ( Short_t  lod)
inline

Definition at line 111 of file TGLSceneInfo.h.

◆ SetOLLineW()

void TGLSceneInfo::SetOLLineW ( Float_t  w)
inline

Definition at line 119 of file TGLSceneInfo.h.

◆ SetSceneStamp()

void TGLSceneInfo::SetSceneStamp ( UInt_t  ts)
inline

Definition at line 142 of file TGLSceneInfo.h.

◆ SetSceneTrans()

virtual void TGLSceneInfo::SetSceneTrans ( TGLMatrix )
inlinevirtual

Definition at line 93 of file TGLSceneInfo.h.

◆ SetStyle()

void TGLSceneInfo::SetStyle ( Short_t  st)
inline

Definition at line 114 of file TGLSceneInfo.h.

◆ SetupTransformsAndBBox()

void TGLSceneInfo::SetupTransformsAndBBox ( )

Combine information from scene, scene-info and camera (should be optional) into transformation matrices.

Transform scene bounding box using this transformation.

Definition at line 85 of file TGLSceneInfo.cxx.

◆ SetWFLineW()

void TGLSceneInfo::SetWFLineW ( Float_t  w)
inline

Definition at line 117 of file TGLSceneInfo.h.

◆ ShouldClip()

Bool_t TGLSceneInfo::ShouldClip ( ) const
inline

Definition at line 104 of file TGLSceneInfo.h.

◆ Style()

Short_t TGLSceneInfo::Style ( ) const
inline

Definition at line 113 of file TGLSceneInfo.h.

◆ UpdateTimeouted()

void TGLSceneInfo::UpdateTimeouted ( )
inline

Definition at line 154 of file TGLSceneInfo.h.

◆ ViewCheck() [1/2]

Bool_t TGLSceneInfo::ViewCheck ( ) const
inline

Definition at line 95 of file TGLSceneInfo.h.

◆ ViewCheck() [2/2]

void TGLSceneInfo::ViewCheck ( Bool_t  c)
inline

Definition at line 96 of file TGLSceneInfo.h.

◆ WFLineW()

Float_t TGLSceneInfo::WFLineW ( ) const
inline

Definition at line 116 of file TGLSceneInfo.h.

Friends And Related Function Documentation

◆ TGLSceneBase

friend class TGLSceneBase
friend

Definition at line 28 of file TGLSceneInfo.h.

Member Data Documentation

◆ fActive

Bool_t TGLSceneInfo::fActive
protected

Definition at line 40 of file TGLSceneInfo.h.

◆ fCameraStamp

UInt_t TGLSceneInfo::fCameraStamp
protected

Definition at line 57 of file TGLSceneInfo.h.

◆ fClip

TGLClip* TGLSceneInfo::fClip
protected

Definition at line 46 of file TGLSceneInfo.h.

◆ fClipMode

Char_t TGLSceneInfo::fClipMode
protected

Definition at line 70 of file TGLSceneInfo.h.

◆ fClipPlanes

TGLPlaneSet_t TGLSceneInfo::fClipPlanes
protected

Definition at line 72 of file TGLSceneInfo.h.

◆ fClipStamp

UInt_t TGLSceneInfo::fClipStamp
protected

Definition at line 56 of file TGLSceneInfo.h.

◆ fFrustumPlanes

TGLPlaneSet_t TGLSceneInfo::fFrustumPlanes
protected

Definition at line 71 of file TGLSceneInfo.h.

◆ fInClip

Bool_t TGLSceneInfo::fInClip
protected

Definition at line 69 of file TGLSceneInfo.h.

◆ fInFrustum

Bool_t TGLSceneInfo::fInFrustum
protected

Definition at line 68 of file TGLSceneInfo.h.

◆ fLastCamera

TGLCamera* TGLSceneInfo::fLastCamera
protected

Definition at line 53 of file TGLSceneInfo.h.

◆ fLastClip

TGLClip* TGLSceneInfo::fLastClip
protected

Definition at line 52 of file TGLSceneInfo.h.

◆ fLastLOD

Short_t TGLSceneInfo::fLastLOD
protected

Definition at line 48 of file TGLSceneInfo.h.

◆ fLastOLLineW

Float_t TGLSceneInfo::fLastOLLineW
protected

Definition at line 51 of file TGLSceneInfo.h.

◆ fLastStyle

Short_t TGLSceneInfo::fLastStyle
protected

Definition at line 49 of file TGLSceneInfo.h.

◆ fLastWFLineW

Float_t TGLSceneInfo::fLastWFLineW
protected

Definition at line 50 of file TGLSceneInfo.h.

◆ fLOD

Short_t TGLSceneInfo::fLOD
protected

Definition at line 42 of file TGLSceneInfo.h.

◆ fOLLineW

Float_t TGLSceneInfo::fOLLineW
protected

Definition at line 45 of file TGLSceneInfo.h.

◆ fScene

TGLSceneBase* TGLSceneInfo::fScene
protected

Definition at line 39 of file TGLSceneInfo.h.

◆ fSceneStamp

UInt_t TGLSceneInfo::fSceneStamp
protected

Definition at line 55 of file TGLSceneInfo.h.

◆ fStyle

Short_t TGLSceneInfo::fStyle
protected

Definition at line 43 of file TGLSceneInfo.h.

◆ fTransformedBBox

TGLBoundingBox TGLSceneInfo::fTransformedBBox
protected

Definition at line 65 of file TGLSceneInfo.h.

◆ fUpdateTimeouted

Bool_t TGLSceneInfo::fUpdateTimeouted
protected

Definition at line 58 of file TGLSceneInfo.h.

◆ fViewCheck

Bool_t TGLSceneInfo::fViewCheck
protected

Definition at line 67 of file TGLSceneInfo.h.

◆ fViewer

TGLViewerBase* TGLSceneInfo::fViewer
protected

Definition at line 38 of file TGLSceneInfo.h.

◆ fWFLineW

Float_t TGLSceneInfo::fWFLineW
protected

Definition at line 44 of file TGLSceneInfo.h.

Libraries for TGLSceneInfo:
[legend]

The documentation for this class was generated from the following files: