ReactOS 0.4.15-dev-7934-g1dc8d80
ATL::CComObjectRootEx< ThreadModel > Class Template Reference

#include <atlcom.h>

Inheritance diagram for ATL::CComObjectRootEx< ThreadModel >:
Collaboration diagram for ATL::CComObjectRootEx< ThreadModel >:

Public Member Functions

 ~CComObjectRootEx ()
 
ULONG InternalAddRef ()
 
ULONG InternalRelease ()
 
void Lock ()
 
void Unlock ()
 
HRESULT _AtlInitialConstruct ()
 
- Public Member Functions inherited from ATL::CComObjectRootBase
 CComObjectRootBase ()
 
 ~CComObjectRootBase ()
 
void SetVoid (void *)
 
HRESULT _AtlFinalConstruct ()
 
HRESULT FinalConstruct ()
 
void InternalFinalConstructAddRef ()
 
void InternalFinalConstructRelease ()
 
void FinalRelease ()
 

Private Attributes

ThreadModel::AutoDeleteCriticalSection m_critsec
 

Additional Inherited Members

- Static Public Member Functions inherited from ATL::CComObjectRootBase
static void WINAPI ObjectMain (bool)
 
static const struct _ATL_CATMAP_ENTRYGetCategoryMap ()
 
static HRESULT WINAPI InternalQueryInterface (void *pThis, const _ATL_INTMAP_ENTRY *pEntries, REFIID iid, void **ppvObject)
 
- Public Attributes inherited from ATL::CComObjectRootBase
LONG m_dwRef
 

Detailed Description

template<class ThreadModel>
class ATL::CComObjectRootEx< ThreadModel >

Definition at line 99 of file atlcom.h.

Constructor & Destructor Documentation

◆ ~CComObjectRootEx()

template<class ThreadModel >
ATL::CComObjectRootEx< ThreadModel >::~CComObjectRootEx ( )
inline

Definition at line 104 of file atlcom.h.

105 {
106 }

Member Function Documentation

◆ _AtlInitialConstruct()

template<class ThreadModel >
HRESULT ATL::CComObjectRootEx< ThreadModel >::_AtlInitialConstruct ( )
inline

Definition at line 130 of file atlcom.h.

131 {
132 return m_critsec.Init();
133 }
ThreadModel::AutoDeleteCriticalSection m_critsec
Definition: atlcom.h:102

◆ InternalAddRef()

template<class ThreadModel >
ULONG ATL::CComObjectRootEx< ThreadModel >::InternalAddRef ( )
inline

Definition at line 108 of file atlcom.h.

109 {
110 ATLASSERT(m_dwRef >= 0);
111 return ThreadModel::Increment(&m_dwRef);
112 }
#define ATLASSERT(x)
Definition: CComVariant.cpp:10

◆ InternalRelease()

template<class ThreadModel >
ULONG ATL::CComObjectRootEx< ThreadModel >::InternalRelease ( )
inline

Definition at line 114 of file atlcom.h.

115 {
116 ATLASSERT(m_dwRef > 0);
117 return ThreadModel::Decrement(&m_dwRef);
118 }

◆ Lock()

template<class ThreadModel >
void ATL::CComObjectRootEx< ThreadModel >::Lock ( )
inline

Definition at line 120 of file atlcom.h.

121 {
122 m_critsec.Lock();
123 }

◆ Unlock()

template<class ThreadModel >
void ATL::CComObjectRootEx< ThreadModel >::Unlock ( )
inline

Definition at line 125 of file atlcom.h.

126 {
127 m_critsec.Unlock();
128 }

Member Data Documentation

◆ m_critsec

template<class ThreadModel >
ThreadModel::AutoDeleteCriticalSection ATL::CComObjectRootEx< ThreadModel >::m_critsec
private

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