std::tr1::weak_ptr< _Tp > Class Template Reference

#include <boost_shared_ptr.h>

List of all members.

Public Types

typedef _Tp element_type

Public Member Functions

 weak_ptr ()
template<typename _Tp1>
 weak_ptr (const weak_ptr< _Tp1 > &r)
template<typename _Tp1>
 weak_ptr (const shared_ptr< _Tp1 > &r)
template<typename _Tp1>
weak_ptroperator= (const weak_ptr< _Tp1 > &r)
template<typename _Tp1>
weak_ptroperator= (const shared_ptr< _Tp1 > &r)
shared_ptr< _Tp > lock () const
long use_count () const
bool expired () const
void reset ()
void swap (weak_ptr &__s)

Private Member Functions

template<typename _Tp1>
bool _M_less (const weak_ptr< _Tp1 > &__rhs) const
void _M_assign (_Tp *__ptr, const shared_count &__refcount)

Private Attributes

_Tp * _M_ptr
weak_count _M_refcount

Friends

class weak_ptr
class shared_ptr
class enable_shared_from_this< _Tp >
template<typename _Tp1>
bool operator< (const weak_ptr &__lhs, const weak_ptr< _Tp1 > &__rhs)


Detailed Description

template<typename _Tp>
class std::tr1::weak_ptr< _Tp >

Definition at line 778 of file boost_shared_ptr.h.


Member Typedef Documentation

template<typename _Tp>
typedef _Tp std::tr1::weak_ptr< _Tp >::element_type

Definition at line 782 of file boost_shared_ptr.h.


Constructor & Destructor Documentation

template<typename _Tp>
std::tr1::weak_ptr< _Tp >::weak_ptr (  )  [inline]

Definition at line 784 of file boost_shared_ptr.h.

Referenced by std::tr1::weak_ptr< _Tp >::reset().

template<typename _Tp>
template<typename _Tp1>
std::tr1::weak_ptr< _Tp >::weak_ptr ( const weak_ptr< _Tp1 > &  r  )  [inline]

Definition at line 808 of file boost_shared_ptr.h.

References __glibcxx_function_requires, std::tr1::weak_ptr< _Tp >::_M_ptr, and std::tr1::weak_ptr< _Tp >::lock().

template<typename _Tp>
template<typename _Tp1>
std::tr1::weak_ptr< _Tp >::weak_ptr ( const shared_ptr< _Tp1 > &  r  )  [inline]

Definition at line 816 of file boost_shared_ptr.h.

References __glibcxx_function_requires.


Member Function Documentation

template<typename _Tp>
void std::tr1::weak_ptr< _Tp >::_M_assign ( _Tp *  __ptr,
const shared_count __refcount 
) [inline, private]

Definition at line 898 of file boost_shared_ptr.h.

References std::tr1::weak_ptr< _Tp >::_M_ptr, and std::tr1::weak_ptr< _Tp >::_M_refcount.

template<typename _Tp>
template<typename _Tp1>
bool std::tr1::weak_ptr< _Tp >::_M_less ( const weak_ptr< _Tp1 > &  __rhs  )  const [inline, private]

Definition at line 893 of file boost_shared_ptr.h.

References std::tr1::weak_ptr< _Tp >::_M_refcount.

template<typename _Tp>
bool std::tr1::weak_ptr< _Tp >::expired (  )  const [inline]

Definition at line 875 of file boost_shared_ptr.h.

References std::tr1::weak_ptr< _Tp >::_M_refcount, and std::tr1::weak_count::use_count().

Referenced by std::tr1::weak_ptr< _Tp >::lock().

template<typename _Tp>
shared_ptr<_Tp> std::tr1::weak_ptr< _Tp >::lock (  )  const [inline]

Definition at line 841 of file boost_shared_ptr.h.

References std::tr1::weak_ptr< _Tp >::expired().

