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

模拟服务器

开发平台:

C/C++

  1.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2.             IMPEG2TuneRequestSupport * This);
  3.         
  4.         ULONG ( STDMETHODCALLTYPE *Release )( 
  5.             IMPEG2TuneRequestSupport * This);
  6.         
  7.         END_INTERFACE
  8.     } IMPEG2TuneRequestSupportVtbl;
  9.     interface IMPEG2TuneRequestSupport
  10.     {
  11.         CONST_VTBL struct IMPEG2TuneRequestSupportVtbl *lpVtbl;
  12.     };
  13.     
  14. #ifdef COBJMACROS
  15. #define IMPEG2TuneRequestSupport_QueryInterface(This,riid,ppvObject)
  16.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  17. #define IMPEG2TuneRequestSupport_AddRef(This)
  18.     (This)->lpVtbl -> AddRef(This)
  19. #define IMPEG2TuneRequestSupport_Release(This)
  20.     (This)->lpVtbl -> Release(This)
  21. #endif /* COBJMACROS */
  22. #endif  /* C style interface */
  23. #endif  /* __IMPEG2TuneRequestSupport_INTERFACE_DEFINED__ */
  24. #ifndef __ITuner_INTERFACE_DEFINED__
  25. #define __ITuner_INTERFACE_DEFINED__
  26. /* interface ITuner */
  27. /* [unique][helpstring][uuid][nonextensible][hidden][object] */ 
  28. EXTERN_C const IID IID_ITuner;
  29. #if defined(__cplusplus) && !defined(CINTERFACE)
  30.     
  31.     MIDL_INTERFACE("28C52640-018A-11d3-9D8E-00C04F72D980")
  32.     ITuner : public IUnknown
  33.     {
  34.     public:
  35.         virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_TuningSpace( 
  36.             /* [retval][out] */ ITuningSpace **TuningSpace) = 0;
  37.         
  38.         virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_TuningSpace( 
  39.             /* [in] */ ITuningSpace *TuningSpace) = 0;
  40.         
  41.         virtual /* [helpstring][restricted][hidden] */ HRESULT STDMETHODCALLTYPE EnumTuningSpaces( 
  42.             /* [retval][out] */ IEnumTuningSpaces **ppEnum) = 0;
  43.         
  44.         virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_TuneRequest( 
  45.             /* [retval][out] */ ITuneRequest **TuneRequest) = 0;
  46.         
  47.         virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_TuneRequest( 
  48.             /* [in] */ ITuneRequest *TuneRequest) = 0;
  49.         
  50.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Validate( 
  51.             /* [in] */ ITuneRequest *TuneRequest) = 0;
  52.         
  53.         virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_PreferredComponentTypes( 
  54.             /* [retval][out] */ IComponentTypes **ComponentTypes) = 0;
  55.         
  56.         virtual /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_PreferredComponentTypes( 
  57.             /* [in] */ IComponentTypes *ComponentTypes) = 0;
  58.         
  59.         virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_SignalStrength( 
  60.             /* [retval][out] */ long *Strength) = 0;
  61.         
  62.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE TriggerSignalEvents( 
  63.             /* [in] */ long Interval) = 0;
  64.         
  65.     };
  66.     
  67. #else  /* C style interface */
  68.     typedef struct ITunerVtbl
  69.     {
  70.         BEGIN_INTERFACE
  71.         
  72.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  73.             ITuner * This,
  74.             /* [in] */ REFIID riid,
  75.             /* [iid_is][out] */ void **ppvObject);
  76.         
  77.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  78.             ITuner * This);
  79.         
  80.         ULONG ( STDMETHODCALLTYPE *Release )( 
  81.             ITuner * This);
  82.         
  83.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TuningSpace )( 
  84.             ITuner * This,
  85.             /* [retval][out] */ ITuningSpace **TuningSpace);
  86.         
  87.         /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TuningSpace )( 
  88.             ITuner * This,
  89.             /* [in] */ ITuningSpace *TuningSpace);
  90.         
  91.         /* [helpstring][restricted][hidden] */ HRESULT ( STDMETHODCALLTYPE *EnumTuningSpaces )( 
  92.             ITuner * This,
  93.             /* [retval][out] */ IEnumTuningSpaces **ppEnum);
  94.         
  95.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TuneRequest )( 
  96.             ITuner * This,
  97.             /* [retval][out] */ ITuneRequest **TuneRequest);
  98.         
  99.         /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TuneRequest )( 
  100.             ITuner * This,
  101.             /* [in] */ ITuneRequest *TuneRequest);
  102.         
  103.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Validate )( 
  104.             ITuner * This,
  105.             /* [in] */ ITuneRequest *TuneRequest);
  106.         
  107.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PreferredComponentTypes )( 
  108.             ITuner * This,
  109.             /* [retval][out] */ IComponentTypes **ComponentTypes);
  110.         
  111.         /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PreferredComponentTypes )( 
  112.             ITuner * This,
  113.             /* [in] */ IComponentTypes *ComponentTypes);
  114.         
  115.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SignalStrength )( 
  116.             ITuner * This,
  117.             /* [retval][out] */ long *Strength);
  118.         
  119.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *TriggerSignalEvents )( 
  120.             ITuner * This,
  121.             /* [in] */ long Interval);
  122.         
  123.         END_INTERFACE
  124.     } ITunerVtbl;
  125.     interface ITuner
  126.     {
  127.         CONST_VTBL struct ITunerVtbl *lpVtbl;
  128.     };
  129.     
  130. #ifdef COBJMACROS
  131. #define ITuner_QueryInterface(This,riid,ppvObject)
  132.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  133. #define ITuner_AddRef(This)
  134.     (This)->lpVtbl -> AddRef(This)
  135. #define ITuner_Release(This)
  136.     (This)->lpVtbl -> Release(This)
  137. #define ITuner_get_TuningSpace(This,TuningSpace)
  138.     (This)->lpVtbl -> get_TuningSpace(This,TuningSpace)
  139. #define ITuner_put_TuningSpace(This,TuningSpace)
  140.     (This)->lpVtbl -> put_TuningSpace(This,TuningSpace)
  141. #define ITuner_EnumTuningSpaces(This,ppEnum)
  142.     (This)->lpVtbl -> EnumTuningSpaces(This,ppEnum)
  143. #define ITuner_get_TuneRequest(This,TuneRequest)
  144.     (This)->lpVtbl -> get_TuneRequest(This,TuneRequest)
  145. #define ITuner_put_TuneRequest(This,TuneRequest)
  146.     (This)->lpVtbl -> put_TuneRequest(This,TuneRequest)
  147. #define ITuner_Validate(This,TuneRequest)
  148.     (This)->lpVtbl -> Validate(This,TuneRequest)
  149. #define ITuner_get_PreferredComponentTypes(This,ComponentTypes)
  150.     (This)->lpVtbl -> get_PreferredComponentTypes(This,ComponentTypes)
  151. #define ITuner_put_PreferredComponentTypes(This,ComponentTypes)
  152.     (This)->lpVtbl -> put_PreferredComponentTypes(This,ComponentTypes)
  153. #define ITuner_get_SignalStrength(This,Strength)
  154.     (This)->lpVtbl -> get_SignalStrength(This,Strength)
  155. #define ITuner_TriggerSignalEvents(This,Interval)
  156.     (This)->lpVtbl -> TriggerSignalEvents(This,Interval)
  157. #endif /* COBJMACROS */
  158. #endif  /* C style interface */
  159. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE ITuner_get_TuningSpace_Proxy( 
  160.     ITuner * This,
  161.     /* [retval][out] */ ITuningSpace **TuningSpace);
  162. void __RPC_STUB ITuner_get_TuningSpace_Stub(
  163.     IRpcStubBuffer *This,
  164.     IRpcChannelBuffer *_pRpcChannelBuffer,
  165.     PRPC_MESSAGE _pRpcMessage,
  166.     DWORD *_pdwStubPhase);
  167. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE ITuner_put_TuningSpace_Proxy( 
  168.     ITuner * This,
  169.     /* [in] */ ITuningSpace *TuningSpace);
  170. void __RPC_STUB ITuner_put_TuningSpace_Stub(
  171.     IRpcStubBuffer *This,
  172.     IRpcChannelBuffer *_pRpcChannelBuffer,
  173.     PRPC_MESSAGE _pRpcMessage,
  174.     DWORD *_pdwStubPhase);
  175. /* [helpstring][restricted][hidden] */ HRESULT STDMETHODCALLTYPE ITuner_EnumTuningSpaces_Proxy( 
  176.     ITuner * This,
  177.     /* [retval][out] */ IEnumTuningSpaces **ppEnum);
  178. void __RPC_STUB ITuner_EnumTuningSpaces_Stub(
  179.     IRpcStubBuffer *This,
  180.     IRpcChannelBuffer *_pRpcChannelBuffer,
  181.     PRPC_MESSAGE _pRpcMessage,
  182.     DWORD *_pdwStubPhase);
  183. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE ITuner_get_TuneRequest_Proxy( 
  184.     ITuner * This,
  185.     /* [retval][out] */ ITuneRequest **TuneRequest);
  186. void __RPC_STUB ITuner_get_TuneRequest_Stub(
  187.     IRpcStubBuffer *This,
  188.     IRpcChannelBuffer *_pRpcChannelBuffer,
  189.     PRPC_MESSAGE _pRpcMessage,
  190.     DWORD *_pdwStubPhase);
  191. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE ITuner_put_TuneRequest_Proxy( 
  192.     ITuner * This,
  193.     /* [in] */ ITuneRequest *TuneRequest);
  194. void __RPC_STUB ITuner_put_TuneRequest_Stub(
  195.     IRpcStubBuffer *This,
  196.     IRpcChannelBuffer *_pRpcChannelBuffer,
  197.     PRPC_MESSAGE _pRpcMessage,
  198.     DWORD *_pdwStubPhase);
  199. /* [helpstring] */ HRESULT STDMETHODCALLTYPE ITuner_Validate_Proxy( 
  200.     ITuner * This,
  201.     /* [in] */ ITuneRequest *TuneRequest);
  202. void __RPC_STUB ITuner_Validate_Stub(
  203.     IRpcStubBuffer *This,
  204.     IRpcChannelBuffer *_pRpcChannelBuffer,
  205.     PRPC_MESSAGE _pRpcMessage,
  206.     DWORD *_pdwStubPhase);
  207. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE ITuner_get_PreferredComponentTypes_Proxy( 
  208.     ITuner * This,
  209.     /* [retval][out] */ IComponentTypes **ComponentTypes);
  210. void __RPC_STUB ITuner_get_PreferredComponentTypes_Stub(
  211.     IRpcStubBuffer *This,
  212.     IRpcChannelBuffer *_pRpcChannelBuffer,
  213.     PRPC_MESSAGE _pRpcMessage,
  214.     DWORD *_pdwStubPhase);
  215. /* [helpstring][propput] */ HRESULT STDMETHODCALLTYPE ITuner_put_PreferredComponentTypes_Proxy( 
  216.     ITuner * This,
  217.     /* [in] */ IComponentTypes *ComponentTypes);
  218. void __RPC_STUB ITuner_put_PreferredComponentTypes_Stub(
  219.     IRpcStubBuffer *This,
  220.     IRpcChannelBuffer *_pRpcChannelBuffer,
  221.     PRPC_MESSAGE _pRpcMessage,
  222.     DWORD *_pdwStubPhase);
  223. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE ITuner_get_SignalStrength_Proxy( 
  224.     ITuner * This,
  225.     /* [retval][out] */ long *Strength);
  226. void __RPC_STUB ITuner_get_SignalStrength_Stub(
  227.     IRpcStubBuffer *This,
  228.     IRpcChannelBuffer *_pRpcChannelBuffer,
  229.     PRPC_MESSAGE _pRpcMessage,
  230.     DWORD *_pdwStubPhase);
  231. /* [helpstring] */ HRESULT STDMETHODCALLTYPE ITuner_TriggerSignalEvents_Proxy( 
  232.     ITuner * This,
  233.     /* [in] */ long Interval);
  234. void __RPC_STUB ITuner_TriggerSignalEvents_Stub(
  235.     IRpcStubBuffer *This,
  236.     IRpcChannelBuffer *_pRpcChannelBuffer,
  237.     PRPC_MESSAGE _pRpcMessage,
  238.     DWORD *_pdwStubPhase);
  239. #endif  /* __ITuner_INTERFACE_DEFINED__ */
  240. #ifndef __IScanningTuner_INTERFACE_DEFINED__
  241. #define __IScanningTuner_INTERFACE_DEFINED__
  242. /* interface IScanningTuner */
  243. /* [unique][helpstring][uuid][nonextensible][hidden][object] */ 
  244. EXTERN_C const IID IID_IScanningTuner;
  245. #if defined(__cplusplus) && !defined(CINTERFACE)
  246.     
  247.     MIDL_INTERFACE("1DFD0A5C-0284-11d3-9D8E-00C04F72D980")
  248.     IScanningTuner : public ITuner
  249.     {
  250.     public:
  251.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SeekUp( void) = 0;
  252.         
  253.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SeekDown( void) = 0;
  254.         
  255.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ScanUp( 
  256.             /* [in] */ long MillisecondsPause) = 0;
  257.         
  258.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ScanDown( 
  259.             /* [in] */ long MillisecondsPause) = 0;
  260.         
  261.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AutoProgram( void) = 0;
  262.         
  263.     };
  264.     
  265. #else  /* C style interface */
  266.     typedef struct IScanningTunerVtbl
  267.     {
  268.         BEGIN_INTERFACE
  269.         
  270.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  271.             IScanningTuner * This,
  272.             /* [in] */ REFIID riid,
  273.             /* [iid_is][out] */ void **ppvObject);
  274.         
  275.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  276.             IScanningTuner * This);
  277.         
  278.         ULONG ( STDMETHODCALLTYPE *Release )( 
  279.             IScanningTuner * This);
  280.         
  281.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TuningSpace )( 
  282.             IScanningTuner * This,
  283.             /* [retval][out] */ ITuningSpace **TuningSpace);
  284.         
  285.         /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TuningSpace )( 
  286.             IScanningTuner * This,
  287.             /* [in] */ ITuningSpace *TuningSpace);
  288.         
  289.         /* [helpstring][restricted][hidden] */ HRESULT ( STDMETHODCALLTYPE *EnumTuningSpaces )( 
  290.             IScanningTuner * This,
  291.             /* [retval][out] */ IEnumTuningSpaces **ppEnum);
  292.         
  293.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TuneRequest )( 
  294.             IScanningTuner * This,
  295.             /* [retval][out] */ ITuneRequest **TuneRequest);
  296.         
  297.         /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TuneRequest )( 
  298.             IScanningTuner * This,
  299.             /* [in] */ ITuneRequest *TuneRequest);
  300.         
  301.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Validate )( 
  302.             IScanningTuner * This,
  303.             /* [in] */ ITuneRequest *TuneRequest);
  304.         
  305.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PreferredComponentTypes )( 
  306.             IScanningTuner * This,
  307.             /* [retval][out] */ IComponentTypes **ComponentTypes);
  308.         
  309.         /* [helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PreferredComponentTypes )( 
  310.             IScanningTuner * This,
  311.             /* [in] */ IComponentTypes *ComponentTypes);
  312.         
  313.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SignalStrength )( 
  314.             IScanningTuner * This,
  315.             /* [retval][out] */ long *Strength);
  316.         
  317.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *TriggerSignalEvents )( 
  318.             IScanningTuner * This,
  319.             /* [in] */ long Interval);
  320.         
  321.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SeekUp )( 
  322.             IScanningTuner * This);
  323.         
  324.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SeekDown )( 
  325.             IScanningTuner * This);
  326.         
  327.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ScanUp )( 
  328.             IScanningTuner * This,
  329.             /* [in] */ long MillisecondsPause);
  330.         
  331.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ScanDown )( 
  332.             IScanningTuner * This,
  333.             /* [in] */ long MillisecondsPause);
  334.         
  335.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AutoProgram )( 
  336.             IScanningTuner * This);
  337.         
  338.         END_INTERFACE
  339.     } IScanningTunerVtbl;
  340.     interface IScanningTuner
  341.     {
  342.         CONST_VTBL struct IScanningTunerVtbl *lpVtbl;
  343.     };
  344.     
  345. #ifdef COBJMACROS
  346. #define IScanningTuner_QueryInterface(This,riid,ppvObject)
  347.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  348. #define IScanningTuner_AddRef(This)
  349.     (This)->lpVtbl -> AddRef(This)
  350. #define IScanningTuner_Release(This)
  351.     (This)->lpVtbl -> Release(This)
  352. #define IScanningTuner_get_TuningSpace(This,TuningSpace)
  353.     (This)->lpVtbl -> get_TuningSpace(This,TuningSpace)
  354. #define IScanningTuner_put_TuningSpace(This,TuningSpace)
  355.     (This)->lpVtbl -> put_TuningSpace(This,TuningSpace)
  356. #define IScanningTuner_EnumTuningSpaces(This,ppEnum)
  357.     (This)->lpVtbl -> EnumTuningSpaces(This,ppEnum)
  358. #define IScanningTuner_get_TuneRequest(This,TuneRequest)
  359.     (This)->lpVtbl -> get_TuneRequest(This,TuneRequest)
  360. #define IScanningTuner_put_TuneRequest(This,TuneRequest)
  361.     (This)->lpVtbl -> put_TuneRequest(This,TuneRequest)
  362. #define IScanningTuner_Validate(This,TuneRequest)
  363.     (This)->lpVtbl -> Validate(This,TuneRequest)
  364. #define IScanningTuner_get_PreferredComponentTypes(This,ComponentTypes)
  365.     (This)->lpVtbl -> get_PreferredComponentTypes(This,ComponentTypes)
  366. #define IScanningTuner_put_PreferredComponentTypes(This,ComponentTypes)
  367.     (This)->lpVtbl -> put_PreferredComponentTypes(This,ComponentTypes)
  368. #define IScanningTuner_get_SignalStrength(This,Strength)
  369.     (This)->lpVtbl -> get_SignalStrength(This,Strength)
  370. #define IScanningTuner_TriggerSignalEvents(This,Interval)
  371.     (This)->lpVtbl -> TriggerSignalEvents(This,Interval)
  372. #define IScanningTuner_SeekUp(This)
  373.     (This)->lpVtbl -> SeekUp(This)
  374. #define IScanningTuner_SeekDown(This)
  375.     (This)->lpVtbl -> SeekDown(This)
  376. #define IScanningTuner_ScanUp(This,MillisecondsPause)
  377.     (This)->lpVtbl -> ScanUp(This,MillisecondsPause)
  378. #define IScanningTuner_ScanDown(This,MillisecondsPause)
  379.     (This)->lpVtbl -> ScanDown(This,MillisecondsPause)
  380. #define IScanningTuner_AutoProgram(This)
  381.     (This)->lpVtbl -> AutoProgram(This)
  382. #endif /* COBJMACROS */
  383. #endif  /* C style interface */
  384. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IScanningTuner_SeekUp_Proxy( 
  385.     IScanningTuner * This);
  386. void __RPC_STUB IScanningTuner_SeekUp_Stub(
  387.     IRpcStubBuffer *This,
  388.     IRpcChannelBuffer *_pRpcChannelBuffer,
  389.     PRPC_MESSAGE _pRpcMessage,
  390.     DWORD *_pdwStubPhase);
  391. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IScanningTuner_SeekDown_Proxy( 
  392.     IScanningTuner * This);
  393. void __RPC_STUB IScanningTuner_SeekDown_Stub(
  394.     IRpcStubBuffer *This,
  395.     IRpcChannelBuffer *_pRpcChannelBuffer,
  396.     PRPC_MESSAGE _pRpcMessage,
  397.     DWORD *_pdwStubPhase);
  398. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IScanningTuner_ScanUp_Proxy( 
  399.     IScanningTuner * This,
  400.     /* [in] */ long MillisecondsPause);
  401. void __RPC_STUB IScanningTuner_ScanUp_Stub(
  402.     IRpcStubBuffer *This,
  403.     IRpcChannelBuffer *_pRpcChannelBuffer,
  404.     PRPC_MESSAGE _pRpcMessage,
  405.     DWORD *_pdwStubPhase);
  406. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IScanningTuner_ScanDown_Proxy( 
  407.     IScanningTuner * This,
  408.     /* [in] */ long MillisecondsPause);
  409. void __RPC_STUB IScanningTuner_ScanDown_Stub(
  410.     IRpcStubBuffer *This,
  411.     IRpcChannelBuffer *_pRpcChannelBuffer,
  412.     PRPC_MESSAGE _pRpcMessage,
  413.     DWORD *_pdwStubPhase);
  414. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IScanningTuner_AutoProgram_Proxy( 
  415.     IScanningTuner * This);
  416. void __RPC_STUB IScanningTuner_AutoProgram_Stub(
  417.     IRpcStubBuffer *This,
  418.     IRpcChannelBuffer *_pRpcChannelBuffer,
  419.     PRPC_MESSAGE _pRpcMessage,
  420.     DWORD *_pdwStubPhase);
  421. #endif  /* __IScanningTuner_INTERFACE_DEFINED__ */
  422. #ifndef __IComponentType_INTERFACE_DEFINED__
  423. #define __IComponentType_INTERFACE_DEFINED__
  424. /* interface IComponentType */
  425. /* [unique][helpstring][oleautomation][dual][uuid][nonextensible][hidden][object] */ 
  426. EXTERN_C const IID IID_IComponentType;
  427. #if defined(__cplusplus) && !defined(CINTERFACE)
  428.     
  429.     MIDL_INTERFACE("6A340DC0-0311-11d3-9D8E-00C04F72D980")
  430.     IComponentType : public IDispatch
  431.     {
  432.     public:
  433.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Category( 
  434.             /* [retval][out] */ ComponentCategory *Category) = 0;
  435.         
  436.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Category( 
  437.             /* [in] */ ComponentCategory Category) = 0;
  438.         
  439.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaMajorType( 
  440.             /* [retval][out] */ BSTR *MediaMajorType) = 0;
  441.         
  442.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MediaMajorType( 
  443.             /* [in] */ BSTR MediaMajorType) = 0;
  444.         
  445.         virtual /* [restricted][hidden][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get__MediaMajorType( 
  446.             /* [retval][out] */ GUID *MediaMajorTypeGuid) = 0;
  447.         
  448.         virtual /* [restricted][hidden][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put__MediaMajorType( 
  449.             /* [in] */ REFCLSID MediaMajorTypeGuid) = 0;
  450.         
  451.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaSubType( 
  452.             /* [retval][out] */ BSTR *MediaSubType) = 0;
  453.         
  454.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MediaSubType( 
  455.             /* [in] */ BSTR MediaSubType) = 0;
  456.         
  457.         virtual /* [restricted][hidden][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get__MediaSubType( 
  458.             /* [retval][out] */ GUID *MediaSubTypeGuid) = 0;
  459.         
  460.         virtual /* [restricted][hidden][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put__MediaSubType( 
  461.             /* [in] */ REFCLSID MediaSubTypeGuid) = 0;
  462.         
  463.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaFormatType( 
  464.             /* [retval][out] */ BSTR *MediaFormatType) = 0;
  465.         
  466.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MediaFormatType( 
  467.             /* [in] */ BSTR MediaFormatType) = 0;
  468.         
  469.         virtual /* [restricted][hidden][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get__MediaFormatType( 
  470.             /* [retval][out] */ GUID *MediaFormatTypeGuid) = 0;
  471.         
  472.         virtual /* [restricted][hidden][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put__MediaFormatType( 
  473.             /* [in] */ REFCLSID MediaFormatTypeGuid) = 0;
  474.         
  475.         virtual /* [helpstring][restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_MediaType( 
  476.             /* [retval][out] */ AM_MEDIA_TYPE *MediaType) = 0;
  477.         
  478.         virtual /* [helpstring][restricted][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE put_MediaType( 
  479.             /* [in] */ AM_MEDIA_TYPE *MediaType) = 0;
  480.         
  481.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clone( 
  482.             /* [retval][out] */ IComponentType **NewCT) = 0;
  483.         
  484.     };
  485.     
  486. #else  /* C style interface */
  487.     typedef struct IComponentTypeVtbl
  488.     {
  489.         BEGIN_INTERFACE
  490.         
  491.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  492.             IComponentType * This,
  493.             /* [in] */ REFIID riid,
  494.             /* [iid_is][out] */ void **ppvObject);
  495.         
  496.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  497.             IComponentType * This);
  498.         
  499.         ULONG ( STDMETHODCALLTYPE *Release )( 
  500.             IComponentType * This);
  501.         
  502.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  503.             IComponentType * This,
  504.             /* [out] */ UINT *pctinfo);
  505.         
  506.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  507.             IComponentType * This,
  508.             /* [in] */ UINT iTInfo,
  509.             /* [in] */ LCID lcid,
  510.             /* [out] */ ITypeInfo **ppTInfo);
  511.         
  512.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  513.             IComponentType * This,
  514.             /* [in] */ REFIID riid,
  515.             /* [size_is][in] */ LPOLESTR *rgszNames,
  516.             /* [in] */ UINT cNames,
  517.             /* [in] */ LCID lcid,
  518.             /* [size_is][out] */ DISPID *rgDispId);
  519.         
  520.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  521.             IComponentType * This,
  522.             /* [in] */ DISPID dispIdMember,
  523.             /* [in] */ REFIID riid,
  524.             /* [in] */ LCID lcid,
  525.             /* [in] */ WORD wFlags,
  526.             /* [out][in] */ DISPPARAMS *pDispParams,
  527.             /* [out] */ VARIANT *pVarResult,
  528.             /* [out] */ EXCEPINFO *pExcepInfo,
  529.             /* [out] */ UINT *puArgErr);
  530.         
  531.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Category )( 
  532.             IComponentType * This,
  533.             /* [retval][out] */ ComponentCategory *Category);
  534.         
  535.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Category )( 
  536.             IComponentType * This,
  537.             /* [in] */ ComponentCategory Category);
  538.         
  539.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaMajorType )( 
  540.             IComponentType * This,
  541.             /* [retval][out] */ BSTR *MediaMajorType);
  542.         
  543.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaMajorType )( 
  544.             IComponentType * This,
  545.             /* [in] */ BSTR MediaMajorType);
  546.         
  547.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaMajorType )( 
  548.             IComponentType * This,
  549.             /* [retval][out] */ GUID *MediaMajorTypeGuid);
  550.         
  551.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaMajorType )( 
  552.             IComponentType * This,
  553.             /* [in] */ REFCLSID MediaMajorTypeGuid);
  554.         
  555.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaSubType )( 
  556.             IComponentType * This,
  557.             /* [retval][out] */ BSTR *MediaSubType);
  558.         
  559.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaSubType )( 
  560.             IComponentType * This,
  561.             /* [in] */ BSTR MediaSubType);
  562.         
  563.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaSubType )( 
  564.             IComponentType * This,
  565.             /* [retval][out] */ GUID *MediaSubTypeGuid);
  566.         
  567.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaSubType )( 
  568.             IComponentType * This,
  569.             /* [in] */ REFCLSID MediaSubTypeGuid);
  570.         
  571.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaFormatType )( 
  572.             IComponentType * This,
  573.             /* [retval][out] */ BSTR *MediaFormatType);
  574.         
  575.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaFormatType )( 
  576.             IComponentType * This,
  577.             /* [in] */ BSTR MediaFormatType);
  578.         
  579.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaFormatType )( 
  580.             IComponentType * This,
  581.             /* [retval][out] */ GUID *MediaFormatTypeGuid);
  582.         
  583.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaFormatType )( 
  584.             IComponentType * This,
  585.             /* [in] */ REFCLSID MediaFormatTypeGuid);
  586.         
  587.         /* [helpstring][restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaType )( 
  588.             IComponentType * This,
  589.             /* [retval][out] */ AM_MEDIA_TYPE *MediaType);
  590.         
  591.         /* [helpstring][restricted][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaType )( 
  592.             IComponentType * This,
  593.             /* [in] */ AM_MEDIA_TYPE *MediaType);
  594.         
  595.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clone )( 
  596.             IComponentType * This,
  597.             /* [retval][out] */ IComponentType **NewCT);
  598.         
  599.         END_INTERFACE
  600.     } IComponentTypeVtbl;
  601.     interface IComponentType
  602.     {
  603.         CONST_VTBL struct IComponentTypeVtbl *lpVtbl;
  604.     };
  605.     
  606. #ifdef COBJMACROS
  607. #define IComponentType_QueryInterface(This,riid,ppvObject)
  608.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  609. #define IComponentType_AddRef(This)
  610.     (This)->lpVtbl -> AddRef(This)
  611. #define IComponentType_Release(This)
  612.     (This)->lpVtbl -> Release(This)
  613. #define IComponentType_GetTypeInfoCount(This,pctinfo)
  614.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  615. #define IComponentType_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  616.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  617. #define IComponentType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  618.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  619. #define IComponentType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  620.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  621. #define IComponentType_get_Category(This,Category)
  622.     (This)->lpVtbl -> get_Category(This,Category)
  623. #define IComponentType_put_Category(This,Category)
  624.     (This)->lpVtbl -> put_Category(This,Category)
  625. #define IComponentType_get_MediaMajorType(This,MediaMajorType)
  626.     (This)->lpVtbl -> get_MediaMajorType(This,MediaMajorType)
  627. #define IComponentType_put_MediaMajorType(This,MediaMajorType)
  628.     (This)->lpVtbl -> put_MediaMajorType(This,MediaMajorType)
  629. #define IComponentType_get__MediaMajorType(This,MediaMajorTypeGuid)
  630.     (This)->lpVtbl -> get__MediaMajorType(This,MediaMajorTypeGuid)
  631. #define IComponentType_put__MediaMajorType(This,MediaMajorTypeGuid)
  632.     (This)->lpVtbl -> put__MediaMajorType(This,MediaMajorTypeGuid)
  633. #define IComponentType_get_MediaSubType(This,MediaSubType)
  634.     (This)->lpVtbl -> get_MediaSubType(This,MediaSubType)
  635. #define IComponentType_put_MediaSubType(This,MediaSubType)
  636.     (This)->lpVtbl -> put_MediaSubType(This,MediaSubType)
  637. #define IComponentType_get__MediaSubType(This,MediaSubTypeGuid)
  638.     (This)->lpVtbl -> get__MediaSubType(This,MediaSubTypeGuid)
  639. #define IComponentType_put__MediaSubType(This,MediaSubTypeGuid)
  640.     (This)->lpVtbl -> put__MediaSubType(This,MediaSubTypeGuid)
  641. #define IComponentType_get_MediaFormatType(This,MediaFormatType)
  642.     (This)->lpVtbl -> get_MediaFormatType(This,MediaFormatType)
  643. #define IComponentType_put_MediaFormatType(This,MediaFormatType)
  644.     (This)->lpVtbl -> put_MediaFormatType(This,MediaFormatType)
  645. #define IComponentType_get__MediaFormatType(This,MediaFormatTypeGuid)
  646.     (This)->lpVtbl -> get__MediaFormatType(This,MediaFormatTypeGuid)
  647. #define IComponentType_put__MediaFormatType(This,MediaFormatTypeGuid)
  648.     (This)->lpVtbl -> put__MediaFormatType(This,MediaFormatTypeGuid)
  649. #define IComponentType_get_MediaType(This,MediaType)
  650.     (This)->lpVtbl -> get_MediaType(This,MediaType)
  651. #define IComponentType_put_MediaType(This,MediaType)
  652.     (This)->lpVtbl -> put_MediaType(This,MediaType)
  653. #define IComponentType_Clone(This,NewCT)
  654.     (This)->lpVtbl -> Clone(This,NewCT)
  655. #endif /* COBJMACROS */
  656. #endif  /* C style interface */
  657. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponentType_get_Category_Proxy( 
  658.     IComponentType * This,
  659.     /* [retval][out] */ ComponentCategory *Category);
  660. void __RPC_STUB IComponentType_get_Category_Stub(
  661.     IRpcStubBuffer *This,
  662.     IRpcChannelBuffer *_pRpcChannelBuffer,
  663.     PRPC_MESSAGE _pRpcMessage,
  664.     DWORD *_pdwStubPhase);
  665. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IComponentType_put_Category_Proxy( 
  666.     IComponentType * This,
  667.     /* [in] */ ComponentCategory Category);
  668. void __RPC_STUB IComponentType_put_Category_Stub(
  669.     IRpcStubBuffer *This,
  670.     IRpcChannelBuffer *_pRpcChannelBuffer,
  671.     PRPC_MESSAGE _pRpcMessage,
  672.     DWORD *_pdwStubPhase);
  673. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponentType_get_MediaMajorType_Proxy( 
  674.     IComponentType * This,
  675.     /* [retval][out] */ BSTR *MediaMajorType);
  676. void __RPC_STUB IComponentType_get_MediaMajorType_Stub(
  677.     IRpcStubBuffer *This,
  678.     IRpcChannelBuffer *_pRpcChannelBuffer,
  679.     PRPC_MESSAGE _pRpcMessage,
  680.     DWORD *_pdwStubPhase);
  681. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IComponentType_put_MediaMajorType_Proxy( 
  682.     IComponentType * This,
  683.     /* [in] */ BSTR MediaMajorType);
  684. void __RPC_STUB IComponentType_put_MediaMajorType_Stub(
  685.     IRpcStubBuffer *This,
  686.     IRpcChannelBuffer *_pRpcChannelBuffer,
  687.     PRPC_MESSAGE _pRpcMessage,
  688.     DWORD *_pdwStubPhase);
  689. /* [restricted][hidden][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponentType_get__MediaMajorType_Proxy( 
  690.     IComponentType * This,
  691.     /* [retval][out] */ GUID *MediaMajorTypeGuid);
  692. void __RPC_STUB IComponentType_get__MediaMajorType_Stub(
  693.     IRpcStubBuffer *This,
  694.     IRpcChannelBuffer *_pRpcChannelBuffer,
  695.     PRPC_MESSAGE _pRpcMessage,
  696.     DWORD *_pdwStubPhase);
  697. /* [restricted][hidden][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IComponentType_put__MediaMajorType_Proxy( 
  698.     IComponentType * This,
  699.     /* [in] */ REFCLSID MediaMajorTypeGuid);
  700. void __RPC_STUB IComponentType_put__MediaMajorType_Stub(
  701.     IRpcStubBuffer *This,
  702.     IRpcChannelBuffer *_pRpcChannelBuffer,
  703.     PRPC_MESSAGE _pRpcMessage,
  704.     DWORD *_pdwStubPhase);
  705. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponentType_get_MediaSubType_Proxy( 
  706.     IComponentType * This,
  707.     /* [retval][out] */ BSTR *MediaSubType);
  708. void __RPC_STUB IComponentType_get_MediaSubType_Stub(
  709.     IRpcStubBuffer *This,
  710.     IRpcChannelBuffer *_pRpcChannelBuffer,
  711.     PRPC_MESSAGE _pRpcMessage,
  712.     DWORD *_pdwStubPhase);
  713. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IComponentType_put_MediaSubType_Proxy( 
  714.     IComponentType * This,
  715.     /* [in] */ BSTR MediaSubType);
  716. void __RPC_STUB IComponentType_put_MediaSubType_Stub(
  717.     IRpcStubBuffer *This,
  718.     IRpcChannelBuffer *_pRpcChannelBuffer,
  719.     PRPC_MESSAGE _pRpcMessage,
  720.     DWORD *_pdwStubPhase);
  721. /* [restricted][hidden][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponentType_get__MediaSubType_Proxy( 
  722.     IComponentType * This,
  723.     /* [retval][out] */ GUID *MediaSubTypeGuid);
  724. void __RPC_STUB IComponentType_get__MediaSubType_Stub(
  725.     IRpcStubBuffer *This,
  726.     IRpcChannelBuffer *_pRpcChannelBuffer,
  727.     PRPC_MESSAGE _pRpcMessage,
  728.     DWORD *_pdwStubPhase);
  729. /* [restricted][hidden][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IComponentType_put__MediaSubType_Proxy( 
  730.     IComponentType * This,
  731.     /* [in] */ REFCLSID MediaSubTypeGuid);
  732. void __RPC_STUB IComponentType_put__MediaSubType_Stub(
  733.     IRpcStubBuffer *This,
  734.     IRpcChannelBuffer *_pRpcChannelBuffer,
  735.     PRPC_MESSAGE _pRpcMessage,
  736.     DWORD *_pdwStubPhase);
  737. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponentType_get_MediaFormatType_Proxy( 
  738.     IComponentType * This,
  739.     /* [retval][out] */ BSTR *MediaFormatType);
  740. void __RPC_STUB IComponentType_get_MediaFormatType_Stub(
  741.     IRpcStubBuffer *This,
  742.     IRpcChannelBuffer *_pRpcChannelBuffer,
  743.     PRPC_MESSAGE _pRpcMessage,
  744.     DWORD *_pdwStubPhase);
  745. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IComponentType_put_MediaFormatType_Proxy( 
  746.     IComponentType * This,
  747.     /* [in] */ BSTR MediaFormatType);
  748. void __RPC_STUB IComponentType_put_MediaFormatType_Stub(
  749.     IRpcStubBuffer *This,
  750.     IRpcChannelBuffer *_pRpcChannelBuffer,
  751.     PRPC_MESSAGE _pRpcMessage,
  752.     DWORD *_pdwStubPhase);
  753. /* [restricted][hidden][helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponentType_get__MediaFormatType_Proxy( 
  754.     IComponentType * This,
  755.     /* [retval][out] */ GUID *MediaFormatTypeGuid);
  756. void __RPC_STUB IComponentType_get__MediaFormatType_Stub(
  757.     IRpcStubBuffer *This,
  758.     IRpcChannelBuffer *_pRpcChannelBuffer,
  759.     PRPC_MESSAGE _pRpcMessage,
  760.     DWORD *_pdwStubPhase);
  761. /* [restricted][hidden][helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IComponentType_put__MediaFormatType_Proxy( 
  762.     IComponentType * This,
  763.     /* [in] */ REFCLSID MediaFormatTypeGuid);
  764. void __RPC_STUB IComponentType_put__MediaFormatType_Stub(
  765.     IRpcStubBuffer *This,
  766.     IRpcChannelBuffer *_pRpcChannelBuffer,
  767.     PRPC_MESSAGE _pRpcMessage,
  768.     DWORD *_pdwStubPhase);
  769. /* [helpstring][restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE IComponentType_get_MediaType_Proxy( 
  770.     IComponentType * This,
  771.     /* [retval][out] */ AM_MEDIA_TYPE *MediaType);
  772. void __RPC_STUB IComponentType_get_MediaType_Stub(
  773.     IRpcStubBuffer *This,
  774.     IRpcChannelBuffer *_pRpcChannelBuffer,
  775.     PRPC_MESSAGE _pRpcMessage,
  776.     DWORD *_pdwStubPhase);
  777. /* [helpstring][restricted][hidden][id][propput] */ HRESULT STDMETHODCALLTYPE IComponentType_put_MediaType_Proxy( 
  778.     IComponentType * This,
  779.     /* [in] */ AM_MEDIA_TYPE *MediaType);
  780. void __RPC_STUB IComponentType_put_MediaType_Stub(
  781.     IRpcStubBuffer *This,
  782.     IRpcChannelBuffer *_pRpcChannelBuffer,
  783.     PRPC_MESSAGE _pRpcMessage,
  784.     DWORD *_pdwStubPhase);
  785. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IComponentType_Clone_Proxy( 
  786.     IComponentType * This,
  787.     /* [retval][out] */ IComponentType **NewCT);
  788. void __RPC_STUB IComponentType_Clone_Stub(
  789.     IRpcStubBuffer *This,
  790.     IRpcChannelBuffer *_pRpcChannelBuffer,
  791.     PRPC_MESSAGE _pRpcMessage,
  792.     DWORD *_pdwStubPhase);
  793. #endif  /* __IComponentType_INTERFACE_DEFINED__ */
  794. #ifndef __ILanguageComponentType_INTERFACE_DEFINED__
  795. #define __ILanguageComponentType_INTERFACE_DEFINED__
  796. /* interface ILanguageComponentType */
  797. /* [unique][helpstring][oleautomation][dual][uuid][nonextensible][hidden][object] */ 
  798. EXTERN_C const IID IID_ILanguageComponentType;
  799. #if defined(__cplusplus) && !defined(CINTERFACE)
  800.     
  801.     MIDL_INTERFACE("B874C8BA-0FA2-11d3-9D8E-00C04F72D980")
  802.     ILanguageComponentType : public IComponentType
  803.     {
  804.     public:
  805.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_LangID( 
  806.             /* [retval][out] */ long *LangID) = 0;
  807.         
  808.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_LangID( 
  809.             /* [in] */ long LangID) = 0;
  810.         
  811.     };
  812.     
  813. #else  /* C style interface */
  814.     typedef struct ILanguageComponentTypeVtbl
  815.     {
  816.         BEGIN_INTERFACE
  817.         
  818.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  819.             ILanguageComponentType * This,
  820.             /* [in] */ REFIID riid,
  821.             /* [iid_is][out] */ void **ppvObject);
  822.         
  823.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  824.             ILanguageComponentType * This);
  825.         
  826.         ULONG ( STDMETHODCALLTYPE *Release )( 
  827.             ILanguageComponentType * This);
  828.         
  829.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  830.             ILanguageComponentType * This,
  831.             /* [out] */ UINT *pctinfo);
  832.         
  833.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  834.             ILanguageComponentType * This,
  835.             /* [in] */ UINT iTInfo,
  836.             /* [in] */ LCID lcid,
  837.             /* [out] */ ITypeInfo **ppTInfo);
  838.         
  839.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  840.             ILanguageComponentType * This,
  841.             /* [in] */ REFIID riid,
  842.             /* [size_is][in] */ LPOLESTR *rgszNames,
  843.             /* [in] */ UINT cNames,
  844.             /* [in] */ LCID lcid,
  845.             /* [size_is][out] */ DISPID *rgDispId);
  846.         
  847.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  848.             ILanguageComponentType * This,
  849.             /* [in] */ DISPID dispIdMember,
  850.             /* [in] */ REFIID riid,
  851.             /* [in] */ LCID lcid,
  852.             /* [in] */ WORD wFlags,
  853.             /* [out][in] */ DISPPARAMS *pDispParams,
  854.             /* [out] */ VARIANT *pVarResult,
  855.             /* [out] */ EXCEPINFO *pExcepInfo,
  856.             /* [out] */ UINT *puArgErr);
  857.         
  858.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Category )( 
  859.             ILanguageComponentType * This,
  860.             /* [retval][out] */ ComponentCategory *Category);
  861.         
  862.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Category )( 
  863.             ILanguageComponentType * This,
  864.             /* [in] */ ComponentCategory Category);
  865.         
  866.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaMajorType )( 
  867.             ILanguageComponentType * This,
  868.             /* [retval][out] */ BSTR *MediaMajorType);
  869.         
  870.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaMajorType )( 
  871.             ILanguageComponentType * This,
  872.             /* [in] */ BSTR MediaMajorType);
  873.         
  874.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaMajorType )( 
  875.             ILanguageComponentType * This,
  876.             /* [retval][out] */ GUID *MediaMajorTypeGuid);
  877.         
  878.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaMajorType )( 
  879.             ILanguageComponentType * This,
  880.             /* [in] */ REFCLSID MediaMajorTypeGuid);
  881.         
  882.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaSubType )( 
  883.             ILanguageComponentType * This,
  884.             /* [retval][out] */ BSTR *MediaSubType);
  885.         
  886.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaSubType )( 
  887.             ILanguageComponentType * This,
  888.             /* [in] */ BSTR MediaSubType);
  889.         
  890.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaSubType )( 
  891.             ILanguageComponentType * This,
  892.             /* [retval][out] */ GUID *MediaSubTypeGuid);
  893.         
  894.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaSubType )( 
  895.             ILanguageComponentType * This,
  896.             /* [in] */ REFCLSID MediaSubTypeGuid);
  897.         
  898.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaFormatType )( 
  899.             ILanguageComponentType * This,
  900.             /* [retval][out] */ BSTR *MediaFormatType);
  901.         
  902.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaFormatType )( 
  903.             ILanguageComponentType * This,
  904.             /* [in] */ BSTR MediaFormatType);
  905.         
  906.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaFormatType )( 
  907.             ILanguageComponentType * This,
  908.             /* [retval][out] */ GUID *MediaFormatTypeGuid);
  909.         
  910.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaFormatType )( 
  911.             ILanguageComponentType * This,
  912.             /* [in] */ REFCLSID MediaFormatTypeGuid);
  913.         
  914.         /* [helpstring][restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaType )( 
  915.             ILanguageComponentType * This,
  916.             /* [retval][out] */ AM_MEDIA_TYPE *MediaType);
  917.         
  918.         /* [helpstring][restricted][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaType )( 
  919.             ILanguageComponentType * This,
  920.             /* [in] */ AM_MEDIA_TYPE *MediaType);
  921.         
  922.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clone )( 
  923.             ILanguageComponentType * This,
  924.             /* [retval][out] */ IComponentType **NewCT);
  925.         
  926.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LangID )( 
  927.             ILanguageComponentType * This,
  928.             /* [retval][out] */ long *LangID);
  929.         
  930.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LangID )( 
  931.             ILanguageComponentType * This,
  932.             /* [in] */ long LangID);
  933.         
  934.         END_INTERFACE
  935.     } ILanguageComponentTypeVtbl;
  936.     interface ILanguageComponentType
  937.     {
  938.         CONST_VTBL struct ILanguageComponentTypeVtbl *lpVtbl;
  939.     };
  940.     
  941. #ifdef COBJMACROS
  942. #define ILanguageComponentType_QueryInterface(This,riid,ppvObject)
  943.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  944. #define ILanguageComponentType_AddRef(This)
  945.     (This)->lpVtbl -> AddRef(This)
  946. #define ILanguageComponentType_Release(This)
  947.     (This)->lpVtbl -> Release(This)
  948. #define ILanguageComponentType_GetTypeInfoCount(This,pctinfo)
  949.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  950. #define ILanguageComponentType_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  951.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  952. #define ILanguageComponentType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  953.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  954. #define ILanguageComponentType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  955.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  956. #define ILanguageComponentType_get_Category(This,Category)
  957.     (This)->lpVtbl -> get_Category(This,Category)
  958. #define ILanguageComponentType_put_Category(This,Category)
  959.     (This)->lpVtbl -> put_Category(This,Category)
  960. #define ILanguageComponentType_get_MediaMajorType(This,MediaMajorType)
  961.     (This)->lpVtbl -> get_MediaMajorType(This,MediaMajorType)
  962. #define ILanguageComponentType_put_MediaMajorType(This,MediaMajorType)
  963.     (This)->lpVtbl -> put_MediaMajorType(This,MediaMajorType)
  964. #define ILanguageComponentType_get__MediaMajorType(This,MediaMajorTypeGuid)
  965.     (This)->lpVtbl -> get__MediaMajorType(This,MediaMajorTypeGuid)
  966. #define ILanguageComponentType_put__MediaMajorType(This,MediaMajorTypeGuid)
  967.     (This)->lpVtbl -> put__MediaMajorType(This,MediaMajorTypeGuid)
  968. #define ILanguageComponentType_get_MediaSubType(This,MediaSubType)
  969.     (This)->lpVtbl -> get_MediaSubType(This,MediaSubType)
  970. #define ILanguageComponentType_put_MediaSubType(This,MediaSubType)
  971.     (This)->lpVtbl -> put_MediaSubType(This,MediaSubType)
  972. #define ILanguageComponentType_get__MediaSubType(This,MediaSubTypeGuid)
  973.     (This)->lpVtbl -> get__MediaSubType(This,MediaSubTypeGuid)
  974. #define ILanguageComponentType_put__MediaSubType(This,MediaSubTypeGuid)
  975.     (This)->lpVtbl -> put__MediaSubType(This,MediaSubTypeGuid)
  976. #define ILanguageComponentType_get_MediaFormatType(This,MediaFormatType)
  977.     (This)->lpVtbl -> get_MediaFormatType(This,MediaFormatType)
  978. #define ILanguageComponentType_put_MediaFormatType(This,MediaFormatType)
  979.     (This)->lpVtbl -> put_MediaFormatType(This,MediaFormatType)
  980. #define ILanguageComponentType_get__MediaFormatType(This,MediaFormatTypeGuid)
  981.     (This)->lpVtbl -> get__MediaFormatType(This,MediaFormatTypeGuid)
  982. #define ILanguageComponentType_put__MediaFormatType(This,MediaFormatTypeGuid)
  983.     (This)->lpVtbl -> put__MediaFormatType(This,MediaFormatTypeGuid)
  984. #define ILanguageComponentType_get_MediaType(This,MediaType)
  985.     (This)->lpVtbl -> get_MediaType(This,MediaType)
  986. #define ILanguageComponentType_put_MediaType(This,MediaType)
  987.     (This)->lpVtbl -> put_MediaType(This,MediaType)
  988. #define ILanguageComponentType_Clone(This,NewCT)
  989.     (This)->lpVtbl -> Clone(This,NewCT)
  990. #define ILanguageComponentType_get_LangID(This,LangID)
  991.     (This)->lpVtbl -> get_LangID(This,LangID)
  992. #define ILanguageComponentType_put_LangID(This,LangID)
  993.     (This)->lpVtbl -> put_LangID(This,LangID)
  994. #endif /* COBJMACROS */
  995. #endif  /* C style interface */
  996. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ILanguageComponentType_get_LangID_Proxy( 
  997.     ILanguageComponentType * This,
  998.     /* [retval][out] */ long *LangID);
  999. void __RPC_STUB ILanguageComponentType_get_LangID_Stub(
  1000.     IRpcStubBuffer *This,
  1001.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1002.     PRPC_MESSAGE _pRpcMessage,
  1003.     DWORD *_pdwStubPhase);
  1004. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ILanguageComponentType_put_LangID_Proxy( 
  1005.     ILanguageComponentType * This,
  1006.     /* [in] */ long LangID);
  1007. void __RPC_STUB ILanguageComponentType_put_LangID_Stub(
  1008.     IRpcStubBuffer *This,
  1009.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1010.     PRPC_MESSAGE _pRpcMessage,
  1011.     DWORD *_pdwStubPhase);
  1012. #endif  /* __ILanguageComponentType_INTERFACE_DEFINED__ */
  1013. #ifndef __IMPEG2ComponentType_INTERFACE_DEFINED__
  1014. #define __IMPEG2ComponentType_INTERFACE_DEFINED__
  1015. /* interface IMPEG2ComponentType */
  1016. /* [unique][helpstring][oleautomation][dual][uuid][nonextensible][hidden][object] */ 
  1017. EXTERN_C const IID IID_IMPEG2ComponentType;
  1018. #if defined(__cplusplus) && !defined(CINTERFACE)
  1019.     
  1020.     MIDL_INTERFACE("2C073D84-B51C-48c9-AA9F-68971E1F6E38")
  1021.     IMPEG2ComponentType : public ILanguageComponentType
  1022.     {
  1023.     public:
  1024.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_StreamType( 
  1025.             /* [retval][out] */ MPEG2StreamType *MP2StreamType) = 0;
  1026.         
  1027.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StreamType( 
  1028.             /* [in] */ MPEG2StreamType MP2StreamType) = 0;
  1029.         
  1030.     };
  1031.     
  1032. #else  /* C style interface */
  1033.     typedef struct IMPEG2ComponentTypeVtbl
  1034.     {
  1035.         BEGIN_INTERFACE
  1036.         
  1037.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1038.             IMPEG2ComponentType * This,
  1039.             /* [in] */ REFIID riid,
  1040.             /* [iid_is][out] */ void **ppvObject);
  1041.         
  1042.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1043.             IMPEG2ComponentType * This);
  1044.         
  1045.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1046.             IMPEG2ComponentType * This);
  1047.         
  1048.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1049.             IMPEG2ComponentType * This,
  1050.             /* [out] */ UINT *pctinfo);
  1051.         
  1052.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1053.             IMPEG2ComponentType * This,
  1054.             /* [in] */ UINT iTInfo,
  1055.             /* [in] */ LCID lcid,
  1056.             /* [out] */ ITypeInfo **ppTInfo);
  1057.         
  1058.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1059.             IMPEG2ComponentType * This,
  1060.             /* [in] */ REFIID riid,
  1061.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1062.             /* [in] */ UINT cNames,
  1063.             /* [in] */ LCID lcid,
  1064.             /* [size_is][out] */ DISPID *rgDispId);
  1065.         
  1066.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1067.             IMPEG2ComponentType * This,
  1068.             /* [in] */ DISPID dispIdMember,
  1069.             /* [in] */ REFIID riid,
  1070.             /* [in] */ LCID lcid,
  1071.             /* [in] */ WORD wFlags,
  1072.             /* [out][in] */ DISPPARAMS *pDispParams,
  1073.             /* [out] */ VARIANT *pVarResult,
  1074.             /* [out] */ EXCEPINFO *pExcepInfo,
  1075.             /* [out] */ UINT *puArgErr);
  1076.         
  1077.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Category )( 
  1078.             IMPEG2ComponentType * This,
  1079.             /* [retval][out] */ ComponentCategory *Category);
  1080.         
  1081.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Category )( 
  1082.             IMPEG2ComponentType * This,
  1083.             /* [in] */ ComponentCategory Category);
  1084.         
  1085.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaMajorType )( 
  1086.             IMPEG2ComponentType * This,
  1087.             /* [retval][out] */ BSTR *MediaMajorType);
  1088.         
  1089.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaMajorType )( 
  1090.             IMPEG2ComponentType * This,
  1091.             /* [in] */ BSTR MediaMajorType);
  1092.         
  1093.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaMajorType )( 
  1094.             IMPEG2ComponentType * This,
  1095.             /* [retval][out] */ GUID *MediaMajorTypeGuid);
  1096.         
  1097.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaMajorType )( 
  1098.             IMPEG2ComponentType * This,
  1099.             /* [in] */ REFCLSID MediaMajorTypeGuid);
  1100.         
  1101.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaSubType )( 
  1102.             IMPEG2ComponentType * This,
  1103.             /* [retval][out] */ BSTR *MediaSubType);
  1104.         
  1105.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaSubType )( 
  1106.             IMPEG2ComponentType * This,
  1107.             /* [in] */ BSTR MediaSubType);
  1108.         
  1109.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaSubType )( 
  1110.             IMPEG2ComponentType * This,
  1111.             /* [retval][out] */ GUID *MediaSubTypeGuid);
  1112.         
  1113.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaSubType )( 
  1114.             IMPEG2ComponentType * This,
  1115.             /* [in] */ REFCLSID MediaSubTypeGuid);
  1116.         
  1117.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaFormatType )( 
  1118.             IMPEG2ComponentType * This,
  1119.             /* [retval][out] */ BSTR *MediaFormatType);
  1120.         
  1121.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaFormatType )( 
  1122.             IMPEG2ComponentType * This,
  1123.             /* [in] */ BSTR MediaFormatType);
  1124.         
  1125.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaFormatType )( 
  1126.             IMPEG2ComponentType * This,
  1127.             /* [retval][out] */ GUID *MediaFormatTypeGuid);
  1128.         
  1129.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaFormatType )( 
  1130.             IMPEG2ComponentType * This,
  1131.             /* [in] */ REFCLSID MediaFormatTypeGuid);
  1132.         
  1133.         /* [helpstring][restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaType )( 
  1134.             IMPEG2ComponentType * This,
  1135.             /* [retval][out] */ AM_MEDIA_TYPE *MediaType);
  1136.         
  1137.         /* [helpstring][restricted][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaType )( 
  1138.             IMPEG2ComponentType * This,
  1139.             /* [in] */ AM_MEDIA_TYPE *MediaType);
  1140.         
  1141.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clone )( 
  1142.             IMPEG2ComponentType * This,
  1143.             /* [retval][out] */ IComponentType **NewCT);
  1144.         
  1145.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LangID )( 
  1146.             IMPEG2ComponentType * This,
  1147.             /* [retval][out] */ long *LangID);
  1148.         
  1149.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LangID )( 
  1150.             IMPEG2ComponentType * This,
  1151.             /* [in] */ long LangID);
  1152.         
  1153.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StreamType )( 
  1154.             IMPEG2ComponentType * This,
  1155.             /* [retval][out] */ MPEG2StreamType *MP2StreamType);
  1156.         
  1157.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StreamType )( 
  1158.             IMPEG2ComponentType * This,
  1159.             /* [in] */ MPEG2StreamType MP2StreamType);
  1160.         
  1161.         END_INTERFACE
  1162.     } IMPEG2ComponentTypeVtbl;
  1163.     interface IMPEG2ComponentType
  1164.     {
  1165.         CONST_VTBL struct IMPEG2ComponentTypeVtbl *lpVtbl;
  1166.     };
  1167.     
  1168. #ifdef COBJMACROS
  1169. #define IMPEG2ComponentType_QueryInterface(This,riid,ppvObject)
  1170.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1171. #define IMPEG2ComponentType_AddRef(This)
  1172.     (This)->lpVtbl -> AddRef(This)
  1173. #define IMPEG2ComponentType_Release(This)
  1174.     (This)->lpVtbl -> Release(This)
  1175. #define IMPEG2ComponentType_GetTypeInfoCount(This,pctinfo)
  1176.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1177. #define IMPEG2ComponentType_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1178.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1179. #define IMPEG2ComponentType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1180.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1181. #define IMPEG2ComponentType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1182.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1183. #define IMPEG2ComponentType_get_Category(This,Category)
  1184.     (This)->lpVtbl -> get_Category(This,Category)
  1185. #define IMPEG2ComponentType_put_Category(This,Category)
  1186.     (This)->lpVtbl -> put_Category(This,Category)
  1187. #define IMPEG2ComponentType_get_MediaMajorType(This,MediaMajorType)
  1188.     (This)->lpVtbl -> get_MediaMajorType(This,MediaMajorType)
  1189. #define IMPEG2ComponentType_put_MediaMajorType(This,MediaMajorType)
  1190.     (This)->lpVtbl -> put_MediaMajorType(This,MediaMajorType)
  1191. #define IMPEG2ComponentType_get__MediaMajorType(This,MediaMajorTypeGuid)
  1192.     (This)->lpVtbl -> get__MediaMajorType(This,MediaMajorTypeGuid)
  1193. #define IMPEG2ComponentType_put__MediaMajorType(This,MediaMajorTypeGuid)
  1194.     (This)->lpVtbl -> put__MediaMajorType(This,MediaMajorTypeGuid)
  1195. #define IMPEG2ComponentType_get_MediaSubType(This,MediaSubType)
  1196.     (This)->lpVtbl -> get_MediaSubType(This,MediaSubType)
  1197. #define IMPEG2ComponentType_put_MediaSubType(This,MediaSubType)
  1198.     (This)->lpVtbl -> put_MediaSubType(This,MediaSubType)
  1199. #define IMPEG2ComponentType_get__MediaSubType(This,MediaSubTypeGuid)
  1200.     (This)->lpVtbl -> get__MediaSubType(This,MediaSubTypeGuid)
  1201. #define IMPEG2ComponentType_put__MediaSubType(This,MediaSubTypeGuid)
  1202.     (This)->lpVtbl -> put__MediaSubType(This,MediaSubTypeGuid)
  1203. #define IMPEG2ComponentType_get_MediaFormatType(This,MediaFormatType)
  1204.     (This)->lpVtbl -> get_MediaFormatType(This,MediaFormatType)
  1205. #define IMPEG2ComponentType_put_MediaFormatType(This,MediaFormatType)
  1206.     (This)->lpVtbl -> put_MediaFormatType(This,MediaFormatType)
  1207. #define IMPEG2ComponentType_get__MediaFormatType(This,MediaFormatTypeGuid)
  1208.     (This)->lpVtbl -> get__MediaFormatType(This,MediaFormatTypeGuid)
  1209. #define IMPEG2ComponentType_put__MediaFormatType(This,MediaFormatTypeGuid)
  1210.     (This)->lpVtbl -> put__MediaFormatType(This,MediaFormatTypeGuid)
  1211. #define IMPEG2ComponentType_get_MediaType(This,MediaType)
  1212.     (This)->lpVtbl -> get_MediaType(This,MediaType)
  1213. #define IMPEG2ComponentType_put_MediaType(This,MediaType)
  1214.     (This)->lpVtbl -> put_MediaType(This,MediaType)
  1215. #define IMPEG2ComponentType_Clone(This,NewCT)
  1216.     (This)->lpVtbl -> Clone(This,NewCT)
  1217. #define IMPEG2ComponentType_get_LangID(This,LangID)
  1218.     (This)->lpVtbl -> get_LangID(This,LangID)
  1219. #define IMPEG2ComponentType_put_LangID(This,LangID)
  1220.     (This)->lpVtbl -> put_LangID(This,LangID)
  1221. #define IMPEG2ComponentType_get_StreamType(This,MP2StreamType)
  1222.     (This)->lpVtbl -> get_StreamType(This,MP2StreamType)
  1223. #define IMPEG2ComponentType_put_StreamType(This,MP2StreamType)
  1224.     (This)->lpVtbl -> put_StreamType(This,MP2StreamType)
  1225. #endif /* COBJMACROS */
  1226. #endif  /* C style interface */
  1227. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMPEG2ComponentType_get_StreamType_Proxy( 
  1228.     IMPEG2ComponentType * This,
  1229.     /* [retval][out] */ MPEG2StreamType *MP2StreamType);
  1230. void __RPC_STUB IMPEG2ComponentType_get_StreamType_Stub(
  1231.     IRpcStubBuffer *This,
  1232.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1233.     PRPC_MESSAGE _pRpcMessage,
  1234.     DWORD *_pdwStubPhase);
  1235. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMPEG2ComponentType_put_StreamType_Proxy( 
  1236.     IMPEG2ComponentType * This,
  1237.     /* [in] */ MPEG2StreamType MP2StreamType);
  1238. void __RPC_STUB IMPEG2ComponentType_put_StreamType_Stub(
  1239.     IRpcStubBuffer *This,
  1240.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1241.     PRPC_MESSAGE _pRpcMessage,
  1242.     DWORD *_pdwStubPhase);
  1243. #endif  /* __IMPEG2ComponentType_INTERFACE_DEFINED__ */
  1244. #ifndef __IATSCComponentType_INTERFACE_DEFINED__
  1245. #define __IATSCComponentType_INTERFACE_DEFINED__
  1246. /* interface IATSCComponentType */
  1247. /* [unique][helpstring][oleautomation][dual][uuid][nonextensible][hidden][object] */ 
  1248. EXTERN_C const IID IID_IATSCComponentType;
  1249. #if defined(__cplusplus) && !defined(CINTERFACE)
  1250.     
  1251.     MIDL_INTERFACE("FC189E4D-7BD4-4125-B3B3-3A76A332CC96")
  1252.     IATSCComponentType : public IMPEG2ComponentType
  1253.     {
  1254.     public:
  1255.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Flags( 
  1256.             /* [retval][out] */ long *Flags) = 0;
  1257.         
  1258.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Flags( 
  1259.             /* [in] */ long flags) = 0;
  1260.         
  1261.     };
  1262.     
  1263. #else  /* C style interface */
  1264.     typedef struct IATSCComponentTypeVtbl
  1265.     {
  1266.         BEGIN_INTERFACE
  1267.         
  1268.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1269.             IATSCComponentType * This,
  1270.             /* [in] */ REFIID riid,
  1271.             /* [iid_is][out] */ void **ppvObject);
  1272.         
  1273.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1274.             IATSCComponentType * This);
  1275.         
  1276.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1277.             IATSCComponentType * This);
  1278.         
  1279.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1280.             IATSCComponentType * This,
  1281.             /* [out] */ UINT *pctinfo);
  1282.         
  1283.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1284.             IATSCComponentType * This,
  1285.             /* [in] */ UINT iTInfo,
  1286.             /* [in] */ LCID lcid,
  1287.             /* [out] */ ITypeInfo **ppTInfo);
  1288.         
  1289.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1290.             IATSCComponentType * This,
  1291.             /* [in] */ REFIID riid,
  1292.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1293.             /* [in] */ UINT cNames,
  1294.             /* [in] */ LCID lcid,
  1295.             /* [size_is][out] */ DISPID *rgDispId);
  1296.         
  1297.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1298.             IATSCComponentType * This,
  1299.             /* [in] */ DISPID dispIdMember,
  1300.             /* [in] */ REFIID riid,
  1301.             /* [in] */ LCID lcid,
  1302.             /* [in] */ WORD wFlags,
  1303.             /* [out][in] */ DISPPARAMS *pDispParams,
  1304.             /* [out] */ VARIANT *pVarResult,
  1305.             /* [out] */ EXCEPINFO *pExcepInfo,
  1306.             /* [out] */ UINT *puArgErr);
  1307.         
  1308.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Category )( 
  1309.             IATSCComponentType * This,
  1310.             /* [retval][out] */ ComponentCategory *Category);
  1311.         
  1312.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Category )( 
  1313.             IATSCComponentType * This,
  1314.             /* [in] */ ComponentCategory Category);
  1315.         
  1316.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaMajorType )( 
  1317.             IATSCComponentType * This,
  1318.             /* [retval][out] */ BSTR *MediaMajorType);
  1319.         
  1320.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaMajorType )( 
  1321.             IATSCComponentType * This,
  1322.             /* [in] */ BSTR MediaMajorType);
  1323.         
  1324.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaMajorType )( 
  1325.             IATSCComponentType * This,
  1326.             /* [retval][out] */ GUID *MediaMajorTypeGuid);
  1327.         
  1328.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaMajorType )( 
  1329.             IATSCComponentType * This,
  1330.             /* [in] */ REFCLSID MediaMajorTypeGuid);
  1331.         
  1332.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaSubType )( 
  1333.             IATSCComponentType * This,
  1334.             /* [retval][out] */ BSTR *MediaSubType);
  1335.         
  1336.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaSubType )( 
  1337.             IATSCComponentType * This,
  1338.             /* [in] */ BSTR MediaSubType);
  1339.         
  1340.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaSubType )( 
  1341.             IATSCComponentType * This,
  1342.             /* [retval][out] */ GUID *MediaSubTypeGuid);
  1343.         
  1344.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaSubType )( 
  1345.             IATSCComponentType * This,
  1346.             /* [in] */ REFCLSID MediaSubTypeGuid);
  1347.         
  1348.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaFormatType )( 
  1349.             IATSCComponentType * This,
  1350.             /* [retval][out] */ BSTR *MediaFormatType);
  1351.         
  1352.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaFormatType )( 
  1353.             IATSCComponentType * This,
  1354.             /* [in] */ BSTR MediaFormatType);
  1355.         
  1356.         /* [restricted][hidden][helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__MediaFormatType )( 
  1357.             IATSCComponentType * This,
  1358.             /* [retval][out] */ GUID *MediaFormatTypeGuid);
  1359.         
  1360.         /* [restricted][hidden][helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put__MediaFormatType )( 
  1361.             IATSCComponentType * This,
  1362.             /* [in] */ REFCLSID MediaFormatTypeGuid);
  1363.         
  1364.         /* [helpstring][restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediaType )( 
  1365.             IATSCComponentType * This,
  1366.             /* [retval][out] */ AM_MEDIA_TYPE *MediaType);
  1367.         
  1368.         /* [helpstring][restricted][hidden][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MediaType )( 
  1369.             IATSCComponentType * This,
  1370.             /* [in] */ AM_MEDIA_TYPE *MediaType);
  1371.         
  1372.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clone )( 
  1373.             IATSCComponentType * This,
  1374.             /* [retval][out] */ IComponentType **NewCT);
  1375.         
  1376.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LangID )( 
  1377.             IATSCComponentType * This,
  1378.             /* [retval][out] */ long *LangID);
  1379.         
  1380.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LangID )( 
  1381.             IATSCComponentType * This,
  1382.             /* [in] */ long LangID);
  1383.         
  1384.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_StreamType )( 
  1385.             IATSCComponentType * This,
  1386.             /* [retval][out] */ MPEG2StreamType *MP2StreamType);
  1387.         
  1388.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StreamType )( 
  1389.             IATSCComponentType * This,
  1390.             /* [in] */ MPEG2StreamType MP2StreamType);
  1391.         
  1392.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Flags )( 
  1393.             IATSCComponentType * This,
  1394.             /* [retval][out] */ long *Flags);
  1395.         
  1396.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Flags )( 
  1397.             IATSCComponentType * This,
  1398.             /* [in] */ long flags);
  1399.         
  1400.         END_INTERFACE
  1401.     } IATSCComponentTypeVtbl;
  1402.     interface IATSCComponentType
  1403.     {
  1404.         CONST_VTBL struct IATSCComponentTypeVtbl *lpVtbl;
  1405.     };
  1406.     
  1407. #ifdef COBJMACROS
  1408. #define IATSCComponentType_QueryInterface(This,riid,ppvObject)
  1409.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1410. #define IATSCComponentType_AddRef(This)
  1411.     (This)->lpVtbl -> AddRef(This)
  1412. #define IATSCComponentType_Release(This)
  1413.     (This)->lpVtbl -> Release(This)
  1414. #define IATSCComponentType_GetTypeInfoCount(This,pctinfo)
  1415.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1416. #define IATSCComponentType_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1417.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1418. #define IATSCComponentType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1419.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1420. #define IATSCComponentType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1421.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1422. #define IATSCComponentType_get_Category(This,Category)
  1423.     (This)->lpVtbl -> get_Category(This,Category)
  1424. #define IATSCComponentType_put_Category(This,Category)
  1425.     (This)->lpVtbl -> put_Category(This,Category)
  1426. #define IATSCComponentType_get_MediaMajorType(This,MediaMajorType)
  1427.     (This)->lpVtbl -> get_MediaMajorType(This,MediaMajorType)
  1428. #define IATSCComponentType_put_MediaMajorType(This,MediaMajorType)
  1429.     (This)->lpVtbl -> put_MediaMajorType(This,MediaMajorType)
  1430. #define IATSCComponentType_get__MediaMajorType(This,MediaMajorTypeGuid)
  1431.     (This)->lpVtbl -> get__MediaMajorType(This,MediaMajorTypeGuid)
  1432. #define IATSCComponentType_put__MediaMajorType(This,MediaMajorTypeGuid)
  1433.     (This)->lpVtbl -> put__MediaMajorType(This,MediaMajorTypeGuid)
  1434. #define IATSCComponentType_get_MediaSubType(This,MediaSubType)
  1435.     (This)->lpVtbl -> get_MediaSubType(This,MediaSubType)
  1436. #define IATSCComponentType_put_MediaSubType(This,MediaSubType)
  1437.     (This)->lpVtbl -> put_MediaSubType(This,MediaSubType)
  1438. #define IATSCComponentType_get__MediaSubType(This,MediaSubTypeGuid)
  1439.     (This)->lpVtbl -> get__MediaSubType(This,MediaSubTypeGuid)
  1440. #define IATSCComponentType_put__MediaSubType(This,MediaSubTypeGuid)
  1441.     (This)->lpVtbl -> put__MediaSubType(This,MediaSubTypeGuid)
  1442. #define IATSCComponentType_get_MediaFormatType(This,MediaFormatType)
  1443.     (This)->lpVtbl -> get_MediaFormatType(This,MediaFormatType)
  1444. #define IATSCComponentType_put_MediaFormatType(This,MediaFormatType)
  1445.     (This)->lpVtbl -> put_MediaFormatType(This,MediaFormatType)
  1446. #define IATSCComponentType_get__MediaFormatType(This,MediaFormatTypeGuid)
  1447.     (This)->lpVtbl -> get__MediaFormatType(This,MediaFormatTypeGuid)
  1448. #define IATSCComponentType_put__MediaFormatType(This,MediaFormatTypeGuid)
  1449.     (This)->lpVtbl -> put__MediaFormatType(This,MediaFormatTypeGuid)
  1450. #define IATSCComponentType_get_MediaType(This,MediaType)
  1451.     (This)->lpVtbl -> get_MediaType(This,MediaType)
  1452. #define IATSCComponentType_put_MediaType(This,MediaType)
  1453.     (This)->lpVtbl -> put_MediaType(This,MediaType)
  1454. #define IATSCComponentType_Clone(This,NewCT)
  1455.     (This)->lpVtbl -> Clone(This,NewCT)
  1456. #define IATSCComponentType_get_LangID(This,LangID)
  1457.     (This)->lpVtbl -> get_LangID(This,LangID)
  1458. #define IATSCComponentType_put_LangID(This,LangID)
  1459.     (This)->lpVtbl -> put_LangID(This,LangID)
  1460. #define IATSCComponentType_get_StreamType(This,MP2StreamType)
  1461.     (This)->lpVtbl -> get_StreamType(This,MP2StreamType)
  1462. #define IATSCComponentType_put_StreamType(This,MP2StreamType)
  1463.     (This)->lpVtbl -> put_StreamType(This,MP2StreamType)
  1464. #define IATSCComponentType_get_Flags(This,Flags)
  1465.     (This)->lpVtbl -> get_Flags(This,Flags)
  1466. #define IATSCComponentType_put_Flags(This,flags)
  1467.     (This)->lpVtbl -> put_Flags(This,flags)
  1468. #endif /* COBJMACROS */
  1469. #endif  /* C style interface */
  1470. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IATSCComponentType_get_Flags_Proxy( 
  1471.     IATSCComponentType * This,
  1472.     /* [retval][out] */ long *Flags);
  1473. void __RPC_STUB IATSCComponentType_get_Flags_Stub(
  1474.     IRpcStubBuffer *This,
  1475.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1476.     PRPC_MESSAGE _pRpcMessage,
  1477.     DWORD *_pdwStubPhase);
  1478. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IATSCComponentType_put_Flags_Proxy( 
  1479.     IATSCComponentType * This,
  1480.     /* [in] */ long flags);
  1481. void __RPC_STUB IATSCComponentType_put_Flags_Stub(
  1482.     IRpcStubBuffer *This,
  1483.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1484.     PRPC_MESSAGE _pRpcMessage,
  1485.     DWORD *_pdwStubPhase);
  1486. #endif  /* __IATSCComponentType_INTERFACE_DEFINED__ */
  1487. #ifndef __IEnumComponentTypes_INTERFACE_DEFINED__
  1488. #define __IEnumComponentTypes_INTERFACE_DEFINED__
  1489. /* interface IEnumComponentTypes */
  1490. /* [unique][uuid][object][restricted][hidden] */ 
  1491. EXTERN_C const IID IID_IEnumComponentTypes;
  1492. #if defined(__cplusplus) && !defined(CINTERFACE)
  1493.     
  1494.     MIDL_INTERFACE("8A674B4A-1F63-11d3-B64C-00C04F79498E")
  1495.     IEnumComponentTypes : public IUnknown
  1496.     {
  1497.     public:
  1498.         virtual HRESULT STDMETHODCALLTYPE Next( 
  1499.             /* [in] */ ULONG celt,
  1500.             /* [length_is][size_is][out] */ IComponentType **rgelt,
  1501.             /* [out] */ ULONG *pceltFetched) = 0;
  1502.         
  1503.         virtual HRESULT STDMETHODCALLTYPE Skip( 
  1504.             /* [in] */ ULONG celt) = 0;
  1505.         
  1506.         virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1507.         
  1508.         virtual HRESULT STDMETHODCALLTYPE Clone( 
  1509.             /* [out] */ IEnumComponentTypes **ppEnum) = 0;
  1510.         
  1511.     };
  1512.     
  1513. #else  /* C style interface */
  1514.     typedef struct IEnumComponentTypesVtbl
  1515.     {
  1516.         BEGIN_INTERFACE
  1517.         
  1518.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1519.             IEnumComponentTypes * This,
  1520.             /* [in] */ REFIID riid,
  1521.             /* [iid_is][out] */ void **ppvObject);
  1522.         
  1523.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1524.             IEnumComponentTypes * This);
  1525.         
  1526.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1527.             IEnumComponentTypes * This);
  1528.         
  1529.         HRESULT ( STDMETHODCALLTYPE *Next )( 
  1530.             IEnumComponentTypes * This,
  1531.             /* [in] */ ULONG celt,
  1532.             /* [length_is][size_is][out] */ IComponentType **rgelt,
  1533.             /* [out] */ ULONG *pceltFetched);
  1534.         
  1535.         HRESULT ( STDMETHODCALLTYPE *Skip )( 
  1536.             IEnumComponentTypes * This,
  1537.             /* [in] */ ULONG celt);
  1538.         
  1539.         HRESULT ( STDMETHODCALLTYPE *Reset )( 
  1540.             IEnumComponentTypes * This);
  1541.         
  1542.         HRESULT ( STDMETHODCALLTYPE *Clone )( 
  1543.             IEnumComponentTypes * This,
  1544.             /* [out] */ IEnumComponentTypes **ppEnum);
  1545.         
  1546.         END_INTERFACE
  1547.     } IEnumComponentTypesVtbl;
  1548.     interface IEnumComponentTypes
  1549.     {
  1550.         CONST_VTBL struct IEnumComponentTypesVtbl *lpVtbl;
  1551.     };
  1552.     
  1553. #ifdef COBJMACROS
  1554. #define IEnumComponentTypes_QueryInterface(This,riid,ppvObject)
  1555.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1556. #define IEnumComponentTypes_AddRef(This)
  1557.     (This)->lpVtbl -> AddRef(This)
  1558. #define IEnumComponentTypes_Release(This)
  1559.     (This)->lpVtbl -> Release(This)
  1560. #define IEnumComponentTypes_Next(This,celt,rgelt,pceltFetched)
  1561.     (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  1562. #define IEnumComponentTypes_Skip(This,celt)
  1563.     (This)->lpVtbl -> Skip(This,celt)
  1564. #define IEnumComponentTypes_Reset(This)
  1565.     (This)->lpVtbl -> Reset(This)
  1566. #define IEnumComponentTypes_Clone(This,ppEnum)
  1567.     (This)->lpVtbl -> Clone(This,ppEnum)
  1568. #endif /* COBJMACROS */
  1569. #endif  /* C style interface */
  1570. HRESULT STDMETHODCALLTYPE IEnumComponentTypes_Next_Proxy( 
  1571.     IEnumComponentTypes * This,
  1572.     /* [in] */ ULONG celt,
  1573.     /* [length_is][size_is][out] */ IComponentType **rgelt,
  1574.     /* [out] */ ULONG *pceltFetched);
  1575. void __RPC_STUB IEnumComponentTypes_Next_Stub(
  1576.     IRpcStubBuffer *This,
  1577.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1578.     PRPC_MESSAGE _pRpcMessage,
  1579.     DWORD *_pdwStubPhase);
  1580. HRESULT STDMETHODCALLTYPE IEnumComponentTypes_Skip_Proxy( 
  1581.     IEnumComponentTypes * This,
  1582.     /* [in] */ ULONG celt);
  1583. void __RPC_STUB IEnumComponentTypes_Skip_Stub(
  1584.     IRpcStubBuffer *This,
  1585.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1586.     PRPC_MESSAGE _pRpcMessage,
  1587.     DWORD *_pdwStubPhase);
  1588. HRESULT STDMETHODCALLTYPE IEnumComponentTypes_Reset_Proxy( 
  1589.     IEnumComponentTypes * This);
  1590. void __RPC_STUB IEnumComponentTypes_Reset_Stub(
  1591.     IRpcStubBuffer *This,
  1592.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1593.     PRPC_MESSAGE _pRpcMessage,
  1594.     DWORD *_pdwStubPhase);
  1595. HRESULT STDMETHODCALLTYPE IEnumComponentTypes_Clone_Proxy( 
  1596.     IEnumComponentTypes * This,
  1597.     /* [out] */ IEnumComponentTypes **ppEnum);
  1598. void __RPC_STUB IEnumComponentTypes_Clone_Stub(
  1599.     IRpcStubBuffer *This,
  1600.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1601.     PRPC_MESSAGE _pRpcMessage,
  1602.     DWORD *_pdwStubPhase);
  1603. #endif  /* __IEnumComponentTypes_INTERFACE_DEFINED__ */
  1604. #ifndef __IComponentTypes_INTERFACE_DEFINED__
  1605. #define __IComponentTypes_INTERFACE_DEFINED__
  1606. /* interface IComponentTypes */
  1607. /* [unique][helpstring][oleautomation][dual][uuid][nonextensible][hidden][object] */ 
  1608. EXTERN_C const IID IID_IComponentTypes;
  1609. #if defined(__cplusplus) && !defined(CINTERFACE)
  1610.     
  1611.     MIDL_INTERFACE("0DC13D4A-0313-11d3-9D8E-00C04F72D980")
  1612.     IComponentTypes : public IDispatch
  1613.     {
  1614.     public:
  1615.         virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
  1616.             /* [retval][out] */ long *Count) = 0;
  1617.         
  1618.         virtual /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
  1619.             /* [retval][out] */ IEnumVARIANT **ppNewEnum) = 0;
  1620.         
  1621.         virtual /* [helpstring][restricted][hidden] */ HRESULT STDMETHODCALLTYPE EnumComponentTypes( 
  1622.             /* [retval][out] */ IEnumComponentTypes **ppNewEnum) = 0;
  1623.         
  1624.         virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Item( 
  1625.             /* [in] */ VARIANT Index,
  1626.             /* [retval][out] */ IComponentType **ComponentType) = 0;
  1627.         
  1628.         virtual /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_Item( 
  1629.             /* [in] */ VARIANT Index,
  1630.             /* [in] */ IComponentType *ComponentType) = 0;
  1631.         
  1632.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
  1633.             /* [in] */ IComponentType *ComponentType,
  1634.             /* [retval][out] */ VARIANT *NewIndex) = 0;
  1635.         
  1636.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Remove( 
  1637.             /* [in] */ VARIANT Index) = 0;
  1638.         
  1639.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Clone( 
  1640.             /* [retval][out] */ IComponentTypes **NewList) = 0;
  1641.         
  1642.     };
  1643.     
  1644. #else  /* C style interface */
  1645.     typedef struct IComponentTypesVtbl
  1646.     {
  1647.         BEGIN_INTERFACE
  1648.         
  1649.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1650.             IComponentTypes * This,
  1651.             /* [in] */ REFIID riid,
  1652.             /* [iid_is][out] */ void **ppvObject);
  1653.         
  1654.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1655.             IComponentTypes * This);
  1656.         
  1657.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1658.             IComponentTypes * This);
  1659.         
  1660.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1661.             IComponentTypes * This,
  1662.             /* [out] */ UINT *pctinfo);
  1663.         
  1664.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1665.             IComponentTypes * This,
  1666.             /* [in] */ UINT iTInfo,
  1667.             /* [in] */ LCID lcid,
  1668.             /* [out] */ ITypeInfo **ppTInfo);
  1669.         
  1670.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1671.             IComponentTypes * This,
  1672.             /* [in] */ REFIID riid,
  1673.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1674.             /* [in] */ UINT cNames,
  1675.             /* [in] */ LCID lcid,
  1676.             /* [size_is][out] */ DISPID *rgDispId);
  1677.         
  1678.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1679.             IComponentTypes * This,
  1680.             /* [in] */ DISPID dispIdMember,
  1681.             /* [in] */ REFIID riid,
  1682.             /* [in] */ LCID lcid,
  1683.             /* [in] */ WORD wFlags,
  1684.             /* [out][in] */ DISPPARAMS *pDispParams,
  1685.             /* [out] */ VARIANT *pVarResult,
  1686.             /* [out] */ EXCEPINFO *pExcepInfo,
  1687.             /* [out] */ UINT *puArgErr);
  1688.         
  1689.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
  1690.             IComponentTypes * This,
  1691.             /* [retval][out] */ long *Count);
  1692.         
  1693.         /* [restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )( 
  1694.             IComponentTypes * This,
  1695.             /* [retval][out] */ IEnumVARIANT **ppNewEnum);
  1696.         
  1697.         /* [helpstring][restricted][hidden] */ HRESULT ( STDMETHODCALLTYPE *EnumComponentTypes )( 
  1698.             IComponentTypes * This,
  1699.             /* [retval][out] */ IEnumComponentTypes **ppNewEnum);
  1700.         
  1701.         /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Item )( 
  1702.             IComponentTypes * This,
  1703.             /* [in] */ VARIANT Index,
  1704.             /* [retval][out] */ IComponentType **ComponentType);
  1705.         
  1706.         /* [helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Item )( 
  1707.             IComponentTypes * This,
  1708.             /* [in] */ VARIANT Index,
  1709.             /* [in] */ IComponentType *ComponentType);
  1710.         
  1711.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
  1712.             IComponentTypes * This,
  1713.             /* [in] */ IComponentType *ComponentType,
  1714.             /* [retval][out] */ VARIANT *NewIndex);
  1715.         
  1716.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Remove )( 
  1717.             IComponentTypes * This,
  1718.             /* [in] */ VARIANT Index);
  1719.         
  1720.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Clone )( 
  1721.             IComponentTypes * This,
  1722.             /* [retval][out] */ IComponentTypes **NewList);
  1723.         
  1724.         END_INTERFACE
  1725.     } IComponentTypesVtbl;
  1726.     interface IComponentTypes
  1727.     {
  1728.         CONST_VTBL struct IComponentTypesVtbl *lpVtbl;
  1729.     };
  1730.     
  1731. #ifdef COBJMACROS
  1732. #define IComponentTypes_QueryInterface(This,riid,ppvObject)
  1733.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1734. #define IComponentTypes_AddRef(This)
  1735.     (This)->lpVtbl -> AddRef(This)
  1736. #define IComponentTypes_Release(This)
  1737.     (This)->lpVtbl -> Release(This)
  1738. #define IComponentTypes_GetTypeInfoCount(This,pctinfo)
  1739.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1740. #define IComponentTypes_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1741.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1742. #define IComponentTypes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1743.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1744. #define IComponentTypes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1745.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1746. #define IComponentTypes_get_Count(This,Count)
  1747.     (This)->lpVtbl -> get_Count(This,Count)
  1748. #define IComponentTypes_get__NewEnum(This,ppNewEnum)
  1749.     (This)->lpVtbl -> get__NewEnum(This,ppNewEnum)
  1750. #define IComponentTypes_EnumComponentTypes(This,ppNewEnum)
  1751.     (This)->lpVtbl -> EnumComponentTypes(This,ppNewEnum)
  1752. #define IComponentTypes_get_Item(This,Index,ComponentType)
  1753.     (This)->lpVtbl -> get_Item(This,Index,ComponentType)
  1754. #define IComponentTypes_put_Item(This,Index,ComponentType)
  1755.     (This)->lpVtbl -> put_Item(This,Index,ComponentType)
  1756. #define IComponentTypes_Add(This,ComponentType,NewIndex)
  1757.     (This)->lpVtbl -> Add(This,ComponentType,NewIndex)
  1758. #define IComponentTypes_Remove(This,Index)
  1759.     (This)->lpVtbl -> Remove(This,Index)
  1760. #define IComponentTypes_Clone(This,NewList)
  1761.     (This)->lpVtbl -> Clone(This,NewList)
  1762. #endif /* COBJMACROS */
  1763. #endif  /* C style interface */
  1764. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE IComponentTypes_get_Count_Proxy( 
  1765.     IComponentTypes * This,
  1766.     /* [retval][out] */ long *Count);
  1767. void __RPC_STUB IComponentTypes_get_Count_Stub(
  1768.     IRpcStubBuffer *This,
  1769.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1770.     PRPC_MESSAGE _pRpcMessage,
  1771.     DWORD *_pdwStubPhase);
  1772. /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE IComponentTypes_get__NewEnum_Proxy( 
  1773.     IComponentTypes * This,
  1774.     /* [retval][out] */ IEnumVARIANT **ppNewEnum);
  1775. void __RPC_STUB IComponentTypes_get__NewEnum_Stub(
  1776.     IRpcStubBuffer *This,
  1777.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1778.     PRPC_MESSAGE _pRpcMessage,
  1779.     DWORD *_pdwStubPhase);
  1780. /* [helpstring][restricted][hidden] */ HRESULT STDMETHODCALLTYPE IComponentTypes_EnumComponentTypes_Proxy( 
  1781.     IComponentTypes * This,
  1782.     /* [retval][out] */ IEnumComponentTypes **ppNewEnum);
  1783. void __RPC_STUB IComponentTypes_EnumComponentTypes_Stub(
  1784.     IRpcStubBuffer *This,
  1785.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1786.     PRPC_MESSAGE _pRpcMessage,
  1787.     DWORD *_pdwStubPhase);
  1788. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IComponentTypes_get_Item_Proxy( 
  1789.     IComponentTypes * This,
  1790.     /* [in] */ VARIANT Index,
  1791.     /* [retval][out] */ IComponentType **ComponentType);
  1792. void __RPC_STUB IComponentTypes_get_Item_Stub(
  1793.     IRpcStubBuffer *This,
  1794.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1795.     PRPC_MESSAGE _pRpcMessage,
  1796.     DWORD *_pdwStubPhase);
  1797. /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IComponentTypes_put_Item_Proxy( 
  1798.     IComponentTypes * This,
  1799.     /* [in] */ VARIANT Index,
  1800.     /* [in] */ IComponentType *ComponentType);
  1801. void __RPC_STUB IComponentTypes_put_Item_Stub(
  1802.     IRpcStubBuffer *This,
  1803.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1804.     PRPC_MESSAGE _pRpcMessage,
  1805.     DWORD *_pdwStubPhase);
  1806. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IComponentTypes_Add_Proxy( 
  1807.     IComponentTypes * This,
  1808.     /* [in] */ IComponentType *ComponentType,
  1809.     /* [retval][out] */ VARIANT *NewIndex);
  1810. void __RPC_STUB IComponentTypes_Add_Stub(
  1811.     IRpcStubBuffer *This,
  1812.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1813.     PRPC_MESSAGE _pRpcMessage,
  1814.     DWORD *_pdwStubPhase);
  1815. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IComponentTypes_Remove_Proxy( 
  1816.     IComponentTypes * This,
  1817.     /* [in] */ VARIANT Index);
  1818. void __RPC_STUB IComponentTypes_Remove_Stub(
  1819.     IRpcStubBuffer *This,
  1820.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1821.     PRPC_MESSAGE _pRpcMessage,
  1822.     DWORD *_pdwStubPhase);
  1823. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IComponentTypes_Clone_Proxy( 
  1824.     IComponentTypes * This,
  1825.     /* [retval][out] */ IComponentTypes **NewList);
  1826. void __RPC_STUB IComponentTypes_Clone_Stub(
  1827.     IRpcStubBuffer *This,
  1828.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1829.     PRPC_MESSAGE _pRpcMessage,
  1830.     DWORD *_pdwStubPhase);
  1831. #endif  /* __IComponentTypes_INTERFACE_DEFINED__ */
  1832. #ifndef __IComponent_INTERFACE_DEFINED__
  1833. #define __IComponent_INTERFACE_DEFINED__
  1834. /* interface IComponent */
  1835. /* [unique][helpstring][oleautomation][dual][uuid][nonextensible][object] */ 
  1836. EXTERN_C const IID IID_IComponent;
  1837. #if defined(__cplusplus) && !defined(CINTERFACE)
  1838.     
  1839.     MIDL_INTERFACE("1A5576FC-0E19-11d3-9D8E-00C04F72D980")
  1840.     IComponent : public IDispatch
  1841.     {
  1842.     public:
  1843.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
  1844.             /* [retval][out] */ IComponentType **CT) = 0;
  1845.         
  1846.         virtual /* [helpstring][id][propput][restricted][hidden] */ HRESULT STDMETHODCALLTYPE put_Type( 
  1847.             /* [in] */ IComponentType *CT) = 0;
  1848.         
  1849.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DescLangID( 
  1850.             /* [retval][out] */ long *LangID) = 0;
  1851.         
  1852.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_DescLangID( 
  1853.             /* [in] */ long LangID) = 0;
  1854.         
  1855.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Status( 
  1856.             /* [retval][out] */ ComponentStatus *Status) = 0;
  1857.         
  1858.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Status( 
  1859.             /* [in] */ ComponentStatus Status) = 0;
  1860.         
  1861.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
  1862.             /* [retval][out] */ BSTR *Description) = 0;
  1863.         
  1864.         virtual /* [helpstring][id][propput][restricted][hidden] */ HRESULT STDMETHODCALLTYPE put_Description( 
  1865.             /* [in] */ BSTR Description) = 0;
  1866.         
  1867.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clone( 
  1868.             /* [retval][out] */ IComponent **NewComponent) = 0;
  1869.         
  1870.     };
  1871.     
  1872. #else  /* C style interface */
  1873.     typedef struct IComponentVtbl
  1874.     {
  1875.         BEGIN_INTERFACE
  1876.         
  1877.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1878.             IComponent * This,
  1879.             /* [in] */ REFIID riid,
  1880.             /* [iid_is][out] */ void **ppvObject);
  1881.         
  1882.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1883.             IComponent * This);
  1884.         
  1885.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1886.             IComponent * This);
  1887.         
  1888.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1889.             IComponent * This,
  1890.             /* [out] */ UINT *pctinfo);
  1891.         
  1892.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1893.             IComponent * This,
  1894.             /* [in] */ UINT iTInfo,
  1895.             /* [in] */ LCID lcid,
  1896.             /* [out] */ ITypeInfo **ppTInfo);
  1897.         
  1898.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1899.             IComponent * This,
  1900.             /* [in] */ REFIID riid,
  1901.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1902.             /* [in] */ UINT cNames,
  1903.             /* [in] */ LCID lcid,
  1904.             /* [size_is][out] */ DISPID *rgDispId);
  1905.         
  1906.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1907.             IComponent * This,
  1908.             /* [in] */ DISPID dispIdMember,
  1909.             /* [in] */ REFIID riid,
  1910.             /* [in] */ LCID lcid,
  1911.             /* [in] */ WORD wFlags,
  1912.             /* [out][in] */ DISPPARAMS *pDispParams,
  1913.             /* [out] */ VARIANT *pVarResult,
  1914.             /* [out] */ EXCEPINFO *pExcepInfo,
  1915.             /* [out] */ UINT *puArgErr);
  1916.         
  1917.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
  1918.             IComponent * This,
  1919.             /* [retval][out] */ IComponentType **CT);
  1920.         
  1921.         /* [helpstring][id][propput][restricted][hidden] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
  1922.             IComponent * This,
  1923.             /* [in] */ IComponentType *CT);
  1924.         
  1925.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DescLangID )( 
  1926.             IComponent * This,
  1927.             /* [retval][out] */ long *LangID);
  1928.         
  1929.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DescLangID )( 
  1930.             IComponent * This,
  1931.             /* [in] */ long LangID);
  1932.         
  1933.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
  1934.             IComponent * This,
  1935.             /* [retval][out] */ ComponentStatus *Status);
  1936.         
  1937.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Status )( 
  1938.             IComponent * This,
  1939.             /* [in] */ ComponentStatus Status);
  1940.         
  1941.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
  1942.             IComponent * This,
  1943.             /* [retval][out] */ BSTR *Description);
  1944.         
  1945.         /* [helpstring][id][propput][restricted][hidden] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
  1946.             IComponent * This,
  1947.             /* [in] */ BSTR Description);
  1948.         
  1949.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clone )( 
  1950.             IComponent * This,
  1951.             /* [retval][out] */ IComponent **NewComponent);
  1952.         
  1953.         END_INTERFACE
  1954.     } IComponentVtbl;
  1955.     interface IComponent
  1956.     {
  1957.         CONST_VTBL struct IComponentVtbl *lpVtbl;
  1958.     };
  1959.     
  1960. #ifdef COBJMACROS
  1961. #define IComponent_QueryInterface(This,riid,ppvObject)
  1962.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1963. #define IComponent_AddRef(This)
  1964.     (This)->lpVtbl -> AddRef(This)
  1965. #define IComponent_Release(This)
  1966.     (This)->lpVtbl -> Release(This)
  1967. #define IComponent_GetTypeInfoCount(This,pctinfo)
  1968.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1969. #define IComponent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1970.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1971. #define IComponent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1972.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1973. #define IComponent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1974.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1975. #define IComponent_get_Type(This,CT)
  1976.     (This)->lpVtbl -> get_Type(This,CT)
  1977. #define IComponent_put_Type(This,CT)
  1978.     (This)->lpVtbl -> put_Type(This,CT)
  1979. #define IComponent_get_DescLangID(This,LangID)
  1980.     (This)->lpVtbl -> get_DescLangID(This,LangID)
  1981. #define IComponent_put_DescLangID(This,LangID)
  1982.     (This)->lpVtbl -> put_DescLangID(This,LangID)
  1983. #define IComponent_get_Status(This,Status)
  1984.     (This)->lpVtbl -> get_Status(This,Status)
  1985. #define IComponent_put_Status(This,Status)
  1986.     (This)->lpVtbl -> put_Status(This,Status)
  1987. #define IComponent_get_Description(This,Description)
  1988.     (This)->lpVtbl -> get_Description(This,Description)
  1989. #define IComponent_put_Description(This,Description)
  1990.     (This)->lpVtbl -> put_Description(This,Description)
  1991. #define IComponent_Clone(This,NewComponent)
  1992.     (This)->lpVtbl -> Clone(This,NewComponent)
  1993. #endif /* COBJMACROS */
  1994. #endif  /* C style interface */
  1995. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponent_get_Type_Proxy( 
  1996.     IComponent * This,
  1997.     /* [retval][out] */ IComponentType **CT);
  1998. void __RPC_STUB IComponent_get_Type_Stub(
  1999.     IRpcStubBuffer *This,
  2000.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2001.     PRPC_MESSAGE _pRpcMessage,
  2002.     DWORD *_pdwStubPhase);
  2003. /* [helpstring][id][propput][restricted][hidden] */ HRESULT STDMETHODCALLTYPE IComponent_put_Type_Proxy( 
  2004.     IComponent * This,
  2005.     /* [in] */ IComponentType *CT);
  2006. void __RPC_STUB IComponent_put_Type_Stub(
  2007.     IRpcStubBuffer *This,
  2008.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2009.     PRPC_MESSAGE _pRpcMessage,
  2010.     DWORD *_pdwStubPhase);
  2011. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponent_get_DescLangID_Proxy( 
  2012.     IComponent * This,
  2013.     /* [retval][out] */ long *LangID);
  2014. void __RPC_STUB IComponent_get_DescLangID_Stub(
  2015.     IRpcStubBuffer *This,
  2016.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2017.     PRPC_MESSAGE _pRpcMessage,
  2018.     DWORD *_pdwStubPhase);
  2019. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IComponent_put_DescLangID_Proxy( 
  2020.     IComponent * This,
  2021.     /* [in] */ long LangID);
  2022. void __RPC_STUB IComponent_put_DescLangID_Stub(
  2023.     IRpcStubBuffer *This,
  2024.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2025.     PRPC_MESSAGE _pRpcMessage,
  2026.     DWORD *_pdwStubPhase);
  2027. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponent_get_Status_Proxy( 
  2028.     IComponent * This,
  2029.     /* [retval][out] */ ComponentStatus *Status);
  2030. void __RPC_STUB IComponent_get_Status_Stub(
  2031.     IRpcStubBuffer *This,
  2032.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2033.     PRPC_MESSAGE _pRpcMessage,
  2034.     DWORD *_pdwStubPhase);
  2035. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IComponent_put_Status_Proxy( 
  2036.     IComponent * This,
  2037.     /* [in] */ ComponentStatus Status);
  2038. void __RPC_STUB IComponent_put_Status_Stub(
  2039.     IRpcStubBuffer *This,
  2040.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2041.     PRPC_MESSAGE _pRpcMessage,
  2042.     DWORD *_pdwStubPhase);
  2043. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IComponent_get_Description_Proxy( 
  2044.     IComponent * This,
  2045.     /* [retval][out] */ BSTR *Description);
  2046. void __RPC_STUB IComponent_get_Description_Stub(
  2047.     IRpcStubBuffer *This,
  2048.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2049.     PRPC_MESSAGE _pRpcMessage,
  2050.     DWORD *_pdwStubPhase);
  2051. /* [helpstring][id][propput][restricted][hidden] */ HRESULT STDMETHODCALLTYPE IComponent_put_Description_Proxy( 
  2052.     IComponent * This,
  2053.     /* [in] */ BSTR Description);
  2054. void __RPC_STUB IComponent_put_Description_Stub(
  2055.     IRpcStubBuffer *This,
  2056.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2057.     PRPC_MESSAGE _pRpcMessage,
  2058.     DWORD *_pdwStubPhase);
  2059. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IComponent_Clone_Proxy( 
  2060.     IComponent * This,
  2061.     /* [retval][out] */ IComponent **NewComponent);
  2062. void __RPC_STUB IComponent_Clone_Stub(
  2063.     IRpcStubBuffer *This,
  2064.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2065.     PRPC_MESSAGE _pRpcMessage,
  2066.     DWORD *_pdwStubPhase);
  2067. #endif  /* __IComponent_INTERFACE_DEFINED__ */
  2068. #ifndef __IMPEG2Component_INTERFACE_DEFINED__
  2069. #define __IMPEG2Component_INTERFACE_DEFINED__
  2070. /* interface IMPEG2Component */
  2071. /* [unique][helpstring][oleautomation][dual][uuid][nonextensible][object] */ 
  2072. EXTERN_C const IID IID_IMPEG2Component;
  2073. #if defined(__cplusplus) && !defined(CINTERFACE)
  2074.     
  2075.     MIDL_INTERFACE("1493E353-1EB6-473c-802D-8E6B8EC9D2A9")
  2076.     IMPEG2Component : public IComponent
  2077.     {
  2078.     public:
  2079.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PID( 
  2080.             /* [retval][out] */ long *PID) = 0;
  2081.         
  2082.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PID( 
  2083.             /* [in] */ long PID) = 0;
  2084.         
  2085.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_PCRPID( 
  2086.             /* [retval][out] */ long *PCRPID) = 0;
  2087.         
  2088.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_PCRPID( 
  2089.             /* [in] */ long PCRPID) = 0;
  2090.         
  2091.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ProgramNumber( 
  2092.             /* [retval][out] */ long *ProgramNumber) = 0;
  2093.         
  2094.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ProgramNumber( 
  2095.             /* [in] */ long ProgramNumber) = 0;
  2096.         
  2097.     };
  2098.     
  2099. #else  /* C style interface */
  2100.     typedef struct IMPEG2ComponentVtbl
  2101.     {
  2102.         BEGIN_INTERFACE
  2103.         
  2104.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2105.             IMPEG2Component * This,
  2106.             /* [in] */ REFIID riid,
  2107.             /* [iid_is][out] */ void **ppvObject);
  2108.         
  2109.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2110.             IMPEG2Component * This);
  2111.         
  2112.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2113.             IMPEG2Component * This);
  2114.         
  2115.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2116.             IMPEG2Component * This,
  2117.             /* [out] */ UINT *pctinfo);
  2118.         
  2119.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2120.             IMPEG2Component * This,
  2121.             /* [in] */ UINT iTInfo,
  2122.             /* [in] */ LCID lcid,
  2123.             /* [out] */ ITypeInfo **ppTInfo);
  2124.         
  2125.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2126.             IMPEG2Component * This,
  2127.             /* [in] */ REFIID riid,
  2128.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2129.             /* [in] */ UINT cNames,
  2130.             /* [in] */ LCID lcid,
  2131.             /* [size_is][out] */ DISPID *rgDispId);
  2132.         
  2133.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2134.             IMPEG2Component * This,
  2135.             /* [in] */ DISPID dispIdMember,
  2136.             /* [in] */ REFIID riid,
  2137.             /* [in] */ LCID lcid,
  2138.             /* [in] */ WORD wFlags,
  2139.             /* [out][in] */ DISPPARAMS *pDispParams,
  2140.             /* [out] */ VARIANT *pVarResult,
  2141.             /* [out] */ EXCEPINFO *pExcepInfo,
  2142.             /* [out] */ UINT *puArgErr);
  2143.         
  2144.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
  2145.             IMPEG2Component * This,
  2146.             /* [retval][out] */ IComponentType **CT);
  2147.         
  2148.         /* [helpstring][id][propput][restricted][hidden] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
  2149.             IMPEG2Component * This,
  2150.             /* [in] */ IComponentType *CT);
  2151.         
  2152.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DescLangID )( 
  2153.             IMPEG2Component * This,
  2154.             /* [retval][out] */ long *LangID);
  2155.         
  2156.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DescLangID )( 
  2157.             IMPEG2Component * This,
  2158.             /* [in] */ long LangID);
  2159.         
  2160.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
  2161.             IMPEG2Component * This,
  2162.             /* [retval][out] */ ComponentStatus *Status);
  2163.         
  2164.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Status )( 
  2165.             IMPEG2Component * This,
  2166.             /* [in] */ ComponentStatus Status);
  2167.         
  2168.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
  2169.             IMPEG2Component * This,
  2170.             /* [retval][out] */ BSTR *Description);
  2171.         
  2172.         /* [helpstring][id][propput][restricted][hidden] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
  2173.             IMPEG2Component * This,
  2174.             /* [in] */ BSTR Description);
  2175.         
  2176.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clone )( 
  2177.             IMPEG2Component * This,
  2178.             /* [retval][out] */ IComponent **NewComponent);
  2179.         
  2180.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PID )( 
  2181.             IMPEG2Component * This,
  2182.             /* [retval][out] */ long *PID);
  2183.         
  2184.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PID )( 
  2185.             IMPEG2Component * This,
  2186.             /* [in] */ long PID);
  2187.         
  2188.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PCRPID )( 
  2189.             IMPEG2Component * This,
  2190.             /* [retval][out] */ long *PCRPID);
  2191.         
  2192.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_PCRPID )( 
  2193.             IMPEG2Component * This,
  2194.             /* [in] */ long PCRPID);
  2195.         
  2196.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProgramNumber )( 
  2197.             IMPEG2Component * This,
  2198.             /* [retval][out] */ long *ProgramNumber);
  2199.         
  2200.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ProgramNumber )( 
  2201.             IMPEG2Component * This,
  2202.             /* [in] */ long ProgramNumber);
  2203.         
  2204.         END_INTERFACE
  2205.     } IMPEG2ComponentVtbl;
  2206.     interface IMPEG2Component
  2207.     {
  2208.         CONST_VTBL struct IMPEG2ComponentVtbl *lpVtbl;
  2209.     };
  2210.     
  2211. #ifdef COBJMACROS
  2212. #define IMPEG2Component_QueryInterface(This,riid,ppvObject)
  2213.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2214. #define IMPEG2Component_AddRef(This)
  2215.     (This)->lpVtbl -> AddRef(This)
  2216. #define IMPEG2Component_Release(This)
  2217.     (This)->lpVtbl -> Release(This)