9 #ifndef IMPKERNEL_WEAK_POINTER_H
10 #define IMPKERNEL_WEAK_POINTER_H
12 #include <IMP/kernel_config.h>
13 #include "internal/PointerBase.h"
15 IMPKERNEL_BEGIN_NAMESPACE
34 : IMP::internal::PointerBase<IMP::internal::WeakPointerTraits<O> > {
35 typedef IMP::internal::PointerBase<IMP::internal::WeakPointerTraits<O> > P;
50 #if(defined(BOOST_NO_CXX11_NULLPTR) || defined(BOOST_NO_NULLPTR)) && \
78 : IMP::internal::PointerBase<IMP::internal::CheckedWeakPointerTraits<O> > {
79 typedef IMP::internal::PointerBase<IMP::internal::CheckedWeakPointerTraits<O> > P;
85 WeakPointer<O>& operator=(
const IMP::internal::PointerBase<OT>& o) {
94 #if(defined(BOOST_NO_CXX11_NULLPTR) || defined(BOOST_NO_NULLPTR)) && \
107 #if !defined(IMP_DOXYGEN) && !defined(SWIG)
109 inline std::ostream& operator<<(std::ostream& out, UncheckedWeakPointer<T> o) {
114 inline std::ostream& operator<<(std::ostream& out, WeakPointer<T> o) {
115 out << Showable(o.get());
120 IMPKERNEL_END_NAMESPACE
Smart pointer to Object-derived classes that does not refcount.
A weak pointer to an Object or RefCountedObject.
Helper class to aid in output of IMP classes to streams.