Referenced by std::tr1::weak_ptr< _Tp >::operator=(), and std::tr1::weak_ptr< _Tp >::weak_ptr().

template<typename _Tp>
template<typename _Tp1>
weak_ptr& std::tr1::weak_ptr< _Tp >::operator= ( const shared_ptr< _Tp1 > &  r  )  [inline]

Definition at line 833 of file boost_shared_ptr.h.

References std::tr1::shared_ptr< _Tp >::_M_ptr, std::tr1::weak_ptr< _Tp >::_M_ptr, std::tr1::shared_ptr< _Tp >::_M_refcount, and std::tr1::weak_ptr< _Tp >::_M_refcount.

template<typename _Tp>
template<typename _Tp1>
weak_ptr& std::tr1::weak_ptr< _Tp >::operator= ( const weak_ptr< _Tp1 > &  r  )  [inline]

Definition at line 824 of file boost_shared_ptr.h.

References std::tr1::weak_ptr< _Tp >::_M_ptr, std::tr1::weak_ptr< _Tp >::_M_refcount, and std::tr1::weak_ptr< _Tp >::lock().

template<typename _Tp>
void std::tr1::weak_ptr< _Tp >::reset (  )  [inline]

Definition at line 879 of file boost_shared_ptr.h.

References std::tr1::weak_ptr< _Tp >::weak_ptr().

template<typename _Tp>
void std::tr1::weak_ptr< _Tp >::swap ( weak_ptr< _Tp > &  __s  )  [inline]

Definition at line 883 of file boost_shared_ptr.h.

References std::tr1::weak_ptr< _Tp >::_M_ptr, std::tr1::weak_ptr< _Tp >::_M_refcount, std::tr1::weak_count::swap(), and std::swap().

Referenced by std::tr1::swap().

template<typename _Tp>
long std::tr1::weak_ptr< _Tp >::use_count (  )  const [inline]

Definition at line 871 of file boost_shared_ptr.h.

References std::tr1::weak_ptr< _Tp >::_M_refcount, and std::tr1::weak_count::use_count().


Friends And Related Function Documentation

template<typename _Tp>
friend class enable_shared_from_this< _Tp > [friend]

Definition at line 913 of file boost_shared_ptr.h.

template<typename _Tp>
template<typename _Tp1>
bool operator< ( const weak_ptr< _Tp > &  __lhs,
const weak_ptr< _Tp1 > &  __rhs 
) [friend]

Definition at line 908 of file boost_shared_ptr.h.

template<typename _Tp>
friend class shared_ptr [friend]

Definition at line 912 of file boost_shared_ptr.h.

template<typename _Tp>
friend class weak_ptr [friend]

Definition at line 911 of file boost_shared_ptr.h.


Member Data Documentation

template<typename _Tp>
_Tp* std::tr1::weak_ptr< _Tp >::_M_ptr [private]

Definition at line 915 of file boost_shared_ptr.h.

Referenced by std::tr1::weak_ptr< _Tp >::_M_assign(), std::tr1::weak_ptr< _Tp >::operator=(), std::tr1::shared_ptr< _Tp >::shared_ptr(), std::tr1::weak_ptr< _Tp >::swap(), and std::tr1::weak_ptr< _Tp >::weak_ptr().

template<typename _Tp>
weak_count std::tr1::weak_ptr< _Tp >::_M_refcount [private]

Definition at line 916 of file boost_shared_ptr.h.

Referenced by std::tr1::weak_ptr< _Tp >::_M_assign(), std::tr1::weak_ptr< _Tp >::_M_less(), std::tr1::weak_ptr< _Tp >::expired(), std::tr1::weak_ptr< _Tp >::operator=(), std::tr1::weak_ptr< _Tp >::swap(), and std::tr1::weak_ptr< _Tp >::use_count().


The documentation for this class was generated from the following file:
Generated on Tue Feb 2 16:59:36 2010 for GNU C++ STL by  doxygen 1.4.7