ReactOS  0.4.15-dev-4857-g47842d7
CUnknownImpl< Interfaces > Class Template Reference

#include <private.hpp>

Inheritance diagram for CUnknownImpl< Interfaces >:
Collaboration diagram for CUnknownImpl< Interfaces >:

Public Member Functions

 STDMETHODIMP_ (ULONG) AddRef()
 
 STDMETHODIMP_ (ULONG) Release()
 

Protected Member Functions

 CUnknownImpl ()
 
virtual ~CUnknownImpl ()
 

Private Attributes

volatile LONG m_Ref
 

Detailed Description

template<typename... Interfaces>
class CUnknownImpl< Interfaces >

Definition at line 443 of file private.hpp.

Constructor & Destructor Documentation

◆ CUnknownImpl()

template<typename... Interfaces>
CUnknownImpl< Interfaces >::CUnknownImpl ( )
inlineprotected

Definition at line 448 of file private.hpp.

448  :
449  m_Ref(0)
450  {
451  }
volatile LONG m_Ref
Definition: private.hpp:446

◆ ~CUnknownImpl()

template<typename... Interfaces>
virtual CUnknownImpl< Interfaces >::~CUnknownImpl ( )
inlineprotectedvirtual

Definition at line 452 of file private.hpp.

453  {
454  }

Member Function Documentation

◆ STDMETHODIMP_() [1/2]

template<typename... Interfaces>
CUnknownImpl< Interfaces >::STDMETHODIMP_ ( ULONG  )
inline

Definition at line 456 of file private.hpp.

457  {
459  ASSERT(Ref < 0x10000);
460  return Ref;
461  }
#define ASSERT(a)
Definition: mode.c:44
#define InterlockedIncrement
Definition: armddk.h:53
unsigned int ULONG
Definition: retypes.h:1
volatile LONG m_Ref
Definition: private.hpp:446

◆ STDMETHODIMP_() [2/2]

template<typename... Interfaces>
CUnknownImpl< Interfaces >::STDMETHODIMP_ ( ULONG  )
inline

Definition at line 462 of file private.hpp.

463  {
465  ASSERT(Ref < 0x10000);
466  if (!Ref)
467  {
468  delete this;
469  return 0;
470  }
471  return Ref;
472  }
#define ASSERT(a)
Definition: mode.c:44
#define InterlockedDecrement
Definition: armddk.h:52
unsigned int ULONG
Definition: retypes.h:1
volatile LONG m_Ref
Definition: private.hpp:446

Member Data Documentation

◆ m_Ref

template<typename... Interfaces>
volatile LONG CUnknownImpl< Interfaces >::m_Ref
private

Definition at line 446 of file private.hpp.

Referenced by CUnknownImpl< IPortWaveRTStreamInit >::STDMETHODIMP_().


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