library: libRGL #include "TGLLogicalShape.h" |
TGLLogicalShape
class description - source file - inheritance tree (.pdf)
This is an abstract class, constructors will not be documented.
Look at the header to check for available constructors.
public:
virtual ~TGLLogicalShape()
void AddRef() const
static TClass* Class()
void InvokeContextMenu(TContextMenu& menu, UInt_t x, UInt_t y) const
virtual TClass* IsA() const
UInt_t Ref() const
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
void StrongRef(Bool_t strong) const
Bool_t SubRef() const
private:
TObject* fExternalObj
UInt_t fRef ! physical instance ref counting
protected:
Bool_t fRefStrong ! Strong ref (delete on 0 ref)
TGLLogicalShape
Abstract logical shape - a GL 'drawable' - base for all shapes -
faceset sphere etc. Logical shapes are a unique piece of geometry,
described in it's local frame - e.g if we have three spheres in :
Sphere A - Radius r1, center v1
Sphere B - Radius r2, center v2
Sphere C - Radius r1, center v3
Spheres A and C can share a common logical sphere of radius r1 - and
place them with two physicals with translations of v1 & v2. Sphere B
requires a different logical (radius r2), placed with physical with
translation v2.
Physical shapes know about and can share logicals. Logicals do not
about (aside from reference counting) physicals or share them.
This sharing of logical shapes greatly reduces memory consumption and
scene (re)build times in typical detector geometries which have many
repeated objects placements.
TGLLogicalShapes have reference counting, performed by the client
physical shapes which are using it.
See base/src/TVirtualViewer3D for description of common external 3D
viewer architecture and how external viewer clients use it.
~TGLLogicalShape()
Destroy logical shape
void InvokeContextMenu(TContextMenu & menu, UInt_t x, UInt_t y) const
Invoke popup menu or our bound external TObject (if any), using passed
'menu' object, at location 'x' 'y'
Inline Functions
void AddRef() const
Bool_t SubRef() const
UInt_t Ref() const
void StrongRef(Bool_t strong) const
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
Author: Richard Maunder 25/05/2005
Last update: root/gl:$Name: $:$Id: TGLLogicalShape.cxx,v 1.9 2006/02/20 11:02:19 brun Exp $
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.