TGLScene Class Reference

#include <TGLScene.h>

Inheritance diagram for TGLScene:

TGLSceneBase TGLSceneBase TGLLockable TGLLockable TGLLockable TGLLockable TGLScenePad TGLScenePad List of all members.

Public Types

typedef std::map< TObject *,
TGLLogicalShape * > 
LogicalShapeMap_t
typedef LogicalShapeMap_t::value_type LogicalShapeMapValueType_t
typedef LogicalShapeMap_t::iterator LogicalShapeMapIt_t
typedef LogicalShapeMap_t::const_iterator LogicalShapeMapCIt_t
typedef std::map< UInt_t,
TGLPhysicalShape * > 
PhysicalShapeMap_t
typedef PhysicalShapeMap_t::value_type PhysicalShapeMapValueType_t
typedef PhysicalShapeMap_t::iterator PhysicalShapeMapIt_t
typedef PhysicalShapeMap_t::const_iterator PhysicalShapeMapCIt_t
typedef std::vector< DrawElement_tDrawElementVec_t
typedef std::vector< DrawElement_t
>::iterator 
DrawElementVec_i
typedef std::vector< DrawElement_t * > DrawElementPtrVec_t
typedef std::vector< DrawElement_t
* >::iterator 
DrawElementPtrVec_i
typedef std::vector< const
TGLPhysicalShape * > 
ShapeVec_t
typedef ShapeVec_t::iterator ShapeVec_i
typedef std::map< TObject *,
TGLLogicalShape * > 
LogicalShapeMap_t
typedef LogicalShapeMap_t::value_type LogicalShapeMapValueType_t
typedef LogicalShapeMap_t::iterator LogicalShapeMapIt_t
typedef LogicalShapeMap_t::const_iterator LogicalShapeMapCIt_t
typedef std::map< UInt_t,
TGLPhysicalShape * > 
PhysicalShapeMap_t
typedef PhysicalShapeMap_t::value_type PhysicalShapeMapValueType_t
typedef PhysicalShapeMap_t::iterator PhysicalShapeMapIt_t
typedef PhysicalShapeMap_t::const_iterator PhysicalShapeMapCIt_t
typedef std::vector< DrawElement_tDrawElementVec_t
typedef std::vector< DrawElement_t
>::iterator 
DrawElementVec_i
typedef std::vector< DrawElement_t * > DrawElementPtrVec_t
typedef std::vector< DrawElement_t
* >::iterator 
DrawElementPtrVec_i
typedef std::vector< const
TGLPhysicalShape * > 
ShapeVec_t
typedef ShapeVec_t::iterator ShapeVec_i

Public Member Functions

 TGLScene ()
virtual ~TGLScene ()
virtual void CalcBoundingBox () const
virtual TSceneInfoCreateSceneInfo (TGLViewerBase *view)
virtual void RebuildSceneInfo (TGLRnrCtx &rnrCtx)
virtual void UpdateSceneInfo (TGLRnrCtx &rnrCtx)
virtual void LodifySceneInfo (TGLRnrCtx &rnrCtx)
virtual void PreDraw (TGLRnrCtx &rnrCtx)
virtual void RenderOpaque (TGLRnrCtx &rnrCtx)
virtual void RenderTransp (TGLRnrCtx &rnrCtx)
virtual void RenderSelOpaque (TGLRnrCtx &rnrCtx)
virtual void RenderSelTransp (TGLRnrCtx &rnrCtx)
virtual void PostDraw (TGLRnrCtx &rnrCtx)
virtual void RenderAllPasses (TGLRnrCtx &rnrCtx, DrawElementPtrVec_t &elVec, Bool_t check_timeout)
virtual void RenderElements (TGLRnrCtx &rnrCtx, DrawElementPtrVec_t &elVec, Bool_t check_timeout, const TGLPlaneSet_t *clipPlanes=0)
virtual Bool_t ResolveSelectRecord (TGLSelectRecord &rec, Int_t curIdx)
virtual void AdoptLogical (TGLLogicalShape &shape)
virtual Bool_t DestroyLogical (TObject *logid, Bool_t mustFind=kTRUE)
virtual Int_t DestroyLogicals ()
virtual TGLLogicalShapeFindLogical (TObject *logid) const
virtual void AdoptPhysical (TGLPhysicalShape &shape)
virtual Bool_t DestroyPhysical (UInt_t phid)
virtual Int_t DestroyPhysicals ()
virtual TGLPhysicalShapeFindPhysical (UInt_t phid) const
virtual UInt_t GetMaxPhysicalID ()
virtual Bool_t BeginUpdate ()
virtual void EndUpdate (Bool_t minorChange=kTRUE, Bool_t sceneChanged=kTRUE, Bool_t updateViewers=kTRUE)
virtual void UpdateLogical (TObject *logid)
virtual void UpdatePhysical (UInt_t phid, Double_t *trans, UChar_t *col)
virtual void UpdatePhysical (UInt_t phid, Double_t *trans, Color_t cidx=-1, UChar_t transp=0)
virtual void UpdatePhysioLogical (TObject *logid, Double_t *trans, UChar_t *col)
virtual void UpdatePhysioLogical (TObject *logid, Double_t *trans, Color_t cidx, UChar_t transp)
LogicalShapeMap_tRefLogicalShapes ()
UInt_t BeginSmartRefresh ()
void EndSmartRefresh ()
TGLLogicalShapeFindLogicalSmartRefresh (TObject *ID) const
TGLContextIdentityGetGLCtxIdentity () const
UInt_t SizeOfScene () const
void DumpMapSizes () const
 ClassDef (TGLScene, 0)
 TGLScene ()
