#include <ptr.h>
Inheritance diagram for xplc_ptr< T >:
Public Member Functions | |
| 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. | |
Classes | |
| class | ProtectedPtr |
|
||||||||||
|
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 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. |
|
|||||||||
|
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. |
|
||||||||||
|
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. |
1.4.2