12 #ifndef ROOT_TGLViewerBase
13 #define ROOT_TGLViewerBase
void SceneDestructing(TGLSceneBase *scene)
Remove scene, its scene-info is deleted.
const TGLBoundingBox & RefOverallBoundingBox() const
std::vector< TGLOverlayElement * > OverlayElmVec_t
ClassDef(TGLViewerBase, 0)
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.
TGLRnrCtx * GetRnrCtx() const
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.
virtual void ResetSceneInfos()
Force rebuild of view-dependent scene-info structures.
virtual Bool_t IsChanged() const
virtual void RenderSelectedForHighlight()
Render selected objects from all scenes for highlight.
TGLLogicalShape * FindLogicalInScenes(TObject *id)
Find logical-shape representing object id in the list of scenes.
TGLBoundingBox fOverallBoundingBox
TGLRnrCtx & RnrCtx() const
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
TGLSceneInfo * AddScene(TGLSceneBase *scene)
Add new scene, appropriate scene-info is created.
virtual void RenderNonSelected()
Render non-selected objects from all scenes.
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
virtual const char * LockIdStr() const
Name to print in locking output.
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)
void SetStyle(Short_t st)
TGLSceneInfo * GetSceneInfo(TGLSceneBase *scene)
Find scene-info corresponding to scene.