#include <IFacePtr.hpp>
Inheritance diagram for Core::IFacePtr< T >:

Public Member Functions | |
| IFacePtr () | |
| Default constructor. | |
| IFacePtr (T *pInterface, bool bAddRef=false) | |
| Construction from an existing interface pointer. | |
| IFacePtr (const IFacePtr< T > &oPtr) | |
| Copy constructor. | |
| ~IFacePtr () | |
| Destructor. | |
| IFacePtr & | operator= (const IFacePtr< T > &oPtr) |
| Assignment operator. | |
| void | Release () |
| Release the interface. | |
| T * | Detach () |
| Take ownership of the interface. | |
Private Member Functions | |
| T ** | GetPtrMember () |
| Access the underlying pointer member. | |
Friends | |
| T ** | AttachTo (IFacePtr< T > &ptr) |
| Allow attachment via an output parameter. | |
This class can only be used to manage the lifetime of COM interfaces, to create COM objects use the ComPtr<T> class in the Windows C++ Library.
| Core::IFacePtr< T >::IFacePtr | ( | ) | [inline] |
Default constructor.
| Core::IFacePtr< T >::IFacePtr | ( | T * | pInterface, | |
| bool | bAddRef = false | |||
| ) | [inline, explicit] |
Construction from an existing interface pointer.
| Core::IFacePtr< T >::IFacePtr | ( | const IFacePtr< T > & | oPtr | ) | [inline] |
Copy constructor.
| Core::IFacePtr< T >::~IFacePtr | ( | ) | [inline] |
Destructor.
| IFacePtr< T > & Core::IFacePtr< T >::operator= | ( | const IFacePtr< T > & | oPtr | ) | [inline] |
Assignment operator.
| void Core::IFacePtr< T >::Release | ( | ) | [inline] |
Release the interface.
| T * Core::IFacePtr< T >::Detach | ( | ) | [inline] |
Take ownership of the interface.
| T ** Core::IFacePtr< T >::GetPtrMember | ( | ) | [inline, private] |
Access the underlying pointer member.
This is used by the AttachTo() friend function to access the underlying SmartPtr<T> member variable.
| T** AttachTo | ( | IFacePtr< T > & | ptr | ) | [friend] |
Allow attachment via an output parameter.
e.g. LoadTypeLib(..., AttachTo(p)).
1.5.2