COM_ptr<T>: smart pointer to automatically de-reference COM objects. More...
#include <wave-windows.h>
Public Member Functions | |
COM_ptr (IN T *pT=NULL) throw () | |
template<class X > | |
COM_ptr (IN const COM_ptr< X > &from) throw () | |
~COM_ptr (void) throw () | |
T * | operator-> (void) throw () |
const T * | operator-> (void) const throw () |
operator T * (void) throw () | |
operator const T * (void) const throw () | |
operator bool (void) throw () | |
operator bool (void) const throw () | |
bool | operator! (void) const throw () |
operator LPVOID * (void) throw () | |
const COM_ptr< T > & | operator= (IN T *pT) throw () |
template<class X > | |
const COM_ptr< T > & | operator= (IN COM_ptr< X > &from) throw () |
COM_ptr<T>: smart pointer to automatically de-reference COM objects.
This object is NOT (automatically) threadsafe. We are calling IUnknown::AddRef()/Release() on an object, so this pointer is only as threadsafe as the underlying COM object. However, because the object maintains its own count, this pointer is safe to use in collections.
Semantics of this pointer:
Definition at line 119 of file wave-windows.h.
Definition at line 122 of file wave-windows.h.