ReactOS  0.4.12-dev-18-gf469aca
anonymous_namespace{mstscax.cpp}::CConnectionPoint Class Reference
Inheritance diagram for anonymous_namespace{mstscax.cpp}::CConnectionPoint:
Collaboration diagram for anonymous_namespace{mstscax.cpp}::CConnectionPoint:

Public Member Functions

 CConnectionPoint (IConnectionPoint *pIConnectionPoint)
 
 ~CConnectionPoint ()
 
virtual HRESULT STDMETHODCALLTYPE QueryInterface (REFIID riid, void **ppvObject)
 
virtual ULONG STDMETHODCALLTYPE AddRef (void)
 
virtual ULONG STDMETHODCALLTYPE Release (void)
 
virtual HRESULT STDMETHODCALLTYPE GetConnectionInterface (IID *pIID)
 
virtual HRESULT STDMETHODCALLTYPE GetConnectionPointContainer (IConnectionPointContainer **ppCPC)
 
virtual HRESULT STDMETHODCALLTYPE Advise (IUnknown *pUnkSink, DWORD *pdwCookie)
 
virtual HRESULT STDMETHODCALLTYPE Unadvise (DWORD dwCookie)
 
virtual HRESULT STDMETHODCALLTYPE EnumConnections (IEnumConnections **ppEnum)
 

Private Attributes

LONG m_refCount
 
IConnectionPointm_IConnectionPoint
 

Additional Inherited Members

- Public Types inherited from IConnectionPoint
typedef IConnectionPointPCONNECTIONPOINT
 
typedef IConnectionPointLPCONNECTIONPOINT
 
- Public Types inherited from IUnknown
typedef IUnknownLPUNKNOWN
 

Detailed Description

Definition at line 448 of file mstscax.cpp.

Constructor & Destructor Documentation

◆ CConnectionPoint()

anonymous_namespace{mstscax.cpp}::CConnectionPoint::CConnectionPoint ( IConnectionPoint pIConnectionPoint)
inline

Definition at line 455 of file mstscax.cpp.

455  :
456  m_refCount(1),
457  m_IConnectionPoint(pIConnectionPoint)
458  { }

◆ ~CConnectionPoint()

anonymous_namespace{mstscax.cpp}::CConnectionPoint::~CConnectionPoint ( )
inline

Definition at line 460 of file mstscax.cpp.

Member Function Documentation

◆ AddRef()

virtual ULONG STDMETHODCALLTYPE anonymous_namespace{mstscax.cpp}::CConnectionPoint::AddRef ( void  )
inlinevirtual

Implements IUnknown.

Definition at line 480 of file mstscax.cpp.

481  {
483  }
#define InterlockedIncrement
Definition: armddk.h:53

◆ Advise()

virtual HRESULT STDMETHODCALLTYPE anonymous_namespace{mstscax.cpp}::CConnectionPoint::Advise ( IUnknown pUnkSink,
DWORD pdwCookie 
)
inlinevirtual

Implements IConnectionPoint.

Definition at line 515 of file mstscax.cpp.

516  {
517  dbgprintf(TEXT("CConnectionPoint::Advise(%p, %p)"), pUnkSink, pdwCookie);
518  HRESULT hr = m_IConnectionPoint->Advise(pUnkSink, pdwCookie);
519  dbgprintf(TEXT("CConnectionPoint::Advise -> %08X, dwCookie = %lu"), hr, *pdwCookie);
520  // TODO: hook sink
521  return hr;
522  }
HRESULT Advise([in] IUnknown *pUnkSink, [out] DWORD *pdwCookie)
LONG HRESULT
Definition: typedefs.h:77
#define TEXT(s)
Definition: k32.h:26
void dbgprintf(LPCTSTR fmt,...)
Definition: mstscax.cpp:42

◆ EnumConnections()

virtual HRESULT STDMETHODCALLTYPE anonymous_namespace{mstscax.cpp}::CConnectionPoint::EnumConnections ( IEnumConnections **  ppEnum)
inlinevirtual

Implements IConnectionPoint.

Definition at line 532 of file mstscax.cpp.

533  {
534  dbgprintf(TEXT("CConnectionPoint::EnumConnections(%p)"), ppEnum);
536  dbgprintf(TEXT("CConnectionPoint::EnumConnections -> %08X, pEnum = %p"), hr, *ppEnum);
537 
538  if(SUCCEEDED(hr))
539  *ppEnum = HookIEnumConnections(*ppEnum);
540 
541  return hr;
542  }
HRESULT EnumConnections([out] IEnumConnections **ppEnum)
IEnumConnections * HookIEnumConnections(IEnumConnections *p)
Definition: mstscax.cpp:644
LONG HRESULT
Definition: typedefs.h:77
#define TEXT(s)
Definition: k32.h:26
void dbgprintf(LPCTSTR fmt,...)
Definition: mstscax.cpp:42
#define SUCCEEDED(hr)
Definition: intsafe.h:57

◆ GetConnectionInterface()

virtual HRESULT STDMETHODCALLTYPE anonymous_namespace{mstscax.cpp}::CConnectionPoint::GetConnectionInterface ( IID pIID)
inlinevirtual

Implements IConnectionPoint.