virtual ~TGLScene ()
virtual void CalcBoundingBox () const
virtual TSceneInfoCreateSceneInfo (TGLViewerBase *view)
virtual void RebuildSceneInfo (TGLRnrCtx &rnrCtx)
virtual void UpdateSceneInfo (TGLRnrCtx &rnrCtx)
virtual void LodifySceneInfo (TGLRnrCtx &rnrCtx)
virtual void PreDraw (TGLRnrCtx &rnrCtx)
virtual void RenderOpaque (TGLRnrCtx &rnrCtx)
virtual void RenderTransp (TGLRnrCtx &rnrCtx)
virtual void RenderSelOpaque (TGLRnrCtx &rnrCtx)
virtual void RenderSelTransp (TGLRnrCtx &rnrCtx)
virtual void PostDraw (TGLRnrCtx &rnrCtx)
virtual void RenderAllPasses (TGLRnrCtx &rnrCtx, DrawElementPtrVec_t &elVec, Bool_t check_timeout)
virtual void RenderElements (TGLRnrCtx &rnrCtx, DrawElementPtrVec_t &elVec, Bool_t check_timeout, const TGLPlaneSet_t *clipPlanes=0)
virtual Bool_t ResolveSelectRecord (TGLSelectRecord &rec, Int_t curIdx)
virtual void AdoptLogical (TGLLogicalShape &shape)
virtual Bool_t DestroyLogical (TObject *logid, Bool_t mustFind=kTRUE)
virtual Int_t DestroyLogicals ()
virtual TGLLogicalShapeFindLogical (TObject *logid) const
virtual void AdoptPhysical (TGLPhysicalShape &shape)
virtual Bool_t DestroyPhysical (UInt_t phid)
virtual Int_t DestroyPhysicals ()
virtual TGLPhysicalShapeFindPhysical (UInt_t phid) const
virtual UInt_t GetMaxPhysicalID ()
virtual Bool_t BeginUpdate ()
virtual void EndUpdate (Bool_t minorChange=kTRUE, Bool_t sceneChanged=kTRUE, Bool_t updateViewers=kTRUE)
virtual void UpdateLogical (TObject *logid)
virtual void UpdatePhysical (UInt_t phid, Double_t *trans, UChar_t *col)
virtual void UpdatePhysical (UInt_t phid, Double_t *trans, Color_t cidx=-1, UChar_t transp=0)
virtual void UpdatePhysioLogical (TObject *logid, Double_t *trans, UChar_t *col)
virtual void UpdatePhysioLogical (TObject *logid, Double_t *trans, Color_t cidx, UChar_t transp)
LogicalShapeMap_tRefLogicalShapes ()
UInt_t BeginSmartRefresh ()
void EndSmartRefresh ()
TGLLogicalShapeFindLogicalSmartRefresh (TObject *ID) const
TGLContextIdentityGetGLCtxIdentity () const
UInt_t SizeOfScene () const
void DumpMapSizes () const
 ClassDef (TGLScene, 0)

Static Public Member Functions

static void RGBAFromColorIdx (Float_t rgba[4], Color_t ci, Char_t transp=0)
static Bool_t IsOutside (const TGLBoundingBox &box, const TGLPlaneSet_t &planes)
static void RGBAFromColorIdx (Float_t rgba[4], Color_t ci, Char_t transp=0)
static Bool_t IsOutside (const TGLBoundingBox &box, const TGLPlaneSet_t &planes)

Protected Member Functions

virtual void DestroyPhysicalInternal (PhysicalShapeMapIt_t pit)
void ReleaseGLCtxIdentity ()
virtual void DestroyPhysicalInternal (PhysicalShapeMapIt_t pit)
void ReleaseGLCtxIdentity ()

Protected Attributes

LogicalShapeMap_t fLogicalShapes
PhysicalShapeMap_t fPhysicalShapes
TGLContextIdentityfGLCtxIdentity
Bool_t fInSmartRefresh
LogicalShapeMap_t fSmartRefreshCache
Float_t fLastPointSizeScale
Float_t fLastLineWidthScale
TGLContextIdentityfGLCtxIdentity

Private Member Functions

 TGLScene (const TGLScene &)
TGLSceneoperator= (const TGLScene &)
 TGLScene (const TGLScene &)
TGLSceneoperator= (const TGLScene &)

Static Private Member Functions

