• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1cpp_quote("/**")
2cpp_quote(" * This file is part of the mingw-w64 runtime package.")
3cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
4cpp_quote(" */")
5cpp_quote("")
6cpp_quote("#include <winapifamily.h>")
7cpp_quote("")
8cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
9
10import "unknwn.idl";
11import "oaidl.idl";
12
13cpp_quote("")
14struct CodecAPIEventData {
15  GUID guid;
16  DWORD dataLength;
17  DWORD reserved[3];
18};
19
20cpp_quote("")
21interface IStream;
22
23cpp_quote("")
24[object, local, uuid (901db4c7-31ce-41a2-85dc-8fa0bf41b8da), pointer_default (unique)]
25interface ICodecAPI : IUnknown {
26  HRESULT IsSupported ([in] const GUID *Api);
27  HRESULT IsModifiable ([in] const GUID *Api);
28  HRESULT GetParameterRange ([in] const GUID *Api,[out] VARIANT *ValueMin,[out] VARIANT *ValueMax,[out] VARIANT *SteppingDelta);
29  HRESULT GetParameterValues ([in] const GUID *Api,[out, size_is (,*ValuesCount)] VARIANT **Values,[out] ULONG *ValuesCount);
30  HRESULT GetDefaultValue ([in] const GUID *Api,[out] VARIANT *Value);
31  HRESULT GetValue ([in] const GUID *Api,[out] VARIANT *Value);
32  HRESULT SetValue ([in] const GUID *Api,[in] VARIANT *Value);
33  HRESULT RegisterForEvent ([in] const GUID *Api,[in] LONG_PTR userData);
34  HRESULT UnregisterForEvent ([in] const GUID *Api);
35  HRESULT SetAllDefaults (void);
36  HRESULT SetValueWithNotify ([in] const GUID *Api,[in] VARIANT *Value,[out, size_is (,*ChangedParamCount)] GUID **ChangedParam,[out] ULONG *ChangedParamCount);
37  HRESULT SetAllDefaultsWithNotify ([out, size_is (,*ChangedParamCount)] GUID **ChangedParam,[out] ULONG *ChangedParamCount);
38  HRESULT GetAllSettings ([in] IStream *);
39  HRESULT SetAllSettings ([in] IStream *);
40  HRESULT SetAllSettingsWithNotify (IStream *,[out, size_is (,*ChangedParamCount)] GUID **ChangedParam,[out] ULONG *ChangedParamCount);
41}
42cpp_quote("#endif")
43