#include <llspatialpartition.h>
Inheritance diagram for LLSpatialBridge:
Public Types | |
typedef std::vector< LLPointer< LLSpatialBridge > > | bridge_vector_t |
Public Member Functions | |
LLSpatialBridge (LLDrawable *root, U32 data_mask) | |
virtual BOOL | isSpatialBridge () const |
virtual void | updateSpatialExtents () |
virtual void | updateBinRadius () |
virtual void | setVisible (LLCamera &camera_in, std::vector< LLDrawable * > *results=NULL, BOOL for_select=FALSE) |
virtual void | updateDistance (LLCamera &camera_in) |
virtual void | makeActive () |
virtual void | makeStatic () |
virtual void | move (LLDrawable *drawablep, LLSpatialGroup *curp, BOOL immediate=FALSE) |
virtual BOOL | updateMove () |
virtual void | shiftPos (const LLVector3 &vec) |
virtual void | cleanupReferences () |
virtual LLSpatialPartition * | asPartition () |
virtual LLSpatialBridge * | asBridge () |
virtual LLCamera | transformCamera (LLCamera &camera) |
Public Attributes | |
LLDrawable * | mDrawable |
Protected Member Functions | |
~LLSpatialBridge () |
Definition at line 356 of file llspatialpartition.h.
typedef std::vector<LLPointer<LLSpatialBridge> > LLSpatialBridge::bridge_vector_t |
Definition at line 362 of file llspatialpartition.h.
LLSpatialBridge::~LLSpatialBridge | ( | ) | [protected] |
Definition at line 1161 of file lldrawable.cpp.
References LLDrawable::getSpatialGroup(), LLPipeline::getSpatialPartition(), gPipeline, LLSpatialPartition::mPartitionType, and LLSpatialPartition::remove().
LLSpatialBridge::LLSpatialBridge | ( | LLDrawable * | root, | |
U32 | data_mask | |||
) |
Definition at line 1145 of file lldrawable.cpp.
References LLOctreeNode< T >::balance(), LLPipeline::getSpatialPartition(), gPipeline, mDrawable, LLSpatialPartition::mDrawableType, LLSpatialPartition::mOctree, LLSpatialPartition::mPartitionType, LLDrawable::mRenderType, LLPipeline::PARTITION_VOLUME, LLSpatialPartition::put(), and LLDrawable::setSpatialBridge().
virtual LLSpatialBridge* LLSpatialBridge::asBridge | ( | ) | [inline, virtual] |
virtual LLSpatialPartition* LLSpatialBridge::asPartition | ( | ) | [inline, virtual] |
void LLSpatialBridge::cleanupReferences | ( | ) | [virtual] |
Reimplemented from LLDrawable.
Definition at line 1426 of file lldrawable.cpp.
References LLDrawable::cleanupReferences(), LLDrawable::getChild(), LLDrawable::getChildCount(), mDrawable, NULL, LLDrawable::setSpatialBridge(), and LLDrawable::setSpatialGroup().
virtual BOOL LLSpatialBridge::isSpatialBridge | ( | ) | const [inline, virtual] |
Reimplemented from LLDrawable.
Definition at line 366 of file llspatialpartition.h.
References TRUE.
void LLSpatialBridge::makeActive | ( | ) | [virtual] |
void LLSpatialBridge::makeStatic | ( | ) | [virtual] |
void LLSpatialBridge::move | ( | LLDrawable * | drawablep, | |
LLSpatialGroup * | curp, | |||
BOOL | immediate = FALSE | |||
) | [virtual] |
Reimplemented from LLSpatialPartition.
Definition at line 1406 of file lldrawable.cpp.
References FALSE, gPipeline, LLPipeline::markMoved(), and LLSpatialPartition::move().
void LLSpatialBridge::setVisible | ( | LLCamera & | camera_in, | |
std::vector< LLDrawable * > * | results = NULL , |
|||
BOOL | for_select = FALSE | |||
) | [virtual] |
Reimplemented from LLDrawable.
Definition at line 1315 of file lldrawable.cpp.
References LLCamera::AABBInFrustum(), LLPipeline::calcPixelArea(), f, FORCE_INVISIBLE_AREA, LLPointer< Type >::get(), LLTreeNode< T >::getListener(), LLDrawable::getParent(), LLDrawable::getVObj(), gPipeline, LLPipeline::hasRenderType(), LLViewerObject::isAttachment(), LLViewerObject::isHUDAttachment(), mDrawable, LLSpatialPartition::mDrawableType, LLDrawable::mExtents, LLSpatialPartition::mOctree, LLSpatialGroup::rebound(), LLDrawable::setVisible(), size, transformCamera(), and LLOctreeMarkNotCulled::traverse().
Reimplemented from LLDrawable.
Reimplemented in LLHUDBridge.
Definition at line 1419 of file lldrawable.cpp.
References LLDrawable::mExtents, and LLDrawable::mPositionGroup.
Definition at line 1233 of file lldrawable.cpp.
References LLCoordFrame::getAtAxis(), LLCoordFrame::getLeftAxis(), LLCoordFrame::getOrigin(), LLXform::getRotation(), LLCoordFrame::getUpAxis(), LLXformMatrix::getWorldMatrix(), LLDrawable::getXform(), mDrawable, LLCoordFrame::setAxes(), and LLCoordFrame::setOrigin().
Referenced by setVisible(), and updateDistance().
void LLSpatialBridge::updateBinRadius | ( | ) | [virtual] |
Reimplemented from LLDrawable.
Definition at line 1228 of file lldrawable.cpp.
References LLOctreeNode< T >::getSize(), llmin(), LLDrawable::mBinRadius, LLVector3d::mdV, and LLSpatialPartition::mOctree.
Reimplemented from LLDrawable.
Definition at line 1372 of file lldrawable.cpp.
References LLDrawable::getChild(), LLDrawable::getChildCount(), llendl, llwarns, LLDrawable::markDead(), mDrawable, NULL, transformCamera(), and LLDrawable::updateDistance().
Referenced by LLPipeline::stateSort().
BOOL LLSpatialBridge::updateMove | ( | ) | [virtual] |
Reimplemented from LLDrawable.
Definition at line 1412 of file lldrawable.cpp.
References LLOctreeNode< T >::balance(), LLDrawable::getSpatialGroup(), LLPipeline::getSpatialPartition(), gPipeline, LLSpatialPartition::mOctree, LLSpatialPartition::move(), LLSpatialPartition::mPartitionType, and TRUE.
void LLSpatialBridge::updateSpatialExtents | ( | ) | [virtual] |
Reimplemented from LLDrawable.
Definition at line 1169 of file lldrawable.cpp.
References LLFastTimer::FTM_CULL_REBOUND, LLTreeNode< T >::getListener(), LLXformMatrix::getWorldMatrix(), LLDrawable::getXform(), j, LLSpatialGroup::mBounds, mDrawable, LLDrawable::mExtents, LLSpatialPartition::mOctree, LLVector3::mV, LLSpatialGroup::rebound(), size, and v.
Definition at line 383 of file llspatialpartition.h.
Referenced by cleanupReferences(), LLSpatialBridge(), LLDrawPoolAlpha::renderAlpha(), LLDrawPoolAlpha::renderAlphaHighlight(), setVisible(), transformCamera(), updateDistance(), and updateSpatialExtents().