static Bool_t ComparePhysicalVolumes (const TGLPhysicalShape *shape1, const TGLPhysicalShape *shape2)
static Bool_t ComparePhysicalDiagonals (const TGLPhysicalShape *shape1, const TGLPhysicalShape *shape2)
static Bool_t ComparePhysicalVolumes (const TGLPhysicalShape *shape1, const TGLPhysicalShape *shape2)
static Bool_t ComparePhysicalDiagonals (const TGLPhysicalShape *shape1, const TGLPhysicalShape *shape2)

Friends

class TSceneInfo

Classes

struct  DrawElement_t
class  TSceneInfo

Detailed Description

Definition at line 30 of file TGLScene.h.


Member Typedef Documentation

typedef std::map<TObject*, TGLLogicalShape*> TGLScene::LogicalShapeMap_t

Definition at line 43 of file TGLScene.h.

typedef LogicalShapeMap_t::value_type TGLScene::LogicalShapeMapValueType_t

Definition at line 44 of file TGLScene.h.

typedef LogicalShapeMap_t::iterator TGLScene::LogicalShapeMapIt_t

Definition at line 45 of file TGLScene.h.

typedef LogicalShapeMap_t::const_iterator TGLScene::LogicalShapeMapCIt_t

Definition at line 46 of file TGLScene.h.

typedef std::map<UInt_t, TGLPhysicalShape*> TGLScene::PhysicalShapeMap_t

Definition at line 49 of file TGLScene.h.

typedef PhysicalShapeMap_t::value_type TGLScene::PhysicalShapeMapValueType_t

Definition at line 50 of file TGLScene.h.

typedef PhysicalShapeMap_t::iterator TGLScene::PhysicalShapeMapIt_t

Definition at line 51 of file TGLScene.h.

typedef PhysicalShapeMap_t::const_iterator TGLScene::PhysicalShapeMapCIt_t

Definition at line 52 of file TGLScene.h.

typedef std::vector<DrawElement_t> TGLScene::DrawElementVec_t

Definition at line 67 of file TGLScene.h.

typedef std::vector<DrawElement_t>::iterator TGLScene::DrawElementVec_i

Definition at line 68 of file TGLScene.h.

typedef std::vector<DrawElement_t*> TGLScene::DrawElementPtrVec_t

Definition at line 70 of file TGLScene.h.

typedef std::vector<DrawElement_t*>::iterator TGLScene::DrawElementPtrVec_i

Definition at line 71 of file TGLScene.h.

typedef std::vector<const TGLPhysicalShape*> TGLScene::ShapeVec_t

Definition at line 74 of file TGLScene.h.

typedef ShapeVec_t::iterator TGLScene::ShapeVec_i

Definition at line 75 of file TGLScene.h.

typedef std::map<TObject*, TGLLogicalShape*> TGLScene::LogicalShapeMap_t

Definition at line 43 of file TGLScene.h.

typedef LogicalShapeMap_t::value_type TGLScene::LogicalShapeMapValueType_t

Definition at line 44 of file TGLScene.h.

typedef LogicalShapeMap_t::iterator TGLScene::LogicalShapeMapIt_t

Definition at line 45 of file TGLScene.h.

typedef LogicalShapeMap_t::const_iterator TGLScene::LogicalShapeMapCIt_t

Definition at line 46 of file TGLScene.h.

typedef std::map<UInt_t, TGLPhysicalShape*> TGLScene::PhysicalShapeMap_t

Definition at line 49 of file TGLScene.h.

typedef PhysicalShapeMap_t::value_type TGLScene::PhysicalShapeMapValueType_t

Definition at line 50 of file TGLScene.h.

typedef PhysicalShapeMap_t::iterator TGLScene::PhysicalShapeMapIt_t

Definition at line 51 of file TGLScene.h.

typedef PhysicalShapeMap_t::const_iterator TGLScene::PhysicalShapeMapCIt_t

Definition at line 52 of file TGLScene.h.

typedef std::vector<DrawElement_t> TGLScene::DrawElementVec_t

Definition at line 67 of file TGLScene.h.

typedef std::vector<DrawElement_t>::iterator TGLScene::DrawElementVec_i

Definition at line 68 of file TGLScene.h.

typedef std::vector<DrawElement_t*> TGLScene::DrawElementPtrVec_t

Definition at line 70 of file TGLScene.h.

typedef std::vector<DrawElement_t*>::iterator TGLScene::DrawElementPtrVec_i

Definition at line 71 of file TGLScene.h.

typedef std::vector<const TGLPhysicalShape*> TGLScene::ShapeVec_t

Definition at line 74 of file TGLScene.h.

typedef ShapeVec_t::iterator TGLScene::ShapeVec_i

Definition at line 75 of file TGLScene.h.


Constructor & Destructor Documentation

TGLScene::TGLScene ( const TGLScene  )  [private]

TGLScene::TGLScene (  ) 

Definition at line 277 of file TGLScene.cxx.

TGLScene::~TGLScene (  )  [virtual]

Definition at line 286 of file TGLScene.cxx.

References DestroyLogicals(), DestroyPhysicals(), fGLCtxIdentity, TGLLockable::kModifyLock, TGLContextIdentity::ReleaseClient(), ReleaseGLCtxIdentity(), TGLLockable::ReleaseLock(), and TGLLockable::TakeLock().

