9 #ifndef IMPKERNEL_WEAK_POINTER_H
10 #define IMPKERNEL_WEAK_POINTER_H
11 #include <IMP/kernel_config.h>
12 #include "internal/PointerBase.h"
14 IMPKERNEL_BEGIN_NAMESPACE
33 : IMP::internal::PointerBase<IMP::internal::WeakPointerTraits<O> > {
34 typedef IMP::internal::PointerBase<IMP::internal::WeakPointerTraits<O> > P;
49 #if(defined(BOOST_NO_CXX11_NULLPTR) || defined(BOOST_NO_NULLPTR)) && \
77 : IMP::internal::PointerBase<IMP::internal::CheckedWeakPointerTraits<O> > {
78 typedef IMP::internal::PointerBase<IMP::internal::CheckedWeakPointerTraits<O> > P;
84 WeakPointer<O>& operator=(
const IMP::internal::PointerBase<OT>& o) {
93 #if(defined(BOOST_NO_CXX11_NULLPTR) || defined(BOOST_NO_NULLPTR)) && \
106 #if !defined(IMP_DOXYGEN) && !defined(SWIG)
108 inline std::ostream& operator<<(std::ostream& out, UncheckedWeakPointer<T> o) {
113 inline std::ostream& operator<<(std::ostream& out, WeakPointer<T> o) {
114 out << Showable(o.get());
119 IMPKERNEL_END_NAMESPACE
Smart pointer to Object-derived classes that does not refcount.
A weak pointer to an Object or RefCountedObject.