Mobile API Reference  MicroStrategy 2019
ATL::CComQIPtr< T, piid > Class Template Reference

#include <Msi_atlbase.h>

Public Types

typedef T _PtrClass
 

Public Member Functions

 CComQIPtr ()
 
 CComQIPtr (T *lp)
 
 CComQIPtr (const CComQIPtr< T, piid > &lp)
 
 CComQIPtr (IUnknown *lp)
 
 ~CComQIPtr ()
 
void Release ()
 
 operator T* () const
 
T & operator* () const
 
T ** operator & ()
 
_NoAddRefReleaseOnCComPtr< T > * operator-> () const
 
T * operator= (T *lp)
 
T * operator= (const CComQIPtr< T, piid > &lp)
 
T * operator= (IUnknown *lp)
 
bool operator! () const
 
bool operator< (T *pT) const
 
bool operator== (T *pT) const
 
bool IsEqualObject (IUnknown *pOther)
 
void Attach (T *p2)
 
T * Detach ()
 
HRESULT CopyTo (T **ppT)
 
HRESULT SetSite (IUnknown *punkParent)
 
HRESULT Advise (IUnknown *pUnk, const IID &iid, LPDWORD pdw)
 
HRESULT CoCreateInstance (REFCLSID rclsid, LPUNKNOWN pUnkOuter=NULL, DWORD dwClsContext=CLSCTX_ALL)
 
HRESULT CoCreateInstance (LPCOLESTR szProgID, LPUNKNOWN pUnkOuter=NULL, DWORD dwClsContext=CLSCTX_ALL)
 
template<class Q >
HRESULT QueryInterface (Q **pp)
 

Public Attributes

T * p
 

Member Typedef Documentation

◆ _PtrClass

template<class T, const IID * piid>
typedef T ATL::CComQIPtr< T, piid >::_PtrClass

Constructor & Destructor Documentation

◆ CComQIPtr() [1/4]

template<class T, const IID * piid>
ATL::CComQIPtr< T, piid >::CComQIPtr ( )
inline

◆ CComQIPtr() [2/4]

template<class T, const IID * piid>
ATL::CComQIPtr< T, piid >::CComQIPtr ( T *  lp)
inline

◆ CComQIPtr() [3/4]

template<class T, const IID * piid>
ATL::CComQIPtr< T, piid >::CComQIPtr ( const CComQIPtr< T, piid > &  lp)
inline

◆ CComQIPtr() [4/4]

template<class T, const IID * piid>
ATL::CComQIPtr< T, piid >::CComQIPtr ( IUnknown lp)
inline

◆ ~CComQIPtr()

template<class T, const IID * piid>
ATL::CComQIPtr< T, piid >::~CComQIPtr ( )
inline

Member Function Documentation

◆ Advise()

template<class T, const IID * piid>
HRESULT ATL::CComQIPtr< T, piid >::Advise ( IUnknown pUnk,
const IID iid,
LPDWORD  pdw 
)
inline

◆ Attach()

template<class T, const IID * piid>
void ATL::CComQIPtr< T, piid >::Attach ( T *  p2)
inline

◆ CoCreateInstance() [1/2]

template<class T, const IID * piid>
HRESULT ATL::CComQIPtr< T, piid >::CoCreateInstance ( REFCLSID  rclsid,
LPUNKNOWN  pUnkOuter = NULL,
DWORD  dwClsContext = CLSCTX_ALL 
)
inline

◆ CoCreateInstance() [2/2]

template<class T, const IID * piid>
HRESULT ATL::CComQIPtr< T, piid >::CoCreateInstance ( LPCOLESTR  szProgID,
LPUNKNOWN  pUnkOuter = NULL,
DWORD  dwClsContext = CLSCTX_ALL 
)
inline

◆ CopyTo()

template<class T, const IID * piid>
HRESULT ATL::CComQIPtr< T, piid >::CopyTo ( T **  ppT)
inline

◆ Detach()

template<class T, const IID * piid>
T* ATL::CComQIPtr< T, piid >::Detach ( )
inline

◆ IsEqualObject()

template<class T, const IID * piid>
bool ATL::CComQIPtr< T, piid >::IsEqualObject ( IUnknown pOther)
inline

◆ operator &()

template<class T, const IID * piid>
T** ATL::CComQIPtr< T, piid >::operator& ( )
inline

◆ operator T*()

template<class T, const IID * piid>
ATL::CComQIPtr< T, piid >::operator T* ( ) const
inline

◆ operator!()

template<class T, const IID * piid>
bool ATL::CComQIPtr< T, piid >::operator! ( ) const
inline

◆ operator*()

template<class T, const IID * piid>
T& ATL::CComQIPtr< T, piid >::operator* ( ) const
inline

◆ operator->()

template<class T, const IID * piid>
_NoAddRefReleaseOnCComPtr<T>* ATL::CComQIPtr< T, piid >::operator-> ( ) const
inline

◆ operator<()

template<class T, const IID * piid>
bool ATL::CComQIPtr< T, piid >::operator< ( T *  pT) const
inline

◆ operator=() [1/3]

template<class T, const IID * piid>
T* ATL::CComQIPtr< T, piid >::operator= ( T *  lp)
inline

◆ operator=() [2/3]

template<class T, const IID * piid>
T* ATL::CComQIPtr< T, piid >::operator= ( const CComQIPtr< T, piid > &  lp)
inline

◆ operator=() [3/3]

template<class T, const IID * piid>
T* ATL::CComQIPtr< T, piid >::operator= ( IUnknown lp)
inline

◆ operator==()

template<class T, const IID * piid>
bool ATL::CComQIPtr< T, piid >::operator== ( T *  pT) const
inline

◆ QueryInterface()

template<class T, const IID * piid>
template<class Q >
HRESULT ATL::CComQIPtr< T, piid >::QueryInterface ( Q **  pp)
inline

◆ Release()

template<class T, const IID * piid>
void ATL::CComQIPtr< T, piid >::Release ( void  )
inline

◆ SetSite()

template<class T, const IID * piid>
HRESULT ATL::CComQIPtr< T, piid >::SetSite ( IUnknown punkParent)
inline

Member Data Documentation

◆ p

template<class T, const IID * piid>
T* ATL::CComQIPtr< T, piid >::p