TGLScene::TGLScene ( const TGLScene  )  [private]

TGLScene::TGLScene (  ) 

virtual TGLScene::~TGLScene (  )  [virtual]


Member Function Documentation

TGLScene& TGLScene::operator= ( const TGLScene  )  [private]

Bool_t TGLScene::ComparePhysicalVolumes ( const TGLPhysicalShape shape1,
const TGLPhysicalShape shape2 
) [inline, static, private]

Definition at line 348 of file TGLScene.cxx.

References TGLPhysicalShape::BoundingBox(), and TGLBoundingBox::Volume().

Bool_t TGLScene::ComparePhysicalDiagonals ( const TGLPhysicalShape shape1,
const TGLPhysicalShape shape2 
) [inline, static, private]

Definition at line 358 of file TGLScene.cxx.

References TGLPhysicalShape::BoundingBox(), and TGLBoundingBox::Diagonal().

Referenced by RebuildSceneInfo().

void TGLScene::DestroyPhysicalInternal ( PhysicalShapeMapIt_t  pit  )  [protected, virtual]

Definition at line 1082 of file TGLScene.cxx.

References fPhysicalShapes.

Referenced by DestroyLogical(), and DestroyPhysical().

void TGLScene::ReleaseGLCtxIdentity (  )  [protected]

Definition at line 303 of file TGLScene.cxx.

References fGLCtxIdentity, fLogicalShapes, TGLContextIdentity::IsValid(), and TGLContextIdentity::ReleaseClient().

Referenced by PreDraw(), and ~TGLScene().

void TGLScene::CalcBoundingBox (  )  const [virtual]

Implements TGLSceneBase.

Definition at line 912 of file TGLScene.cxx.

References TGLPhysicalShape::BoundingBox(), box(), TGLSceneBase::fBoundingBox, TGLSceneBase::fBoundingBoxValid, fPhysicalShapes, if(), kFALSE, kTRUE, and TGLBoundingBox::SetAligned().

