#include <TGLLogicalShape.h>
Inheritance diagram for TGLLogicalShape:
Definition at line 31 of file TGLLogicalShape.h.
Definition at line 40 of file TGLLogicalShape.h.
Definition at line 40 of file TGLLogicalShape.h.
TGLLogicalShape::TGLLogicalShape | ( | const TGLLogicalShape & | ) | [private] |
TGLLogicalShape::TGLLogicalShape | ( | ) |
Definition at line 69 of file TGLLogicalShape.cxx.
TGLLogicalShape::TGLLogicalShape | ( | TObject * | obj | ) |
Definition at line 85 of file TGLLogicalShape.cxx.
TGLLogicalShape::TGLLogicalShape | ( | const TBuffer3D & | buffer | ) |
Definition at line 101 of file TGLLogicalShape.cxx.
References buffer, fBoundingBox, fExternalObj, fOwnExtObj, TBuffer3D::kBoundingBox, TBuffer3D::kRaw, kTRUE, TGLBoundingBox::Set(), and TGLBoundingBox::SetAligned().
TGLLogicalShape::~TGLLogicalShape | ( | ) | [virtual] |
Definition at line 133 of file TGLLogicalShape.cxx.
References DestroyPhysicals(), DLCachePurge(), fExternalObj, fOwnExtObj, fRef, and Warning().
TGLLogicalShape::TGLLogicalShape | ( | const TGLLogicalShape & | ) | [private] |
TGLLogicalShape::TGLLogicalShape | ( | ) |
TGLLogicalShape::TGLLogicalShape | ( | TObject * | obj | ) |
TGLLogicalShape::TGLLogicalShape | ( | const TBuffer3D & | buffer | ) |
virtual TGLLogicalShape::~TGLLogicalShape | ( | ) | [virtual] |
TGLLogicalShape& TGLLogicalShape::operator= | ( | const TGLLogicalShape & | ) | [private] |
External object is a fake.
Definition at line 335 of file TGLLogicalShape.cxx.
References fScene, TGLScene::GetGLCtxIdentity(), glDeleteLists(), TGLContextIdentity::RegisterDLNameRangeToWipe(), and Warning().
Referenced by TEveBoxSetGL::DLCachePurge(), DLCachePurge(), and TEveCaloLegoGL::DLCachePurge().
UInt_t TGLLogicalShape::Ref | ( | ) | const [inline] |
Definition at line 70 of file TGLLogicalShape.h.
References fRef.
Referenced by TGLScene::DestroyLogical(), and TGLScene::DestroyLogicals().
void TGLLogicalShape::AddRef | ( | TGLPhysicalShape * | phys | ) | const |
Definition at line 156 of file TGLLogicalShape.cxx.
References fFirstPhysical, TGLPhysicalShape::fNextPhysical, and fRef.
Referenced by TGLPhysicalShape::TGLPhysicalShape().
void TGLLogicalShape::SubRef | ( | TGLPhysicalShape * | phys | ) | const |
Definition at line 166 of file TGLLogicalShape.cxx.
References Error, fFirstPhysical, TGLPhysicalShape::fNextPhysical, fRef, fRefStrong, kFALSE, and kTRUE.
Referenced by TGLPhysicalShape::~TGLPhysicalShape().
void TGLLogicalShape::StrongRef | ( | Bool_t | strong | ) | const [inline] |
Definition at line 73 of file TGLLogicalShape.h.
References fRefStrong.
Referenced by TGLClip::TGLClip().
void TGLLogicalShape::DestroyPhysicals | ( | ) |
Definition at line 199 of file TGLLogicalShape.cxx.
References fFirstPhysical, TGLPhysicalShape::fLogicalShape, TGLPhysicalShape::fNextPhysical, and fRef.
Referenced by ~TGLLogicalShape().
UInt_t TGLLogicalShape::UnrefFirstPhysical | ( | ) |
Definition at line 217 of file TGLLogicalShape.cxx.
References fFirstPhysical, TGLPhysicalShape::fLogicalShape, TGLPhysicalShape::fNextPhysical, fRef, and TGLPhysicalShape::ID().
Referenced by TGLScene::DestroyLogical().
const TGLPhysicalShape* TGLLogicalShape::GetFirstPhysical | ( | ) | const [inline] |
Definition at line 77 of file TGLLogicalShape.h.
References fFirstPhysical.
Referenced by TEveSceneList::ProcessSceneChanges(), and TGLPhysicalShape::SetColorOnFamily().
TObject* TGLLogicalShape::ID | ( | ) | const [inline] |
Definition at line 79 of file TGLLogicalShape.h.
References fExternalObj.
Referenced by TGLScene::AdoptLogical(), and TStructViewerGUI::MouseOverSlot().
TObject* TGLLogicalShape::GetExternal | ( | ) | const [inline] |
Definition at line 80 of file TGLLogicalShape.h.
References fExternalObj.
Referenced by SplitGLView::OnMouseIdle(), SplitGLView::OnMouseOver(), TGLEventHandler::SelectForClicked(), TGLEventHandler::SelectForMouseOver(), and TGLSAViewer::SelectionChanged().
TGLScene* TGLLogicalShape::GetScene | ( | ) | const [inline] |
Definition at line 81 of file TGLLogicalShape.h.
References fScene.
Referenced by TGLViewerBase::FindLogicalInScenes(), and TGLPhysicalShape::UpdateBoundingBox().
const TGLBoundingBox& TGLLogicalShape::BoundingBox | ( | ) | const [inline] |
Definition at line 83 of file TGLLogicalShape.h.
References fBoundingBox.
Referenced by TEvePlot3DGL::SetBBox(), and TGLPhysicalShape::UpdateBoundingBox().
virtual void TGLLogicalShape::UpdateBoundingBox | ( | ) | [inline, virtual] |
Definition at line 84 of file TGLLogicalShape.h.
Referenced by TEveSceneList::ProcessSceneChanges().
void TGLLogicalShape::UpdateBoundingBoxesOfPhysicals | ( | ) |
Definition at line 239 of file TGLLogicalShape.cxx.
References fFirstPhysical, TGLPhysicalShape::fNextPhysical, and TGLPhysicalShape::UpdateBoundingBox().
Referenced by TEveTextGL::DirectDraw(), and TGLObject::UpdateBoundingBox().
Definition at line 257 of file TGLLogicalShape.cxx.
References DLCachePurge(), fDLCache, kFALSE, and kTRUE.
Definition at line 272 of file TGLLogicalShape.cxx.
References fDLCache, fScene, kFALSE, kTRUE, TGLRnrCtx::SecSelection(), and SupportsSecondarySelect().
Referenced by Draw().
void TGLLogicalShape::DLCacheClear | ( | ) | [virtual] |
Definition at line 295 of file TGLLogicalShape.cxx.
References fDLValid.
Referenced by TEveJetConeGL::DLCacheClear(), and TEveSceneList::ProcessSceneChanges().
void TGLLogicalShape::DLCacheDrop | ( | ) | [virtual] |
Definition at line 304 of file TGLLogicalShape.cxx.
References fDLBase, and fDLValid.
Referenced by TEveCaloLegoGL::DLCacheDrop(), and TEveBoxSetGL::DLCacheDrop().
void TGLLogicalShape::DLCachePurge | ( | ) | [virtual] |
Definition at line 317 of file TGLLogicalShape.cxx.
References fDLBase, fDLSize, fDLValid, and PurgeDLRange().
Referenced by TEveBoxSetGL::DLCachePurge(), TEveCaloLegoGL::DLCachePurge(), SetDLCache(), and ~TGLLogicalShape().
virtual ELODAxes TGLLogicalShape::SupportedLODAxes | ( | ) | const [inline, virtual] |
Definition at line 95 of file TGLLogicalShape.h.
References kLODAxesNone.
Referenced by TGLPhysicalShape::CalculateShapeLOD().
Definition at line 352 of file TGLLogicalShape.cxx.
Referenced by TGLPhysicalShape::QuantizeShapeLOD().
void TGLLogicalShape::Draw | ( | TGLRnrCtx & | rnrCtx | ) | const [virtual] |
Definition at line 364 of file TGLLogicalShape.cxx.
References TGLRnrCtx::CloseDLCapture(), DirectDraw(), DLOffset(), fDLBase, fDLCache, fDLSize, fDLValid, gDebug, GL_COMPILE_AND_EXECUTE, glCallList(), glEndList(), glGenLists(), glNewList(), Info, TGLRnrCtx::IsDLCaptureOpen(), kFALSE, TGLRnrCtx::OpenDLCapture(), TGLRnrCtx::ShapeLOD(), ShouldDLCache(), and Warning().
Referenced by TGLCylinder::DirectDraw(), TGLPhysicalShape::Draw(), TEveStraightLineSetGL::Draw(), TEvePolygonSetProjectedGL::Draw(), TEveProjectionAxesGL::Draw(), TPointSet3DGL::Draw(), TEveBoxProjectedGL::Draw(), TEveBoxGL::Draw(), TEveJetConeGL::Draw(), TEveJetConeProjectedGL::Draw(), and DrawHighlight().
virtual void TGLLogicalShape::DirectDraw | ( | TGLRnrCtx & | rnrCtx | ) | const [pure virtual] |
Referenced by TEvePlot3DGL::DirectDraw(), and Draw().
void TGLLogicalShape::DrawHighlight | ( | TGLRnrCtx & | rnrCtx, | |
const TGLPhysicalShape * | pshp, | |||
Int_t | lvl = -1 | |||
) | const [virtual] |
Definition at line 419 of file TGLLogicalShape.cxx.
References TGLColor::CArr(), TGLPhysicalShape::Color(), TGLRnrCtx::ColorSet(), TGLRnrCtx::CombiLOD(), dr, Draw(), TGLPhysicalShape::GetSelected(), GL_DEPTH_RANGE, glColor4fv(), glColor4ubv(), glDepthRange(), glGetFloatv(), glViewport(), i, kFALSE, TGLRnrCtx::kLODHigh, kTRUE, TGLUtil::LockColor(), TGLRnrCtx::RefCamera(), TGLCamera::RefViewport(), TGLColorSet::Selection(), TGLRnrCtx::SetHighlightOutline(), TGLPhysicalShape::SetupGLColors(), TGLUtil::UnlockColor(), and vp.
Referenced by TGLPhysicalShape::Draw(), TEveDigitSetGL::DrawHighlight(), and TEvePolygonSetProjectedGL::DrawHighlight().
virtual Bool_t TGLLogicalShape::IgnoreSizeForOfInterest | ( | ) | const [inline, virtual] |
virtual Bool_t TGLLogicalShape::KeepDuringSmartRefresh | ( | ) | const [inline, virtual] |
virtual Bool_t TGLLogicalShape::SupportsSecondarySelect | ( | ) | const [inline, virtual] |
Definition at line 107 of file TGLLogicalShape.h.
References kFALSE.
Referenced by TGLViewer::DoSecondarySelect(), TGLObject::ShouldDLCache(), and ShouldDLCache().
virtual Bool_t TGLLogicalShape::AlwaysSecondarySelect | ( | ) | const [inline, virtual] |
Definition at line 108 of file TGLLogicalShape.h.
References kFALSE.
Referenced by TGLEventHandler::SelectForClicked(), TGLEventHandler::SelectForMouseOver(), and TGLObject::ShouldDLCache().
void TGLLogicalShape::ProcessSelection | ( | TGLRnrCtx & | rnrCtx, | |
TGLSelectRecord & | rec | |||
) | [virtual] |
Definition at line 462 of file TGLLogicalShape.cxx.
References TGLSelectRecordBase::GetItem(), TGLSelectRecordBase::GetMaxZ(), TGLSelectRecordBase::GetMinZ(), TGLSelectRecordBase::GetN(), and j.
Referenced by TGLEventHandler::SelectForClicked(), and TGLEventHandler::SelectForMouseOver().
void TGLLogicalShape::InvokeContextMenu | ( | TContextMenu & | menu, | |
UInt_t | x, | |||
UInt_t | y | |||
) | const |
Definition at line 478 of file TGLLogicalShape.cxx.
References fExternalObj, and TContextMenu::Popup().
Referenced by TGLPhysicalShape::InvokeContextMenu().
TGLLogicalShape& TGLLogicalShape::operator= | ( | const TGLLogicalShape & | ) | [private] |
External object is a fake.
UInt_t TGLLogicalShape::Ref | ( | ) | const [inline] |
void TGLLogicalShape::AddRef | ( | TGLPhysicalShape * | phys | ) | const |
void TGLLogicalShape::SubRef | ( | TGLPhysicalShape * | phys | ) | const |
void TGLLogicalShape::StrongRef | ( | Bool_t | strong | ) | const [inline] |
void TGLLogicalShape::DestroyPhysicals | ( | ) |
UInt_t TGLLogicalShape::UnrefFirstPhysical | ( | ) |
const TGLPhysicalShape* TGLLogicalShape::GetFirstPhysical | ( | ) | const [inline] |
TObject* TGLLogicalShape::ID | ( | ) | const [inline] |
TObject* TGLLogicalShape::GetExternal | ( | ) | const [inline] |
TGLScene* TGLLogicalShape::GetScene | ( | ) | const [inline] |
const TGLBoundingBox& TGLLogicalShape::BoundingBox | ( | ) | const [inline] |
virtual void TGLLogicalShape::UpdateBoundingBox | ( | ) | [inline, virtual] |
Definition at line 84 of file TGLLogicalShape.h.
void TGLLogicalShape::UpdateBoundingBoxesOfPhysicals | ( | ) |
Definition at line 90 of file TGLLogicalShape.h.
virtual void TGLLogicalShape::DLCacheClear | ( | ) | [virtual] |
virtual void TGLLogicalShape::DLCacheDrop | ( | ) | [virtual] |
virtual void TGLLogicalShape::DLCachePurge | ( | ) | [virtual] |
virtual ELODAxes TGLLogicalShape::SupportedLODAxes | ( | ) | const [inline, virtual] |
virtual Short_t TGLLogicalShape::QuantizeShapeLOD | ( | Short_t | shapeLOD, | |
Short_t | combiLOD | |||
) | const [virtual] |
virtual void TGLLogicalShape::Draw | ( | TGLRnrCtx & | rnrCtx | ) | const [virtual] |
virtual void TGLLogicalShape::DirectDraw | ( | TGLRnrCtx & | rnrCtx | ) | const [pure virtual] |
virtual void TGLLogicalShape::DrawHighlight | ( | TGLRnrCtx & | rnrCtx, | |
const TGLPhysicalShape * | pshp, | |||
Int_t | lvl = -1 | |||
) | const [virtual] |
virtual Bool_t TGLLogicalShape::IgnoreSizeForOfInterest | ( | ) | const [inline, virtual] |
virtual Bool_t TGLLogicalShape::KeepDuringSmartRefresh | ( | ) | const [inline, virtual] |
virtual Bool_t TGLLogicalShape::SupportsSecondarySelect | ( | ) | const [inline, virtual] |
virtual Bool_t TGLLogicalShape::AlwaysSecondarySelect | ( | ) | const [inline, virtual] |
virtual void TGLLogicalShape::ProcessSelection | ( | TGLRnrCtx & | rnrCtx, | |
TGLSelectRecord & | rec | |||
) | [virtual] |
void TGLLogicalShape::InvokeContextMenu | ( | TContextMenu & | menu, | |
UInt_t | x, | |||
UInt_t | y | |||
) | const |
TGLScene [friend] |
Definition at line 33 of file TGLLogicalShape.h.
UInt_t TGLLogicalShape::fRef [mutable, protected] |
Definition at line 48 of file TGLLogicalShape.h.
Referenced by AddRef(), DestroyPhysicals(), Ref(), SubRef(), UnrefFirstPhysical(), and ~TGLLogicalShape().
TGLPhysicalShape* TGLLogicalShape::fFirstPhysical [mutable, protected] |
physical instance ref counting
Definition at line 49 of file TGLLogicalShape.h.
Referenced by AddRef(), DestroyPhysicals(), GetFirstPhysical(), SubRef(), UnrefFirstPhysical(), and UpdateBoundingBoxesOfPhysicals().
TObject* TGLLogicalShape::fExternalObj [protected] |
first replica
Definition at line 51 of file TGLLogicalShape.h.
Referenced by TEveDigitSetGL::AlwaysSecondarySelect(), TPointSet3DGL::DirectDraw(), TEveDigitSetGL::DrawHighlight(), GetExternal(), ID(), InvokeContextMenu(), TPointSet3DGL::ProcessSelection(), TEveDigitSetGL::ProcessSelection(), TEveBoxGL::SetBBox(), TEveCaloLegoGL::SetBBox(), TEveTriangleSetGL::SetBBox(), TEveJetConeGL::SetBBox(), TEveArrowGL::SetBBox(), TEveJetConeProjectedGL::SetBBox(), TEveCalo2DGL::SetBBox(), TEveCalo3DGL::SetBBox(), TEveProjectionAxesGL::SetBBox(), TEveDigitSetGL::SetBBox(), TEveBoxProjectedGL::SetBBox(), TPointSet3DGL::SetBBox(), TEveStraightLineSetGL::SetBBox(), TGLObject::SetModelCheckClass(), TGLObject::SetModelDynCast(), TEveDigitSetGL::SetupColor(), TGLLogicalShape(), and ~TGLLogicalShape().
TGLBoundingBox TGLLogicalShape::fBoundingBox [protected] |
Also plays the role of ID.
Definition at line 52 of file TGLLogicalShape.h.
Referenced by BoundingBox(), TF2GL::DirectDraw(), TEveTextGL::DirectDraw(), TH3GL::DirectDraw(), TH2GL::DirectDraw(), TGLObject::SetAxisAlignedBBox(), TGLParametricEquationGL::SetBBox(), TH2GL::SetBBox(), TH3GL::SetBBox(), TF2GL::SetBBox(), TEvePlot3DGL::SetBBox(), TEveTextGL::SetBBox(), and TGLLogicalShape().
TGLScene* TGLLogicalShape::fScene [mutable, protected] |
Shape's bounding box.
Definition at line 53 of file TGLLogicalShape.h.
Referenced by TGLScene::AdoptLogical(), GetScene(), PurgeDLRange(), TGLObject::ShouldDLCache(), and ShouldDLCache().
UInt_t TGLLogicalShape::fDLBase [mutable, protected] |
scene where object is stored (can be zero!)
Definition at line 54 of file TGLLogicalShape.h.
Referenced by DLCacheDrop(), DLCachePurge(), and Draw().
Int_t TGLLogicalShape::fDLSize [mutable, protected] |
display-list id base
Definition at line 55 of file TGLLogicalShape.h.
Referenced by DLCachePurge(), Draw(), TGLCylinder::TGLCylinder(), and TGLSphere::TGLSphere().
UShort_t TGLLogicalShape::fDLValid [mutable, protected] |
display-list size for different LODs
Definition at line 56 of file TGLLogicalShape.h.
Referenced by DLCacheClear(), DLCacheDrop(), DLCachePurge(), and Draw().
Bool_t TGLLogicalShape::fDLCache [mutable, protected] |
display-list validity bit-field
Definition at line 57 of file TGLLogicalShape.h.
Referenced by Draw(), SetDLCache(), TGLObject::ShouldDLCache(), ShouldDLCache(), TEveCaloLegoGL::TEveCaloLegoGL(), TEvePlot3DGL::TEvePlot3DGL(), TEveProjectionAxesGL::TEveProjectionAxesGL(), TEveTextGL::TEveTextGL(), and TGLPlot3D::TGLPlot3D().
Bool_t TGLLogicalShape::fRefStrong [mutable, protected] |
use display list caching
Definition at line 58 of file TGLLogicalShape.h.
Referenced by StrongRef(), and SubRef().
Bool_t TGLLogicalShape::fOwnExtObj [mutable, protected] |
Strong ref (delete on 0 ref); not in scene.
Definition at line 59 of file TGLLogicalShape.h.
Referenced by TGLLogicalShape(), and ~TGLLogicalShape().
TGLPhysicalShape* TGLLogicalShape::fFirstPhysical [mutable, protected] |
TObject* TGLLogicalShape::fExternalObj [protected] |
TGLScene* TGLLogicalShape::fScene [mutable, protected] |