1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms.
6 //! SAPI 5.4 definitions
7 use shared::guiddef::GUID;
8 use shared::minwindef::{BYTE, ULONG, WORD};
9 use um::unknwnbase::{IUnknown, IUnknownVtbl};
10 use um::winnt::{HRESULT, LPWSTR, ULONGLONG};
11 pub use um::sapi53::{
12     SPDATAKEYLOCATION,
13     SPDKL_DefaultLocation,
14     SPDKL_CurrentUser,
15     SPDKL_LocalMachine,
16     SPDKL_CurrentConfig,
17     SPDUI_EngineProperties,
18     SPDUI_AddRemoveWord,
19     SPDUI_UserTraining,
20     SPDUI_MicTraining,
21     SPDUI_RecoProfileProperties,
22     SPDUI_AudioProperties,
23     SPDUI_AudioVolume,
24     SPDUI_UserEnrollment,
25     SPDUI_ShareData,
26     SPDUI_Tutorial,
27     SPSTREAMFORMAT,
28     SPSF_Default,
29     SPSF_NoAssignedFormat,
30     SPSF_Text,
31     SPSF_NonStandardFormat,
32     SPSF_ExtendedAudioFormat,
33     SPSF_8kHz8BitMono,
34     SPSF_8kHz8BitStereo,
35     SPSF_8kHz16BitMono,
36     SPSF_8kHz16BitStereo,
37     SPSF_11kHz8BitMono,
38     SPSF_11kHz8BitStereo,
39     SPSF_11kHz16BitMono,
40     SPSF_11kHz16BitStereo,
41     SPSF_12kHz8BitMono,
42     SPSF_12kHz8BitStereo,
43     SPSF_12kHz16BitMono,
44     SPSF_12kHz16BitStereo,
45     SPSF_16kHz8BitMono,
46     SPSF_16kHz8BitStereo,
47     SPSF_16kHz16BitMono,
48     SPSF_16kHz16BitStereo,
49     SPSF_22kHz8BitMono,
50     SPSF_22kHz8BitStereo,
51     SPSF_22kHz16BitMono,
52     SPSF_22kHz16BitStereo,
53     SPSF_24kHz8BitMono,
54     SPSF_24kHz8BitStereo,
55     SPSF_24kHz16BitMono,
56     SPSF_24kHz16BitStereo,
57     SPSF_32kHz8BitMono,
58     SPSF_32kHz8BitStereo,
59     SPSF_32kHz16BitMono,
60     SPSF_32kHz16BitStereo,
61     SPSF_44kHz8BitMono,
62     SPSF_44kHz8BitStereo,
63     SPSF_44kHz16BitMono,
64     SPSF_44kHz16BitStereo,
65     SPSF_48kHz8BitMono,
66     SPSF_48kHz8BitStereo,
67     SPSF_48kHz16BitMono,
68     SPSF_48kHz16BitStereo,
69     SPSF_TrueSpeech_8kHz1BitMono,
70     SPSF_CCITT_ALaw_8kHzMono,
71     SPSF_CCITT_ALaw_8kHzStereo,
72     SPSF_CCITT_ALaw_11kHzMono,
73     SPSF_CCITT_ALaw_11kHzStereo,
74     SPSF_CCITT_ALaw_22kHzMono,
75     SPSF_CCITT_ALaw_22kHzStereo,
76     SPSF_CCITT_ALaw_44kHzMono,
77     SPSF_CCITT_ALaw_44kHzStereo,
78     SPSF_CCITT_uLaw_8kHzMono,
79     SPSF_CCITT_uLaw_8kHzStereo,
80     SPSF_CCITT_uLaw_11kHzMono,
81     SPSF_CCITT_uLaw_11kHzStereo,
82     SPSF_CCITT_uLaw_22kHzMono,
83     SPSF_CCITT_uLaw_22kHzStereo,
84     SPSF_CCITT_uLaw_44kHzMono,
85     SPSF_CCITT_uLaw_44kHzStereo,
86     SPSF_ADPCM_8kHzMono,
87     SPSF_ADPCM_8kHzStereo,
88     SPSF_ADPCM_11kHzMono,
89     SPSF_ADPCM_11kHzStereo,
90     SPSF_ADPCM_22kHzMono,
91     SPSF_ADPCM_22kHzStereo,
92     SPSF_ADPCM_44kHzMono,
93     SPSF_ADPCM_44kHzStereo,
94     SPSF_GSM610_8kHzMono,
95     SPSF_GSM610_11kHzMono,
96     SPSF_GSM610_22kHzMono,
97     SPSF_GSM610_44kHzMono,
98     SPSF_NUM_FORMATS,
99     SPDFID_Text,
100     SPDFID_WaveFormatEx,
101     SPREG_USER_ROOT,
102     SPREG_LOCAL_MACHINE_ROOT,
103     SPCAT_AUDIOOUT,
104     SPCAT_AUDIOIN,
105     SPCAT_VOICES,
106     SPCAT_RECOGNIZERS,
107     SPCAT_APPLEXICONS,
108     SPCAT_PHONECONVERTERS,
109     SPCAT_TEXTNORMALIZERS,
110     SPCAT_RECOPROFILES,
111     SPMMSYS_AUDIO_IN_TOKEN_ID,
112     SPMMSYS_AUDIO_OUT_TOKEN_ID,
113     SPCURRENT_USER_LEXICON_TOKEN_ID,
114     SPTOKENVALUE_CLSID,
115     SPTOKENKEY_FILES,
116     SPTOKENKEY_UI,
117     SPTOKENKEY_ATTRIBUTES,
118     SPTOKENKEY_RETAINEDAUDIO,
119     SPTOKENKEY_AUDIO_LATENCY_WARNING,
120     SPTOKENKEY_AUDIO_LATENCY_TRUNCATE,
121     SPTOKENKEY_AUDIO_LATENCY_UPDATE_INTERVAL,
122     SPVOICECATEGORY_TTSRATE,
123     SPPROP_RESOURCE_USAGE,
124     SPPROP_HIGH_CONFIDENCE_THRESHOLD,
125     SPPROP_NORMAL_CONFIDENCE_THRESHOLD,
126     SPPROP_LOW_CONFIDENCE_THRESHOLD,
127     SPPROP_RESPONSE_SPEED,
128     SPPROP_COMPLEX_RESPONSE_SPEED,
129     SPPROP_ADAPTATION_ON,
130     SPPROP_PERSISTED_BACKGROUND_ADAPTATION,
131     SPPROP_PERSISTED_LANGUAGE_MODEL_ADAPTATION,
132     SPPROP_UX_IS_LISTENING,
133     SPTOPIC_SPELLING,
134     SPWILDCARD,
135     SPDICTATION,
136     SPREG_SAFE_USER_TOKENS,
137     SPINFDICTATION,
138     SP_LOW_CONFIDENCE,
139     SP_NORMAL_CONFIDENCE,
140     SP_HIGH_CONFIDENCE,
141     DEFAULT_WEIGHT,
142     SP_MAX_WORD_LENGTH,
143     SP_MAX_PRON_LENGTH,
144     SP_EMULATE_RESULT,
145     ISpNotifyCallback,
146     SPNOTIFYCALLBACK,
147     ISpNotifySource, ISpNotifySourceVtbl,
148     ISpNotifySink, ISpNotifySinkVtbl,
149     ISpNotifyTranslator, ISpNotifyTranslatorVtbl,
150     ISpDataKey, ISpDataKeyVtbl,
151     ISpRegDataKey, ISpRegDataKeyVtbl,
152     ISpObjectTokenCategory, ISpObjectTokenCategoryVtbl,
153     ISpObjectToken, ISpObjectTokenVtbl,
154     ISpObjectTokenInit, ISpObjectTokenInitVtbl,
155     IEnumSpObjectTokens, IEnumSpObjectTokensVtbl,
156     ISpObjectWithToken, ISpObjectWithTokenVtbl,
157     ISpResourceManager, ISpResourceManagerVtbl,
158     SPEVENTLPARAMTYPE,
159     SPET_LPARAM_IS_UNDEFINED,
160     SPET_LPARAM_IS_TOKEN,
161     SPET_LPARAM_IS_OBJECT,
162     SPET_LPARAM_IS_POINTER,
163     SPET_LPARAM_IS_STRING,
164     SPEVENTENUM,
165     SPEI_UNDEFINED,
166     SPEI_START_INPUT_STREAM,
167     SPEI_END_INPUT_STREAM,
168     SPEI_VOICE_CHANGE,
169     SPEI_TTS_BOOKMARK,
170     SPEI_WORD_BOUNDARY,
171     SPEI_PHONEME,
172     SPEI_SENTENCE_BOUNDARY,
173     SPEI_VISEME,
174     SPEI_TTS_AUDIO_LEVEL,
175     SPEI_TTS_PRIVATE,
176     SPEI_MIN_TTS,
177     SPEI_MAX_TTS,
178     SPEI_END_SR_STREAM,
179     SPEI_SOUND_START,
180     SPEI_SOUND_END,
181     SPEI_PHRASE_START,
182     SPEI_RECOGNITION,
183     SPEI_HYPOTHESIS,
184     SPEI_SR_BOOKMARK,
185     SPEI_PROPERTY_NUM_CHANGE,
186     SPEI_PROPERTY_STRING_CHANGE,
187     SPEI_FALSE_RECOGNITION,
188     SPEI_INTERFERENCE,
189     SPEI_REQUEST_UI,
190     SPEI_RECO_STATE_CHANGE,
191     SPEI_ADAPTATION,
192     SPEI_START_SR_STREAM,
193     SPEI_RECO_OTHER_CONTEXT,
194     SPEI_SR_AUDIO_LEVEL,
195     SPEI_SR_RETAINEDAUDIO,
196     SPEI_SR_PRIVATE,
197 };
198 pub const ACTIVE_CATEGORY_CHANGED: SPEVENTENUM = 53;
199 pub use um::sapi53::{
200     SPEI_RESERVED5,
201     SPEI_RESERVED6,
202     SPEI_MIN_SR,
203     SPEI_MAX_SR,
204     SPEI_RESERVED1,
205     SPEI_RESERVED2,
206     SPEI_RESERVED3,
207     SPFEI_FLAGCHECK,
208     SPFEI_ALL_TTS_EVENTS,
209     SPFEI_ALL_SR_EVENTS,
210     SPFEI_ALL_EVENTS,
211     SPFEI,
212     SPEVENT,
213     SPSERIALIZEDEVENT,
214     SPSERIALIZEDEVENT64,
215     SPEVENTEX,
216     SPINTERFERENCE,
217     SPINTERFERENCE_NONE,
218     SPINTERFERENCE_NOISE,
219     SPINTERFERENCE_NOSIGNAL,
220     SPINTERFERENCE_TOOLOUD,
221     SPINTERFERENCE_TOOQUIET,
222     SPINTERFERENCE_TOOFAST,
223     SPINTERFERENCE_TOOSLOW,
224     SPINTERFERENCE_LATENCY_WARNING,
225     SPINTERFERENCE_LATENCY_TRUNCATE_BEGIN,
226     SPINTERFERENCE_LATENCY_TRUNCATE_END,
227     SPENDSRSTREAMFLAGS,
228     SPESF_NONE,
229     SPESF_STREAM_RELEASED,
230     SPESF_EMULATED,
231     SPVFEATURE,
232     SPVFEATURE_STRESSED,
233     SPVFEATURE_EMPHASIS,
234     SPVISEMES,
235     SP_VISEME_0,
236     SP_VISEME_1,
237     SP_VISEME_2,
238     SP_VISEME_3,
239     SP_VISEME_4,
240     SP_VISEME_5,
241     SP_VISEME_6,
242     SP_VISEME_7,
243     SP_VISEME_8,
244     SP_VISEME_9,
245     SP_VISEME_10,
246     SP_VISEME_11,
247     SP_VISEME_12,
248     SP_VISEME_13,
249     SP_VISEME_14,
250     SP_VISEME_15,
251     SP_VISEME_16,
252     SP_VISEME_17,
253     SP_VISEME_18,
254     SP_VISEME_19,
255     SP_VISEME_20,
256     SP_VISEME_21,
257     SPEVENTSOURCEINFO,
258     ISpEventSource, ISpEventSourceVtbl,
259     ISpEventSource2, ISpEventSource2Vtbl,
260     ISpEventSink, ISpEventSinkVtbl,
261     ISpStreamFormat, ISpStreamFormatVtbl,
262     SPFILEMODE,
263     SPFM_OPEN_READONLY,
264     SPFM_OPEN_READWRITE,
265     SPFM_CREATE,
266     SPFM_CREATE_ALWAYS,
267     SPFM_NUM_MODES,
268     ISpStream, ISpStreamVtbl,
269     ISpStreamFormatConverter, ISpStreamFormatConverterVtbl,
270     SPAUDIOSTATE,
271     SPAS_CLOSED,
272     SPAS_STOP,
273     SPAS_PAUSE,
274     SPAS_RUN,
275     SPAUDIOSTATUS,
276     SPAUDIOBUFFERINFO,
277     ISpAudio, ISpAudioVtbl,
278     ISpMMSysAudio, ISpMMSysAudioVtbl,
279     ISpTranscript, ISpTranscriptVtbl,
280     SPDISPLAYATTRIBUTES,
281     SPAF_ONE_TRAILING_SPACE,
282     SPAF_TWO_TRAILING_SPACES,
283     SPAF_CONSUME_LEADING_SPACES,
284     SPAF_BUFFER_POSITION,
285     SPAF_ALL,
286     SPAF_USER_SPECIFIED,
287     SPPHONEID,
288     PSPPHONEID,
289     PCSPPHONEID,
290     SPPHRASEELEMENT,
291     SPPHRASERULE,
292     SPPHRASEPROPERTYUNIONTYPE,
293     SPPPUT_UNUSED,
294     SPPPUT_ARRAY_INDEX,
295     SPPHRASEPROPERTY,
296     SPPHRASEREPLACEMENT,
297     SPSEMANTICERRORINFO,
298     SPSEMANTICFORMAT,
299     SPPHRASE_50,
300 // SPPHRASESIZE_500,
301 };
302 pub use um::sapi53::SPPHRASE as SPPHRASE_53;
303 STRUCT!{struct SPPHRASE {
304     cbSize: ULONG,
305     LangID: WORD,
306     wHomophoneGroupId: WORD,
307     ullGrammarID: ULONGLONG,
308     ftStartTime: ULONGLONG,
309     ullAudioStreamPosition: ULONGLONG,
310     ulAudioSizeBytes: ULONG,
311     ulRetainedSizeBytes: ULONG,
312     ulAudioSizeTime: ULONG,
313     Rule: SPPHRASERULE,
314     pProperties: *const SPPHRASEPROPERTY,
315     pElements: *const SPPHRASEELEMENT,
316     cReplacements: ULONG,
317     pReplacements: *const SPPHRASEREPLACEMENT,
318     SREngineID: GUID,
319     ulSREnginePrivateDataSize: ULONG,
320     pSREnginePrivateData: *const BYTE,
321     pSML: LPWSTR,
322     pSemanticErrorInfo: *mut SPSEMANTICERRORINFO,
323     SemanticTagFormat: SPSEMANTICFORMAT,
324 }}
325 pub use um::sapi53::{
326     SPSERIALIZEDPHRASE,
327     SPRULE,
328     SPVALUETYPE,
329     SPDF_PROPERTY,
330     SPDF_REPLACEMENT,
331     SPDF_RULE,
332     SPDF_DISPLAYTEXT,
333     SPDF_LEXICALFORM ,
334     SPDF_PRONUNCIATION,
335     SPDF_AUDIO,
336     SPDF_ALTERNATES,
337     SPDF_ALL,
338     SPBINARYGRAMMAR,
339     SPPHRASERNG,
340     SPPR_ALL_ELEMENTS,
341     SP_GETWHOLEPHRASE,
342     SPRR_ALL_ELEMENTS,
343     SPSTATEHANDLE,
344     SPRECOEVENTFLAGS,
345     SPREF_AutoPause,
346     SPREF_Emulated,
347     SPREF_SMLTimeout,
348     SPREF_ExtendableParse,
349     SPREF_ReSent,
350     SPREF_Hypothesis,
351     SPREF_FalseRecognition,
352     SPPARTOFSPEECH,
353     SPPS_NotOverriden,
354     SPPS_Unknown,
355     SPPS_Noun,
356     SPPS_Verb,
357     SPPS_Modifier,
358     SPPS_Function,
359     SPPS_Interjection,
360     SPPS_Noncontent,
361     SPPS_LMA,
362     SPPS_SuppressWord,
363     SPLEXICONTYPE,
364     eLEXTYPE_USER,
365     eLEXTYPE_APP,
366     eLEXTYPE_VENDORLEXICON,
367     eLEXTYPE_LETTERTOSOUND,
368     eLEXTYPE_MORPHOLOGY,
369     eLEXTYPE_RESERVED4,
370     eLEXTYPE_USER_SHORTCUT,
371     eLEXTYPE_RESERVED6,
372     eLEXTYPE_RESERVED7,
373     eLEXTYPE_RESERVED8,
374     eLEXTYPE_RESERVED9,
375     eLEXTYPE_RESERVED10,
376     eLEXTYPE_PRIVATE1,
377     eLEXTYPE_PRIVATE2,
378     eLEXTYPE_PRIVATE3,
379     eLEXTYPE_PRIVATE4,
380     eLEXTYPE_PRIVATE5,
381     eLEXTYPE_PRIVATE6,
382     eLEXTYPE_PRIVATE7,
383     eLEXTYPE_PRIVATE8,
384     eLEXTYPE_PRIVATE9,
385     eLEXTYPE_PRIVATE10,
386     eLEXTYPE_PRIVATE11,
387     eLEXTYPE_PRIVATE12,
388     eLEXTYPE_PRIVATE13,
389     eLEXTYPE_PRIVATE14,
390     eLEXTYPE_PRIVATE15,
391     eLEXTYPE_PRIVATE16,
392     eLEXTYPE_PRIVATE17,
393     eLEXTYPE_PRIVATE18,
394     eLEXTYPE_PRIVATE19,
395     eLEXTYPE_PRIVATE20,
396     SPWORDTYPE,
397     eWORDTYPE_ADDED,
398     eWORDTYPE_DELETED,
399     SPPRONUNCIATIONFLAGS,
400     ePRONFLAG_USED,
401     SPWORDPRONUNCIATION,
402     SPWORDPRONUNCIATIONLIST,
403     SPWORD,
404     SPWORDLIST,
405     ISpLexicon, ISpLexiconVtbl,
406     ISpContainerLexicon, ISpContainerLexiconVtbl,
407     SPSHORTCUTTYPE,
408     SPSHT_NotOverriden,
409     SPSHT_Unknown,
410     SPSHT_EMAIL,
411     SPSHT_OTHER,
412     SPPS_RESERVED1,
413     SPPS_RESERVED2,
414     SPPS_RESERVED3,
415     SPPS_RESERVED4,
416     SPSHORTCUTPAIR,
417     SPSHORTCUTPAIRLIST,
418     ISpShortcut, ISpShortcutVtbl,
419     ISpPhoneConverter, ISpPhoneConverterVtbl,
420     ISpPhoneticAlphabetConverter, ISpPhoneticAlphabetConverterVtbl,
421     ISpPhoneticAlphabetSelection, ISpPhoneticAlphabetSelectionVtbl,
422     SPVPITCH,
423     SPVACTIONS,
424     SPVA_Speak,
425     SPVA_Silence,
426     SPVA_Pronounce,
427     SPVA_Bookmark,
428     SPVA_SpellOut,
429     SPVA_Section,
430     SPVA_ParseUnknownTag,
431     SPVCONTEXT,
432     SPVSTATE,
433     SPRUNSTATE,
434     SPRS_DONE,
435     SPRS_IS_SPEAKING,
436     SPVLIMITS,
437     SPMIN_VOLUME,
438     SPMAX_VOLUME,
439     SPMIN_RATE,
440     SPMAX_RATE,
441     SPVPRIORITY,
442     SPVPRI_NORMAL,
443     SPVPRI_ALERT,
444     SPVPRI_OVER,
445     SPVOICESTATUS,
446     SPEAKFLAGS,
447     SPF_DEFAULT,
448     SPF_ASYNC,
449     SPF_PURGEBEFORESPEAK,
450     SPF_IS_FILENAME,
451     SPF_IS_XML,
452     SPF_IS_NOT_XML,
453     SPF_PERSIST_XML,
454     SPF_NLP_SPEAK_PUNC,
455     SPF_PARSE_SAPI,
456     SPF_PARSE_SSML,
457     SPF_PARSE_AUTODETECT,
458     SPF_NLP_MASK,
459     SPF_PARSE_MASK,
460     SPF_VOICE_MASK,
461     SPF_UNUSED_FLAGS,
462     ISpVoice, ISpVoiceVtbl,
463     ISpPhrase, ISpPhraseVtbl,
464     ISpPhraseAlt, ISpPhraseAltVtbl,
465     SPXMLRESULTOPTIONS,
466     SPXRO_SML,
467     SPXRO_Alternates_SML,
468     ISpPhrase2, ISpPhrase2Vtbl,
469     SPRECORESULTTIMES,
470     SPSERIALIZEDRESULT,
471     ISpRecoResult, ISpRecoResultVtbl,
472     SPCOMMITFLAGS,
473     SPCF_NONE,
474     SPCF_ADD_TO_USER_LEXICON,
475     SPCF_DEFINITE_CORRECTION,
476     ISpRecoResult2, ISpRecoResult2Vtbl,
477     ISpXMLRecoResult, ISpXMLRecoResultVtbl,
478     SPTEXTSELECTIONINFO,
479     SPWORDPRONOUNCEABLE,
480     SPWP_UNKNOWN_WORD_UNPRONOUNCEABLE,
481     SPWP_UNKNOWN_WORD_PRONOUNCEABLE,
482     SPWP_KNOWN_WORD_PRONOUNCEABLE,
483     SPGRAMMARSTATE,
484     SPGS_DISABLED,
485     SPGS_ENABLED,
486     SPGS_EXCLUSIVE,
487     SPCONTEXTSTATE,
488     SPCS_DISABLED,
489     SPCS_ENABLED,
490     SPRULESTATE,
491     SPRS_INACTIVE,
492     SPRS_ACTIVE,
493     SPRS_ACTIVE_WITH_AUTO_PAUSE,
494     SPWT_LEXICAL_NO_SPECIAL_CHARS,
495     SPPROPERTYINFO,
496     SPCFGRULEATTRIBUTES,
497     SPRAF_TopLevel,
498     SPRAF_Active,
499     SPRAF_Export,
500     SPRAF_Import,
501     SPRAF_Interpreter,
502     SPRAF_Dynamic,
503     SPRAF_Root,
504     SPRAF_AutoPause,
505     SPRAF_UserDelimited,
506     ISpGrammarBuilder, ISpGrammarBuilderVtbl,
507     SPLOADOPTIONS,
508     SPLO_STATIC,
509     SPLO_DYNAMIC,
510     ISpRecoGrammar, ISpRecoGrammarVtbl,
511     SPMATCHINGMODE,
512     AllWords,
513     Subsequence,
514     OrderedSubset,
515     SubsequenceContentRequired,
516     OrderedSubsetContentRequired,
517     PHONETICALPHABET,
518     PA_Ipa,
519     PA_Ups,
520     PA_Sapi,
521     ISpGrammarBuilder2, ISpGrammarBuilder2Vtbl,
522     SPRP_NORMAL,
523     ISpRecoGrammar2, ISpRecoGrammar2Vtbl,
524     ISpeechResourceLoader, ISpeechResourceLoaderVtbl,
525     SPRECOCONTEXTSTATUS,
526     SPBOOKMARKOPTIONS,
527     SPBO_NONE,
528     SPBO_PAUSE,
529     SPBO_AHEAD,
530     SPBO_TIME_UNITS,
531     SPAUDIOOPTIONS,
532     SPAO_NONE,
533     SPAO_RETAIN_AUDIO,
534     ISpRecoContext, ISpRecoContextVtbl,
535     SPGRAMMAROPTIONS,
536     SPGO_SAPI,
537     SPGO_SRGS,
538     SPGO_UPS,
539     SPGO_SRGS_MS_SCRIPT,
540     SPGO_SRGS_W3C_SCRIPT,
541     SPGO_SRGS_STG_SCRIPT,
542     SPGO_SRGS_SCRIPT,
543     SPGO_FILE,
544     SPGO_HTTP,
545     SPGO_RES,
546     SPGO_OBJECT,
547     SPGO_DEFAULT,
548     SPGO_ALL,
549     SPADAPTATIONSETTINGS,
550     SPADS_Default,
551     SPADS_CurrentRecognizer,
552     SPADS_RecoProfile,
553     SPADS_Immediate,
554     SPADS_Reset,
555     SPADS_HighVolumeDataSource,
556     SPADAPTATIONRELEVANCE,
557     SPAR_Unknown,
558     SPAR_Low,
559     SPAR_Medium,
560     SPAR_High,
561     ISpRecoContext2, ISpRecoContext2Vtbl,
562     ISpProperties, ISpPropertiesVtbl,
563     SP_MAX_LANGIDS,
564     SPRECOGNIZERSTATUS,
565     SPWAVEFORMATTYPE,
566     SPWF_INPUT,
567     SPWF_SRENGINE,
568     SPSTREAMFORMATTYPE,
569     SPRECOSTATE,
570     SPRST_INACTIVE,
571     SPRST_ACTIVE,
572     SPRST_ACTIVE_ALWAYS,
573     SPRST_INACTIVE_WITH_PURGE,
574     SPRST_NUM_STATES,
575     ISpRecognizer, ISpRecognizerVtbl,
576     ISpSerializeState, ISpSerializeStateVtbl,
577     ISpRecognizer2, ISpRecognizer2Vtbl,
578 };
579 ENUM!{enum SPCATEGORYTYPE {
580     SPCT_COMMAND,
581     SPCT_DICTATION,
582     SPCT_SLEEP,
583     SPCT_SUB_COMMAND,
584     SPCT_SUB_DICTATION,
585 }}
586 RIDL!{#[uuid(0xda0cd0f9, 0x14a2, 0x4f09, 0x8c, 0x2a, 0x85, 0xcc, 0x48, 0x97, 0x93, 0x45)]
587 interface ISpRecoCategory(ISpRecoCategoryVtbl): IUnknown(IUnknownVtbl) {
588     fn GetType(
589         peCategoryType: *mut SPCATEGORYTYPE,
590     ) -> HRESULT,
591 }}
592 RIDL!{#[uuid(0xdf1b943c, 0x5838, 0x4aa2, 0x87, 0x06, 0xd7, 0xcd, 0x5b, 0x33, 0x34, 0x99)]
593 interface ISpRecognizer3(ISpRecognizer3Vtbl): IUnknown(IUnknownVtbl) {
594     fn GetCategory(
595         categoryType: SPCATEGORYTYPE,
596         ppCategory: *mut *mut ISpRecoCategory,
597     ) -> HRESULT,
598     fn SetActiveCategory(
599         pCategory: *mut ISpRecoCategory,
600     ) -> HRESULT,
601     fn GetActiveCategory(
602         ppCategory: *mut *mut ISpRecoCategory,
603     ) -> HRESULT,
604 }}
605 pub use um::sapi53::{
606     SPNORMALIZATIONLIST,
607     ISpEnginePronunciation, ISpEnginePronunciationVtbl,
608     SPDISPLAYTOKEN,
609     SPDISPLAYPHRASE,
610     ISpDisplayAlternates, ISpDisplayAlternatesVtbl,
611     SpeechLanguageId,
612     DISPID_SpeechDataKey,
613     DISPID_SDKSetBinaryValue,
614     DISPID_SDKGetBinaryValue,
615     DISPID_SDKSetStringValue,
616     DISPID_SDKGetStringValue,
617     DISPID_SDKSetLongValue,
618     DISPID_SDKGetlongValue,
619     DISPID_SDKOpenKey,
620     DISPID_SDKCreateKey,
621     DISPID_SDKDeleteKey,
622     DISPID_SDKDeleteValue,
623     DISPID_SDKEnumKeys,
624     DISPID_SDKEnumValues,
625     DISPID_SpeechObjectToken,
626     DISPID_SOTId,
627     DISPID_SOTDataKey,
628     DISPID_SOTCategory,
629     DISPID_SOTGetDescription,
630     DISPID_SOTSetId,
631     DISPID_SOTGetAttribute,
632     DISPID_SOTCreateInstance,
633     DISPID_SOTRemove,
634     DISPID_SOTGetStorageFileName,
635     DISPID_SOTRemoveStorageFileName,
636     DISPID_SOTIsUISupported,
637     DISPID_SOTDisplayUI,
638     DISPID_SOTMatchesAttributes,
639     SpeechDataKeyLocation,
640     SDKLDefaultLocation,
641     SDKLCurrentUser,
642     SDKLLocalMachine,
643     SDKLCurrentConfig,
644     SpeechTokenContext,
645     STCInprocServer,
646     STCInprocHandler ,
647     STCLocalServer,
648     STCRemoteServer,
649     STCAll,
650     SpeechTokenShellFolder,
651     STSF_AppData,
652     STSF_LocalAppData,
653     STSF_CommonAppData,
654     STSF_FlagCreate,
655     DISPID_SpeechObjectTokens,
656     DISPID_SOTsCount,
657     DISPID_SOTsItem,
658     DISPID_SOTs_NewEnum,
659     DISPID_SpeechObjectTokenCategory,
660     DISPID_SOTCId,
661     DISPID_SOTCDefault,
662     DISPID_SOTCSetId,
663     DISPID_SOTCGetDataKey,
664     DISPID_SOTCEnumerateTokens,
665     SpeechAudioFormatType,
666     SAFTDefault,
667     SAFTNoAssignedFormat,
668     SAFTText,
669     SAFTNonStandardFormat,
670     SAFTExtendedAudioFormat,
671     SAFT8kHz8BitMono,
672     SAFT8kHz8BitStereo,
673     SAFT8kHz16BitMono,
674     SAFT8kHz16BitStereo,
675     SAFT11kHz8BitMono,
676     SAFT11kHz8BitStereo,
677     SAFT11kHz16BitMono,
678     SAFT11kHz16BitStereo,
679     SAFT12kHz8BitMono,
680     SAFT12kHz8BitStereo,
681     SAFT12kHz16BitMono,
682     SAFT12kHz16BitStereo,
683     SAFT16kHz8BitMono,
684     SAFT16kHz8BitStereo,
685     SAFT16kHz16BitMono,
686     SAFT16kHz16BitStereo,
687     SAFT22kHz8BitMono,
688     SAFT22kHz8BitStereo,
689     SAFT22kHz16BitMono,
690     SAFT22kHz16BitStereo,
691     SAFT24kHz8BitMono,
692     SAFT24kHz8BitStereo,
693     SAFT24kHz16BitMono,
694     SAFT24kHz16BitStereo,
695     SAFT32kHz8BitMono,
696     SAFT32kHz8BitStereo,
697     SAFT32kHz16BitMono,
698     SAFT32kHz16BitStereo,
699     SAFT44kHz8BitMono,
700     SAFT44kHz8BitStereo,
701     SAFT44kHz16BitMono,
702     SAFT44kHz16BitStereo,
703     SAFT48kHz8BitMono,
704     SAFT48kHz8BitStereo,
705     SAFT48kHz16BitMono,
706     SAFT48kHz16BitStereo,
707     SAFTTrueSpeech_8kHz1BitMono,
708     SAFTCCITT_ALaw_8kHzMono,
709     SAFTCCITT_ALaw_8kHzStereo,
710     SAFTCCITT_ALaw_11kHzMono,
711     SAFTCCITT_ALaw_11kHzStereo,
712     SAFTCCITT_ALaw_22kHzMono,
713     SAFTCCITT_ALaw_22kHzStereo,
714     SAFTCCITT_ALaw_44kHzMono,
715     SAFTCCITT_ALaw_44kHzStereo,
716     SAFTCCITT_uLaw_8kHzMono,
717     SAFTCCITT_uLaw_8kHzStereo,
718     SAFTCCITT_uLaw_11kHzMono,
719     SAFTCCITT_uLaw_11kHzStereo,
720     SAFTCCITT_uLaw_22kHzMono,
721     SAFTCCITT_uLaw_22kHzStereo,
722     SAFTCCITT_uLaw_44kHzMono,
723     SAFTCCITT_uLaw_44kHzStereo,
724     SAFTADPCM_8kHzMono,
725     SAFTADPCM_8kHzStereo,
726     SAFTADPCM_11kHzMono,
727     SAFTADPCM_11kHzStereo,
728     SAFTADPCM_22kHzMono,
729     SAFTADPCM_22kHzStereo,
730     SAFTADPCM_44kHzMono,
731     SAFTADPCM_44kHzStereo,
732     SAFTGSM610_8kHzMono,
733     SAFTGSM610_11kHzMono,
734     SAFTGSM610_22kHzMono,
735     SAFTGSM610_44kHzMono,
736     DISPID_SpeechAudioFormat,
737     DISPID_SAFType,
738     DISPID_SAFGuid,
739     DISPID_SAFGetWaveFormatEx,
740     DISPID_SAFSetWaveFormatEx,
741     DISPID_SpeechBaseStream,
742     DISPID_SBSFormat,
743     DISPID_SBSRead,
744     DISPID_SBSWrite,
745     DISPID_SBSSeek,
746     SpeechStreamSeekPositionType,
747     SSSPTRelativeToStart,
748     SSSPTRelativeToCurrentPosition,
749     SSSPTRelativeToEnd,
750     DISPID_SpeechAudio,
751     DISPID_SAStatus,
752     DISPID_SABufferInfo,
753     DISPID_SADefaultFormat,
754     DISPID_SAVolume,
755     DISPID_SABufferNotifySize,
756     DISPID_SAEventHandle,
757     DISPID_SASetState,
758     SpeechAudioState,
759     SASClosed,
760     SASStop,
761     SASPause,
762     SASRun,
763     DISPID_SpeechMMSysAudio,
764     DISPID_SMSADeviceId,
765     DISPID_SMSALineId,
766     DISPID_SMSAMMHandle,
767     DISPID_SpeechFileStream,
768     DISPID_SFSOpen,
769     DISPID_SFSClose,
770     SpeechStreamFileMode,
771     SSFMOpenForRead,
772     SSFMOpenReadWrite,
773     SSFMCreate,
774     SSFMCreateForWrite,
775     DISPID_SpeechCustomStream,
776     DISPID_SCSBaseStream,
777     DISPID_SpeechMemoryStream,
778     DISPID_SMSSetData,
779     DISPID_SMSGetData,
780     DISPID_SpeechAudioStatus,
781     DISPID_SASFreeBufferSpace,
782     DISPID_SASNonBlockingIO,
783     DISPID_SASState,
784     DISPID_SASCurrentSeekPosition,
785     DISPID_SASCurrentDevicePosition,
786     DISPID_SpeechAudioBufferInfo,
787     DISPID_SABIMinNotification,
788     DISPID_SABIBufferSize,
789     DISPID_SABIEventBias,
790     DISPID_SpeechWaveFormatEx,
791     DISPID_SWFEFormatTag,
792     DISPID_SWFEChannels,
793     DISPID_SWFESamplesPerSec,
794     DISPID_SWFEAvgBytesPerSec,
795     DISPID_SWFEBlockAlign,
796     DISPID_SWFEBitsPerSample,
797     DISPID_SWFEExtraData,
798     DISPID_SpeechVoice,
799     DISPID_SVStatus,
800     DISPID_SVVoice,
801     DISPID_SVAudioOutput,
802     DISPID_SVAudioOutputStream,
803     DISPID_SVRate,
804     DISPID_SVVolume,
805     DISPID_SVAllowAudioOuputFormatChangesOnNextSet,
806     DISPID_SVEventInterests,
807     DISPID_SVPriority,
808     DISPID_SVAlertBoundary,
809     DISPID_SVSyncronousSpeakTimeout,
810     DISPID_SVSpeak,
811     DISPID_SVSpeakStream,
812     DISPID_SVPause,
813     DISPID_SVResume,
814     DISPID_SVSkip,
815     DISPID_SVGetVoices,
816     DISPID_SVGetAudioOutputs,
817     DISPID_SVWaitUntilDone,
818     DISPID_SVSpeakCompleteEvent,
819     DISPID_SVIsUISupported,
820     DISPID_SVDisplayUI,
821     SpeechVoicePriority,
822     SVPNormal,
823     SVPAlert,
824     SVPOver,
825     SpeechVoiceSpeakFlags,
826     SVSFDefault,
827     SVSFlagsAsync,
828     SVSFPurgeBeforeSpeak,
829     SVSFIsFilename,
830     SVSFIsXML,
831     SVSFIsNotXML,
832     SVSFPersistXML,
833     SVSFNLPSpeakPunc,
834     SVSFParseSapi,
835     SVSFParseSsml,
836     SVSFParseAutodetect,
837     SVSFNLPMask,
838     SVSFParseMask,
839     SVSFVoiceMask,
840     SVSFUnusedFlags,
841     SpeechVoiceEvents,
842     SVEStartInputStream,
843     SVEEndInputStream,
844     SVEVoiceChange,
845     SVEBookmark,
846     SVEWordBoundary,
847     SVEPhoneme,
848     SVESentenceBoundary,
849     SVEViseme,
850     SVEAudioLevel,
851     SVEPrivate,
852     SVEAllEvents,
853     DISPID_SpeechVoiceStatus,
854     DISPID_SVSCurrentStreamNumber,
855     DISPID_SVSLastStreamNumberQueued,
856     DISPID_SVSLastResult,
857     DISPID_SVSRunningState,
858     DISPID_SVSInputWordPosition,
859     DISPID_SVSInputWordLength,
860     DISPID_SVSInputSentencePosition,
861     DISPID_SVSInputSentenceLength,
862     DISPID_SVSLastBookmark,
863     DISPID_SVSLastBookmarkId,
864     DISPID_SVSPhonemeId,
865     DISPID_SVSVisemeId,
866     SpeechRunState,
867     SRSEDone,
868     SRSEIsSpeaking,
869     SpeechVisemeType,
870     SVP_0,
871     SVP_1,
872     SVP_2,
873     SVP_3,
874     SVP_4,
875     SVP_5,
876     SVP_6,
877     SVP_7,
878     SVP_8,
879     SVP_9,
880     SVP_10,
881     SVP_11,
882     SVP_12,
883     SVP_13,
884     SVP_14,
885     SVP_15,
886     SVP_16,
887     SVP_17,
888     SVP_18,
889     SVP_19,
890     SVP_20,
891     SVP_21,
892     SpeechVisemeFeature,
893     SVF_None,
894     SVF_Stressed,
895     SVF_Emphasis,
896     DISPID_SpeechVoiceEvent,
897     DISPID_SVEStreamStart,
898     DISPID_SVEStreamEnd,
899     DISPID_SVEVoiceChange,
900     DISPID_SVEBookmark,
901     DISPID_SVEWord,
902     DISPID_SVEPhoneme,
903     DISPID_SVESentenceBoundary,
904     DISPID_SVEViseme,
905     DISPID_SVEAudioLevel,
906     DISPID_SVEEnginePrivate,
907     DISPID_SpeechRecognizer,
908     DISPID_SRRecognizer,
909     DISPID_SRAllowAudioInputFormatChangesOnNextSet,
910     DISPID_SRAudioInput,
911     DISPID_SRAudioInputStream,
912     DISPID_SRIsShared,
913     DISPID_SRState,
914     DISPID_SRStatus,
915     DISPID_SRProfile,
916     DISPID_SREmulateRecognition,
917     DISPID_SRCreateRecoContext,
918     DISPID_SRGetFormat,
919     DISPID_SRSetPropertyNumber,
920     DISPID_SRGetPropertyNumber,
921     DISPID_SRSetPropertyString,
922     DISPID_SRGetPropertyString,
923     DISPID_SRIsUISupported,
924     DISPID_SRDisplayUI,
925     DISPID_SRGetRecognizers,
926     DISPID_SVGetAudioInputs,
927     DISPID_SVGetProfiles,
928     SpeechRecognizerState,
929     SRSInactive,
930     SRSActive,
931     SRSActiveAlways,
932     SRSInactiveWithPurge,
933     SpeechDisplayAttributes,
934     SDA_No_Trailing_Space,
935     SDA_One_Trailing_Space,
936     SDA_Two_Trailing_Spaces,
937     SDA_Consume_Leading_Spaces,
938     SpeechFormatType,
939     SFTInput,
940     SFTSREngine,
941     SpeechEmulationCompareFlags,
942     SECFIgnoreCase,
943     SECFIgnoreKanaType,
944     SECFIgnoreWidth,
945     SECFNoSpecialChars,
946     SECFEmulateResult,
947     SECFDefault,
948     DISPID_SpeechRecognizerStatus,
949     DISPID_SRSAudioStatus,
950     DISPID_SRSCurrentStreamPosition,
951     DISPID_SRSCurrentStreamNumber,
952     DISPID_SRSNumberOfActiveRules,
953     DISPID_SRSClsidEngine,
954     DISPID_SRSSupportedLanguages,
955     DISPID_SpeechRecoContext,
956     DISPID_SRCRecognizer,
957     DISPID_SRCAudioInInterferenceStatus,
958     DISPID_SRCRequestedUIType,
959     DISPID_SRCVoice,
960     DISPID_SRAllowVoiceFormatMatchingOnNextSet,
961     DISPID_SRCVoicePurgeEvent,
962     DISPID_SRCEventInterests,
963     DISPID_SRCCmdMaxAlternates,
964     DISPID_SRCState,
965     DISPID_SRCRetainedAudio,
966     DISPID_SRCRetainedAudioFormat,
967     DISPID_SRCPause,
968     DISPID_SRCResume,
969     DISPID_SRCCreateGrammar,
970     DISPID_SRCCreateResultFromMemory,
971     DISPID_SRCBookmark,
972     DISPID_SRCSetAdaptationData,
973     SpeechRetainedAudioOptions,
974     SRAONone,
975     SRAORetainAudio,
976     SpeechBookmarkOptions,
977     SBONone,
978     SBOPause,
979     SpeechInterference,
980     SINone,
981     SINoise,
982     SINoSignal,
983     SITooLoud,
984     SITooQuiet,
985     SITooFast,
986     SITooSlow,
987     SpeechRecoEvents,
988     SREStreamEnd,
989     SRESoundStart,
990     SRESoundEnd,
991     SREPhraseStart,
992     SRERecognition,
993     SREHypothesis,
994     SREBookmark,
995     SREPropertyNumChange,
996     SREPropertyStringChange,
997     SREFalseRecognition,
998     SREInterference,
999     SRERequestUI,
1000     SREStateChange,
1001     SREAdaptation,
1002     SREStreamStart,
1003     SRERecoOtherContext,
1004     SREAudioLevel,
1005     SREPrivate,
1006     SREAllEvents,
1007     SpeechRecoContextState,
1008     SRCS_Disabled,
1009     SRCS_Enabled,
1010     DISPIDSPRG,
1011     DISPID_SRGId,
1012     DISPID_SRGRecoContext,
1013     DISPID_SRGState,
1014     DISPID_SRGRules,
1015     DISPID_SRGReset,
1016     DISPID_SRGCommit,
1017     DISPID_SRGCmdLoadFromFile,
1018     DISPID_SRGCmdLoadFromObject,
1019     DISPID_SRGCmdLoadFromResource,
1020     DISPID_SRGCmdLoadFromMemory,
1021     DISPID_SRGCmdLoadFromProprietaryGrammar,
1022     DISPID_SRGCmdSetRuleState,
1023     DISPID_SRGCmdSetRuleIdState,
1024     DISPID_SRGDictationLoad,
1025     DISPID_SRGDictationUnload,
1026     DISPID_SRGDictationSetState,
1027     DISPID_SRGSetWordSequenceData,
1028     DISPID_SRGSetTextSelection,
1029     DISPID_SRGIsPronounceable,
1030     SpeechLoadOption,
1031     SLOStatic,
1032     SLODynamic,
1033     SpeechWordPronounceable,
1034     SWPUnknownWordUnpronounceable,
1035     SWPUnknownWordPronounceable,
1036     SWPKnownWordPronounceable,
1037     SpeechGrammarState,
1038     SGSEnabled,
1039     SGSDisabled,
1040     SGSExclusive,
1041     SpeechRuleState,
1042     SGDSInactive,
1043     SGDSActive,
1044     SGDSActiveWithAutoPause,
1045     SGDSActiveUserDelimited,
1046     SpeechRuleAttributes,
1047     SRATopLevel,
1048     SRADefaultToActive,
1049     SRAExport,
1050     SRAImport,
1051     SRAInterpreter,
1052     SRADynamic,
1053     SRARoot,
1054     SpeechGrammarWordType,
1055     SGDisplay,
1056     SGLexical,
1057     SGPronounciation,
1058     SGLexicalNoSpecialChars,
1059     DISPID_SpeechRecoContextEvents,
1060     DISPID_SRCEStartStream,
1061     DISPID_SRCEEndStream,
1062     DISPID_SRCEBookmark,
1063     DISPID_SRCESoundStart,
1064     DISPID_SRCESoundEnd,
1065     DISPID_SRCEPhraseStart,
1066     DISPID_SRCERecognition,
1067     DISPID_SRCEHypothesis,
1068     DISPID_SRCEPropertyNumberChange,
1069     DISPID_SRCEPropertyStringChange,
1070     DISPID_SRCEFalseRecognition,
1071     DISPID_SRCEInterference,
1072     DISPID_SRCERequestUI,
1073     DISPID_SRCERecognizerStateChange,
1074     DISPID_SRCEAdaptation,
1075     DISPID_SRCERecognitionForOtherContext,
1076     DISPID_SRCEAudioLevel,
1077     DISPID_SRCEEnginePrivate,
1078     SpeechRecognitionType,
1079     SRTStandard,
1080     SRTAutopause,
1081     SRTEmulated,
1082     SRTSMLTimeout,
1083     SRTExtendableParse,
1084     SRTReSent,
1085     DISPID_SpeechGrammarRule,
1086     DISPID_SGRAttributes,
1087     DISPID_SGRInitialState,
1088     DISPID_SGRName,
1089     DISPID_SGRId,
1090     DISPID_SGRClear,
1091     DISPID_SGRAddResource,
1092     DISPID_SGRAddState,
1093     DISPID_SpeechGrammarRules,
1094     DISPID_SGRsCount,
1095     DISPID_SGRsDynamic,
1096     DISPID_SGRsAdd,
1097     DISPID_SGRsCommit,
1098     DISPID_SGRsCommitAndSave,
1099     DISPID_SGRsFindRule,
1100     DISPID_SGRsItem,
1101     DISPID_SGRs_NewEnum,
1102     DISPID_SpeechGrammarRuleState,
1103     DISPID_SGRSRule,
1104     DISPID_SGRSTransitions,
1105     DISPID_SGRSAddWordTransition,
1106     DISPID_SGRSAddRuleTransition,
1107     DISPID_SGRSAddSpecialTransition,
1108     SpeechSpecialTransitionType,
1109     SSTTWildcard,
1110     SSTTDictation,
1111     SSTTTextBuffer,
1112     DISPID_SpeechGrammarRuleStateTransitions,
1113     DISPID_SGRSTsCount,
1114     DISPID_SGRSTsItem,
1115     DISPID_SGRSTs_NewEnum,
1116     DISPID_SpeechGrammarRuleStateTransition,
1117     DISPID_SGRSTType,
1118     DISPID_SGRSTText,
1119     DISPID_SGRSTRule,
1120     DISPID_SGRSTWeight,
1121     DISPID_SGRSTPropertyName,
1122     DISPID_SGRSTPropertyId,
1123     DISPID_SGRSTPropertyValue,
1124     DISPID_SGRSTNextState,
1125     SpeechGrammarRuleStateTransitionType,
1126     SGRSTTEpsilon,
1127     SGRSTTWord,
1128     SGRSTTRule,
1129     SGRSTTDictation,
1130     SGRSTTWildcard,
1131     SGRSTTTextBuffer,
1132     DISPIDSPTSI,
1133     DISPIDSPTSI_ActiveOffset,
1134     DISPIDSPTSI_ActiveLength,
1135     DISPIDSPTSI_SelectionOffset,
1136     DISPIDSPTSI_SelectionLength,
1137     DISPID_SpeechRecoResult,
1138     DISPID_SRRRecoContext,
1139     DISPID_SRRTimes,
1140     DISPID_SRRAudioFormat,
1141     DISPID_SRRPhraseInfo,
1142     DISPID_SRRAlternates,
1143     DISPID_SRRAudio,
1144     DISPID_SRRSpeakAudio,
1145     DISPID_SRRSaveToMemory,
1146     DISPID_SRRDiscardResultInfo,
1147     SpeechDiscardType,
1148     SDTProperty,
1149     SDTReplacement,
1150     SDTRule,
1151     SDTDisplayText,
1152     SDTLexicalForm,
1153     SDTPronunciation,
1154     SDTAudio,
1155     SDTAlternates,
1156     SDTAll,
1157     DISPID_SpeechXMLRecoResult,
1158     DISPID_SRRGetXMLResult,
1159     DISPID_SRRGetXMLErrorInfo,
1160     DISPID_SpeechRecoResult2,
1161     DISPID_SRRSetTextFeedback,
1162     DISPID_SpeechPhraseBuilder,
1163     DISPID_SPPBRestorePhraseFromMemory,
1164     DISPID_SpeechRecoResultTimes,
1165     DISPID_SRRTStreamTime,
1166     DISPID_SRRTLength,
1167     DISPID_SRRTTickCount,
1168     DISPID_SRRTOffsetFromStart,
1169     DISPID_SpeechPhraseAlternate,
1170     DISPID_SPARecoResult,
1171     DISPID_SPAStartElementInResult,
1172     DISPID_SPANumberOfElementsInResult,
1173     DISPID_SPAPhraseInfo,
1174     DISPID_SPACommit,
1175     DISPID_SpeechPhraseAlternates,
1176     DISPID_SPAsCount,
1177     DISPID_SPAsItem,
1178     DISPID_SPAs_NewEnum,
1179     DISPID_SpeechPhraseInfo,
1180     DISPID_SPILanguageId,
1181     DISPID_SPIGrammarId,
1182     DISPID_SPIStartTime,
1183     DISPID_SPIAudioStreamPosition,
1184     DISPID_SPIAudioSizeBytes,
1185     DISPID_SPIRetainedSizeBytes,
1186     DISPID_SPIAudioSizeTime,
1187     DISPID_SPIRule,
1188     DISPID_SPIProperties,
1189     DISPID_SPIElements,
1190     DISPID_SPIReplacements,
1191     DISPID_SPIEngineId,
1192     DISPID_SPIEnginePrivateData,
1193     DISPID_SPISaveToMemory,
1194     DISPID_SPIGetText,
1195     DISPID_SPIGetDisplayAttributes,
1196     DISPID_SpeechPhraseElement,
1197     DISPID_SPEAudioTimeOffset,
1198     DISPID_SPEAudioSizeTime,
1199     DISPID_SPEAudioStreamOffset,
1200     DISPID_SPEAudioSizeBytes,
1201     DISPID_SPERetainedStreamOffset,
1202     DISPID_SPERetainedSizeBytes,
1203     DISPID_SPEDisplayText,
1204     DISPID_SPELexicalForm,
1205     DISPID_SPEPronunciation,
1206     DISPID_SPEDisplayAttributes,
1207     DISPID_SPERequiredConfidence,
1208     DISPID_SPEActualConfidence,
1209     DISPID_SPEEngineConfidence,
1210     SpeechEngineConfidence,
1211     SECLowConfidence,
1212     SECNormalConfidence,
1213     SECHighConfidence,
1214     DISPID_SpeechPhraseElements,
1215     DISPID_SPEsCount,
1216     DISPID_SPEsItem,
1217     DISPID_SPEs_NewEnum,
1218     DISPID_SpeechPhraseReplacement,
1219     DISPID_SPRDisplayAttributes,
1220     DISPID_SPRText,
1221     DISPID_SPRFirstElement,
1222     DISPID_SPRNumberOfElements,
1223     DISPID_SpeechPhraseReplacements,
1224     DISPID_SPRsCount,
1225     DISPID_SPRsItem,
1226     DISPID_SPRs_NewEnum,
1227     DISPID_SpeechPhraseProperty,
1228     DISPID_SPPName,
1229     DISPID_SPPId,
1230     DISPID_SPPValue,
1231     DISPID_SPPFirstElement,
1232     DISPID_SPPNumberOfElements,
1233     DISPID_SPPEngineConfidence,
1234     DISPID_SPPConfidence,
1235     DISPID_SPPParent,
1236     DISPID_SPPChildren,
1237     DISPID_SpeechPhraseProperties,
1238     DISPID_SPPsCount,
1239     DISPID_SPPsItem,
1240     DISPID_SPPs_NewEnum,
1241     DISPID_SpeechPhraseRule,
1242     DISPID_SPRuleName,
1243     DISPID_SPRuleId,
1244     DISPID_SPRuleFirstElement,
1245     DISPID_SPRuleNumberOfElements,
1246     DISPID_SPRuleParent,
1247     DISPID_SPRuleChildren,
1248     DISPID_SPRuleConfidence,
1249     DISPID_SPRuleEngineConfidence,
1250     DISPID_SpeechPhraseRules,
1251     DISPID_SPRulesCount,
1252     DISPID_SPRulesItem,
1253     DISPID_SPRules_NewEnum,
1254     DISPID_SpeechLexicon,
1255     DISPID_SLGenerationId,
1256     DISPID_SLGetWords,
1257     DISPID_SLAddPronunciation,
1258     DISPID_SLAddPronunciationByPhoneIds,
1259     DISPID_SLRemovePronunciation,
1260     DISPID_SLRemovePronunciationByPhoneIds,
1261     DISPID_SLGetPronunciations,
1262     DISPID_SLGetGenerationChange,
1263     SpeechLexiconType,
1264     SLTUser,
1265     SLTApp,
1266     SpeechPartOfSpeech,
1267     SPSNotOverriden,
1268     SPSUnknown,
1269     SPSNoun,
1270     SPSVerb,
1271     SPSModifier,
1272     SPSFunction,
1273     SPSInterjection,
1274     SPSLMA,
1275     SPSSuppressWord,
1276     DISPID_SpeechLexiconWords,
1277     DISPID_SLWsCount,
1278     DISPID_SLWsItem,
1279     DISPID_SLWs_NewEnum,
1280     SpeechWordType,
1281     SWTAdded,
1282     SWTDeleted,
1283     DISPID_SpeechLexiconWord,
1284     DISPID_SLWLangId,
1285     DISPID_SLWType,
1286     DISPID_SLWWord,
1287     DISPID_SLWPronunciations,
1288     DISPID_SpeechLexiconProns,
1289     DISPID_SLPsCount,
1290     DISPID_SLPsItem,
1291     DISPID_SLPs_NewEnum,
1292     DISPID_SpeechLexiconPronunciation,
1293     DISPID_SLPType,
1294     DISPID_SLPLangId,
1295     DISPID_SLPPartOfSpeech,
1296     DISPID_SLPPhoneIds,
1297     DISPID_SLPSymbolic,
1298     DISPID_SpeechPhoneConverter,
1299     DISPID_SPCLangId,
1300     DISPID_SPCPhoneToId,
1301     DISPID_SPCIdToPhone,
1302     LIBID_SpeechLib,
1303     ISpeechDataKey, ISpeechDataKeyVtbl,
1304     ISpeechObjectToken, ISpeechObjectTokenVtbl,
1305     ISpeechObjectTokens, ISpeechObjectTokensVtbl,
1306     ISpeechObjectTokenCategory, ISpeechObjectTokenCategoryVtbl,
1307     ISpeechAudioBufferInfo, ISpeechAudioBufferInfoVtbl,
1308     ISpeechAudioStatus, ISpeechAudioStatusVtbl,
1309     ISpeechAudioFormat, ISpeechAudioFormatVtbl,
1310     ISpeechWaveFormatEx, ISpeechWaveFormatExVtbl,
1311     ISpeechBaseStream, ISpeechBaseStreamVtbl,
1312     ISpeechFileStream, ISpeechFileStreamVtbl,
1313     ISpeechMemoryStream, ISpeechMemoryStreamVtbl,
1314     ISpeechCustomStream, ISpeechCustomStreamVtbl,
1315     ISpeechAudio, ISpeechAudioVtbl,
1316     ISpeechMMSysAudio, ISpeechMMSysAudioVtbl,
1317     ISpeechVoice, ISpeechVoiceVtbl,
1318     ISpeechVoiceStatus, ISpeechVoiceStatusVtbl,
1319     _ISpeechVoiceEvents, _ISpeechVoiceEventsVtbl,
1320     ISpeechRecognizer, ISpeechRecognizerVtbl,
1321     ISpeechRecognizerStatus, ISpeechRecognizerStatusVtbl,
1322     ISpeechRecoContext, ISpeechRecoContextVtbl,
1323     ISpeechRecoGrammar, ISpeechRecoGrammarVtbl,
1324     _ISpeechRecoContextEvents, _ISpeechRecoContextEventsVtbl,
1325     ISpeechGrammarRule, ISpeechGrammarRuleVtbl,
1326     ISpeechGrammarRules, ISpeechGrammarRulesVtbl,
1327     ISpeechGrammarRuleState, ISpeechGrammarRuleStateVtbl,
1328     ISpeechGrammarRuleStateTransition, ISpeechGrammarRuleStateTransitionVtbl,
1329     ISpeechGrammarRuleStateTransitions, ISpeechGrammarRuleStateTransitionsVtbl,
1330     ISpeechTextSelectionInformation, ISpeechTextSelectionInformationVtbl,
1331     ISpeechRecoResult, ISpeechRecoResultVtbl,
1332     ISpeechRecoResult2, ISpeechRecoResult2Vtbl,
1333     ISpeechRecoResultTimes, ISpeechRecoResultTimesVtbl,
1334     ISpeechPhraseAlternate, ISpeechPhraseAlternateVtbl,
1335     ISpeechPhraseAlternates, ISpeechPhraseAlternatesVtbl,
1336     ISpeechPhraseInfo, ISpeechPhraseInfoVtbl,
1337     ISpeechPhraseElement, ISpeechPhraseElementVtbl,
1338     ISpeechPhraseElements, ISpeechPhraseElementsVtbl,
1339     ISpeechPhraseReplacement, ISpeechPhraseReplacementVtbl,
1340     ISpeechPhraseReplacements, ISpeechPhraseReplacementsVtbl,
1341     ISpeechPhraseProperty, ISpeechPhrasePropertyVtbl,
1342     ISpeechPhraseProperties, ISpeechPhrasePropertiesVtbl,
1343     ISpeechPhraseRule, ISpeechPhraseRuleVtbl,
1344     ISpeechPhraseRules, ISpeechPhraseRulesVtbl,
1345     ISpeechLexicon, ISpeechLexiconVtbl,
1346     ISpeechLexiconWords, ISpeechLexiconWordsVtbl,
1347     ISpeechLexiconWord, ISpeechLexiconWordVtbl,
1348     ISpeechLexiconPronunciations, ISpeechLexiconPronunciationsVtbl,
1349     ISpeechLexiconPronunciation, ISpeechLexiconPronunciationVtbl,
1350     Speech_Default_Weight,
1351     Speech_Max_Word_Length,
1352     Speech_Max_Pron_Length,
1353     Speech_StreamPos_Asap,
1354     Speech_StreamPos_RealTime,
1355     SpeechAllElements,
1356     ISpeechXMLRecoResult, ISpeechXMLRecoResultVtbl,
1357     ISpeechRecoResultDispatch, ISpeechRecoResultDispatchVtbl,
1358     ISpeechPhraseInfoBuilder, ISpeechPhraseInfoBuilderVtbl,
1359     ISpeechPhoneConverter, ISpeechPhoneConverterVtbl,
1360     CLSID_SpNotifyTranslator,
1361     CLSID_SpObjectTokenCategory,
1362     CLSID_SpObjectToken,
1363     CLSID_SpResourceManager,
1364     CLSID_SpStreamFormatConverter,
1365     CLSID_SpMMAudioEnum,
1366     CLSID_SpMMAudioIn,
1367     CLSID_SpMMAudioOut,
1368     CLSID_SpStream,
1369     CLSID_SpVoice,
1370     CLSID_SpSharedRecoContext,
1371     CLSID_SpInprocRecognizer,
1372     CLSID_SpSharedRecognizer,
1373     CLSID_SpLexicon,
1374     CLSID_SpUnCompressedLexicon,
1375     CLSID_SpCompressedLexicon,
1376     CLSID_SpShortcut,
1377     CLSID_SpPhoneConverter,
1378     CLSID_SpPhoneticAlphabetConverter,
1379     CLSID_SpNullPhoneConverter,
1380     CLSID_SpTextSelectionInformation,
1381     CLSID_SpPhraseInfoBuilder,
1382     CLSID_SpAudioFormat,
1383     CLSID_SpWaveFormatEx,
1384     CLSID_SpInProcRecoContext,
1385     CLSID_SpCustomStream,
1386     CLSID_SpFileStream,
1387     CLSID_SpMemoryStream,
1388 };
1389