16 #ifndef polybori_CWeakPtrFacade_h_
17 #define polybori_CWeakPtrFacade_h_
21 #include <boost/shared_ptr.hpp>
27 template <
class ValueType>
35 template <
class ValueType>
49 m_data(new data_type(static_cast<data_type>(this))) {}
53 m_data(new data_type(static_cast<data_type>(this))) {}
#define END_NAMESPACE_PBORI
Finish project's namespace.
Definition: pbori_defs.h:77
#define BEGIN_NAMESPACE_PBORI
Start project's namespace.
Definition: pbori_defs.h:74
~CWeakPtrFacade()
Destructor (invalidates pointer to here)
Definition: CWeakPtrFacade.h:56
ptr_type m_data
Definition: CWeakPtrFacade.h:59
CWeakPtrFacade(const self &rhs)
Copy constructor (constructs new facade)
Definition: CWeakPtrFacade.h:52
ValueType value_type
Definition: CWeakPtrFacade.h:41
This class defines CWeakPtrFacade.
Definition: CWeakPtrFacade.h:36
Forward declaration of friend.
Definition: CWeakPtr.h:31
boost::shared_ptr< data_type > ptr_type
Definition: CWeakPtrFacade.h:43
CWeakPtrFacade()
Default constructor (only data is the pointer to here)
Definition: CWeakPtrFacade.h:48
value_type * data_type
Definition: CWeakPtrFacade.h:42