Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TGLScene::TSceneInfo Class Reference

Definition at line 78 of file TGLScene.h.

Public Member Functions

 TSceneInfo (TGLViewerBase *view=nullptr, TGLScene *scene=nullptr)
 Constructor.
 
virtual ~TSceneInfo ()
 Destructor.
 
void ClearAfterRebuild ()
 Clear DrawElementVector fVisibleElement and optionally resize it so that it doesn't take more space then required by all the elements in the scene's draw-list.
 
void ClearAfterUpdate ()
 Clear DrawElementPtrVectors and optionally resize them so that they don't take more space then required by all the elements in the scene's draw-list.
 
void DumpDrawStats ()
 Output draw stats to Info stream.
 
void Lodify (TGLRnrCtx &ctx)
 Quantize LODs for given render-context.
 
void PostDraw ()
 Clean-up after drawing, nothing to be done here.
 
void PreDraw ()
 Prepare for drawing - fill DrawElementPtrVectors from the contents of fVisibleElements if there was some change.
 
void ResetDrawStats ()
 Reset draw statistics.
 
void UpdateDrawStats (const TGLPhysicalShape &shape, Short_t lod)
 Update draw stats, for newly drawn 'shape'.
 
- Public Member Functions inherited from TGLSceneInfo
 TGLSceneInfo (TGLViewerBase *view=nullptr, TGLSceneBase *scene=nullptr)
 
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)
 
virtual TClassIsA () const
 
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.
 
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.
 
void SetWFLineW (Float_t w)
 
Bool_t ShouldClip () const
 
virtual void Streamer (TBuffer &)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
Short_t Style () const
 
void UpdateTimeouted ()
 
Bool_t ViewCheck () const
 
void ViewCheck (Bool_t c)
 
Float_t WFLineW () const
 

Public Attributes

Int_t fAsPixelCnt
 
std::map< TClass *, UInt_tfByShapeCnt
 
UInt_t fMinorStamp
 
Int_t fOpaqueCnt
 
DrawElementPtrVec_t fOpaqueElements
 
DrawElementPtrVec_t fSelOpaqueElements
 
DrawElementPtrVec_t fSelTranspElements
 
ShapeVec_t fShapesOfInterest
 
Int_t fTranspCnt
 
DrawElementPtrVec_t fTranspElements
 
DrawElementVec_t fVisibleElements
 

Protected Member Functions

void ClearDrawElementPtrVec (DrawElementPtrVec_t &vec, Int_t maxSize)
 Clear given vec and if it grew too large compared to the size of shape-of-interest also resize it.
 
void ClearDrawElementVec (DrawElementVec_t &vec, Int_t maxSize)
 Clear given vec and if it grew too large compared to the size of shape-of-interest also resize it.
 

Private Member Functions

Bool_t CmpDrawElements (const DrawElement_t &de1, const DrawElement_t &de2)
 

Additional Inherited Members

- Public Types inherited from TGLSceneInfo
enum  EClipTest { kClipNone , kClipOutside , kClipInside }
 
- Static Public Member Functions inherited from TGLSceneInfo
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Protected Attributes inherited from TGLSceneInfo
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
 

#include <TGLScene.h>

Inheritance diagram for TGLScene::TSceneInfo:
[legend]

Constructor & Destructor Documentation

◆ TSceneInfo()

TGLScene::TSceneInfo::TSceneInfo ( TGLViewerBase view = nullptr,
TGLScene scene = nullptr 
)

Constructor.

Definition at line 48 of file TGLScene.cxx.

◆ ~TSceneInfo()

TGLScene::TSceneInfo::~TSceneInfo ( )
virtual

Destructor.

Definition at line 60 of file TGLScene.cxx.

Member Function Documentation

◆ ClearAfterRebuild()

void TGLScene::TSceneInfo::ClearAfterRebuild ( )

Clear DrawElementVector fVisibleElement and optionally resize it so that it doesn't take more space then required by all the elements in the scene's draw-list.

Definition at line 101 of file TGLScene.cxx.

◆ ClearAfterUpdate()

void TGLScene::TSceneInfo::ClearAfterUpdate ( )

Clear DrawElementPtrVectors and optionally resize them so that they don't take more space then required by all the elements in the scene's draw-list.

Definition at line 113 of file TGLScene.cxx.

◆ ClearDrawElementPtrVec()

void TGLScene::TSceneInfo::ClearDrawElementPtrVec ( DrawElementPtrVec_t vec,
Int_t  maxSize 
)
protected

Clear given vec and if it grew too large compared to the size of shape-of-interest also resize it.

Definition at line 84 of file TGLScene.cxx.

◆ ClearDrawElementVec()

void TGLScene::TSceneInfo::ClearDrawElementVec ( DrawElementVec_t vec,
Int_t  maxSize 
)
protected

Clear given vec and if it grew too large compared to the size of shape-of-interest also resize it.

Definition at line 68 of file TGLScene.cxx.

◆ CmpDrawElements()

Bool_t TGLScene::TSceneInfo::CmpDrawElements ( const DrawElement_t de1,
const DrawElement_t de2 
)
private

◆ DumpDrawStats()

void TGLScene::TSceneInfo::DumpDrawStats ( )

Output draw stats to Info stream.

Definition at line 218 of file TGLScene.cxx.

◆ Lodify()

void TGLScene::TSceneInfo::Lodify ( TGLRnrCtx ctx)

Quantize LODs for given render-context.

Definition at line 128 of file TGLScene.cxx.

◆ PostDraw()

void TGLScene::TSceneInfo::PostDraw ( )

Clean-up after drawing, nothing to be done here.

Definition at line 169 of file TGLScene.cxx.

◆ PreDraw()

void TGLScene::TSceneInfo::PreDraw ( )

Prepare for drawing - fill DrawElementPtrVectors from the contents of fVisibleElements if there was some change.

Definition at line 138 of file TGLScene.cxx.

◆ ResetDrawStats()

void TGLScene::TSceneInfo::ResetDrawStats ( )

Reset draw statistics.

Definition at line 176 of file TGLScene.cxx.

◆ UpdateDrawStats()

void TGLScene::TSceneInfo::UpdateDrawStats ( const TGLPhysicalShape shape,
Short_t  lod 
)

Update draw stats, for newly drawn 'shape'.

Definition at line 187 of file TGLScene.cxx.

Member Data Documentation

◆ fAsPixelCnt

Int_t TGLScene::TSceneInfo::fAsPixelCnt

Definition at line 114 of file TGLScene.h.

◆ fByShapeCnt

std::map<TClass*, UInt_t> TGLScene::TSceneInfo::fByShapeCnt

Definition at line 115 of file TGLScene.h.

◆ fMinorStamp

UInt_t TGLScene::TSceneInfo::fMinorStamp

Definition at line 92 of file TGLScene.h.

◆ fOpaqueCnt

Int_t TGLScene::TSceneInfo::fOpaqueCnt

Definition at line 112 of file TGLScene.h.

◆ fOpaqueElements

DrawElementPtrVec_t TGLScene::TSceneInfo::fOpaqueElements

Definition at line 93 of file TGLScene.h.

◆ fSelOpaqueElements

DrawElementPtrVec_t TGLScene::TSceneInfo::fSelOpaqueElements

Definition at line 95 of file TGLScene.h.

◆ fSelTranspElements

DrawElementPtrVec_t TGLScene::TSceneInfo::fSelTranspElements

Definition at line 96 of file TGLScene.h.

◆ fShapesOfInterest

ShapeVec_t TGLScene::TSceneInfo::fShapesOfInterest

Definition at line 88 of file TGLScene.h.

◆ fTranspCnt

Int_t TGLScene::TSceneInfo::fTranspCnt

Definition at line 113 of file TGLScene.h.

◆ fTranspElements

DrawElementPtrVec_t TGLScene::TSceneInfo::fTranspElements

Definition at line 94 of file TGLScene.h.

◆ fVisibleElements

DrawElementVec_t TGLScene::TSceneInfo::fVisibleElements

Definition at line 90 of file TGLScene.h.

Libraries for TGLScene::TSceneInfo:

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