Control.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:174k
源码类别:

模拟服务器

开发平台:

C/C++

  1.         
  2.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DestinationTop( 
  3.             /* [retval][out] */ long *pDestinationTop) = 0;
  4.         
  5.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DestinationHeight( 
  6.             /* [in] */ long DestinationHeight) = 0;
  7.         
  8.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DestinationHeight( 
  9.             /* [retval][out] */ long *pDestinationHeight) = 0;
  10.         
  11.         virtual HRESULT STDMETHODCALLTYPE SetSourcePosition( 
  12.             /* [in] */ long Left,
  13.             /* [in] */ long Top,
  14.             /* [in] */ long Width,
  15.             /* [in] */ long Height) = 0;
  16.         
  17.         virtual HRESULT STDMETHODCALLTYPE GetSourcePosition( 
  18.             /* [out] */ long *pLeft,
  19.             /* [out] */ long *pTop,
  20.             /* [out] */ long *pWidth,
  21.             /* [out] */ long *pHeight) = 0;
  22.         
  23.         virtual HRESULT STDMETHODCALLTYPE SetDefaultSourcePosition( void) = 0;
  24.         
  25.         virtual HRESULT STDMETHODCALLTYPE SetDestinationPosition( 
  26.             /* [in] */ long Left,
  27.             /* [in] */ long Top,
  28.             /* [in] */ long Width,
  29.             /* [in] */ long Height) = 0;
  30.         
  31.         virtual HRESULT STDMETHODCALLTYPE GetDestinationPosition( 
  32.             /* [out] */ long *pLeft,
  33.             /* [out] */ long *pTop,
  34.             /* [out] */ long *pWidth,
  35.             /* [out] */ long *pHeight) = 0;
  36.         
  37.         virtual HRESULT STDMETHODCALLTYPE SetDefaultDestinationPosition( void) = 0;
  38.         
  39.         virtual HRESULT STDMETHODCALLTYPE GetVideoSize( 
  40.             /* [out] */ long *pWidth,
  41.             /* [out] */ long *pHeight) = 0;
  42.         
  43.         virtual HRESULT STDMETHODCALLTYPE GetVideoPaletteEntries( 
  44.             /* [in] */ long StartIndex,
  45.             /* [in] */ long Entries,
  46.             /* [out] */ long *pRetrieved,
  47.             /* [out] */ long *pPalette) = 0;
  48.         
  49.         virtual HRESULT STDMETHODCALLTYPE GetCurrentImage( 
  50.             /* [out][in] */ long *pBufferSize,
  51.             /* [out] */ long *pDIBImage) = 0;
  52.         
  53.         virtual HRESULT STDMETHODCALLTYPE IsUsingDefaultSource( void) = 0;
  54.         
  55.         virtual HRESULT STDMETHODCALLTYPE IsUsingDefaultDestination( void) = 0;
  56.         
  57.     };
  58.     
  59. #else  /* C style interface */
  60.     typedef struct IBasicVideoVtbl
  61.     {
  62.         BEGIN_INTERFACE
  63.         
  64.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  65.             IBasicVideo * This,
  66.             /* [in] */ REFIID riid,
  67.             /* [iid_is][out] */ void **ppvObject);
  68.         
  69.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  70.             IBasicVideo * This);
  71.         
  72.         ULONG ( STDMETHODCALLTYPE *Release )( 
  73.             IBasicVideo * This);
  74.         
  75.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  76.             IBasicVideo * This,
  77.             /* [out] */ UINT *pctinfo);
  78.         
  79.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  80.             IBasicVideo * This,
  81.             /* [in] */ UINT iTInfo,
  82.             /* [in] */ LCID lcid,
  83.             /* [out] */ ITypeInfo **ppTInfo);
  84.         
  85.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  86.             IBasicVideo * This,
  87.             /* [in] */ REFIID riid,
  88.             /* [size_is][in] */ LPOLESTR *rgszNames,
  89.             /* [in] */ UINT cNames,
  90.             /* [in] */ LCID lcid,
  91.             /* [size_is][out] */ DISPID *rgDispId);
  92.         
  93.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  94.             IBasicVideo * This,
  95.             /* [in] */ DISPID dispIdMember,
  96.             /* [in] */ REFIID riid,
  97.             /* [in] */ LCID lcid,
  98.             /* [in] */ WORD wFlags,
  99.             /* [out][in] */ DISPPARAMS *pDispParams,
  100.             /* [out] */ VARIANT *pVarResult,
  101.             /* [out] */ EXCEPINFO *pExcepInfo,
  102.             /* [out] */ UINT *puArgErr);
  103.         
  104.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AvgTimePerFrame )( 
  105.             IBasicVideo * This,
  106.             /* [retval][out] */ REFTIME *pAvgTimePerFrame);
  107.         
  108.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BitRate )( 
  109.             IBasicVideo * This,
  110.             /* [retval][out] */ long *pBitRate);
  111.         
  112.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BitErrorRate )( 
  113.             IBasicVideo * This,
  114.             /* [retval][out] */ long *pBitErrorRate);
  115.         
  116.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VideoWidth )( 
  117.             IBasicVideo * This,
  118.             /* [retval][out] */ long *pVideoWidth);
  119.         
  120.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VideoHeight )( 
  121.             IBasicVideo * This,
  122.             /* [retval][out] */ long *pVideoHeight);
  123.         
  124.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceLeft )( 
  125.             IBasicVideo * This,
  126.             /* [in] */ long SourceLeft);
  127.         
  128.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceLeft )( 
  129.             IBasicVideo * This,
  130.             /* [retval][out] */ long *pSourceLeft);
  131.         
  132.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceWidth )( 
  133.             IBasicVideo * This,
  134.             /* [in] */ long SourceWidth);
  135.         
  136.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceWidth )( 
  137.             IBasicVideo * This,
  138.             /* [retval][out] */ long *pSourceWidth);
  139.         
  140.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceTop )( 
  141.             IBasicVideo * This,
  142.             /* [in] */ long SourceTop);
  143.         
  144.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceTop )( 
  145.             IBasicVideo * This,
  146.             /* [retval][out] */ long *pSourceTop);
  147.         
  148.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceHeight )( 
  149.             IBasicVideo * This,
  150.             /* [in] */ long SourceHeight);
  151.         
  152.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceHeight )( 
  153.             IBasicVideo * This,
  154.             /* [retval][out] */ long *pSourceHeight);
  155.         
  156.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationLeft )( 
  157.             IBasicVideo * This,
  158.             /* [in] */ long DestinationLeft);
  159.         
  160.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationLeft )( 
  161.             IBasicVideo * This,
  162.             /* [retval][out] */ long *pDestinationLeft);
  163.         
  164.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationWidth )( 
  165.             IBasicVideo * This,
  166.             /* [in] */ long DestinationWidth);
  167.         
  168.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationWidth )( 
  169.             IBasicVideo * This,
  170.             /* [retval][out] */ long *pDestinationWidth);
  171.         
  172.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationTop )( 
  173.             IBasicVideo * This,
  174.             /* [in] */ long DestinationTop);
  175.         
  176.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationTop )( 
  177.             IBasicVideo * This,
  178.             /* [retval][out] */ long *pDestinationTop);
  179.         
  180.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationHeight )( 
  181.             IBasicVideo * This,
  182.             /* [in] */ long DestinationHeight);
  183.         
  184.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationHeight )( 
  185.             IBasicVideo * This,
  186.             /* [retval][out] */ long *pDestinationHeight);
  187.         
  188.         HRESULT ( STDMETHODCALLTYPE *SetSourcePosition )( 
  189.             IBasicVideo * This,
  190.             /* [in] */ long Left,
  191.             /* [in] */ long Top,
  192.             /* [in] */ long Width,
  193.             /* [in] */ long Height);
  194.         
  195.         HRESULT ( STDMETHODCALLTYPE *GetSourcePosition )( 
  196.             IBasicVideo * This,
  197.             /* [out] */ long *pLeft,
  198.             /* [out] */ long *pTop,
  199.             /* [out] */ long *pWidth,
  200.             /* [out] */ long *pHeight);
  201.         
  202.         HRESULT ( STDMETHODCALLTYPE *SetDefaultSourcePosition )( 
  203.             IBasicVideo * This);
  204.         
  205.         HRESULT ( STDMETHODCALLTYPE *SetDestinationPosition )( 
  206.             IBasicVideo * This,
  207.             /* [in] */ long Left,
  208.             /* [in] */ long Top,
  209.             /* [in] */ long Width,
  210.             /* [in] */ long Height);
  211.         
  212.         HRESULT ( STDMETHODCALLTYPE *GetDestinationPosition )( 
  213.             IBasicVideo * This,
  214.             /* [out] */ long *pLeft,
  215.             /* [out] */ long *pTop,
  216.             /* [out] */ long *pWidth,
  217.             /* [out] */ long *pHeight);
  218.         
  219.         HRESULT ( STDMETHODCALLTYPE *SetDefaultDestinationPosition )( 
  220.             IBasicVideo * This);
  221.         
  222.         HRESULT ( STDMETHODCALLTYPE *GetVideoSize )( 
  223.             IBasicVideo * This,
  224.             /* [out] */ long *pWidth,
  225.             /* [out] */ long *pHeight);
  226.         
  227.         HRESULT ( STDMETHODCALLTYPE *GetVideoPaletteEntries )( 
  228.             IBasicVideo * This,
  229.             /* [in] */ long StartIndex,
  230.             /* [in] */ long Entries,
  231.             /* [out] */ long *pRetrieved,
  232.             /* [out] */ long *pPalette);
  233.         
  234.         HRESULT ( STDMETHODCALLTYPE *GetCurrentImage )( 
  235.             IBasicVideo * This,
  236.             /* [out][in] */ long *pBufferSize,
  237.             /* [out] */ long *pDIBImage);
  238.         
  239.         HRESULT ( STDMETHODCALLTYPE *IsUsingDefaultSource )( 
  240.             IBasicVideo * This);
  241.         
  242.         HRESULT ( STDMETHODCALLTYPE *IsUsingDefaultDestination )( 
  243.             IBasicVideo * This);
  244.         
  245.         END_INTERFACE
  246.     } IBasicVideoVtbl;
  247.     interface IBasicVideo
  248.     {
  249.         CONST_VTBL struct IBasicVideoVtbl *lpVtbl;
  250.     };
  251.     
  252. #ifdef COBJMACROS
  253. #define IBasicVideo_QueryInterface(This,riid,ppvObject)
  254.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  255. #define IBasicVideo_AddRef(This)
  256.     (This)->lpVtbl -> AddRef(This)
  257. #define IBasicVideo_Release(This)
  258.     (This)->lpVtbl -> Release(This)
  259. #define IBasicVideo_GetTypeInfoCount(This,pctinfo)
  260.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  261. #define IBasicVideo_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  262.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  263. #define IBasicVideo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  264.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  265. #define IBasicVideo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  266.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  267. #define IBasicVideo_get_AvgTimePerFrame(This,pAvgTimePerFrame)
  268.     (This)->lpVtbl -> get_AvgTimePerFrame(This,pAvgTimePerFrame)
  269. #define IBasicVideo_get_BitRate(This,pBitRate)
  270.     (This)->lpVtbl -> get_BitRate(This,pBitRate)
  271. #define IBasicVideo_get_BitErrorRate(This,pBitErrorRate)
  272.     (This)->lpVtbl -> get_BitErrorRate(This,pBitErrorRate)
  273. #define IBasicVideo_get_VideoWidth(This,pVideoWidth)
  274.     (This)->lpVtbl -> get_VideoWidth(This,pVideoWidth)
  275. #define IBasicVideo_get_VideoHeight(This,pVideoHeight)
  276.     (This)->lpVtbl -> get_VideoHeight(This,pVideoHeight)
  277. #define IBasicVideo_put_SourceLeft(This,SourceLeft)
  278.     (This)->lpVtbl -> put_SourceLeft(This,SourceLeft)
  279. #define IBasicVideo_get_SourceLeft(This,pSourceLeft)
  280.     (This)->lpVtbl -> get_SourceLeft(This,pSourceLeft)
  281. #define IBasicVideo_put_SourceWidth(This,SourceWidth)
  282.     (This)->lpVtbl -> put_SourceWidth(This,SourceWidth)
  283. #define IBasicVideo_get_SourceWidth(This,pSourceWidth)
  284.     (This)->lpVtbl -> get_SourceWidth(This,pSourceWidth)
  285. #define IBasicVideo_put_SourceTop(This,SourceTop)
  286.     (This)->lpVtbl -> put_SourceTop(This,SourceTop)
  287. #define IBasicVideo_get_SourceTop(This,pSourceTop)
  288.     (This)->lpVtbl -> get_SourceTop(This,pSourceTop)
  289. #define IBasicVideo_put_SourceHeight(This,SourceHeight)
  290.     (This)->lpVtbl -> put_SourceHeight(This,SourceHeight)
  291. #define IBasicVideo_get_SourceHeight(This,pSourceHeight)
  292.     (This)->lpVtbl -> get_SourceHeight(This,pSourceHeight)
  293. #define IBasicVideo_put_DestinationLeft(This,DestinationLeft)
  294.     (This)->lpVtbl -> put_DestinationLeft(This,DestinationLeft)
  295. #define IBasicVideo_get_DestinationLeft(This,pDestinationLeft)
  296.     (This)->lpVtbl -> get_DestinationLeft(This,pDestinationLeft)
  297. #define IBasicVideo_put_DestinationWidth(This,DestinationWidth)
  298.     (This)->lpVtbl -> put_DestinationWidth(This,DestinationWidth)
  299. #define IBasicVideo_get_DestinationWidth(This,pDestinationWidth)
  300.     (This)->lpVtbl -> get_DestinationWidth(This,pDestinationWidth)
  301. #define IBasicVideo_put_DestinationTop(This,DestinationTop)
  302.     (This)->lpVtbl -> put_DestinationTop(This,DestinationTop)
  303. #define IBasicVideo_get_DestinationTop(This,pDestinationTop)
  304.     (This)->lpVtbl -> get_DestinationTop(This,pDestinationTop)
  305. #define IBasicVideo_put_DestinationHeight(This,DestinationHeight)
  306.     (This)->lpVtbl -> put_DestinationHeight(This,DestinationHeight)
  307. #define IBasicVideo_get_DestinationHeight(This,pDestinationHeight)
  308.     (This)->lpVtbl -> get_DestinationHeight(This,pDestinationHeight)
  309. #define IBasicVideo_SetSourcePosition(This,Left,Top,Width,Height)
  310.     (This)->lpVtbl -> SetSourcePosition(This,Left,Top,Width,Height)
  311. #define IBasicVideo_GetSourcePosition(This,pLeft,pTop,pWidth,pHeight)
  312.     (This)->lpVtbl -> GetSourcePosition(This,pLeft,pTop,pWidth,pHeight)
  313. #define IBasicVideo_SetDefaultSourcePosition(This)
  314.     (This)->lpVtbl -> SetDefaultSourcePosition(This)
  315. #define IBasicVideo_SetDestinationPosition(This,Left,Top,Width,Height)
  316.     (This)->lpVtbl -> SetDestinationPosition(This,Left,Top,Width,Height)
  317. #define IBasicVideo_GetDestinationPosition(This,pLeft,pTop,pWidth,pHeight)
  318.     (This)->lpVtbl -> GetDestinationPosition(This,pLeft,pTop,pWidth,pHeight)
  319. #define IBasicVideo_SetDefaultDestinationPosition(This)
  320.     (This)->lpVtbl -> SetDefaultDestinationPosition(This)
  321. #define IBasicVideo_GetVideoSize(This,pWidth,pHeight)
  322.     (This)->lpVtbl -> GetVideoSize(This,pWidth,pHeight)
  323. #define IBasicVideo_GetVideoPaletteEntries(This,StartIndex,Entries,pRetrieved,pPalette)
  324.     (This)->lpVtbl -> GetVideoPaletteEntries(This,StartIndex,Entries,pRetrieved,pPalette)
  325. #define IBasicVideo_GetCurrentImage(This,pBufferSize,pDIBImage)
  326.     (This)->lpVtbl -> GetCurrentImage(This,pBufferSize,pDIBImage)
  327. #define IBasicVideo_IsUsingDefaultSource(This)
  328.     (This)->lpVtbl -> IsUsingDefaultSource(This)
  329. #define IBasicVideo_IsUsingDefaultDestination(This)
  330.     (This)->lpVtbl -> IsUsingDefaultDestination(This)
  331. #endif /* COBJMACROS */
  332. #endif  /* C style interface */
  333. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_AvgTimePerFrame_Proxy( 
  334.     IBasicVideo * This,
  335.     /* [retval][out] */ REFTIME *pAvgTimePerFrame);
  336. void __RPC_STUB IBasicVideo_get_AvgTimePerFrame_Stub(
  337.     IRpcStubBuffer *This,
  338.     IRpcChannelBuffer *_pRpcChannelBuffer,
  339.     PRPC_MESSAGE _pRpcMessage,
  340.     DWORD *_pdwStubPhase);
  341. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_BitRate_Proxy( 
  342.     IBasicVideo * This,
  343.     /* [retval][out] */ long *pBitRate);
  344. void __RPC_STUB IBasicVideo_get_BitRate_Stub(
  345.     IRpcStubBuffer *This,
  346.     IRpcChannelBuffer *_pRpcChannelBuffer,
  347.     PRPC_MESSAGE _pRpcMessage,
  348.     DWORD *_pdwStubPhase);
  349. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_BitErrorRate_Proxy( 
  350.     IBasicVideo * This,
  351.     /* [retval][out] */ long *pBitErrorRate);
  352. void __RPC_STUB IBasicVideo_get_BitErrorRate_Stub(
  353.     IRpcStubBuffer *This,
  354.     IRpcChannelBuffer *_pRpcChannelBuffer,
  355.     PRPC_MESSAGE _pRpcMessage,
  356.     DWORD *_pdwStubPhase);
  357. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_VideoWidth_Proxy( 
  358.     IBasicVideo * This,
  359.     /* [retval][out] */ long *pVideoWidth);
  360. void __RPC_STUB IBasicVideo_get_VideoWidth_Stub(
  361.     IRpcStubBuffer *This,
  362.     IRpcChannelBuffer *_pRpcChannelBuffer,
  363.     PRPC_MESSAGE _pRpcMessage,
  364.     DWORD *_pdwStubPhase);
  365. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_VideoHeight_Proxy( 
  366.     IBasicVideo * This,
  367.     /* [retval][out] */ long *pVideoHeight);
  368. void __RPC_STUB IBasicVideo_get_VideoHeight_Stub(
  369.     IRpcStubBuffer *This,
  370.     IRpcChannelBuffer *_pRpcChannelBuffer,
  371.     PRPC_MESSAGE _pRpcMessage,
  372.     DWORD *_pdwStubPhase);
  373. /* [propput] */ HRESULT STDMETHODCALLTYPE IBasicVideo_put_SourceLeft_Proxy( 
  374.     IBasicVideo * This,
  375.     /* [in] */ long SourceLeft);
  376. void __RPC_STUB IBasicVideo_put_SourceLeft_Stub(
  377.     IRpcStubBuffer *This,
  378.     IRpcChannelBuffer *_pRpcChannelBuffer,
  379.     PRPC_MESSAGE _pRpcMessage,
  380.     DWORD *_pdwStubPhase);
  381. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_SourceLeft_Proxy( 
  382.     IBasicVideo * This,
  383.     /* [retval][out] */ long *pSourceLeft);
  384. void __RPC_STUB IBasicVideo_get_SourceLeft_Stub(
  385.     IRpcStubBuffer *This,
  386.     IRpcChannelBuffer *_pRpcChannelBuffer,
  387.     PRPC_MESSAGE _pRpcMessage,
  388.     DWORD *_pdwStubPhase);
  389. /* [propput] */ HRESULT STDMETHODCALLTYPE IBasicVideo_put_SourceWidth_Proxy( 
  390.     IBasicVideo * This,
  391.     /* [in] */ long SourceWidth);
  392. void __RPC_STUB IBasicVideo_put_SourceWidth_Stub(
  393.     IRpcStubBuffer *This,
  394.     IRpcChannelBuffer *_pRpcChannelBuffer,
  395.     PRPC_MESSAGE _pRpcMessage,
  396.     DWORD *_pdwStubPhase);
  397. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_SourceWidth_Proxy( 
  398.     IBasicVideo * This,
  399.     /* [retval][out] */ long *pSourceWidth);
  400. void __RPC_STUB IBasicVideo_get_SourceWidth_Stub(
  401.     IRpcStubBuffer *This,
  402.     IRpcChannelBuffer *_pRpcChannelBuffer,
  403.     PRPC_MESSAGE _pRpcMessage,
  404.     DWORD *_pdwStubPhase);
  405. /* [propput] */ HRESULT STDMETHODCALLTYPE IBasicVideo_put_SourceTop_Proxy( 
  406.     IBasicVideo * This,
  407.     /* [in] */ long SourceTop);
  408. void __RPC_STUB IBasicVideo_put_SourceTop_Stub(
  409.     IRpcStubBuffer *This,
  410.     IRpcChannelBuffer *_pRpcChannelBuffer,
  411.     PRPC_MESSAGE _pRpcMessage,
  412.     DWORD *_pdwStubPhase);
  413. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_SourceTop_Proxy( 
  414.     IBasicVideo * This,
  415.     /* [retval][out] */ long *pSourceTop);
  416. void __RPC_STUB IBasicVideo_get_SourceTop_Stub(
  417.     IRpcStubBuffer *This,
  418.     IRpcChannelBuffer *_pRpcChannelBuffer,
  419.     PRPC_MESSAGE _pRpcMessage,
  420.     DWORD *_pdwStubPhase);
  421. /* [propput] */ HRESULT STDMETHODCALLTYPE IBasicVideo_put_SourceHeight_Proxy( 
  422.     IBasicVideo * This,
  423.     /* [in] */ long SourceHeight);
  424. void __RPC_STUB IBasicVideo_put_SourceHeight_Stub(
  425.     IRpcStubBuffer *This,
  426.     IRpcChannelBuffer *_pRpcChannelBuffer,
  427.     PRPC_MESSAGE _pRpcMessage,
  428.     DWORD *_pdwStubPhase);
  429. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_SourceHeight_Proxy( 
  430.     IBasicVideo * This,
  431.     /* [retval][out] */ long *pSourceHeight);
  432. void __RPC_STUB IBasicVideo_get_SourceHeight_Stub(
  433.     IRpcStubBuffer *This,
  434.     IRpcChannelBuffer *_pRpcChannelBuffer,
  435.     PRPC_MESSAGE _pRpcMessage,
  436.     DWORD *_pdwStubPhase);
  437. /* [propput] */ HRESULT STDMETHODCALLTYPE IBasicVideo_put_DestinationLeft_Proxy( 
  438.     IBasicVideo * This,
  439.     /* [in] */ long DestinationLeft);
  440. void __RPC_STUB IBasicVideo_put_DestinationLeft_Stub(
  441.     IRpcStubBuffer *This,
  442.     IRpcChannelBuffer *_pRpcChannelBuffer,
  443.     PRPC_MESSAGE _pRpcMessage,
  444.     DWORD *_pdwStubPhase);
  445. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_DestinationLeft_Proxy( 
  446.     IBasicVideo * This,
  447.     /* [retval][out] */ long *pDestinationLeft);
  448. void __RPC_STUB IBasicVideo_get_DestinationLeft_Stub(
  449.     IRpcStubBuffer *This,
  450.     IRpcChannelBuffer *_pRpcChannelBuffer,
  451.     PRPC_MESSAGE _pRpcMessage,
  452.     DWORD *_pdwStubPhase);
  453. /* [propput] */ HRESULT STDMETHODCALLTYPE IBasicVideo_put_DestinationWidth_Proxy( 
  454.     IBasicVideo * This,
  455.     /* [in] */ long DestinationWidth);
  456. void __RPC_STUB IBasicVideo_put_DestinationWidth_Stub(
  457.     IRpcStubBuffer *This,
  458.     IRpcChannelBuffer *_pRpcChannelBuffer,
  459.     PRPC_MESSAGE _pRpcMessage,
  460.     DWORD *_pdwStubPhase);
  461. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_DestinationWidth_Proxy( 
  462.     IBasicVideo * This,
  463.     /* [retval][out] */ long *pDestinationWidth);
  464. void __RPC_STUB IBasicVideo_get_DestinationWidth_Stub(
  465.     IRpcStubBuffer *This,
  466.     IRpcChannelBuffer *_pRpcChannelBuffer,
  467.     PRPC_MESSAGE _pRpcMessage,
  468.     DWORD *_pdwStubPhase);
  469. /* [propput] */ HRESULT STDMETHODCALLTYPE IBasicVideo_put_DestinationTop_Proxy( 
  470.     IBasicVideo * This,
  471.     /* [in] */ long DestinationTop);
  472. void __RPC_STUB IBasicVideo_put_DestinationTop_Stub(
  473.     IRpcStubBuffer *This,
  474.     IRpcChannelBuffer *_pRpcChannelBuffer,
  475.     PRPC_MESSAGE _pRpcMessage,
  476.     DWORD *_pdwStubPhase);
  477. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_DestinationTop_Proxy( 
  478.     IBasicVideo * This,
  479.     /* [retval][out] */ long *pDestinationTop);
  480. void __RPC_STUB IBasicVideo_get_DestinationTop_Stub(
  481.     IRpcStubBuffer *This,
  482.     IRpcChannelBuffer *_pRpcChannelBuffer,
  483.     PRPC_MESSAGE _pRpcMessage,
  484.     DWORD *_pdwStubPhase);
  485. /* [propput] */ HRESULT STDMETHODCALLTYPE IBasicVideo_put_DestinationHeight_Proxy( 
  486.     IBasicVideo * This,
  487.     /* [in] */ long DestinationHeight);
  488. void __RPC_STUB IBasicVideo_put_DestinationHeight_Stub(
  489.     IRpcStubBuffer *This,
  490.     IRpcChannelBuffer *_pRpcChannelBuffer,
  491.     PRPC_MESSAGE _pRpcMessage,
  492.     DWORD *_pdwStubPhase);
  493. /* [propget] */ HRESULT STDMETHODCALLTYPE IBasicVideo_get_DestinationHeight_Proxy( 
  494.     IBasicVideo * This,
  495.     /* [retval][out] */ long *pDestinationHeight);
  496. void __RPC_STUB IBasicVideo_get_DestinationHeight_Stub(
  497.     IRpcStubBuffer *This,
  498.     IRpcChannelBuffer *_pRpcChannelBuffer,
  499.     PRPC_MESSAGE _pRpcMessage,
  500.     DWORD *_pdwStubPhase);
  501. HRESULT STDMETHODCALLTYPE IBasicVideo_SetSourcePosition_Proxy( 
  502.     IBasicVideo * This,
  503.     /* [in] */ long Left,
  504.     /* [in] */ long Top,
  505.     /* [in] */ long Width,
  506.     /* [in] */ long Height);
  507. void __RPC_STUB IBasicVideo_SetSourcePosition_Stub(
  508.     IRpcStubBuffer *This,
  509.     IRpcChannelBuffer *_pRpcChannelBuffer,
  510.     PRPC_MESSAGE _pRpcMessage,
  511.     DWORD *_pdwStubPhase);
  512. HRESULT STDMETHODCALLTYPE IBasicVideo_GetSourcePosition_Proxy( 
  513.     IBasicVideo * This,
  514.     /* [out] */ long *pLeft,
  515.     /* [out] */ long *pTop,
  516.     /* [out] */ long *pWidth,
  517.     /* [out] */ long *pHeight);
  518. void __RPC_STUB IBasicVideo_GetSourcePosition_Stub(
  519.     IRpcStubBuffer *This,
  520.     IRpcChannelBuffer *_pRpcChannelBuffer,
  521.     PRPC_MESSAGE _pRpcMessage,
  522.     DWORD *_pdwStubPhase);
  523. HRESULT STDMETHODCALLTYPE IBasicVideo_SetDefaultSourcePosition_Proxy( 
  524.     IBasicVideo * This);
  525. void __RPC_STUB IBasicVideo_SetDefaultSourcePosition_Stub(
  526.     IRpcStubBuffer *This,
  527.     IRpcChannelBuffer *_pRpcChannelBuffer,
  528.     PRPC_MESSAGE _pRpcMessage,
  529.     DWORD *_pdwStubPhase);
  530. HRESULT STDMETHODCALLTYPE IBasicVideo_SetDestinationPosition_Proxy( 
  531.     IBasicVideo * This,
  532.     /* [in] */ long Left,
  533.     /* [in] */ long Top,
  534.     /* [in] */ long Width,
  535.     /* [in] */ long Height);
  536. void __RPC_STUB IBasicVideo_SetDestinationPosition_Stub(
  537.     IRpcStubBuffer *This,
  538.     IRpcChannelBuffer *_pRpcChannelBuffer,
  539.     PRPC_MESSAGE _pRpcMessage,
  540.     DWORD *_pdwStubPhase);
  541. HRESULT STDMETHODCALLTYPE IBasicVideo_GetDestinationPosition_Proxy( 
  542.     IBasicVideo * This,
  543.     /* [out] */ long *pLeft,
  544.     /* [out] */ long *pTop,
  545.     /* [out] */ long *pWidth,
  546.     /* [out] */ long *pHeight);
  547. void __RPC_STUB IBasicVideo_GetDestinationPosition_Stub(
  548.     IRpcStubBuffer *This,
  549.     IRpcChannelBuffer *_pRpcChannelBuffer,
  550.     PRPC_MESSAGE _pRpcMessage,
  551.     DWORD *_pdwStubPhase);
  552. HRESULT STDMETHODCALLTYPE IBasicVideo_SetDefaultDestinationPosition_Proxy( 
  553.     IBasicVideo * This);
  554. void __RPC_STUB IBasicVideo_SetDefaultDestinationPosition_Stub(
  555.     IRpcStubBuffer *This,
  556.     IRpcChannelBuffer *_pRpcChannelBuffer,
  557.     PRPC_MESSAGE _pRpcMessage,
  558.     DWORD *_pdwStubPhase);
  559. HRESULT STDMETHODCALLTYPE IBasicVideo_GetVideoSize_Proxy( 
  560.     IBasicVideo * This,
  561.     /* [out] */ long *pWidth,
  562.     /* [out] */ long *pHeight);
  563. void __RPC_STUB IBasicVideo_GetVideoSize_Stub(
  564.     IRpcStubBuffer *This,
  565.     IRpcChannelBuffer *_pRpcChannelBuffer,
  566.     PRPC_MESSAGE _pRpcMessage,
  567.     DWORD *_pdwStubPhase);
  568. HRESULT STDMETHODCALLTYPE IBasicVideo_GetVideoPaletteEntries_Proxy( 
  569.     IBasicVideo * This,
  570.     /* [in] */ long StartIndex,
  571.     /* [in] */ long Entries,
  572.     /* [out] */ long *pRetrieved,
  573.     /* [out] */ long *pPalette);
  574. void __RPC_STUB IBasicVideo_GetVideoPaletteEntries_Stub(
  575.     IRpcStubBuffer *This,
  576.     IRpcChannelBuffer *_pRpcChannelBuffer,
  577.     PRPC_MESSAGE _pRpcMessage,
  578.     DWORD *_pdwStubPhase);
  579. HRESULT STDMETHODCALLTYPE IBasicVideo_GetCurrentImage_Proxy( 
  580.     IBasicVideo * This,
  581.     /* [out][in] */ long *pBufferSize,
  582.     /* [out] */ long *pDIBImage);
  583. void __RPC_STUB IBasicVideo_GetCurrentImage_Stub(
  584.     IRpcStubBuffer *This,
  585.     IRpcChannelBuffer *_pRpcChannelBuffer,
  586.     PRPC_MESSAGE _pRpcMessage,
  587.     DWORD *_pdwStubPhase);
  588. HRESULT STDMETHODCALLTYPE IBasicVideo_IsUsingDefaultSource_Proxy( 
  589.     IBasicVideo * This);
  590. void __RPC_STUB IBasicVideo_IsUsingDefaultSource_Stub(
  591.     IRpcStubBuffer *This,
  592.     IRpcChannelBuffer *_pRpcChannelBuffer,
  593.     PRPC_MESSAGE _pRpcMessage,
  594.     DWORD *_pdwStubPhase);
  595. HRESULT STDMETHODCALLTYPE IBasicVideo_IsUsingDefaultDestination_Proxy( 
  596.     IBasicVideo * This);
  597. void __RPC_STUB IBasicVideo_IsUsingDefaultDestination_Stub(
  598.     IRpcStubBuffer *This,
  599.     IRpcChannelBuffer *_pRpcChannelBuffer,
  600.     PRPC_MESSAGE _pRpcMessage,
  601.     DWORD *_pdwStubPhase);
  602. #endif  /* __IBasicVideo_INTERFACE_DEFINED__ */
  603. #ifndef __IBasicVideo2_INTERFACE_DEFINED__
  604. #define __IBasicVideo2_INTERFACE_DEFINED__
  605. /* interface IBasicVideo2 */
  606. /* [object][helpstring][uuid] */ 
  607. DEFINE_GUID(IID_IBasicVideo2,0x329bb360,0xf6ea,0x11d1,0x90,0x38,0x00,0xa0,0xc9,0x69,0x72,0x98);
  608. #if defined(__cplusplus) && !defined(CINTERFACE)
  609.     
  610.     MIDL_INTERFACE("329bb360-f6ea-11d1-9038-00a0c9697298")
  611.     IBasicVideo2 : public IBasicVideo
  612.     {
  613.     public:
  614.         virtual HRESULT STDMETHODCALLTYPE GetPreferredAspectRatio( 
  615.             /* [out] */ long *plAspectX,
  616.             /* [out] */ long *plAspectY) = 0;
  617.         
  618.     };
  619.     
  620. #else  /* C style interface */
  621.     typedef struct IBasicVideo2Vtbl
  622.     {
  623.         BEGIN_INTERFACE
  624.         
  625.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  626.             IBasicVideo2 * This,
  627.             /* [in] */ REFIID riid,
  628.             /* [iid_is][out] */ void **ppvObject);
  629.         
  630.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  631.             IBasicVideo2 * This);
  632.         
  633.         ULONG ( STDMETHODCALLTYPE *Release )( 
  634.             IBasicVideo2 * This);
  635.         
  636.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  637.             IBasicVideo2 * This,
  638.             /* [out] */ UINT *pctinfo);
  639.         
  640.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  641.             IBasicVideo2 * This,
  642.             /* [in] */ UINT iTInfo,
  643.             /* [in] */ LCID lcid,
  644.             /* [out] */ ITypeInfo **ppTInfo);
  645.         
  646.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  647.             IBasicVideo2 * This,
  648.             /* [in] */ REFIID riid,
  649.             /* [size_is][in] */ LPOLESTR *rgszNames,
  650.             /* [in] */ UINT cNames,
  651.             /* [in] */ LCID lcid,
  652.             /* [size_is][out] */ DISPID *rgDispId);
  653.         
  654.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  655.             IBasicVideo2 * This,
  656.             /* [in] */ DISPID dispIdMember,
  657.             /* [in] */ REFIID riid,
  658.             /* [in] */ LCID lcid,
  659.             /* [in] */ WORD wFlags,
  660.             /* [out][in] */ DISPPARAMS *pDispParams,
  661.             /* [out] */ VARIANT *pVarResult,
  662.             /* [out] */ EXCEPINFO *pExcepInfo,
  663.             /* [out] */ UINT *puArgErr);
  664.         
  665.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AvgTimePerFrame )( 
  666.             IBasicVideo2 * This,
  667.             /* [retval][out] */ REFTIME *pAvgTimePerFrame);
  668.         
  669.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BitRate )( 
  670.             IBasicVideo2 * This,
  671.             /* [retval][out] */ long *pBitRate);
  672.         
  673.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BitErrorRate )( 
  674.             IBasicVideo2 * This,
  675.             /* [retval][out] */ long *pBitErrorRate);
  676.         
  677.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VideoWidth )( 
  678.             IBasicVideo2 * This,
  679.             /* [retval][out] */ long *pVideoWidth);
  680.         
  681.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VideoHeight )( 
  682.             IBasicVideo2 * This,
  683.             /* [retval][out] */ long *pVideoHeight);
  684.         
  685.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceLeft )( 
  686.             IBasicVideo2 * This,
  687.             /* [in] */ long SourceLeft);
  688.         
  689.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceLeft )( 
  690.             IBasicVideo2 * This,
  691.             /* [retval][out] */ long *pSourceLeft);
  692.         
  693.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceWidth )( 
  694.             IBasicVideo2 * This,
  695.             /* [in] */ long SourceWidth);
  696.         
  697.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceWidth )( 
  698.             IBasicVideo2 * This,
  699.             /* [retval][out] */ long *pSourceWidth);
  700.         
  701.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceTop )( 
  702.             IBasicVideo2 * This,
  703.             /* [in] */ long SourceTop);
  704.         
  705.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceTop )( 
  706.             IBasicVideo2 * This,
  707.             /* [retval][out] */ long *pSourceTop);
  708.         
  709.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SourceHeight )( 
  710.             IBasicVideo2 * This,
  711.             /* [in] */ long SourceHeight);
  712.         
  713.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SourceHeight )( 
  714.             IBasicVideo2 * This,
  715.             /* [retval][out] */ long *pSourceHeight);
  716.         
  717.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationLeft )( 
  718.             IBasicVideo2 * This,
  719.             /* [in] */ long DestinationLeft);
  720.         
  721.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationLeft )( 
  722.             IBasicVideo2 * This,
  723.             /* [retval][out] */ long *pDestinationLeft);
  724.         
  725.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationWidth )( 
  726.             IBasicVideo2 * This,
  727.             /* [in] */ long DestinationWidth);
  728.         
  729.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationWidth )( 
  730.             IBasicVideo2 * This,
  731.             /* [retval][out] */ long *pDestinationWidth);
  732.         
  733.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationTop )( 
  734.             IBasicVideo2 * This,
  735.             /* [in] */ long DestinationTop);
  736.         
  737.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationTop )( 
  738.             IBasicVideo2 * This,
  739.             /* [retval][out] */ long *pDestinationTop);
  740.         
  741.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DestinationHeight )( 
  742.             IBasicVideo2 * This,
  743.             /* [in] */ long DestinationHeight);
  744.         
  745.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DestinationHeight )( 
  746.             IBasicVideo2 * This,
  747.             /* [retval][out] */ long *pDestinationHeight);
  748.         
  749.         HRESULT ( STDMETHODCALLTYPE *SetSourcePosition )( 
  750.             IBasicVideo2 * This,
  751.             /* [in] */ long Left,
  752.             /* [in] */ long Top,
  753.             /* [in] */ long Width,
  754.             /* [in] */ long Height);
  755.         
  756.         HRESULT ( STDMETHODCALLTYPE *GetSourcePosition )( 
  757.             IBasicVideo2 * This,
  758.             /* [out] */ long *pLeft,
  759.             /* [out] */ long *pTop,
  760.             /* [out] */ long *pWidth,
  761.             /* [out] */ long *pHeight);
  762.         
  763.         HRESULT ( STDMETHODCALLTYPE *SetDefaultSourcePosition )( 
  764.             IBasicVideo2 * This);
  765.         
  766.         HRESULT ( STDMETHODCALLTYPE *SetDestinationPosition )( 
  767.             IBasicVideo2 * This,
  768.             /* [in] */ long Left,
  769.             /* [in] */ long Top,
  770.             /* [in] */ long Width,
  771.             /* [in] */ long Height);
  772.         
  773.         HRESULT ( STDMETHODCALLTYPE *GetDestinationPosition )( 
  774.             IBasicVideo2 * This,
  775.             /* [out] */ long *pLeft,
  776.             /* [out] */ long *pTop,
  777.             /* [out] */ long *pWidth,
  778.             /* [out] */ long *pHeight);
  779.         
  780.         HRESULT ( STDMETHODCALLTYPE *SetDefaultDestinationPosition )( 
  781.             IBasicVideo2 * This);
  782.         
  783.         HRESULT ( STDMETHODCALLTYPE *GetVideoSize )( 
  784.             IBasicVideo2 * This,
  785.             /* [out] */ long *pWidth,
  786.             /* [out] */ long *pHeight);
  787.         
  788.         HRESULT ( STDMETHODCALLTYPE *GetVideoPaletteEntries )( 
  789.             IBasicVideo2 * This,
  790.             /* [in] */ long StartIndex,
  791.             /* [in] */ long Entries,
  792.             /* [out] */ long *pRetrieved,
  793.             /* [out] */ long *pPalette);
  794.         
  795.         HRESULT ( STDMETHODCALLTYPE *GetCurrentImage )( 
  796.             IBasicVideo2 * This,
  797.             /* [out][in] */ long *pBufferSize,
  798.             /* [out] */ long *pDIBImage);
  799.         
  800.         HRESULT ( STDMETHODCALLTYPE *IsUsingDefaultSource )( 
  801.             IBasicVideo2 * This);
  802.         
  803.         HRESULT ( STDMETHODCALLTYPE *IsUsingDefaultDestination )( 
  804.             IBasicVideo2 * This);
  805.         
  806.         HRESULT ( STDMETHODCALLTYPE *GetPreferredAspectRatio )( 
  807.             IBasicVideo2 * This,
  808.             /* [out] */ long *plAspectX,
  809.             /* [out] */ long *plAspectY);
  810.         
  811.         END_INTERFACE
  812.     } IBasicVideo2Vtbl;
  813.     interface IBasicVideo2
  814.     {
  815.         CONST_VTBL struct IBasicVideo2Vtbl *lpVtbl;
  816.     };
  817.     
  818. #ifdef COBJMACROS
  819. #define IBasicVideo2_QueryInterface(This,riid,ppvObject)
  820.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  821. #define IBasicVideo2_AddRef(This)
  822.     (This)->lpVtbl -> AddRef(This)
  823. #define IBasicVideo2_Release(This)
  824.     (This)->lpVtbl -> Release(This)
  825. #define IBasicVideo2_GetTypeInfoCount(This,pctinfo)
  826.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  827. #define IBasicVideo2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  828.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  829. #define IBasicVideo2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  830.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  831. #define IBasicVideo2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  832.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  833. #define IBasicVideo2_get_AvgTimePerFrame(This,pAvgTimePerFrame)
  834.     (This)->lpVtbl -> get_AvgTimePerFrame(This,pAvgTimePerFrame)
  835. #define IBasicVideo2_get_BitRate(This,pBitRate)
  836.     (This)->lpVtbl -> get_BitRate(This,pBitRate)
  837. #define IBasicVideo2_get_BitErrorRate(This,pBitErrorRate)
  838.     (This)->lpVtbl -> get_BitErrorRate(This,pBitErrorRate)
  839. #define IBasicVideo2_get_VideoWidth(This,pVideoWidth)
  840.     (This)->lpVtbl -> get_VideoWidth(This,pVideoWidth)
  841. #define IBasicVideo2_get_VideoHeight(This,pVideoHeight)
  842.     (This)->lpVtbl -> get_VideoHeight(This,pVideoHeight)
  843. #define IBasicVideo2_put_SourceLeft(This,SourceLeft)
  844.     (This)->lpVtbl -> put_SourceLeft(This,SourceLeft)
  845. #define IBasicVideo2_get_SourceLeft(This,pSourceLeft)
  846.     (This)->lpVtbl -> get_SourceLeft(This,pSourceLeft)
  847. #define IBasicVideo2_put_SourceWidth(This,SourceWidth)
  848.     (This)->lpVtbl -> put_SourceWidth(This,SourceWidth)
  849. #define IBasicVideo2_get_SourceWidth(This,pSourceWidth)
  850.     (This)->lpVtbl -> get_SourceWidth(This,pSourceWidth)
  851. #define IBasicVideo2_put_SourceTop(This,SourceTop)
  852.     (This)->lpVtbl -> put_SourceTop(This,SourceTop)
  853. #define IBasicVideo2_get_SourceTop(This,pSourceTop)
  854.     (This)->lpVtbl -> get_SourceTop(This,pSourceTop)
  855. #define IBasicVideo2_put_SourceHeight(This,SourceHeight)
  856.     (This)->lpVtbl -> put_SourceHeight(This,SourceHeight)
  857. #define IBasicVideo2_get_SourceHeight(This,pSourceHeight)
  858.     (This)->lpVtbl -> get_SourceHeight(This,pSourceHeight)
  859. #define IBasicVideo2_put_DestinationLeft(This,DestinationLeft)
  860.     (This)->lpVtbl -> put_DestinationLeft(This,DestinationLeft)
  861. #define IBasicVideo2_get_DestinationLeft(This,pDestinationLeft)
  862.     (This)->lpVtbl -> get_DestinationLeft(This,pDestinationLeft)
  863. #define IBasicVideo2_put_DestinationWidth(This,DestinationWidth)
  864.     (This)->lpVtbl -> put_DestinationWidth(This,DestinationWidth)
  865. #define IBasicVideo2_get_DestinationWidth(This,pDestinationWidth)
  866.     (This)->lpVtbl -> get_DestinationWidth(This,pDestinationWidth)
  867. #define IBasicVideo2_put_DestinationTop(This,DestinationTop)
  868.     (This)->lpVtbl -> put_DestinationTop(This,DestinationTop)
  869. #define IBasicVideo2_get_DestinationTop(This,pDestinationTop)
  870.     (This)->lpVtbl -> get_DestinationTop(This,pDestinationTop)
  871. #define IBasicVideo2_put_DestinationHeight(This,DestinationHeight)
  872.     (This)->lpVtbl -> put_DestinationHeight(This,DestinationHeight)
  873. #define IBasicVideo2_get_DestinationHeight(This,pDestinationHeight)
  874.     (This)->lpVtbl -> get_DestinationHeight(This,pDestinationHeight)
  875. #define IBasicVideo2_SetSourcePosition(This,Left,Top,Width,Height)
  876.     (This)->lpVtbl -> SetSourcePosition(This,Left,Top,Width,Height)
  877. #define IBasicVideo2_GetSourcePosition(This,pLeft,pTop,pWidth,pHeight)
  878.     (This)->lpVtbl -> GetSourcePosition(This,pLeft,pTop,pWidth,pHeight)
  879. #define IBasicVideo2_SetDefaultSourcePosition(This)
  880.     (This)->lpVtbl -> SetDefaultSourcePosition(This)
  881. #define IBasicVideo2_SetDestinationPosition(This,Left,Top,Width,Height)
  882.     (This)->lpVtbl -> SetDestinationPosition(This,Left,Top,Width,Height)
  883. #define IBasicVideo2_GetDestinationPosition(This,pLeft,pTop,pWidth,pHeight)
  884.     (This)->lpVtbl -> GetDestinationPosition(This,pLeft,pTop,pWidth,pHeight)
  885. #define IBasicVideo2_SetDefaultDestinationPosition(This)
  886.     (This)->lpVtbl -> SetDefaultDestinationPosition(This)
  887. #define IBasicVideo2_GetVideoSize(This,pWidth,pHeight)
  888.     (This)->lpVtbl -> GetVideoSize(This,pWidth,pHeight)
  889. #define IBasicVideo2_GetVideoPaletteEntries(This,StartIndex,Entries,pRetrieved,pPalette)
  890.     (This)->lpVtbl -> GetVideoPaletteEntries(This,StartIndex,Entries,pRetrieved,pPalette)
  891. #define IBasicVideo2_GetCurrentImage(This,pBufferSize,pDIBImage)
  892.     (This)->lpVtbl -> GetCurrentImage(This,pBufferSize,pDIBImage)
  893. #define IBasicVideo2_IsUsingDefaultSource(This)
  894.     (This)->lpVtbl -> IsUsingDefaultSource(This)
  895. #define IBasicVideo2_IsUsingDefaultDestination(This)
  896.     (This)->lpVtbl -> IsUsingDefaultDestination(This)
  897. #define IBasicVideo2_GetPreferredAspectRatio(This,plAspectX,plAspectY)
  898.     (This)->lpVtbl -> GetPreferredAspectRatio(This,plAspectX,plAspectY)
  899. #endif /* COBJMACROS */
  900. #endif  /* C style interface */
  901. HRESULT STDMETHODCALLTYPE IBasicVideo2_GetPreferredAspectRatio_Proxy( 
  902.     IBasicVideo2 * This,
  903.     /* [out] */ long *plAspectX,
  904.     /* [out] */ long *plAspectY);
  905. void __RPC_STUB IBasicVideo2_GetPreferredAspectRatio_Stub(
  906.     IRpcStubBuffer *This,
  907.     IRpcChannelBuffer *_pRpcChannelBuffer,
  908.     PRPC_MESSAGE _pRpcMessage,
  909.     DWORD *_pdwStubPhase);
  910. #endif  /* __IBasicVideo2_INTERFACE_DEFINED__ */
  911. #ifndef __IDeferredCommand_INTERFACE_DEFINED__
  912. #define __IDeferredCommand_INTERFACE_DEFINED__
  913. /* interface IDeferredCommand */
  914. /* [object][helpstring][uuid] */ 
  915. DEFINE_GUID(IID_IDeferredCommand,0x56a868b8,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
  916. #if defined(__cplusplus) && !defined(CINTERFACE)
  917.     
  918.     MIDL_INTERFACE("56a868b8-0ad4-11ce-b03a-0020af0ba770")
  919.     IDeferredCommand : public IUnknown
  920.     {
  921.     public:
  922.         virtual HRESULT STDMETHODCALLTYPE Cancel( void) = 0;
  923.         
  924.         virtual HRESULT STDMETHODCALLTYPE Confidence( 
  925.             /* [out] */ LONG *pConfidence) = 0;
  926.         
  927.         virtual HRESULT STDMETHODCALLTYPE Postpone( 
  928.             /* [in] */ REFTIME newtime) = 0;
  929.         
  930.         virtual HRESULT STDMETHODCALLTYPE GetHResult( 
  931.             /* [out] */ HRESULT *phrResult) = 0;
  932.         
  933.     };
  934.     
  935. #else  /* C style interface */
  936.     typedef struct IDeferredCommandVtbl
  937.     {
  938.         BEGIN_INTERFACE
  939.         
  940.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  941.             IDeferredCommand * This,
  942.             /* [in] */ REFIID riid,
  943.             /* [iid_is][out] */ void **ppvObject);
  944.         
  945.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  946.             IDeferredCommand * This);
  947.         
  948.         ULONG ( STDMETHODCALLTYPE *Release )( 
  949.             IDeferredCommand * This);
  950.         
  951.         HRESULT ( STDMETHODCALLTYPE *Cancel )( 
  952.             IDeferredCommand * This);
  953.         
  954.         HRESULT ( STDMETHODCALLTYPE *Confidence )( 
  955.             IDeferredCommand * This,
  956.             /* [out] */ LONG *pConfidence);
  957.         
  958.         HRESULT ( STDMETHODCALLTYPE *Postpone )( 
  959.             IDeferredCommand * This,
  960.             /* [in] */ REFTIME newtime);
  961.         
  962.         HRESULT ( STDMETHODCALLTYPE *GetHResult )( 
  963.             IDeferredCommand * This,
  964.             /* [out] */ HRESULT *phrResult);
  965.         
  966.         END_INTERFACE
  967.     } IDeferredCommandVtbl;
  968.     interface IDeferredCommand
  969.     {
  970.         CONST_VTBL struct IDeferredCommandVtbl *lpVtbl;
  971.     };
  972.     
  973. #ifdef COBJMACROS
  974. #define IDeferredCommand_QueryInterface(This,riid,ppvObject)
  975.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  976. #define IDeferredCommand_AddRef(This)
  977.     (This)->lpVtbl -> AddRef(This)
  978. #define IDeferredCommand_Release(This)
  979.     (This)->lpVtbl -> Release(This)
  980. #define IDeferredCommand_Cancel(This)
  981.     (This)->lpVtbl -> Cancel(This)
  982. #define IDeferredCommand_Confidence(This,pConfidence)
  983.     (This)->lpVtbl -> Confidence(This,pConfidence)
  984. #define IDeferredCommand_Postpone(This,newtime)
  985.     (This)->lpVtbl -> Postpone(This,newtime)
  986. #define IDeferredCommand_GetHResult(This,phrResult)
  987.     (This)->lpVtbl -> GetHResult(This,phrResult)
  988. #endif /* COBJMACROS */
  989. #endif  /* C style interface */
  990. HRESULT STDMETHODCALLTYPE IDeferredCommand_Cancel_Proxy( 
  991.     IDeferredCommand * This);
  992. void __RPC_STUB IDeferredCommand_Cancel_Stub(
  993.     IRpcStubBuffer *This,
  994.     IRpcChannelBuffer *_pRpcChannelBuffer,
  995.     PRPC_MESSAGE _pRpcMessage,
  996.     DWORD *_pdwStubPhase);
  997. HRESULT STDMETHODCALLTYPE IDeferredCommand_Confidence_Proxy( 
  998.     IDeferredCommand * This,
  999.     /* [out] */ LONG *pConfidence);
  1000. void __RPC_STUB IDeferredCommand_Confidence_Stub(
  1001.     IRpcStubBuffer *This,
  1002.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1003.     PRPC_MESSAGE _pRpcMessage,
  1004.     DWORD *_pdwStubPhase);
  1005. HRESULT STDMETHODCALLTYPE IDeferredCommand_Postpone_Proxy( 
  1006.     IDeferredCommand * This,
  1007.     /* [in] */ REFTIME newtime);
  1008. void __RPC_STUB IDeferredCommand_Postpone_Stub(
  1009.     IRpcStubBuffer *This,
  1010.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1011.     PRPC_MESSAGE _pRpcMessage,
  1012.     DWORD *_pdwStubPhase);
  1013. HRESULT STDMETHODCALLTYPE IDeferredCommand_GetHResult_Proxy( 
  1014.     IDeferredCommand * This,
  1015.     /* [out] */ HRESULT *phrResult);
  1016. void __RPC_STUB IDeferredCommand_GetHResult_Stub(
  1017.     IRpcStubBuffer *This,
  1018.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1019.     PRPC_MESSAGE _pRpcMessage,
  1020.     DWORD *_pdwStubPhase);
  1021. #endif  /* __IDeferredCommand_INTERFACE_DEFINED__ */
  1022. #ifndef __IQueueCommand_INTERFACE_DEFINED__
  1023. #define __IQueueCommand_INTERFACE_DEFINED__
  1024. /* interface IQueueCommand */
  1025. /* [object][helpstring][uuid] */ 
  1026. DEFINE_GUID(IID_IQueueCommand,0x56a868b7,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
  1027. #if defined(__cplusplus) && !defined(CINTERFACE)
  1028.     
  1029.     MIDL_INTERFACE("56a868b7-0ad4-11ce-b03a-0020af0ba770")
  1030.     IQueueCommand : public IUnknown
  1031.     {
  1032.     public:
  1033.         virtual HRESULT STDMETHODCALLTYPE InvokeAtStreamTime( 
  1034.             /* [out] */ IDeferredCommand **pCmd,
  1035.             /* [in] */ REFTIME time,
  1036.             /* [in] */ GUID *iid,
  1037.             /* [in] */ long dispidMethod,
  1038.             /* [in] */ short wFlags,
  1039.             /* [in] */ long cArgs,
  1040.             /* [in] */ VARIANT *pDispParams,
  1041.             /* [out][in] */ VARIANT *pvarResult,
  1042.             /* [out] */ short *puArgErr) = 0;
  1043.         
  1044.         virtual HRESULT STDMETHODCALLTYPE InvokeAtPresentationTime( 
  1045.             /* [out] */ IDeferredCommand **pCmd,
  1046.             /* [in] */ REFTIME time,
  1047.             /* [in] */ GUID *iid,
  1048.             /* [in] */ long dispidMethod,
  1049.             /* [in] */ short wFlags,
  1050.             /* [in] */ long cArgs,
  1051.             /* [in] */ VARIANT *pDispParams,
  1052.             /* [out][in] */ VARIANT *pvarResult,
  1053.             /* [out] */ short *puArgErr) = 0;
  1054.         
  1055.     };
  1056.     
  1057. #else  /* C style interface */
  1058.     typedef struct IQueueCommandVtbl
  1059.     {
  1060.         BEGIN_INTERFACE
  1061.         
  1062.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1063.             IQueueCommand * This,
  1064.             /* [in] */ REFIID riid,
  1065.             /* [iid_is][out] */ void **ppvObject);
  1066.         
  1067.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1068.             IQueueCommand * This);
  1069.         
  1070.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1071.             IQueueCommand * This);
  1072.         
  1073.         HRESULT ( STDMETHODCALLTYPE *InvokeAtStreamTime )( 
  1074.             IQueueCommand * This,
  1075.             /* [out] */ IDeferredCommand **pCmd,
  1076.             /* [in] */ REFTIME time,
  1077.             /* [in] */ GUID *iid,
  1078.             /* [in] */ long dispidMethod,
  1079.             /* [in] */ short wFlags,
  1080.             /* [in] */ long cArgs,
  1081.             /* [in] */ VARIANT *pDispParams,
  1082.             /* [out][in] */ VARIANT *pvarResult,
  1083.             /* [out] */ short *puArgErr);
  1084.         
  1085.         HRESULT ( STDMETHODCALLTYPE *InvokeAtPresentationTime )( 
  1086.             IQueueCommand * This,
  1087.             /* [out] */ IDeferredCommand **pCmd,
  1088.             /* [in] */ REFTIME time,
  1089.             /* [in] */ GUID *iid,
  1090.             /* [in] */ long dispidMethod,
  1091.             /* [in] */ short wFlags,
  1092.             /* [in] */ long cArgs,
  1093.             /* [in] */ VARIANT *pDispParams,
  1094.             /* [out][in] */ VARIANT *pvarResult,
  1095.             /* [out] */ short *puArgErr);
  1096.         
  1097.         END_INTERFACE
  1098.     } IQueueCommandVtbl;
  1099.     interface IQueueCommand
  1100.     {
  1101.         CONST_VTBL struct IQueueCommandVtbl *lpVtbl;
  1102.     };
  1103.     
  1104. #ifdef COBJMACROS
  1105. #define IQueueCommand_QueryInterface(This,riid,ppvObject)
  1106.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1107. #define IQueueCommand_AddRef(This)
  1108.     (This)->lpVtbl -> AddRef(This)
  1109. #define IQueueCommand_Release(This)
  1110.     (This)->lpVtbl -> Release(This)
  1111. #define IQueueCommand_InvokeAtStreamTime(This,pCmd,time,iid,dispidMethod,wFlags,cArgs,pDispParams,pvarResult,puArgErr)
  1112.     (This)->lpVtbl -> InvokeAtStreamTime(This,pCmd,time,iid,dispidMethod,wFlags,cArgs,pDispParams,pvarResult,puArgErr)
  1113. #define IQueueCommand_InvokeAtPresentationTime(This,pCmd,time,iid,dispidMethod,wFlags,cArgs,pDispParams,pvarResult,puArgErr)
  1114.     (This)->lpVtbl -> InvokeAtPresentationTime(This,pCmd,time,iid,dispidMethod,wFlags,cArgs,pDispParams,pvarResult,puArgErr)
  1115. #endif /* COBJMACROS */
  1116. #endif  /* C style interface */
  1117. HRESULT STDMETHODCALLTYPE IQueueCommand_InvokeAtStreamTime_Proxy( 
  1118.     IQueueCommand * This,
  1119.     /* [out] */ IDeferredCommand **pCmd,
  1120.     /* [in] */ REFTIME time,
  1121.     /* [in] */ GUID *iid,
  1122.     /* [in] */ long dispidMethod,
  1123.     /* [in] */ short wFlags,
  1124.     /* [in] */ long cArgs,
  1125.     /* [in] */ VARIANT *pDispParams,
  1126.     /* [out][in] */ VARIANT *pvarResult,
  1127.     /* [out] */ short *puArgErr);
  1128. void __RPC_STUB IQueueCommand_InvokeAtStreamTime_Stub(
  1129.     IRpcStubBuffer *This,
  1130.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1131.     PRPC_MESSAGE _pRpcMessage,
  1132.     DWORD *_pdwStubPhase);
  1133. HRESULT STDMETHODCALLTYPE IQueueCommand_InvokeAtPresentationTime_Proxy( 
  1134.     IQueueCommand * This,
  1135.     /* [out] */ IDeferredCommand **pCmd,
  1136.     /* [in] */ REFTIME time,
  1137.     /* [in] */ GUID *iid,
  1138.     /* [in] */ long dispidMethod,
  1139.     /* [in] */ short wFlags,
  1140.     /* [in] */ long cArgs,
  1141.     /* [in] */ VARIANT *pDispParams,
  1142.     /* [out][in] */ VARIANT *pvarResult,
  1143.     /* [out] */ short *puArgErr);
  1144. void __RPC_STUB IQueueCommand_InvokeAtPresentationTime_Stub(
  1145.     IRpcStubBuffer *This,
  1146.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1147.     PRPC_MESSAGE _pRpcMessage,
  1148.     DWORD *_pdwStubPhase);
  1149. #endif  /* __IQueueCommand_INTERFACE_DEFINED__ */
  1150. DEFINE_GUID(CLSID_FilgraphManager,0xe436ebb3,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70);
  1151. #ifdef __cplusplus
  1152. class DECLSPEC_UUID("e436ebb3-524f-11ce-9f53-0020af0ba770")
  1153. FilgraphManager;
  1154. #endif
  1155. #ifndef __IFilterInfo_INTERFACE_DEFINED__
  1156. #define __IFilterInfo_INTERFACE_DEFINED__
  1157. /* interface IFilterInfo */
  1158. /* [object][dual][oleautomation][helpstring][uuid] */ 
  1159. DEFINE_GUID(IID_IFilterInfo,0x56a868ba,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
  1160. #if defined(__cplusplus) && !defined(CINTERFACE)
  1161.     
  1162.     MIDL_INTERFACE("56a868ba-0ad4-11ce-b03a-0020af0ba770")
  1163.     IFilterInfo : public IDispatch
  1164.     {
  1165.     public:
  1166.         virtual HRESULT STDMETHODCALLTYPE FindPin( 
  1167.             /* [in] */ BSTR strPinID,
  1168.             /* [out] */ IDispatch **ppUnk) = 0;
  1169.         
  1170.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  1171.             /* [retval][out] */ BSTR *strName) = 0;
  1172.         
  1173.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VendorInfo( 
  1174.             /* [retval][out] */ BSTR *strVendorInfo) = 0;
  1175.         
  1176.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Filter( 
  1177.             /* [retval][out] */ IUnknown **ppUnk) = 0;
  1178.         
  1179.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Pins( 
  1180.             /* [retval][out] */ IDispatch **ppUnk) = 0;
  1181.         
  1182.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IsFileSource( 
  1183.             /* [retval][out] */ LONG *pbIsSource) = 0;
  1184.         
  1185.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Filename( 
  1186.             /* [retval][out] */ BSTR *pstrFilename) = 0;
  1187.         
  1188.         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Filename( 
  1189.             /* [in] */ BSTR strFilename) = 0;
  1190.         
  1191.     };
  1192.     
  1193. #else  /* C style interface */
  1194.     typedef struct IFilterInfoVtbl
  1195.     {
  1196.         BEGIN_INTERFACE
  1197.         
  1198.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1199.             IFilterInfo * This,
  1200.             /* [in] */ REFIID riid,
  1201.             /* [iid_is][out] */ void **ppvObject);
  1202.         
  1203.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1204.             IFilterInfo * This);
  1205.         
  1206.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1207.             IFilterInfo * This);
  1208.         
  1209.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1210.             IFilterInfo * This,
  1211.             /* [out] */ UINT *pctinfo);
  1212.         
  1213.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1214.             IFilterInfo * This,
  1215.             /* [in] */ UINT iTInfo,
  1216.             /* [in] */ LCID lcid,
  1217.             /* [out] */ ITypeInfo **ppTInfo);
  1218.         
  1219.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1220.             IFilterInfo * This,
  1221.             /* [in] */ REFIID riid,
  1222.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1223.             /* [in] */ UINT cNames,
  1224.             /* [in] */ LCID lcid,
  1225.             /* [size_is][out] */ DISPID *rgDispId);
  1226.         
  1227.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1228.             IFilterInfo * This,
  1229.             /* [in] */ DISPID dispIdMember,
  1230.             /* [in] */ REFIID riid,
  1231.             /* [in] */ LCID lcid,
  1232.             /* [in] */ WORD wFlags,
  1233.             /* [out][in] */ DISPPARAMS *pDispParams,
  1234.             /* [out] */ VARIANT *pVarResult,
  1235.             /* [out] */ EXCEPINFO *pExcepInfo,
  1236.             /* [out] */ UINT *puArgErr);
  1237.         
  1238.         HRESULT ( STDMETHODCALLTYPE *FindPin )( 
  1239.             IFilterInfo * This,
  1240.             /* [in] */ BSTR strPinID,
  1241.             /* [out] */ IDispatch **ppUnk);
  1242.         
  1243.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  1244.             IFilterInfo * This,
  1245.             /* [retval][out] */ BSTR *strName);
  1246.         
  1247.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VendorInfo )( 
  1248.             IFilterInfo * This,
  1249.             /* [retval][out] */ BSTR *strVendorInfo);
  1250.         
  1251.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Filter )( 
  1252.             IFilterInfo * This,
  1253.             /* [retval][out] */ IUnknown **ppUnk);
  1254.         
  1255.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Pins )( 
  1256.             IFilterInfo * This,
  1257.             /* [retval][out] */ IDispatch **ppUnk);
  1258.         
  1259.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsFileSource )( 
  1260.             IFilterInfo * This,
  1261.             /* [retval][out] */ LONG *pbIsSource);
  1262.         
  1263.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Filename )( 
  1264.             IFilterInfo * This,
  1265.             /* [retval][out] */ BSTR *pstrFilename);
  1266.         
  1267.         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Filename )( 
  1268.             IFilterInfo * This,
  1269.             /* [in] */ BSTR strFilename);
  1270.         
  1271.         END_INTERFACE
  1272.     } IFilterInfoVtbl;
  1273.     interface IFilterInfo
  1274.     {
  1275.         CONST_VTBL struct IFilterInfoVtbl *lpVtbl;
  1276.     };
  1277.     
  1278. #ifdef COBJMACROS
  1279. #define IFilterInfo_QueryInterface(This,riid,ppvObject)
  1280.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1281. #define IFilterInfo_AddRef(This)
  1282.     (This)->lpVtbl -> AddRef(This)
  1283. #define IFilterInfo_Release(This)
  1284.     (This)->lpVtbl -> Release(This)
  1285. #define IFilterInfo_GetTypeInfoCount(This,pctinfo)
  1286.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1287. #define IFilterInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1288.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1289. #define IFilterInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1290.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1291. #define IFilterInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1292.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1293. #define IFilterInfo_FindPin(This,strPinID,ppUnk)
  1294.     (This)->lpVtbl -> FindPin(This,strPinID,ppUnk)
  1295. #define IFilterInfo_get_Name(This,strName)
  1296.     (This)->lpVtbl -> get_Name(This,strName)
  1297. #define IFilterInfo_get_VendorInfo(This,strVendorInfo)
  1298.     (This)->lpVtbl -> get_VendorInfo(This,strVendorInfo)
  1299. #define IFilterInfo_get_Filter(This,ppUnk)
  1300.     (This)->lpVtbl -> get_Filter(This,ppUnk)
  1301. #define IFilterInfo_get_Pins(This,ppUnk)
  1302.     (This)->lpVtbl -> get_Pins(This,ppUnk)
  1303. #define IFilterInfo_get_IsFileSource(This,pbIsSource)
  1304.     (This)->lpVtbl -> get_IsFileSource(This,pbIsSource)
  1305. #define IFilterInfo_get_Filename(This,pstrFilename)
  1306.     (This)->lpVtbl -> get_Filename(This,pstrFilename)
  1307. #define IFilterInfo_put_Filename(This,strFilename)
  1308.     (This)->lpVtbl -> put_Filename(This,strFilename)
  1309. #endif /* COBJMACROS */
  1310. #endif  /* C style interface */
  1311. HRESULT STDMETHODCALLTYPE IFilterInfo_FindPin_Proxy( 
  1312.     IFilterInfo * This,
  1313.     /* [in] */ BSTR strPinID,
  1314.     /* [out] */ IDispatch **ppUnk);
  1315. void __RPC_STUB IFilterInfo_FindPin_Stub(
  1316.     IRpcStubBuffer *This,
  1317.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1318.     PRPC_MESSAGE _pRpcMessage,
  1319.     DWORD *_pdwStubPhase);
  1320. /* [propget] */ HRESULT STDMETHODCALLTYPE IFilterInfo_get_Name_Proxy( 
  1321.     IFilterInfo * This,
  1322.     /* [retval][out] */ BSTR *strName);
  1323. void __RPC_STUB IFilterInfo_get_Name_Stub(
  1324.     IRpcStubBuffer *This,
  1325.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1326.     PRPC_MESSAGE _pRpcMessage,
  1327.     DWORD *_pdwStubPhase);
  1328. /* [propget] */ HRESULT STDMETHODCALLTYPE IFilterInfo_get_VendorInfo_Proxy( 
  1329.     IFilterInfo * This,
  1330.     /* [retval][out] */ BSTR *strVendorInfo);
  1331. void __RPC_STUB IFilterInfo_get_VendorInfo_Stub(
  1332.     IRpcStubBuffer *This,
  1333.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1334.     PRPC_MESSAGE _pRpcMessage,
  1335.     DWORD *_pdwStubPhase);
  1336. /* [propget] */ HRESULT STDMETHODCALLTYPE IFilterInfo_get_Filter_Proxy( 
  1337.     IFilterInfo * This,
  1338.     /* [retval][out] */ IUnknown **ppUnk);
  1339. void __RPC_STUB IFilterInfo_get_Filter_Stub(
  1340.     IRpcStubBuffer *This,
  1341.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1342.     PRPC_MESSAGE _pRpcMessage,
  1343.     DWORD *_pdwStubPhase);
  1344. /* [propget] */ HRESULT STDMETHODCALLTYPE IFilterInfo_get_Pins_Proxy( 
  1345.     IFilterInfo * This,
  1346.     /* [retval][out] */ IDispatch **ppUnk);
  1347. void __RPC_STUB IFilterInfo_get_Pins_Stub(
  1348.     IRpcStubBuffer *This,
  1349.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1350.     PRPC_MESSAGE _pRpcMessage,
  1351.     DWORD *_pdwStubPhase);
  1352. /* [propget] */ HRESULT STDMETHODCALLTYPE IFilterInfo_get_IsFileSource_Proxy( 
  1353.     IFilterInfo * This,
  1354.     /* [retval][out] */ LONG *pbIsSource);
  1355. void __RPC_STUB IFilterInfo_get_IsFileSource_Stub(
  1356.     IRpcStubBuffer *This,
  1357.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1358.     PRPC_MESSAGE _pRpcMessage,
  1359.     DWORD *_pdwStubPhase);
  1360. /* [propget] */ HRESULT STDMETHODCALLTYPE IFilterInfo_get_Filename_Proxy( 
  1361.     IFilterInfo * This,
  1362.     /* [retval][out] */ BSTR *pstrFilename);
  1363. void __RPC_STUB IFilterInfo_get_Filename_Stub(
  1364.     IRpcStubBuffer *This,
  1365.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1366.     PRPC_MESSAGE _pRpcMessage,
  1367.     DWORD *_pdwStubPhase);
  1368. /* [propput] */ HRESULT STDMETHODCALLTYPE IFilterInfo_put_Filename_Proxy( 
  1369.     IFilterInfo * This,
  1370.     /* [in] */ BSTR strFilename);
  1371. void __RPC_STUB IFilterInfo_put_Filename_Stub(
  1372.     IRpcStubBuffer *This,
  1373.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1374.     PRPC_MESSAGE _pRpcMessage,
  1375.     DWORD *_pdwStubPhase);
  1376. #endif  /* __IFilterInfo_INTERFACE_DEFINED__ */
  1377. #ifndef __IRegFilterInfo_INTERFACE_DEFINED__
  1378. #define __IRegFilterInfo_INTERFACE_DEFINED__
  1379. /* interface IRegFilterInfo */
  1380. /* [object][dual][oleautomation][helpstring][uuid] */ 
  1381. DEFINE_GUID(IID_IRegFilterInfo,0x56a868bb,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
  1382. #if defined(__cplusplus) && !defined(CINTERFACE)
  1383.     
  1384.     MIDL_INTERFACE("56a868bb-0ad4-11ce-b03a-0020af0ba770")
  1385.     IRegFilterInfo : public IDispatch
  1386.     {
  1387.     public:
  1388.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  1389.             /* [retval][out] */ BSTR *strName) = 0;
  1390.         
  1391.         virtual HRESULT STDMETHODCALLTYPE Filter( 
  1392.             /* [out] */ IDispatch **ppUnk) = 0;
  1393.         
  1394.     };
  1395.     
  1396. #else  /* C style interface */
  1397.     typedef struct IRegFilterInfoVtbl
  1398.     {
  1399.         BEGIN_INTERFACE
  1400.         
  1401.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1402.             IRegFilterInfo * This,
  1403.             /* [in] */ REFIID riid,
  1404.             /* [iid_is][out] */ void **ppvObject);
  1405.         
  1406.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1407.             IRegFilterInfo * This);
  1408.         
  1409.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1410.             IRegFilterInfo * This);
  1411.         
  1412.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1413.             IRegFilterInfo * This,
  1414.             /* [out] */ UINT *pctinfo);
  1415.         
  1416.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1417.             IRegFilterInfo * This,
  1418.             /* [in] */ UINT iTInfo,
  1419.             /* [in] */ LCID lcid,
  1420.             /* [out] */ ITypeInfo **ppTInfo);
  1421.         
  1422.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1423.             IRegFilterInfo * This,
  1424.             /* [in] */ REFIID riid,
  1425.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1426.             /* [in] */ UINT cNames,
  1427.             /* [in] */ LCID lcid,
  1428.             /* [size_is][out] */ DISPID *rgDispId);
  1429.         
  1430.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1431.             IRegFilterInfo * This,
  1432.             /* [in] */ DISPID dispIdMember,
  1433.             /* [in] */ REFIID riid,
  1434.             /* [in] */ LCID lcid,
  1435.             /* [in] */ WORD wFlags,
  1436.             /* [out][in] */ DISPPARAMS *pDispParams,
  1437.             /* [out] */ VARIANT *pVarResult,
  1438.             /* [out] */ EXCEPINFO *pExcepInfo,
  1439.             /* [out] */ UINT *puArgErr);
  1440.         
  1441.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  1442.             IRegFilterInfo * This,
  1443.             /* [retval][out] */ BSTR *strName);
  1444.         
  1445.         HRESULT ( STDMETHODCALLTYPE *Filter )( 
  1446.             IRegFilterInfo * This,
  1447.             /* [out] */ IDispatch **ppUnk);
  1448.         
  1449.         END_INTERFACE
  1450.     } IRegFilterInfoVtbl;
  1451.     interface IRegFilterInfo
  1452.     {
  1453.         CONST_VTBL struct IRegFilterInfoVtbl *lpVtbl;
  1454.     };
  1455.     
  1456. #ifdef COBJMACROS
  1457. #define IRegFilterInfo_QueryInterface(This,riid,ppvObject)
  1458.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1459. #define IRegFilterInfo_AddRef(This)
  1460.     (This)->lpVtbl -> AddRef(This)
  1461. #define IRegFilterInfo_Release(This)
  1462.     (This)->lpVtbl -> Release(This)
  1463. #define IRegFilterInfo_GetTypeInfoCount(This,pctinfo)
  1464.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1465. #define IRegFilterInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1466.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1467. #define IRegFilterInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1468.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1469. #define IRegFilterInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1470.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1471. #define IRegFilterInfo_get_Name(This,strName)
  1472.     (This)->lpVtbl -> get_Name(This,strName)
  1473. #define IRegFilterInfo_Filter(This,ppUnk)
  1474.     (This)->lpVtbl -> Filter(This,ppUnk)
  1475. #endif /* COBJMACROS */
  1476. #endif  /* C style interface */
  1477. /* [propget] */ HRESULT STDMETHODCALLTYPE IRegFilterInfo_get_Name_Proxy( 
  1478.     IRegFilterInfo * This,
  1479.     /* [retval][out] */ BSTR *strName);
  1480. void __RPC_STUB IRegFilterInfo_get_Name_Stub(
  1481.     IRpcStubBuffer *This,
  1482.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1483.     PRPC_MESSAGE _pRpcMessage,
  1484.     DWORD *_pdwStubPhase);
  1485. HRESULT STDMETHODCALLTYPE IRegFilterInfo_Filter_Proxy( 
  1486.     IRegFilterInfo * This,
  1487.     /* [out] */ IDispatch **ppUnk);
  1488. void __RPC_STUB IRegFilterInfo_Filter_Stub(
  1489.     IRpcStubBuffer *This,
  1490.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1491.     PRPC_MESSAGE _pRpcMessage,
  1492.     DWORD *_pdwStubPhase);
  1493. #endif  /* __IRegFilterInfo_INTERFACE_DEFINED__ */
  1494. #ifndef __IMediaTypeInfo_INTERFACE_DEFINED__
  1495. #define __IMediaTypeInfo_INTERFACE_DEFINED__
  1496. /* interface IMediaTypeInfo */
  1497. /* [object][dual][oleautomation][helpstring][uuid] */ 
  1498. DEFINE_GUID(IID_IMediaTypeInfo,0x56a868bc,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
  1499. #if defined(__cplusplus) && !defined(CINTERFACE)
  1500.     
  1501.     MIDL_INTERFACE("56a868bc-0ad4-11ce-b03a-0020af0ba770")
  1502.     IMediaTypeInfo : public IDispatch
  1503.     {
  1504.     public:
  1505.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
  1506.             /* [retval][out] */ BSTR *strType) = 0;
  1507.         
  1508.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Subtype( 
  1509.             /* [retval][out] */ BSTR *strType) = 0;
  1510.         
  1511.     };
  1512.     
  1513. #else  /* C style interface */
  1514.     typedef struct IMediaTypeInfoVtbl
  1515.     {
  1516.         BEGIN_INTERFACE
  1517.         
  1518.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1519.             IMediaTypeInfo * This,
  1520.             /* [in] */ REFIID riid,
  1521.             /* [iid_is][out] */ void **ppvObject);
  1522.         
  1523.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1524.             IMediaTypeInfo * This);
  1525.         
  1526.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1527.             IMediaTypeInfo * This);
  1528.         
  1529.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1530.             IMediaTypeInfo * This,
  1531.             /* [out] */ UINT *pctinfo);
  1532.         
  1533.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1534.             IMediaTypeInfo * This,
  1535.             /* [in] */ UINT iTInfo,
  1536.             /* [in] */ LCID lcid,
  1537.             /* [out] */ ITypeInfo **ppTInfo);
  1538.         
  1539.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1540.             IMediaTypeInfo * This,
  1541.             /* [in] */ REFIID riid,
  1542.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1543.             /* [in] */ UINT cNames,
  1544.             /* [in] */ LCID lcid,
  1545.             /* [size_is][out] */ DISPID *rgDispId);
  1546.         
  1547.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1548.             IMediaTypeInfo * This,
  1549.             /* [in] */ DISPID dispIdMember,
  1550.             /* [in] */ REFIID riid,
  1551.             /* [in] */ LCID lcid,
  1552.             /* [in] */ WORD wFlags,
  1553.             /* [out][in] */ DISPPARAMS *pDispParams,
  1554.             /* [out] */ VARIANT *pVarResult,
  1555.             /* [out] */ EXCEPINFO *pExcepInfo,
  1556.             /* [out] */ UINT *puArgErr);
  1557.         
  1558.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
  1559.             IMediaTypeInfo * This,
  1560.             /* [retval][out] */ BSTR *strType);
  1561.         
  1562.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Subtype )( 
  1563.             IMediaTypeInfo * This,
  1564.             /* [retval][out] */ BSTR *strType);
  1565.         
  1566.         END_INTERFACE
  1567.     } IMediaTypeInfoVtbl;
  1568.     interface IMediaTypeInfo
  1569.     {
  1570.         CONST_VTBL struct IMediaTypeInfoVtbl *lpVtbl;
  1571.     };
  1572.     
  1573. #ifdef COBJMACROS
  1574. #define IMediaTypeInfo_QueryInterface(This,riid,ppvObject)
  1575.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1576. #define IMediaTypeInfo_AddRef(This)
  1577.     (This)->lpVtbl -> AddRef(This)
  1578. #define IMediaTypeInfo_Release(This)
  1579.     (This)->lpVtbl -> Release(This)
  1580. #define IMediaTypeInfo_GetTypeInfoCount(This,pctinfo)
  1581.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1582. #define IMediaTypeInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1583.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1584. #define IMediaTypeInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1585.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1586. #define IMediaTypeInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1587.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1588. #define IMediaTypeInfo_get_Type(This,strType)
  1589.     (This)->lpVtbl -> get_Type(This,strType)
  1590. #define IMediaTypeInfo_get_Subtype(This,strType)
  1591.     (This)->lpVtbl -> get_Subtype(This,strType)
  1592. #endif /* COBJMACROS */
  1593. #endif  /* C style interface */
  1594. /* [propget] */ HRESULT STDMETHODCALLTYPE IMediaTypeInfo_get_Type_Proxy( 
  1595.     IMediaTypeInfo * This,
  1596.     /* [retval][out] */ BSTR *strType);
  1597. void __RPC_STUB IMediaTypeInfo_get_Type_Stub(
  1598.     IRpcStubBuffer *This,
  1599.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1600.     PRPC_MESSAGE _pRpcMessage,
  1601.     DWORD *_pdwStubPhase);
  1602. /* [propget] */ HRESULT STDMETHODCALLTYPE IMediaTypeInfo_get_Subtype_Proxy( 
  1603.     IMediaTypeInfo * This,
  1604.     /* [retval][out] */ BSTR *strType);
  1605. void __RPC_STUB IMediaTypeInfo_get_Subtype_Stub(
  1606.     IRpcStubBuffer *This,
  1607.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1608.     PRPC_MESSAGE _pRpcMessage,
  1609.     DWORD *_pdwStubPhase);
  1610. #endif  /* __IMediaTypeInfo_INTERFACE_DEFINED__ */
  1611. #ifndef __IPinInfo_INTERFACE_DEFINED__
  1612. #define __IPinInfo_INTERFACE_DEFINED__
  1613. /* interface IPinInfo */
  1614. /* [object][dual][oleautomation][helpstring][uuid] */ 
  1615. DEFINE_GUID(IID_IPinInfo,0x56a868bd,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
  1616. #if defined(__cplusplus) && !defined(CINTERFACE)
  1617.     
  1618.     MIDL_INTERFACE("56a868bd-0ad4-11ce-b03a-0020af0ba770")
  1619.     IPinInfo : public IDispatch
  1620.     {
  1621.     public:
  1622.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Pin( 
  1623.             /* [retval][out] */ IUnknown **ppUnk) = 0;
  1624.         
  1625.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ConnectedTo( 
  1626.             /* [retval][out] */ IDispatch **ppUnk) = 0;
  1627.         
  1628.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ConnectionMediaType( 
  1629.             /* [retval][out] */ IDispatch **ppUnk) = 0;
  1630.         
  1631.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FilterInfo( 
  1632.             /* [retval][out] */ IDispatch **ppUnk) = 0;
  1633.         
  1634.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  1635.             /* [retval][out] */ BSTR *ppUnk) = 0;
  1636.         
  1637.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Direction( 
  1638.             /* [retval][out] */ LONG *ppDirection) = 0;
  1639.         
  1640.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PinID( 
  1641.             /* [retval][out] */ BSTR *strPinID) = 0;
  1642.         
  1643.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MediaTypes( 
  1644.             /* [retval][out] */ IDispatch **ppUnk) = 0;
  1645.         
  1646.         virtual HRESULT STDMETHODCALLTYPE Connect( 
  1647.             /* [in] */ IUnknown *pPin) = 0;
  1648.         
  1649.         virtual HRESULT STDMETHODCALLTYPE ConnectDirect( 
  1650.             /* [in] */ IUnknown *pPin) = 0;
  1651.         
  1652.         virtual HRESULT STDMETHODCALLTYPE ConnectWithType( 
  1653.             /* [in] */ IUnknown *pPin,
  1654.             /* [in] */ IDispatch *pMediaType) = 0;
  1655.         
  1656.         virtual HRESULT STDMETHODCALLTYPE Disconnect( void) = 0;
  1657.         
  1658.         virtual HRESULT STDMETHODCALLTYPE Render( void) = 0;
  1659.         
  1660.     };
  1661.     
  1662. #else  /* C style interface */
  1663.     typedef struct IPinInfoVtbl
  1664.     {
  1665.         BEGIN_INTERFACE
  1666.         
  1667.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1668.             IPinInfo * This,
  1669.             /* [in] */ REFIID riid,
  1670.             /* [iid_is][out] */ void **ppvObject);
  1671.         
  1672.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1673.             IPinInfo * This);
  1674.         
  1675.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1676.             IPinInfo * This);
  1677.         
  1678.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1679.             IPinInfo * This,
  1680.             /* [out] */ UINT *pctinfo);
  1681.         
  1682.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1683.             IPinInfo * This,
  1684.             /* [in] */ UINT iTInfo,
  1685.             /* [in] */ LCID lcid,
  1686.             /* [out] */ ITypeInfo **ppTInfo);
  1687.         
  1688.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1689.             IPinInfo * This,
  1690.             /* [in] */ REFIID riid,
  1691.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1692.             /* [in] */ UINT cNames,
  1693.             /* [in] */ LCID lcid,
  1694.             /* [size_is][out] */ DISPID *rgDispId);
  1695.         
  1696.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1697.             IPinInfo * This,
  1698.             /* [in] */ DISPID dispIdMember,
  1699.             /* [in] */ REFIID riid,
  1700.             /* [in] */ LCID lcid,
  1701.             /* [in] */ WORD wFlags,
  1702.             /* [out][in] */ DISPPARAMS *pDispParams,
  1703.             /* [out] */ VARIANT *pVarResult,
  1704.             /* [out] */ EXCEPINFO *pExcepInfo,
  1705.             /* [out] */ UINT *puArgErr);
  1706.         
  1707.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Pin )( 
  1708.             IPinInfo * This,
  1709.             /* [retval][out] */ IUnknown **ppUnk);
  1710.         
  1711.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectedTo )( 
  1712.             IPinInfo * This,
  1713.             /* [retval][out] */ IDispatch **ppUnk);
  1714.         
  1715.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectionMediaType )( 
  1716.             IPinInfo * This,
  1717.             /* [retval][out] */ IDispatch **ppUnk);
  1718.         
  1719.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FilterInfo )( 
  1720.             IPinInfo * This,
  1721.             /* [retval][out] */ IDispatch **ppUnk);
  1722.         
  1723.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
  1724.             IPinInfo * This,
  1725.             /* [retval][out] */ BSTR *ppUnk);
  1726.         
  1727.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )( 
  1728.             IPinInfo * This,
  1729.             /* [retval][out] */ LONG *ppDirection);
  1730.         
  1731.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PinID )( 
  1732.             IPinInfo * This,
  1733.             /* [retval][out] */ BSTR *strPinID);
  1734.         
  1735.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaTypes )( 
  1736.             IPinInfo * This,
  1737.             /* [retval][out] */ IDispatch **ppUnk);
  1738.         
  1739.         HRESULT ( STDMETHODCALLTYPE *Connect )( 
  1740.             IPinInfo * This,
  1741.             /* [in] */ IUnknown *pPin);
  1742.         
  1743.         HRESULT ( STDMETHODCALLTYPE *ConnectDirect )( 
  1744.             IPinInfo * This,
  1745.             /* [in] */ IUnknown *pPin);
  1746.         
  1747.         HRESULT ( STDMETHODCALLTYPE *ConnectWithType )( 
  1748.             IPinInfo * This,
  1749.             /* [in] */ IUnknown *pPin,
  1750.             /* [in] */ IDispatch *pMediaType);
  1751.         
  1752.         HRESULT ( STDMETHODCALLTYPE *Disconnect )( 
  1753.             IPinInfo * This);
  1754.         
  1755.         HRESULT ( STDMETHODCALLTYPE *Render )( 
  1756.             IPinInfo * This);
  1757.         
  1758.         END_INTERFACE
  1759.     } IPinInfoVtbl;
  1760.     interface IPinInfo
  1761.     {
  1762.         CONST_VTBL struct IPinInfoVtbl *lpVtbl;
  1763.     };
  1764.     
  1765. #ifdef COBJMACROS
  1766. #define IPinInfo_QueryInterface(This,riid,ppvObject)
  1767.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1768. #define IPinInfo_AddRef(This)
  1769.     (This)->lpVtbl -> AddRef(This)
  1770. #define IPinInfo_Release(This)
  1771.     (This)->lpVtbl -> Release(This)
  1772. #define IPinInfo_GetTypeInfoCount(This,pctinfo)
  1773.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1774. #define IPinInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1775.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1776. #define IPinInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1777.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1778. #define IPinInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1779.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1780. #define IPinInfo_get_Pin(This,ppUnk)
  1781.     (This)->lpVtbl -> get_Pin(This,ppUnk)
  1782. #define IPinInfo_get_ConnectedTo(This,ppUnk)
  1783.     (This)->lpVtbl -> get_ConnectedTo(This,ppUnk)
  1784. #define IPinInfo_get_ConnectionMediaType(This,ppUnk)
  1785.     (This)->lpVtbl -> get_ConnectionMediaType(This,ppUnk)
  1786. #define IPinInfo_get_FilterInfo(This,ppUnk)
  1787.     (This)->lpVtbl -> get_FilterInfo(This,ppUnk)
  1788. #define IPinInfo_get_Name(This,ppUnk)
  1789.     (This)->lpVtbl -> get_Name(This,ppUnk)
  1790. #define IPinInfo_get_Direction(This,ppDirection)
  1791.     (This)->lpVtbl -> get_Direction(This,ppDirection)
  1792. #define IPinInfo_get_PinID(This,strPinID)
  1793.     (This)->lpVtbl -> get_PinID(This,strPinID)
  1794. #define IPinInfo_get_MediaTypes(This,ppUnk)
  1795.     (This)->lpVtbl -> get_MediaTypes(This,ppUnk)
  1796. #define IPinInfo_Connect(This,pPin)
  1797.     (This)->lpVtbl -> Connect(This,pPin)
  1798. #define IPinInfo_ConnectDirect(This,pPin)
  1799.     (This)->lpVtbl -> ConnectDirect(This,pPin)
  1800. #define IPinInfo_ConnectWithType(This,pPin,pMediaType)
  1801.     (This)->lpVtbl -> ConnectWithType(This,pPin,pMediaType)
  1802. #define IPinInfo_Disconnect(This)
  1803.     (This)->lpVtbl -> Disconnect(This)
  1804. #define IPinInfo_Render(This)
  1805.     (This)->lpVtbl -> Render(This)
  1806. #endif /* COBJMACROS */
  1807. #endif  /* C style interface */
  1808. /* [propget] */ HRESULT STDMETHODCALLTYPE IPinInfo_get_Pin_Proxy( 
  1809.     IPinInfo * This,
  1810.     /* [retval][out] */ IUnknown **ppUnk);
  1811. void __RPC_STUB IPinInfo_get_Pin_Stub(
  1812.     IRpcStubBuffer *This,
  1813.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1814.     PRPC_MESSAGE _pRpcMessage,
  1815.     DWORD *_pdwStubPhase);
  1816. /* [propget] */ HRESULT STDMETHODCALLTYPE IPinInfo_get_ConnectedTo_Proxy( 
  1817.     IPinInfo * This,
  1818.     /* [retval][out] */ IDispatch **ppUnk);
  1819. void __RPC_STUB IPinInfo_get_ConnectedTo_Stub(
  1820.     IRpcStubBuffer *This,
  1821.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1822.     PRPC_MESSAGE _pRpcMessage,
  1823.     DWORD *_pdwStubPhase);
  1824. /* [propget] */ HRESULT STDMETHODCALLTYPE IPinInfo_get_ConnectionMediaType_Proxy( 
  1825.     IPinInfo * This,
  1826.     /* [retval][out] */ IDispatch **ppUnk);
  1827. void __RPC_STUB IPinInfo_get_ConnectionMediaType_Stub(
  1828.     IRpcStubBuffer *This,
  1829.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1830.     PRPC_MESSAGE _pRpcMessage,
  1831.     DWORD *_pdwStubPhase);
  1832. /* [propget] */ HRESULT STDMETHODCALLTYPE IPinInfo_get_FilterInfo_Proxy( 
  1833.     IPinInfo * This,
  1834.     /* [retval][out] */ IDispatch **ppUnk);
  1835. void __RPC_STUB IPinInfo_get_FilterInfo_Stub(
  1836.     IRpcStubBuffer *This,
  1837.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1838.     PRPC_MESSAGE _pRpcMessage,
  1839.     DWORD *_pdwStubPhase);
  1840. /* [propget] */ HRESULT STDMETHODCALLTYPE IPinInfo_get_Name_Proxy( 
  1841.     IPinInfo * This,
  1842.     /* [retval][out] */ BSTR *ppUnk);
  1843. void __RPC_STUB IPinInfo_get_Name_Stub(
  1844.     IRpcStubBuffer *This,
  1845.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1846.     PRPC_MESSAGE _pRpcMessage,
  1847.     DWORD *_pdwStubPhase);
  1848. /* [propget] */ HRESULT STDMETHODCALLTYPE IPinInfo_get_Direction_Proxy( 
  1849.     IPinInfo * This,
  1850.     /* [retval][out] */ LONG *ppDirection);
  1851. void __RPC_STUB IPinInfo_get_Direction_Stub(
  1852.     IRpcStubBuffer *This,
  1853.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1854.     PRPC_MESSAGE _pRpcMessage,
  1855.     DWORD *_pdwStubPhase);
  1856. /* [propget] */ HRESULT STDMETHODCALLTYPE IPinInfo_get_PinID_Proxy( 
  1857.     IPinInfo * This,
  1858.     /* [retval][out] */ BSTR *strPinID);
  1859. void __RPC_STUB IPinInfo_get_PinID_Stub(
  1860.     IRpcStubBuffer *This,
  1861.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1862.     PRPC_MESSAGE _pRpcMessage,
  1863.     DWORD *_pdwStubPhase);
  1864. /* [propget] */ HRESULT STDMETHODCALLTYPE IPinInfo_get_MediaTypes_Proxy( 
  1865.     IPinInfo * This,
  1866.     /* [retval][out] */ IDispatch **ppUnk);
  1867. void __RPC_STUB IPinInfo_get_MediaTypes_Stub(
  1868.     IRpcStubBuffer *This,
  1869.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1870.     PRPC_MESSAGE _pRpcMessage,
  1871.     DWORD *_pdwStubPhase);
  1872. HRESULT STDMETHODCALLTYPE IPinInfo_Connect_Proxy( 
  1873.     IPinInfo * This,
  1874.     /* [in] */ IUnknown *pPin);
  1875. void __RPC_STUB IPinInfo_Connect_Stub(
  1876.     IRpcStubBuffer *This,
  1877.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1878.     PRPC_MESSAGE _pRpcMessage,
  1879.     DWORD *_pdwStubPhase);
  1880. HRESULT STDMETHODCALLTYPE IPinInfo_ConnectDirect_Proxy( 
  1881.     IPinInfo * This,
  1882.     /* [in] */ IUnknown *pPin);
  1883. void __RPC_STUB IPinInfo_ConnectDirect_Stub(
  1884.     IRpcStubBuffer *This,
  1885.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1886.     PRPC_MESSAGE _pRpcMessage,
  1887.     DWORD *_pdwStubPhase);
  1888. HRESULT STDMETHODCALLTYPE IPinInfo_ConnectWithType_Proxy( 
  1889.     IPinInfo * This,
  1890.     /* [in] */ IUnknown *pPin,
  1891.     /* [in] */ IDispatch *pMediaType);
  1892. void __RPC_STUB IPinInfo_ConnectWithType_Stub(
  1893.     IRpcStubBuffer *This,
  1894.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1895.     PRPC_MESSAGE _pRpcMessage,
  1896.     DWORD *_pdwStubPhase);
  1897. HRESULT STDMETHODCALLTYPE IPinInfo_Disconnect_Proxy( 
  1898.     IPinInfo * This);
  1899. void __RPC_STUB IPinInfo_Disconnect_Stub(
  1900.     IRpcStubBuffer *This,
  1901.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1902.     PRPC_MESSAGE _pRpcMessage,
  1903.     DWORD *_pdwStubPhase);
  1904. HRESULT STDMETHODCALLTYPE IPinInfo_Render_Proxy( 
  1905.     IPinInfo * This);
  1906. void __RPC_STUB IPinInfo_Render_Stub(
  1907.     IRpcStubBuffer *This,
  1908.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1909.     PRPC_MESSAGE _pRpcMessage,
  1910.     DWORD *_pdwStubPhase);
  1911. #endif  /* __IPinInfo_INTERFACE_DEFINED__ */
  1912. #ifndef __IAMStats_INTERFACE_DEFINED__
  1913. #define __IAMStats_INTERFACE_DEFINED__
  1914. /* interface IAMStats */
  1915. /* [object][dual][oleautomation][helpstring][uuid] */ 
  1916. DEFINE_GUID(IID_IAMStats,0xbc9bcf80,0xdcd2,0x11d2,0xab,0xf6,0x00,0xa0,0xc9,0x05,0xf3,0x75);
  1917. #if defined(__cplusplus) && !defined(CINTERFACE)
  1918.     
  1919.     MIDL_INTERFACE("bc9bcf80-dcd2-11d2-abf6-00a0c905f375")
  1920.     IAMStats : public IDispatch
  1921.     {
  1922.     public:
  1923.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1924.         
  1925.         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
  1926.             /* [retval][out] */ LONG *plCount) = 0;
  1927.         
  1928.         virtual HRESULT STDMETHODCALLTYPE GetValueByIndex( 
  1929.             /* [in] */ long lIndex,
  1930.             /* [out] */ BSTR *szName,
  1931.             /* [out] */ long *lCount,
  1932.             /* [out] */ double *dLast,
  1933.             /* [out] */ double *dAverage,
  1934.             /* [out] */ double *dStdDev,
  1935.             /* [out] */ double *dMin,
  1936.             /* [out] */ double *dMax) = 0;
  1937.         
  1938.         virtual HRESULT STDMETHODCALLTYPE GetValueByName( 
  1939.             /* [in] */ BSTR szName,
  1940.             /* [out] */ long *lIndex,
  1941.             /* [out] */ long *lCount,
  1942.             /* [out] */ double *dLast,
  1943.             /* [out] */ double *dAverage,
  1944.             /* [out] */ double *dStdDev,
  1945.             /* [out] */ double *dMin,
  1946.             /* [out] */ double *dMax) = 0;
  1947.         
  1948.         virtual HRESULT STDMETHODCALLTYPE GetIndex( 
  1949.             /* [in] */ BSTR szName,
  1950.             /* [in] */ long lCreate,
  1951.             /* [out] */ long *plIndex) = 0;
  1952.         
  1953.         virtual HRESULT STDMETHODCALLTYPE AddValue( 
  1954.             /* [in] */ long lIndex,
  1955.             /* [in] */ double dValue) = 0;
  1956.         
  1957.     };
  1958.     
  1959. #else  /* C style interface */
  1960.     typedef struct IAMStatsVtbl
  1961.     {
  1962.         BEGIN_INTERFACE
  1963.         
  1964.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1965.             IAMStats * This,
  1966.             /* [in] */ REFIID riid,
  1967.             /* [iid_is][out] */ void **ppvObject);
  1968.         
  1969.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1970.             IAMStats * This);
  1971.         
  1972.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1973.             IAMStats * This);
  1974.         
  1975.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1976.             IAMStats * This,
  1977.             /* [out] */ UINT *pctinfo);
  1978.         
  1979.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1980.             IAMStats * This,
  1981.             /* [in] */ UINT iTInfo,
  1982.             /* [in] */ LCID lcid,
  1983.             /* [out] */ ITypeInfo **ppTInfo);
  1984.         
  1985.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1986.             IAMStats * This,
  1987.             /* [in] */ REFIID riid,
  1988.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1989.             /* [in] */ UINT cNames,
  1990.             /* [in] */ LCID lcid,
  1991.             /* [size_is][out] */ DISPID *rgDispId);
  1992.         
  1993.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1994.             IAMStats * This,
  1995.             /* [in] */ DISPID dispIdMember,
  1996.             /* [in] */ REFIID riid,
  1997.             /* [in] */ LCID lcid,
  1998.             /* [in] */ WORD wFlags,
  1999.             /* [out][in] */ DISPPARAMS *pDispParams,
  2000.             /* [out] */ VARIANT *pVarResult,
  2001.             /* [out] */ EXCEPINFO *pExcepInfo,
  2002.             /* [out] */ UINT *puArgErr);
  2003.         
  2004.         HRESULT ( STDMETHODCALLTYPE *Reset )( 
  2005.             IAMStats * This);
  2006.         
  2007.         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
  2008.             IAMStats * This,
  2009.             /* [retval][out] */ LONG *plCount);
  2010.         
  2011.         HRESULT ( STDMETHODCALLTYPE *GetValueByIndex )( 
  2012.             IAMStats * This,
  2013.             /* [in] */ long lIndex,
  2014.             /* [out] */ BSTR *szName,
  2015.             /* [out] */ long *lCount,
  2016.             /* [out] */ double *dLast,
  2017.             /* [out] */ double *dAverage,
  2018.             /* [out] */ double *dStdDev,
  2019.             /* [out] */ double *dMin,
  2020.             /* [out] */ double *dMax);
  2021.         
  2022.         HRESULT ( STDMETHODCALLTYPE *GetValueByName )( 
  2023.             IAMStats * This,
  2024.             /* [in] */ BSTR szName,
  2025.             /* [out] */ long *lIndex,
  2026.             /* [out] */ long *lCount,
  2027.             /* [out] */ double *dLast,
  2028.             /* [out] */ double *dAverage,
  2029.             /* [out] */ double *dStdDev,
  2030.             /* [out] */ double *dMin,
  2031.             /* [out] */ double *dMax);
  2032.         
  2033.         HRESULT ( STDMETHODCALLTYPE *GetIndex )( 
  2034.             IAMStats * This,
  2035.             /* [in] */ BSTR szName,
  2036.             /* [in] */ long lCreate,
  2037.             /* [out] */ long *plIndex);
  2038.         
  2039.         HRESULT ( STDMETHODCALLTYPE *AddValue )( 
  2040.             IAMStats * This,
  2041.             /* [in] */ long lIndex,
  2042.             /* [in] */ double dValue);
  2043.         
  2044.         END_INTERFACE
  2045.     } IAMStatsVtbl;
  2046.     interface IAMStats
  2047.     {
  2048.         CONST_VTBL struct IAMStatsVtbl *lpVtbl;
  2049.     };
  2050.     
  2051. #ifdef COBJMACROS
  2052. #define IAMStats_QueryInterface(This,riid,ppvObject)
  2053.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2054. #define IAMStats_AddRef(This)
  2055.     (This)->lpVtbl -> AddRef(This)
  2056. #define IAMStats_Release(This)
  2057.     (This)->lpVtbl -> Release(This)
  2058. #define IAMStats_GetTypeInfoCount(This,pctinfo)
  2059.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2060. #define IAMStats_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2061.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2062. #define IAMStats_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2063.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2064. #define IAMStats_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2065.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2066. #define IAMStats_Reset(This)
  2067.     (This)->lpVtbl -> Reset(This)
  2068. #define IAMStats_get_Count(This,plCount)
  2069.     (This)->lpVtbl -> get_Count(This,plCount)
  2070. #define IAMStats_GetValueByIndex(This,lIndex,szName,lCount,dLast,dAverage,dStdDev,dMin,dMax)
  2071.     (This)->lpVtbl -> GetValueByIndex(This,lIndex,szName,lCount,dLast,dAverage,dStdDev,dMin,dMax)
  2072. #define IAMStats_GetValueByName(This,szName,lIndex,lCount,dLast,dAverage,dStdDev,dMin,dMax)
  2073.     (This)->lpVtbl -> GetValueByName(This,szName,lIndex,lCount,dLast,dAverage,dStdDev,dMin,dMax)
  2074. #define IAMStats_GetIndex(This,szName,lCreate,plIndex)
  2075.     (This)->lpVtbl -> GetIndex(This,szName,lCreate,plIndex)
  2076. #define IAMStats_AddValue(This,lIndex,dValue)
  2077.     (This)->lpVtbl -> AddValue(This,lIndex,dValue)
  2078. #endif /* COBJMACROS */
  2079. #endif  /* C style interface */
  2080. HRESULT STDMETHODCALLTYPE IAMStats_Reset_Proxy( 
  2081.     IAMStats * This);
  2082. void __RPC_STUB IAMStats_Reset_Stub(
  2083.     IRpcStubBuffer *This,
  2084.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2085.     PRPC_MESSAGE _pRpcMessage,
  2086.     DWORD *_pdwStubPhase);
  2087. /* [propget] */ HRESULT STDMETHODCALLTYPE IAMStats_get_Count_Proxy( 
  2088.     IAMStats * This,
  2089.     /* [retval][out] */ LONG *plCount);
  2090. void __RPC_STUB IAMStats_get_Count_Stub(
  2091.     IRpcStubBuffer *This,
  2092.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2093.     PRPC_MESSAGE _pRpcMessage,
  2094.     DWORD *_pdwStubPhase);
  2095. HRESULT STDMETHODCALLTYPE IAMStats_GetValueByIndex_Proxy( 
  2096.     IAMStats * This,
  2097.     /* [in] */ long lIndex,
  2098.     /* [out] */ BSTR *szName,
  2099.     /* [out] */ long *lCount,
  2100.     /* [out] */ double *dLast,
  2101.     /* [out] */ double *dAverage,
  2102.     /* [out] */ double *dStdDev,
  2103.     /* [out] */ double *dMin,
  2104.     /* [out] */ double *dMax);
  2105. void __RPC_STUB IAMStats_GetValueByIndex_Stub(
  2106.     IRpcStubBuffer *This,
  2107.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2108.     PRPC_MESSAGE _pRpcMessage,
  2109.     DWORD *_pdwStubPhase);
  2110. HRESULT STDMETHODCALLTYPE IAMStats_GetValueByName_Proxy( 
  2111.     IAMStats * This,
  2112.     /* [in] */ BSTR szName,
  2113.     /* [out] */ long *lIndex,
  2114.     /* [out] */ long *lCount,
  2115.     /* [out] */ double *dLast,
  2116.     /* [out] */ double *dAverage,
  2117.     /* [out] */ double *dStdDev,
  2118.     /* [out] */ double *dMin,
  2119.     /* [out] */ double *dMax);
  2120. void __RPC_STUB IAMStats_GetValueByName_Stub(
  2121.     IRpcStubBuffer *This,
  2122.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2123.     PRPC_MESSAGE _pRpcMessage,
  2124.     DWORD *_pdwStubPhase);
  2125. HRESULT STDMETHODCALLTYPE IAMStats_GetIndex_Proxy( 
  2126.     IAMStats * This,
  2127.     /* [in] */ BSTR szName,
  2128.     /* [in] */ long lCreate,
  2129.     /* [out] */ long *plIndex);
  2130. void __RPC_STUB IAMStats_GetIndex_Stub(
  2131.     IRpcStubBuffer *This,
  2132.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2133.     PRPC_MESSAGE _pRpcMessage,
  2134.     DWORD *_pdwStubPhase);
  2135. HRESULT STDMETHODCALLTYPE IAMStats_AddValue_Proxy( 
  2136.     IAMStats * This,
  2137.     /* [in] */ long lIndex,
  2138.     /* [in] */ double dValue);
  2139. void __RPC_STUB IAMStats_AddValue_Stub(
  2140.     IRpcStubBuffer *This,
  2141.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2142.     PRPC_MESSAGE _pRpcMessage,
  2143.     DWORD *_pdwStubPhase);
  2144. #endif  /* __IAMStats_INTERFACE_DEFINED__ */
  2145. #endif /* __QuartzTypeLib_LIBRARY_DEFINED__ */
  2146. /* Additional Prototypes for ALL interfaces */
  2147. /* end of Additional Prototypes */
  2148. #ifdef __cplusplus
  2149. }
  2150. #endif
  2151. #endif