vsg: vsg::observer_ptr< T > Class Template Reference

vsg 1.1.8 VulkanSceneGraph library

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Attributes | List of all members
vsg::observer_ptr< T > Class Template Reference

`#include <observer_ptr.h>`

Collaboration diagram for vsg::observer_ptr< T >:
[legend]

## Public Types
using | element_type = T

## Public Member Functions
| observer_ptr (const observer_ptr &rhs)
template<class R >
| observer_ptr (R *ptr)
template<class R >
| observer_ptr (const observer_ptr< R > &ptr)
template<class R >
| observer_ptr (const vsg::ref_ptr< R > &ptr)
void | reset ()
template<class R >
observer_ptr & | operator= (R *ptr)
observer_ptr & | operator= (const observer_ptr &rhs)
template<class R >
observer_ptr & | operator= (const observer_ptr< R > &rhs)
template<class R >
observer_ptr & | operator= (const vsg::ref_ptr< R > &rhs)
template<class R >
bool | operator< (const observer_ptr< R > &rhs) const
template<class R >
bool | operator== (const observer_ptr< R > &rhs) const
template<class R >
bool | operator!= (const observer_ptr< R > &rhs) const
template<class R >
bool | operator< (const R *rhs) const
template<class R >
bool | operator== (const R *rhs) const
template<class R >
bool | operator!= (const R *rhs) const
bool | valid () const noexcept
| operator bool () const noexcept
vsg::ref_ptr< T > | ref_ptr () const
| convert observer_ptr into a ref_ptr so that Object pointed to can be safely accessed.
template<class R >
| operator vsg::ref_ptr< R > () const
| convert observer_ptr into a ref_ptr so that Object pointed to can be safely accessed.

## Protected Attributes
T * | _ptr
vsg::ref_ptr< Auxiliary > | _auxiliary

## Detailed Description

template<class T>
class vsg::observer_ptr< T >

weak smart pointer that works in conjunction with vsg::ref_ptr<> and vsg::Object/vsg::Auxiliary to provide broadly similar functionality to std::weak_ptr<>.

The documentation for this class was generated from the following file:

- include/vsg/core/observer_ptr.h