This is Unofficial EPICS BASE Doxygen Site
boost::enable_shared_from_this< T > Class Template Reference

#include "enable_shared_from_this.hpp"

Public Member Functions

shared_ptr< T > shared_from_this ()
 
shared_ptr< T const > shared_from_this () const
 
template<class X , class Y >
void _internal_accept_owner (shared_ptr< X > const *ppx, Y *py) const
 

Protected Member Functions

 enable_shared_from_this () BOOST_NOEXCEPT
 
 enable_shared_from_this (enable_shared_from_this const &) BOOST_NOEXCEPT
 
enable_shared_from_thisoperator= (enable_shared_from_this const &) BOOST_NOEXCEPT
 
 ~enable_shared_from_this () BOOST_NOEXCEPT
 

Detailed Description

template<class T>
class boost::enable_shared_from_this< T >

Definition at line 24 of file enable_shared_from_this.hpp.

Constructor & Destructor Documentation

template<class T>
boost::enable_shared_from_this< T >::enable_shared_from_this ( )
inlineprotected

Definition at line 28 of file enable_shared_from_this.hpp.

29  {
30  }
template<class T>
boost::enable_shared_from_this< T >::enable_shared_from_this ( enable_shared_from_this< T > const &  )
inlineprotected

Definition at line 32 of file enable_shared_from_this.hpp.

33  {
34  }
template<class T>
boost::enable_shared_from_this< T >::~enable_shared_from_this ( )
inlineprotected

Definition at line 41 of file enable_shared_from_this.hpp.

42  {
43  }

Member Function Documentation

template<class T>
template<class X , class Y >
void boost::enable_shared_from_this< T >::_internal_accept_owner ( shared_ptr< X > const *  ppx,
Y *  py 
) const
inline

Definition at line 64 of file enable_shared_from_this.hpp.

65  {
66  if( weak_this_.expired() )
67  {
68  weak_this_ = shared_ptr<T>( *ppx, py );
69  }
70  }
template<class T>
enable_shared_from_this& boost::enable_shared_from_this< T >::operator= ( enable_shared_from_this< T > const &  )
inlineprotected

Definition at line 36 of file enable_shared_from_this.hpp.

37  {
38  return *this;
39  }
template<class T>
shared_ptr<T> boost::enable_shared_from_this< T >::shared_from_this ( )
inline

Definition at line 47 of file enable_shared_from_this.hpp.

48  {
49  shared_ptr<T> p( weak_this_ );
50  BOOST_ASSERT( p.get() == this );
51  return p;
52  }
#define BOOST_ASSERT(expr)
Definition: assert.hpp:51
template<class T>
shared_ptr<T const> boost::enable_shared_from_this< T >::shared_from_this ( ) const
inline

Definition at line 54 of file enable_shared_from_this.hpp.

55  {
56  shared_ptr<T const> p( weak_this_ );
57  BOOST_ASSERT( p.get() == this );
58  return p;
59  }
#define BOOST_ASSERT(expr)
Definition: assert.hpp:51

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