master
   1/*** Autogenerated by WIDL 10.4 from include/vidcap.idl - Do not edit ***/
   2
   3#ifdef _WIN32
   4#ifndef __REQUIRED_RPCNDR_H_VERSION__
   5#define __REQUIRED_RPCNDR_H_VERSION__ 475
   6#endif
   7#include <rpc.h>
   8#include <rpcndr.h>
   9#endif
  10
  11#ifndef COM_NO_WINDOWS_H
  12#include <windows.h>
  13#include <ole2.h>
  14#endif
  15
  16#ifndef __vidcap_h__
  17#define __vidcap_h__
  18
  19/* Forward declarations */
  20
  21#ifndef __IKsTopologyInfo_FWD_DEFINED__
  22#define __IKsTopologyInfo_FWD_DEFINED__
  23typedef interface IKsTopologyInfo IKsTopologyInfo;
  24#ifdef __cplusplus
  25interface IKsTopologyInfo;
  26#endif /* __cplusplus */
  27#endif
  28
  29#ifndef __ISelector_FWD_DEFINED__
  30#define __ISelector_FWD_DEFINED__
  31typedef interface ISelector ISelector;
  32#ifdef __cplusplus
  33interface ISelector;
  34#endif /* __cplusplus */
  35#endif
  36
  37#ifndef __ICameraControl_FWD_DEFINED__
  38#define __ICameraControl_FWD_DEFINED__
  39typedef interface ICameraControl ICameraControl;
  40#ifdef __cplusplus
  41interface ICameraControl;
  42#endif /* __cplusplus */
  43#endif
  44
  45#ifndef __IVideoProcAmp_FWD_DEFINED__
  46#define __IVideoProcAmp_FWD_DEFINED__
  47typedef interface IVideoProcAmp IVideoProcAmp;
  48#ifdef __cplusplus
  49interface IVideoProcAmp;
  50#endif /* __cplusplus */
  51#endif
  52
  53#ifndef __IKsNodeControl_FWD_DEFINED__
  54#define __IKsNodeControl_FWD_DEFINED__
  55typedef interface IKsNodeControl IKsNodeControl;
  56#ifdef __cplusplus
  57interface IKsNodeControl;
  58#endif /* __cplusplus */
  59#endif
  60
  61/* Headers for imported files */
  62
  63#include <unknwn.h>
  64#include <strmif.h>
  65
  66#ifdef __cplusplus
  67extern "C" {
  68#endif
  69
  70#include <winapifamily.h>
  71#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
  72#include "ks.h"
  73#ifndef _KS_
  74typedef struct __WIDL_vidcap_generated_name_00000016 {
  75    ULONG FromNode;
  76    ULONG FromNodePin;
  77    ULONG ToNode;
  78    ULONG ToNodePin;
  79} KSTOPOLOGY_CONNECTION;
  80typedef struct __WIDL_vidcap_generated_name_00000016 *PKSTOPOLOGY_CONNECTION;
  81#endif
  82/*****************************************************************************
  83 * IKsTopologyInfo interface
  84 */
  85#ifndef __IKsTopologyInfo_INTERFACE_DEFINED__
  86#define __IKsTopologyInfo_INTERFACE_DEFINED__
  87
  88DEFINE_GUID(IID_IKsTopologyInfo, 0x720d4ac0, 0x7533, 0x11d0, 0xa5,0xd6, 0x28,0xdb,0x04,0xc1,0x00,0x00);
  89#if defined(__cplusplus) && !defined(CINTERFACE)
  90MIDL_INTERFACE("720d4ac0-7533-11d0-a5d6-28db04c10000")
  91IKsTopologyInfo : public IUnknown
  92{
  93    virtual HRESULT STDMETHODCALLTYPE get_NumCategories(
  94        DWORD *pdwNumCategories) = 0;
  95
  96    virtual HRESULT STDMETHODCALLTYPE get_Category(
  97        DWORD dwIndex,
  98        GUID *pCategory) = 0;
  99
 100    virtual HRESULT STDMETHODCALLTYPE get_NumConnections(
 101        DWORD *pdwNumConnections) = 0;
 102
 103    virtual HRESULT STDMETHODCALLTYPE get_ConnectionInfo(
 104        DWORD dwIndex,
 105        KSTOPOLOGY_CONNECTION *pConnectionInfo) = 0;
 106
 107    virtual HRESULT STDMETHODCALLTYPE get_NodeName(
 108        DWORD dwNodeId,
 109        WCHAR *pwchNodeName,
 110        DWORD dwBufSize,
 111        DWORD *pdwNameLen) = 0;
 112
 113    virtual HRESULT STDMETHODCALLTYPE get_NumNodes(
 114        DWORD *pdwNumNodes) = 0;
 115
 116    virtual HRESULT STDMETHODCALLTYPE get_NodeType(
 117        DWORD dwNodeId,
 118        GUID *pNodeType) = 0;
 119
 120    virtual HRESULT STDMETHODCALLTYPE CreateNodeInstance(
 121        DWORD dwNodeId,
 122        REFIID iid,
 123        void **ppvObject) = 0;
 124
 125};
 126#ifdef __CRT_UUID_DECL
 127__CRT_UUID_DECL(IKsTopologyInfo, 0x720d4ac0, 0x7533, 0x11d0, 0xa5,0xd6, 0x28,0xdb,0x04,0xc1,0x00,0x00)
 128#endif
 129#else
 130typedef struct IKsTopologyInfoVtbl {
 131    BEGIN_INTERFACE
 132
 133    /*** IUnknown methods ***/
 134    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 135        IKsTopologyInfo *This,
 136        REFIID riid,
 137        void **ppvObject);
 138
 139    ULONG (STDMETHODCALLTYPE *AddRef)(
 140        IKsTopologyInfo *This);
 141
 142    ULONG (STDMETHODCALLTYPE *Release)(
 143        IKsTopologyInfo *This);
 144
 145    /*** IKsTopologyInfo methods ***/
 146    HRESULT (STDMETHODCALLTYPE *get_NumCategories)(
 147        IKsTopologyInfo *This,
 148        DWORD *pdwNumCategories);
 149
 150    HRESULT (STDMETHODCALLTYPE *get_Category)(
 151        IKsTopologyInfo *This,
 152        DWORD dwIndex,
 153        GUID *pCategory);
 154
 155    HRESULT (STDMETHODCALLTYPE *get_NumConnections)(
 156        IKsTopologyInfo *This,
 157        DWORD *pdwNumConnections);
 158
 159    HRESULT (STDMETHODCALLTYPE *get_ConnectionInfo)(
 160        IKsTopologyInfo *This,
 161        DWORD dwIndex,
 162        KSTOPOLOGY_CONNECTION *pConnectionInfo);
 163
 164    HRESULT (STDMETHODCALLTYPE *get_NodeName)(
 165        IKsTopologyInfo *This,
 166        DWORD dwNodeId,
 167        WCHAR *pwchNodeName,
 168        DWORD dwBufSize,
 169        DWORD *pdwNameLen);
 170
 171    HRESULT (STDMETHODCALLTYPE *get_NumNodes)(
 172        IKsTopologyInfo *This,
 173        DWORD *pdwNumNodes);
 174
 175    HRESULT (STDMETHODCALLTYPE *get_NodeType)(
 176        IKsTopologyInfo *This,
 177        DWORD dwNodeId,
 178        GUID *pNodeType);
 179
 180    HRESULT (STDMETHODCALLTYPE *CreateNodeInstance)(
 181        IKsTopologyInfo *This,
 182        DWORD dwNodeId,
 183        REFIID iid,
 184        void **ppvObject);
 185
 186    END_INTERFACE
 187} IKsTopologyInfoVtbl;
 188
 189interface IKsTopologyInfo {
 190    CONST_VTBL IKsTopologyInfoVtbl* lpVtbl;
 191};
 192
 193#ifdef COBJMACROS
 194#ifndef WIDL_C_INLINE_WRAPPERS
 195/*** IUnknown methods ***/
 196#define IKsTopologyInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 197#define IKsTopologyInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
 198#define IKsTopologyInfo_Release(This) (This)->lpVtbl->Release(This)
 199/*** IKsTopologyInfo methods ***/
 200#define IKsTopologyInfo_get_NumCategories(This,pdwNumCategories) (This)->lpVtbl->get_NumCategories(This,pdwNumCategories)
 201#define IKsTopologyInfo_get_Category(This,dwIndex,pCategory) (This)->lpVtbl->get_Category(This,dwIndex,pCategory)
 202#define IKsTopologyInfo_get_NumConnections(This,pdwNumConnections) (This)->lpVtbl->get_NumConnections(This,pdwNumConnections)
 203#define IKsTopologyInfo_get_ConnectionInfo(This,dwIndex,pConnectionInfo) (This)->lpVtbl->get_ConnectionInfo(This,dwIndex,pConnectionInfo)
 204#define IKsTopologyInfo_get_NodeName(This,dwNodeId,pwchNodeName,dwBufSize,pdwNameLen) (This)->lpVtbl->get_NodeName(This,dwNodeId,pwchNodeName,dwBufSize,pdwNameLen)
 205#define IKsTopologyInfo_get_NumNodes(This,pdwNumNodes) (This)->lpVtbl->get_NumNodes(This,pdwNumNodes)
 206#define IKsTopologyInfo_get_NodeType(This,dwNodeId,pNodeType) (This)->lpVtbl->get_NodeType(This,dwNodeId,pNodeType)
 207#define IKsTopologyInfo_CreateNodeInstance(This,dwNodeId,iid,ppvObject) (This)->lpVtbl->CreateNodeInstance(This,dwNodeId,iid,ppvObject)
 208#else
 209/*** IUnknown methods ***/
 210static inline HRESULT IKsTopologyInfo_QueryInterface(IKsTopologyInfo* This,REFIID riid,void **ppvObject) {
 211    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 212}
 213static inline ULONG IKsTopologyInfo_AddRef(IKsTopologyInfo* This) {
 214    return This->lpVtbl->AddRef(This);
 215}
 216static inline ULONG IKsTopologyInfo_Release(IKsTopologyInfo* This) {
 217    return This->lpVtbl->Release(This);
 218}
 219/*** IKsTopologyInfo methods ***/
 220static inline HRESULT IKsTopologyInfo_get_NumCategories(IKsTopologyInfo* This,DWORD *pdwNumCategories) {
 221    return This->lpVtbl->get_NumCategories(This,pdwNumCategories);
 222}
 223static inline HRESULT IKsTopologyInfo_get_Category(IKsTopologyInfo* This,DWORD dwIndex,GUID *pCategory) {
 224    return This->lpVtbl->get_Category(This,dwIndex,pCategory);
 225}
 226static inline HRESULT IKsTopologyInfo_get_NumConnections(IKsTopologyInfo* This,DWORD *pdwNumConnections) {
 227    return This->lpVtbl->get_NumConnections(This,pdwNumConnections);
 228}
 229static inline HRESULT IKsTopologyInfo_get_ConnectionInfo(IKsTopologyInfo* This,DWORD dwIndex,KSTOPOLOGY_CONNECTION *pConnectionInfo) {
 230    return This->lpVtbl->get_ConnectionInfo(This,dwIndex,pConnectionInfo);
 231}
 232static inline HRESULT IKsTopologyInfo_get_NodeName(IKsTopologyInfo* This,DWORD dwNodeId,WCHAR *pwchNodeName,DWORD dwBufSize,DWORD *pdwNameLen) {
 233    return This->lpVtbl->get_NodeName(This,dwNodeId,pwchNodeName,dwBufSize,pdwNameLen);
 234}
 235static inline HRESULT IKsTopologyInfo_get_NumNodes(IKsTopologyInfo* This,DWORD *pdwNumNodes) {
 236    return This->lpVtbl->get_NumNodes(This,pdwNumNodes);
 237}
 238static inline HRESULT IKsTopologyInfo_get_NodeType(IKsTopologyInfo* This,DWORD dwNodeId,GUID *pNodeType) {
 239    return This->lpVtbl->get_NodeType(This,dwNodeId,pNodeType);
 240}
 241static inline HRESULT IKsTopologyInfo_CreateNodeInstance(IKsTopologyInfo* This,DWORD dwNodeId,REFIID iid,void **ppvObject) {
 242    return This->lpVtbl->CreateNodeInstance(This,dwNodeId,iid,ppvObject);
 243}
 244#endif
 245#endif
 246
 247#endif
 248
 249
 250#endif  /* __IKsTopologyInfo_INTERFACE_DEFINED__ */
 251
 252/*****************************************************************************
 253 * ISelector interface
 254 */
 255#ifndef __ISelector_INTERFACE_DEFINED__
 256#define __ISelector_INTERFACE_DEFINED__
 257
 258DEFINE_GUID(IID_ISelector, 0x1abdaeca, 0x68b6, 0x4f83, 0x93,0x71, 0xb4,0x13,0x90,0x7c,0x7b,0x9f);
 259#if defined(__cplusplus) && !defined(CINTERFACE)
 260MIDL_INTERFACE("1abdaeca-68b6-4f83-9371-b413907c7b9f")
 261ISelector : public IUnknown
 262{
 263    virtual HRESULT STDMETHODCALLTYPE get_NumSources(
 264        DWORD *pdwNumSources) = 0;
 265
 266    virtual HRESULT STDMETHODCALLTYPE get_SourceNodeId(
 267        DWORD *pdwPinId) = 0;
 268
 269    virtual HRESULT STDMETHODCALLTYPE put_SourceNodeId(
 270        DWORD dwPinId) = 0;
 271
 272};
 273#ifdef __CRT_UUID_DECL
 274__CRT_UUID_DECL(ISelector, 0x1abdaeca, 0x68b6, 0x4f83, 0x93,0x71, 0xb4,0x13,0x90,0x7c,0x7b,0x9f)
 275#endif
 276#else
 277typedef struct ISelectorVtbl {
 278    BEGIN_INTERFACE
 279
 280    /*** IUnknown methods ***/
 281    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 282        ISelector *This,
 283        REFIID riid,
 284        void **ppvObject);
 285
 286    ULONG (STDMETHODCALLTYPE *AddRef)(
 287        ISelector *This);
 288
 289    ULONG (STDMETHODCALLTYPE *Release)(
 290        ISelector *This);
 291
 292    /*** ISelector methods ***/
 293    HRESULT (STDMETHODCALLTYPE *get_NumSources)(
 294        ISelector *This,
 295        DWORD *pdwNumSources);
 296
 297    HRESULT (STDMETHODCALLTYPE *get_SourceNodeId)(
 298        ISelector *This,
 299        DWORD *pdwPinId);
 300
 301    HRESULT (STDMETHODCALLTYPE *put_SourceNodeId)(
 302        ISelector *This,
 303        DWORD dwPinId);
 304
 305    END_INTERFACE
 306} ISelectorVtbl;
 307
 308interface ISelector {
 309    CONST_VTBL ISelectorVtbl* lpVtbl;
 310};
 311
 312#ifdef COBJMACROS
 313#ifndef WIDL_C_INLINE_WRAPPERS
 314/*** IUnknown methods ***/
 315#define ISelector_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 316#define ISelector_AddRef(This) (This)->lpVtbl->AddRef(This)
 317#define ISelector_Release(This) (This)->lpVtbl->Release(This)
 318/*** ISelector methods ***/
 319#define ISelector_get_NumSources(This,pdwNumSources) (This)->lpVtbl->get_NumSources(This,pdwNumSources)
 320#define ISelector_get_SourceNodeId(This,pdwPinId) (This)->lpVtbl->get_SourceNodeId(This,pdwPinId)
 321#define ISelector_put_SourceNodeId(This,dwPinId) (This)->lpVtbl->put_SourceNodeId(This,dwPinId)
 322#else
 323/*** IUnknown methods ***/
 324static inline HRESULT ISelector_QueryInterface(ISelector* This,REFIID riid,void **ppvObject) {
 325    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 326}
 327static inline ULONG ISelector_AddRef(ISelector* This) {
 328    return This->lpVtbl->AddRef(This);
 329}
 330static inline ULONG ISelector_Release(ISelector* This) {
 331    return This->lpVtbl->Release(This);
 332}
 333/*** ISelector methods ***/
 334static inline HRESULT ISelector_get_NumSources(ISelector* This,DWORD *pdwNumSources) {
 335    return This->lpVtbl->get_NumSources(This,pdwNumSources);
 336}
 337static inline HRESULT ISelector_get_SourceNodeId(ISelector* This,DWORD *pdwPinId) {
 338    return This->lpVtbl->get_SourceNodeId(This,pdwPinId);
 339}
 340static inline HRESULT ISelector_put_SourceNodeId(ISelector* This,DWORD dwPinId) {
 341    return This->lpVtbl->put_SourceNodeId(This,dwPinId);
 342}
 343#endif
 344#endif
 345
 346#endif
 347
 348
 349#endif  /* __ISelector_INTERFACE_DEFINED__ */
 350
 351/*****************************************************************************
 352 * ICameraControl interface
 353 */
 354#ifndef __ICameraControl_INTERFACE_DEFINED__
 355#define __ICameraControl_INTERFACE_DEFINED__
 356
 357DEFINE_GUID(IID_ICameraControl, 0x2ba1785d, 0x4d1b, 0x44ef, 0x85,0xe8, 0xc7,0xf1,0xd3,0xf2,0x01,0x84);
 358#if defined(__cplusplus) && !defined(CINTERFACE)
 359MIDL_INTERFACE("2ba1785d-4d1b-44ef-85e8-c7f1d3f20184")
 360ICameraControl : public IUnknown
 361{
 362    virtual HRESULT STDMETHODCALLTYPE get_Exposure(
 363        LONG *pValue,
 364        LONG *pFlags) = 0;
 365
 366    virtual HRESULT STDMETHODCALLTYPE put_Exposure(
 367        LONG Value,
 368        LONG Flags) = 0;
 369
 370    virtual HRESULT STDMETHODCALLTYPE getRange_Exposure(
 371        LONG *pMin,
 372        LONG *pMax,
 373        LONG *pSteppingDelta,
 374        LONG *pDefault,
 375        LONG *pCapsFlag) = 0;
 376
 377    virtual HRESULT STDMETHODCALLTYPE get_Focus(
 378        LONG *pValue,
 379        LONG *pFlags) = 0;
 380
 381    virtual HRESULT STDMETHODCALLTYPE put_Focus(
 382        LONG Value,
 383        LONG Flags) = 0;
 384
 385    virtual HRESULT STDMETHODCALLTYPE getRange_Focus(
 386        LONG *pMin,
 387        LONG *pMax,
 388        LONG *pSteppingDelta,
 389        LONG *pDefault,
 390        LONG *pCapsFlag) = 0;
 391
 392    virtual HRESULT STDMETHODCALLTYPE get_Iris(
 393        LONG *pValue,
 394        LONG *pFlags) = 0;
 395
 396    virtual HRESULT STDMETHODCALLTYPE put_Iris(
 397        LONG Value,
 398        LONG Flags) = 0;
 399
 400    virtual HRESULT STDMETHODCALLTYPE getRange_Iris(
 401        LONG *pMin,
 402        LONG *pMax,
 403        LONG *pSteppingDelta,
 404        LONG *pDefault,
 405        LONG *pCapsFlag) = 0;
 406
 407    virtual HRESULT STDMETHODCALLTYPE get_Zoom(
 408        LONG *pValue,
 409        LONG *pFlags) = 0;
 410
 411    virtual HRESULT STDMETHODCALLTYPE put_Zoom(
 412        LONG Value,
 413        LONG Flags) = 0;
 414
 415    virtual HRESULT STDMETHODCALLTYPE getRange_Zoom(
 416        LONG *pMin,
 417        LONG *pMax,
 418        LONG *pSteppingDelta,
 419        LONG *pDefault,
 420        LONG *pCapsFlag) = 0;
 421
 422    virtual HRESULT STDMETHODCALLTYPE get_FocalLengths(
 423        LONG *plOcularFocalLength,
 424        LONG *plObjectiveFocalLengthMin,
 425        LONG *plObjectiveFocalLengthMax) = 0;
 426
 427    virtual HRESULT STDMETHODCALLTYPE get_Pan(
 428        LONG *pValue,
 429        LONG *pFlags) = 0;
 430
 431    virtual HRESULT STDMETHODCALLTYPE put_Pan(
 432        LONG Value,
 433        LONG Flags) = 0;
 434
 435    virtual HRESULT STDMETHODCALLTYPE getRange_Pan(
 436        LONG *pMin,
 437        LONG *pMax,
 438        LONG *pSteppingDelta,
 439        LONG *pDefault,
 440        LONG *pCapsFlag) = 0;
 441
 442    virtual HRESULT STDMETHODCALLTYPE get_Tilt(
 443        LONG *pValue,
 444        LONG *pFlags) = 0;
 445
 446    virtual HRESULT STDMETHODCALLTYPE put_Tilt(
 447        LONG Value,
 448        LONG Flags) = 0;
 449
 450    virtual HRESULT STDMETHODCALLTYPE getRange_Tilt(
 451        LONG *pMin,
 452        LONG *pMax,
 453        LONG *pSteppingDelta,
 454        LONG *pDefault,
 455        LONG *pCapsFlag) = 0;
 456
 457    virtual HRESULT STDMETHODCALLTYPE get_PanTilt(
 458        LONG *pPanValue,
 459        LONG *pTiltValue,
 460        LONG *pFlags) = 0;
 461
 462    virtual HRESULT STDMETHODCALLTYPE put_PanTilt(
 463        LONG PanValue,
 464        LONG TiltValue,
 465        LONG Flags) = 0;
 466
 467    virtual HRESULT STDMETHODCALLTYPE get_Roll(
 468        LONG *pValue,
 469        LONG *pFlags) = 0;
 470
 471    virtual HRESULT STDMETHODCALLTYPE put_Roll(
 472        LONG Value,
 473        LONG Flags) = 0;
 474
 475    virtual HRESULT STDMETHODCALLTYPE getRange_Roll(
 476        LONG *pMin,
 477        LONG *pMax,
 478        LONG *pSteppingDelta,
 479        LONG *pDefault,
 480        LONG *pCapsFlag) = 0;
 481
 482    virtual HRESULT STDMETHODCALLTYPE get_ExposureRelative(
 483        LONG *pValue,
 484        LONG *pFlags) = 0;
 485
 486    virtual HRESULT STDMETHODCALLTYPE put_ExposureRelative(
 487        LONG Value,
 488        LONG Flags) = 0;
 489
 490    virtual HRESULT STDMETHODCALLTYPE getRange_ExposureRelative(
 491        LONG *pMin,
 492        LONG *pMax,
 493        LONG *pSteppingDelta,
 494        LONG *pDefault,
 495        LONG *pCapsFlag) = 0;
 496
 497    virtual HRESULT STDMETHODCALLTYPE get_FocusRelative(
 498        LONG *pValue,
 499        LONG *pFlags) = 0;
 500
 501    virtual HRESULT STDMETHODCALLTYPE put_FocusRelative(
 502        LONG Value,
 503        LONG Flags) = 0;
 504
 505    virtual HRESULT STDMETHODCALLTYPE getRange_FocusRelative(
 506        LONG *pMin,
 507        LONG *pMax,
 508        LONG *pSteppingDelta,
 509        LONG *pDefault,
 510        LONG *pCapsFlag) = 0;
 511
 512    virtual HRESULT STDMETHODCALLTYPE get_IrisRelative(
 513        LONG *pValue,
 514        LONG *pFlags) = 0;
 515
 516    virtual HRESULT STDMETHODCALLTYPE put_IrisRelative(
 517        LONG Value,
 518        LONG Flags) = 0;
 519
 520    virtual HRESULT STDMETHODCALLTYPE getRange_IrisRelative(
 521        LONG *pMin,
 522        LONG *pMax,
 523        LONG *pSteppingDelta,
 524        LONG *pDefault,
 525        LONG *pCapsFlag) = 0;
 526
 527    virtual HRESULT STDMETHODCALLTYPE get_ZoomRelative(
 528        LONG *pValue,
 529        LONG *pFlags) = 0;
 530
 531    virtual HRESULT STDMETHODCALLTYPE put_ZoomRelative(
 532        LONG Value,
 533        LONG Flags) = 0;
 534
 535    virtual HRESULT STDMETHODCALLTYPE getRange_ZoomRelative(
 536        LONG *pMin,
 537        LONG *pMax,
 538        LONG *pSteppingDelta,
 539        LONG *pDefault,
 540        LONG *pCapsFlag) = 0;
 541
 542    virtual HRESULT STDMETHODCALLTYPE get_PanRelative(
 543        LONG *pValue,
 544        LONG *pFlags) = 0;
 545
 546    virtual HRESULT STDMETHODCALLTYPE put_PanRelative(
 547        LONG Value,
 548        LONG Flags) = 0;
 549
 550    virtual HRESULT STDMETHODCALLTYPE get_TiltRelative(
 551        LONG *pValue,
 552        LONG *pFlags) = 0;
 553
 554    virtual HRESULT STDMETHODCALLTYPE put_TiltRelative(
 555        LONG Value,
 556        LONG Flags) = 0;
 557
 558    virtual HRESULT STDMETHODCALLTYPE getRange_TiltRelative(
 559        LONG *pMin,
 560        LONG *pMax,
 561        LONG *pSteppingDelta,
 562        LONG *pDefault,
 563        LONG *pCapsFlag) = 0;
 564
 565    virtual HRESULT STDMETHODCALLTYPE get_PanTiltRelative(
 566        LONG *pPanValue,
 567        LONG *pTiltValue,
 568        LONG *pFlags) = 0;
 569
 570    virtual HRESULT STDMETHODCALLTYPE put_PanTiltRelative(
 571        LONG PanValue,
 572        LONG TiltValue,
 573        LONG Flags) = 0;
 574
 575    virtual HRESULT STDMETHODCALLTYPE getRange_PanRelative(
 576        LONG *pMin,
 577        LONG *pMax,
 578        LONG *pSteppingDelta,
 579        LONG *pDefault,
 580        LONG *pCapsFlag) = 0;
 581
 582    virtual HRESULT STDMETHODCALLTYPE get_RollRelative(
 583        LONG *pValue,
 584        LONG *pFlags) = 0;
 585
 586    virtual HRESULT STDMETHODCALLTYPE put_RollRelative(
 587        LONG Value,
 588        LONG Flags) = 0;
 589
 590    virtual HRESULT STDMETHODCALLTYPE getRange_RollRelative(
 591        LONG *pMin,
 592        LONG *pMax,
 593        LONG *pSteppingDelta,
 594        LONG *pDefault,
 595        LONG *pCapsFlag) = 0;
 596
 597    virtual HRESULT STDMETHODCALLTYPE get_ScanMode(
 598        LONG *pValue,
 599        LONG *pFlags) = 0;
 600
 601    virtual HRESULT STDMETHODCALLTYPE put_ScanMode(
 602        LONG Value,
 603        LONG Flags) = 0;
 604
 605    virtual HRESULT STDMETHODCALLTYPE get_PrivacyMode(
 606        LONG *pValue,
 607        LONG *pFlags) = 0;
 608
 609    virtual HRESULT STDMETHODCALLTYPE put_PrivacyMode(
 610        LONG Value,
 611        LONG Flags) = 0;
 612
 613};
 614#ifdef __CRT_UUID_DECL
 615__CRT_UUID_DECL(ICameraControl, 0x2ba1785d, 0x4d1b, 0x44ef, 0x85,0xe8, 0xc7,0xf1,0xd3,0xf2,0x01,0x84)
 616#endif
 617#else
 618typedef struct ICameraControlVtbl {
 619    BEGIN_INTERFACE
 620
 621    /*** IUnknown methods ***/
 622    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 623        ICameraControl *This,
 624        REFIID riid,
 625        void **ppvObject);
 626
 627    ULONG (STDMETHODCALLTYPE *AddRef)(
 628        ICameraControl *This);
 629
 630    ULONG (STDMETHODCALLTYPE *Release)(
 631        ICameraControl *This);
 632
 633    /*** ICameraControl methods ***/
 634    HRESULT (STDMETHODCALLTYPE *get_Exposure)(
 635        ICameraControl *This,
 636        LONG *pValue,
 637        LONG *pFlags);
 638
 639    HRESULT (STDMETHODCALLTYPE *put_Exposure)(
 640        ICameraControl *This,
 641        LONG Value,
 642        LONG Flags);
 643
 644    HRESULT (STDMETHODCALLTYPE *getRange_Exposure)(
 645        ICameraControl *This,
 646        LONG *pMin,
 647        LONG *pMax,
 648        LONG *pSteppingDelta,
 649        LONG *pDefault,
 650        LONG *pCapsFlag);
 651
 652    HRESULT (STDMETHODCALLTYPE *get_Focus)(
 653        ICameraControl *This,
 654        LONG *pValue,
 655        LONG *pFlags);
 656
 657    HRESULT (STDMETHODCALLTYPE *put_Focus)(
 658        ICameraControl *This,
 659        LONG Value,
 660        LONG Flags);
 661
 662    HRESULT (STDMETHODCALLTYPE *getRange_Focus)(
 663        ICameraControl *This,
 664        LONG *pMin,
 665        LONG *pMax,
 666        LONG *pSteppingDelta,
 667        LONG *pDefault,
 668        LONG *pCapsFlag);
 669
 670    HRESULT (STDMETHODCALLTYPE *get_Iris)(
 671        ICameraControl *This,
 672        LONG *pValue,
 673        LONG *pFlags);
 674
 675    HRESULT (STDMETHODCALLTYPE *put_Iris)(
 676        ICameraControl *This,
 677        LONG Value,
 678        LONG Flags);
 679
 680    HRESULT (STDMETHODCALLTYPE *getRange_Iris)(
 681        ICameraControl *This,
 682        LONG *pMin,
 683        LONG *pMax,
 684        LONG *pSteppingDelta,
 685        LONG *pDefault,
 686        LONG *pCapsFlag);
 687
 688    HRESULT (STDMETHODCALLTYPE *get_Zoom)(
 689        ICameraControl *This,
 690        LONG *pValue,
 691        LONG *pFlags);
 692
 693    HRESULT (STDMETHODCALLTYPE *put_Zoom)(
 694        ICameraControl *This,
 695        LONG Value,
 696        LONG Flags);
 697
 698    HRESULT (STDMETHODCALLTYPE *getRange_Zoom)(
 699        ICameraControl *This,
 700        LONG *pMin,
 701        LONG *pMax,
 702        LONG *pSteppingDelta,
 703        LONG *pDefault,
 704        LONG *pCapsFlag);
 705
 706    HRESULT (STDMETHODCALLTYPE *get_FocalLengths)(
 707        ICameraControl *This,
 708        LONG *plOcularFocalLength,
 709        LONG *plObjectiveFocalLengthMin,
 710        LONG *plObjectiveFocalLengthMax);
 711
 712    HRESULT (STDMETHODCALLTYPE *get_Pan)(
 713        ICameraControl *This,
 714        LONG *pValue,
 715        LONG *pFlags);
 716
 717    HRESULT (STDMETHODCALLTYPE *put_Pan)(
 718        ICameraControl *This,
 719        LONG Value,
 720        LONG Flags);
 721
 722    HRESULT (STDMETHODCALLTYPE *getRange_Pan)(
 723        ICameraControl *This,
 724        LONG *pMin,
 725        LONG *pMax,
 726        LONG *pSteppingDelta,
 727        LONG *pDefault,
 728        LONG *pCapsFlag);
 729
 730    HRESULT (STDMETHODCALLTYPE *get_Tilt)(
 731        ICameraControl *This,
 732        LONG *pValue,
 733        LONG *pFlags);
 734
 735    HRESULT (STDMETHODCALLTYPE *put_Tilt)(
 736        ICameraControl *This,
 737        LONG Value,
 738        LONG Flags);
 739
 740    HRESULT (STDMETHODCALLTYPE *getRange_Tilt)(
 741        ICameraControl *This,
 742        LONG *pMin,
 743        LONG *pMax,
 744        LONG *pSteppingDelta,
 745        LONG *pDefault,
 746        LONG *pCapsFlag);
 747
 748    HRESULT (STDMETHODCALLTYPE *get_PanTilt)(
 749        ICameraControl *This,
 750        LONG *pPanValue,
 751        LONG *pTiltValue,
 752        LONG *pFlags);
 753
 754    HRESULT (STDMETHODCALLTYPE *put_PanTilt)(
 755        ICameraControl *This,
 756        LONG PanValue,
 757        LONG TiltValue,
 758        LONG Flags);
 759
 760    HRESULT (STDMETHODCALLTYPE *get_Roll)(
 761        ICameraControl *This,
 762        LONG *pValue,
 763        LONG *pFlags);
 764
 765    HRESULT (STDMETHODCALLTYPE *put_Roll)(
 766        ICameraControl *This,
 767        LONG Value,
 768        LONG Flags);
 769
 770    HRESULT (STDMETHODCALLTYPE *getRange_Roll)(
 771        ICameraControl *This,
 772        LONG *pMin,
 773        LONG *pMax,
 774        LONG *pSteppingDelta,
 775        LONG *pDefault,
 776        LONG *pCapsFlag);
 777
 778    HRESULT (STDMETHODCALLTYPE *get_ExposureRelative)(
 779        ICameraControl *This,
 780        LONG *pValue,
 781        LONG *pFlags);
 782
 783    HRESULT (STDMETHODCALLTYPE *put_ExposureRelative)(
 784        ICameraControl *This,
 785        LONG Value,
 786        LONG Flags);
 787
 788    HRESULT (STDMETHODCALLTYPE *getRange_ExposureRelative)(
 789        ICameraControl *This,
 790        LONG *pMin,
 791        LONG *pMax,
 792        LONG *pSteppingDelta,
 793        LONG *pDefault,
 794        LONG *pCapsFlag);
 795
 796    HRESULT (STDMETHODCALLTYPE *get_FocusRelative)(
 797        ICameraControl *This,
 798        LONG *pValue,
 799        LONG *pFlags);
 800
 801    HRESULT (STDMETHODCALLTYPE *put_FocusRelative)(
 802        ICameraControl *This,
 803        LONG Value,
 804        LONG Flags);
 805
 806    HRESULT (STDMETHODCALLTYPE *getRange_FocusRelative)(
 807        ICameraControl *This,
 808        LONG *pMin,
 809        LONG *pMax,
 810        LONG *pSteppingDelta,
 811        LONG *pDefault,
 812        LONG *pCapsFlag);
 813
 814    HRESULT (STDMETHODCALLTYPE *get_IrisRelative)(
 815        ICameraControl *This,
 816        LONG *pValue,
 817        LONG *pFlags);
 818
 819    HRESULT (STDMETHODCALLTYPE *put_IrisRelative)(
 820        ICameraControl *This,
 821        LONG Value,
 822        LONG Flags);
 823
 824    HRESULT (STDMETHODCALLTYPE *getRange_IrisRelative)(
 825        ICameraControl *This,
 826        LONG *pMin,
 827        LONG *pMax,
 828        LONG *pSteppingDelta,
 829        LONG *pDefault,
 830        LONG *pCapsFlag);
 831
 832    HRESULT (STDMETHODCALLTYPE *get_ZoomRelative)(
 833        ICameraControl *This,
 834        LONG *pValue,
 835        LONG *pFlags);
 836
 837    HRESULT (STDMETHODCALLTYPE *put_ZoomRelative)(
 838        ICameraControl *This,
 839        LONG Value,
 840        LONG Flags);
 841
 842    HRESULT (STDMETHODCALLTYPE *getRange_ZoomRelative)(
 843        ICameraControl *This,
 844        LONG *pMin,
 845        LONG *pMax,
 846        LONG *pSteppingDelta,
 847        LONG *pDefault,
 848        LONG *pCapsFlag);
 849
 850    HRESULT (STDMETHODCALLTYPE *get_PanRelative)(
 851        ICameraControl *This,
 852        LONG *pValue,
 853        LONG *pFlags);
 854
 855    HRESULT (STDMETHODCALLTYPE *put_PanRelative)(
 856        ICameraControl *This,
 857        LONG Value,
 858        LONG Flags);
 859
 860    HRESULT (STDMETHODCALLTYPE *get_TiltRelative)(
 861        ICameraControl *This,
 862        LONG *pValue,
 863        LONG *pFlags);
 864
 865    HRESULT (STDMETHODCALLTYPE *put_TiltRelative)(
 866        ICameraControl *This,
 867        LONG Value,
 868        LONG Flags);
 869
 870    HRESULT (STDMETHODCALLTYPE *getRange_TiltRelative)(
 871        ICameraControl *This,
 872        LONG *pMin,
 873        LONG *pMax,
 874        LONG *pSteppingDelta,
 875        LONG *pDefault,
 876        LONG *pCapsFlag);
 877
 878    HRESULT (STDMETHODCALLTYPE *get_PanTiltRelative)(
 879        ICameraControl *This,
 880        LONG *pPanValue,
 881        LONG *pTiltValue,
 882        LONG *pFlags);
 883
 884    HRESULT (STDMETHODCALLTYPE *put_PanTiltRelative)(
 885        ICameraControl *This,
 886        LONG PanValue,
 887        LONG TiltValue,
 888        LONG Flags);
 889
 890    HRESULT (STDMETHODCALLTYPE *getRange_PanRelative)(
 891        ICameraControl *This,
 892        LONG *pMin,
 893        LONG *pMax,
 894        LONG *pSteppingDelta,
 895        LONG *pDefault,
 896        LONG *pCapsFlag);
 897
 898    HRESULT (STDMETHODCALLTYPE *get_RollRelative)(
 899        ICameraControl *This,
 900        LONG *pValue,
 901        LONG *pFlags);
 902
 903    HRESULT (STDMETHODCALLTYPE *put_RollRelative)(
 904        ICameraControl *This,
 905        LONG Value,
 906        LONG Flags);
 907
 908    HRESULT (STDMETHODCALLTYPE *getRange_RollRelative)(
 909        ICameraControl *This,
 910        LONG *pMin,
 911        LONG *pMax,
 912        LONG *pSteppingDelta,
 913        LONG *pDefault,
 914        LONG *pCapsFlag);
 915
 916    HRESULT (STDMETHODCALLTYPE *get_ScanMode)(
 917        ICameraControl *This,
 918        LONG *pValue,
 919        LONG *pFlags);
 920
 921    HRESULT (STDMETHODCALLTYPE *put_ScanMode)(
 922        ICameraControl *This,
 923        LONG Value,
 924        LONG Flags);
 925
 926    HRESULT (STDMETHODCALLTYPE *get_PrivacyMode)(
 927        ICameraControl *This,
 928        LONG *pValue,
 929        LONG *pFlags);
 930
 931    HRESULT (STDMETHODCALLTYPE *put_PrivacyMode)(
 932        ICameraControl *This,
 933        LONG Value,
 934        LONG Flags);
 935
 936    END_INTERFACE
 937} ICameraControlVtbl;
 938
 939interface ICameraControl {
 940    CONST_VTBL ICameraControlVtbl* lpVtbl;
 941};
 942
 943#ifdef COBJMACROS
 944#ifndef WIDL_C_INLINE_WRAPPERS
 945/*** IUnknown methods ***/
 946#define ICameraControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 947#define ICameraControl_AddRef(This) (This)->lpVtbl->AddRef(This)
 948#define ICameraControl_Release(This) (This)->lpVtbl->Release(This)
 949/*** ICameraControl methods ***/
 950#define ICameraControl_get_Exposure(This,pValue,pFlags) (This)->lpVtbl->get_Exposure(This,pValue,pFlags)
 951#define ICameraControl_put_Exposure(This,Value,Flags) (This)->lpVtbl->put_Exposure(This,Value,Flags)
 952#define ICameraControl_getRange_Exposure(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Exposure(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 953#define ICameraControl_get_Focus(This,pValue,pFlags) (This)->lpVtbl->get_Focus(This,pValue,pFlags)
 954#define ICameraControl_put_Focus(This,Value,Flags) (This)->lpVtbl->put_Focus(This,Value,Flags)
 955#define ICameraControl_getRange_Focus(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Focus(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 956#define ICameraControl_get_Iris(This,pValue,pFlags) (This)->lpVtbl->get_Iris(This,pValue,pFlags)
 957#define ICameraControl_put_Iris(This,Value,Flags) (This)->lpVtbl->put_Iris(This,Value,Flags)
 958#define ICameraControl_getRange_Iris(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Iris(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 959#define ICameraControl_get_Zoom(This,pValue,pFlags) (This)->lpVtbl->get_Zoom(This,pValue,pFlags)
 960#define ICameraControl_put_Zoom(This,Value,Flags) (This)->lpVtbl->put_Zoom(This,Value,Flags)
 961#define ICameraControl_getRange_Zoom(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Zoom(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 962#define ICameraControl_get_FocalLengths(This,plOcularFocalLength,plObjectiveFocalLengthMin,plObjectiveFocalLengthMax) (This)->lpVtbl->get_FocalLengths(This,plOcularFocalLength,plObjectiveFocalLengthMin,plObjectiveFocalLengthMax)
 963#define ICameraControl_get_Pan(This,pValue,pFlags) (This)->lpVtbl->get_Pan(This,pValue,pFlags)
 964#define ICameraControl_put_Pan(This,Value,Flags) (This)->lpVtbl->put_Pan(This,Value,Flags)
 965#define ICameraControl_getRange_Pan(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Pan(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 966#define ICameraControl_get_Tilt(This,pValue,pFlags) (This)->lpVtbl->get_Tilt(This,pValue,pFlags)
 967#define ICameraControl_put_Tilt(This,Value,Flags) (This)->lpVtbl->put_Tilt(This,Value,Flags)
 968#define ICameraControl_getRange_Tilt(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Tilt(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 969#define ICameraControl_get_PanTilt(This,pPanValue,pTiltValue,pFlags) (This)->lpVtbl->get_PanTilt(This,pPanValue,pTiltValue,pFlags)
 970#define ICameraControl_put_PanTilt(This,PanValue,TiltValue,Flags) (This)->lpVtbl->put_PanTilt(This,PanValue,TiltValue,Flags)
 971#define ICameraControl_get_Roll(This,pValue,pFlags) (This)->lpVtbl->get_Roll(This,pValue,pFlags)
 972#define ICameraControl_put_Roll(This,Value,Flags) (This)->lpVtbl->put_Roll(This,Value,Flags)
 973#define ICameraControl_getRange_Roll(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Roll(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 974#define ICameraControl_get_ExposureRelative(This,pValue,pFlags) (This)->lpVtbl->get_ExposureRelative(This,pValue,pFlags)
 975#define ICameraControl_put_ExposureRelative(This,Value,Flags) (This)->lpVtbl->put_ExposureRelative(This,Value,Flags)
 976#define ICameraControl_getRange_ExposureRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_ExposureRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 977#define ICameraControl_get_FocusRelative(This,pValue,pFlags) (This)->lpVtbl->get_FocusRelative(This,pValue,pFlags)
 978#define ICameraControl_put_FocusRelative(This,Value,Flags) (This)->lpVtbl->put_FocusRelative(This,Value,Flags)
 979#define ICameraControl_getRange_FocusRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_FocusRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 980#define ICameraControl_get_IrisRelative(This,pValue,pFlags) (This)->lpVtbl->get_IrisRelative(This,pValue,pFlags)
 981#define ICameraControl_put_IrisRelative(This,Value,Flags) (This)->lpVtbl->put_IrisRelative(This,Value,Flags)
 982#define ICameraControl_getRange_IrisRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_IrisRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 983#define ICameraControl_get_ZoomRelative(This,pValue,pFlags) (This)->lpVtbl->get_ZoomRelative(This,pValue,pFlags)
 984#define ICameraControl_put_ZoomRelative(This,Value,Flags) (This)->lpVtbl->put_ZoomRelative(This,Value,Flags)
 985#define ICameraControl_getRange_ZoomRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_ZoomRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 986#define ICameraControl_get_PanRelative(This,pValue,pFlags) (This)->lpVtbl->get_PanRelative(This,pValue,pFlags)
 987#define ICameraControl_put_PanRelative(This,Value,Flags) (This)->lpVtbl->put_PanRelative(This,Value,Flags)
 988#define ICameraControl_get_TiltRelative(This,pValue,pFlags) (This)->lpVtbl->get_TiltRelative(This,pValue,pFlags)
 989#define ICameraControl_put_TiltRelative(This,Value,Flags) (This)->lpVtbl->put_TiltRelative(This,Value,Flags)
 990#define ICameraControl_getRange_TiltRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_TiltRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 991#define ICameraControl_get_PanTiltRelative(This,pPanValue,pTiltValue,pFlags) (This)->lpVtbl->get_PanTiltRelative(This,pPanValue,pTiltValue,pFlags)
 992#define ICameraControl_put_PanTiltRelative(This,PanValue,TiltValue,Flags) (This)->lpVtbl->put_PanTiltRelative(This,PanValue,TiltValue,Flags)
 993#define ICameraControl_getRange_PanRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_PanRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 994#define ICameraControl_get_RollRelative(This,pValue,pFlags) (This)->lpVtbl->get_RollRelative(This,pValue,pFlags)
 995#define ICameraControl_put_RollRelative(This,Value,Flags) (This)->lpVtbl->put_RollRelative(This,Value,Flags)
 996#define ICameraControl_getRange_RollRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_RollRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
 997#define ICameraControl_get_ScanMode(This,pValue,pFlags) (This)->lpVtbl->get_ScanMode(This,pValue,pFlags)
 998#define ICameraControl_put_ScanMode(This,Value,Flags) (This)->lpVtbl->put_ScanMode(This,Value,Flags)
 999#define ICameraControl_get_PrivacyMode(This,pValue,pFlags) (This)->lpVtbl->get_PrivacyMode(This,pValue,pFlags)
