Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cComPtr< _TYPE > Class Template Reference

#include <cComPtr.h>

Inheritance diagram for GrayLib::cComPtr< _TYPE >:
Gray::cIUnkPtr< IUnknown > Gray::cPtrFacade< IUnknown >

Public Types

typedef _TYPE TYPE_t
 

Additional Inherited Members

- Public Member Functions inherited from Gray::cIUnkPtr< IUnknown >
 cIUnkPtr ()
 Construct and destruction. More...
 
 cIUnkPtr (const IUnknown *p2)
 
 cIUnkPtr (const THIS_t &ref)
 
 cIUnkPtr (THIS_t &&ref)
 
 ~cIUnkPtr ()
 
int get_RefCount () const
 
IUnknown ** get_PPtr ()
 
void ** get_PPtrV ()
 
IUnknownGetInterfacePtr () const
 
void put_Ptr (IUnknown *p2)
 
HRESULT SetQI (IUnknown *p2, const IID &riid)
 
int ReleasePtr ()
 
THIS_toperator= (const IUnknown *p2)
 Assignment ops. More...
 
THIS_toperator= (const THIS_t &p2)
 
IUnknownoperator* () const
 Accessor ops. More...
 
IUnknownoperator-> () const
 
- Public Member Functions inherited from Gray::cPtrFacade< IUnknown >
 cPtrFacade (IUnknown *p=nullptr) noexcept
 
 cPtrFacade (THIS_t &&ref) noexcept
 
bool isValidPtr () const noexcept
 
IUnknown ** get_PPtr ()
 
IUnknownget_Ptr () const noexcept
 
void put_Ptr (IUnknown *p) noexcept
 
void ReleasePtr () noexcept
 
void AttachPtr (IUnknown *p) noexcept
 
IUnknownDetachPtr () noexcept
 
THIS_toperator= (IUnknown *p) noexcept
 
THIS_toperator= (THIS_t &&ref) noexcept
 
 operator IUnknown * () const noexcept
 
IUnknownget_Ref () const
 
IUnknownoperator* () const
 
IUnknownoperator-> () const
 
bool operator! () const noexcept
 Comparison ops. More...
 
bool operator!= (IUnknown *p2) const noexcept
 
bool operator== (IUnknown *p2) const noexcept
 
- Protected Member Functions inherited from Gray::cIUnkPtr< IUnknown >
void SetFirstIUnk (IUnknown *p2)
 
- Protected Attributes inherited from Gray::cPtrFacade< IUnknown >
IUnknownm_p
 Pointer to some object of TYPE. More...
 

Detailed Description

template<class _TYPE = IUnknown>
class GrayLib::cComPtr< _TYPE >

re-implement the cComPtr included with ATL. "#include <atlcomcli.h>"

Member Typedef Documentation

◆ TYPE_t

template<class _TYPE = IUnknown>
typedef _TYPE GrayLib::cComPtr< _TYPE >::TYPE_t

The documentation for this class was generated from the following file: