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

模拟服务器

开发平台:

C/C++

  1.             /* [out] */ EXCEPINFO *pExcepInfo,
  2.             /* [out] */ UINT *puArgErr);
  3.         
  4.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Format )( 
  5.             ISpeechAudio * This,
  6.             /* [retval][out] */ ISpeechAudioFormat **AudioFormat);
  7.         
  8.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_Format )( 
  9.             ISpeechAudio * This,
  10.             /* [in] */ ISpeechAudioFormat *AudioFormat);
  11.         
  12.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Read )( 
  13.             ISpeechAudio * This,
  14.             /* [out] */ VARIANT *Buffer,
  15.             /* [in] */ long NumberOfBytes,
  16.             /* [retval][out] */ long *BytesRead);
  17.         
  18.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Write )( 
  19.             ISpeechAudio * This,
  20.             /* [in] */ VARIANT Buffer,
  21.             /* [retval][out] */ long *BytesWritten);
  22.         
  23.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Seek )( 
  24.             ISpeechAudio * This,
  25.             /* [in] */ VARIANT Position,
  26.             /* [defaultvalue][in] */ SpeechStreamSeekPositionType Origin,
  27.             /* [retval][out] */ VARIANT *NewPosition);
  28.         
  29.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
  30.             ISpeechAudio * This,
  31.             /* [retval][out] */ ISpeechAudioStatus **Status);
  32.         
  33.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BufferInfo )( 
  34.             ISpeechAudio * This,
  35.             /* [retval][out] */ ISpeechAudioBufferInfo **BufferInfo);
  36.         
  37.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DefaultFormat )( 
  38.             ISpeechAudio * This,
  39.             /* [retval][out] */ ISpeechAudioFormat **StreamFormat);
  40.         
  41.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Volume )( 
  42.             ISpeechAudio * This,
  43.             /* [retval][out] */ long *Volume);
  44.         
  45.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Volume )( 
  46.             ISpeechAudio * This,
  47.             /* [in] */ long Volume);
  48.         
  49.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BufferNotifySize )( 
  50.             ISpeechAudio * This,
  51.             /* [retval][out] */ long *BufferNotifySize);
  52.         
  53.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BufferNotifySize )( 
  54.             ISpeechAudio * This,
  55.             /* [in] */ long BufferNotifySize);
  56.         
  57.         /* [id][helpstring][hidden][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventHandle )( 
  58.             ISpeechAudio * This,
  59.             /* [retval][out] */ long *EventHandle);
  60.         
  61.         /* [hidden][id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetState )( 
  62.             ISpeechAudio * This,
  63.             /* [in] */ SpeechAudioState State);
  64.         
  65.         END_INTERFACE
  66.     } ISpeechAudioVtbl;
  67.     interface ISpeechAudio
  68.     {
  69.         CONST_VTBL struct ISpeechAudioVtbl *lpVtbl;
  70.     };
  71.     
  72. #ifdef COBJMACROS
  73. #define ISpeechAudio_QueryInterface(This,riid,ppvObject)
  74.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  75. #define ISpeechAudio_AddRef(This)
  76.     (This)->lpVtbl -> AddRef(This)
  77. #define ISpeechAudio_Release(This)
  78.     (This)->lpVtbl -> Release(This)
  79. #define ISpeechAudio_GetTypeInfoCount(This,pctinfo)
  80.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  81. #define ISpeechAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  82.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  83. #define ISpeechAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  84.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  85. #define ISpeechAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  86.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  87. #define ISpeechAudio_get_Format(This,AudioFormat)
  88.     (This)->lpVtbl -> get_Format(This,AudioFormat)
  89. #define ISpeechAudio_putref_Format(This,AudioFormat)
  90.     (This)->lpVtbl -> putref_Format(This,AudioFormat)
  91. #define ISpeechAudio_Read(This,Buffer,NumberOfBytes,BytesRead)
  92.     (This)->lpVtbl -> Read(This,Buffer,NumberOfBytes,BytesRead)
  93. #define ISpeechAudio_Write(This,Buffer,BytesWritten)
  94.     (This)->lpVtbl -> Write(This,Buffer,BytesWritten)
  95. #define ISpeechAudio_Seek(This,Position,Origin,NewPosition)
  96.     (This)->lpVtbl -> Seek(This,Position,Origin,NewPosition)
  97. #define ISpeechAudio_get_Status(This,Status)
  98.     (This)->lpVtbl -> get_Status(This,Status)
  99. #define ISpeechAudio_get_BufferInfo(This,BufferInfo)
  100.     (This)->lpVtbl -> get_BufferInfo(This,BufferInfo)
  101. #define ISpeechAudio_get_DefaultFormat(This,StreamFormat)
  102.     (This)->lpVtbl -> get_DefaultFormat(This,StreamFormat)
  103. #define ISpeechAudio_get_Volume(This,Volume)
  104.     (This)->lpVtbl -> get_Volume(This,Volume)
  105. #define ISpeechAudio_put_Volume(This,Volume)
  106.     (This)->lpVtbl -> put_Volume(This,Volume)
  107. #define ISpeechAudio_get_BufferNotifySize(This,BufferNotifySize)
  108.     (This)->lpVtbl -> get_BufferNotifySize(This,BufferNotifySize)
  109. #define ISpeechAudio_put_BufferNotifySize(This,BufferNotifySize)
  110.     (This)->lpVtbl -> put_BufferNotifySize(This,BufferNotifySize)
  111. #define ISpeechAudio_get_EventHandle(This,EventHandle)
  112.     (This)->lpVtbl -> get_EventHandle(This,EventHandle)
  113. #define ISpeechAudio_SetState(This,State)
  114.     (This)->lpVtbl -> SetState(This,State)
  115. #endif /* COBJMACROS */
  116. #endif  /* C style interface */
  117. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechAudio_get_Status_Proxy( 
  118.     ISpeechAudio * This,
  119.     /* [retval][out] */ ISpeechAudioStatus **Status);
  120. void __RPC_STUB ISpeechAudio_get_Status_Stub(
  121.     IRpcStubBuffer *This,
  122.     IRpcChannelBuffer *_pRpcChannelBuffer,
  123.     PRPC_MESSAGE _pRpcMessage,
  124.     DWORD *_pdwStubPhase);
  125. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechAudio_get_BufferInfo_Proxy( 
  126.     ISpeechAudio * This,
  127.     /* [retval][out] */ ISpeechAudioBufferInfo **BufferInfo);
  128. void __RPC_STUB ISpeechAudio_get_BufferInfo_Stub(
  129.     IRpcStubBuffer *This,
  130.     IRpcChannelBuffer *_pRpcChannelBuffer,
  131.     PRPC_MESSAGE _pRpcMessage,
  132.     DWORD *_pdwStubPhase);
  133. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechAudio_get_DefaultFormat_Proxy( 
  134.     ISpeechAudio * This,
  135.     /* [retval][out] */ ISpeechAudioFormat **StreamFormat);
  136. void __RPC_STUB ISpeechAudio_get_DefaultFormat_Stub(
  137.     IRpcStubBuffer *This,
  138.     IRpcChannelBuffer *_pRpcChannelBuffer,
  139.     PRPC_MESSAGE _pRpcMessage,
  140.     DWORD *_pdwStubPhase);
  141. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechAudio_get_Volume_Proxy( 
  142.     ISpeechAudio * This,
  143.     /* [retval][out] */ long *Volume);
  144. void __RPC_STUB ISpeechAudio_get_Volume_Stub(
  145.     IRpcStubBuffer *This,
  146.     IRpcChannelBuffer *_pRpcChannelBuffer,
  147.     PRPC_MESSAGE _pRpcMessage,
  148.     DWORD *_pdwStubPhase);
  149. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechAudio_put_Volume_Proxy( 
  150.     ISpeechAudio * This,
  151.     /* [in] */ long Volume);
  152. void __RPC_STUB ISpeechAudio_put_Volume_Stub(
  153.     IRpcStubBuffer *This,
  154.     IRpcChannelBuffer *_pRpcChannelBuffer,
  155.     PRPC_MESSAGE _pRpcMessage,
  156.     DWORD *_pdwStubPhase);
  157. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechAudio_get_BufferNotifySize_Proxy( 
  158.     ISpeechAudio * This,
  159.     /* [retval][out] */ long *BufferNotifySize);
  160. void __RPC_STUB ISpeechAudio_get_BufferNotifySize_Stub(
  161.     IRpcStubBuffer *This,
  162.     IRpcChannelBuffer *_pRpcChannelBuffer,
  163.     PRPC_MESSAGE _pRpcMessage,
  164.     DWORD *_pdwStubPhase);
  165. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechAudio_put_BufferNotifySize_Proxy( 
  166.     ISpeechAudio * This,
  167.     /* [in] */ long BufferNotifySize);
  168. void __RPC_STUB ISpeechAudio_put_BufferNotifySize_Stub(
  169.     IRpcStubBuffer *This,
  170.     IRpcChannelBuffer *_pRpcChannelBuffer,
  171.     PRPC_MESSAGE _pRpcMessage,
  172.     DWORD *_pdwStubPhase);
  173. /* [id][helpstring][hidden][propget] */ HRESULT STDMETHODCALLTYPE ISpeechAudio_get_EventHandle_Proxy( 
  174.     ISpeechAudio * This,
  175.     /* [retval][out] */ long *EventHandle);
  176. void __RPC_STUB ISpeechAudio_get_EventHandle_Stub(
  177.     IRpcStubBuffer *This,
  178.     IRpcChannelBuffer *_pRpcChannelBuffer,
  179.     PRPC_MESSAGE _pRpcMessage,
  180.     DWORD *_pdwStubPhase);
  181. /* [hidden][id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechAudio_SetState_Proxy( 
  182.     ISpeechAudio * This,
  183.     /* [in] */ SpeechAudioState State);
  184. void __RPC_STUB ISpeechAudio_SetState_Stub(
  185.     IRpcStubBuffer *This,
  186.     IRpcChannelBuffer *_pRpcChannelBuffer,
  187.     PRPC_MESSAGE _pRpcMessage,
  188.     DWORD *_pdwStubPhase);
  189. #endif  /* __ISpeechAudio_INTERFACE_DEFINED__ */
  190. #ifndef __ISpeechMMSysAudio_INTERFACE_DEFINED__
  191. #define __ISpeechMMSysAudio_INTERFACE_DEFINED__
  192. /* interface ISpeechMMSysAudio */
  193. /* [unique][helpstring][dual][uuid][object] */ 
  194. EXTERN_C const IID IID_ISpeechMMSysAudio;
  195. #if defined(__cplusplus) && !defined(CINTERFACE)
  196.     
  197.     MIDL_INTERFACE("3C76AF6D-1FD7-4831-81D1-3B71D5A13C44")
  198.     ISpeechMMSysAudio : public ISpeechAudio
  199.     {
  200.     public:
  201.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_DeviceId( 
  202.             /* [retval][out] */ long *DeviceId) = 0;
  203.         
  204.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_DeviceId( 
  205.             /* [in] */ long DeviceId) = 0;
  206.         
  207.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_LineId( 
  208.             /* [retval][out] */ long *LineId) = 0;
  209.         
  210.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_LineId( 
  211.             /* [in] */ long LineId) = 0;
  212.         
  213.         virtual /* [id][helpstring][hidden][propget] */ HRESULT STDMETHODCALLTYPE get_MMHandle( 
  214.             /* [retval][out] */ long *Handle) = 0;
  215.         
  216.     };
  217.     
  218. #else  /* C style interface */
  219.     typedef struct ISpeechMMSysAudioVtbl
  220.     {
  221.         BEGIN_INTERFACE
  222.         
  223.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  224.             ISpeechMMSysAudio * This,
  225.             /* [in] */ REFIID riid,
  226.             /* [iid_is][out] */ void **ppvObject);
  227.         
  228.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  229.             ISpeechMMSysAudio * This);
  230.         
  231.         ULONG ( STDMETHODCALLTYPE *Release )( 
  232.             ISpeechMMSysAudio * This);
  233.         
  234.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  235.             ISpeechMMSysAudio * This,
  236.             /* [out] */ UINT *pctinfo);
  237.         
  238.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  239.             ISpeechMMSysAudio * This,
  240.             /* [in] */ UINT iTInfo,
  241.             /* [in] */ LCID lcid,
  242.             /* [out] */ ITypeInfo **ppTInfo);
  243.         
  244.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  245.             ISpeechMMSysAudio * This,
  246.             /* [in] */ REFIID riid,
  247.             /* [size_is][in] */ LPOLESTR *rgszNames,
  248.             /* [in] */ UINT cNames,
  249.             /* [in] */ LCID lcid,
  250.             /* [size_is][out] */ DISPID *rgDispId);
  251.         
  252.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  253.             ISpeechMMSysAudio * This,
  254.             /* [in] */ DISPID dispIdMember,
  255.             /* [in] */ REFIID riid,
  256.             /* [in] */ LCID lcid,
  257.             /* [in] */ WORD wFlags,
  258.             /* [out][in] */ DISPPARAMS *pDispParams,
  259.             /* [out] */ VARIANT *pVarResult,
  260.             /* [out] */ EXCEPINFO *pExcepInfo,
  261.             /* [out] */ UINT *puArgErr);
  262.         
  263.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Format )( 
  264.             ISpeechMMSysAudio * This,
  265.             /* [retval][out] */ ISpeechAudioFormat **AudioFormat);
  266.         
  267.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_Format )( 
  268.             ISpeechMMSysAudio * This,
  269.             /* [in] */ ISpeechAudioFormat *AudioFormat);
  270.         
  271.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Read )( 
  272.             ISpeechMMSysAudio * This,
  273.             /* [out] */ VARIANT *Buffer,
  274.             /* [in] */ long NumberOfBytes,
  275.             /* [retval][out] */ long *BytesRead);
  276.         
  277.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Write )( 
  278.             ISpeechMMSysAudio * This,
  279.             /* [in] */ VARIANT Buffer,
  280.             /* [retval][out] */ long *BytesWritten);
  281.         
  282.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Seek )( 
  283.             ISpeechMMSysAudio * This,
  284.             /* [in] */ VARIANT Position,
  285.             /* [defaultvalue][in] */ SpeechStreamSeekPositionType Origin,
  286.             /* [retval][out] */ VARIANT *NewPosition);
  287.         
  288.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
  289.             ISpeechMMSysAudio * This,
  290.             /* [retval][out] */ ISpeechAudioStatus **Status);
  291.         
  292.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BufferInfo )( 
  293.             ISpeechMMSysAudio * This,
  294.             /* [retval][out] */ ISpeechAudioBufferInfo **BufferInfo);
  295.         
  296.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DefaultFormat )( 
  297.             ISpeechMMSysAudio * This,
  298.             /* [retval][out] */ ISpeechAudioFormat **StreamFormat);
  299.         
  300.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Volume )( 
  301.             ISpeechMMSysAudio * This,
  302.             /* [retval][out] */ long *Volume);
  303.         
  304.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Volume )( 
  305.             ISpeechMMSysAudio * This,
  306.             /* [in] */ long Volume);
  307.         
  308.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BufferNotifySize )( 
  309.             ISpeechMMSysAudio * This,
  310.             /* [retval][out] */ long *BufferNotifySize);
  311.         
  312.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BufferNotifySize )( 
  313.             ISpeechMMSysAudio * This,
  314.             /* [in] */ long BufferNotifySize);
  315.         
  316.         /* [id][helpstring][hidden][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventHandle )( 
  317.             ISpeechMMSysAudio * This,
  318.             /* [retval][out] */ long *EventHandle);
  319.         
  320.         /* [hidden][id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetState )( 
  321.             ISpeechMMSysAudio * This,
  322.             /* [in] */ SpeechAudioState State);
  323.         
  324.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DeviceId )( 
  325.             ISpeechMMSysAudio * This,
  326.             /* [retval][out] */ long *DeviceId);
  327.         
  328.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DeviceId )( 
  329.             ISpeechMMSysAudio * This,
  330.             /* [in] */ long DeviceId);
  331.         
  332.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LineId )( 
  333.             ISpeechMMSysAudio * This,
  334.             /* [retval][out] */ long *LineId);
  335.         
  336.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_LineId )( 
  337.             ISpeechMMSysAudio * This,
  338.             /* [in] */ long LineId);
  339.         
  340.         /* [id][helpstring][hidden][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MMHandle )( 
  341.             ISpeechMMSysAudio * This,
  342.             /* [retval][out] */ long *Handle);
  343.         
  344.         END_INTERFACE
  345.     } ISpeechMMSysAudioVtbl;
  346.     interface ISpeechMMSysAudio
  347.     {
  348.         CONST_VTBL struct ISpeechMMSysAudioVtbl *lpVtbl;
  349.     };
  350.     
  351. #ifdef COBJMACROS
  352. #define ISpeechMMSysAudio_QueryInterface(This,riid,ppvObject)
  353.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  354. #define ISpeechMMSysAudio_AddRef(This)
  355.     (This)->lpVtbl -> AddRef(This)
  356. #define ISpeechMMSysAudio_Release(This)
  357.     (This)->lpVtbl -> Release(This)
  358. #define ISpeechMMSysAudio_GetTypeInfoCount(This,pctinfo)
  359.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  360. #define ISpeechMMSysAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  361.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  362. #define ISpeechMMSysAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  363.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  364. #define ISpeechMMSysAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  365.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  366. #define ISpeechMMSysAudio_get_Format(This,AudioFormat)
  367.     (This)->lpVtbl -> get_Format(This,AudioFormat)
  368. #define ISpeechMMSysAudio_putref_Format(This,AudioFormat)
  369.     (This)->lpVtbl -> putref_Format(This,AudioFormat)
  370. #define ISpeechMMSysAudio_Read(This,Buffer,NumberOfBytes,BytesRead)
  371.     (This)->lpVtbl -> Read(This,Buffer,NumberOfBytes,BytesRead)
  372. #define ISpeechMMSysAudio_Write(This,Buffer,BytesWritten)
  373.     (This)->lpVtbl -> Write(This,Buffer,BytesWritten)
  374. #define ISpeechMMSysAudio_Seek(This,Position,Origin,NewPosition)
  375.     (This)->lpVtbl -> Seek(This,Position,Origin,NewPosition)
  376. #define ISpeechMMSysAudio_get_Status(This,Status)
  377.     (This)->lpVtbl -> get_Status(This,Status)
  378. #define ISpeechMMSysAudio_get_BufferInfo(This,BufferInfo)
  379.     (This)->lpVtbl -> get_BufferInfo(This,BufferInfo)
  380. #define ISpeechMMSysAudio_get_DefaultFormat(This,StreamFormat)
  381.     (This)->lpVtbl -> get_DefaultFormat(This,StreamFormat)
  382. #define ISpeechMMSysAudio_get_Volume(This,Volume)
  383.     (This)->lpVtbl -> get_Volume(This,Volume)
  384. #define ISpeechMMSysAudio_put_Volume(This,Volume)
  385.     (This)->lpVtbl -> put_Volume(This,Volume)
  386. #define ISpeechMMSysAudio_get_BufferNotifySize(This,BufferNotifySize)
  387.     (This)->lpVtbl -> get_BufferNotifySize(This,BufferNotifySize)
  388. #define ISpeechMMSysAudio_put_BufferNotifySize(This,BufferNotifySize)
  389.     (This)->lpVtbl -> put_BufferNotifySize(This,BufferNotifySize)
  390. #define ISpeechMMSysAudio_get_EventHandle(This,EventHandle)
  391.     (This)->lpVtbl -> get_EventHandle(This,EventHandle)
  392. #define ISpeechMMSysAudio_SetState(This,State)
  393.     (This)->lpVtbl -> SetState(This,State)
  394. #define ISpeechMMSysAudio_get_DeviceId(This,DeviceId)
  395.     (This)->lpVtbl -> get_DeviceId(This,DeviceId)
  396. #define ISpeechMMSysAudio_put_DeviceId(This,DeviceId)
  397.     (This)->lpVtbl -> put_DeviceId(This,DeviceId)
  398. #define ISpeechMMSysAudio_get_LineId(This,LineId)
  399.     (This)->lpVtbl -> get_LineId(This,LineId)
  400. #define ISpeechMMSysAudio_put_LineId(This,LineId)
  401.     (This)->lpVtbl -> put_LineId(This,LineId)
  402. #define ISpeechMMSysAudio_get_MMHandle(This,Handle)
  403.     (This)->lpVtbl -> get_MMHandle(This,Handle)
  404. #endif /* COBJMACROS */
  405. #endif  /* C style interface */
  406. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechMMSysAudio_get_DeviceId_Proxy( 
  407.     ISpeechMMSysAudio * This,
  408.     /* [retval][out] */ long *DeviceId);
  409. void __RPC_STUB ISpeechMMSysAudio_get_DeviceId_Stub(
  410.     IRpcStubBuffer *This,
  411.     IRpcChannelBuffer *_pRpcChannelBuffer,
  412.     PRPC_MESSAGE _pRpcMessage,
  413.     DWORD *_pdwStubPhase);
  414. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechMMSysAudio_put_DeviceId_Proxy( 
  415.     ISpeechMMSysAudio * This,
  416.     /* [in] */ long DeviceId);
  417. void __RPC_STUB ISpeechMMSysAudio_put_DeviceId_Stub(
  418.     IRpcStubBuffer *This,
  419.     IRpcChannelBuffer *_pRpcChannelBuffer,
  420.     PRPC_MESSAGE _pRpcMessage,
  421.     DWORD *_pdwStubPhase);
  422. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechMMSysAudio_get_LineId_Proxy( 
  423.     ISpeechMMSysAudio * This,
  424.     /* [retval][out] */ long *LineId);
  425. void __RPC_STUB ISpeechMMSysAudio_get_LineId_Stub(
  426.     IRpcStubBuffer *This,
  427.     IRpcChannelBuffer *_pRpcChannelBuffer,
  428.     PRPC_MESSAGE _pRpcMessage,
  429.     DWORD *_pdwStubPhase);
  430. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechMMSysAudio_put_LineId_Proxy( 
  431.     ISpeechMMSysAudio * This,
  432.     /* [in] */ long LineId);
  433. void __RPC_STUB ISpeechMMSysAudio_put_LineId_Stub(
  434.     IRpcStubBuffer *This,
  435.     IRpcChannelBuffer *_pRpcChannelBuffer,
  436.     PRPC_MESSAGE _pRpcMessage,
  437.     DWORD *_pdwStubPhase);
  438. /* [id][helpstring][hidden][propget] */ HRESULT STDMETHODCALLTYPE ISpeechMMSysAudio_get_MMHandle_Proxy( 
  439.     ISpeechMMSysAudio * This,
  440.     /* [retval][out] */ long *Handle);
  441. void __RPC_STUB ISpeechMMSysAudio_get_MMHandle_Stub(
  442.     IRpcStubBuffer *This,
  443.     IRpcChannelBuffer *_pRpcChannelBuffer,
  444.     PRPC_MESSAGE _pRpcMessage,
  445.     DWORD *_pdwStubPhase);
  446. #endif  /* __ISpeechMMSysAudio_INTERFACE_DEFINED__ */
  447. #ifndef __ISpeechVoice_INTERFACE_DEFINED__
  448. #define __ISpeechVoice_INTERFACE_DEFINED__
  449. /* interface ISpeechVoice */
  450. /* [unique][helpstring][dual][uuid][object] */ 
  451. EXTERN_C const IID IID_ISpeechVoice;
  452. #if defined(__cplusplus) && !defined(CINTERFACE)
  453.     
  454.     MIDL_INTERFACE("269316D8-57BD-11D2-9EEE-00C04F797396")
  455.     ISpeechVoice : public IDispatch
  456.     {
  457.     public:
  458.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Status( 
  459.             /* [retval][out] */ ISpeechVoiceStatus **Status) = 0;
  460.         
  461.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Voice( 
  462.             /* [retval][out] */ ISpeechObjectToken **Voice) = 0;
  463.         
  464.         virtual /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE putref_Voice( 
  465.             /* [in] */ ISpeechObjectToken *Voice) = 0;
  466.         
  467.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_AudioOutput( 
  468.             /* [retval][out] */ ISpeechObjectToken **AudioOutput) = 0;
  469.         
  470.         virtual /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE putref_AudioOutput( 
  471.             /* [in] */ ISpeechObjectToken *AudioOutput) = 0;
  472.         
  473.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_AudioOutputStream( 
  474.             /* [retval][out] */ ISpeechBaseStream **AudioOutputStream) = 0;
  475.         
  476.         virtual /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE putref_AudioOutputStream( 
  477.             /* [in] */ ISpeechBaseStream *AudioOutputStream) = 0;
  478.         
  479.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Rate( 
  480.             /* [retval][out] */ long *Rate) = 0;
  481.         
  482.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_Rate( 
  483.             /* [in] */ long Rate) = 0;
  484.         
  485.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Volume( 
  486.             /* [retval][out] */ long *Volume) = 0;
  487.         
  488.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_Volume( 
  489.             /* [in] */ long Volume) = 0;
  490.         
  491.         virtual /* [id][helpstring][hidden][propput] */ HRESULT STDMETHODCALLTYPE put_AllowAudioOutputFormatChangesOnNextSet( 
  492.             /* [in] */ VARIANT_BOOL Allow) = 0;
  493.         
  494.         virtual /* [id][helpstring][hidden][propget] */ HRESULT STDMETHODCALLTYPE get_AllowAudioOutputFormatChangesOnNextSet( 
  495.             /* [retval][out] */ VARIANT_BOOL *Allow) = 0;
  496.         
  497.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_EventInterests( 
  498.             /* [retval][out] */ SpeechVoiceEvents *EventInterestFlags) = 0;
  499.         
  500.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_EventInterests( 
  501.             /* [in] */ SpeechVoiceEvents EventInterestFlags) = 0;
  502.         
  503.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_Priority( 
  504.             /* [in] */ SpeechVoicePriority Priority) = 0;
  505.         
  506.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Priority( 
  507.             /* [retval][out] */ SpeechVoicePriority *Priority) = 0;
  508.         
  509.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_AlertBoundary( 
  510.             /* [in] */ SpeechVoiceEvents Boundary) = 0;
  511.         
  512.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_AlertBoundary( 
  513.             /* [retval][out] */ SpeechVoiceEvents *Boundary) = 0;
  514.         
  515.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_SynchronousSpeakTimeout( 
  516.             /* [in] */ long msTimeout) = 0;
  517.         
  518.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_SynchronousSpeakTimeout( 
  519.             /* [retval][out] */ long *msTimeout) = 0;
  520.         
  521.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE Speak( 
  522.             /* [in] */ BSTR Text,
  523.             /* [defaultvalue][in] */ SpeechVoiceSpeakFlags Flags,
  524.             /* [retval][out] */ long *StreamNumber) = 0;
  525.         
  526.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE SpeakStream( 
  527.             /* [in] */ ISpeechBaseStream *Stream,
  528.             /* [defaultvalue][in] */ SpeechVoiceSpeakFlags Flags,
  529.             /* [retval][out] */ long *StreamNumber) = 0;
  530.         
  531.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE Pause( void) = 0;
  532.         
  533.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE Resume( void) = 0;
  534.         
  535.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE Skip( 
  536.             /* [in] */ const BSTR Type,
  537.             /* [in] */ long NumItems,
  538.             /* [retval][out] */ long *NumSkipped) = 0;
  539.         
  540.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE GetVoices( 
  541.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  542.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  543.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens) = 0;
  544.         
  545.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE GetAudioOutputs( 
  546.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  547.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  548.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens) = 0;
  549.         
  550.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE WaitUntilDone( 
  551.             /* [in] */ long msTimeout,
  552.             /* [retval][out] */ VARIANT_BOOL *Done) = 0;
  553.         
  554.         virtual /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE SpeakCompleteEvent( 
  555.             /* [retval][out] */ long *Handle) = 0;
  556.         
  557.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE IsUISupported( 
  558.             /* [in] */ const BSTR TypeOfUI,
  559.             /* [defaultvalue][in] */ const VARIANT *ExtraData,
  560.             /* [retval][out] */ VARIANT_BOOL *Supported) = 0;
  561.         
  562.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE DisplayUI( 
  563.             /* [in] */ long hWndParent,
  564.             /* [in] */ BSTR Title,
  565.             /* [in] */ const BSTR TypeOfUI,
  566.             /* [defaultvalue][in] */ const VARIANT *ExtraData = 0) = 0;
  567.         
  568.     };
  569.     
  570. #else  /* C style interface */
  571.     typedef struct ISpeechVoiceVtbl
  572.     {
  573.         BEGIN_INTERFACE
  574.         
  575.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  576.             ISpeechVoice * This,
  577.             /* [in] */ REFIID riid,
  578.             /* [iid_is][out] */ void **ppvObject);
  579.         
  580.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  581.             ISpeechVoice * This);
  582.         
  583.         ULONG ( STDMETHODCALLTYPE *Release )( 
  584.             ISpeechVoice * This);
  585.         
  586.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  587.             ISpeechVoice * This,
  588.             /* [out] */ UINT *pctinfo);
  589.         
  590.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  591.             ISpeechVoice * This,
  592.             /* [in] */ UINT iTInfo,
  593.             /* [in] */ LCID lcid,
  594.             /* [out] */ ITypeInfo **ppTInfo);
  595.         
  596.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  597.             ISpeechVoice * This,
  598.             /* [in] */ REFIID riid,
  599.             /* [size_is][in] */ LPOLESTR *rgszNames,
  600.             /* [in] */ UINT cNames,
  601.             /* [in] */ LCID lcid,
  602.             /* [size_is][out] */ DISPID *rgDispId);
  603.         
  604.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  605.             ISpeechVoice * This,
  606.             /* [in] */ DISPID dispIdMember,
  607.             /* [in] */ REFIID riid,
  608.             /* [in] */ LCID lcid,
  609.             /* [in] */ WORD wFlags,
  610.             /* [out][in] */ DISPPARAMS *pDispParams,
  611.             /* [out] */ VARIANT *pVarResult,
  612.             /* [out] */ EXCEPINFO *pExcepInfo,
  613.             /* [out] */ UINT *puArgErr);
  614.         
  615.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
  616.             ISpeechVoice * This,
  617.             /* [retval][out] */ ISpeechVoiceStatus **Status);
  618.         
  619.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Voice )( 
  620.             ISpeechVoice * This,
  621.             /* [retval][out] */ ISpeechObjectToken **Voice);
  622.         
  623.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_Voice )( 
  624.             ISpeechVoice * This,
  625.             /* [in] */ ISpeechObjectToken *Voice);
  626.         
  627.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioOutput )( 
  628.             ISpeechVoice * This,
  629.             /* [retval][out] */ ISpeechObjectToken **AudioOutput);
  630.         
  631.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_AudioOutput )( 
  632.             ISpeechVoice * This,
  633.             /* [in] */ ISpeechObjectToken *AudioOutput);
  634.         
  635.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioOutputStream )( 
  636.             ISpeechVoice * This,
  637.             /* [retval][out] */ ISpeechBaseStream **AudioOutputStream);
  638.         
  639.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_AudioOutputStream )( 
  640.             ISpeechVoice * This,
  641.             /* [in] */ ISpeechBaseStream *AudioOutputStream);
  642.         
  643.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Rate )( 
  644.             ISpeechVoice * This,
  645.             /* [retval][out] */ long *Rate);
  646.         
  647.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Rate )( 
  648.             ISpeechVoice * This,
  649.             /* [in] */ long Rate);
  650.         
  651.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Volume )( 
  652.             ISpeechVoice * This,
  653.             /* [retval][out] */ long *Volume);
  654.         
  655.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Volume )( 
  656.             ISpeechVoice * This,
  657.             /* [in] */ long Volume);
  658.         
  659.         /* [id][helpstring][hidden][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AllowAudioOutputFormatChangesOnNextSet )( 
  660.             ISpeechVoice * This,
  661.             /* [in] */ VARIANT_BOOL Allow);
  662.         
  663.         /* [id][helpstring][hidden][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AllowAudioOutputFormatChangesOnNextSet )( 
  664.             ISpeechVoice * This,
  665.             /* [retval][out] */ VARIANT_BOOL *Allow);
  666.         
  667.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventInterests )( 
  668.             ISpeechVoice * This,
  669.             /* [retval][out] */ SpeechVoiceEvents *EventInterestFlags);
  670.         
  671.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EventInterests )( 
  672.             ISpeechVoice * This,
  673.             /* [in] */ SpeechVoiceEvents EventInterestFlags);
  674.         
  675.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Priority )( 
  676.             ISpeechVoice * This,
  677.             /* [in] */ SpeechVoicePriority Priority);
  678.         
  679.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Priority )( 
  680.             ISpeechVoice * This,
  681.             /* [retval][out] */ SpeechVoicePriority *Priority);
  682.         
  683.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AlertBoundary )( 
  684.             ISpeechVoice * This,
  685.             /* [in] */ SpeechVoiceEvents Boundary);
  686.         
  687.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AlertBoundary )( 
  688.             ISpeechVoice * This,
  689.             /* [retval][out] */ SpeechVoiceEvents *Boundary);
  690.         
  691.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_SynchronousSpeakTimeout )( 
  692.             ISpeechVoice * This,
  693.             /* [in] */ long msTimeout);
  694.         
  695.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SynchronousSpeakTimeout )( 
  696.             ISpeechVoice * This,
  697.             /* [retval][out] */ long *msTimeout);
  698.         
  699.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Speak )( 
  700.             ISpeechVoice * This,
  701.             /* [in] */ BSTR Text,
  702.             /* [defaultvalue][in] */ SpeechVoiceSpeakFlags Flags,
  703.             /* [retval][out] */ long *StreamNumber);
  704.         
  705.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *SpeakStream )( 
  706.             ISpeechVoice * This,
  707.             /* [in] */ ISpeechBaseStream *Stream,
  708.             /* [defaultvalue][in] */ SpeechVoiceSpeakFlags Flags,
  709.             /* [retval][out] */ long *StreamNumber);
  710.         
  711.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Pause )( 
  712.             ISpeechVoice * This);
  713.         
  714.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Resume )( 
  715.             ISpeechVoice * This);
  716.         
  717.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Skip )( 
  718.             ISpeechVoice * This,
  719.             /* [in] */ const BSTR Type,
  720.             /* [in] */ long NumItems,
  721.             /* [retval][out] */ long *NumSkipped);
  722.         
  723.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetVoices )( 
  724.             ISpeechVoice * This,
  725.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  726.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  727.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  728.         
  729.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetAudioOutputs )( 
  730.             ISpeechVoice * This,
  731.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  732.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  733.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  734.         
  735.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *WaitUntilDone )( 
  736.             ISpeechVoice * This,
  737.             /* [in] */ long msTimeout,
  738.             /* [retval][out] */ VARIANT_BOOL *Done);
  739.         
  740.         /* [id][hidden][helpstring] */ HRESULT ( STDMETHODCALLTYPE *SpeakCompleteEvent )( 
  741.             ISpeechVoice * This,
  742.             /* [retval][out] */ long *Handle);
  743.         
  744.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *IsUISupported )( 
  745.             ISpeechVoice * This,
  746.             /* [in] */ const BSTR TypeOfUI,
  747.             /* [defaultvalue][in] */ const VARIANT *ExtraData,
  748.             /* [retval][out] */ VARIANT_BOOL *Supported);
  749.         
  750.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *DisplayUI )( 
  751.             ISpeechVoice * This,
  752.             /* [in] */ long hWndParent,
  753.             /* [in] */ BSTR Title,
  754.             /* [in] */ const BSTR TypeOfUI,
  755.             /* [defaultvalue][in] */ const VARIANT *ExtraData);
  756.         
  757.         END_INTERFACE
  758.     } ISpeechVoiceVtbl;
  759.     interface ISpeechVoice
  760.     {
  761.         CONST_VTBL struct ISpeechVoiceVtbl *lpVtbl;
  762.     };
  763.     
  764. #ifdef COBJMACROS
  765. #define ISpeechVoice_QueryInterface(This,riid,ppvObject)
  766.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  767. #define ISpeechVoice_AddRef(This)
  768.     (This)->lpVtbl -> AddRef(This)
  769. #define ISpeechVoice_Release(This)
  770.     (This)->lpVtbl -> Release(This)
  771. #define ISpeechVoice_GetTypeInfoCount(This,pctinfo)
  772.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  773. #define ISpeechVoice_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  774.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  775. #define ISpeechVoice_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  776.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  777. #define ISpeechVoice_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  778.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  779. #define ISpeechVoice_get_Status(This,Status)
  780.     (This)->lpVtbl -> get_Status(This,Status)
  781. #define ISpeechVoice_get_Voice(This,Voice)
  782.     (This)->lpVtbl -> get_Voice(This,Voice)
  783. #define ISpeechVoice_putref_Voice(This,Voice)
  784.     (This)->lpVtbl -> putref_Voice(This,Voice)
  785. #define ISpeechVoice_get_AudioOutput(This,AudioOutput)
  786.     (This)->lpVtbl -> get_AudioOutput(This,AudioOutput)
  787. #define ISpeechVoice_putref_AudioOutput(This,AudioOutput)
  788.     (This)->lpVtbl -> putref_AudioOutput(This,AudioOutput)
  789. #define ISpeechVoice_get_AudioOutputStream(This,AudioOutputStream)
  790.     (This)->lpVtbl -> get_AudioOutputStream(This,AudioOutputStream)
  791. #define ISpeechVoice_putref_AudioOutputStream(This,AudioOutputStream)
  792.     (This)->lpVtbl -> putref_AudioOutputStream(This,AudioOutputStream)
  793. #define ISpeechVoice_get_Rate(This,Rate)
  794.     (This)->lpVtbl -> get_Rate(This,Rate)
  795. #define ISpeechVoice_put_Rate(This,Rate)
  796.     (This)->lpVtbl -> put_Rate(This,Rate)
  797. #define ISpeechVoice_get_Volume(This,Volume)
  798.     (This)->lpVtbl -> get_Volume(This,Volume)
  799. #define ISpeechVoice_put_Volume(This,Volume)
  800.     (This)->lpVtbl -> put_Volume(This,Volume)
  801. #define ISpeechVoice_put_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
  802.     (This)->lpVtbl -> put_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
  803. #define ISpeechVoice_get_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
  804.     (This)->lpVtbl -> get_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
  805. #define ISpeechVoice_get_EventInterests(This,EventInterestFlags)
  806.     (This)->lpVtbl -> get_EventInterests(This,EventInterestFlags)
  807. #define ISpeechVoice_put_EventInterests(This,EventInterestFlags)
  808.     (This)->lpVtbl -> put_EventInterests(This,EventInterestFlags)
  809. #define ISpeechVoice_put_Priority(This,Priority)
  810.     (This)->lpVtbl -> put_Priority(This,Priority)
  811. #define ISpeechVoice_get_Priority(This,Priority)
  812.     (This)->lpVtbl -> get_Priority(This,Priority)
  813. #define ISpeechVoice_put_AlertBoundary(This,Boundary)
  814.     (This)->lpVtbl -> put_AlertBoundary(This,Boundary)
  815. #define ISpeechVoice_get_AlertBoundary(This,Boundary)
  816.     (This)->lpVtbl -> get_AlertBoundary(This,Boundary)
  817. #define ISpeechVoice_put_SynchronousSpeakTimeout(This,msTimeout)
  818.     (This)->lpVtbl -> put_SynchronousSpeakTimeout(This,msTimeout)
  819. #define ISpeechVoice_get_SynchronousSpeakTimeout(This,msTimeout)
  820.     (This)->lpVtbl -> get_SynchronousSpeakTimeout(This,msTimeout)
  821. #define ISpeechVoice_Speak(This,Text,Flags,StreamNumber)
  822.     (This)->lpVtbl -> Speak(This,Text,Flags,StreamNumber)
  823. #define ISpeechVoice_SpeakStream(This,Stream,Flags,StreamNumber)
  824.     (This)->lpVtbl -> SpeakStream(This,Stream,Flags,StreamNumber)
  825. #define ISpeechVoice_Pause(This)
  826.     (This)->lpVtbl -> Pause(This)
  827. #define ISpeechVoice_Resume(This)
  828.     (This)->lpVtbl -> Resume(This)
  829. #define ISpeechVoice_Skip(This,Type,NumItems,NumSkipped)
  830.     (This)->lpVtbl -> Skip(This,Type,NumItems,NumSkipped)
  831. #define ISpeechVoice_GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  832.     (This)->lpVtbl -> GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  833. #define ISpeechVoice_GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  834.     (This)->lpVtbl -> GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  835. #define ISpeechVoice_WaitUntilDone(This,msTimeout,Done)
  836.     (This)->lpVtbl -> WaitUntilDone(This,msTimeout,Done)
  837. #define ISpeechVoice_SpeakCompleteEvent(This,Handle)
  838.     (This)->lpVtbl -> SpeakCompleteEvent(This,Handle)
  839. #define ISpeechVoice_IsUISupported(This,TypeOfUI,ExtraData,Supported)
  840.     (This)->lpVtbl -> IsUISupported(This,TypeOfUI,ExtraData,Supported)
  841. #define ISpeechVoice_DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
  842.     (This)->lpVtbl -> DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
  843. #endif /* COBJMACROS */
  844. #endif  /* C style interface */
  845. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_Status_Proxy( 
  846.     ISpeechVoice * This,
  847.     /* [retval][out] */ ISpeechVoiceStatus **Status);
  848. void __RPC_STUB ISpeechVoice_get_Status_Stub(
  849.     IRpcStubBuffer *This,
  850.     IRpcChannelBuffer *_pRpcChannelBuffer,
  851.     PRPC_MESSAGE _pRpcMessage,
  852.     DWORD *_pdwStubPhase);
  853. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_Voice_Proxy( 
  854.     ISpeechVoice * This,
  855.     /* [retval][out] */ ISpeechObjectToken **Voice);
  856. void __RPC_STUB ISpeechVoice_get_Voice_Stub(
  857.     IRpcStubBuffer *This,
  858.     IRpcChannelBuffer *_pRpcChannelBuffer,
  859.     PRPC_MESSAGE _pRpcMessage,
  860.     DWORD *_pdwStubPhase);
  861. /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_putref_Voice_Proxy( 
  862.     ISpeechVoice * This,
  863.     /* [in] */ ISpeechObjectToken *Voice);
  864. void __RPC_STUB ISpeechVoice_putref_Voice_Stub(
  865.     IRpcStubBuffer *This,
  866.     IRpcChannelBuffer *_pRpcChannelBuffer,
  867.     PRPC_MESSAGE _pRpcMessage,
  868.     DWORD *_pdwStubPhase);
  869. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_AudioOutput_Proxy( 
  870.     ISpeechVoice * This,
  871.     /* [retval][out] */ ISpeechObjectToken **AudioOutput);
  872. void __RPC_STUB ISpeechVoice_get_AudioOutput_Stub(
  873.     IRpcStubBuffer *This,
  874.     IRpcChannelBuffer *_pRpcChannelBuffer,
  875.     PRPC_MESSAGE _pRpcMessage,
  876.     DWORD *_pdwStubPhase);
  877. /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_putref_AudioOutput_Proxy( 
  878.     ISpeechVoice * This,
  879.     /* [in] */ ISpeechObjectToken *AudioOutput);
  880. void __RPC_STUB ISpeechVoice_putref_AudioOutput_Stub(
  881.     IRpcStubBuffer *This,
  882.     IRpcChannelBuffer *_pRpcChannelBuffer,
  883.     PRPC_MESSAGE _pRpcMessage,
  884.     DWORD *_pdwStubPhase);
  885. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_AudioOutputStream_Proxy( 
  886.     ISpeechVoice * This,
  887.     /* [retval][out] */ ISpeechBaseStream **AudioOutputStream);
  888. void __RPC_STUB ISpeechVoice_get_AudioOutputStream_Stub(
  889.     IRpcStubBuffer *This,
  890.     IRpcChannelBuffer *_pRpcChannelBuffer,
  891.     PRPC_MESSAGE _pRpcMessage,
  892.     DWORD *_pdwStubPhase);
  893. /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_putref_AudioOutputStream_Proxy( 
  894.     ISpeechVoice * This,
  895.     /* [in] */ ISpeechBaseStream *AudioOutputStream);
  896. void __RPC_STUB ISpeechVoice_putref_AudioOutputStream_Stub(
  897.     IRpcStubBuffer *This,
  898.     IRpcChannelBuffer *_pRpcChannelBuffer,
  899.     PRPC_MESSAGE _pRpcMessage,
  900.     DWORD *_pdwStubPhase);
  901. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_Rate_Proxy( 
  902.     ISpeechVoice * This,
  903.     /* [retval][out] */ long *Rate);
  904. void __RPC_STUB ISpeechVoice_get_Rate_Stub(
  905.     IRpcStubBuffer *This,
  906.     IRpcChannelBuffer *_pRpcChannelBuffer,
  907.     PRPC_MESSAGE _pRpcMessage,
  908.     DWORD *_pdwStubPhase);
  909. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_put_Rate_Proxy( 
  910.     ISpeechVoice * This,
  911.     /* [in] */ long Rate);
  912. void __RPC_STUB ISpeechVoice_put_Rate_Stub(
  913.     IRpcStubBuffer *This,
  914.     IRpcChannelBuffer *_pRpcChannelBuffer,
  915.     PRPC_MESSAGE _pRpcMessage,
  916.     DWORD *_pdwStubPhase);
  917. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_Volume_Proxy( 
  918.     ISpeechVoice * This,
  919.     /* [retval][out] */ long *Volume);
  920. void __RPC_STUB ISpeechVoice_get_Volume_Stub(
  921.     IRpcStubBuffer *This,
  922.     IRpcChannelBuffer *_pRpcChannelBuffer,
  923.     PRPC_MESSAGE _pRpcMessage,
  924.     DWORD *_pdwStubPhase);
  925. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_put_Volume_Proxy( 
  926.     ISpeechVoice * This,
  927.     /* [in] */ long Volume);
  928. void __RPC_STUB ISpeechVoice_put_Volume_Stub(
  929.     IRpcStubBuffer *This,
  930.     IRpcChannelBuffer *_pRpcChannelBuffer,
  931.     PRPC_MESSAGE _pRpcMessage,
  932.     DWORD *_pdwStubPhase);
  933. /* [id][helpstring][hidden][propput] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_put_AllowAudioOutputFormatChangesOnNextSet_Proxy( 
  934.     ISpeechVoice * This,
  935.     /* [in] */ VARIANT_BOOL Allow);
  936. void __RPC_STUB ISpeechVoice_put_AllowAudioOutputFormatChangesOnNextSet_Stub(
  937.     IRpcStubBuffer *This,
  938.     IRpcChannelBuffer *_pRpcChannelBuffer,
  939.     PRPC_MESSAGE _pRpcMessage,
  940.     DWORD *_pdwStubPhase);
  941. /* [id][helpstring][hidden][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_AllowAudioOutputFormatChangesOnNextSet_Proxy( 
  942.     ISpeechVoice * This,
  943.     /* [retval][out] */ VARIANT_BOOL *Allow);
  944. void __RPC_STUB ISpeechVoice_get_AllowAudioOutputFormatChangesOnNextSet_Stub(
  945.     IRpcStubBuffer *This,
  946.     IRpcChannelBuffer *_pRpcChannelBuffer,
  947.     PRPC_MESSAGE _pRpcMessage,
  948.     DWORD *_pdwStubPhase);
  949. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_EventInterests_Proxy( 
  950.     ISpeechVoice * This,
  951.     /* [retval][out] */ SpeechVoiceEvents *EventInterestFlags);
  952. void __RPC_STUB ISpeechVoice_get_EventInterests_Stub(
  953.     IRpcStubBuffer *This,
  954.     IRpcChannelBuffer *_pRpcChannelBuffer,
  955.     PRPC_MESSAGE _pRpcMessage,
  956.     DWORD *_pdwStubPhase);
  957. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_put_EventInterests_Proxy( 
  958.     ISpeechVoice * This,
  959.     /* [in] */ SpeechVoiceEvents EventInterestFlags);
  960. void __RPC_STUB ISpeechVoice_put_EventInterests_Stub(
  961.     IRpcStubBuffer *This,
  962.     IRpcChannelBuffer *_pRpcChannelBuffer,
  963.     PRPC_MESSAGE _pRpcMessage,
  964.     DWORD *_pdwStubPhase);
  965. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_put_Priority_Proxy( 
  966.     ISpeechVoice * This,
  967.     /* [in] */ SpeechVoicePriority Priority);
  968. void __RPC_STUB ISpeechVoice_put_Priority_Stub(
  969.     IRpcStubBuffer *This,
  970.     IRpcChannelBuffer *_pRpcChannelBuffer,
  971.     PRPC_MESSAGE _pRpcMessage,
  972.     DWORD *_pdwStubPhase);
  973. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_Priority_Proxy( 
  974.     ISpeechVoice * This,
  975.     /* [retval][out] */ SpeechVoicePriority *Priority);
  976. void __RPC_STUB ISpeechVoice_get_Priority_Stub(
  977.     IRpcStubBuffer *This,
  978.     IRpcChannelBuffer *_pRpcChannelBuffer,
  979.     PRPC_MESSAGE _pRpcMessage,
  980.     DWORD *_pdwStubPhase);
  981. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_put_AlertBoundary_Proxy( 
  982.     ISpeechVoice * This,
  983.     /* [in] */ SpeechVoiceEvents Boundary);
  984. void __RPC_STUB ISpeechVoice_put_AlertBoundary_Stub(
  985.     IRpcStubBuffer *This,
  986.     IRpcChannelBuffer *_pRpcChannelBuffer,
  987.     PRPC_MESSAGE _pRpcMessage,
  988.     DWORD *_pdwStubPhase);
  989. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_AlertBoundary_Proxy( 
  990.     ISpeechVoice * This,
  991.     /* [retval][out] */ SpeechVoiceEvents *Boundary);
  992. void __RPC_STUB ISpeechVoice_get_AlertBoundary_Stub(
  993.     IRpcStubBuffer *This,
  994.     IRpcChannelBuffer *_pRpcChannelBuffer,
  995.     PRPC_MESSAGE _pRpcMessage,
  996.     DWORD *_pdwStubPhase);
  997. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_put_SynchronousSpeakTimeout_Proxy( 
  998.     ISpeechVoice * This,
  999.     /* [in] */ long msTimeout);
  1000. void __RPC_STUB ISpeechVoice_put_SynchronousSpeakTimeout_Stub(
  1001.     IRpcStubBuffer *This,
  1002.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1003.     PRPC_MESSAGE _pRpcMessage,
  1004.     DWORD *_pdwStubPhase);
  1005. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_get_SynchronousSpeakTimeout_Proxy( 
  1006.     ISpeechVoice * This,
  1007.     /* [retval][out] */ long *msTimeout);
  1008. void __RPC_STUB ISpeechVoice_get_SynchronousSpeakTimeout_Stub(
  1009.     IRpcStubBuffer *This,
  1010.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1011.     PRPC_MESSAGE _pRpcMessage,
  1012.     DWORD *_pdwStubPhase);
  1013. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_Speak_Proxy( 
  1014.     ISpeechVoice * This,
  1015.     /* [in] */ BSTR Text,
  1016.     /* [defaultvalue][in] */ SpeechVoiceSpeakFlags Flags,
  1017.     /* [retval][out] */ long *StreamNumber);
  1018. void __RPC_STUB ISpeechVoice_Speak_Stub(
  1019.     IRpcStubBuffer *This,
  1020.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1021.     PRPC_MESSAGE _pRpcMessage,
  1022.     DWORD *_pdwStubPhase);
  1023. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_SpeakStream_Proxy( 
  1024.     ISpeechVoice * This,
  1025.     /* [in] */ ISpeechBaseStream *Stream,
  1026.     /* [defaultvalue][in] */ SpeechVoiceSpeakFlags Flags,
  1027.     /* [retval][out] */ long *StreamNumber);
  1028. void __RPC_STUB ISpeechVoice_SpeakStream_Stub(
  1029.     IRpcStubBuffer *This,
  1030.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1031.     PRPC_MESSAGE _pRpcMessage,
  1032.     DWORD *_pdwStubPhase);
  1033. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_Pause_Proxy( 
  1034.     ISpeechVoice * This);
  1035. void __RPC_STUB ISpeechVoice_Pause_Stub(
  1036.     IRpcStubBuffer *This,
  1037.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1038.     PRPC_MESSAGE _pRpcMessage,
  1039.     DWORD *_pdwStubPhase);
  1040. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_Resume_Proxy( 
  1041.     ISpeechVoice * This);
  1042. void __RPC_STUB ISpeechVoice_Resume_Stub(
  1043.     IRpcStubBuffer *This,
  1044.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1045.     PRPC_MESSAGE _pRpcMessage,
  1046.     DWORD *_pdwStubPhase);
  1047. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_Skip_Proxy( 
  1048.     ISpeechVoice * This,
  1049.     /* [in] */ const BSTR Type,
  1050.     /* [in] */ long NumItems,
  1051.     /* [retval][out] */ long *NumSkipped);
  1052. void __RPC_STUB ISpeechVoice_Skip_Stub(
  1053.     IRpcStubBuffer *This,
  1054.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1055.     PRPC_MESSAGE _pRpcMessage,
  1056.     DWORD *_pdwStubPhase);
  1057. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_GetVoices_Proxy( 
  1058.     ISpeechVoice * This,
  1059.     /* [defaultvalue][in] */ BSTR RequiredAttributes,
  1060.     /* [defaultvalue][in] */ BSTR OptionalAttributes,
  1061.     /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  1062. void __RPC_STUB ISpeechVoice_GetVoices_Stub(
  1063.     IRpcStubBuffer *This,
  1064.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1065.     PRPC_MESSAGE _pRpcMessage,
  1066.     DWORD *_pdwStubPhase);
  1067. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_GetAudioOutputs_Proxy( 
  1068.     ISpeechVoice * This,
  1069.     /* [defaultvalue][in] */ BSTR RequiredAttributes,
  1070.     /* [defaultvalue][in] */ BSTR OptionalAttributes,
  1071.     /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  1072. void __RPC_STUB ISpeechVoice_GetAudioOutputs_Stub(
  1073.     IRpcStubBuffer *This,
  1074.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1075.     PRPC_MESSAGE _pRpcMessage,
  1076.     DWORD *_pdwStubPhase);
  1077. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_WaitUntilDone_Proxy( 
  1078.     ISpeechVoice * This,
  1079.     /* [in] */ long msTimeout,
  1080.     /* [retval][out] */ VARIANT_BOOL *Done);
  1081. void __RPC_STUB ISpeechVoice_WaitUntilDone_Stub(
  1082.     IRpcStubBuffer *This,
  1083.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1084.     PRPC_MESSAGE _pRpcMessage,
  1085.     DWORD *_pdwStubPhase);
  1086. /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_SpeakCompleteEvent_Proxy( 
  1087.     ISpeechVoice * This,
  1088.     /* [retval][out] */ long *Handle);
  1089. void __RPC_STUB ISpeechVoice_SpeakCompleteEvent_Stub(
  1090.     IRpcStubBuffer *This,
  1091.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1092.     PRPC_MESSAGE _pRpcMessage,
  1093.     DWORD *_pdwStubPhase);
  1094. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_IsUISupported_Proxy( 
  1095.     ISpeechVoice * This,
  1096.     /* [in] */ const BSTR TypeOfUI,
  1097.     /* [defaultvalue][in] */ const VARIANT *ExtraData,
  1098.     /* [retval][out] */ VARIANT_BOOL *Supported);
  1099. void __RPC_STUB ISpeechVoice_IsUISupported_Stub(
  1100.     IRpcStubBuffer *This,
  1101.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1102.     PRPC_MESSAGE _pRpcMessage,
  1103.     DWORD *_pdwStubPhase);
  1104. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechVoice_DisplayUI_Proxy( 
  1105.     ISpeechVoice * This,
  1106.     /* [in] */ long hWndParent,
  1107.     /* [in] */ BSTR Title,
  1108.     /* [in] */ const BSTR TypeOfUI,
  1109.     /* [defaultvalue][in] */ const VARIANT *ExtraData);
  1110. void __RPC_STUB ISpeechVoice_DisplayUI_Stub(
  1111.     IRpcStubBuffer *This,
  1112.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1113.     PRPC_MESSAGE _pRpcMessage,
  1114.     DWORD *_pdwStubPhase);
  1115. #endif  /* __ISpeechVoice_INTERFACE_DEFINED__ */
  1116. #ifndef __ISpeechVoiceStatus_INTERFACE_DEFINED__
  1117. #define __ISpeechVoiceStatus_INTERFACE_DEFINED__
  1118. /* interface ISpeechVoiceStatus */
  1119. /* [unique][helpstring][dual][uuid][object] */ 
  1120. EXTERN_C const IID IID_ISpeechVoiceStatus;
  1121. #if defined(__cplusplus) && !defined(CINTERFACE)
  1122.     
  1123.     MIDL_INTERFACE("8BE47B07-57F6-11d2-9EEE-00C04F797396")
  1124.     ISpeechVoiceStatus : public IDispatch
  1125.     {
  1126.     public:
  1127.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentStreamNumber( 
  1128.             /* [retval][out] */ long *StreamNumber) = 0;
  1129.         
  1130.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_LastStreamNumberQueued( 
  1131.             /* [retval][out] */ long *StreamNumber) = 0;
  1132.         
  1133.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_LastHResult( 
  1134.             /* [retval][out] */ long *HResult) = 0;
  1135.         
  1136.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_RunningState( 
  1137.             /* [retval][out] */ SpeechRunState *State) = 0;
  1138.         
  1139.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_InputWordPosition( 
  1140.             /* [retval][out] */ long *Position) = 0;
  1141.         
  1142.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_InputWordLength( 
  1143.             /* [retval][out] */ long *Length) = 0;
  1144.         
  1145.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_InputSentencePosition( 
  1146.             /* [retval][out] */ long *Position) = 0;
  1147.         
  1148.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_InputSentenceLength( 
  1149.             /* [retval][out] */ long *Length) = 0;
  1150.         
  1151.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_LastBookmark( 
  1152.             /* [retval][out] */ BSTR *Bookmark) = 0;
  1153.         
  1154.         virtual /* [hidden][id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_LastBookmarkId( 
  1155.             /* [retval][out] */ long *BookmarkId) = 0;
  1156.         
  1157.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_PhonemeId( 
  1158.             /* [retval][out] */ short *PhoneId) = 0;
  1159.         
  1160.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_VisemeId( 
  1161.             /* [retval][out] */ short *VisemeId) = 0;
  1162.         
  1163.     };
  1164.     
  1165. #else  /* C style interface */
  1166.     typedef struct ISpeechVoiceStatusVtbl
  1167.     {
  1168.         BEGIN_INTERFACE
  1169.         
  1170.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1171.             ISpeechVoiceStatus * This,
  1172.             /* [in] */ REFIID riid,
  1173.             /* [iid_is][out] */ void **ppvObject);
  1174.         
  1175.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1176.             ISpeechVoiceStatus * This);
  1177.         
  1178.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1179.             ISpeechVoiceStatus * This);
  1180.         
  1181.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1182.             ISpeechVoiceStatus * This,
  1183.             /* [out] */ UINT *pctinfo);
  1184.         
  1185.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1186.             ISpeechVoiceStatus * This,
  1187.             /* [in] */ UINT iTInfo,
  1188.             /* [in] */ LCID lcid,
  1189.             /* [out] */ ITypeInfo **ppTInfo);
  1190.         
  1191.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1192.             ISpeechVoiceStatus * This,
  1193.             /* [in] */ REFIID riid,
  1194.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1195.             /* [in] */ UINT cNames,
  1196.             /* [in] */ LCID lcid,
  1197.             /* [size_is][out] */ DISPID *rgDispId);
  1198.         
  1199.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1200.             ISpeechVoiceStatus * This,
  1201.             /* [in] */ DISPID dispIdMember,
  1202.             /* [in] */ REFIID riid,
  1203.             /* [in] */ LCID lcid,
  1204.             /* [in] */ WORD wFlags,
  1205.             /* [out][in] */ DISPPARAMS *pDispParams,
  1206.             /* [out] */ VARIANT *pVarResult,
  1207.             /* [out] */ EXCEPINFO *pExcepInfo,
  1208.             /* [out] */ UINT *puArgErr);
  1209.         
  1210.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentStreamNumber )( 
  1211.             ISpeechVoiceStatus * This,
  1212.             /* [retval][out] */ long *StreamNumber);
  1213.         
  1214.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastStreamNumberQueued )( 
  1215.             ISpeechVoiceStatus * This,
  1216.             /* [retval][out] */ long *StreamNumber);
  1217.         
  1218.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastHResult )( 
  1219.             ISpeechVoiceStatus * This,
  1220.             /* [retval][out] */ long *HResult);
  1221.         
  1222.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RunningState )( 
  1223.             ISpeechVoiceStatus * This,
  1224.             /* [retval][out] */ SpeechRunState *State);
  1225.         
  1226.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InputWordPosition )( 
  1227.             ISpeechVoiceStatus * This,
  1228.             /* [retval][out] */ long *Position);
  1229.         
  1230.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InputWordLength )( 
  1231.             ISpeechVoiceStatus * This,
  1232.             /* [retval][out] */ long *Length);
  1233.         
  1234.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InputSentencePosition )( 
  1235.             ISpeechVoiceStatus * This,
  1236.             /* [retval][out] */ long *Position);
  1237.         
  1238.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InputSentenceLength )( 
  1239.             ISpeechVoiceStatus * This,
  1240.             /* [retval][out] */ long *Length);
  1241.         
  1242.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastBookmark )( 
  1243.             ISpeechVoiceStatus * This,
  1244.             /* [retval][out] */ BSTR *Bookmark);
  1245.         
  1246.         /* [hidden][id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastBookmarkId )( 
  1247.             ISpeechVoiceStatus * This,
  1248.             /* [retval][out] */ long *BookmarkId);
  1249.         
  1250.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_PhonemeId )( 
  1251.             ISpeechVoiceStatus * This,
  1252.             /* [retval][out] */ short *PhoneId);
  1253.         
  1254.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VisemeId )( 
  1255.             ISpeechVoiceStatus * This,
  1256.             /* [retval][out] */ short *VisemeId);
  1257.         
  1258.         END_INTERFACE
  1259.     } ISpeechVoiceStatusVtbl;
  1260.     interface ISpeechVoiceStatus
  1261.     {
  1262.         CONST_VTBL struct ISpeechVoiceStatusVtbl *lpVtbl;
  1263.     };
  1264.     
  1265. #ifdef COBJMACROS
  1266. #define ISpeechVoiceStatus_QueryInterface(This,riid,ppvObject)
  1267.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1268. #define ISpeechVoiceStatus_AddRef(This)
  1269.     (This)->lpVtbl -> AddRef(This)
  1270. #define ISpeechVoiceStatus_Release(This)
  1271.     (This)->lpVtbl -> Release(This)
  1272. #define ISpeechVoiceStatus_GetTypeInfoCount(This,pctinfo)
  1273.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1274. #define ISpeechVoiceStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1275.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1276. #define ISpeechVoiceStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1277.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1278. #define ISpeechVoiceStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1279.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1280. #define ISpeechVoiceStatus_get_CurrentStreamNumber(This,StreamNumber)
  1281.     (This)->lpVtbl -> get_CurrentStreamNumber(This,StreamNumber)
  1282. #define ISpeechVoiceStatus_get_LastStreamNumberQueued(This,StreamNumber)
  1283.     (This)->lpVtbl -> get_LastStreamNumberQueued(This,StreamNumber)
  1284. #define ISpeechVoiceStatus_get_LastHResult(This,HResult)
  1285.     (This)->lpVtbl -> get_LastHResult(This,HResult)
  1286. #define ISpeechVoiceStatus_get_RunningState(This,State)
  1287.     (This)->lpVtbl -> get_RunningState(This,State)
  1288. #define ISpeechVoiceStatus_get_InputWordPosition(This,Position)
  1289.     (This)->lpVtbl -> get_InputWordPosition(This,Position)
  1290. #define ISpeechVoiceStatus_get_InputWordLength(This,Length)
  1291.     (This)->lpVtbl -> get_InputWordLength(This,Length)
  1292. #define ISpeechVoiceStatus_get_InputSentencePosition(This,Position)
  1293.     (This)->lpVtbl -> get_InputSentencePosition(This,Position)
  1294. #define ISpeechVoiceStatus_get_InputSentenceLength(This,Length)
  1295.     (This)->lpVtbl -> get_InputSentenceLength(This,Length)
  1296. #define ISpeechVoiceStatus_get_LastBookmark(This,Bookmark)
  1297.     (This)->lpVtbl -> get_LastBookmark(This,Bookmark)
  1298. #define ISpeechVoiceStatus_get_LastBookmarkId(This,BookmarkId)
  1299.     (This)->lpVtbl -> get_LastBookmarkId(This,BookmarkId)
  1300. #define ISpeechVoiceStatus_get_PhonemeId(This,PhoneId)
  1301.     (This)->lpVtbl -> get_PhonemeId(This,PhoneId)
  1302. #define ISpeechVoiceStatus_get_VisemeId(This,VisemeId)
  1303.     (This)->lpVtbl -> get_VisemeId(This,VisemeId)
  1304. #endif /* COBJMACROS */
  1305. #endif  /* C style interface */
  1306. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_CurrentStreamNumber_Proxy( 
  1307.     ISpeechVoiceStatus * This,
  1308.     /* [retval][out] */ long *StreamNumber);
  1309. void __RPC_STUB ISpeechVoiceStatus_get_CurrentStreamNumber_Stub(
  1310.     IRpcStubBuffer *This,
  1311.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1312.     PRPC_MESSAGE _pRpcMessage,
  1313.     DWORD *_pdwStubPhase);
  1314. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_LastStreamNumberQueued_Proxy( 
  1315.     ISpeechVoiceStatus * This,
  1316.     /* [retval][out] */ long *StreamNumber);
  1317. void __RPC_STUB ISpeechVoiceStatus_get_LastStreamNumberQueued_Stub(
  1318.     IRpcStubBuffer *This,
  1319.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1320.     PRPC_MESSAGE _pRpcMessage,
  1321.     DWORD *_pdwStubPhase);
  1322. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_LastHResult_Proxy( 
  1323.     ISpeechVoiceStatus * This,
  1324.     /* [retval][out] */ long *HResult);
  1325. void __RPC_STUB ISpeechVoiceStatus_get_LastHResult_Stub(
  1326.     IRpcStubBuffer *This,
  1327.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1328.     PRPC_MESSAGE _pRpcMessage,
  1329.     DWORD *_pdwStubPhase);
  1330. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_RunningState_Proxy( 
  1331.     ISpeechVoiceStatus * This,
  1332.     /* [retval][out] */ SpeechRunState *State);
  1333. void __RPC_STUB ISpeechVoiceStatus_get_RunningState_Stub(
  1334.     IRpcStubBuffer *This,
  1335.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1336.     PRPC_MESSAGE _pRpcMessage,
  1337.     DWORD *_pdwStubPhase);
  1338. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_InputWordPosition_Proxy( 
  1339.     ISpeechVoiceStatus * This,
  1340.     /* [retval][out] */ long *Position);
  1341. void __RPC_STUB ISpeechVoiceStatus_get_InputWordPosition_Stub(
  1342.     IRpcStubBuffer *This,
  1343.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1344.     PRPC_MESSAGE _pRpcMessage,
  1345.     DWORD *_pdwStubPhase);
  1346. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_InputWordLength_Proxy( 
  1347.     ISpeechVoiceStatus * This,
  1348.     /* [retval][out] */ long *Length);
  1349. void __RPC_STUB ISpeechVoiceStatus_get_InputWordLength_Stub(
  1350.     IRpcStubBuffer *This,
  1351.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1352.     PRPC_MESSAGE _pRpcMessage,
  1353.     DWORD *_pdwStubPhase);
  1354. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_InputSentencePosition_Proxy( 
  1355.     ISpeechVoiceStatus * This,
  1356.     /* [retval][out] */ long *Position);
  1357. void __RPC_STUB ISpeechVoiceStatus_get_InputSentencePosition_Stub(
  1358.     IRpcStubBuffer *This,
  1359.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1360.     PRPC_MESSAGE _pRpcMessage,
  1361.     DWORD *_pdwStubPhase);
  1362. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_InputSentenceLength_Proxy( 
  1363.     ISpeechVoiceStatus * This,
  1364.     /* [retval][out] */ long *Length);
  1365. void __RPC_STUB ISpeechVoiceStatus_get_InputSentenceLength_Stub(
  1366.     IRpcStubBuffer *This,
  1367.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1368.     PRPC_MESSAGE _pRpcMessage,
  1369.     DWORD *_pdwStubPhase);
  1370. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_LastBookmark_Proxy( 
  1371.     ISpeechVoiceStatus * This,
  1372.     /* [retval][out] */ BSTR *Bookmark);
  1373. void __RPC_STUB ISpeechVoiceStatus_get_LastBookmark_Stub(
  1374.     IRpcStubBuffer *This,
  1375.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1376.     PRPC_MESSAGE _pRpcMessage,
  1377.     DWORD *_pdwStubPhase);
  1378. /* [hidden][id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_LastBookmarkId_Proxy( 
  1379.     ISpeechVoiceStatus * This,
  1380.     /* [retval][out] */ long *BookmarkId);
  1381. void __RPC_STUB ISpeechVoiceStatus_get_LastBookmarkId_Stub(
  1382.     IRpcStubBuffer *This,
  1383.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1384.     PRPC_MESSAGE _pRpcMessage,
  1385.     DWORD *_pdwStubPhase);
  1386. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_PhonemeId_Proxy( 
  1387.     ISpeechVoiceStatus * This,
  1388.     /* [retval][out] */ short *PhoneId);
  1389. void __RPC_STUB ISpeechVoiceStatus_get_PhonemeId_Stub(
  1390.     IRpcStubBuffer *This,
  1391.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1392.     PRPC_MESSAGE _pRpcMessage,
  1393.     DWORD *_pdwStubPhase);
  1394. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechVoiceStatus_get_VisemeId_Proxy( 
  1395.     ISpeechVoiceStatus * This,
  1396.     /* [retval][out] */ short *VisemeId);
  1397. void __RPC_STUB ISpeechVoiceStatus_get_VisemeId_Stub(
  1398.     IRpcStubBuffer *This,
  1399.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1400.     PRPC_MESSAGE _pRpcMessage,
  1401.     DWORD *_pdwStubPhase);
  1402. #endif  /* __ISpeechVoiceStatus_INTERFACE_DEFINED__ */
  1403. #ifndef ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__
  1404. #define ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__
  1405. /* dispinterface _ISpeechVoiceEvents */
  1406. /* [uuid] */ 
  1407. EXTERN_C const IID DIID__ISpeechVoiceEvents;
  1408. #if defined(__cplusplus) && !defined(CINTERFACE)
  1409.     MIDL_INTERFACE("A372ACD1-3BEF-4bbd-8FFB-CB3E2B416AF8")
  1410.     _ISpeechVoiceEvents : public IDispatch
  1411.     {
  1412.     };
  1413.     
  1414. #else  /* C style interface */
  1415.     typedef struct _ISpeechVoiceEventsVtbl
  1416.     {
  1417.         BEGIN_INTERFACE
  1418.         
  1419.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1420.             _ISpeechVoiceEvents * This,
  1421.             /* [in] */ REFIID riid,
  1422.             /* [iid_is][out] */ void **ppvObject);
  1423.         
  1424.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1425.             _ISpeechVoiceEvents * This);
  1426.         
  1427.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1428.             _ISpeechVoiceEvents * This);
  1429.         
  1430.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1431.             _ISpeechVoiceEvents * This,
  1432.             /* [out] */ UINT *pctinfo);
  1433.         
  1434.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1435.             _ISpeechVoiceEvents * This,
  1436.             /* [in] */ UINT iTInfo,
  1437.             /* [in] */ LCID lcid,
  1438.             /* [out] */ ITypeInfo **ppTInfo);
  1439.         
  1440.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1441.             _ISpeechVoiceEvents * This,
  1442.             /* [in] */ REFIID riid,
  1443.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1444.             /* [in] */ UINT cNames,
  1445.             /* [in] */ LCID lcid,
  1446.             /* [size_is][out] */ DISPID *rgDispId);
  1447.         
  1448.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1449.             _ISpeechVoiceEvents * This,
  1450.             /* [in] */ DISPID dispIdMember,
  1451.             /* [in] */ REFIID riid,
  1452.             /* [in] */ LCID lcid,
  1453.             /* [in] */ WORD wFlags,
  1454.             /* [out][in] */ DISPPARAMS *pDispParams,
  1455.             /* [out] */ VARIANT *pVarResult,
  1456.             /* [out] */ EXCEPINFO *pExcepInfo,
  1457.             /* [out] */ UINT *puArgErr);
  1458.         
  1459.         END_INTERFACE
  1460.     } _ISpeechVoiceEventsVtbl;
  1461.     interface _ISpeechVoiceEvents
  1462.     {
  1463.         CONST_VTBL struct _ISpeechVoiceEventsVtbl *lpVtbl;
  1464.     };
  1465.     
  1466. #ifdef COBJMACROS
  1467. #define _ISpeechVoiceEvents_QueryInterface(This,riid,ppvObject)
  1468.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1469. #define _ISpeechVoiceEvents_AddRef(This)
  1470.     (This)->lpVtbl -> AddRef(This)
  1471. #define _ISpeechVoiceEvents_Release(This)
  1472.     (This)->lpVtbl -> Release(This)
  1473. #define _ISpeechVoiceEvents_GetTypeInfoCount(This,pctinfo)
  1474.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1475. #define _ISpeechVoiceEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1476.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1477. #define _ISpeechVoiceEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1478.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1479. #define _ISpeechVoiceEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1480.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1481. #endif /* COBJMACROS */
  1482. #endif  /* C style interface */
  1483. #endif  /* ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__ */
  1484. #ifndef __ISpeechRecognizer_INTERFACE_DEFINED__
  1485. #define __ISpeechRecognizer_INTERFACE_DEFINED__
  1486. /* interface ISpeechRecognizer */
  1487. /* [unique][helpstring][dual][uuid][object] */ 
  1488. EXTERN_C const IID IID_ISpeechRecognizer;
  1489. #if defined(__cplusplus) && !defined(CINTERFACE)
  1490.     
  1491.     MIDL_INTERFACE("2D5F1C0C-BD75-4b08-9478-3B11FEA2586C")
  1492.     ISpeechRecognizer : public IDispatch
  1493.     {
  1494.     public:
  1495.         virtual /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE putref_Recognizer( 
  1496.             /* [in] */ ISpeechObjectToken *Recognizer) = 0;
  1497.         
  1498.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Recognizer( 
  1499.             /* [retval][out] */ ISpeechObjectToken **Recognizer) = 0;
  1500.         
  1501.         virtual /* [id][helpstring][hidden][propput] */ HRESULT STDMETHODCALLTYPE put_AllowAudioInputFormatChangesOnNextSet( 
  1502.             /* [in] */ VARIANT_BOOL Allow) = 0;
  1503.         
  1504.         virtual /* [id][helpstring][hidden][propget] */ HRESULT STDMETHODCALLTYPE get_AllowAudioInputFormatChangesOnNextSet( 
  1505.             /* [retval][out] */ VARIANT_BOOL *Allow) = 0;
  1506.         
  1507.         virtual /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE putref_AudioInput( 
  1508.             /* [defaultvalue][in] */ ISpeechObjectToken *AudioInput = 0) = 0;
  1509.         
  1510.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_AudioInput( 
  1511.             /* [retval][out] */ ISpeechObjectToken **AudioInput) = 0;
  1512.         
  1513.         virtual /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE putref_AudioInputStream( 
  1514.             /* [defaultvalue][in] */ ISpeechBaseStream *AudioInputStream = 0) = 0;
  1515.         
  1516.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_AudioInputStream( 
  1517.             /* [retval][out] */ ISpeechBaseStream **AudioInputStream) = 0;
  1518.         
  1519.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_IsShared( 
  1520.             /* [retval][out] */ VARIANT_BOOL *Shared) = 0;
  1521.         
  1522.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_State( 
  1523.             /* [in] */ SpeechRecognizerState State) = 0;
  1524.         
  1525.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_State( 
  1526.             /* [retval][out] */ SpeechRecognizerState *State) = 0;
  1527.         
  1528.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Status( 
  1529.             /* [retval][out] */ ISpeechRecognizerStatus **Status) = 0;
  1530.         
  1531.         virtual /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE putref_Profile( 
  1532.             /* [defaultvalue][in] */ ISpeechObjectToken *Profile = 0) = 0;
  1533.         
  1534.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Profile( 
  1535.             /* [retval][out] */ ISpeechObjectToken **Profile) = 0;
  1536.         
  1537.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE EmulateRecognition( 
  1538.             /* [in] */ VARIANT TextElements,
  1539.             /* [defaultvalue][in] */ VARIANT *ElementDisplayAttributes = 0,
  1540.             /* [defaultvalue][in] */ long LanguageId = 0) = 0;
  1541.         
  1542.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CreateRecoContext( 
  1543.             /* [retval][out] */ ISpeechRecoContext **NewContext) = 0;
  1544.         
  1545.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE GetFormat( 
  1546.             /* [in] */ SpeechFormatType Type,
  1547.             /* [retval][out] */ ISpeechAudioFormat **Format) = 0;
  1548.         
  1549.         virtual /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE SetPropertyNumber( 
  1550.             /* [in] */ const BSTR Name,
  1551.             /* [in] */ long Value,
  1552.             /* [retval][out] */ VARIANT_BOOL *Supported) = 0;
  1553.         
  1554.         virtual /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE GetPropertyNumber( 
  1555.             /* [in] */ const BSTR Name,
  1556.             /* [out][in] */ long *Value,
  1557.             /* [retval][out] */ VARIANT_BOOL *Supported) = 0;
  1558.         
  1559.         virtual /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE SetPropertyString( 
  1560.             /* [in] */ const BSTR Name,
  1561.             /* [in] */ const BSTR Value,
  1562.             /* [retval][out] */ VARIANT_BOOL *Supported) = 0;
  1563.         
  1564.         virtual /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE GetPropertyString( 
  1565.             /* [in] */ const BSTR Name,
  1566.             /* [out][in] */ BSTR *Value,
  1567.             /* [retval][out] */ VARIANT_BOOL *Supported) = 0;
  1568.         
  1569.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE IsUISupported( 
  1570.             /* [in] */ const BSTR TypeOfUI,
  1571.             /* [defaultvalue][in] */ const VARIANT *ExtraData,
  1572.             /* [retval][out] */ VARIANT_BOOL *Supported) = 0;
  1573.         
  1574.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE DisplayUI( 
  1575.             /* [in] */ long hWndParent,
  1576.             /* [in] */ BSTR Title,
  1577.             /* [in] */ const BSTR TypeOfUI,
  1578.             /* [defaultvalue][in] */ const VARIANT *ExtraData = 0) = 0;
  1579.         
  1580.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE GetRecognizers( 
  1581.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  1582.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  1583.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens) = 0;
  1584.         
  1585.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE GetAudioInputs( 
  1586.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  1587.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  1588.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens) = 0;
  1589.         
  1590.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE GetProfiles( 
  1591.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  1592.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  1593.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens) = 0;
  1594.         
  1595.     };
  1596.     
  1597. #else  /* C style interface */
  1598.     typedef struct ISpeechRecognizerVtbl
  1599.     {
  1600.         BEGIN_INTERFACE
  1601.         
  1602.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1603.             ISpeechRecognizer * This,
  1604.             /* [in] */ REFIID riid,
  1605.             /* [iid_is][out] */ void **ppvObject);
  1606.         
  1607.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1608.             ISpeechRecognizer * This);
  1609.         
  1610.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1611.             ISpeechRecognizer * This);
  1612.         
  1613.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1614.             ISpeechRecognizer * This,
  1615.             /* [out] */ UINT *pctinfo);
  1616.         
  1617.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1618.             ISpeechRecognizer * This,
  1619.             /* [in] */ UINT iTInfo,
  1620.             /* [in] */ LCID lcid,
  1621.             /* [out] */ ITypeInfo **ppTInfo);
  1622.         
  1623.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1624.             ISpeechRecognizer * This,
  1625.             /* [in] */ REFIID riid,
  1626.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1627.             /* [in] */ UINT cNames,
  1628.             /* [in] */ LCID lcid,
  1629.             /* [size_is][out] */ DISPID *rgDispId);
  1630.         
  1631.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1632.             ISpeechRecognizer * This,
  1633.             /* [in] */ DISPID dispIdMember,
  1634.             /* [in] */ REFIID riid,
  1635.             /* [in] */ LCID lcid,
  1636.             /* [in] */ WORD wFlags,
  1637.             /* [out][in] */ DISPPARAMS *pDispParams,
  1638.             /* [out] */ VARIANT *pVarResult,
  1639.             /* [out] */ EXCEPINFO *pExcepInfo,
  1640.             /* [out] */ UINT *puArgErr);
  1641.         
  1642.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_Recognizer )( 
  1643.             ISpeechRecognizer * This,
  1644.             /* [in] */ ISpeechObjectToken *Recognizer);
  1645.         
  1646.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Recognizer )( 
  1647.             ISpeechRecognizer * This,
  1648.             /* [retval][out] */ ISpeechObjectToken **Recognizer);
  1649.         
  1650.         /* [id][helpstring][hidden][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AllowAudioInputFormatChangesOnNextSet )( 
  1651.             ISpeechRecognizer * This,
  1652.             /* [in] */ VARIANT_BOOL Allow);
  1653.         
  1654.         /* [id][helpstring][hidden][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AllowAudioInputFormatChangesOnNextSet )( 
  1655.             ISpeechRecognizer * This,
  1656.             /* [retval][out] */ VARIANT_BOOL *Allow);
  1657.         
  1658.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_AudioInput )( 
  1659.             ISpeechRecognizer * This,
  1660.             /* [defaultvalue][in] */ ISpeechObjectToken *AudioInput);
  1661.         
  1662.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioInput )( 
  1663.             ISpeechRecognizer * This,
  1664.             /* [retval][out] */ ISpeechObjectToken **AudioInput);
  1665.         
  1666.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_AudioInputStream )( 
  1667.             ISpeechRecognizer * This,
  1668.             /* [defaultvalue][in] */ ISpeechBaseStream *AudioInputStream);
  1669.         
  1670.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioInputStream )( 
  1671.             ISpeechRecognizer * This,
  1672.             /* [retval][out] */ ISpeechBaseStream **AudioInputStream);
  1673.         
  1674.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsShared )( 
  1675.             ISpeechRecognizer * This,
  1676.             /* [retval][out] */ VARIANT_BOOL *Shared);
  1677.         
  1678.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_State )( 
  1679.             ISpeechRecognizer * This,
  1680.             /* [in] */ SpeechRecognizerState State);
  1681.         
  1682.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
  1683.             ISpeechRecognizer * This,
  1684.             /* [retval][out] */ SpeechRecognizerState *State);
  1685.         
  1686.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
  1687.             ISpeechRecognizer * This,
  1688.             /* [retval][out] */ ISpeechRecognizerStatus **Status);
  1689.         
  1690.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_Profile )( 
  1691.             ISpeechRecognizer * This,
  1692.             /* [defaultvalue][in] */ ISpeechObjectToken *Profile);
  1693.         
  1694.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Profile )( 
  1695.             ISpeechRecognizer * This,
  1696.             /* [retval][out] */ ISpeechObjectToken **Profile);
  1697.         
  1698.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *EmulateRecognition )( 
  1699.             ISpeechRecognizer * This,
  1700.             /* [in] */ VARIANT TextElements,
  1701.             /* [defaultvalue][in] */ VARIANT *ElementDisplayAttributes,
  1702.             /* [defaultvalue][in] */ long LanguageId);
  1703.         
  1704.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateRecoContext )( 
  1705.             ISpeechRecognizer * This,
  1706.             /* [retval][out] */ ISpeechRecoContext **NewContext);
  1707.         
  1708.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetFormat )( 
  1709.             ISpeechRecognizer * This,
  1710.             /* [in] */ SpeechFormatType Type,
  1711.             /* [retval][out] */ ISpeechAudioFormat **Format);
  1712.         
  1713.         /* [id][hidden][helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetPropertyNumber )( 
  1714.             ISpeechRecognizer * This,
  1715.             /* [in] */ const BSTR Name,
  1716.             /* [in] */ long Value,
  1717.             /* [retval][out] */ VARIANT_BOOL *Supported);
  1718.         
  1719.         /* [id][hidden][helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPropertyNumber )( 
  1720.             ISpeechRecognizer * This,
  1721.             /* [in] */ const BSTR Name,
  1722.             /* [out][in] */ long *Value,
  1723.             /* [retval][out] */ VARIANT_BOOL *Supported);
  1724.         
  1725.         /* [id][hidden][helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetPropertyString )( 
  1726.             ISpeechRecognizer * This,
  1727.             /* [in] */ const BSTR Name,
  1728.             /* [in] */ const BSTR Value,
  1729.             /* [retval][out] */ VARIANT_BOOL *Supported);
  1730.         
  1731.         /* [id][hidden][helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPropertyString )( 
  1732.             ISpeechRecognizer * This,
  1733.             /* [in] */ const BSTR Name,
  1734.             /* [out][in] */ BSTR *Value,
  1735.             /* [retval][out] */ VARIANT_BOOL *Supported);
  1736.         
  1737.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *IsUISupported )( 
  1738.             ISpeechRecognizer * This,
  1739.             /* [in] */ const BSTR TypeOfUI,
  1740.             /* [defaultvalue][in] */ const VARIANT *ExtraData,
  1741.             /* [retval][out] */ VARIANT_BOOL *Supported);
  1742.         
  1743.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *DisplayUI )( 
  1744.             ISpeechRecognizer * This,
  1745.             /* [in] */ long hWndParent,
  1746.             /* [in] */ BSTR Title,
  1747.             /* [in] */ const BSTR TypeOfUI,
  1748.             /* [defaultvalue][in] */ const VARIANT *ExtraData);
  1749.         
  1750.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetRecognizers )( 
  1751.             ISpeechRecognizer * This,
  1752.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  1753.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  1754.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  1755.         
  1756.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetAudioInputs )( 
  1757.             ISpeechRecognizer * This,
  1758.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  1759.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  1760.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  1761.         
  1762.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetProfiles )( 
  1763.             ISpeechRecognizer * This,
  1764.             /* [defaultvalue][in] */ BSTR RequiredAttributes,
  1765.             /* [defaultvalue][in] */ BSTR OptionalAttributes,
  1766.             /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  1767.         
  1768.         END_INTERFACE
  1769.     } ISpeechRecognizerVtbl;
  1770.     interface ISpeechRecognizer
  1771.     {
  1772.         CONST_VTBL struct ISpeechRecognizerVtbl *lpVtbl;
  1773.     };
  1774.     
  1775. #ifdef COBJMACROS
  1776. #define ISpeechRecognizer_QueryInterface(This,riid,ppvObject)
  1777.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1778. #define ISpeechRecognizer_AddRef(This)
  1779.     (This)->lpVtbl -> AddRef(This)
  1780. #define ISpeechRecognizer_Release(This)
  1781.     (This)->lpVtbl -> Release(This)
  1782. #define ISpeechRecognizer_GetTypeInfoCount(This,pctinfo)
  1783.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1784. #define ISpeechRecognizer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1785.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1786. #define ISpeechRecognizer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1787.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1788. #define ISpeechRecognizer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1789.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1790. #define ISpeechRecognizer_putref_Recognizer(This,Recognizer)
  1791.     (This)->lpVtbl -> putref_Recognizer(This,Recognizer)
  1792. #define ISpeechRecognizer_get_Recognizer(This,Recognizer)
  1793.     (This)->lpVtbl -> get_Recognizer(This,Recognizer)
  1794. #define ISpeechRecognizer_put_AllowAudioInputFormatChangesOnNextSet(This,Allow)
  1795.     (This)->lpVtbl -> put_AllowAudioInputFormatChangesOnNextSet(This,Allow)
  1796. #define ISpeechRecognizer_get_AllowAudioInputFormatChangesOnNextSet(This,Allow)
  1797.     (This)->lpVtbl -> get_AllowAudioInputFormatChangesOnNextSet(This,Allow)
  1798. #define ISpeechRecognizer_putref_AudioInput(This,AudioInput)
  1799.     (This)->lpVtbl -> putref_AudioInput(This,AudioInput)
  1800. #define ISpeechRecognizer_get_AudioInput(This,AudioInput)
  1801.     (This)->lpVtbl -> get_AudioInput(This,AudioInput)
  1802. #define ISpeechRecognizer_putref_AudioInputStream(This,AudioInputStream)
  1803.     (This)->lpVtbl -> putref_AudioInputStream(This,AudioInputStream)
  1804. #define ISpeechRecognizer_get_AudioInputStream(This,AudioInputStream)
  1805.     (This)->lpVtbl -> get_AudioInputStream(This,AudioInputStream)
  1806. #define ISpeechRecognizer_get_IsShared(This,Shared)
  1807.     (This)->lpVtbl -> get_IsShared(This,Shared)
  1808. #define ISpeechRecognizer_put_State(This,State)
  1809.     (This)->lpVtbl -> put_State(This,State)
  1810. #define ISpeechRecognizer_get_State(This,State)
  1811.     (This)->lpVtbl -> get_State(This,State)
  1812. #define ISpeechRecognizer_get_Status(This,Status)
  1813.     (This)->lpVtbl -> get_Status(This,Status)
  1814. #define ISpeechRecognizer_putref_Profile(This,Profile)
  1815.     (This)->lpVtbl -> putref_Profile(This,Profile)
  1816. #define ISpeechRecognizer_get_Profile(This,Profile)
  1817.     (This)->lpVtbl -> get_Profile(This,Profile)
  1818. #define ISpeechRecognizer_EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId)
  1819.     (This)->lpVtbl -> EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId)
  1820. #define ISpeechRecognizer_CreateRecoContext(This,NewContext)
  1821.     (This)->lpVtbl -> CreateRecoContext(This,NewContext)
  1822. #define ISpeechRecognizer_GetFormat(This,Type,Format)
  1823.     (This)->lpVtbl -> GetFormat(This,Type,Format)
  1824. #define ISpeechRecognizer_SetPropertyNumber(This,Name,Value,Supported)
  1825.     (This)->lpVtbl -> SetPropertyNumber(This,Name,Value,Supported)
  1826. #define ISpeechRecognizer_GetPropertyNumber(This,Name,Value,Supported)
  1827.     (This)->lpVtbl -> GetPropertyNumber(This,Name,Value,Supported)
  1828. #define ISpeechRecognizer_SetPropertyString(This,Name,Value,Supported)
  1829.     (This)->lpVtbl -> SetPropertyString(This,Name,Value,Supported)
  1830. #define ISpeechRecognizer_GetPropertyString(This,Name,Value,Supported)
  1831.     (This)->lpVtbl -> GetPropertyString(This,Name,Value,Supported)
  1832. #define ISpeechRecognizer_IsUISupported(This,TypeOfUI,ExtraData,Supported)
  1833.     (This)->lpVtbl -> IsUISupported(This,TypeOfUI,ExtraData,Supported)
  1834. #define ISpeechRecognizer_DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
  1835.     (This)->lpVtbl -> DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
  1836. #define ISpeechRecognizer_GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  1837.     (This)->lpVtbl -> GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  1838. #define ISpeechRecognizer_GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  1839.     (This)->lpVtbl -> GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  1840. #define ISpeechRecognizer_GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  1841.     (This)->lpVtbl -> GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
  1842. #endif /* COBJMACROS */
  1843. #endif  /* C style interface */
  1844. /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_putref_Recognizer_Proxy( 
  1845.     ISpeechRecognizer * This,
  1846.     /* [in] */ ISpeechObjectToken *Recognizer);
  1847. void __RPC_STUB ISpeechRecognizer_putref_Recognizer_Stub(
  1848.     IRpcStubBuffer *This,
  1849.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1850.     PRPC_MESSAGE _pRpcMessage,
  1851.     DWORD *_pdwStubPhase);
  1852. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_get_Recognizer_Proxy( 
  1853.     ISpeechRecognizer * This,
  1854.     /* [retval][out] */ ISpeechObjectToken **Recognizer);
  1855. void __RPC_STUB ISpeechRecognizer_get_Recognizer_Stub(
  1856.     IRpcStubBuffer *This,
  1857.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1858.     PRPC_MESSAGE _pRpcMessage,
  1859.     DWORD *_pdwStubPhase);
  1860. /* [id][helpstring][hidden][propput] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_put_AllowAudioInputFormatChangesOnNextSet_Proxy( 
  1861.     ISpeechRecognizer * This,
  1862.     /* [in] */ VARIANT_BOOL Allow);
  1863. void __RPC_STUB ISpeechRecognizer_put_AllowAudioInputFormatChangesOnNextSet_Stub(
  1864.     IRpcStubBuffer *This,
  1865.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1866.     PRPC_MESSAGE _pRpcMessage,
  1867.     DWORD *_pdwStubPhase);
  1868. /* [id][helpstring][hidden][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_get_AllowAudioInputFormatChangesOnNextSet_Proxy( 
  1869.     ISpeechRecognizer * This,
  1870.     /* [retval][out] */ VARIANT_BOOL *Allow);
  1871. void __RPC_STUB ISpeechRecognizer_get_AllowAudioInputFormatChangesOnNextSet_Stub(
  1872.     IRpcStubBuffer *This,
  1873.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1874.     PRPC_MESSAGE _pRpcMessage,
  1875.     DWORD *_pdwStubPhase);
  1876. /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_putref_AudioInput_Proxy( 
  1877.     ISpeechRecognizer * This,
  1878.     /* [defaultvalue][in] */ ISpeechObjectToken *AudioInput);
  1879. void __RPC_STUB ISpeechRecognizer_putref_AudioInput_Stub(
  1880.     IRpcStubBuffer *This,
  1881.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1882.     PRPC_MESSAGE _pRpcMessage,
  1883.     DWORD *_pdwStubPhase);
  1884. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_get_AudioInput_Proxy( 
  1885.     ISpeechRecognizer * This,
  1886.     /* [retval][out] */ ISpeechObjectToken **AudioInput);
  1887. void __RPC_STUB ISpeechRecognizer_get_AudioInput_Stub(
  1888.     IRpcStubBuffer *This,
  1889.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1890.     PRPC_MESSAGE _pRpcMessage,
  1891.     DWORD *_pdwStubPhase);
  1892. /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_putref_AudioInputStream_Proxy( 
  1893.     ISpeechRecognizer * This,
  1894.     /* [defaultvalue][in] */ ISpeechBaseStream *AudioInputStream);
  1895. void __RPC_STUB ISpeechRecognizer_putref_AudioInputStream_Stub(
  1896.     IRpcStubBuffer *This,
  1897.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1898.     PRPC_MESSAGE _pRpcMessage,
  1899.     DWORD *_pdwStubPhase);
  1900. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_get_AudioInputStream_Proxy( 
  1901.     ISpeechRecognizer * This,
  1902.     /* [retval][out] */ ISpeechBaseStream **AudioInputStream);
  1903. void __RPC_STUB ISpeechRecognizer_get_AudioInputStream_Stub(
  1904.     IRpcStubBuffer *This,
  1905.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1906.     PRPC_MESSAGE _pRpcMessage,
  1907.     DWORD *_pdwStubPhase);
  1908. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_get_IsShared_Proxy( 
  1909.     ISpeechRecognizer * This,
  1910.     /* [retval][out] */ VARIANT_BOOL *Shared);
  1911. void __RPC_STUB ISpeechRecognizer_get_IsShared_Stub(
  1912.     IRpcStubBuffer *This,
  1913.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1914.     PRPC_MESSAGE _pRpcMessage,
  1915.     DWORD *_pdwStubPhase);
  1916. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_put_State_Proxy( 
  1917.     ISpeechRecognizer * This,
  1918.     /* [in] */ SpeechRecognizerState State);
  1919. void __RPC_STUB ISpeechRecognizer_put_State_Stub(
  1920.     IRpcStubBuffer *This,
  1921.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1922.     PRPC_MESSAGE _pRpcMessage,
  1923.     DWORD *_pdwStubPhase);
  1924. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_get_State_Proxy( 
  1925.     ISpeechRecognizer * This,
  1926.     /* [retval][out] */ SpeechRecognizerState *State);
  1927. void __RPC_STUB ISpeechRecognizer_get_State_Stub(
  1928.     IRpcStubBuffer *This,
  1929.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1930.     PRPC_MESSAGE _pRpcMessage,
  1931.     DWORD *_pdwStubPhase);
  1932. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_get_Status_Proxy( 
  1933.     ISpeechRecognizer * This,
  1934.     /* [retval][out] */ ISpeechRecognizerStatus **Status);
  1935. void __RPC_STUB ISpeechRecognizer_get_Status_Stub(
  1936.     IRpcStubBuffer *This,
  1937.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1938.     PRPC_MESSAGE _pRpcMessage,
  1939.     DWORD *_pdwStubPhase);
  1940. /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_putref_Profile_Proxy( 
  1941.     ISpeechRecognizer * This,
  1942.     /* [defaultvalue][in] */ ISpeechObjectToken *Profile);
  1943. void __RPC_STUB ISpeechRecognizer_putref_Profile_Stub(
  1944.     IRpcStubBuffer *This,
  1945.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1946.     PRPC_MESSAGE _pRpcMessage,
  1947.     DWORD *_pdwStubPhase);
  1948. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_get_Profile_Proxy( 
  1949.     ISpeechRecognizer * This,
  1950.     /* [retval][out] */ ISpeechObjectToken **Profile);
  1951. void __RPC_STUB ISpeechRecognizer_get_Profile_Stub(
  1952.     IRpcStubBuffer *This,
  1953.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1954.     PRPC_MESSAGE _pRpcMessage,
  1955.     DWORD *_pdwStubPhase);
  1956. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_EmulateRecognition_Proxy( 
  1957.     ISpeechRecognizer * This,
  1958.     /* [in] */ VARIANT TextElements,
  1959.     /* [defaultvalue][in] */ VARIANT *ElementDisplayAttributes,
  1960.     /* [defaultvalue][in] */ long LanguageId);
  1961. void __RPC_STUB ISpeechRecognizer_EmulateRecognition_Stub(
  1962.     IRpcStubBuffer *This,
  1963.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1964.     PRPC_MESSAGE _pRpcMessage,
  1965.     DWORD *_pdwStubPhase);
  1966. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_CreateRecoContext_Proxy( 
  1967.     ISpeechRecognizer * This,
  1968.     /* [retval][out] */ ISpeechRecoContext **NewContext);
  1969. void __RPC_STUB ISpeechRecognizer_CreateRecoContext_Stub(
  1970.     IRpcStubBuffer *This,
  1971.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1972.     PRPC_MESSAGE _pRpcMessage,
  1973.     DWORD *_pdwStubPhase);
  1974. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_GetFormat_Proxy( 
  1975.     ISpeechRecognizer * This,
  1976.     /* [in] */ SpeechFormatType Type,
  1977.     /* [retval][out] */ ISpeechAudioFormat **Format);
  1978. void __RPC_STUB ISpeechRecognizer_GetFormat_Stub(
  1979.     IRpcStubBuffer *This,
  1980.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1981.     PRPC_MESSAGE _pRpcMessage,
  1982.     DWORD *_pdwStubPhase);
  1983. /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_SetPropertyNumber_Proxy( 
  1984.     ISpeechRecognizer * This,
  1985.     /* [in] */ const BSTR Name,
  1986.     /* [in] */ long Value,
  1987.     /* [retval][out] */ VARIANT_BOOL *Supported);
  1988. void __RPC_STUB ISpeechRecognizer_SetPropertyNumber_Stub(
  1989.     IRpcStubBuffer *This,
  1990.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1991.     PRPC_MESSAGE _pRpcMessage,
  1992.     DWORD *_pdwStubPhase);
  1993. /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_GetPropertyNumber_Proxy( 
  1994.     ISpeechRecognizer * This,
  1995.     /* [in] */ const BSTR Name,
  1996.     /* [out][in] */ long *Value,
  1997.     /* [retval][out] */ VARIANT_BOOL *Supported);
  1998. void __RPC_STUB ISpeechRecognizer_GetPropertyNumber_Stub(
  1999.     IRpcStubBuffer *This,
  2000.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2001.     PRPC_MESSAGE _pRpcMessage,
  2002.     DWORD *_pdwStubPhase);
  2003. /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_SetPropertyString_Proxy( 
  2004.     ISpeechRecognizer * This,
  2005.     /* [in] */ const BSTR Name,
  2006.     /* [in] */ const BSTR Value,
  2007.     /* [retval][out] */ VARIANT_BOOL *Supported);
  2008. void __RPC_STUB ISpeechRecognizer_SetPropertyString_Stub(
  2009.     IRpcStubBuffer *This,
  2010.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2011.     PRPC_MESSAGE _pRpcMessage,
  2012.     DWORD *_pdwStubPhase);
  2013. /* [id][hidden][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_GetPropertyString_Proxy( 
  2014.     ISpeechRecognizer * This,
  2015.     /* [in] */ const BSTR Name,
  2016.     /* [out][in] */ BSTR *Value,
  2017.     /* [retval][out] */ VARIANT_BOOL *Supported);
  2018. void __RPC_STUB ISpeechRecognizer_GetPropertyString_Stub(
  2019.     IRpcStubBuffer *This,
  2020.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2021.     PRPC_MESSAGE _pRpcMessage,
  2022.     DWORD *_pdwStubPhase);
  2023. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_IsUISupported_Proxy( 
  2024.     ISpeechRecognizer * This,
  2025.     /* [in] */ const BSTR TypeOfUI,
  2026.     /* [defaultvalue][in] */ const VARIANT *ExtraData,
  2027.     /* [retval][out] */ VARIANT_BOOL *Supported);
  2028. void __RPC_STUB ISpeechRecognizer_IsUISupported_Stub(
  2029.     IRpcStubBuffer *This,
  2030.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2031.     PRPC_MESSAGE _pRpcMessage,
  2032.     DWORD *_pdwStubPhase);
  2033. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_DisplayUI_Proxy( 
  2034.     ISpeechRecognizer * This,
  2035.     /* [in] */ long hWndParent,
  2036.     /* [in] */ BSTR Title,
  2037.     /* [in] */ const BSTR TypeOfUI,
  2038.     /* [defaultvalue][in] */ const VARIANT *ExtraData);
  2039. void __RPC_STUB ISpeechRecognizer_DisplayUI_Stub(
  2040.     IRpcStubBuffer *This,
  2041.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2042.     PRPC_MESSAGE _pRpcMessage,
  2043.     DWORD *_pdwStubPhase);
  2044. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_GetRecognizers_Proxy( 
  2045.     ISpeechRecognizer * This,
  2046.     /* [defaultvalue][in] */ BSTR RequiredAttributes,
  2047.     /* [defaultvalue][in] */ BSTR OptionalAttributes,
  2048.     /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  2049. void __RPC_STUB ISpeechRecognizer_GetRecognizers_Stub(
  2050.     IRpcStubBuffer *This,
  2051.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2052.     PRPC_MESSAGE _pRpcMessage,
  2053.     DWORD *_pdwStubPhase);
  2054. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_GetAudioInputs_Proxy( 
  2055.     ISpeechRecognizer * This,
  2056.     /* [defaultvalue][in] */ BSTR RequiredAttributes,
  2057.     /* [defaultvalue][in] */ BSTR OptionalAttributes,
  2058.     /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  2059. void __RPC_STUB ISpeechRecognizer_GetAudioInputs_Stub(
  2060.     IRpcStubBuffer *This,
  2061.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2062.     PRPC_MESSAGE _pRpcMessage,
  2063.     DWORD *_pdwStubPhase);
  2064. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizer_GetProfiles_Proxy( 
  2065.     ISpeechRecognizer * This,
  2066.     /* [defaultvalue][in] */ BSTR RequiredAttributes,
  2067.     /* [defaultvalue][in] */ BSTR OptionalAttributes,
  2068.     /* [retval][out] */ ISpeechObjectTokens **ObjectTokens);
  2069. void __RPC_STUB ISpeechRecognizer_GetProfiles_Stub(
  2070.     IRpcStubBuffer *This,
  2071.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2072.     PRPC_MESSAGE _pRpcMessage,
  2073.     DWORD *_pdwStubPhase);
  2074. #endif  /* __ISpeechRecognizer_INTERFACE_DEFINED__ */
  2075. #ifndef __ISpeechRecognizerStatus_INTERFACE_DEFINED__
  2076. #define __ISpeechRecognizerStatus_INTERFACE_DEFINED__
  2077. /* interface ISpeechRecognizerStatus */
  2078. /* [unique][helpstring][dual][uuid][object] */ 
  2079. EXTERN_C const IID IID_ISpeechRecognizerStatus;
  2080. #if defined(__cplusplus) && !defined(CINTERFACE)
  2081.     
  2082.     MIDL_INTERFACE("BFF9E781-53EC-484e-BB8A-0E1B5551E35C")
  2083.     ISpeechRecognizerStatus : public IDispatch
  2084.     {
  2085.     public:
  2086.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_AudioStatus( 
  2087.             /* [retval][out] */ ISpeechAudioStatus **AudioStatus) = 0;
  2088.         
  2089.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentStreamPosition( 
  2090.             /* [retval][out] */ VARIANT *pCurrentStreamPos) = 0;
  2091.         
  2092.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentStreamNumber( 
  2093.             /* [retval][out] */ long *StreamNumber) = 0;
  2094.         
  2095.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfActiveRules( 
  2096.             /* [retval][out] */ long *NumberOfActiveRules) = 0;
  2097.         
  2098.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_ClsidEngine( 
  2099.             /* [retval][out] */ BSTR *ClsidEngine) = 0;
  2100.         
  2101.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_SupportedLanguages( 
  2102.             /* [retval][out] */ VARIANT *SupportedLanguages) = 0;
  2103.         
  2104.     };
  2105.     
  2106. #else  /* C style interface */
  2107.     typedef struct ISpeechRecognizerStatusVtbl
  2108.     {
  2109.         BEGIN_INTERFACE
  2110.         
  2111.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2112.             ISpeechRecognizerStatus * This,
  2113.             /* [in] */ REFIID riid,
  2114.             /* [iid_is][out] */ void **ppvObject);
  2115.         
  2116.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2117.             ISpeechRecognizerStatus * This);
  2118.         
  2119.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2120.             ISpeechRecognizerStatus * This);
  2121.         
  2122.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2123.             ISpeechRecognizerStatus * This,
  2124.             /* [out] */ UINT *pctinfo);
  2125.         
  2126.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2127.             ISpeechRecognizerStatus * This,
  2128.             /* [in] */ UINT iTInfo,
  2129.             /* [in] */ LCID lcid,
  2130.             /* [out] */ ITypeInfo **ppTInfo);
  2131.         
  2132.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2133.             ISpeechRecognizerStatus * This,
  2134.             /* [in] */ REFIID riid,
  2135.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2136.             /* [in] */ UINT cNames,
  2137.             /* [in] */ LCID lcid,
  2138.             /* [size_is][out] */ DISPID *rgDispId);
  2139.         
  2140.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2141.             ISpeechRecognizerStatus * This,
  2142.             /* [in] */ DISPID dispIdMember,
  2143.             /* [in] */ REFIID riid,
  2144.             /* [in] */ LCID lcid,
  2145.             /* [in] */ WORD wFlags,
  2146.             /* [out][in] */ DISPPARAMS *pDispParams,
  2147.             /* [out] */ VARIANT *pVarResult,
  2148.             /* [out] */ EXCEPINFO *pExcepInfo,
  2149.             /* [out] */ UINT *puArgErr);
  2150.         
  2151.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioStatus )( 
  2152.             ISpeechRecognizerStatus * This,
  2153.             /* [retval][out] */ ISpeechAudioStatus **AudioStatus);
  2154.         
  2155.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentStreamPosition )( 
  2156.             ISpeechRecognizerStatus * This,
  2157.             /* [retval][out] */ VARIANT *pCurrentStreamPos);
  2158.         
  2159.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentStreamNumber )( 
  2160.             ISpeechRecognizerStatus * This,
  2161.             /* [retval][out] */ long *StreamNumber);
  2162.         
  2163.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfActiveRules )( 
  2164.             ISpeechRecognizerStatus * This,
  2165.             /* [retval][out] */ long *NumberOfActiveRules);
  2166.         
  2167.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClsidEngine )( 
  2168.             ISpeechRecognizerStatus * This,
  2169.             /* [retval][out] */ BSTR *ClsidEngine);
  2170.         
  2171.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedLanguages )( 
  2172.             ISpeechRecognizerStatus * This,
  2173.             /* [retval][out] */ VARIANT *SupportedLanguages);
  2174.         
  2175.         END_INTERFACE
  2176.     } ISpeechRecognizerStatusVtbl;
  2177.     interface ISpeechRecognizerStatus
  2178.     {
  2179.         CONST_VTBL struct ISpeechRecognizerStatusVtbl *lpVtbl;
  2180.     };
  2181.     
  2182. #ifdef COBJMACROS
  2183. #define ISpeechRecognizerStatus_QueryInterface(This,riid,ppvObject)
  2184.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2185. #define ISpeechRecognizerStatus_AddRef(This)
  2186.     (This)->lpVtbl -> AddRef(This)
  2187. #define ISpeechRecognizerStatus_Release(This)
  2188.     (This)->lpVtbl -> Release(This)
  2189. #define ISpeechRecognizerStatus_GetTypeInfoCount(This,pctinfo)
  2190.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2191. #define ISpeechRecognizerStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2192.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2193. #define ISpeechRecognizerStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2194.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2195. #define ISpeechRecognizerStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2196.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2197. #define ISpeechRecognizerStatus_get_AudioStatus(This,AudioStatus)
  2198.     (This)->lpVtbl -> get_AudioStatus(This,AudioStatus)
  2199. #define ISpeechRecognizerStatus_get_CurrentStreamPosition(This,pCurrentStreamPos)
  2200.     (This)->lpVtbl -> get_CurrentStreamPosition(This,pCurrentStreamPos)
  2201. #define ISpeechRecognizerStatus_get_CurrentStreamNumber(This,StreamNumber)
  2202.     (This)->lpVtbl -> get_CurrentStreamNumber(This,StreamNumber)
  2203. #define ISpeechRecognizerStatus_get_NumberOfActiveRules(This,NumberOfActiveRules)
  2204.     (This)->lpVtbl -> get_NumberOfActiveRules(This,NumberOfActiveRules)
  2205. #define ISpeechRecognizerStatus_get_ClsidEngine(This,ClsidEngine)
  2206.     (This)->lpVtbl -> get_ClsidEngine(This,ClsidEngine)
  2207. #define ISpeechRecognizerStatus_get_SupportedLanguages(This,SupportedLanguages)
  2208.     (This)->lpVtbl -> get_SupportedLanguages(This,SupportedLanguages)
  2209. #endif /* COBJMACROS */
  2210. #endif  /* C style interface */
  2211. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizerStatus_get_AudioStatus_Proxy( 
  2212.     ISpeechRecognizerStatus * This,
  2213.     /* [retval][out] */ ISpeechAudioStatus **AudioStatus);
  2214. void __RPC_STUB ISpeechRecognizerStatus_get_AudioStatus_Stub(
  2215.     IRpcStubBuffer *This,
  2216.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2217.     PRPC_MESSAGE _pRpcMessage,
  2218.     DWORD *_pdwStubPhase);
  2219. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizerStatus_get_CurrentStreamPosition_Proxy( 
  2220.     ISpeechRecognizerStatus * This,
  2221.     /* [retval][out] */ VARIANT *pCurrentStreamPos);
  2222. void __RPC_STUB ISpeechRecognizerStatus_get_CurrentStreamPosition_Stub(
  2223.     IRpcStubBuffer *This,
  2224.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2225.     PRPC_MESSAGE _pRpcMessage,
  2226.     DWORD *_pdwStubPhase);
  2227. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizerStatus_get_CurrentStreamNumber_Proxy( 
  2228.     ISpeechRecognizerStatus * This,
  2229.     /* [retval][out] */ long *StreamNumber);
  2230. void __RPC_STUB ISpeechRecognizerStatus_get_CurrentStreamNumber_Stub(
  2231.     IRpcStubBuffer *This,
  2232.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2233.     PRPC_MESSAGE _pRpcMessage,
  2234.     DWORD *_pdwStubPhase);
  2235. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizerStatus_get_NumberOfActiveRules_Proxy( 
  2236.     ISpeechRecognizerStatus * This,
  2237.     /* [retval][out] */ long *NumberOfActiveRules);
  2238. void __RPC_STUB ISpeechRecognizerStatus_get_NumberOfActiveRules_Stub(
  2239.     IRpcStubBuffer *This,
  2240.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2241.     PRPC_MESSAGE _pRpcMessage,
  2242.     DWORD *_pdwStubPhase);
  2243. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizerStatus_get_ClsidEngine_Proxy( 
  2244.     ISpeechRecognizerStatus * This,
  2245.     /* [retval][out] */ BSTR *ClsidEngine);
  2246. void __RPC_STUB ISpeechRecognizerStatus_get_ClsidEngine_Stub(
  2247.     IRpcStubBuffer *This,
  2248.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2249.     PRPC_MESSAGE _pRpcMessage,
  2250.     DWORD *_pdwStubPhase);
  2251. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecognizerStatus_get_SupportedLanguages_Proxy( 
  2252.     ISpeechRecognizerStatus * This,
  2253.     /* [retval][out] */ VARIANT *SupportedLanguages);
  2254. void __RPC_STUB ISpeechRecognizerStatus_get_SupportedLanguages_Stub(
  2255.     IRpcStubBuffer *This,
  2256.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2257.     PRPC_MESSAGE _pRpcMessage,
  2258.     DWORD *_pdwStubPhase);
  2259. #endif  /* __ISpeechRecognizerStatus_INTERFACE_DEFINED__ */
  2260. #ifndef __ISpeechRecoContext_INTERFACE_DEFINED__
  2261. #define __ISpeechRecoContext_INTERFACE_DEFINED__
  2262. /* interface ISpeechRecoContext */
  2263. /* [unique][helpstring][dual][uuid][object] */ 
  2264. EXTERN_C const IID IID_ISpeechRecoContext;
  2265. #if defined(__cplusplus) && !defined(CINTERFACE)
  2266.     
  2267.     MIDL_INTERFACE("580AA49D-7E1E-4809-B8E2-57DA806104B8")
  2268.     ISpeechRecoContext : public IDispatch
  2269.     {
  2270.     public:
  2271.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Recognizer( 
  2272.             /* [retval][out] */ ISpeechRecognizer **Recognizer) = 0;
  2273.         
  2274.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_AudioInputInterferenceStatus( 
  2275.             /* [retval][out] */ SpeechInterference *Interference) = 0;
  2276.         
  2277.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_RequestedUIType( 
  2278.             /* [retval][out] */ BSTR *UIType) = 0;
  2279.         
  2280.         virtual /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE putref_Voice( 
  2281.             /* [in] */ ISpeechVoice *Voice) = 0;
  2282.         
  2283.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Voice( 
  2284.             /* [retval][out] */ ISpeechVoice **Voice) = 0;
  2285.         
  2286.         virtual /* [id][helpstring][hidden][propput] */ HRESULT STDMETHODCALLTYPE put_AllowVoiceFormatMatchingOnNextSet( 
  2287.             /* [in] */ VARIANT_BOOL Allow) = 0;
  2288.         
  2289.         virtual /* [id][helpstring][hidden][propget] */ HRESULT STDMETHODCALLTYPE get_AllowVoiceFormatMatchingOnNextSet( 
  2290.             /* [retval][out] */ VARIANT_BOOL *pAllow) = 0;
  2291.         
  2292.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_VoicePurgeEvent( 
  2293.             /* [in] */ SpeechRecoEvents EventInterest) = 0;
  2294.         
  2295.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_VoicePurgeEvent( 
  2296.             /* [retval][out] */ SpeechRecoEvents *EventInterest) = 0;
  2297.         
  2298.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_EventInterests( 
  2299.             /* [in] */ SpeechRecoEvents EventInterest) = 0;
  2300.         
  2301.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_EventInterests( 
  2302.             /* [retval][out] */ SpeechRecoEvents *EventInterest) = 0;
  2303.         
  2304.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_CmdMaxAlternates( 
  2305.             /* [in] */ long MaxAlternates) = 0;
  2306.         
  2307.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_CmdMaxAlternates( 
  2308.             /* [retval][out] */ long *MaxAlternates) = 0;
  2309.         
  2310.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_State( 
  2311.             /* [in] */ SpeechRecoContextState State) = 0;
  2312.         
  2313.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_State( 
  2314.             /* [retval][out] */ SpeechRecoContextState *State) = 0;
  2315.         
  2316.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_RetainedAudio( 
  2317.             /* [in] */ SpeechRetainedAudioOptions Option) = 0;
  2318.         
  2319.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_RetainedAudio( 
  2320.             /* [retval][out] */ SpeechRetainedAudioOptions *Option) = 0;
  2321.         
  2322.         virtual /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE putref_RetainedAudioFormat( 
  2323.             /* [in] */ ISpeechAudioFormat *Format) = 0;
  2324.         
  2325.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_RetainedAudioFormat( 
  2326.             /* [retval][out] */ ISpeechAudioFormat **Format) = 0;
  2327.         
  2328.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE Pause( void) = 0;
  2329.         
  2330.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE Resume( void) = 0;
  2331.         
  2332.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CreateGrammar( 
  2333.             /* [defaultvalue][in] */ VARIANT GrammarId,
  2334.             /* [retval][out] */ ISpeechRecoGrammar **Grammar) = 0;
  2335.         
  2336.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CreateResultFromMemory( 
  2337.             /* [in] */ VARIANT *ResultBlock,
  2338.             /* [retval][out] */ ISpeechRecoResult **Result) = 0;
  2339.         
  2340.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE Bookmark( 
  2341.             /* [in] */ SpeechBookmarkOptions Options,
  2342.             /* [in] */ VARIANT StreamPos,
  2343.             /* [in] */ VARIANT BookmarkId) = 0;
  2344.         
  2345.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE SetAdaptationData( 
  2346.             /* [in] */ BSTR AdaptationString) = 0;
  2347.         
  2348.     };
  2349.     
  2350. #else  /* C style interface */
  2351.     typedef struct ISpeechRecoContextVtbl
  2352.     {
  2353.         BEGIN_INTERFACE
  2354.         
  2355.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2356.             ISpeechRecoContext * This,
  2357.             /* [in] */ REFIID riid,
  2358.             /* [iid_is][out] */ void **ppvObject);
  2359.         
  2360.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2361.             ISpeechRecoContext * This);
  2362.         
  2363.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2364.             ISpeechRecoContext * This);
  2365.         
  2366.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2367.             ISpeechRecoContext * This,
  2368.             /* [out] */ UINT *pctinfo);
  2369.         
  2370.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2371.             ISpeechRecoContext * This,
  2372.             /* [in] */ UINT iTInfo,
  2373.             /* [in] */ LCID lcid,
  2374.             /* [out] */ ITypeInfo **ppTInfo);
  2375.         
  2376.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2377.             ISpeechRecoContext * This,
  2378.             /* [in] */ REFIID riid,
  2379.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2380.             /* [in] */ UINT cNames,
  2381.             /* [in] */ LCID lcid,
  2382.             /* [size_is][out] */ DISPID *rgDispId);
  2383.         
  2384.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2385.             ISpeechRecoContext * This,
  2386.             /* [in] */ DISPID dispIdMember,
  2387.             /* [in] */ REFIID riid,
  2388.             /* [in] */ LCID lcid,
  2389.             /* [in] */ WORD wFlags,
  2390.             /* [out][in] */ DISPPARAMS *pDispParams,
  2391.             /* [out] */ VARIANT *pVarResult,
  2392.             /* [out] */ EXCEPINFO *pExcepInfo,
  2393.             /* [out] */ UINT *puArgErr);
  2394.         
  2395.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Recognizer )( 
  2396.             ISpeechRecoContext * This,
  2397.             /* [retval][out] */ ISpeechRecognizer **Recognizer);
  2398.         
  2399.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioInputInterferenceStatus )( 
  2400.             ISpeechRecoContext * This,
  2401.             /* [retval][out] */ SpeechInterference *Interference);
  2402.         
  2403.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestedUIType )( 
  2404.             ISpeechRecoContext * This,
  2405.             /* [retval][out] */ BSTR *UIType);
  2406.         
  2407.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_Voice )( 
  2408.             ISpeechRecoContext * This,
  2409.             /* [in] */ ISpeechVoice *Voice);
  2410.         
  2411.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Voice )( 
  2412.             ISpeechRecoContext * This,
  2413.             /* [retval][out] */ ISpeechVoice **Voice);
  2414.         
  2415.         /* [id][helpstring][hidden][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AllowVoiceFormatMatchingOnNextSet )( 
  2416.             ISpeechRecoContext * This,
  2417.             /* [in] */ VARIANT_BOOL Allow);
  2418.         
  2419.         /* [id][helpstring][hidden][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AllowVoiceFormatMatchingOnNextSet )( 
  2420.             ISpeechRecoContext * This,
  2421.             /* [retval][out] */ VARIANT_BOOL *pAllow);
  2422.         
  2423.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VoicePurgeEvent )( 
  2424.             ISpeechRecoContext * This,
  2425.             /* [in] */ SpeechRecoEvents EventInterest);
  2426.         
  2427.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VoicePurgeEvent )( 
  2428.             ISpeechRecoContext * This,
  2429.             /* [retval][out] */ SpeechRecoEvents *EventInterest);
  2430.         
  2431.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_EventInterests )( 
  2432.             ISpeechRecoContext * This,
  2433.             /* [in] */ SpeechRecoEvents EventInterest);
  2434.         
  2435.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventInterests )( 
  2436.             ISpeechRecoContext * This,
  2437.             /* [retval][out] */ SpeechRecoEvents *EventInterest);
  2438.         
  2439.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CmdMaxAlternates )( 
  2440.             ISpeechRecoContext * This,
  2441.             /* [in] */ long MaxAlternates);
  2442.         
  2443.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CmdMaxAlternates )( 
  2444.             ISpeechRecoContext * This,
  2445.             /* [retval][out] */ long *MaxAlternates);
  2446.         
  2447.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_State )( 
  2448.             ISpeechRecoContext * This,
  2449.             /* [in] */ SpeechRecoContextState State);
  2450.         
  2451.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
  2452.             ISpeechRecoContext * This,
  2453.             /* [retval][out] */ SpeechRecoContextState *State);
  2454.         
  2455.         /* [id][helpstring][propput] */ HRESULT ( STDMETHODCALLTYPE *put_RetainedAudio )( 
  2456.             ISpeechRecoContext * This,
  2457.             /* [in] */ SpeechRetainedAudioOptions Option);
  2458.         
  2459.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RetainedAudio )( 
  2460.             ISpeechRecoContext * This,
  2461.             /* [retval][out] */ SpeechRetainedAudioOptions *Option);
  2462.         
  2463.         /* [id][helpstring][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_RetainedAudioFormat )( 
  2464.             ISpeechRecoContext * This,
  2465.             /* [in] */ ISpeechAudioFormat *Format);
  2466.         
  2467.         /* [id][helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_RetainedAudioFormat )( 
  2468.             ISpeechRecoContext * This,
  2469.             /* [retval][out] */ ISpeechAudioFormat **Format);
  2470.         
  2471.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Pause )( 
  2472.             ISpeechRecoContext * This);
  2473.         
  2474.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Resume )( 
  2475.             ISpeechRecoContext * This);
  2476.         
  2477.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateGrammar )( 
  2478.             ISpeechRecoContext * This,
  2479.             /* [defaultvalue][in] */ VARIANT GrammarId,
  2480.             /* [retval][out] */ ISpeechRecoGrammar **Grammar);
  2481.         
  2482.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateResultFromMemory )( 
  2483.             ISpeechRecoContext * This,
  2484.             /* [in] */ VARIANT *ResultBlock,
  2485.             /* [retval][out] */ ISpeechRecoResult **Result);
  2486.         
  2487.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *Bookmark )( 
  2488.             ISpeechRecoContext * This,
  2489.             /* [in] */ SpeechBookmarkOptions Options,
  2490.             /* [in] */ VARIANT StreamPos,
  2491.             /* [in] */ VARIANT BookmarkId);
  2492.         
  2493.         /* [id][helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetAdaptationData )( 
  2494.             ISpeechRecoContext * This,
  2495.             /* [in] */ BSTR AdaptationString);
  2496.         
  2497.         END_INTERFACE
  2498.     } ISpeechRecoContextVtbl;
  2499.     interface ISpeechRecoContext
  2500.     {
  2501.         CONST_VTBL struct ISpeechRecoContextVtbl *lpVtbl;
  2502.     };
  2503.     
  2504. #ifdef COBJMACROS
  2505. #define ISpeechRecoContext_QueryInterface(This,riid,ppvObject)
  2506.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2507. #define ISpeechRecoContext_AddRef(This)
  2508.     (This)->lpVtbl -> AddRef(This)
  2509. #define ISpeechRecoContext_Release(This)
  2510.     (This)->lpVtbl -> Release(This)
  2511. #define ISpeechRecoContext_GetTypeInfoCount(This,pctinfo)
  2512.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2513. #define ISpeechRecoContext_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2514.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2515. #define ISpeechRecoContext_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2516.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2517. #define ISpeechRecoContext_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2518.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2519. #define ISpeechRecoContext_get_Recognizer(This,Recognizer)
  2520.     (This)->lpVtbl -> get_Recognizer(This,Recognizer)
  2521. #define ISpeechRecoContext_get_AudioInputInterferenceStatus(This,Interference)
  2522.     (This)->lpVtbl -> get_AudioInputInterferenceStatus(This,Interference)
  2523. #define ISpeechRecoContext_get_RequestedUIType(This,UIType)
  2524.     (This)->lpVtbl -> get_RequestedUIType(This,UIType)
  2525. #define ISpeechRecoContext_putref_Voice(This,Voice)
  2526.     (This)->lpVtbl -> putref_Voice(This,Voice)
  2527. #define ISpeechRecoContext_get_Voice(This,Voice)
  2528.     (This)->lpVtbl -> get_Voice(This,Voice)
  2529. #define ISpeechRecoContext_put_AllowVoiceFormatMatchingOnNextSet(This,Allow)
  2530.     (This)->lpVtbl -> put_AllowVoiceFormatMatchingOnNextSet(This,Allow)
  2531. #define ISpeechRecoContext_get_AllowVoiceFormatMatchingOnNextSet(This,pAllow)
  2532.     (This)->lpVtbl -> get_AllowVoiceFormatMatchingOnNextSet(This,pAllow)
  2533. #define ISpeechRecoContext_put_VoicePurgeEvent(This,EventInterest)
  2534.     (This)->lpVtbl -> put_VoicePurgeEvent(This,EventInterest)
  2535. #define ISpeechRecoContext_get_VoicePurgeEvent(This,EventInterest)
  2536.     (This)->lpVtbl -> get_VoicePurgeEvent(This,EventInterest)
  2537. #define ISpeechRecoContext_put_EventInterests(This,EventInterest)
  2538.     (This)->lpVtbl -> put_EventInterests(This,EventInterest)
  2539. #define ISpeechRecoContext_get_EventInterests(This,EventInterest)
  2540.     (This)->lpVtbl -> get_EventInterests(This,EventInterest)
  2541. #define ISpeechRecoContext_put_CmdMaxAlternates(This,MaxAlternates)
  2542.     (This)->lpVtbl -> put_CmdMaxAlternates(This,MaxAlternates)
  2543. #define ISpeechRecoContext_get_CmdMaxAlternates(This,MaxAlternates)
  2544.     (This)->lpVtbl -> get_CmdMaxAlternates(This,MaxAlternates)
  2545. #define ISpeechRecoContext_put_State(This,State)
  2546.     (This)->lpVtbl -> put_State(This,State)
  2547. #define ISpeechRecoContext_get_State(This,State)
  2548.     (This)->lpVtbl -> get_State(This,State)
  2549. #define ISpeechRecoContext_put_RetainedAudio(This,Option)
  2550.     (This)->lpVtbl -> put_RetainedAudio(This,Option)
  2551. #define ISpeechRecoContext_get_RetainedAudio(This,Option)
  2552.     (This)->lpVtbl -> get_RetainedAudio(This,Option)
  2553. #define ISpeechRecoContext_putref_RetainedAudioFormat(This,Format)
  2554.     (This)->lpVtbl -> putref_RetainedAudioFormat(This,Format)
  2555. #define ISpeechRecoContext_get_RetainedAudioFormat(This,Format)
  2556.     (This)->lpVtbl -> get_RetainedAudioFormat(This,Format)
  2557. #define ISpeechRecoContext_Pause(This)
  2558.     (This)->lpVtbl -> Pause(This)
  2559. #define ISpeechRecoContext_Resume(This)
  2560.     (This)->lpVtbl -> Resume(This)
  2561. #define ISpeechRecoContext_CreateGrammar(This,GrammarId,Grammar)
  2562.     (This)->lpVtbl -> CreateGrammar(This,GrammarId,Grammar)
  2563. #define ISpeechRecoContext_CreateResultFromMemory(This,ResultBlock,Result)
  2564.     (This)->lpVtbl -> CreateResultFromMemory(This,ResultBlock,Result)
  2565. #define ISpeechRecoContext_Bookmark(This,Options,StreamPos,BookmarkId)
  2566.     (This)->lpVtbl -> Bookmark(This,Options,StreamPos,BookmarkId)
  2567. #define ISpeechRecoContext_SetAdaptationData(This,AdaptationString)
  2568.     (This)->lpVtbl -> SetAdaptationData(This,AdaptationString)
  2569. #endif /* COBJMACROS */
  2570. #endif  /* C style interface */
  2571. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_Recognizer_Proxy( 
  2572.     ISpeechRecoContext * This,
  2573.     /* [retval][out] */ ISpeechRecognizer **Recognizer);
  2574. void __RPC_STUB ISpeechRecoContext_get_Recognizer_Stub(
  2575.     IRpcStubBuffer *This,
  2576.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2577.     PRPC_MESSAGE _pRpcMessage,
  2578.     DWORD *_pdwStubPhase);
  2579. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_AudioInputInterferenceStatus_Proxy( 
  2580.     ISpeechRecoContext * This,
  2581.     /* [retval][out] */ SpeechInterference *Interference);
  2582. void __RPC_STUB ISpeechRecoContext_get_AudioInputInterferenceStatus_Stub(
  2583.     IRpcStubBuffer *This,
  2584.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2585.     PRPC_MESSAGE _pRpcMessage,
  2586.     DWORD *_pdwStubPhase);
  2587. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_RequestedUIType_Proxy( 
  2588.     ISpeechRecoContext * This,
  2589.     /* [retval][out] */ BSTR *UIType);
  2590. void __RPC_STUB ISpeechRecoContext_get_RequestedUIType_Stub(
  2591.     IRpcStubBuffer *This,
  2592.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2593.     PRPC_MESSAGE _pRpcMessage,
  2594.     DWORD *_pdwStubPhase);
  2595. /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_putref_Voice_Proxy( 
  2596.     ISpeechRecoContext * This,
  2597.     /* [in] */ ISpeechVoice *Voice);
  2598. void __RPC_STUB ISpeechRecoContext_putref_Voice_Stub(
  2599.     IRpcStubBuffer *This,
  2600.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2601.     PRPC_MESSAGE _pRpcMessage,
  2602.     DWORD *_pdwStubPhase);
  2603. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_Voice_Proxy( 
  2604.     ISpeechRecoContext * This,
  2605.     /* [retval][out] */ ISpeechVoice **Voice);
  2606. void __RPC_STUB ISpeechRecoContext_get_Voice_Stub(
  2607.     IRpcStubBuffer *This,
  2608.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2609.     PRPC_MESSAGE _pRpcMessage,
  2610.     DWORD *_pdwStubPhase);
  2611. /* [id][helpstring][hidden][propput] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_put_AllowVoiceFormatMatchingOnNextSet_Proxy( 
  2612.     ISpeechRecoContext * This,
  2613.     /* [in] */ VARIANT_BOOL Allow);
  2614. void __RPC_STUB ISpeechRecoContext_put_AllowVoiceFormatMatchingOnNextSet_Stub(
  2615.     IRpcStubBuffer *This,
  2616.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2617.     PRPC_MESSAGE _pRpcMessage,
  2618.     DWORD *_pdwStubPhase);
  2619. /* [id][helpstring][hidden][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_AllowVoiceFormatMatchingOnNextSet_Proxy( 
  2620.     ISpeechRecoContext * This,
  2621.     /* [retval][out] */ VARIANT_BOOL *pAllow);
  2622. void __RPC_STUB ISpeechRecoContext_get_AllowVoiceFormatMatchingOnNextSet_Stub(
  2623.     IRpcStubBuffer *This,
  2624.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2625.     PRPC_MESSAGE _pRpcMessage,
  2626.     DWORD *_pdwStubPhase);
  2627. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_put_VoicePurgeEvent_Proxy( 
  2628.     ISpeechRecoContext * This,
  2629.     /* [in] */ SpeechRecoEvents EventInterest);
  2630. void __RPC_STUB ISpeechRecoContext_put_VoicePurgeEvent_Stub(
  2631.     IRpcStubBuffer *This,
  2632.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2633.     PRPC_MESSAGE _pRpcMessage,
  2634.     DWORD *_pdwStubPhase);
  2635. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_VoicePurgeEvent_Proxy( 
  2636.     ISpeechRecoContext * This,
  2637.     /* [retval][out] */ SpeechRecoEvents *EventInterest);
  2638. void __RPC_STUB ISpeechRecoContext_get_VoicePurgeEvent_Stub(
  2639.     IRpcStubBuffer *This,
  2640.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2641.     PRPC_MESSAGE _pRpcMessage,
  2642.     DWORD *_pdwStubPhase);
  2643. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_put_EventInterests_Proxy( 
  2644.     ISpeechRecoContext * This,
  2645.     /* [in] */ SpeechRecoEvents EventInterest);
  2646. void __RPC_STUB ISpeechRecoContext_put_EventInterests_Stub(
  2647.     IRpcStubBuffer *This,
  2648.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2649.     PRPC_MESSAGE _pRpcMessage,
  2650.     DWORD *_pdwStubPhase);
  2651. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_EventInterests_Proxy( 
  2652.     ISpeechRecoContext * This,
  2653.     /* [retval][out] */ SpeechRecoEvents *EventInterest);
  2654. void __RPC_STUB ISpeechRecoContext_get_EventInterests_Stub(
  2655.     IRpcStubBuffer *This,
  2656.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2657.     PRPC_MESSAGE _pRpcMessage,
  2658.     DWORD *_pdwStubPhase);
  2659. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_put_CmdMaxAlternates_Proxy( 
  2660.     ISpeechRecoContext * This,
  2661.     /* [in] */ long MaxAlternates);
  2662. void __RPC_STUB ISpeechRecoContext_put_CmdMaxAlternates_Stub(
  2663.     IRpcStubBuffer *This,
  2664.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2665.     PRPC_MESSAGE _pRpcMessage,
  2666.     DWORD *_pdwStubPhase);
  2667. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_CmdMaxAlternates_Proxy( 
  2668.     ISpeechRecoContext * This,
  2669.     /* [retval][out] */ long *MaxAlternates);
  2670. void __RPC_STUB ISpeechRecoContext_get_CmdMaxAlternates_Stub(
  2671.     IRpcStubBuffer *This,
  2672.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2673.     PRPC_MESSAGE _pRpcMessage,
  2674.     DWORD *_pdwStubPhase);
  2675. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_put_State_Proxy( 
  2676.     ISpeechRecoContext * This,
  2677.     /* [in] */ SpeechRecoContextState State);
  2678. void __RPC_STUB ISpeechRecoContext_put_State_Stub(
  2679.     IRpcStubBuffer *This,
  2680.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2681.     PRPC_MESSAGE _pRpcMessage,
  2682.     DWORD *_pdwStubPhase);
  2683. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_State_Proxy( 
  2684.     ISpeechRecoContext * This,
  2685.     /* [retval][out] */ SpeechRecoContextState *State);
  2686. void __RPC_STUB ISpeechRecoContext_get_State_Stub(
  2687.     IRpcStubBuffer *This,
  2688.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2689.     PRPC_MESSAGE _pRpcMessage,
  2690.     DWORD *_pdwStubPhase);
  2691. /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_put_RetainedAudio_Proxy( 
  2692.     ISpeechRecoContext * This,
  2693.     /* [in] */ SpeechRetainedAudioOptions Option);
  2694. void __RPC_STUB ISpeechRecoContext_put_RetainedAudio_Stub(
  2695.     IRpcStubBuffer *This,
  2696.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2697.     PRPC_MESSAGE _pRpcMessage,
  2698.     DWORD *_pdwStubPhase);
  2699. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_RetainedAudio_Proxy( 
  2700.     ISpeechRecoContext * This,
  2701.     /* [retval][out] */ SpeechRetainedAudioOptions *Option);
  2702. void __RPC_STUB ISpeechRecoContext_get_RetainedAudio_Stub(
  2703.     IRpcStubBuffer *This,
  2704.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2705.     PRPC_MESSAGE _pRpcMessage,
  2706.     DWORD *_pdwStubPhase);
  2707. /* [id][helpstring][propputref] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_putref_RetainedAudioFormat_Proxy( 
  2708.     ISpeechRecoContext * This,
  2709.     /* [in] */ ISpeechAudioFormat *Format);
  2710. void __RPC_STUB ISpeechRecoContext_putref_RetainedAudioFormat_Stub(
  2711.     IRpcStubBuffer *This,
  2712.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2713.     PRPC_MESSAGE _pRpcMessage,
  2714.     DWORD *_pdwStubPhase);
  2715. /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_get_RetainedAudioFormat_Proxy( 
  2716.     ISpeechRecoContext * This,
  2717.     /* [retval][out] */ ISpeechAudioFormat **Format);
  2718. void __RPC_STUB ISpeechRecoContext_get_RetainedAudioFormat_Stub(
  2719.     IRpcStubBuffer *This,
  2720.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2721.     PRPC_MESSAGE _pRpcMessage,
  2722.     DWORD *_pdwStubPhase);
  2723. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_Pause_Proxy( 
  2724.     ISpeechRecoContext * This);
  2725. void __RPC_STUB ISpeechRecoContext_Pause_Stub(
  2726.     IRpcStubBuffer *This,
  2727.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2728.     PRPC_MESSAGE _pRpcMessage,
  2729.     DWORD *_pdwStubPhase);
  2730. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_Resume_Proxy( 
  2731.     ISpeechRecoContext * This);
  2732. void __RPC_STUB ISpeechRecoContext_Resume_Stub(
  2733.     IRpcStubBuffer *This,
  2734.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2735.     PRPC_MESSAGE _pRpcMessage,
  2736.     DWORD *_pdwStubPhase);
  2737. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_CreateGrammar_Proxy( 
  2738.     ISpeechRecoContext * This,
  2739.     /* [defaultvalue][in] */ VARIANT GrammarId,
  2740.     /* [retval][out] */ ISpeechRecoGrammar **Grammar);
  2741. void __RPC_STUB ISpeechRecoContext_CreateGrammar_Stub(
  2742.     IRpcStubBuffer *This,
  2743.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2744.     PRPC_MESSAGE _pRpcMessage,
  2745.     DWORD *_pdwStubPhase);
  2746. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_CreateResultFromMemory_Proxy( 
  2747.     ISpeechRecoContext * This,
  2748.     /* [in] */ VARIANT *ResultBlock,
  2749.     /* [retval][out] */ ISpeechRecoResult **Result);
  2750. void __RPC_STUB ISpeechRecoContext_CreateResultFromMemory_Stub(
  2751.     IRpcStubBuffer *This,
  2752.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2753.     PRPC_MESSAGE _pRpcMessage,
  2754.     DWORD *_pdwStubPhase);
  2755. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_Bookmark_Proxy( 
  2756.     ISpeechRecoContext * This,
  2757.     /* [in] */ SpeechBookmarkOptions Options,
  2758.     /* [in] */ VARIANT StreamPos,
  2759.     /* [in] */ VARIANT BookmarkId);
  2760. void __RPC_STUB ISpeechRecoContext_Bookmark_Stub(
  2761.     IRpcStubBuffer *This,
  2762.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2763.     PRPC_MESSAGE _pRpcMessage,
  2764.     DWORD *_pdwStubPhase);
  2765. /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE ISpeechRecoContext_SetAdaptationData_Proxy( 
  2766.     ISpeechRecoContext * This,
  2767.     /* [in] */ BSTR AdaptationString);
  2768. void __RPC_STUB ISpeechRecoContext_SetAdaptationData_Stub(
  2769.     IRpcStubBuffer *This,
  2770.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2771.     PRPC_MESSAGE _pRpcMessage,
  2772.     DWORD *_pdwStubPhase);
  2773. #endif  /* __ISpeechRecoContext_INTERFACE_DEFINED__ */
  2774. #ifndef __ISpeechRecoGrammar_INTERFACE_DEFINED__
  2775. #define __ISpeechRecoGrammar_INTERFACE_DEFINED__
  2776. /* interface ISpeechRecoGrammar */
  2777. /* [unique][helpstring][dual][uuid][object] */ 
  2778. EXTERN_C const IID IID_ISpeechRecoGrammar;
  2779. #if defined(__cplusplus) && !defined(CINTERFACE)
  2780.     
  2781.     MIDL_INTERFACE("B6D6F79F-2158-4e50-B5BC-9A9CCD852A09")
  2782.     ISpeechRecoGrammar : public IDispatch
  2783.     {
  2784.     public:
  2785.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
  2786.             /* [retval][out] */ VARIANT *Id) = 0;
  2787.         
  2788.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_RecoContext( 
  2789.             /* [retval][out] */ ISpeechRecoContext **RecoContext) = 0;
  2790.         
  2791.         virtual /* [id][helpstring][propput] */ HRESULT STDMETHODCALLTYPE put_State( 
  2792.             /* [in] */ SpeechGrammarState State) = 0;
  2793.         
  2794.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_State( 
  2795.             /* [retval][out] */ SpeechGrammarState *State) = 0;
  2796.         
  2797.         virtual /* [id][helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Rules( 
  2798.             /* [retval][out] */ ISpeechGrammarRules **Rules) = 0;
  2799.         
  2800.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE Reset( 
  2801.             /* [defaultvalue][in] */ SpeechLanguageId NewLanguage = 0) = 0;
  2802.         
  2803.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CmdLoadFromFile( 
  2804.             /* [in] */ const BSTR FileName,
  2805.             /* [defaultvalue][in] */ SpeechLoadOption LoadOption = SLOStatic) = 0;
  2806.         
  2807.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CmdLoadFromObject( 
  2808.             /* [in] */ const BSTR ClassId,
  2809.             /* [in] */ const BSTR GrammarName,
  2810.             /* [defaultvalue][in] */ SpeechLoadOption LoadOption = SLOStatic) = 0;
  2811.         
  2812.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CmdLoadFromResource( 
  2813.             /* [in] */ long hModule,
  2814.             /* [in] */ VARIANT ResourceName,
  2815.             /* [in] */ VARIANT ResourceType,
  2816.             /* [in] */ SpeechLanguageId LanguageId,
  2817.             /* [defaultvalue][in] */ SpeechLoadOption LoadOption = SLOStatic) = 0;
  2818.         
  2819.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CmdLoadFromMemory( 
  2820.             /* [in] */ VARIANT GrammarData,
  2821.             /* [defaultvalue][in] */ SpeechLoadOption LoadOption = SLOStatic) = 0;
  2822.         
  2823.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CmdLoadFromProprietaryGrammar( 
  2824.             /* [in] */ const BSTR ProprietaryGuid,
  2825.             /* [in] */ const BSTR ProprietaryString,
  2826.             /* [in] */ VARIANT ProprietaryData,
  2827.             /* [defaultvalue][in] */ SpeechLoadOption LoadOption = SLOStatic) = 0;
  2828.         
  2829.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CmdSetRuleState( 
  2830.             /* [in] */ const BSTR Name,
  2831.             /* [in] */ SpeechRuleState State) = 0;
  2832.         
  2833.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE CmdSetRuleIdState( 
  2834.             /* [in] */ long RuleId,
  2835.             /* [in] */ SpeechRuleState State) = 0;
  2836.         
  2837.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE DictationLoad( 
  2838.             /* [defaultvalue][in] */ const BSTR TopicName = L"",
  2839.             /* [defaultvalue][in] */ SpeechLoadOption LoadOption = SLOStatic) = 0;
  2840.         
  2841.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE DictationUnload( void) = 0;
  2842.         
  2843.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE DictationSetState( 
  2844.             /* [in] */ SpeechRuleState State) = 0;
  2845.         
  2846.         virtual /* [id][helpstring] */ HRESULT STDMETHODCALLTYPE SetWordSequenceData( 
  2847.             /* [in] */ const BSTR Text,
  2848.             /* [in] */ long TextLength,