1 /*** Autogenerated by WIDL 1.6 from include/icodecapi.idl - Do not edit ***/ 2 3 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 4 #define __REQUIRED_RPCNDR_H_VERSION__ 475 5 #endif 6 7 #include <rpc.h> 8 #include <rpcndr.h> 9 10 #ifndef COM_NO_WINDOWS_H 11 #include <windows.h> 12 #include <ole2.h> 13 #endif 14 15 #ifndef __icodecapi_h__ 16 #define __icodecapi_h__ 17 18 /* Forward declarations */ 19 20 #ifndef __ICodecAPI_FWD_DEFINED__ 21 #define __ICodecAPI_FWD_DEFINED__ 22 typedef interface ICodecAPI ICodecAPI; 23 #endif 24 25 /* Headers for imported files */ 26 27 #include <unknwn.h> 28 #include <oaidl.h> 29 30 #ifdef __cplusplus 31 extern "C" { 32 #endif 33 34 /** 35 * This file is part of the mingw-w64 runtime package. 36 * No warranty is given; refer to the file DISCLAIMER within this package. 37 */ 38 39 #include <winapifamily.h> 40 41 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) 42 43 struct CodecAPIEventData { 44 GUID guid; 45 DWORD dataLength; 46 DWORD reserved[3]; 47 }; 48 49 50 #ifndef __IStream_FWD_DEFINED__ 51 #define __IStream_FWD_DEFINED__ 52 typedef interface IStream IStream; 53 #endif 54 55 56 /***************************************************************************** 57 * ICodecAPI interface 58 */ 59 #ifndef __ICodecAPI_INTERFACE_DEFINED__ 60 #define __ICodecAPI_INTERFACE_DEFINED__ 61 62 DEFINE_GUID(IID_ICodecAPI, 0x901db4c7, 0x31ce, 0x41a2, 0x85,0xdc, 0x8f,0xa0,0xbf,0x41,0xb8,0xda); 63 #if defined(__cplusplus) && !defined(CINTERFACE) 64 MIDL_INTERFACE("901db4c7-31ce-41a2-85dc-8fa0bf41b8da") 65 ICodecAPI : public IUnknown 66 { 67 virtual HRESULT STDMETHODCALLTYPE IsSupported( 68 const GUID *Api) = 0; 69 70 virtual HRESULT STDMETHODCALLTYPE IsModifiable( 71 const GUID *Api) = 0; 72 73 virtual HRESULT STDMETHODCALLTYPE GetParameterRange( 74 const GUID *Api, 75 VARIANT *ValueMin, 76 VARIANT *ValueMax, 77 VARIANT *SteppingDelta) = 0; 78 79 virtual HRESULT STDMETHODCALLTYPE GetParameterValues( 80 const GUID *Api, 81 VARIANT **Values, 82 ULONG *ValuesCount) = 0; 83 84 virtual HRESULT STDMETHODCALLTYPE GetDefaultValue( 85 const GUID *Api, 86 VARIANT *Value) = 0; 87 88 virtual HRESULT STDMETHODCALLTYPE GetValue( 89 const GUID *Api, 90 VARIANT *Value) = 0; 91 92 virtual HRESULT STDMETHODCALLTYPE SetValue( 93 const GUID *Api, 94 VARIANT *Value) = 0; 95 96 virtual HRESULT STDMETHODCALLTYPE RegisterForEvent( 97 const GUID *Api, 98 LONG_PTR userData) = 0; 99 100 virtual HRESULT STDMETHODCALLTYPE UnregisterForEvent( 101 const GUID *Api) = 0; 102 103 virtual HRESULT STDMETHODCALLTYPE SetAllDefaults( 104 ) = 0; 105 106 virtual HRESULT STDMETHODCALLTYPE SetValueWithNotify( 107 const GUID *Api, 108 VARIANT *Value, 109 GUID **ChangedParam, 110 ULONG *ChangedParamCount) = 0; 111 112 virtual HRESULT STDMETHODCALLTYPE SetAllDefaultsWithNotify( 113 GUID **ChangedParam, 114 ULONG *ChangedParamCount) = 0; 115 116 virtual HRESULT STDMETHODCALLTYPE GetAllSettings( 117 IStream *a) = 0; 118 119 virtual HRESULT STDMETHODCALLTYPE SetAllSettings( 120 IStream *a) = 0; 121 122 virtual HRESULT STDMETHODCALLTYPE SetAllSettingsWithNotify( 123 IStream *a, 124 GUID **ChangedParam, 125 ULONG *ChangedParamCount) = 0; 126 127 }; 128 #ifdef __CRT_UUID_DECL 129 __CRT_UUID_DECL(ICodecAPI, 0x901db4c7, 0x31ce, 0x41a2, 0x85,0xdc, 0x8f,0xa0,0xbf,0x41,0xb8,0xda) 130 #endif 131 #else 132 typedef struct ICodecAPIVtbl { 133 BEGIN_INTERFACE 134 135 /*** IUnknown methods ***/ 136 HRESULT (STDMETHODCALLTYPE *QueryInterface)( 137 ICodecAPI* This, 138 REFIID riid, 139 void **ppvObject); 140 141 ULONG (STDMETHODCALLTYPE *AddRef)( 142 ICodecAPI* This); 143 144 ULONG (STDMETHODCALLTYPE *Release)( 145 ICodecAPI* This); 146 147 /*** ICodecAPI methods ***/ 148 HRESULT (STDMETHODCALLTYPE *IsSupported)( 149 ICodecAPI* This, 150 const GUID *Api); 151 152 HRESULT (STDMETHODCALLTYPE *IsModifiable)( 153 ICodecAPI* This, 154 const GUID *Api); 155 156 HRESULT (STDMETHODCALLTYPE *GetParameterRange)( 157 ICodecAPI* This, 158 const GUID *Api, 159 VARIANT *ValueMin, 160 VARIANT *ValueMax, 161 VARIANT *SteppingDelta); 162 163 HRESULT (STDMETHODCALLTYPE *GetParameterValues)( 164 ICodecAPI* This, 165 const GUID *Api, 166 VARIANT **Values, 167 ULONG *ValuesCount); 168 169 HRESULT (STDMETHODCALLTYPE *GetDefaultValue)( 170 ICodecAPI* This, 171 const GUID *Api, 172 VARIANT *Value); 173 174 HRESULT (STDMETHODCALLTYPE *GetValue)( 175 ICodecAPI* This, 176 const GUID *Api, 177 VARIANT *Value); 178 179 HRESULT (STDMETHODCALLTYPE *SetValue)( 180 ICodecAPI* This, 181 const GUID *Api, 182 VARIANT *Value); 183 184 HRESULT (STDMETHODCALLTYPE *RegisterForEvent)( 185 ICodecAPI* This, 186 const GUID *Api, 187 LONG_PTR userData); 188 189 HRESULT (STDMETHODCALLTYPE *UnregisterForEvent)( 190 ICodecAPI* This, 191 const GUID *Api); 192 193 HRESULT (STDMETHODCALLTYPE *SetAllDefaults)( 194 ICodecAPI* This); 195 196 HRESULT (STDMETHODCALLTYPE *SetValueWithNotify)( 197 ICodecAPI* This, 198 const GUID *Api, 199 VARIANT *Value, 200 GUID **ChangedParam, 201 ULONG *ChangedParamCount); 202 203 HRESULT (STDMETHODCALLTYPE *SetAllDefaultsWithNotify)( 204 ICodecAPI* This, 205 GUID **ChangedParam, 206 ULONG *ChangedParamCount); 207 208 HRESULT (STDMETHODCALLTYPE *GetAllSettings)( 209 ICodecAPI* This, 210 IStream *a); 211 212 HRESULT (STDMETHODCALLTYPE *SetAllSettings)( 213 ICodecAPI* This, 214 IStream *a); 215 216 HRESULT (STDMETHODCALLTYPE *SetAllSettingsWithNotify)( 217 ICodecAPI* This, 218 IStream *a, 219 GUID **ChangedParam, 220 ULONG *ChangedParamCount); 221 222 END_INTERFACE 223 } ICodecAPIVtbl; 224 interface ICodecAPI { 225 CONST_VTBL ICodecAPIVtbl* lpVtbl; 226 }; 227 228 #ifdef COBJMACROS 229 #ifndef WIDL_C_INLINE_WRAPPERS 230 /*** IUnknown methods ***/ 231 #define ICodecAPI_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 232 #define ICodecAPI_AddRef(This) (This)->lpVtbl->AddRef(This) 233 #define ICodecAPI_Release(This) (This)->lpVtbl->Release(This) 234 /*** ICodecAPI methods ***/ 235 #define ICodecAPI_IsSupported(This,Api) (This)->lpVtbl->IsSupported(This,Api) 236 #define ICodecAPI_IsModifiable(This,Api) (This)->lpVtbl->IsModifiable(This,Api) 237 #define ICodecAPI_GetParameterRange(This,Api,ValueMin,ValueMax,SteppingDelta) (This)->lpVtbl->GetParameterRange(This,Api,ValueMin,ValueMax,SteppingDelta) 238 #define ICodecAPI_GetParameterValues(This,Api,Values,ValuesCount) (This)->lpVtbl->GetParameterValues(This,Api,Values,ValuesCount) 239 #define ICodecAPI_GetDefaultValue(This,Api,Value) (This)->lpVtbl->GetDefaultValue(This,Api,Value) 240 #define ICodecAPI_GetValue(This,Api,Value) (This)->lpVtbl->GetValue(This,Api,Value) 241 #define ICodecAPI_SetValue(This,Api,Value) (This)->lpVtbl->SetValue(This,Api,Value) 242 #define ICodecAPI_RegisterForEvent(This,Api,userData) (This)->lpVtbl->RegisterForEvent(This,Api,userData) 243 #define ICodecAPI_UnregisterForEvent(This,Api) (This)->lpVtbl->UnregisterForEvent(This,Api) 244 #define ICodecAPI_SetAllDefaults(This) (This)->lpVtbl->SetAllDefaults(This) 245 #define ICodecAPI_SetValueWithNotify(This,Api,Value,ChangedParam,ChangedParamCount) (This)->lpVtbl->SetValueWithNotify(This,Api,Value,ChangedParam,ChangedParamCount) 246 #define ICodecAPI_SetAllDefaultsWithNotify(This,ChangedParam,ChangedParamCount) (This)->lpVtbl->SetAllDefaultsWithNotify(This,ChangedParam,ChangedParamCount) 247 #define ICodecAPI_GetAllSettings(This,a) (This)->lpVtbl->GetAllSettings(This,a) 248 #define ICodecAPI_SetAllSettings(This,a) (This)->lpVtbl->SetAllSettings(This,a) 249 #define ICodecAPI_SetAllSettingsWithNotify(This,a,ChangedParam,ChangedParamCount) (This)->lpVtbl->SetAllSettingsWithNotify(This,a,ChangedParam,ChangedParamCount) 250 #else 251 /*** IUnknown methods ***/ 252 static FORCEINLINE HRESULT ICodecAPI_QueryInterface(ICodecAPI* This,REFIID riid,void **ppvObject) { 253 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 254 } 255 static FORCEINLINE ULONG ICodecAPI_AddRef(ICodecAPI* This) { 256 return This->lpVtbl->AddRef(This); 257 } 258 static FORCEINLINE ULONG ICodecAPI_Release(ICodecAPI* This) { 259 return This->lpVtbl->Release(This); 260 } 261 /*** ICodecAPI methods ***/ 262 static FORCEINLINE HRESULT ICodecAPI_IsSupported(ICodecAPI* This,const GUID *Api) { 263 return This->lpVtbl->IsSupported(This,Api); 264 } 265 static FORCEINLINE HRESULT ICodecAPI_IsModifiable(ICodecAPI* This,const GUID *Api) { 266 return This->lpVtbl->IsModifiable(This,Api); 267 } 268 static FORCEINLINE HRESULT ICodecAPI_GetParameterRange(ICodecAPI* This,const GUID *Api,VARIANT *ValueMin,VARIANT *ValueMax,VARIANT *SteppingDelta) { 269 return This->lpVtbl->GetParameterRange(This,Api,ValueMin,ValueMax,SteppingDelta); 270 } 271 static FORCEINLINE HRESULT ICodecAPI_GetParameterValues(ICodecAPI* This,const GUID *Api,VARIANT **Values,ULONG *ValuesCount) { 272 return This->lpVtbl->GetParameterValues(This,Api,Values,ValuesCount); 273 } 274 static FORCEINLINE HRESULT ICodecAPI_GetDefaultValue(ICodecAPI* This,const GUID *Api,VARIANT *Value) { 275 return This->lpVtbl->GetDefaultValue(This,Api,Value); 276 } 277 static FORCEINLINE HRESULT ICodecAPI_GetValue(ICodecAPI* This,const GUID *Api,VARIANT *Value) { 278 return This->lpVtbl->GetValue(This,Api,Value); 279 } 280 static FORCEINLINE HRESULT ICodecAPI_SetValue(ICodecAPI* This,const GUID *Api,VARIANT *Value) { 281 return This->lpVtbl->SetValue(This,Api,Value); 282 } 283 static FORCEINLINE HRESULT ICodecAPI_RegisterForEvent(ICodecAPI* This,const GUID *Api,LONG_PTR userData) { 284 return This->lpVtbl->RegisterForEvent(This,Api,userData); 285 } 286 static FORCEINLINE HRESULT ICodecAPI_UnregisterForEvent(ICodecAPI* This,const GUID *Api) { 287 return This->lpVtbl->UnregisterForEvent(This,Api); 288 } 289 static FORCEINLINE HRESULT ICodecAPI_SetAllDefaults(ICodecAPI* This) { 290 return This->lpVtbl->SetAllDefaults(This); 291 } 292 static FORCEINLINE HRESULT ICodecAPI_SetValueWithNotify(ICodecAPI* This,const GUID *Api,VARIANT *Value,GUID **ChangedParam,ULONG *ChangedParamCount) { 293 return This->lpVtbl->SetValueWithNotify(This,Api,Value,ChangedParam,ChangedParamCount); 294 } 295 static FORCEINLINE HRESULT ICodecAPI_SetAllDefaultsWithNotify(ICodecAPI* This,GUID **ChangedParam,ULONG *ChangedParamCount) { 296 return This->lpVtbl->SetAllDefaultsWithNotify(This,ChangedParam,ChangedParamCount); 297 } 298 static FORCEINLINE HRESULT ICodecAPI_GetAllSettings(ICodecAPI* This,IStream *a) { 299 return This->lpVtbl->GetAllSettings(This,a); 300 } 301 static FORCEINLINE HRESULT ICodecAPI_SetAllSettings(ICodecAPI* This,IStream *a) { 302 return This->lpVtbl->SetAllSettings(This,a); 303 } 304 static FORCEINLINE HRESULT ICodecAPI_SetAllSettingsWithNotify(ICodecAPI* This,IStream *a,GUID **ChangedParam,ULONG *ChangedParamCount) { 305 return This->lpVtbl->SetAllSettingsWithNotify(This,a,ChangedParam,ChangedParamCount); 306 } 307 #endif 308 #endif 309 310 #endif 311 312 HRESULT STDMETHODCALLTYPE ICodecAPI_IsSupported_Proxy( 313 ICodecAPI* This, 314 const GUID *Api); 315 void __RPC_STUB ICodecAPI_IsSupported_Stub( 316 IRpcStubBuffer* This, 317 IRpcChannelBuffer* pRpcChannelBuffer, 318 PRPC_MESSAGE pRpcMessage, 319 DWORD* pdwStubPhase); 320 HRESULT STDMETHODCALLTYPE ICodecAPI_IsModifiable_Proxy( 321 ICodecAPI* This, 322 const GUID *Api); 323 void __RPC_STUB ICodecAPI_IsModifiable_Stub( 324 IRpcStubBuffer* This, 325 IRpcChannelBuffer* pRpcChannelBuffer, 326 PRPC_MESSAGE pRpcMessage, 327 DWORD* pdwStubPhase); 328 HRESULT STDMETHODCALLTYPE ICodecAPI_GetParameterRange_Proxy( 329 ICodecAPI* This, 330 const GUID *Api, 331 VARIANT *ValueMin, 332 VARIANT *ValueMax, 333 VARIANT *SteppingDelta); 334 void __RPC_STUB ICodecAPI_GetParameterRange_Stub( 335 IRpcStubBuffer* This, 336 IRpcChannelBuffer* pRpcChannelBuffer, 337 PRPC_MESSAGE pRpcMessage, 338 DWORD* pdwStubPhase); 339 HRESULT STDMETHODCALLTYPE ICodecAPI_GetParameterValues_Proxy( 340 ICodecAPI* This, 341 const GUID *Api, 342 VARIANT **Values, 343 ULONG *ValuesCount); 344 void __RPC_STUB ICodecAPI_GetParameterValues_Stub( 345 IRpcStubBuffer* This, 346 IRpcChannelBuffer* pRpcChannelBuffer, 347 PRPC_MESSAGE pRpcMessage, 348 DWORD* pdwStubPhase); 349 HRESULT STDMETHODCALLTYPE ICodecAPI_GetDefaultValue_Proxy( 350 ICodecAPI* This, 351 const GUID *Api, 352 VARIANT *Value); 353 void __RPC_STUB ICodecAPI_GetDefaultValue_Stub( 354 IRpcStubBuffer* This, 355 IRpcChannelBuffer* pRpcChannelBuffer, 356 PRPC_MESSAGE pRpcMessage, 357 DWORD* pdwStubPhase); 358 HRESULT STDMETHODCALLTYPE ICodecAPI_GetValue_Proxy( 359 ICodecAPI* This, 360 const GUID *Api, 361 VARIANT *Value); 362 void __RPC_STUB ICodecAPI_GetValue_Stub( 363 IRpcStubBuffer* This, 364 IRpcChannelBuffer* pRpcChannelBuffer, 365 PRPC_MESSAGE pRpcMessage, 366 DWORD* pdwStubPhase); 367 HRESULT STDMETHODCALLTYPE ICodecAPI_SetValue_Proxy( 368 ICodecAPI* This, 369 const GUID *Api, 370 VARIANT *Value); 371 void __RPC_STUB ICodecAPI_SetValue_Stub( 372 IRpcStubBuffer* This, 373 IRpcChannelBuffer* pRpcChannelBuffer, 374 PRPC_MESSAGE pRpcMessage, 375 DWORD* pdwStubPhase); 376 HRESULT STDMETHODCALLTYPE ICodecAPI_RegisterForEvent_Proxy( 377 ICodecAPI* This, 378 const GUID *Api, 379 LONG_PTR userData); 380 void __RPC_STUB ICodecAPI_RegisterForEvent_Stub( 381 IRpcStubBuffer* This, 382 IRpcChannelBuffer* pRpcChannelBuffer, 383 PRPC_MESSAGE pRpcMessage, 384 DWORD* pdwStubPhase); 385 HRESULT STDMETHODCALLTYPE ICodecAPI_UnregisterForEvent_Proxy( 386 ICodecAPI* This, 387 const GUID *Api); 388 void __RPC_STUB ICodecAPI_UnregisterForEvent_Stub( 389 IRpcStubBuffer* This, 390 IRpcChannelBuffer* pRpcChannelBuffer, 391 PRPC_MESSAGE pRpcMessage, 392 DWORD* pdwStubPhase); 393 HRESULT STDMETHODCALLTYPE ICodecAPI_SetAllDefaults_Proxy( 394 ICodecAPI* This); 395 void __RPC_STUB ICodecAPI_SetAllDefaults_Stub( 396 IRpcStubBuffer* This, 397 IRpcChannelBuffer* pRpcChannelBuffer, 398 PRPC_MESSAGE pRpcMessage, 399 DWORD* pdwStubPhase); 400 HRESULT STDMETHODCALLTYPE ICodecAPI_SetValueWithNotify_Proxy( 401 ICodecAPI* This, 402 const GUID *Api, 403 VARIANT *Value, 404 GUID **ChangedParam, 405 ULONG *ChangedParamCount); 406 void __RPC_STUB ICodecAPI_SetValueWithNotify_Stub( 407 IRpcStubBuffer* This, 408 IRpcChannelBuffer* pRpcChannelBuffer, 409 PRPC_MESSAGE pRpcMessage, 410 DWORD* pdwStubPhase); 411 HRESULT STDMETHODCALLTYPE ICodecAPI_SetAllDefaultsWithNotify_Proxy( 412 ICodecAPI* This, 413 GUID **ChangedParam, 414 ULONG *ChangedParamCount); 415 void __RPC_STUB ICodecAPI_SetAllDefaultsWithNotify_Stub( 416 IRpcStubBuffer* This, 417 IRpcChannelBuffer* pRpcChannelBuffer, 418 PRPC_MESSAGE pRpcMessage, 419 DWORD* pdwStubPhase); 420 HRESULT STDMETHODCALLTYPE ICodecAPI_GetAllSettings_Proxy( 421 ICodecAPI* This, 422 IStream *a); 423 void __RPC_STUB ICodecAPI_GetAllSettings_Stub( 424 IRpcStubBuffer* This, 425 IRpcChannelBuffer* pRpcChannelBuffer, 426 PRPC_MESSAGE pRpcMessage, 427 DWORD* pdwStubPhase); 428 HRESULT STDMETHODCALLTYPE ICodecAPI_SetAllSettings_Proxy( 429 ICodecAPI* This, 430 IStream *a); 431 void __RPC_STUB ICodecAPI_SetAllSettings_Stub( 432 IRpcStubBuffer* This, 433 IRpcChannelBuffer* pRpcChannelBuffer, 434 PRPC_MESSAGE pRpcMessage, 435 DWORD* pdwStubPhase); 436 HRESULT STDMETHODCALLTYPE ICodecAPI_SetAllSettingsWithNotify_Proxy( 437 ICodecAPI* This, 438 IStream *a, 439 GUID **ChangedParam, 440 ULONG *ChangedParamCount); 441 void __RPC_STUB ICodecAPI_SetAllSettingsWithNotify_Stub( 442 IRpcStubBuffer* This, 443 IRpcChannelBuffer* pRpcChannelBuffer, 444 PRPC_MESSAGE pRpcMessage, 445 DWORD* pdwStubPhase); 446 447 #endif /* __ICodecAPI_INTERFACE_DEFINED__ */ 448 449 #endif 450 /* Begin additional prototypes for all interfaces */ 451 452 453 /* End additional prototypes */ 454 455 #ifdef __cplusplus 456 } 457 #endif 458 459 #endif /* __icodecapi_h__ */ 460