ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
shared_ptr.hpp File Reference
#include <boost/config.hpp>
#include <boost/config/no_tr1/memory.hpp>
#include <boost/assert.hpp>
#include <boost/checked_delete.hpp>
#include <boost/throw_exception.hpp>
#include <boost/smart_ptr/detail/shared_count.hpp>
#include <boost/detail/workaround.hpp>
#include <boost/smart_ptr/detail/sp_convertible.hpp>
#include <boost/smart_ptr/detail/spinlock_pool.hpp>
#include <boost/memory_order.hpp>
#include <algorithm>
#include <functional>
#include <typeinfo>
#include <cstddef>
#include <iosfwd>
#include <boost/smart_ptr/detail/operator_bool.hpp>
+ Include dependency graph for shared_ptr.hpp:

Go to the source code of this file.

Classes

class  shared_ptr< T >
 
class  weak_ptr< T >
 
class  enable_shared_from_this< T >
 
class  enable_shared_from_this2< T >
 
struct  boost::detail::static_cast_tag
 
struct  boost::detail::const_cast_tag
 
struct  boost::detail::dynamic_cast_tag
 
struct  boost::detail::polymorphic_cast_tag
 
struct  boost::detail::shared_ptr_traits< T >
 
struct  boost::detail::shared_ptr_traits< void >
 
struct  boost::detail::shared_ptr_traits< void const >
 
struct  boost::detail::shared_ptr_traits< void volatile >
 
struct  boost::detail::shared_ptr_traits< void const volatile >
 
struct  boost::detail::sp_enable_if_auto_ptr< T, R >
 
struct  boost::detail::sp_enable_if_auto_ptr< std::auto_ptr< T >, R >
 
class  boost::shared_ptr< T >
 
struct  hash< T >
 

Namespaces

namespace  boost
 
namespace  boost::detail
 

Functions

template<class X , class Y , class T >
void boost::detail::sp_enable_shared_from_this (boost::shared_ptr< X > const *ppx, Y const *py, boost::enable_shared_from_this< T > const *pe)
 
template<class X , class Y , class T >
void boost::detail::sp_enable_shared_from_this (boost::shared_ptr< X > *ppx, Y const *py, boost::enable_shared_from_this2< T > const *pe)
 
void boost::detail::sp_enable_shared_from_this (...)
 
template<class T , class U >
bool boost::operator== (shared_ptr< T > const &a, shared_ptr< U > const &b)
 
template<class T , class U >
bool boost::operator!= (shared_ptr< T > const &a, shared_ptr< U > const &b)
 
template<class T , class U >
bool boost::operator< (shared_ptr< T > const &a, shared_ptr< U > const &b)
 
template<class T >
void boost::swap (shared_ptr< T > &a, shared_ptr< T > &b)
 
template<class T , class U >
shared_ptr< Tboost::static_pointer_cast (shared_ptr< U > const &r)
 
template<class T , class U >
shared_ptr< Tboost::const_pointer_cast (shared_ptr< U > const &r)
 
template<class T , class U >
shared_ptr< Tboost::dynamic_pointer_cast (shared_ptr< U > const &r)
 
template<class T , class U >
shared_ptr< Tboost::shared_static_cast (shared_ptr< U > const &r)
 
template<class T , class U >
shared_ptr< Tboost::shared_dynamic_cast (shared_ptr< U > const &r)
 
template<class T , class U >
shared_ptr< Tboost::shared_polymorphic_cast (shared_ptr< U > const &r)
 
template<class T , class U >
shared_ptr< Tboost::shared_polymorphic_downcast (shared_ptr< U > const &r)
 
template<class T >
Tboost::get_pointer (shared_ptr< T > const &p)
 
template<class E , class T , class Y >
std::basic_ostream< E, T > & boost::operator<< (std::basic_ostream< E, T > &os, shared_ptr< Y > const &p)
 
template<class D , class T >
Dboost::get_deleter (shared_ptr< T > const &p)
 
template<class T >
bool boost::atomic_is_lock_free (shared_ptr< T > const *)
 
template<class T >
shared_ptr< Tboost::atomic_load (shared_ptr< T > const *p)
 
template<class T >
shared_ptr< Tboost::atomic_load_explicit (shared_ptr< T > const *p, memory_order)
 
template<class T >
void boost::atomic_store (shared_ptr< T > *p, shared_ptr< T > r)
 
template<class T >
void boost::atomic_store_explicit (shared_ptr< T > *p, shared_ptr< T > r, memory_order)
 
template<class T >
shared_ptr< Tboost::atomic_exchange (shared_ptr< T > *p, shared_ptr< T > r)
 
template<class T >
shared_ptr< Tboost::atomic_exchange_explicit (shared_ptr< T > *p, shared_ptr< T > r, memory_order)
 
template<class T >
bool boost::atomic_compare_exchange (shared_ptr< T > *p, shared_ptr< T > *v, shared_ptr< T > w)
 
template<class T >
bool boost::atomic_compare_exchange_explicit (shared_ptr< T > *p, shared_ptr< T > *v, shared_ptr< T > w, memory_order, memory_order)
 
template<class T >
std::size_t boost::hash_value (boost::shared_ptr< T > const &p)