Definition at line 495 of file mstscax.cpp.

496  {
497  dbgprintf(TEXT("CConnectionPoint::GetConnectionInterface(%p)"), pIID);
499  dbgprintf(TEXT("CConnectionPoint::GetConnectionInterface -> %08X, IID = %ls"), hr, UUIDToString(*pIID).c_str());
500  return hr;
501  }
HRESULT GetConnectionInterface([out] IID *pIID)
std::wstring UUIDToString(const UUID &uuid)
Definition: mstscax.cpp:110
LONG HRESULT
Definition: typedefs.h:77
#define TEXT(s)
Definition: k32.h:26
void dbgprintf(LPCTSTR fmt,...)
Definition: mstscax.cpp:42

◆ GetConnectionPointContainer()

virtual HRESULT STDMETHODCALLTYPE anonymous_namespace{mstscax.cpp}::CConnectionPoint::GetConnectionPointContainer ( IConnectionPointContainer **  ppCPC)
inlinevirtual

Implements IConnectionPoint.

Definition at line 503 of file mstscax.cpp.

504  {
505  dbgprintf(TEXT("CConnectionPoint::GetConnectionPointContainer(%p)"), ppCPC);
507  dbgprintf(TEXT("CConnectionPoint::GetConnectionPointContainer -> %08X, pCPC = %p"), hr, *ppCPC);
508 
509  if(SUCCEEDED(hr))
510  *ppCPC = HookIConnectionPointContainer(*ppCPC);
511 
512  return hr;
513  }
HRESULT GetConnectionPointContainer([out] IConnectionPointContainer **ppCPC)
IConnectionPointContainer * HookIConnectionPointContainer(IConnectionPointContainer *p)
Definition: mstscax.cpp:629
LONG HRESULT
Definition: typedefs.h:77
#define TEXT(s)
Definition: k32.h:26
void dbgprintf(LPCTSTR fmt,...)
Definition: mstscax.cpp:42
#define SUCCEEDED(hr)
Definition: intsafe.h:57

◆ QueryInterface()

virtual HRESULT STDMETHODCALLTYPE anonymous_namespace{mstscax.cpp}::CConnectionPoint::QueryInterface ( REFIID  riid,
void **  ppvObject 
)
inlinevirtual

Implements IUnknown.

Definition at line 462 of file mstscax.cpp.

463  {
464  HRESULT hr = S_OK;
465 
466  dbgprintf(TEXT("CConnectionPoint::QueryInterface(%ls, %p)"), UUIDToString(riid).c_str(), ppvObject);
467 
469  *ppvObject = this;
470  else
471  {
472  *ppvObject = NULL;
473  hr = E_NOINTERFACE;
474  }
475 
476  dbgprintf(TEXT("CConnectionPoint::QueryInterface -> %08X, ppvObject = %p"), hr, *ppvObject);
477  return hr;
478  }
#define E_NOINTERFACE
Definition: winerror.h:2364
REFIID riid
Definition: precomp.h:44
smooth NULL
Definition: ftsmooth.c:416
std::wstring UUIDToString(const UUID &uuid)
Definition: mstscax.cpp:110
LONG HRESULT
Definition: typedefs.h:77
const GUID IID_IUnknown
const GUID IID_IConnectionPoint
#define S_OK
Definition: intsafe.h:59
#define TEXT(s)
Definition: k32.h:26
void dbgprintf(LPCTSTR fmt,...)
Definition: mstscax.cpp:42

◆ Release()

virtual ULONG STDMETHODCALLTYPE anonymous_namespace{mstscax.cpp}::CConnectionPoint::Release ( void  )
inlinevirtual

Implements IUnknown.

Definition at line 485 of file mstscax.cpp.

486  {
488 
489  if(n == 0)
490  delete this;
491 
492  return n;
493  }
GLuint n
Definition: s_context.h:57
long LONG
Definition: pedump.c:60
#define InterlockedDecrement
Definition: armddk.h:52

◆ Unadvise()

virtual HRESULT STDMETHODCALLTYPE anonymous_namespace{mstscax.cpp}::CConnectionPoint::Unadvise ( DWORD  dwCookie)
inlinevirtual

Implements IConnectionPoint.

Definition at line 524 of file mstscax.cpp.

525  {
526  dbgprintf(TEXT("CConnectionPoint::Unadvise(%lu)"), dwCookie);
527  HRESULT hr = m_IConnectionPoint->Unadvise(dwCookie);
528  dbgprintf(TEXT("CConnectionPoint::Unadvise -> %08X"), hr);
529  return hr;
530  }
LONG HRESULT
Definition: typedefs.h:77
#define TEXT(s)
Definition: k32.h:26
HRESULT Unadvise([in] DWORD dwCookie)
void dbgprintf(LPCTSTR fmt,...)
Definition: mstscax.cpp:42

Member Data Documentation

◆ m_IConnectionPoint

IConnectionPoint* anonymous_namespace{mstscax.cpp}::CConnectionPoint::m_IConnectionPoint
private

Definition at line 452 of file mstscax.cpp.

◆ m_refCount

LONG anonymous_namespace{mstscax.cpp}::CConnectionPoint::m_refCount
private

Definition at line 451 of file mstscax.cpp.


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