ReactOS 0.4.15-dev-7788-g1ad9096
dispatch.c File Reference
#include "dshow.h"
#include "wine/unicode.h"
#include "wine/strmbase.h"
#include "uuids.h"
#include "vfwmsgs.h"
#include <assert.h>
Include dependency graph for dispatch.c:

Go to the source code of this file.

Macros

#define COBJMACROS
 

Functions

HRESULT WINAPI BaseDispatch_Init (BaseDispatch *This, REFIID riid)
 
HRESULT WINAPI BaseDispatch_Destroy (BaseDispatch *This)
 
HRESULT WINAPI BaseDispatchImpl_GetIDsOfNames (BaseDispatch *This, REFIID riid, OLECHAR **rgszNames, UINT cNames, LCID lcid, DISPID *rgdispid)
 
HRESULT WINAPI BaseDispatchImpl_GetTypeInfo (BaseDispatch *This, REFIID riid, UINT itinfo, LCID lcid, ITypeInfo **pptinfo)
 
HRESULT WINAPI BaseDispatchImpl_GetTypeInfoCount (BaseDispatch *This, UINT *pctinfo)
 

Macro Definition Documentation

◆ COBJMACROS

#define COBJMACROS

Definition at line 21 of file dispatch.c.

Function Documentation

◆ BaseDispatch_Destroy()

HRESULT WINAPI BaseDispatch_Destroy ( BaseDispatch This)

Definition at line 45 of file dispatch.c.

46{
47 if (This->pTypeInfo)
48 ITypeInfo_Release(This->pTypeInfo);
49 return S_OK;
50}
#define S_OK
Definition: intsafe.h:52

Referenced by BaseControlVideo_Destroy(), BaseControlWindow_Destroy(), BasicAudio_Destroy(), and SeekInner_Release().

◆ BaseDispatch_Init()

HRESULT WINAPI BaseDispatch_Init ( BaseDispatch This,
REFIID  riid 
)

Definition at line 30 of file dispatch.c.

31{
32 ITypeLib *pTypeLib;
33 HRESULT hr;
34
35 This->pTypeInfo = NULL;
36 hr = LoadRegTypeLib(&LIBID_QuartzTypeLib, 1, 0, LOCALE_SYSTEM_DEFAULT, &pTypeLib);
37 if (SUCCEEDED(hr))
38 {
39 hr = ITypeLib_GetTypeInfoOfGuid(pTypeLib, riid, &This->pTypeInfo);
40 ITypeLib_Release(pTypeLib);
41 }
42 return hr;
43}
#define NULL
Definition: types.h:112
HRESULT WINAPI LoadRegTypeLib(REFGUID rguid, WORD wVerMajor, WORD wVerMinor, LCID lcid, ITypeLib **ppTLib)
Definition: typelib.c:531
REFIID riid
Definition: atlbase.h:39
#define SUCCEEDED(hr)
Definition: intsafe.h:50
#define LOCALE_SYSTEM_DEFAULT
HRESULT hr
Definition: shlfolder.c:183

Referenced by BaseControlVideo_Init(), BaseControlWindow_Init(), BasicAudio_Init(), and PosPassThru_Construct().

◆ BaseDispatchImpl_GetIDsOfNames()

HRESULT WINAPI BaseDispatchImpl_GetIDsOfNames ( BaseDispatch This,
REFIID  riid,
OLECHAR **  rgszNames,
UINT  cNames,
LCID  lcid,
DISPID rgdispid 
)

Definition at line 52 of file dispatch.c.

53{
54 if (This->pTypeInfo)
55 return ITypeInfo_GetIDsOfNames(This->pTypeInfo, rgszNames, cNames, rgdispid);
56 return E_NOTIMPL;
57}
#define E_NOTIMPL
Definition: ddrawi.h:99

Referenced by BaseControlVideoImpl_GetIDsOfNames(), BaseControlWindowImpl_GetIDsOfNames(), BasicAudioImpl_GetIDsOfNames(), and MediaPositionPassThru_GetIDsOfNames().

◆ BaseDispatchImpl_GetTypeInfo()

HRESULT WINAPI BaseDispatchImpl_GetTypeInfo ( BaseDispatch This,
REFIID  riid,
UINT  itinfo,
LCID  lcid,
ITypeInfo **  pptinfo 
)

Definition at line 59 of file dispatch.c.

60{
61 if (This->pTypeInfo)
62 {
63 ITypeInfo_AddRef(This->pTypeInfo);
64 *pptinfo = This->pTypeInfo;
65 return S_OK;
66 }
67 return E_NOTIMPL;
68}

Referenced by BaseControlVideoImpl_GetTypeInfo(), BaseControlVideoImpl_Invoke(), BaseControlWindowImpl_GetTypeInfo(), BaseControlWindowImpl_Invoke(), BasicAudioImpl_GetTypeInfo(), BasicAudioImpl_Invoke(), MediaPositionPassThru_GetTypeInfo(), and MediaPositionPassThru_Invoke().

◆ BaseDispatchImpl_GetTypeInfoCount()

HRESULT WINAPI BaseDispatchImpl_GetTypeInfoCount ( BaseDispatch This,
UINT pctinfo 
)

Definition at line 70 of file dispatch.c.

71{
72 if (This->pTypeInfo)
73 *pctinfo = 1;
74 else
75 *pctinfo = 0;
76 return S_OK;
77}

Referenced by BaseControlVideoImpl_GetTypeInfoCount(), BaseControlWindowImpl_GetTypeInfoCount(), BasicAudioImpl_GetTypeInfoCount(), and MediaPositionPassThru_GetTypeInfoCount().