TGLScene::TSceneInfo * TGLScene::CreateSceneInfo ( TGLViewerBase view  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 338 of file TGLScene.cxx.

References TSceneInfo.

void TGLScene::RebuildSceneInfo ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 368 of file TGLScene.cxx.

References TGLScene::TSceneInfo::ClearAfterRebuild(), ComparePhysicalDiagonals(), Error, fPhysicalShapes, TGLScene::TSceneInfo::fShapesOfInterest, TGLRnrCtx::GetCamera(), TGLSceneInfo::GetScene(), TGLRnrCtx::GetSceneInfo(), TGLCamera::OfInterest(), TGLSceneBase::RebuildSceneInfo(), and sort().

void TGLScene::UpdateSceneInfo ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 415 of file TGLScene.cxx.

References TGLScene::TSceneInfo::ClearAfterUpdate(), TGLSceneInfo::ClipMode(), TGLSceneInfo::ClipPlanes(), xmlio::cnt, Error, TGLScene::DrawElement_t::fPixelLOD, TGLScene::DrawElement_t::fPixelSize, TGLSceneInfo::FrustumPlanes(), TGLScene::TSceneInfo::fShapesOfInterest, TGLScene::TSceneInfo::fVisibleElements, TGLSceneInfo::GetScene(), TGLRnrCtx::GetSceneInfo(), TGLRnrCtx::HasStopwatchTimedOut(), TGLRnrCtx::IsStopwatchRunning(), TGLSceneInfo::IsVisible(), TGLSceneInfo::kClipInside, TGLSceneInfo::kClipOutside, kFALSE, kInside, TGLRnrCtx::kLODHigh, kOutside, kTRUE, pi, TGLSceneInfo::ResetUpdateTimeouted(), size_t, TGLSceneBase::UpdateSceneInfo(), TGLSceneInfo::UpdateTimeouted(), TGLRnrCtx::ViewerLOD(), and Warning().

void TGLScene::LodifySceneInfo ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 536 of file TGLScene.cxx.

References Error, TGLSceneInfo::GetScene(), TGLRnrCtx::GetSceneInfo(), TGLScene::TSceneInfo::Lodify(), and TGLSceneBase::LodifySceneInfo().

void TGLScene::PreDraw ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 558 of file TGLScene.cxx.

References TGLContextIdentity::AddClientRef(), Error, fGLCtxIdentity, fLastLineWidthScale, fLastPointSizeScale, fLogicalShapes, Form(), TGLRnrCtx::GetGLCtxIdentity(), TGLUtil::GetLineWidthScale(), TGLUtil::GetPointSizeScale(), TGLSceneInfo::GetScene(), TGLRnrCtx::GetSceneInfo(), TGLSceneBase::PreDraw(), TGLScene::TSceneInfo::PreDraw(), ReleaseGLCtxIdentity(), and TGLScene::TSceneInfo::ResetDrawStats().

void TGLScene::RenderOpaque ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 606 of file TGLScene.cxx.

References TGLScene::TSceneInfo::fOpaqueElements, TGLRnrCtx::GetSceneInfo(), kTRUE, and RenderAllPasses().

void TGLScene::RenderTransp ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 616 of file TGLScene.cxx.

References TGLScene::TSceneInfo::fTranspElements, TGLRnrCtx::GetSceneInfo(), kTRUE, and RenderAllPasses().

void TGLScene::RenderSelOpaque ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 626 of file TGLScene.cxx.

References TGLScene::TSceneInfo::fSelOpaqueElements, TGLRnrCtx::GetSceneInfo(), kFALSE, and RenderAllPasses().

void TGLScene::RenderSelTransp ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 636 of file TGLScene.cxx.

References TGLScene::TSceneInfo::fSelTranspElements, TGLRnrCtx::GetSceneInfo(), kFALSE, and RenderAllPasses().

void TGLScene::PostDraw ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

Definition at line 646 of file TGLScene.cxx.

References TGLScene::TSceneInfo::DumpDrawStats(), gDebug, TGLRnrCtx::GetSceneInfo(), TGLScene::TSceneInfo::PostDraw(), and TGLSceneBase::PostDraw().

void TGLScene::RenderAllPasses ( TGLRnrCtx rnrCtx,
DrawElementPtrVec_t elVec,
Bool_t  check_timeout 
) [virtual]

Definition at line 663 of file TGLScene.cxx.

References TGLSceneInfo::ClipMode(), TGLSceneInfo::ClipPlanes(), gDebug, TGLRnrCtx::GetSceneInfo(), GL_CLIP_PLANE0, GL_CULL_FACE, GL_FALSE, GL_FILL, GL_FRONT_AND_BACK, GL_LIGHT_MODEL_TWO_SIDE, GL_LIGHTING, GL_LINE, GL_MAX_CLIP_PLANES, GL_POLYGON_OFFSET_FILL, GL_TRUE, glClipPlane(), glDisable(), glEnable(), glGetIntegerv(), glLightModeli(), glPolygonMode(), glPolygonOffset(), i, Info, TGLSceneInfo::kClipOutside, kFALSE, TGLRnrCtx::kFill, TGLRnrCtx::kOutline, TGLRnrCtx::kPassFill, TGLRnrCtx::kPassOutlineFill, TGLRnrCtx::kPassOutlineLine, TGLRnrCtx::kPassUndef, TGLRnrCtx::kPassWireFrame, TGLRnrCtx::kWireFrame, TGLUtil::LineWidth(), p, RenderElements(), TGLRnrCtx::SceneOLLineW(), TGLRnrCtx::SceneStyle(), TGLRnrCtx::SceneWFLineW(), TGLRnrCtx::SetDrawPass(), and TGLSceneInfo::ShouldClip().

Referenced by RenderOpaque(), RenderSelOpaque(), RenderSelTransp(), and RenderTransp().

void TGLScene::RenderElements ( TGLRnrCtx rnrCtx,
DrawElementPtrVec_t elVec,
Bool_t  check_timeout,
const TGLPlaneSet_t clipPlanes = 0 
) [virtual]

Definition at line 828 of file TGLScene.cxx.

References TGLRnrCtx::GetSceneInfo(), glPopName(), glPushName(), TGLRnrCtx::HasStopwatchTimedOut(), i, if(), IsOutside(), kFALSE, TGLRnrCtx::kLODHigh, kTRUE, TGLRnrCtx::SetShapeLOD(), TGLRnrCtx::SetShapePixSize(), TGLRnrCtx::ShapeLOD(), TGLScene::TSceneInfo::UpdateDrawStats(), TGLRnrCtx::ViewerLOD(), and Warning().

Referenced by RenderAllPasses().

Bool_t TGLScene::ResolveSelectRecord ( TGLSelectRecord rec,
Int_t  curIdx 
) [virtual]

Reimplemented from TGLSceneBase.

Definition at line 883 of file TGLScene.cxx.

References FindPhysical(), TGLSelectRecordBase::GetItem(), TGLSelectRecordBase::GetN(), kFALSE, kTRUE, TGLSelectRecord::SetObject(), TGLSelectRecord::SetPhysShape(), TGLSelectRecord::SetSpecific(), and TGLSelectRecord::SetTransparent().

void TGLScene::AdoptLogical ( TGLLogicalShape shape  )  [virtual]

Definition at line 953 of file TGLScene.cxx.

References Error, TGLLockable::fLock, fLogicalShapes, TGLLogicalShape::fScene, TGLLogicalShape::ID(), and TGLLockable::kModifyLock.

Referenced by TGLScenePad::AddObject(), TGLScenePad::AttemptDirectRenderer(), and TGLScenePad::ObjectPaint().

Bool_t TGLScene::DestroyLogical ( TObject logid,
Bool_t  mustFind = kTRUE 
) [virtual]

Definition at line 968 of file TGLScene.cxx.

References DestroyPhysicalInternal(), Error, TGLLockable::fLock, fLogicalShapes, fPhysicalShapes, TGLSceneBase::IncTimeStamp(), TGLSceneBase::InvalidateBoundingBox(), kFALSE, TGLLockable::kModifyLock, kTRUE, TGLLogicalShape::Ref(), TGLLogicalShape::UnrefFirstPhysical(), and Warning().

Referenced by TEveScene::DestroyElementRenderers().

Int_t TGLScene::DestroyLogicals (  )  [virtual]

Definition at line 1008 of file TGLScene.cxx.

References Error, TGLLockable::fLock, fLogicalShapes, if(), kFALSE, TGLLockable::kModifyLock, and TGLLogicalShape::Ref().

Referenced by TGLScenePad::BeginScene(), and ~TGLScene().

TGLLogicalShape * TGLScene::FindLogical ( TObject logid  )  const [virtual]

Reimplemented from TGLSceneBase.

Definition at line 1042 of file TGLScene.cxx.

References FindLogicalSmartRefresh(), fInSmartRefresh, and fLogicalShapes.

Referenced by TGLScenePad::AddObject(), TEveGeoPolyShape::Construct(), TEveGeoNode::DumpShapeTree(), TGLViewerBase::FindLogicalInScenes(), UpdateLogical(), and UpdatePhysioLogical().

void TGLScene::AdoptPhysical ( TGLPhysicalShape shape  )  [virtual]

Definition at line 1064 of file TGLScene.cxx.

References Error, TGLLockable::fLock, fPhysicalShapes, TGLPhysicalShape::ID(), TGLSceneBase::IncTimeStamp(), TGLSceneBase::InvalidateBoundingBox(), and TGLLockable::kModifyLock.

Referenced by TGLScenePad::AddHistoPhysical(), and TGLScenePad::AddObject().

Bool_t TGLScene::DestroyPhysical ( UInt_t  phid  )  [virtual]

Definition at line 1093 of file TGLScene.cxx.

References DestroyPhysicalInternal(), Error, TGLLockable::fLock, fPhysicalShapes, TGLSceneBase::InvalidateBoundingBox(), kFALSE, TGLLockable::kModifyLock, and kTRUE.

Int_t TGLScene::DestroyPhysicals (  )  [virtual]

Definition at line 1118 of file TGLScene.cxx.

References Error, TGLLockable::fLock, fLogicalShapes, fPhysicalShapes, if(), TGLSceneBase::IncTimeStamp(), TGLSceneBase::InvalidateBoundingBox(), and TGLLockable::kModifyLock.

Referenced by TGLScenePad::BeginScene(), and ~TGLScene().

TGLPhysicalShape * TGLScene::FindPhysical ( UInt_t  phid  )  const [virtual]

Definition at line 1155 of file TGLScene.cxx.

References fPhysicalShapes.

Referenced by TGLScenePad::AddObject(), ResolveSelectRecord(), and UpdatePhysical().

UInt_t TGLScene::GetMaxPhysicalID (  )  [virtual]

Definition at line 1165 of file TGLScene.cxx.

References fPhysicalShapes.

Referenced by TGLScene::TSceneInfo::DumpDrawStats().

Bool_t TGLScene::BeginUpdate (  )  [virtual]

Definition at line 1180 of file TGLScene.cxx.

References TGLLockable::kModifyLock, ok, and TGLLockable::TakeLock().

Referenced by TGLScenePad::BeginScene(), TEveScene::DestroyElementRenderers(), and TEveScene::RetransHierarchically().

void TGLScene::EndUpdate ( Bool_t  minorChange = kTRUE,
Bool_t  sceneChanged = kTRUE,
Bool_t  updateViewers = kTRUE 
) [virtual]

Definition at line 1189 of file TGLScene.cxx.

References TGLSceneBase::IncMinorStamp(), TGLSceneBase::IncTimeStamp(), TGLLockable::kModifyLock, TGLLockable::ReleaseLock(), and TGLSceneBase::TagViewersChanged().

Referenced by TEveScene::DestroyElementRenderers(), TGLScenePad::EndScene(), and TEveScene::RetransHierarchically().

void TGLScene::UpdateLogical ( TObject logid  )  [virtual]

Definition at line 1217 of file TGLScene.cxx.

References Error, FindLogical(), TGLLockable::fLock, TGLLockable::kModifyLock, and log().

void TGLScene::UpdatePhysical ( UInt_t  phid,
Double_t trans,
UChar_t col 
) [virtual]

Definition at line 1239 of file TGLScene.cxx.

References Error, FindPhysical(), TGLLockable::fLock, TGLLockable::kModifyLock, TGLPhysicalShape::SetDiffuseColor(), and TGLPhysicalShape::SetTransform().

void TGLScene::UpdatePhysical ( UInt_t  phid,
Double_t trans,
Color_t  cidx = -1,
UChar_t  transp = 0 
) [virtual]

Definition at line 1260 of file TGLScene.cxx.

References Error, FindPhysical(), TGLLockable::fLock, TGLLockable::kModifyLock, RGBAFromColorIdx(), TGLPhysicalShape::SetDiffuseColor(), and TGLPhysicalShape::SetTransform().

void TGLScene::UpdatePhysioLogical ( TObject logid,
Double_t trans,
UChar_t col 
) [virtual]

Definition at line 1286 of file TGLScene.cxx.

References Error, FindLogical(), TGLLockable::fLock, TGLLockable::kModifyLock, log(), TGLPhysicalShape::SetDiffuseColor(), TGLPhysicalShape::SetTransform(), and Warning().

Referenced by TEveScene::RetransHierarchicallyRecurse().

void TGLScene::UpdatePhysioLogical ( TObject logid,
Double_t trans,
Color_t  cidx,
UChar_t  transp 
) [virtual]

Definition at line 1313 of file TGLScene.cxx.

References Error, FindLogical(), TGLLockable::fLock, TGLLockable::kModifyLock, log(), RGBAFromColorIdx(), TGLPhysicalShape::SetDiffuseColor(), TGLPhysicalShape::SetTransform(), and Warning().

LogicalShapeMap_t& TGLScene::RefLogicalShapes (  )  [inline]

Definition at line 212 of file TGLScene.h.

References fLogicalShapes.

Referenced by TEveScene::Repaint().

UInt_t TGLScene::BeginSmartRefresh (  ) 

Definition at line 1350 of file TGLScene.cxx.

References fInSmartRefresh, fLogicalShapes, fSmartRefreshCache, i, j, kFALSE, and kTRUE.

Referenced by TGLScenePad::BeginScene().

void TGLScene::EndSmartRefresh (  ) 

Definition at line 1374 of file TGLScene.cxx.

References fInSmartRefresh, fSmartRefreshCache, i, and kFALSE.

Referenced by TGLScenePad::EndScene().

TGLLogicalShape * TGLScene::FindLogicalSmartRefresh ( TObject ID  )  const

Definition at line 1389 of file TGLScene.cxx.

References fLogicalShapes, fSmartRefreshCache, TGLObject::GetGLRenderer(), and Warning().

Referenced by FindLogical().

TGLContextIdentity* TGLScene::GetGLCtxIdentity (  )  const [inline]

Definition at line 226 of file TGLScene.h.

References fGLCtxIdentity.

Referenced by TGLLogicalShape::PurgeDLRange().

UInt_t TGLScene::SizeOfScene (  )  const

Definition at line 1424 of file TGLScene.cxx.

References fLogicalShapes, fPhysicalShapes, and size.

void TGLScene::DumpMapSizes (  )  const

Definition at line 1458 of file TGLScene.cxx.

References fLogicalShapes, and fPhysicalShapes.

Referenced by TGLScenePad::BeginScene(), and TGLScenePad::EndScene().

void TGLScene::RGBAFromColorIdx ( Float_t  rgba[4],
Color_t  ci,
Char_t  transp = 0 
) [static]

Definition at line 1467 of file TGLScene.cxx.

References c, TROOT::GetColor(), and gROOT.

Referenced by TGLScenePad::CreateNewPhysical(), G__G__GL_167_0_45(), G__setup_memfuncTGLScene(), UpdatePhysical(), and UpdatePhysioLogical().

Bool_t TGLScene::IsOutside ( const TGLBoundingBox box,
const TGLPlaneSet_t planes 
) [static]

Definition at line 1478 of file TGLScene.cxx.

References box(), kFALSE, kOutside, kTRUE, and p.

Referenced by G__G__GL_167_0_46(), G__setup_memfuncTGLScene(), and RenderElements().

TGLScene::ClassDef ( TGLScene  ,
 
)

TGLScene& TGLScene::operator= ( const TGLScene  )  [private]

static Bool_t TGLScene::ComparePhysicalVolumes ( const TGLPhysicalShape shape1,
const TGLPhysicalShape shape2 
) [static, private]

static Bool_t TGLScene::ComparePhysicalDiagonals ( const TGLPhysicalShape shape1,
const TGLPhysicalShape shape2 
) [static, private]

virtual void TGLScene::DestroyPhysicalInternal ( PhysicalShapeMapIt_t  pit  )  [protected, virtual]

void TGLScene::ReleaseGLCtxIdentity (  )  [protected]

virtual void TGLScene::CalcBoundingBox (  )  const [virtual]

Implements TGLSceneBase.

virtual TSceneInfo* TGLScene::CreateSceneInfo ( TGLViewerBase view  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::RebuildSceneInfo ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::UpdateSceneInfo ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::LodifySceneInfo ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::PreDraw ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::RenderOpaque ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::RenderTransp ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::RenderSelOpaque ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::RenderSelTransp ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::PostDraw ( TGLRnrCtx rnrCtx  )  [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::RenderAllPasses ( TGLRnrCtx rnrCtx,
DrawElementPtrVec_t elVec,
Bool_t  check_timeout 
) [virtual]

virtual void TGLScene::RenderElements ( TGLRnrCtx rnrCtx,
DrawElementPtrVec_t elVec,
Bool_t  check_timeout,
const TGLPlaneSet_t clipPlanes = 0 
) [virtual]

virtual Bool_t TGLScene::ResolveSelectRecord ( TGLSelectRecord rec,
Int_t  curIdx 
) [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::AdoptLogical ( TGLLogicalShape shape  )  [virtual]

virtual Bool_t TGLScene::DestroyLogical ( TObject logid,
Bool_t  mustFind = kTRUE 
) [virtual]

virtual Int_t TGLScene::DestroyLogicals (  )  [virtual]

virtual TGLLogicalShape* TGLScene::FindLogical ( TObject logid  )  const [virtual]

Reimplemented from TGLSceneBase.

virtual void TGLScene::AdoptPhysical ( TGLPhysicalShape shape  )  [virtual]

virtual Bool_t TGLScene::DestroyPhysical ( UInt_t  phid  )  [virtual]

virtual Int_t TGLScene::DestroyPhysicals (  )  [virtual]

virtual TGLPhysicalShape* TGLScene::FindPhysical ( UInt_t  phid  )  const [virtual]

virtual UInt_t TGLScene::GetMaxPhysicalID (  )  [virtual]

virtual Bool_t TGLScene::BeginUpdate (  )  [virtual]

virtual void TGLScene::EndUpdate ( Bool_t  minorChange = kTRUE,
Bool_t  sceneChanged = kTRUE,
Bool_t  updateViewers = kTRUE 
) [virtual]

virtual void TGLScene::UpdateLogical ( TObject logid  )  [virtual]

virtual void TGLScene::UpdatePhysical ( UInt_t  phid,
Double_t trans,
UChar_t col 
) [virtual]

virtual void TGLScene::UpdatePhysical ( UInt_t  phid,
Double_t trans,
Color_t  cidx = -1,
UChar_t  transp = 0 
) [virtual]

virtual void TGLScene::UpdatePhysioLogical ( TObject logid,
Double_t trans,
UChar_t col 
) [virtual]

virtual void TGLScene::UpdatePhysioLogical ( TObject logid,
Double_t trans,
Color_t  cidx,
UChar_t  transp 
) [virtual]

LogicalShapeMap_t& TGLScene::RefLogicalShapes (  )  [inline]

Definition at line 212 of file TGLScene.h.

References fLogicalShapes.

UInt_t TGLScene::BeginSmartRefresh (  ) 

void TGLScene::EndSmartRefresh (  ) 

TGLLogicalShape* TGLScene::FindLogicalSmartRefresh ( TObject ID  )  const

TGLContextIdentity* TGLScene::GetGLCtxIdentity (  )  const [inline]

Definition at line 226 of file TGLScene.h.

References fGLCtxIdentity.

UInt_t TGLScene::SizeOfScene (  )  const

void TGLScene::DumpMapSizes (  )  const

static void TGLScene::RGBAFromColorIdx ( Float_t  rgba[4],
Color_t  ci,
Char_t  transp = 0 
) [static]

static Bool_t TGLScene::IsOutside ( const TGLBoundingBox box,
const TGLPlaneSet_t planes 
) [static]

TGLScene::ClassDef ( TGLScene  ,
 
)


Friends And Related Function Documentation

TSceneInfo [friend]

Definition at line 123 of file TGLScene.h.

Referenced by CreateSceneInfo(), G__G__GL_637_0_4(), and ROOT::GenerateInitInstanceLocal().


Member Data Documentation

LogicalShapeMap_t TGLScene::fLogicalShapes [protected]

Definition at line 127 of file TGLScene.h.

Referenced by AdoptLogical(), BeginSmartRefresh(), DestroyLogical(), DestroyLogicals(), DestroyPhysicals(), DumpMapSizes(), FindLogical(), FindLogicalSmartRefresh(), PreDraw(), RefLogicalShapes(), ReleaseGLCtxIdentity(), and SizeOfScene().

PhysicalShapeMap_t TGLScene::fPhysicalShapes [protected]

Definition at line 128 of file TGLScene.h.

Referenced by AdoptPhysical(), CalcBoundingBox(), DestroyLogical(), DestroyPhysical(), DestroyPhysicalInternal(), DestroyPhysicals(), DumpMapSizes(), FindPhysical(), GetMaxPhysicalID(), RebuildSceneInfo(), and SizeOfScene().

TGLContextIdentity* TGLScene::fGLCtxIdentity [protected]

Definition at line 133 of file TGLScene.h.

Referenced by GetGLCtxIdentity(), PreDraw(), ReleaseGLCtxIdentity(), and ~TGLScene().

Bool_t TGLScene::fInSmartRefresh [protected]

Definition at line 137 of file TGLScene.h.

Referenced by BeginSmartRefresh(), EndSmartRefresh(), and FindLogical().

LogicalShapeMap_t TGLScene::fSmartRefreshCache [mutable, protected]

Definition at line 138 of file TGLScene.h.

Referenced by BeginSmartRefresh(), EndSmartRefresh(), and FindLogicalSmartRefresh().

Float_t TGLScene::fLastPointSizeScale [protected]

Definition at line 141 of file TGLScene.h.

Referenced by PreDraw().

Float_t TGLScene::fLastLineWidthScale [protected]

Definition at line 142 of file TGLScene.h.

Referenced by PreDraw().

TGLContextIdentity* TGLScene::fGLCtxIdentity [protected]

Definition at line 133 of file TGLScene.h.


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:40:14 2011 for ROOT_528-00b_version by  doxygen 1.5.1