1000#define ICameraControl_put_PrivacyMode(This,Value,Flags) (This)->lpVtbl->put_PrivacyMode(This,Value,Flags)
1001#else
1002/*** IUnknown methods ***/
1003static inline HRESULT ICameraControl_QueryInterface(ICameraControl* This,REFIID riid,void **ppvObject) {
1004    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1005}
1006static inline ULONG ICameraControl_AddRef(ICameraControl* This) {
1007    return This->lpVtbl->AddRef(This);
1008}
1009static inline ULONG ICameraControl_Release(ICameraControl* This) {
1010    return This->lpVtbl->Release(This);
1011}
1012/*** ICameraControl methods ***/
1013static inline HRESULT ICameraControl_get_Exposure(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1014    return This->lpVtbl->get_Exposure(This,pValue,pFlags);
1015}
1016static inline HRESULT ICameraControl_put_Exposure(ICameraControl* This,LONG Value,LONG Flags) {
1017    return This->lpVtbl->put_Exposure(This,Value,Flags);
1018}
1019static inline HRESULT ICameraControl_getRange_Exposure(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1020    return This->lpVtbl->getRange_Exposure(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1021}
1022static inline HRESULT ICameraControl_get_Focus(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1023    return This->lpVtbl->get_Focus(This,pValue,pFlags);
1024}
1025static inline HRESULT ICameraControl_put_Focus(ICameraControl* This,LONG Value,LONG Flags) {
1026    return This->lpVtbl->put_Focus(This,Value,Flags);
1027}
1028static inline HRESULT ICameraControl_getRange_Focus(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1029    return This->lpVtbl->getRange_Focus(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1030}
1031static inline HRESULT ICameraControl_get_Iris(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1032    return This->lpVtbl->get_Iris(This,pValue,pFlags);
1033}
1034static inline HRESULT ICameraControl_put_Iris(ICameraControl* This,LONG Value,LONG Flags) {
1035    return This->lpVtbl->put_Iris(This,Value,Flags);
1036}
1037static inline HRESULT ICameraControl_getRange_Iris(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1038    return This->lpVtbl->getRange_Iris(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1039}
1040static inline HRESULT ICameraControl_get_Zoom(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1041    return This->lpVtbl->get_Zoom(This,pValue,pFlags);
1042}
1043static inline HRESULT ICameraControl_put_Zoom(ICameraControl* This,LONG Value,LONG Flags) {
1044    return This->lpVtbl->put_Zoom(This,Value,Flags);
1045}
1046static inline HRESULT ICameraControl_getRange_Zoom(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1047    return This->lpVtbl->getRange_Zoom(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1048}
1049static inline HRESULT ICameraControl_get_FocalLengths(ICameraControl* This,LONG *plOcularFocalLength,LONG *plObjectiveFocalLengthMin,LONG *plObjectiveFocalLengthMax) {
1050    return This->lpVtbl->get_FocalLengths(This,plOcularFocalLength,plObjectiveFocalLengthMin,plObjectiveFocalLengthMax);
1051}
1052static inline HRESULT ICameraControl_get_Pan(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1053    return This->lpVtbl->get_Pan(This,pValue,pFlags);
1054}
1055static inline HRESULT ICameraControl_put_Pan(ICameraControl* This,LONG Value,LONG Flags) {
1056    return This->lpVtbl->put_Pan(This,Value,Flags);
1057}
1058static inline HRESULT ICameraControl_getRange_Pan(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1059    return This->lpVtbl->getRange_Pan(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1060}
1061static inline HRESULT ICameraControl_get_Tilt(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1062    return This->lpVtbl->get_Tilt(This,pValue,pFlags);
1063}
1064static inline HRESULT ICameraControl_put_Tilt(ICameraControl* This,LONG Value,LONG Flags) {
1065    return This->lpVtbl->put_Tilt(This,Value,Flags);
1066}
1067static inline HRESULT ICameraControl_getRange_Tilt(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1068    return This->lpVtbl->getRange_Tilt(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1069}
1070static inline HRESULT ICameraControl_get_PanTilt(ICameraControl* This,LONG *pPanValue,LONG *pTiltValue,LONG *pFlags) {
1071    return This->lpVtbl->get_PanTilt(This,pPanValue,pTiltValue,pFlags);
1072}
1073static inline HRESULT ICameraControl_put_PanTilt(ICameraControl* This,LONG PanValue,LONG TiltValue,LONG Flags) {
1074    return This->lpVtbl->put_PanTilt(This,PanValue,TiltValue,Flags);
1075}
1076static inline HRESULT ICameraControl_get_Roll(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1077    return This->lpVtbl->get_Roll(This,pValue,pFlags);
1078}
1079static inline HRESULT ICameraControl_put_Roll(ICameraControl* This,LONG Value,LONG Flags) {
1080    return This->lpVtbl->put_Roll(This,Value,Flags);
1081}
1082static inline HRESULT ICameraControl_getRange_Roll(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1083    return This->lpVtbl->getRange_Roll(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1084}
1085static inline HRESULT ICameraControl_get_ExposureRelative(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1086    return This->lpVtbl->get_ExposureRelative(This,pValue,pFlags);
1087}
1088static inline HRESULT ICameraControl_put_ExposureRelative(ICameraControl* This,LONG Value,LONG Flags) {
1089    return This->lpVtbl->put_ExposureRelative(This,Value,Flags);
1090}
1091static inline HRESULT ICameraControl_getRange_ExposureRelative(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1092    return This->lpVtbl->getRange_ExposureRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1093}
1094static inline HRESULT ICameraControl_get_FocusRelative(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1095    return This->lpVtbl->get_FocusRelative(This,pValue,pFlags);
1096}
1097static inline HRESULT ICameraControl_put_FocusRelative(ICameraControl* This,LONG Value,LONG Flags) {
1098    return This->lpVtbl->put_FocusRelative(This,Value,Flags);
1099}
1100static inline HRESULT ICameraControl_getRange_FocusRelative(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1101    return This->lpVtbl->getRange_FocusRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1102}
1103static inline HRESULT ICameraControl_get_IrisRelative(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1104    return This->lpVtbl->get_IrisRelative(This,pValue,pFlags);
1105}
1106static inline HRESULT ICameraControl_put_IrisRelative(ICameraControl* This,LONG Value,LONG Flags) {
1107    return This->lpVtbl->put_IrisRelative(This,Value,Flags);
1108}
1109static inline HRESULT ICameraControl_getRange_IrisRelative(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1110    return This->lpVtbl->getRange_IrisRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1111}
1112static inline HRESULT ICameraControl_get_ZoomRelative(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1113    return This->lpVtbl->get_ZoomRelative(This,pValue,pFlags);
1114}
1115static inline HRESULT ICameraControl_put_ZoomRelative(ICameraControl* This,LONG Value,LONG Flags) {
1116    return This->lpVtbl->put_ZoomRelative(This,Value,Flags);
1117}
1118static inline HRESULT ICameraControl_getRange_ZoomRelative(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1119    return This->lpVtbl->getRange_ZoomRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1120}
1121static inline HRESULT ICameraControl_get_PanRelative(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1122    return This->lpVtbl->get_PanRelative(This,pValue,pFlags);
1123}
1124static inline HRESULT ICameraControl_put_PanRelative(ICameraControl* This,LONG Value,LONG Flags) {
1125    return This->lpVtbl->put_PanRelative(This,Value,Flags);
1126}
1127static inline HRESULT ICameraControl_get_TiltRelative(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1128    return This->lpVtbl->get_TiltRelative(This,pValue,pFlags);
1129}
1130static inline HRESULT ICameraControl_put_TiltRelative(ICameraControl* This,LONG Value,LONG Flags) {
1131    return This->lpVtbl->put_TiltRelative(This,Value,Flags);
1132}
1133static inline HRESULT ICameraControl_getRange_TiltRelative(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1134    return This->lpVtbl->getRange_TiltRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1135}
1136static inline HRESULT ICameraControl_get_PanTiltRelative(ICameraControl* This,LONG *pPanValue,LONG *pTiltValue,LONG *pFlags) {
1137    return This->lpVtbl->get_PanTiltRelative(This,pPanValue,pTiltValue,pFlags);
1138}
1139static inline HRESULT ICameraControl_put_PanTiltRelative(ICameraControl* This,LONG PanValue,LONG TiltValue,LONG Flags) {
1140    return This->lpVtbl->put_PanTiltRelative(This,PanValue,TiltValue,Flags);
1141}
1142static inline HRESULT ICameraControl_getRange_PanRelative(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1143    return This->lpVtbl->getRange_PanRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1144}
1145static inline HRESULT ICameraControl_get_RollRelative(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1146    return This->lpVtbl->get_RollRelative(This,pValue,pFlags);
1147}
1148static inline HRESULT ICameraControl_put_RollRelative(ICameraControl* This,LONG Value,LONG Flags) {
1149    return This->lpVtbl->put_RollRelative(This,Value,Flags);
1150}
1151static inline HRESULT ICameraControl_getRange_RollRelative(ICameraControl* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1152    return This->lpVtbl->getRange_RollRelative(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1153}
1154static inline HRESULT ICameraControl_get_ScanMode(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1155    return This->lpVtbl->get_ScanMode(This,pValue,pFlags);
1156}
1157static inline HRESULT ICameraControl_put_ScanMode(ICameraControl* This,LONG Value,LONG Flags) {
1158    return This->lpVtbl->put_ScanMode(This,Value,Flags);
1159}
1160static inline HRESULT ICameraControl_get_PrivacyMode(ICameraControl* This,LONG *pValue,LONG *pFlags) {
1161    return This->lpVtbl->get_PrivacyMode(This,pValue,pFlags);
1162}
1163static inline HRESULT ICameraControl_put_PrivacyMode(ICameraControl* This,LONG Value,LONG Flags) {
1164    return This->lpVtbl->put_PrivacyMode(This,Value,Flags);
1165}
1166#endif
1167#endif
1168
1169#endif
1170
1171
1172#endif  /* __ICameraControl_INTERFACE_DEFINED__ */
1173
1174/*****************************************************************************
1175 * IVideoProcAmp interface
1176 */
1177#ifndef __IVideoProcAmp_INTERFACE_DEFINED__
1178#define __IVideoProcAmp_INTERFACE_DEFINED__
1179
1180DEFINE_GUID(IID_IVideoProcAmp, 0x4050560e, 0x42a7, 0x413a, 0x85,0xc2, 0x09,0x26,0x9a,0x2d,0x0f,0x44);
1181#if defined(__cplusplus) && !defined(CINTERFACE)
1182MIDL_INTERFACE("4050560e-42a7-413a-85c2-09269a2d0f44")
1183IVideoProcAmp : public IUnknown
1184{
1185    virtual HRESULT STDMETHODCALLTYPE get_BacklightCompensation(
1186        LONG *pValue,
1187        LONG *pFlags) = 0;
1188
1189    virtual HRESULT STDMETHODCALLTYPE put_BacklightCompensation(
1190        LONG Value,
1191        LONG Flags) = 0;
1192
1193    virtual HRESULT STDMETHODCALLTYPE getRange_BacklightCompensation(
1194        LONG *pMin,
1195        LONG *pMax,
1196        LONG *pSteppingDelta,
1197        LONG *pDefault,
1198        LONG *pCapsFlag) = 0;
1199
1200    virtual HRESULT STDMETHODCALLTYPE get_Brightness(
1201        LONG *pValue,
1202        LONG *pFlags) = 0;
1203
1204    virtual HRESULT STDMETHODCALLTYPE put_Brightness(
1205        LONG Value,
1206        LONG Flags) = 0;
1207
1208    virtual HRESULT STDMETHODCALLTYPE getRange_Brightness(
1209        LONG *pMin,
1210        LONG *pMax,
1211        LONG *pSteppingDelta,
1212        LONG *pDefault,
1213        LONG *pCapsFlag) = 0;
1214
1215    virtual HRESULT STDMETHODCALLTYPE get_ColorEnable(
1216        LONG *pValue,
1217        LONG *pFlags) = 0;
1218
1219    virtual HRESULT STDMETHODCALLTYPE put_ColorEnable(
1220        LONG Value,
1221        LONG Flags) = 0;
1222
1223    virtual HRESULT STDMETHODCALLTYPE getRange_ColorEnable(
1224        LONG *pMin,
1225        LONG *pMax,
1226        LONG *pSteppingDelta,
1227        LONG *pDefault,
1228        LONG *pCapsFlag) = 0;
1229
1230    virtual HRESULT STDMETHODCALLTYPE get_Contrast(
1231        LONG *pValue,
1232        LONG *pFlags) = 0;
1233
1234    virtual HRESULT STDMETHODCALLTYPE put_Contrast(
1235        LONG Value,
1236        LONG Flags) = 0;
1237
1238    virtual HRESULT STDMETHODCALLTYPE getRange_Contrast(
1239        LONG *pMin,
1240        LONG *pMax,
1241        LONG *pSteppingDelta,
1242        LONG *pDefault,
1243        LONG *pCapsFlag) = 0;
1244
1245    virtual HRESULT STDMETHODCALLTYPE get_Gamma(
1246        LONG *pValue,
1247        LONG *pFlags) = 0;
1248
1249    virtual HRESULT STDMETHODCALLTYPE put_Gamma(
1250        LONG Value,
1251        LONG Flags) = 0;
1252
1253    virtual HRESULT STDMETHODCALLTYPE getRange_Gamma(
1254        LONG *pMin,
1255        LONG *pMax,
1256        LONG *pSteppingDelta,
1257        LONG *pDefault,
1258        LONG *pCapsFlag) = 0;
1259
1260    virtual HRESULT STDMETHODCALLTYPE get_Saturation(
1261        LONG *pValue,
1262        LONG *pFlags) = 0;
1263
1264    virtual HRESULT STDMETHODCALLTYPE put_Saturation(
1265        LONG Value,
1266        LONG Flags) = 0;
1267
1268    virtual HRESULT STDMETHODCALLTYPE getRange_Saturation(
1269        LONG *pMin,
1270        LONG *pMax,
1271        LONG *pSteppingDelta,
1272        LONG *pDefault,
1273        LONG *pCapsFlag) = 0;
1274
1275    virtual HRESULT STDMETHODCALLTYPE get_Sharpness(
1276        LONG *pValue,
1277        LONG *pFlags) = 0;
1278
1279    virtual HRESULT STDMETHODCALLTYPE put_Sharpness(
1280        LONG Value,
1281        LONG Flags) = 0;
1282
1283    virtual HRESULT STDMETHODCALLTYPE getRange_Sharpness(
1284        LONG *pMin,
1285        LONG *pMax,
1286        LONG *pSteppingDelta,
1287        LONG *pDefault,
1288        LONG *pCapsFlag) = 0;
1289
1290    virtual HRESULT STDMETHODCALLTYPE get_WhiteBalance(
1291        LONG *pValue,
1292        LONG *pFlags) = 0;
1293
1294    virtual HRESULT STDMETHODCALLTYPE put_WhiteBalance(
1295        LONG Value,
1296        LONG Flags) = 0;
1297
1298    virtual HRESULT STDMETHODCALLTYPE getRange_WhiteBalance(
1299        LONG *pMin,
1300        LONG *pMax,
1301        LONG *pSteppingDelta,
1302        LONG *pDefault,
1303        LONG *pCapsFlag) = 0;
1304
1305    virtual HRESULT STDMETHODCALLTYPE get_Gain(
1306        LONG *pValue,
1307        LONG *pFlags) = 0;
1308
1309    virtual HRESULT STDMETHODCALLTYPE put_Gain(
1310        LONG Value,
1311        LONG Flags) = 0;
1312
1313    virtual HRESULT STDMETHODCALLTYPE getRange_Gain(
1314        LONG *pMin,
1315        LONG *pMax,
1316        LONG *pSteppingDelta,
1317        LONG *pDefault,
1318        LONG *pCapsFlag) = 0;
1319
1320    virtual HRESULT STDMETHODCALLTYPE get_Hue(
1321        LONG *pValue,
1322        LONG *pFlags) = 0;
1323
1324    virtual HRESULT STDMETHODCALLTYPE put_Hue(
1325        LONG Value,
1326        LONG Flags) = 0;
1327
1328    virtual HRESULT STDMETHODCALLTYPE getRange_Hue(
1329        LONG *pMin,
1330        LONG *pMax,
1331        LONG *pSteppingDelta,
1332        LONG *pDefault,
1333        LONG *pCapsFlag) = 0;
1334
1335    virtual HRESULT STDMETHODCALLTYPE get_DigitalMultiplier(
1336        LONG *pValue,
1337        LONG *pFlags) = 0;
1338
1339    virtual HRESULT STDMETHODCALLTYPE put_DigitalMultiplier(
1340        LONG Value,
1341        LONG Flags) = 0;
1342
1343    virtual HRESULT STDMETHODCALLTYPE getRange_DigitalMultiplier(
1344        LONG *pMin,
1345        LONG *pMax,
1346        LONG *pSteppingDelta,
1347        LONG *pDefault,
1348        LONG *pCapsFlag) = 0;
1349
1350    virtual HRESULT STDMETHODCALLTYPE get_PowerlineFrequency(
1351        LONG *pValue,
1352        LONG *pFlags) = 0;
1353
1354    virtual HRESULT STDMETHODCALLTYPE put_PowerlineFrequency(
1355        LONG Value,
1356        LONG Flags) = 0;
1357
1358    virtual HRESULT STDMETHODCALLTYPE getRange_PowerlineFrequency(
1359        LONG *pMin,
1360        LONG *pMax,
1361        LONG *pSteppingDelta,
1362        LONG *pDefault,
1363        LONG *pCapsFlag) = 0;
1364
1365    virtual HRESULT STDMETHODCALLTYPE get_WhiteBalanceComponent(
1366        LONG *pValue1,
1367        LONG *pValue2,
1368        LONG *pFlags) = 0;
1369
1370    virtual HRESULT STDMETHODCALLTYPE put_WhiteBalanceComponent(
1371        LONG Value1,
1372        LONG Value2,
1373        LONG Flags) = 0;
1374
1375    virtual HRESULT STDMETHODCALLTYPE getRange_WhiteBalanceComponent(
1376        LONG *pMin,
1377        LONG *pMax,
1378        LONG *pSteppingDelta,
1379        LONG *pDefault,
1380        LONG *pCapsFlag) = 0;
1381
1382};
1383#ifdef __CRT_UUID_DECL
1384__CRT_UUID_DECL(IVideoProcAmp, 0x4050560e, 0x42a7, 0x413a, 0x85,0xc2, 0x09,0x26,0x9a,0x2d,0x0f,0x44)
1385#endif
1386#else
1387typedef struct IVideoProcAmpVtbl {
1388    BEGIN_INTERFACE
1389
1390    /*** IUnknown methods ***/
1391    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1392        IVideoProcAmp *This,
1393        REFIID riid,
1394        void **ppvObject);
1395
1396    ULONG (STDMETHODCALLTYPE *AddRef)(
1397        IVideoProcAmp *This);
1398
1399    ULONG (STDMETHODCALLTYPE *Release)(
1400        IVideoProcAmp *This);
1401
1402    /*** IVideoProcAmp methods ***/
1403    HRESULT (STDMETHODCALLTYPE *get_BacklightCompensation)(
1404        IVideoProcAmp *This,
1405        LONG *pValue,
1406        LONG *pFlags);
1407
1408    HRESULT (STDMETHODCALLTYPE *put_BacklightCompensation)(
1409        IVideoProcAmp *This,
1410        LONG Value,
1411        LONG Flags);
1412
1413    HRESULT (STDMETHODCALLTYPE *getRange_BacklightCompensation)(
1414        IVideoProcAmp *This,
1415        LONG *pMin,
1416        LONG *pMax,
1417        LONG *pSteppingDelta,
1418        LONG *pDefault,
1419        LONG *pCapsFlag);
1420
1421    HRESULT (STDMETHODCALLTYPE *get_Brightness)(
1422        IVideoProcAmp *This,
1423        LONG *pValue,
1424        LONG *pFlags);
1425
1426    HRESULT (STDMETHODCALLTYPE *put_Brightness)(
1427        IVideoProcAmp *This,
1428        LONG Value,
1429        LONG Flags);
1430
1431    HRESULT (STDMETHODCALLTYPE *getRange_Brightness)(
1432        IVideoProcAmp *This,
1433        LONG *pMin,
1434        LONG *pMax,
1435        LONG *pSteppingDelta,
1436        LONG *pDefault,
1437        LONG *pCapsFlag);
1438
1439    HRESULT (STDMETHODCALLTYPE *get_ColorEnable)(
1440        IVideoProcAmp *This,
1441        LONG *pValue,
1442        LONG *pFlags);
1443
1444    HRESULT (STDMETHODCALLTYPE *put_ColorEnable)(
1445        IVideoProcAmp *This,
1446        LONG Value,
1447        LONG Flags);
1448
1449    HRESULT (STDMETHODCALLTYPE *getRange_ColorEnable)(
1450        IVideoProcAmp *This,
1451        LONG *pMin,
1452        LONG *pMax,
1453        LONG *pSteppingDelta,
1454        LONG *pDefault,
1455        LONG *pCapsFlag);
1456
1457    HRESULT (STDMETHODCALLTYPE *get_Contrast)(
1458        IVideoProcAmp *This,
1459        LONG *pValue,
1460        LONG *pFlags);
1461
1462    HRESULT (STDMETHODCALLTYPE *put_Contrast)(
1463        IVideoProcAmp *This,
1464        LONG Value,
1465        LONG Flags);
1466
1467    HRESULT (STDMETHODCALLTYPE *getRange_Contrast)(
1468        IVideoProcAmp *This,
1469        LONG *pMin,
1470        LONG *pMax,
1471        LONG *pSteppingDelta,
1472        LONG *pDefault,
1473        LONG *pCapsFlag);
1474
1475    HRESULT (STDMETHODCALLTYPE *get_Gamma)(
1476        IVideoProcAmp *This,
1477        LONG *pValue,
1478        LONG *pFlags);
1479
1480    HRESULT (STDMETHODCALLTYPE *put_Gamma)(
1481        IVideoProcAmp *This,
1482        LONG Value,
1483        LONG Flags);
1484
1485    HRESULT (STDMETHODCALLTYPE *getRange_Gamma)(
1486        IVideoProcAmp *This,
1487        LONG *pMin,
1488        LONG *pMax,
1489        LONG *pSteppingDelta,
1490        LONG *pDefault,
1491        LONG *pCapsFlag);
1492
1493    HRESULT (STDMETHODCALLTYPE *get_Saturation)(
1494        IVideoProcAmp *This,
1495        LONG *pValue,
1496        LONG *pFlags);
1497
1498    HRESULT (STDMETHODCALLTYPE *put_Saturation)(
1499        IVideoProcAmp *This,
1500        LONG Value,
1501        LONG Flags);
1502
1503    HRESULT (STDMETHODCALLTYPE *getRange_Saturation)(
1504        IVideoProcAmp *This,
1505        LONG *pMin,
1506        LONG *pMax,
1507        LONG *pSteppingDelta,
1508        LONG *pDefault,
1509        LONG *pCapsFlag);
1510
1511    HRESULT (STDMETHODCALLTYPE *get_Sharpness)(
1512        IVideoProcAmp *This,
1513        LONG *pValue,
1514        LONG *pFlags);
1515
1516    HRESULT (STDMETHODCALLTYPE *put_Sharpness)(
1517        IVideoProcAmp *This,
1518        LONG Value,
1519        LONG Flags);
1520
1521    HRESULT (STDMETHODCALLTYPE *getRange_Sharpness)(
1522        IVideoProcAmp *This,
1523        LONG *pMin,
1524        LONG *pMax,
1525        LONG *pSteppingDelta,
1526        LONG *pDefault,
1527        LONG *pCapsFlag);
1528
1529    HRESULT (STDMETHODCALLTYPE *get_WhiteBalance)(
1530        IVideoProcAmp *This,
1531        LONG *pValue,
1532        LONG *pFlags);
1533
1534    HRESULT (STDMETHODCALLTYPE *put_WhiteBalance)(
1535        IVideoProcAmp *This,
1536        LONG Value,
1537        LONG Flags);
1538
1539    HRESULT (STDMETHODCALLTYPE *getRange_WhiteBalance)(
1540        IVideoProcAmp *This,
1541        LONG *pMin,
1542        LONG *pMax,
1543        LONG *pSteppingDelta,
1544        LONG *pDefault,
1545        LONG *pCapsFlag);
1546
1547    HRESULT (STDMETHODCALLTYPE *get_Gain)(
1548        IVideoProcAmp *This,
1549        LONG *pValue,
1550        LONG *pFlags);
1551
1552    HRESULT (STDMETHODCALLTYPE *put_Gain)(
1553        IVideoProcAmp *This,
1554        LONG Value,
1555        LONG Flags);
1556
1557    HRESULT (STDMETHODCALLTYPE *getRange_Gain)(
1558        IVideoProcAmp *This,
1559        LONG *pMin,
1560        LONG *pMax,
1561        LONG *pSteppingDelta,
1562        LONG *pDefault,
1563        LONG *pCapsFlag);
1564
1565    HRESULT (STDMETHODCALLTYPE *get_Hue)(
1566        IVideoProcAmp *This,
1567        LONG *pValue,
1568        LONG *pFlags);
1569
1570    HRESULT (STDMETHODCALLTYPE *put_Hue)(
1571        IVideoProcAmp *This,
1572        LONG Value,
1573        LONG Flags);
1574
1575    HRESULT (STDMETHODCALLTYPE *getRange_Hue)(
1576        IVideoProcAmp *This,
1577        LONG *pMin,
1578        LONG *pMax,
1579        LONG *pSteppingDelta,
1580        LONG *pDefault,
1581        LONG *pCapsFlag);
1582
1583    HRESULT (STDMETHODCALLTYPE *get_DigitalMultiplier)(
1584        IVideoProcAmp *This,
1585        LONG *pValue,
1586        LONG *pFlags);
1587
1588    HRESULT (STDMETHODCALLTYPE *put_DigitalMultiplier)(
1589        IVideoProcAmp *This,
1590        LONG Value,
1591        LONG Flags);
1592
1593    HRESULT (STDMETHODCALLTYPE *getRange_DigitalMultiplier)(
1594        IVideoProcAmp *This,
1595        LONG *pMin,
1596        LONG *pMax,
1597        LONG *pSteppingDelta,
1598        LONG *pDefault,
1599        LONG *pCapsFlag);
1600
1601    HRESULT (STDMETHODCALLTYPE *get_PowerlineFrequency)(
1602        IVideoProcAmp *This,
1603        LONG *pValue,
1604        LONG *pFlags);
1605
1606    HRESULT (STDMETHODCALLTYPE *put_PowerlineFrequency)(
1607        IVideoProcAmp *This,
1608        LONG Value,
1609        LONG Flags);
1610
1611    HRESULT (STDMETHODCALLTYPE *getRange_PowerlineFrequency)(
1612        IVideoProcAmp *This,
1613        LONG *pMin,
1614        LONG *pMax,
1615        LONG *pSteppingDelta,
1616        LONG *pDefault,
1617        LONG *pCapsFlag);
1618
1619    HRESULT (STDMETHODCALLTYPE *get_WhiteBalanceComponent)(
1620        IVideoProcAmp *This,
1621        LONG *pValue1,
1622        LONG *pValue2,
1623        LONG *pFlags);
1624
1625    HRESULT (STDMETHODCALLTYPE *put_WhiteBalanceComponent)(
1626        IVideoProcAmp *This,
1627        LONG Value1,
1628        LONG Value2,
1629        LONG Flags);
1630
1631    HRESULT (STDMETHODCALLTYPE *getRange_WhiteBalanceComponent)(
1632        IVideoProcAmp *This,
1633        LONG *pMin,
1634        LONG *pMax,
1635        LONG *pSteppingDelta,
1636        LONG *pDefault,
1637        LONG *pCapsFlag);
1638
1639    END_INTERFACE
1640} IVideoProcAmpVtbl;
1641
1642interface IVideoProcAmp {
1643    CONST_VTBL IVideoProcAmpVtbl* lpVtbl;
1644};
1645
1646#ifdef COBJMACROS
1647#ifndef WIDL_C_INLINE_WRAPPERS
1648/*** IUnknown methods ***/
1649#define IVideoProcAmp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1650#define IVideoProcAmp_AddRef(This) (This)->lpVtbl->AddRef(This)
1651#define IVideoProcAmp_Release(This) (This)->lpVtbl->Release(This)
1652/*** IVideoProcAmp methods ***/
1653#define IVideoProcAmp_get_BacklightCompensation(This,pValue,pFlags) (This)->lpVtbl->get_BacklightCompensation(This,pValue,pFlags)
1654#define IVideoProcAmp_put_BacklightCompensation(This,Value,Flags) (This)->lpVtbl->put_BacklightCompensation(This,Value,Flags)
1655#define IVideoProcAmp_getRange_BacklightCompensation(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_BacklightCompensation(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1656#define IVideoProcAmp_get_Brightness(This,pValue,pFlags) (This)->lpVtbl->get_Brightness(This,pValue,pFlags)
1657#define IVideoProcAmp_put_Brightness(This,Value,Flags) (This)->lpVtbl->put_Brightness(This,Value,Flags)
1658#define IVideoProcAmp_getRange_Brightness(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Brightness(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1659#define IVideoProcAmp_get_ColorEnable(This,pValue,pFlags) (This)->lpVtbl->get_ColorEnable(This,pValue,pFlags)
1660#define IVideoProcAmp_put_ColorEnable(This,Value,Flags) (This)->lpVtbl->put_ColorEnable(This,Value,Flags)
1661#define IVideoProcAmp_getRange_ColorEnable(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_ColorEnable(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1662#define IVideoProcAmp_get_Contrast(This,pValue,pFlags) (This)->lpVtbl->get_Contrast(This,pValue,pFlags)
1663#define IVideoProcAmp_put_Contrast(This,Value,Flags) (This)->lpVtbl->put_Contrast(This,Value,Flags)
1664#define IVideoProcAmp_getRange_Contrast(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Contrast(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1665#define IVideoProcAmp_get_Gamma(This,pValue,pFlags) (This)->lpVtbl->get_Gamma(This,pValue,pFlags)
1666#define IVideoProcAmp_put_Gamma(This,Value,Flags) (This)->lpVtbl->put_Gamma(This,Value,Flags)
1667#define IVideoProcAmp_getRange_Gamma(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Gamma(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1668#define IVideoProcAmp_get_Saturation(This,pValue,pFlags) (This)->lpVtbl->get_Saturation(This,pValue,pFlags)
1669#define IVideoProcAmp_put_Saturation(This,Value,Flags) (This)->lpVtbl->put_Saturation(This,Value,Flags)
1670#define IVideoProcAmp_getRange_Saturation(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Saturation(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1671#define IVideoProcAmp_get_Sharpness(This,pValue,pFlags) (This)->lpVtbl->get_Sharpness(This,pValue,pFlags)
1672#define IVideoProcAmp_put_Sharpness(This,Value,Flags) (This)->lpVtbl->put_Sharpness(This,Value,Flags)
1673#define IVideoProcAmp_getRange_Sharpness(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Sharpness(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1674#define IVideoProcAmp_get_WhiteBalance(This,pValue,pFlags) (This)->lpVtbl->get_WhiteBalance(This,pValue,pFlags)
1675#define IVideoProcAmp_put_WhiteBalance(This,Value,Flags) (This)->lpVtbl->put_WhiteBalance(This,Value,Flags)
1676#define IVideoProcAmp_getRange_WhiteBalance(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_WhiteBalance(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1677#define IVideoProcAmp_get_Gain(This,pValue,pFlags) (This)->lpVtbl->get_Gain(This,pValue,pFlags)
1678#define IVideoProcAmp_put_Gain(This,Value,Flags) (This)->lpVtbl->put_Gain(This,Value,Flags)
1679#define IVideoProcAmp_getRange_Gain(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Gain(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1680#define IVideoProcAmp_get_Hue(This,pValue,pFlags) (This)->lpVtbl->get_Hue(This,pValue,pFlags)
1681#define IVideoProcAmp_put_Hue(This,Value,Flags) (This)->lpVtbl->put_Hue(This,Value,Flags)
1682#define IVideoProcAmp_getRange_Hue(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_Hue(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1683#define IVideoProcAmp_get_DigitalMultiplier(This,pValue,pFlags) (This)->lpVtbl->get_DigitalMultiplier(This,pValue,pFlags)
1684#define IVideoProcAmp_put_DigitalMultiplier(This,Value,Flags) (This)->lpVtbl->put_DigitalMultiplier(This,Value,Flags)
1685#define IVideoProcAmp_getRange_DigitalMultiplier(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_DigitalMultiplier(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1686#define IVideoProcAmp_get_PowerlineFrequency(This,pValue,pFlags) (This)->lpVtbl->get_PowerlineFrequency(This,pValue,pFlags)
1687#define IVideoProcAmp_put_PowerlineFrequency(This,Value,Flags) (This)->lpVtbl->put_PowerlineFrequency(This,Value,Flags)
1688#define IVideoProcAmp_getRange_PowerlineFrequency(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_PowerlineFrequency(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1689#define IVideoProcAmp_get_WhiteBalanceComponent(This,pValue1,pValue2,pFlags) (This)->lpVtbl->get_WhiteBalanceComponent(This,pValue1,pValue2,pFlags)
1690#define IVideoProcAmp_put_WhiteBalanceComponent(This,Value1,Value2,Flags) (This)->lpVtbl->put_WhiteBalanceComponent(This,Value1,Value2,Flags)
1691#define IVideoProcAmp_getRange_WhiteBalanceComponent(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag) (This)->lpVtbl->getRange_WhiteBalanceComponent(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag)
1692#else
1693/*** IUnknown methods ***/
1694static inline HRESULT IVideoProcAmp_QueryInterface(IVideoProcAmp* This,REFIID riid,void **ppvObject) {
1695    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1696}
1697static inline ULONG IVideoProcAmp_AddRef(IVideoProcAmp* This) {
1698    return This->lpVtbl->AddRef(This);
1699}
1700static inline ULONG IVideoProcAmp_Release(IVideoProcAmp* This) {
1701    return This->lpVtbl->Release(This);
1702}
1703/*** IVideoProcAmp methods ***/
1704static inline HRESULT IVideoProcAmp_get_BacklightCompensation(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1705    return This->lpVtbl->get_BacklightCompensation(This,pValue,pFlags);
1706}
1707static inline HRESULT IVideoProcAmp_put_BacklightCompensation(IVideoProcAmp* This,LONG Value,LONG Flags) {
1708    return This->lpVtbl->put_BacklightCompensation(This,Value,Flags);
1709}
1710static inline HRESULT IVideoProcAmp_getRange_BacklightCompensation(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1711    return This->lpVtbl->getRange_BacklightCompensation(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1712}
1713static inline HRESULT IVideoProcAmp_get_Brightness(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1714    return This->lpVtbl->get_Brightness(This,pValue,pFlags);
1715}
1716static inline HRESULT IVideoProcAmp_put_Brightness(IVideoProcAmp* This,LONG Value,LONG Flags) {
1717    return This->lpVtbl->put_Brightness(This,Value,Flags);
1718}
1719static inline HRESULT IVideoProcAmp_getRange_Brightness(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1720    return This->lpVtbl->getRange_Brightness(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1721}
1722static inline HRESULT IVideoProcAmp_get_ColorEnable(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1723    return This->lpVtbl->get_ColorEnable(This,pValue,pFlags);
1724}
1725static inline HRESULT IVideoProcAmp_put_ColorEnable(IVideoProcAmp* This,LONG Value,LONG Flags) {
1726    return This->lpVtbl->put_ColorEnable(This,Value,Flags);
1727}
1728static inline HRESULT IVideoProcAmp_getRange_ColorEnable(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1729    return This->lpVtbl->getRange_ColorEnable(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1730}
1731static inline HRESULT IVideoProcAmp_get_Contrast(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1732    return This->lpVtbl->get_Contrast(This,pValue,pFlags);
1733}
1734static inline HRESULT IVideoProcAmp_put_Contrast(IVideoProcAmp* This,LONG Value,LONG Flags) {
1735    return This->lpVtbl->put_Contrast(This,Value,Flags);
1736}
1737static inline HRESULT IVideoProcAmp_getRange_Contrast(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1738    return This->lpVtbl->getRange_Contrast(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1739}
1740static inline HRESULT IVideoProcAmp_get_Gamma(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1741    return This->lpVtbl->get_Gamma(This,pValue,pFlags);
1742}
1743static inline HRESULT IVideoProcAmp_put_Gamma(IVideoProcAmp* This,LONG Value,LONG Flags) {
1744    return This->lpVtbl->put_Gamma(This,Value,Flags);
1745}
1746static inline HRESULT IVideoProcAmp_getRange_Gamma(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1747    return This->lpVtbl->getRange_Gamma(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1748}
1749static inline HRESULT IVideoProcAmp_get_Saturation(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1750    return This->lpVtbl->get_Saturation(This,pValue,pFlags);
1751}
1752static inline HRESULT IVideoProcAmp_put_Saturation(IVideoProcAmp* This,LONG Value,LONG Flags) {
1753    return This->lpVtbl->put_Saturation(This,Value,Flags);
1754}
1755static inline HRESULT IVideoProcAmp_getRange_Saturation(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1756    return This->lpVtbl->getRange_Saturation(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1757}
1758static inline HRESULT IVideoProcAmp_get_Sharpness(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1759    return This->lpVtbl->get_Sharpness(This,pValue,pFlags);
1760}
1761static inline HRESULT IVideoProcAmp_put_Sharpness(IVideoProcAmp* This,LONG Value,LONG Flags) {
1762    return This->lpVtbl->put_Sharpness(This,Value,Flags);
1763}
1764static inline HRESULT IVideoProcAmp_getRange_Sharpness(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1765    return This->lpVtbl->getRange_Sharpness(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1766}
1767static inline HRESULT IVideoProcAmp_get_WhiteBalance(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1768    return This->lpVtbl->get_WhiteBalance(This,pValue,pFlags);
1769}
1770static inline HRESULT IVideoProcAmp_put_WhiteBalance(IVideoProcAmp* This,LONG Value,LONG Flags) {
1771    return This->lpVtbl->put_WhiteBalance(This,Value,Flags);
1772}
1773static inline HRESULT IVideoProcAmp_getRange_WhiteBalance(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1774    return This->lpVtbl->getRange_WhiteBalance(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1775}
1776static inline HRESULT IVideoProcAmp_get_Gain(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1777    return This->lpVtbl->get_Gain(This,pValue,pFlags);
1778}
1779static inline HRESULT IVideoProcAmp_put_Gain(IVideoProcAmp* This,LONG Value,LONG Flags) {
1780    return This->lpVtbl->put_Gain(This,Value,Flags);
1781}
1782static inline HRESULT IVideoProcAmp_getRange_Gain(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1783    return This->lpVtbl->getRange_Gain(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1784}
1785static inline HRESULT IVideoProcAmp_get_Hue(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1786    return This->lpVtbl->get_Hue(This,pValue,pFlags);
1787}
1788static inline HRESULT IVideoProcAmp_put_Hue(IVideoProcAmp* This,LONG Value,LONG Flags) {
1789    return This->lpVtbl->put_Hue(This,Value,Flags);
1790}
1791static inline HRESULT IVideoProcAmp_getRange_Hue(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1792    return This->lpVtbl->getRange_Hue(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1793}
1794static inline HRESULT IVideoProcAmp_get_DigitalMultiplier(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1795    return This->lpVtbl->get_DigitalMultiplier(This,pValue,pFlags);
1796}
1797static inline HRESULT IVideoProcAmp_put_DigitalMultiplier(IVideoProcAmp* This,LONG Value,LONG Flags) {
1798    return This->lpVtbl->put_DigitalMultiplier(This,Value,Flags);
1799}
1800static inline HRESULT IVideoProcAmp_getRange_DigitalMultiplier(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1801    return This->lpVtbl->getRange_DigitalMultiplier(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1802}
1803static inline HRESULT IVideoProcAmp_get_PowerlineFrequency(IVideoProcAmp* This,LONG *pValue,LONG *pFlags) {
1804    return This->lpVtbl->get_PowerlineFrequency(This,pValue,pFlags);
1805}
1806static inline HRESULT IVideoProcAmp_put_PowerlineFrequency(IVideoProcAmp* This,LONG Value,LONG Flags) {
1807    return This->lpVtbl->put_PowerlineFrequency(This,Value,Flags);
1808}
1809static inline HRESULT IVideoProcAmp_getRange_PowerlineFrequency(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1810    return This->lpVtbl->getRange_PowerlineFrequency(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1811}
1812static inline HRESULT IVideoProcAmp_get_WhiteBalanceComponent(IVideoProcAmp* This,LONG *pValue1,LONG *pValue2,LONG *pFlags) {
1813    return This->lpVtbl->get_WhiteBalanceComponent(This,pValue1,pValue2,pFlags);
1814}
1815static inline HRESULT IVideoProcAmp_put_WhiteBalanceComponent(IVideoProcAmp* This,LONG Value1,LONG Value2,LONG Flags) {
1816    return This->lpVtbl->put_WhiteBalanceComponent(This,Value1,Value2,Flags);
1817}
1818static inline HRESULT IVideoProcAmp_getRange_WhiteBalanceComponent(IVideoProcAmp* This,LONG *pMin,LONG *pMax,LONG *pSteppingDelta,LONG *pDefault,LONG *pCapsFlag) {
1819    return This->lpVtbl->getRange_WhiteBalanceComponent(This,pMin,pMax,pSteppingDelta,pDefault,pCapsFlag);
1820}
1821#endif
1822#endif
1823
1824#endif
1825
1826
1827#endif  /* __IVideoProcAmp_INTERFACE_DEFINED__ */
1828
1829/*****************************************************************************
1830 * IKsNodeControl interface
1831 */
1832#ifndef __IKsNodeControl_INTERFACE_DEFINED__
1833#define __IKsNodeControl_INTERFACE_DEFINED__
1834
1835DEFINE_GUID(IID_IKsNodeControl, 0x11737c14, 0x24a7, 0x4bb5, 0x81,0xa0, 0x0d,0x00,0x38,0x13,0xb0,0xc4);
1836#if defined(__cplusplus) && !defined(CINTERFACE)
1837MIDL_INTERFACE("11737c14-24a7-4bb5-81a0-0d003813b0c4")
1838IKsNodeControl : public IUnknown
1839{
1840    virtual HRESULT STDMETHODCALLTYPE put_NodeId(
1841        DWORD dwNodeId) = 0;
1842
1843    virtual HRESULT STDMETHODCALLTYPE put_KsControl(
1844        PVOID pKsControl) = 0;
1845
1846};
1847#ifdef __CRT_UUID_DECL
1848__CRT_UUID_DECL(IKsNodeControl, 0x11737c14, 0x24a7, 0x4bb5, 0x81,0xa0, 0x0d,0x00,0x38,0x13,0xb0,0xc4)
1849#endif
1850#else
1851typedef struct IKsNodeControlVtbl {
1852    BEGIN_INTERFACE
1853
1854    /*** IUnknown methods ***/
1855    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1856        IKsNodeControl *This,
1857        REFIID riid,
1858        void **ppvObject);
1859
1860    ULONG (STDMETHODCALLTYPE *AddRef)(
1861        IKsNodeControl *This);
1862
1863    ULONG (STDMETHODCALLTYPE *Release)(
1864        IKsNodeControl *This);
1865
1866    /*** IKsNodeControl methods ***/
1867    HRESULT (STDMETHODCALLTYPE *put_NodeId)(
1868        IKsNodeControl *This,
1869        DWORD dwNodeId);
1870
1871    HRESULT (STDMETHODCALLTYPE *put_KsControl)(
1872        IKsNodeControl *This,
1873        PVOID pKsControl);
1874
1875    END_INTERFACE
1876} IKsNodeControlVtbl;
1877
1878interface IKsNodeControl {
1879    CONST_VTBL IKsNodeControlVtbl* lpVtbl;
1880};
1881
1882#ifdef COBJMACROS
1883#ifndef WIDL_C_INLINE_WRAPPERS
1884/*** IUnknown methods ***/
1885#define IKsNodeControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1886#define IKsNodeControl_AddRef(This) (This)->lpVtbl->AddRef(This)
1887#define IKsNodeControl_Release(This) (This)->lpVtbl->Release(This)
1888/*** IKsNodeControl methods ***/
1889#define IKsNodeControl_put_NodeId(This,dwNodeId) (This)->lpVtbl->put_NodeId(This,dwNodeId)
1890#define IKsNodeControl_put_KsControl(This,pKsControl) (This)->lpVtbl->put_KsControl(This,pKsControl)
1891#else
1892/*** IUnknown methods ***/
1893static inline HRESULT IKsNodeControl_QueryInterface(IKsNodeControl* This,REFIID riid,void **ppvObject) {
1894    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1895}
1896static inline ULONG IKsNodeControl_AddRef(IKsNodeControl* This) {
1897    return This->lpVtbl->AddRef(This);
1898}
1899static inline ULONG IKsNodeControl_Release(IKsNodeControl* This) {
1900    return This->lpVtbl->Release(This);
1901}
1902/*** IKsNodeControl methods ***/
1903static inline HRESULT IKsNodeControl_put_NodeId(IKsNodeControl* This,DWORD dwNodeId) {
1904    return This->lpVtbl->put_NodeId(This,dwNodeId);
1905}
1906static inline HRESULT IKsNodeControl_put_KsControl(IKsNodeControl* This,PVOID pKsControl) {
1907    return This->lpVtbl->put_KsControl(This,pKsControl);
1908}
1909#endif
1910#endif
1911
1912#endif
1913
1914
1915#endif  /* __IKsNodeControl_INTERFACE_DEFINED__ */
1916
1917#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
1918/* Begin additional prototypes for all interfaces */
1919
1920
1921/* End additional prototypes */
1922
1923#ifdef __cplusplus
1924}
1925#endif
1926
1927#endif /* __vidcap_h__ */