![]() |
OpenSceneGraph
|
Smart pointer for handling referenced counted objects. More...
Public Types | |
typedef T | element_type |
Public Member Functions | |
ref_ptr () | |
ref_ptr (T *ptr) | |
ref_ptr (const ref_ptr &rp) | |
template<class Other > | |
ref_ptr (const ref_ptr< Other > &rp) | |
ref_ptr (observer_ptr< T > &optr) | |
~ref_ptr () | |
ref_ptr & | operator= (const ref_ptr &rp) |
template<class Other > | |
ref_ptr & | operator= (const ref_ptr< Other > &rp) |
ref_ptr & | operator= (T *ptr) |
bool | operator== (const ref_ptr &rp) const |
bool | operator== (const T *ptr) const |
bool | operator!= (const ref_ptr &rp) const |
bool | operator!= (const T *ptr) const |
bool | operator< (const ref_ptr &rp) const |
operator unspecified_bool_type () const | |
T & | operator* () const |
T * | operator-> () const |
T * | get () const |
bool | operator! () const |
bool | valid () const |
T * | release () |
release the pointer from ownership by this ref_ptr<>, decrementing the objects refencedCount() via unref_nodelete() to prevent the Object object from being deleted even if the reference count goes to zero. More... | |
void | swap (ref_ptr &rp) |
Friends | |
template<class Other > | |
class | ref_ptr |
bool | operator== (const T *ptr, const ref_ptr &rp) |
bool | operator!= (const T *ptr, const ref_ptr &rp) |
Smart pointer for handling referenced counted objects.
typedef T osg::ref_ptr< T >::element_type |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by osgVolume::Locator::addCallback(), osg::ProxyNode::addChild(), osg::Sequence::addChild(), osg::Group::addChild(), osg::PagedLOD::addChild(), osg::LOD::addChild(), osg::CompositeShape::addChild(), osgManipulator::Dragger::addConstraint(), osg::Node::addCullCallback(), osgViewer::View::addDevice(), osgManipulator::CompositeDragger::addDragger(), osgManipulator::Dragger::addDraggerCallback(), osg::Geode::addDrawable(), osg::Node::addEventCallback(), osgViewer::View::addEventHandler(), osg::Camera::addFinalDrawCallback(), osg::ImageSequence::addImage(), osg::Camera::addInitialDrawCallback(), osgVolume::CompositeLayer::addLayer(), osgTerrain::CompositeLayer::addLayer(), osg::Camera::addPostDrawCallback(), osg::Camera::addPreDrawCallback(), osgVolume::Layer::addProperty(), osgVolume::CompositeProperty::addProperty(), osgShadow::ShadowMap::addShader(), osg::Program::addShader(), osg::StateSet::addUniform(), osg::Node::addUpdateCallback(), osg::UserDataContainer::addUserObject(), osgViewer::CompositeViewer::addView(), osgViewer::View::apply(), osg::clone(), osg::cloneType(), osg::const_pointer_cast(), osgViewer::View::containsCamera(), osgManipulator::CompositeDragger::containsDragger(), osg::Geode::containsDrawable(), osg::Group::containsNode(), osg::createGeodeForImage(), osg::dynamic_pointer_cast(), osg::ContextData::get(), osg::State::get(), osg::get_pointer(), osgUtil::RenderLeaf::getDrawable(), osg::Geode::getDrawableIndex(), osgAnimation::MorphGeometry::MorphTarget::getGeometry(), osgShadow::MinimalDrawBoundsShadowMap::ViewData::getShadowCameraProjectionMatrixPtr(), osgAnimation::StatsActionVisitor::getStats(), osgAnimation::TimelineAnimationManager::getTimeline(), osgUtil::StateGraph::getUserData(), osg::Sequence::insertChild(), osg::Group::insertChild(), osgAnimation::UpdateUniform< osg::Vec4f >::link(), osg::observer_ptr< osgWidget::Widget >::observer_ptr(), osg::observer_ptr< osgWidget::Widget >::operator=(), osgUtil::Optimizer::optimize(), osgDB::ObjectSerializer< C, P >::read(), osgDB::ImageSerializer< C, P >::read(), osgDB::InputStream::readObjectFieldsOfType(), osgDB::InputStream::readObjectOfType(), osg::StateSet::removeAttribute(), osg::Group::removeChild(), osgManipulator::Dragger::removeConstraint(), osg::Node::removeCullCallback(), osgViewer::View::removeDevice(), osgManipulator::CompositeDragger::removeDragger(), osgManipulator::Dragger::removeDraggerCallback(), osg::Geode::removeDrawable(), osg::Node::removeEventCallback(), osgViewer::View::removeEventHandler(), osg::Camera::removeFinalDrawCallback(), osg::Camera::removeInitialDrawCallback(), osg::Camera::removePostDrawCallback(), osg::Camera::removePreDrawCallback(), osg::Program::removeShader(), osg::StateSet::removeTextureAttribute(), osg::StateSet::removeUniform(), osg::Node::removeUpdateCallback(), osgViewer::CompositeViewer::removeView(), osg::Group::replaceChild(), osg::Geode::replaceDrawable(), osgParticle::Particle::setAlphaInterpolator(), osg::StateSet::setAttribute(), osg::StateSet::setAttributeAndModes(), osgViewer::View::setCameraManipulator(), osgParticle::Particle::setColorInterpolator(), osgTerrain::TerrainTile::setColorLayer(), osg::Node::setComputeBoundingSphereCallback(), osg::Node::setCullCallback(), osgViewer::View::setDatabasePager(), osgViewer::View::setDisplaySettings(), osg::Geode::setDrawable(), osgTerrain::TerrainTile::setElevationLayer(), osg::Node::setEventCallback(), osg::StateSet::setEventCallback(), osgViewer::View::setEventQueue(), osgTerrain::HeightFieldLayer::setHeightField(), osg::Texture2DArray::setImage(), osg::TextureCubeMap::setImage(), osg::Texture2D::setImage(), osg::Texture3D::setImage(), osg::Texture1D::setImage(), osg::TextureRectangle::setImage(), osg::ImageSequence::setImage(), osgWidget::Widget::setImage(), osgVolume::ImageLayer::setImage(), osgTerrain::ImageLayer::setImage(), osg::Texture::setImage(), osgViewer::View::setImagePager(), osgVolume::CompositeLayer::setLayer(), osgTerrain::CompositeLayer::setLayer(), osgTerrain::Layer::setLocator(), osgVolume::Layer::setLocator(), osgTerrain::TerrainTile::setLocator(), osgSim::OverlayNode::setOverlaySubgraph(), osgParticle::ParticleEffect::setParticleSystem(), osgVolume::Layer::setProperty(), osgVolume::CompositeProperty::setProperty(), osg::Texture::setReadPBuffer(), osgViewer::View::setSceneData(), osgShadow::ShadowedScene::setShadowSettings(), osgShadow::ShadowedScene::setShadowTechnique(), osg::Drawable::setShape(), osgParticle::Particle::setSizeInterpolator(), osg::Node::setStateSet(), osgTerrain::TerrainTile::setTerrainTechnique(), osg::StateSet::setTextureAttribute(), osg::StateSet::setTextureAttributeAndModes(), osgTerrain::ContourLayer::setTransferFunction(), osg::Node::setUpdateCallback(), osg::StateSet::setUpdateCallback(), osg::Object::setUserData(), osg::Object::setUserDataContainer(), osg::ShapeDrawable::ShapeDrawable(), osg::static_pointer_cast(), osg::Texture1D::Texture1D(), osg::Texture2D::Texture2D(), osg::Texture3D::Texture3D(), and osg::TextureRectangle::TextureRectangle().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by osg::ref_ptr< osgDB::FileCache >::operator=().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
release the pointer from ownership by this ref_ptr<>, decrementing the objects refencedCount() via unref_nodelete() to prevent the Object object from being deleted even if the reference count goes to zero.
Use when using a local ref_ptr<> to an Object that you want to return from a function/method via a C pointer, whilst preventing the normal ref_ptr<> destructor from cleaning up the object. When using release() you are implicitly expecting other code to take over management of the object, otherwise a memory leak will result.
Referenced by osg::clone(), osg::cloneType(), and osgDB::readRefScriptFile().
|
inline |
Referenced by osg::swap().
|
inline |
Referenced by osgAnimation::RigGeometry::FindNearestParentSkeleton::apply(), osgUtil::LineSegmentIntersector::Intersection::getWorldIntersectNormal(), osgUtil::RayIntersector::Intersection::getWorldIntersectNormal(), osgUtil::LineSegmentIntersector::Intersection::getWorldIntersectPoint(), osgUtil::RayIntersector::Intersection::getWorldIntersectPoint(), osg::observer_ptr< osgWidget::Widget >::lock(), osg::observer_ptr< osgWidget::Widget >::observer_ptr(), osg::ref_ptr< osgDB::FileCache >::operator unspecified_bool_type(), osg::observer_ptr< osgWidget::Widget >::operator=(), and osgDB::readRefShaderFile().
|
friend |