A simple COM smart pointer. More...
#include <juce_win32_ComSmartPtr.h>


Public Member Functions | |
| ComSmartPtr () noexcept | |
| ComSmartPtr (ComClass *obj) | |
| ComSmartPtr (const ComSmartPtr &other) | |
| ~ComSmartPtr () | |
| HRESULT | CoCreateInstance (REFCLSID classUUID, DWORD dwClsContext=CLSCTX_INPROC_SERVER) |
| template<class OtherComClass > | |
| ComSmartPtr< OtherComClass > | getInterface () const |
| operator ComClass * () const noexcept | |
| ComClass & | operator* () const noexcept |
| ComClass * | operator-> () const noexcept |
| ComSmartPtr & | operator= (ComClass *const newP) |
| ComSmartPtr & | operator= (const ComSmartPtr &newP) |
| template<class OtherComClass > | |
| HRESULT | QueryInterface (ComSmartPtr< OtherComClass > &destObject) const |
| template<class OtherComClass > | |
| HRESULT | QueryInterface (REFCLSID classUUID, ComSmartPtr< OtherComClass > &destObject) const |
| ComClass ** | resetAndGetPointerAddress () |
Private Member Functions | |
| ComClass ** | operator& () noexcept |
| void | release () |
Private Attributes | |
| ComClass * | p = nullptr |
A simple COM smart pointer.
@tags{Core}
|
inlinenoexcept |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
|
privatenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
Referenced by juce::ComSmartPtr< juce::UIATextProvider >::operator=().
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
private |
Referenced by juce::ComSmartPtr< juce::UIATextProvider >::ComSmartPtr(), juce::ComSmartPtr< juce::UIATextProvider >::operator juce::UIATextProvider *(), juce::ComSmartPtr< juce::UIATextProvider >::operator*(), juce::ComSmartPtr< juce::UIATextProvider >::operator->(), juce::ComSmartPtr< juce::UIATextProvider >::operator=(), juce::ComSmartPtr< juce::UIATextProvider >::QueryInterface(), juce::ComSmartPtr< juce::UIATextProvider >::release(), and juce::ComSmartPtr< juce::UIATextProvider >::resetAndGetPointerAddress().