library: libRGL
#include "TGLDrawable.h"

TGLDrawable


class description - header file - source file - inheritance tree (.pdf)

class TGLDrawable

Inheritance Chart:
TGLDrawable
<-
TGLLogicalShape
<-
TGLCylinder
TGLFaceSet
TGLObject
<-
TPointSet3DGL
TGLPolyLine
TGLPolyMarker
TGLSphere
TGLPhysicalShape
<-
TGLClip
 [more...]
 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.


    protected:
virtual void DirectDraw(const TGLDrawFlags& flags) const const TGLDrawable& operator=(const TGLDrawable&) public:
virtual ~TGLDrawable() const TGLBoundingBox& BoundingBox() const static TClass* Class() virtual void Draw(const TGLDrawFlags& flags) const ULong_t ID() const virtual TClass* IsA() const virtual void Purge() Bool_t SetCached(Bool_t cached) virtual Bool_t ShouldCache(const TGLDrawFlags& flags) const virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual TGLDrawable::ELODAxes SupportedLODAxes() const

Data Members


    protected:
ULong_t fID ! unique drawable ID Bool_t fCached ! use display list cached TGLBoundingBox fBoundingBox ! the drawables bounding box static TGLQuadric fgQuad ! Single common quadric drawing object public:
static const TGLDrawable::ELODAxes kLODAxesNone static const TGLDrawable::ELODAxes kLODAxesX static const TGLDrawable::ELODAxes kLODAxesY static const TGLDrawable::ELODAxes kLODAxesZ static const TGLDrawable::ELODAxes kLODAxesAll

Class Description

                                                                      
 TGLDrawable                                                          
                                                                      
 Abstract base class for all GL drawable objects - TGLPhysicalShape & 
 TGLLogicalShape hierarchy. Provides hooks for using the display list 
 cache in TGLDrawable::Draw() - the external draw method for all      
 shapes.                                                              
                                                                      
 Defines pure virtual TGLDrawable::DirectDraw() which derived classes 
 must implement with actual GL drawing.                               
                                                                      
 Display list caching can occur at either the physical or logical     
 level (with or without translation). Currently we cache only certain 
 derived logical shapes as not all logicals can respect the LOD draw  
 flag which is used in caching.                                       

const TGLDrawable& operator=(const TGLDrawable& gld)
assignement operator
~TGLDrawable()
 Destroy the GL drawable.
Bool_t SetCached(Bool_t cached)
 Modify capture of draws into display list cache
 kTRUE - capture, kFALSE direct draw
 Return kTRUE is state changed, kFALSE if not
void Draw(const TGLDrawFlags & flags)
 Draw the GL drawable, using draw flags. If DL caching is enabled
 (see SetCached) then attempt to draw from the cache, if not found
 attempt to capture the draw - done by DirectDraw() - into a new cache entry.
 If not cached just call DirectDraw() for normal non DL cached drawing.
void Purge()
 Purge all entries for all LODs for this drawable from the display list cache.

 Note: This does nothing at present as per drawable purging is not implemented
 in TGLDisplayListCache.
void DirectDraw(const TGLDrawFlags & flags)
 Methods
ULong_t ID()
const TGLBoundingBox & BoundingBox()
ELODAxes SupportedLODAxes()
Bool_t ShouldCache(const TGLDrawFlags & flags)

Author: Richard Maunder 25/05/2005
Last update: root/gl:$Name: $:$Id: TGLDrawable.cxx,v 1.14 2006/05/24 14:49:21 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.