Open 3D Engine AzCore API Reference  2305.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZStd::shared_ptr< T > Class Template Reference

Public Types

typedef T element_type
 
typedef T value_type
 
typedef
AZStd::Internal::shared_ptr_traits
< T >::reference 
reference
 
typedef T *this_type::* unspecified_bool_type
 

Public Member Functions

 shared_ptr (nullptr_t)
 
template<class Y >
 shared_ptr (Y *p)
 
template<class Y , class D >
 shared_ptr (Y *p, D d)
 
template<class Y , class D , class A >
 shared_ptr (Y *p, D d, const A &a)
 
template<class Y >
 shared_ptr (weak_ptr< Y > const &r)
 
template<class Y >
 shared_ptr (weak_ptr< Y > const &r, AZStd::Internal::sp_nothrow_tag)
 
template<class Y >
 pn (r.pn)
 
template<class Y >
 shared_ptr (shared_ptr< Y > const &r, T *p)
 
template<class Y >
 shared_ptr (shared_ptr< Y > const &r, AZStd::Internal::static_cast_tag)
 
template<class Y >
 shared_ptr (shared_ptr< Y > const &r, AZStd::Internal::const_cast_tag)
 
template<class Y >
 shared_ptr (shared_ptr< Y > const &r, AZStd::Internal::reinterpret_cast_tag)
 
template<class Y >
 shared_ptr (shared_ptr< Y > const &r, AZStd::Internal::rtti_cast_tag)
 
template<class Y >
 shared_ptr (std::auto_ptr< Y > &r)
 
template<class Y , class A >
 shared_ptr (std::auto_ptr< Y > &r, const A &a)
 
template<class Ap >
 shared_ptr (Ap r, typename AZStd::Internal::sp_enable_if_auto_ptr< Ap, int >::type=0)
 
shared_ptroperator= (shared_ptr const &r)
 
template<class Y >
shared_ptroperator= (shared_ptr< Y > const &r)
 
template<class Y >
shared_ptroperator= (std::auto_ptr< Y > &r)
 
template<class Ap >
AZStd::Internal::sp_enable_if_auto_ptr
< Ap, shared_ptr & >::type 
operator= (Ap r)
 
 shared_ptr (shared_ptr &&r)
 
template<class Y >
 pn ()
 
shared_ptroperator= (shared_ptr &&r)
 
template<class Y >
shared_ptroperator= (shared_ptr< Y > &&r)
 
template<class Y , class Deleter >
 shared_ptr (unique_ptr< Y, Deleter > &&r)
 
template<class Y , class Deleter >
shared_ptroperator= (unique_ptr< Y, Deleter > &&r)
 
 shared_ptr (const this_type &r)
 
void reset ()
 
template<class Y >
void reset (Y *p)
 
template<class Y , class D >
void reset (Y *p, D d)
 
template<class Y , class D , class A >
void reset (Y *p, D d, A a)
 
template<class Y >
void reset (shared_ptr< Y > const &r, T *p)
 
reference operator* () const
 
T * operator-> () const
 
T * get () const
 
 operator unspecified_bool_type () const
 
bool operator! () const
 
bool unique () const
 
long use_count () const
 
void swap (shared_ptr< T > &other)
 
template<class Y >
bool _internal_less (shared_ptr< Y > const &rhs) const
 
void * _internal_get_deleter (AZStd::Internal::sp_typeinfo const &ti) const
 
bool _internal_equiv (shared_ptr const &r) const
 

Public Attributes

template<class Y >
 __pad0__: px(r.px)
 
template<class Y >
 __pad1__: px(r.px)
 

Friends

template<class Y >
class shared_ptr
 
template<class Y >
class weak_ptr
 

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