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