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

#include <cIUnkAgg.h>

Public Member Functions

 cIUnkAggBase (TYPE *pIAggOuter)
 
virtual ~cIUnkAggBase ()
 
HRESULT QueryInterface (const IID &riid, void **ppv)
 
ULONG AddRef (void)
 
ULONG Release (void)
 

Protected Attributes

TYPEm_pIAggOuter
 the outer object interface. More...
 

Detailed Description

template<class TYPE = IUnknown>
class Gray::cIUnkAggBase< TYPE >

Abstract Base for an aggregated interface class. This is the base for a class that is a static or member. has no ref count of its own. This makes interfaces look like multiple inheritance when it really is not. (why not just use multiple inheritance ?)

Constructor & Destructor Documentation

◆ cIUnkAggBase()

template<class TYPE = IUnknown>
Gray::cIUnkAggBase< TYPE >::cIUnkAggBase ( TYPE pIAggOuter)
inline

◆ ~cIUnkAggBase()

template<class TYPE = IUnknown>
virtual Gray::cIUnkAggBase< TYPE >::~cIUnkAggBase ( )
inlinevirtual

Member Function Documentation

◆ AddRef()

template<class TYPE = IUnknown>
ULONG Gray::cIUnkAggBase< TYPE >::AddRef ( void  )
inline

◆ QueryInterface()

template<class TYPE = IUnknown>
HRESULT Gray::cIUnkAggBase< TYPE >::QueryInterface ( const IID riid,
void **  ppv 
)
inline

◆ Release()

template<class TYPE = IUnknown>
ULONG Gray::cIUnkAggBase< TYPE >::Release ( void  )
inline

Member Data Documentation

◆ m_pIAggOuter

template<class TYPE = IUnknown>
TYPE* Gray::cIUnkAggBase< TYPE >::m_pIAggOuter
protected

the outer object interface.


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