12 #ifndef ROOT_TGLViewerBase 13 #define ROOT_TGLViewerBase void SceneDestructing(TGLSceneBase *scene)
Remove scene, its scene-info is deleted.
std::vector< TGLOverlayElement * > OverlayElmVec_t
The TGLRnrCtx class aggregates data for a given redering context as needed by various parts of the RO...
virtual void SetupClipObject()
Setup clip-object. Protected virtual method.
SceneInfoVec_t fVisScenes
Abstract base camera class - concrete classes for orthographic and perspective cameras derive from it...
void(TGLSceneBase::* SubRender_foo)(TGLRnrCtx &)
std::list< TGLSceneInfo * > SceneInfoList_t
OverlayElmVec_t::iterator OverlayElmVec_i
virtual void Render()
Render all scenes.
Scene base-class – provides basic interface expected by the TGLViewer or its sub-classes: ...
Bool_t FindClosestRecord(TGLSelectRecord &rec, Int_t &recIdx)
Find next select record that can be resolved, starting from position 'recIdx'.
virtual void RemoveOverlayElement(TGLOverlayElement *el)
Remove overlay element.
TGLViewerBase & operator=(const TGLViewerBase &)
Abstract clipping shape - derives from TGLPhysicalShape Adds clip mode (inside/outside) and pure virt...
virtual ~TGLViewerBase()
Destructor.
void SetOLLineW(Float_t w)
virtual void RenderSelected()
Render selected objects from all scenes.
Base class for GL viewers.
Bool_t FindClosestOpaqueRecord(TGLSelectRecord &rec, Int_t &recIdx)
Find next select record that can be resolved and whose result is not transparent, starting from posit...
virtual void PostRenderOverlaySelection()
Perform cleanup after overlay selection.
#define ClassDef(name, id)
virtual void ResetSceneInfos()
Force rebuild of view-dependent scene-info structures.
virtual void RenderSelectedForHighlight()
Render selected objects from all scenes for highlight.
TGLRnrCtx & RnrCtx() const
TGLLogicalShape * FindLogicalInScenes(TObject *id)
Find logical-shape representing object id in the list of scenes.
TGLRnrCtx * GetRnrCtx() const
TGLBoundingBox fOverallBoundingBox
virtual void PreRender()
Initialize render-context, setup camera, GL, render-area.
Standard selection record including information about containing scene and details ob out selected ob...
void SubRenderScenes(SubRender_foo render_foo)
Call sub-rendering function render_foo on all currently visible scenes.
virtual void RenderTransparent(Bool_t rnr_non_selected=kTRUE, Bool_t rnr_selected=kTRUE)
Render transparent objects from all scenes.
virtual void PostRender()
Function called after rendering is finished.
virtual void RenderOpaque(Bool_t rnr_non_selected=kTRUE, Bool_t rnr_selected=kTRUE)
Render opaque objects from all scenes.
virtual void DeleteOverlayElements(TGLOverlayElement::ERole r)
Delete overlay elements.
Bool_t fResetSceneInfosOnRender
Abstract logical shape - a GL 'drawable' - base for all shapes - faceset sphere etc.
SceneInfoVec_t::iterator SceneInfoVec_i
virtual void PreRenderOverlaySelection()
Perform minimal initialization for overlay selection.
virtual void RenderOverlay(Int_t state, Bool_t selection)
Render overlay objects.
virtual void AddOverlayElement(TGLOverlayElement *el)
Add overlay element.
std::vector< TGLSceneInfo * > SceneInfoVec_t
virtual const char * LockIdStr() const
Name to print in locking output.
TGLSceneInfo * AddScene(TGLSceneBase *scene)
Add new scene, appropriate scene-info is created.
virtual void RenderNonSelected()
Render non-selected objects from all scenes.
const TGLBoundingBox & RefOverallBoundingBox() const
Bool_t FindClosestOverlayRecord(TGLOvlSelectRecord &rec, Int_t &recIdx)
Find next overlay-select record that can be resolved, starting from position 'recIdx'.
virtual void MergeSceneBBoxes(TGLBoundingBox &bbox)
Merge bounding-boxes of all active registered scenes.
SceneInfoList_i FindScene(TGLSceneBase *scene)
Find scene-info corresponding to scene.
void RemoveAllScenes()
Remove all scenes from the viewer, their scene-infos are deleted.
Mother of all ROOT objects.
Concrete class describing an orientated (free) or axis aligned box of 8 vertices. ...
typedef void((*Func_t)())
virtual void DeleteOverlayAnnotations()
Delete overlay elements that are annotations.
void RemoveScene(TGLSceneBase *scene)
Remove scene from the viewer, its scene-info is deleted.
Base class for extended scene context.
SceneInfoList_t::iterator SceneInfoList_i
Selection record for overlay objects.
Simple locking interface used by viewer and scene.
Bool_t ResolveSelectRecord(TGLSelectRecord &rec, Int_t recIdx)
Process selection record on buffer-position 'recIdx' and fill the data into 'rec'.
void SetWFLineW(Float_t w)
virtual Bool_t IsChanged() const
void SetStyle(Short_t st)
TGLSceneInfo * GetSceneInfo(TGLSceneBase *scene)
Find scene-info corresponding to scene.