Home | Info | Community | Development | myReactOS | Contact Us
[inline]
Implements IConnectionPointContainer.
Definition at line 1093 of file atlcom.h.
{ IID interfaceID; const _ATL_CONNMAP_ENTRY *entryPtr; handlerFunctionType handlerFunction; IConnectionPoint *connectionPoint; HRESULT hResult; if (ppCP == NULL) return E_POINTER; *ppCP = NULL; hResult = CONNECT_E_NOCONNECTION; entryPtr = T::GetConnMap(NULL); while (entryPtr->dwOffset != static_cast<DWORD_PTR>(-1)) { if (entryPtr->dwOffset == static_cast<DWORD_PTR>(-2)) { entryPtr++; handlerFunction = reinterpret_cast<handlerFunctionType>(entryPtr->dwOffset); entryPtr = handlerFunction(NULL); } else { connectionPoint = reinterpret_cast<IConnectionPoint *>(reinterpret_cast<char *>(this) + entryPtr->dwOffset); if (SUCCEEDED(connectionPoint->GetConnectionInterface(&interfaceID)) && InlineIsEqualGUID(riid, interfaceID)) { *ppCP = connectionPoint; connectionPoint->AddRef(); hResult = S_OK; break; } entryPtr++; } } return hResult; }