1 2 3 /* this ALWAYS GENERATED file contains the definitions for the interfaces */ 4 5 6 /* File created by MIDL compiler version 7.00.0499 */ 7 /* Compiler settings for endpointvolume.idl: 8 Oicf, W1, Zp8, env=Win32 (32b run) 9 protocol : dce , ms_ext, c_ext, robust 10 error checks: allocation ref bounds_check enum stub_data 11 VC __declspec() decoration level: 12 __declspec(uuid()), __declspec(selectany), __declspec(novtable) 13 DECLSPEC_UUID(), MIDL_INTERFACE() 14 */ 15 //@@MIDL_FILE_HEADING( ) 16 17 #pragma warning( disable: 4049 ) /* more than 64k source lines */ 18 19 20 /* verify that the <rpcndr.h> version is high enough to compile this file*/ 21 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 22 #define __REQUIRED_RPCNDR_H_VERSION__ 500 23 #endif 24 25 /* verify that the <rpcsal.h> version is high enough to compile this file*/ 26 #ifndef __REQUIRED_RPCSAL_H_VERSION__ 27 #define __REQUIRED_RPCSAL_H_VERSION__ 100 28 #endif 29 30 #include "rpc.h" 31 #include "rpcndr.h" 32 33 #ifndef __RPCNDR_H_VERSION__ 34 #error this stub requires an updated version of <rpcndr.h> 35 #endif // __RPCNDR_H_VERSION__ 36 37 #ifndef COM_NO_WINDOWS_H 38 #include "windows.h" 39 #include "ole2.h" 40 #endif /*COM_NO_WINDOWS_H*/ 41 42 #ifndef __endpointvolume_h__ 43 #define __endpointvolume_h__ 44 45 #if defined(_MSC_VER) && (_MSC_VER >= 1020) 46 #pragma once 47 #endif 48 49 /* Forward Declarations */ 50 51 #ifndef __IAudioEndpointVolumeCallback_FWD_DEFINED__ 52 #define __IAudioEndpointVolumeCallback_FWD_DEFINED__ 53 typedef interface IAudioEndpointVolumeCallback IAudioEndpointVolumeCallback; 54 #endif /* __IAudioEndpointVolumeCallback_FWD_DEFINED__ */ 55 56 57 #ifndef __IAudioEndpointVolume_FWD_DEFINED__ 58 #define __IAudioEndpointVolume_FWD_DEFINED__ 59 typedef interface IAudioEndpointVolume IAudioEndpointVolume; 60 #endif /* __IAudioEndpointVolume_FWD_DEFINED__ */ 61 62 63 #ifndef __IAudioMeterInformation_FWD_DEFINED__ 64 #define __IAudioMeterInformation_FWD_DEFINED__ 65 typedef interface IAudioMeterInformation IAudioMeterInformation; 66 #endif /* __IAudioMeterInformation_FWD_DEFINED__ */ 67 68 69 /* header files for imported files */ 70 #include "unknwn.h" 71 #include "devicetopology.h" 72 73 #ifdef __cplusplus 74 extern "C"{ 75 #endif 76 77 78 /* interface __MIDL_itf_endpointvolume_0000_0000 */ 79 /* [local] */ 80 81 typedef struct AUDIO_VOLUME_NOTIFICATION_DATA 82 { 83 GUID guidEventContext; 84 BOOL bMuted; 85 float fMasterVolume; 86 UINT nChannels; 87 float afChannelVolumes[ 1 ]; 88 } AUDIO_VOLUME_NOTIFICATION_DATA; 89 90 typedef struct AUDIO_VOLUME_NOTIFICATION_DATA *PAUDIO_VOLUME_NOTIFICATION_DATA; 91 92 #define ENDPOINT_HARDWARE_SUPPORT_VOLUME 0x00000001 93 #define ENDPOINT_HARDWARE_SUPPORT_MUTE 0x00000002 94 #define ENDPOINT_HARDWARE_SUPPORT_METER 0x00000004 95 96 97 extern RPC_IF_HANDLE __MIDL_itf_endpointvolume_0000_0000_v0_0_c_ifspec; 98 extern RPC_IF_HANDLE __MIDL_itf_endpointvolume_0000_0000_v0_0_s_ifspec; 99 100 #ifndef __IAudioEndpointVolumeCallback_INTERFACE_DEFINED__ 101 #define __IAudioEndpointVolumeCallback_INTERFACE_DEFINED__ 102 103 /* interface IAudioEndpointVolumeCallback */ 104 /* [unique][helpstring][nonextensible][uuid][local][object] */ 105 106 107 EXTERN_C const IID IID_IAudioEndpointVolumeCallback; 108 109 #if defined(__cplusplus) && !defined(CINTERFACE) 110 111 MIDL_INTERFACE("657804FA-D6AD-4496-8A60-352752AF4F89") 112 IAudioEndpointVolumeCallback : public IUnknown 113 { 114 public: 115 virtual HRESULT STDMETHODCALLTYPE OnNotify( 116 PAUDIO_VOLUME_NOTIFICATION_DATA pNotify) = 0; 117 118 }; 119 120 #else /* C style interface */ 121 122 typedef struct IAudioEndpointVolumeCallbackVtbl 123 { 124 BEGIN_INTERFACE 125 126 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 127 IAudioEndpointVolumeCallback * This, 128 /* [in] */ REFIID riid, 129 /* [iid_is][out] */ 130 __RPC__deref_out void **ppvObject); 131 132 ULONG ( STDMETHODCALLTYPE *AddRef )( 133 IAudioEndpointVolumeCallback * This); 134 135 ULONG ( STDMETHODCALLTYPE *Release )( 136 IAudioEndpointVolumeCallback * This); 137 138 HRESULT ( STDMETHODCALLTYPE *OnNotify )( 139 IAudioEndpointVolumeCallback * This, 140 PAUDIO_VOLUME_NOTIFICATION_DATA pNotify); 141 142 END_INTERFACE 143 } IAudioEndpointVolumeCallbackVtbl; 144 145 interface IAudioEndpointVolumeCallback 146 { 147 CONST_VTBL struct IAudioEndpointVolumeCallbackVtbl *lpVtbl; 148 }; 149 150 151 152 #ifdef COBJMACROS 153 154 155 #define IAudioEndpointVolumeCallback_QueryInterface(This,riid,ppvObject) \ 156 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 157 158 #define IAudioEndpointVolumeCallback_AddRef(This) \ 159 ( (This)->lpVtbl -> AddRef(This) ) 160 161 #define IAudioEndpointVolumeCallback_Release(This) \ 162 ( (This)->lpVtbl -> Release(This) ) 163 164 165 #define IAudioEndpointVolumeCallback_OnNotify(This,pNotify) \ 166 ( (This)->lpVtbl -> OnNotify(This,pNotify) ) 167 168 #endif /* COBJMACROS */ 169 170 171 #endif /* C style interface */ 172 173 174 175 176 #endif /* __IAudioEndpointVolumeCallback_INTERFACE_DEFINED__ */ 177 178 179 #ifndef __IAudioEndpointVolume_INTERFACE_DEFINED__ 180 #define __IAudioEndpointVolume_INTERFACE_DEFINED__ 181 182 /* interface IAudioEndpointVolume */ 183 /* [unique][helpstring][nonextensible][uuid][local][object] */ 184 185 186 EXTERN_C const IID IID_IAudioEndpointVolume; 187 188 #if defined(__cplusplus) && !defined(CINTERFACE) 189 190 MIDL_INTERFACE("5CDF2C82-841E-4546-9722-0CF74078229A") 191 IAudioEndpointVolume : public IUnknown 192 { 193 public: 194 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RegisterControlChangeNotify( 195 /* [in] */ 196 __in IAudioEndpointVolumeCallback *pNotify) = 0; 197 198 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE UnregisterControlChangeNotify( 199 /* [in] */ 200 __in IAudioEndpointVolumeCallback *pNotify) = 0; 201 202 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetChannelCount( 203 /* [out] */ 204 __out UINT *pnChannelCount) = 0; 205 206 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetMasterVolumeLevel( 207 /* [in] */ 208 __in float fLevelDB, 209 /* [unique][in] */ LPCGUID pguidEventContext) = 0; 210 211 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetMasterVolumeLevelScalar( 212 /* [in] */ 213 __in float fLevel, 214 /* [unique][in] */ LPCGUID pguidEventContext) = 0; 215 216 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetMasterVolumeLevel( 217 /* [out] */ 218 __out float *pfLevelDB) = 0; 219 220 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetMasterVolumeLevelScalar( 221 /* [out] */ 222 __out float *pfLevel) = 0; 223 224 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetChannelVolumeLevel( 225 /* [in] */ 226 __in UINT nChannel, 227 float fLevelDB, 228 /* [unique][in] */ LPCGUID pguidEventContext) = 0; 229 230 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetChannelVolumeLevelScalar( 231 /* [in] */ 232 __in UINT nChannel, 233 float fLevel, 234 /* [unique][in] */ LPCGUID pguidEventContext) = 0; 235 236 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetChannelVolumeLevel( 237 /* [in] */ 238 __in UINT nChannel, 239 /* [out] */ 240 __out float *pfLevelDB) = 0; 241 242 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetChannelVolumeLevelScalar( 243 /* [in] */ 244 __in UINT nChannel, 245 /* [out] */ 246 __out float *pfLevel) = 0; 247 248 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetMute( 249 /* [in] */ 250 __in BOOL bMute, 251 /* [unique][in] */ LPCGUID pguidEventContext) = 0; 252 253 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetMute( 254 /* [out] */ 255 __out BOOL *pbMute) = 0; 256 257 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetVolumeStepInfo( 258 /* [out] */ 259 __out UINT *pnStep, 260 /* [out] */ 261 __out UINT *pnStepCount) = 0; 262 263 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE VolumeStepUp( 264 /* [unique][in] */ LPCGUID pguidEventContext) = 0; 265 266 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE VolumeStepDown( 267 /* [unique][in] */ LPCGUID pguidEventContext) = 0; 268 269 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE QueryHardwareSupport( 270 /* [out] */ 271 __out DWORD *pdwHardwareSupportMask) = 0; 272 273 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetVolumeRange( 274 /* [out] */ 275 __out float *pflVolumeMindB, 276 /* [out] */ 277 __out float *pflVolumeMaxdB, 278 /* [out] */ 279 __out float *pflVolumeIncrementdB) = 0; 280 281 }; 282 283 #else /* C style interface */ 284 285 typedef struct IAudioEndpointVolumeVtbl 286 { 287 BEGIN_INTERFACE 288 289 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 290 IAudioEndpointVolume * This, 291 /* [in] */ REFIID riid, 292 /* [iid_is][out] */ 293 __RPC__deref_out void **ppvObject); 294 295 ULONG ( STDMETHODCALLTYPE *AddRef )( 296 IAudioEndpointVolume * This); 297 298 ULONG ( STDMETHODCALLTYPE *Release )( 299 IAudioEndpointVolume * This); 300 301 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RegisterControlChangeNotify )( 302 IAudioEndpointVolume * This, 303 /* [in] */ 304 __in IAudioEndpointVolumeCallback *pNotify); 305 306 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *UnregisterControlChangeNotify )( 307 IAudioEndpointVolume * This, 308 /* [in] */ 309 __in IAudioEndpointVolumeCallback *pNotify); 310 311 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetChannelCount )( 312 IAudioEndpointVolume * This, 313 /* [out] */ 314 __out UINT *pnChannelCount); 315 316 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetMasterVolumeLevel )( 317 IAudioEndpointVolume * This, 318 /* [in] */ 319 __in float fLevelDB, 320 /* [unique][in] */ LPCGUID pguidEventContext); 321 322 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetMasterVolumeLevelScalar )( 323 IAudioEndpointVolume * This, 324 /* [in] */ 325 __in float fLevel, 326 /* [unique][in] */ LPCGUID pguidEventContext); 327 328 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetMasterVolumeLevel )( 329 IAudioEndpointVolume * This, 330 /* [out] */ 331 __out float *pfLevelDB); 332 333 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetMasterVolumeLevelScalar )( 334 IAudioEndpointVolume * This, 335 /* [out] */ 336 __out float *pfLevel); 337 338 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetChannelVolumeLevel )( 339 IAudioEndpointVolume * This, 340 /* [in] */ 341 __in UINT nChannel, 342 float fLevelDB, 343 /* [unique][in] */ LPCGUID pguidEventContext); 344 345 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetChannelVolumeLevelScalar )( 346 IAudioEndpointVolume * This, 347 /* [in] */ 348 __in UINT nChannel, 349 float fLevel, 350 /* [unique][in] */ LPCGUID pguidEventContext); 351 352 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetChannelVolumeLevel )( 353 IAudioEndpointVolume * This, 354 /* [in] */ 355 __in UINT nChannel, 356 /* [out] */ 357 __out float *pfLevelDB); 358 359 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetChannelVolumeLevelScalar )( 360 IAudioEndpointVolume * This, 361 /* [in] */ 362 __in UINT nChannel, 363 /* [out] */ 364 __out float *pfLevel); 365 366 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetMute )( 367 IAudioEndpointVolume * This, 368 /* [in] */ 369 __in BOOL bMute, 370 /* [unique][in] */ LPCGUID pguidEventContext); 371 372 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetMute )( 373 IAudioEndpointVolume * This, 374 /* [out] */ 375 __out BOOL *pbMute); 376 377 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetVolumeStepInfo )( 378 IAudioEndpointVolume * This, 379 /* [out] */ 380 __out UINT *pnStep, 381 /* [out] */ 382 __out UINT *pnStepCount); 383 384 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *VolumeStepUp )( 385 IAudioEndpointVolume * This, 386 /* [unique][in] */ LPCGUID pguidEventContext); 387 388 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *VolumeStepDown )( 389 IAudioEndpointVolume * This, 390 /* [unique][in] */ LPCGUID pguidEventContext); 391 392 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *QueryHardwareSupport )( 393 IAudioEndpointVolume * This, 394 /* [out] */ 395 __out DWORD *pdwHardwareSupportMask); 396 397 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetVolumeRange )( 398 IAudioEndpointVolume * This, 399 /* [out] */ 400 __out float *pflVolumeMindB, 401 /* [out] */ 402 __out float *pflVolumeMaxdB, 403 /* [out] */ 404 __out float *pflVolumeIncrementdB); 405 406 END_INTERFACE 407 } IAudioEndpointVolumeVtbl; 408 409 interface IAudioEndpointVolume 410 { 411 CONST_VTBL struct IAudioEndpointVolumeVtbl *lpVtbl; 412 }; 413 414 415 416 #ifdef COBJMACROS 417 418 419 #define IAudioEndpointVolume_QueryInterface(This,riid,ppvObject) \ 420 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 421 422 #define IAudioEndpointVolume_AddRef(This) \ 423 ( (This)->lpVtbl -> AddRef(This) ) 424 425 #define IAudioEndpointVolume_Release(This) \ 426 ( (This)->lpVtbl -> Release(This) ) 427 428 429 #define IAudioEndpointVolume_RegisterControlChangeNotify(This,pNotify) \ 430 ( (This)->lpVtbl -> RegisterControlChangeNotify(This,pNotify) ) 431 432 #define IAudioEndpointVolume_UnregisterControlChangeNotify(This,pNotify) \ 433 ( (This)->lpVtbl -> UnregisterControlChangeNotify(This,pNotify) ) 434 435 #define IAudioEndpointVolume_GetChannelCount(This,pnChannelCount) \ 436 ( (This)->lpVtbl -> GetChannelCount(This,pnChannelCount) ) 437 438 #define IAudioEndpointVolume_SetMasterVolumeLevel(This,fLevelDB,pguidEventContext) \ 439 ( (This)->lpVtbl -> SetMasterVolumeLevel(This,fLevelDB,pguidEventContext) ) 440 441 #define IAudioEndpointVolume_SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext) \ 442 ( (This)->lpVtbl -> SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext) ) 443 444 #define IAudioEndpointVolume_GetMasterVolumeLevel(This,pfLevelDB) \ 445 ( (This)->lpVtbl -> GetMasterVolumeLevel(This,pfLevelDB) ) 446 447 #define IAudioEndpointVolume_GetMasterVolumeLevelScalar(This,pfLevel) \ 448 ( (This)->lpVtbl -> GetMasterVolumeLevelScalar(This,pfLevel) ) 449 450 #define IAudioEndpointVolume_SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext) \ 451 ( (This)->lpVtbl -> SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext) ) 452 453 #define IAudioEndpointVolume_SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext) \ 454 ( (This)->lpVtbl -> SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext) ) 455 456 #define IAudioEndpointVolume_GetChannelVolumeLevel(This,nChannel,pfLevelDB) \ 457 ( (This)->lpVtbl -> GetChannelVolumeLevel(This,nChannel,pfLevelDB) ) 458 459 #define IAudioEndpointVolume_GetChannelVolumeLevelScalar(This,nChannel,pfLevel) \ 460 ( (This)->lpVtbl -> GetChannelVolumeLevelScalar(This,nChannel,pfLevel) ) 461 462 #define IAudioEndpointVolume_SetMute(This,bMute,pguidEventContext) \ 463 ( (This)->lpVtbl -> SetMute(This,bMute,pguidEventContext) ) 464 465 #define IAudioEndpointVolume_GetMute(This,pbMute) \ 466 ( (This)->lpVtbl -> GetMute(This,pbMute) ) 467 468 #define IAudioEndpointVolume_GetVolumeStepInfo(This,pnStep,pnStepCount) \ 469 ( (This)->lpVtbl -> GetVolumeStepInfo(This,pnStep,pnStepCount) ) 470 471 #define IAudioEndpointVolume_VolumeStepUp(This,pguidEventContext) \ 472 ( (This)->lpVtbl -> VolumeStepUp(This,pguidEventContext) ) 473 474 #define IAudioEndpointVolume_VolumeStepDown(This,pguidEventContext) \ 475 ( (This)->lpVtbl -> VolumeStepDown(This,pguidEventContext) ) 476 477 #define IAudioEndpointVolume_QueryHardwareSupport(This,pdwHardwareSupportMask) \ 478 ( (This)->lpVtbl -> QueryHardwareSupport(This,pdwHardwareSupportMask) ) 479 480 #define IAudioEndpointVolume_GetVolumeRange(This,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB) \ 481 ( (This)->lpVtbl -> GetVolumeRange(This,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB) ) 482 483 #endif /* COBJMACROS */ 484 485 486 #endif /* C style interface */ 487 488 489 490 491 #endif /* __IAudioEndpointVolume_INTERFACE_DEFINED__ */ 492 493 494 #ifndef __IAudioMeterInformation_INTERFACE_DEFINED__ 495 #define __IAudioMeterInformation_INTERFACE_DEFINED__ 496 497 /* interface IAudioMeterInformation */ 498 /* [unique][helpstring][nonextensible][uuid][local][object] */ 499 500 501 EXTERN_C const IID IID_IAudioMeterInformation; 502 503 #if defined(__cplusplus) && !defined(CINTERFACE) 504 505 MIDL_INTERFACE("C02216F6-8C67-4B5B-9D00-D008E73E0064") 506 IAudioMeterInformation : public IUnknown 507 { 508 public: 509 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetPeakValue( 510 /* [out] */ float *pfPeak) = 0; 511 512 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetMeteringChannelCount( 513 /* [out] */ 514 __out UINT *pnChannelCount) = 0; 515 516 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetChannelsPeakValues( 517 /* [in] */ UINT32 u32ChannelCount, 518 /* [size_is][out] */ float *afPeakValues) = 0; 519 520 virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE QueryHardwareSupport( 521 /* [out] */ 522 __out DWORD *pdwHardwareSupportMask) = 0; 523 524 }; 525 526 #else /* C style interface */ 527 528 typedef struct IAudioMeterInformationVtbl 529 { 530 BEGIN_INTERFACE 531 532 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 533 IAudioMeterInformation * This, 534 /* [in] */ REFIID riid, 535 /* [iid_is][out] */ 536 __RPC__deref_out void **ppvObject); 537 538 ULONG ( STDMETHODCALLTYPE *AddRef )( 539 IAudioMeterInformation * This); 540 541 ULONG ( STDMETHODCALLTYPE *Release )( 542 IAudioMeterInformation * This); 543 544 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPeakValue )( 545 IAudioMeterInformation * This, 546 /* [out] */ float *pfPeak); 547 548 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetMeteringChannelCount )( 549 IAudioMeterInformation * This, 550 /* [out] */ 551 __out UINT *pnChannelCount); 552 553 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetChannelsPeakValues )( 554 IAudioMeterInformation * This, 555 /* [in] */ UINT32 u32ChannelCount, 556 /* [size_is][out] */ float *afPeakValues); 557 558 /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *QueryHardwareSupport )( 559 IAudioMeterInformation * This, 560 /* [out] */ 561 __out DWORD *pdwHardwareSupportMask); 562 563 END_INTERFACE 564 } IAudioMeterInformationVtbl; 565 566 interface IAudioMeterInformation 567 { 568 CONST_VTBL struct IAudioMeterInformationVtbl *lpVtbl; 569 }; 570 571 572 573 #ifdef COBJMACROS 574 575 576 #define IAudioMeterInformation_QueryInterface(This,riid,ppvObject) \ 577 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 578 579 #define IAudioMeterInformation_AddRef(This) \ 580 ( (This)->lpVtbl -> AddRef(This) ) 581 582 #define IAudioMeterInformation_Release(This) \ 583 ( (This)->lpVtbl -> Release(This) ) 584 585 586 #define IAudioMeterInformation_GetPeakValue(This,pfPeak) \ 587 ( (This)->lpVtbl -> GetPeakValue(This,pfPeak) ) 588 589 #define IAudioMeterInformation_GetMeteringChannelCount(This,pnChannelCount) \ 590 ( (This)->lpVtbl -> GetMeteringChannelCount(This,pnChannelCount) ) 591 592 #define IAudioMeterInformation_GetChannelsPeakValues(This,u32ChannelCount,afPeakValues) \ 593 ( (This)->lpVtbl -> GetChannelsPeakValues(This,u32ChannelCount,afPeakValues) ) 594 595 #define IAudioMeterInformation_QueryHardwareSupport(This,pdwHardwareSupportMask) \ 596 ( (This)->lpVtbl -> QueryHardwareSupport(This,pdwHardwareSupportMask) ) 597 598 #endif /* COBJMACROS */ 599 600 601 #endif /* C style interface */ 602 603 604 605 606 #endif /* __IAudioMeterInformation_INTERFACE_DEFINED__ */ 607 608 609 /* Additional Prototypes for ALL interfaces */ 610 611 /* end of Additional Prototypes */ 612 613 #ifdef __cplusplus 614 } 615 #endif 616 617 #endif 618 619 620 621