Public Methods | |
xplc_ptr (T *aObj) | |
Construct an xplc_ptr from a raw pointer. | |
template<class P> | xplc_ptr (const xplc_ptr< P > &aObj) |
Construct an xplc_ptr from another xplc_ptr. | |
ProtectedPtr * | operator-> () const |
Provide an operator->. | |
operator ProtectedPtr * () const | |
Provide an operator *. | |
xplc_ptr & | operator= (T *_ptr) |
Assign a raw pointer to an xplc_ptr. |
|
Construct an xplc_ptr from a raw pointer. This is the only way that an xplc_ptr will take ownership of an interface from its previous owner. |
|
Construct an xplc_ptr from another xplc_ptr. This will addRef the interface, if the xplc_ptr is non-NULL. |
|
Provide an operator *. This is so you can use "*foo" with an xplc_ptr like you could with the raw pointer. It also applies some basic protection. |
|
Provide an operator->. This allows you to invoke methods on the interface pointed at by the xplc_ptr. As with a raw pointer, if the xplc_ptr is NULL, this will cause a crash. The interface is wrapped in some basic protection, to avoid accidental addRef or release. |
|
Assign a raw pointer to an xplc_ptr. This will addRef the interface, and release the interface previously pointed at by the xplc_ptr, if any. |