master
1/*** Autogenerated by WIDL 10.4 from include/sapi53.idl - Do not edit ***/
2
3#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__
5#define __REQUIRED_RPCNDR_H_VERSION__ 475
6#endif
7#include <rpc.h>
8#include <rpcndr.h>
9#endif
10
11#ifndef COM_NO_WINDOWS_H
12#include <windows.h>
13#include <ole2.h>
14#endif
15
16#ifndef __sapi53_h__
17#define __sapi53_h__
18
19/* Forward declarations */
20
21#ifndef __ISpNotifySource_FWD_DEFINED__
22#define __ISpNotifySource_FWD_DEFINED__
23typedef interface ISpNotifySource ISpNotifySource;
24#ifdef __cplusplus
25interface ISpNotifySource;
26#endif /* __cplusplus */
27#endif
28
29#ifndef __ISpNotifySink_FWD_DEFINED__
30#define __ISpNotifySink_FWD_DEFINED__
31typedef interface ISpNotifySink ISpNotifySink;
32#ifdef __cplusplus
33interface ISpNotifySink;
34#endif /* __cplusplus */
35#endif
36
37#ifndef __ISpNotifyTranslator_FWD_DEFINED__
38#define __ISpNotifyTranslator_FWD_DEFINED__
39typedef interface ISpNotifyTranslator ISpNotifyTranslator;
40#ifdef __cplusplus
41interface ISpNotifyTranslator;
42#endif /* __cplusplus */
43#endif
44
45#ifndef __ISpDataKey_FWD_DEFINED__
46#define __ISpDataKey_FWD_DEFINED__
47typedef interface ISpDataKey ISpDataKey;
48#ifdef __cplusplus
49interface ISpDataKey;
50#endif /* __cplusplus */
51#endif
52
53#ifndef __ISpObjectWithToken_FWD_DEFINED__
54#define __ISpObjectWithToken_FWD_DEFINED__
55typedef interface ISpObjectWithToken ISpObjectWithToken;
56#ifdef __cplusplus
57interface ISpObjectWithToken;
58#endif /* __cplusplus */
59#endif
60
61#ifndef __IEnumSpObjectTokens_FWD_DEFINED__
62#define __IEnumSpObjectTokens_FWD_DEFINED__
63typedef interface IEnumSpObjectTokens IEnumSpObjectTokens;
64#ifdef __cplusplus
65interface IEnumSpObjectTokens;
66#endif /* __cplusplus */
67#endif
68
69#ifndef __ISpRegDataKey_FWD_DEFINED__
70#define __ISpRegDataKey_FWD_DEFINED__
71typedef interface ISpRegDataKey ISpRegDataKey;
72#ifdef __cplusplus
73interface ISpRegDataKey;
74#endif /* __cplusplus */
75#endif
76
77#ifndef __ISpObjectTokenCategory_FWD_DEFINED__
78#define __ISpObjectTokenCategory_FWD_DEFINED__
79typedef interface ISpObjectTokenCategory ISpObjectTokenCategory;
80#ifdef __cplusplus
81interface ISpObjectTokenCategory;
82#endif /* __cplusplus */
83#endif
84
85#ifndef __ISpObjectToken_FWD_DEFINED__
86#define __ISpObjectToken_FWD_DEFINED__
87typedef interface ISpObjectToken ISpObjectToken;
88#ifdef __cplusplus
89interface ISpObjectToken;
90#endif /* __cplusplus */
91#endif
92
93#ifndef __ISpObjectTokenInit_FWD_DEFINED__
94#define __ISpObjectTokenInit_FWD_DEFINED__
95typedef interface ISpObjectTokenInit ISpObjectTokenInit;
96#ifdef __cplusplus
97interface ISpObjectTokenInit;
98#endif /* __cplusplus */
99#endif
100
101#ifndef __ISpResourceManager_FWD_DEFINED__
102#define __ISpResourceManager_FWD_DEFINED__
103typedef interface ISpResourceManager ISpResourceManager;
104#ifdef __cplusplus
105interface ISpResourceManager;
106#endif /* __cplusplus */
107#endif
108
109#ifndef __ISpEventSource_FWD_DEFINED__
110#define __ISpEventSource_FWD_DEFINED__
111typedef interface ISpEventSource ISpEventSource;
112#ifdef __cplusplus
113interface ISpEventSource;
114#endif /* __cplusplus */
115#endif
116
117#ifndef __ISpEventSource2_FWD_DEFINED__
118#define __ISpEventSource2_FWD_DEFINED__
119typedef interface ISpEventSource2 ISpEventSource2;
120#ifdef __cplusplus
121interface ISpEventSource2;
122#endif /* __cplusplus */
123#endif
124
125#ifndef __ISpEventSink_FWD_DEFINED__
126#define __ISpEventSink_FWD_DEFINED__
127typedef interface ISpEventSink ISpEventSink;
128#ifdef __cplusplus
129interface ISpEventSink;
130#endif /* __cplusplus */
131#endif
132
133#ifndef __ISpStreamFormat_FWD_DEFINED__
134#define __ISpStreamFormat_FWD_DEFINED__
135typedef interface ISpStreamFormat ISpStreamFormat;
136#ifdef __cplusplus
137interface ISpStreamFormat;
138#endif /* __cplusplus */
139#endif
140
141#ifndef __ISpStream_FWD_DEFINED__
142#define __ISpStream_FWD_DEFINED__
143typedef interface ISpStream ISpStream;
144#ifdef __cplusplus
145interface ISpStream;
146#endif /* __cplusplus */
147#endif
148
149#ifndef __ISpStreamFormatConverter_FWD_DEFINED__
150#define __ISpStreamFormatConverter_FWD_DEFINED__
151typedef interface ISpStreamFormatConverter ISpStreamFormatConverter;
152#ifdef __cplusplus
153interface ISpStreamFormatConverter;
154#endif /* __cplusplus */
155#endif
156
157#ifndef __ISpAudio_FWD_DEFINED__
158#define __ISpAudio_FWD_DEFINED__
159typedef interface ISpAudio ISpAudio;
160#ifdef __cplusplus
161interface ISpAudio;
162#endif /* __cplusplus */
163#endif
164
165#ifndef __ISpMMSysAudio_FWD_DEFINED__
166#define __ISpMMSysAudio_FWD_DEFINED__
167typedef interface ISpMMSysAudio ISpMMSysAudio;
168#ifdef __cplusplus
169interface ISpMMSysAudio;
170#endif /* __cplusplus */
171#endif
172
173#ifndef __ISpTranscript_FWD_DEFINED__
174#define __ISpTranscript_FWD_DEFINED__
175typedef interface ISpTranscript ISpTranscript;
176#ifdef __cplusplus
177interface ISpTranscript;
178#endif /* __cplusplus */
179#endif
180
181#ifndef __ISpLexicon_FWD_DEFINED__
182#define __ISpLexicon_FWD_DEFINED__
183typedef interface ISpLexicon ISpLexicon;
184#ifdef __cplusplus
185interface ISpLexicon;
186#endif /* __cplusplus */
187#endif
188
189#ifndef __ISpContainerLexicon_FWD_DEFINED__
190#define __ISpContainerLexicon_FWD_DEFINED__
191typedef interface ISpContainerLexicon ISpContainerLexicon;
192#ifdef __cplusplus
193interface ISpContainerLexicon;
194#endif /* __cplusplus */
195#endif
196
197#ifndef __ISpShortcut_FWD_DEFINED__
198#define __ISpShortcut_FWD_DEFINED__
199typedef interface ISpShortcut ISpShortcut;
200#ifdef __cplusplus
201interface ISpShortcut;
202#endif /* __cplusplus */
203#endif
204
205#ifndef __ISpPhoneConverter_FWD_DEFINED__
206#define __ISpPhoneConverter_FWD_DEFINED__
207typedef interface ISpPhoneConverter ISpPhoneConverter;
208#ifdef __cplusplus
209interface ISpPhoneConverter;
210#endif /* __cplusplus */
211#endif
212
213#ifndef __ISpPhoneticAlphabetConverter_FWD_DEFINED__
214#define __ISpPhoneticAlphabetConverter_FWD_DEFINED__
215typedef interface ISpPhoneticAlphabetConverter ISpPhoneticAlphabetConverter;
216#ifdef __cplusplus
217interface ISpPhoneticAlphabetConverter;
218#endif /* __cplusplus */
219#endif
220
221#ifndef __ISpPhoneticAlphabetSelection_FWD_DEFINED__
222#define __ISpPhoneticAlphabetSelection_FWD_DEFINED__
223typedef interface ISpPhoneticAlphabetSelection ISpPhoneticAlphabetSelection;
224#ifdef __cplusplus
225interface ISpPhoneticAlphabetSelection;
226#endif /* __cplusplus */
227#endif
228
229#ifndef __ISpVoice_FWD_DEFINED__
230#define __ISpVoice_FWD_DEFINED__
231typedef interface ISpVoice ISpVoice;
232#ifdef __cplusplus
233interface ISpVoice;
234#endif /* __cplusplus */
235#endif
236
237#ifndef __ISpPhrase_FWD_DEFINED__
238#define __ISpPhrase_FWD_DEFINED__
239typedef interface ISpPhrase ISpPhrase;
240#ifdef __cplusplus
241interface ISpPhrase;
242#endif /* __cplusplus */
243#endif
244
245#ifndef __ISpPhraseAlt_FWD_DEFINED__
246#define __ISpPhraseAlt_FWD_DEFINED__
247typedef interface ISpPhraseAlt ISpPhraseAlt;
248#ifdef __cplusplus
249interface ISpPhraseAlt;
250#endif /* __cplusplus */
251#endif
252
253#ifndef __ISpPhrase2_FWD_DEFINED__
254#define __ISpPhrase2_FWD_DEFINED__
255typedef interface ISpPhrase2 ISpPhrase2;
256#ifdef __cplusplus
257interface ISpPhrase2;
258#endif /* __cplusplus */
259#endif
260
261#ifndef __ISpRecoResult_FWD_DEFINED__
262#define __ISpRecoResult_FWD_DEFINED__
263typedef interface ISpRecoResult ISpRecoResult;
264#ifdef __cplusplus
265interface ISpRecoResult;
266#endif /* __cplusplus */
267#endif
268
269#ifndef __ISpRecoResult2_FWD_DEFINED__
270#define __ISpRecoResult2_FWD_DEFINED__
271typedef interface ISpRecoResult2 ISpRecoResult2;
272#ifdef __cplusplus
273interface ISpRecoResult2;
274#endif /* __cplusplus */
275#endif
276
277#ifndef __ISpXMLRecoResult_FWD_DEFINED__
278#define __ISpXMLRecoResult_FWD_DEFINED__
279typedef interface ISpXMLRecoResult ISpXMLRecoResult;
280#ifdef __cplusplus
281interface ISpXMLRecoResult;
282#endif /* __cplusplus */
283#endif
284
285#ifndef __ISpGrammarBuilder_FWD_DEFINED__
286#define __ISpGrammarBuilder_FWD_DEFINED__
287typedef interface ISpGrammarBuilder ISpGrammarBuilder;
288#ifdef __cplusplus
289interface ISpGrammarBuilder;
290#endif /* __cplusplus */
291#endif
292
293#ifndef __ISpRecoGrammar_FWD_DEFINED__
294#define __ISpRecoGrammar_FWD_DEFINED__
295typedef interface ISpRecoGrammar ISpRecoGrammar;
296#ifdef __cplusplus
297interface ISpRecoGrammar;
298#endif /* __cplusplus */
299#endif
300
301#ifndef __ISpGrammarBuilder2_FWD_DEFINED__
302#define __ISpGrammarBuilder2_FWD_DEFINED__
303typedef interface ISpGrammarBuilder2 ISpGrammarBuilder2;
304#ifdef __cplusplus
305interface ISpGrammarBuilder2;
306#endif /* __cplusplus */
307#endif
308
309#ifndef __ISpRecoGrammar2_FWD_DEFINED__
310#define __ISpRecoGrammar2_FWD_DEFINED__
311typedef interface ISpRecoGrammar2 ISpRecoGrammar2;
312#ifdef __cplusplus
313interface ISpRecoGrammar2;
314#endif /* __cplusplus */
315#endif
316
317#ifndef __ISpeechResourceLoader_FWD_DEFINED__
318#define __ISpeechResourceLoader_FWD_DEFINED__
319typedef interface ISpeechResourceLoader ISpeechResourceLoader;
320#ifdef __cplusplus
321interface ISpeechResourceLoader;
322#endif /* __cplusplus */
323#endif
324
325#ifndef __ISpRecoContext_FWD_DEFINED__
326#define __ISpRecoContext_FWD_DEFINED__
327typedef interface ISpRecoContext ISpRecoContext;
328#ifdef __cplusplus
329interface ISpRecoContext;
330#endif /* __cplusplus */
331#endif
332
333#ifndef __ISpRecoContext2_FWD_DEFINED__
334#define __ISpRecoContext2_FWD_DEFINED__
335typedef interface ISpRecoContext2 ISpRecoContext2;
336#ifdef __cplusplus
337interface ISpRecoContext2;
338#endif /* __cplusplus */
339#endif
340
341#ifndef __ISpProperties_FWD_DEFINED__
342#define __ISpProperties_FWD_DEFINED__
343typedef interface ISpProperties ISpProperties;
344#ifdef __cplusplus
345interface ISpProperties;
346#endif /* __cplusplus */
347#endif
348
349#ifndef __ISpRecognizer_FWD_DEFINED__
350#define __ISpRecognizer_FWD_DEFINED__
351typedef interface ISpRecognizer ISpRecognizer;
352#ifdef __cplusplus
353interface ISpRecognizer;
354#endif /* __cplusplus */
355#endif
356
357#ifndef __ISpSerializeState_FWD_DEFINED__
358#define __ISpSerializeState_FWD_DEFINED__
359typedef interface ISpSerializeState ISpSerializeState;
360#ifdef __cplusplus
361interface ISpSerializeState;
362#endif /* __cplusplus */
363#endif
364
365#ifndef __ISpRecognizer2_FWD_DEFINED__
366#define __ISpRecognizer2_FWD_DEFINED__
367typedef interface ISpRecognizer2 ISpRecognizer2;
368#ifdef __cplusplus
369interface ISpRecognizer2;
370#endif /* __cplusplus */
371#endif
372
373#ifndef __ISpEnginePronunciation_FWD_DEFINED__
374#define __ISpEnginePronunciation_FWD_DEFINED__
375typedef interface ISpEnginePronunciation ISpEnginePronunciation;
376#ifdef __cplusplus
377interface ISpEnginePronunciation;
378#endif /* __cplusplus */
379#endif
380
381#ifndef __ISpDisplayAlternates_FWD_DEFINED__
382#define __ISpDisplayAlternates_FWD_DEFINED__
383typedef interface ISpDisplayAlternates ISpDisplayAlternates;
384#ifdef __cplusplus
385interface ISpDisplayAlternates;
386#endif /* __cplusplus */
387#endif
388
389#ifndef __ISpeechDataKey_FWD_DEFINED__
390#define __ISpeechDataKey_FWD_DEFINED__
391typedef interface ISpeechDataKey ISpeechDataKey;
392#ifdef __cplusplus
393interface ISpeechDataKey;
394#endif /* __cplusplus */
395#endif
396
397#ifndef __ISpeechObjectToken_FWD_DEFINED__
398#define __ISpeechObjectToken_FWD_DEFINED__
399typedef interface ISpeechObjectToken ISpeechObjectToken;
400#ifdef __cplusplus
401interface ISpeechObjectToken;
402#endif /* __cplusplus */
403#endif
404
405#ifndef __ISpeechObjectTokens_FWD_DEFINED__
406#define __ISpeechObjectTokens_FWD_DEFINED__
407typedef interface ISpeechObjectTokens ISpeechObjectTokens;
408#ifdef __cplusplus
409interface ISpeechObjectTokens;
410#endif /* __cplusplus */
411#endif
412
413#ifndef __ISpeechObjectTokenCategory_FWD_DEFINED__
414#define __ISpeechObjectTokenCategory_FWD_DEFINED__
415typedef interface ISpeechObjectTokenCategory ISpeechObjectTokenCategory;
416#ifdef __cplusplus
417interface ISpeechObjectTokenCategory;
418#endif /* __cplusplus */
419#endif
420
421#ifndef __ISpeechAudioFormat_FWD_DEFINED__
422#define __ISpeechAudioFormat_FWD_DEFINED__
423typedef interface ISpeechAudioFormat ISpeechAudioFormat;
424#ifdef __cplusplus
425interface ISpeechAudioFormat;
426#endif /* __cplusplus */
427#endif
428
429#ifndef __ISpeechBaseStream_FWD_DEFINED__
430#define __ISpeechBaseStream_FWD_DEFINED__
431typedef interface ISpeechBaseStream ISpeechBaseStream;
432#ifdef __cplusplus
433interface ISpeechBaseStream;
434#endif /* __cplusplus */
435#endif
436
437#ifndef __ISpeechAudio_FWD_DEFINED__
438#define __ISpeechAudio_FWD_DEFINED__
439typedef interface ISpeechAudio ISpeechAudio;
440#ifdef __cplusplus
441interface ISpeechAudio;
442#endif /* __cplusplus */
443#endif
444
445#ifndef __ISpeechMMSysAudio_FWD_DEFINED__
446#define __ISpeechMMSysAudio_FWD_DEFINED__
447typedef interface ISpeechMMSysAudio ISpeechMMSysAudio;
448#ifdef __cplusplus
449interface ISpeechMMSysAudio;
450#endif /* __cplusplus */
451#endif
452
453#ifndef __ISpeechFileStream_FWD_DEFINED__
454#define __ISpeechFileStream_FWD_DEFINED__
455typedef interface ISpeechFileStream ISpeechFileStream;
456#ifdef __cplusplus
457interface ISpeechFileStream;
458#endif /* __cplusplus */
459#endif
460
461#ifndef __ISpeechCustomStream_FWD_DEFINED__
462#define __ISpeechCustomStream_FWD_DEFINED__
463typedef interface ISpeechCustomStream ISpeechCustomStream;
464#ifdef __cplusplus
465interface ISpeechCustomStream;
466#endif /* __cplusplus */
467#endif
468
469#ifndef __ISpeechMemoryStream_FWD_DEFINED__
470#define __ISpeechMemoryStream_FWD_DEFINED__
471typedef interface ISpeechMemoryStream ISpeechMemoryStream;
472#ifdef __cplusplus
473interface ISpeechMemoryStream;
474#endif /* __cplusplus */
475#endif
476
477#ifndef __ISpeechAudioStatus_FWD_DEFINED__
478#define __ISpeechAudioStatus_FWD_DEFINED__
479typedef interface ISpeechAudioStatus ISpeechAudioStatus;
480#ifdef __cplusplus
481interface ISpeechAudioStatus;
482#endif /* __cplusplus */
483#endif
484
485#ifndef __ISpeechAudioBufferInfo_FWD_DEFINED__
486#define __ISpeechAudioBufferInfo_FWD_DEFINED__
487typedef interface ISpeechAudioBufferInfo ISpeechAudioBufferInfo;
488#ifdef __cplusplus
489interface ISpeechAudioBufferInfo;
490#endif /* __cplusplus */
491#endif
492
493#ifndef __ISpeechWaveFormatEx_FWD_DEFINED__
494#define __ISpeechWaveFormatEx_FWD_DEFINED__
495typedef interface ISpeechWaveFormatEx ISpeechWaveFormatEx;
496#ifdef __cplusplus
497interface ISpeechWaveFormatEx;
498#endif /* __cplusplus */
499#endif
500
501#ifndef __ISpeechVoice_FWD_DEFINED__
502#define __ISpeechVoice_FWD_DEFINED__
503typedef interface ISpeechVoice ISpeechVoice;
504#ifdef __cplusplus
505interface ISpeechVoice;
506#endif /* __cplusplus */
507#endif
508
509#ifndef __ISpeechVoiceStatus_FWD_DEFINED__
510#define __ISpeechVoiceStatus_FWD_DEFINED__
511typedef interface ISpeechVoiceStatus ISpeechVoiceStatus;
512#ifdef __cplusplus
513interface ISpeechVoiceStatus;
514#endif /* __cplusplus */
515#endif
516
517#ifndef ___ISpeechVoiceEvents_FWD_DEFINED__
518#define ___ISpeechVoiceEvents_FWD_DEFINED__
519typedef interface _ISpeechVoiceEvents _ISpeechVoiceEvents;
520#ifdef __cplusplus
521interface _ISpeechVoiceEvents;
522#endif /* __cplusplus */
523#endif
524
525#ifndef __ISpeechRecognizer_FWD_DEFINED__
526#define __ISpeechRecognizer_FWD_DEFINED__
527typedef interface ISpeechRecognizer ISpeechRecognizer;
528#ifdef __cplusplus
529interface ISpeechRecognizer;
530#endif /* __cplusplus */
531#endif
532
533#ifndef __ISpeechRecognizerStatus_FWD_DEFINED__
534#define __ISpeechRecognizerStatus_FWD_DEFINED__
535typedef interface ISpeechRecognizerStatus ISpeechRecognizerStatus;
536#ifdef __cplusplus
537interface ISpeechRecognizerStatus;
538#endif /* __cplusplus */
539#endif
540
541#ifndef __ISpeechRecoContext_FWD_DEFINED__
542#define __ISpeechRecoContext_FWD_DEFINED__
543typedef interface ISpeechRecoContext ISpeechRecoContext;
544#ifdef __cplusplus
545interface ISpeechRecoContext;
546#endif /* __cplusplus */
547#endif
548
549#ifndef __ISpeechRecoGrammar_FWD_DEFINED__
550#define __ISpeechRecoGrammar_FWD_DEFINED__
551typedef interface ISpeechRecoGrammar ISpeechRecoGrammar;
552#ifdef __cplusplus
553interface ISpeechRecoGrammar;
554#endif /* __cplusplus */
555#endif
556
557#ifndef ___ISpeechRecoContextEvents_FWD_DEFINED__
558#define ___ISpeechRecoContextEvents_FWD_DEFINED__
559typedef interface _ISpeechRecoContextEvents _ISpeechRecoContextEvents;
560#ifdef __cplusplus
561interface _ISpeechRecoContextEvents;
562#endif /* __cplusplus */
563#endif
564
565#ifndef __ISpeechGrammarRule_FWD_DEFINED__
566#define __ISpeechGrammarRule_FWD_DEFINED__
567typedef interface ISpeechGrammarRule ISpeechGrammarRule;
568#ifdef __cplusplus
569interface ISpeechGrammarRule;
570#endif /* __cplusplus */
571#endif
572
573#ifndef __ISpeechGrammarRules_FWD_DEFINED__
574#define __ISpeechGrammarRules_FWD_DEFINED__
575typedef interface ISpeechGrammarRules ISpeechGrammarRules;
576#ifdef __cplusplus
577interface ISpeechGrammarRules;
578#endif /* __cplusplus */
579#endif
580
581#ifndef __ISpeechGrammarRuleState_FWD_DEFINED__
582#define __ISpeechGrammarRuleState_FWD_DEFINED__
583typedef interface ISpeechGrammarRuleState ISpeechGrammarRuleState;
584#ifdef __cplusplus
585interface ISpeechGrammarRuleState;
586#endif /* __cplusplus */
587#endif
588
589#ifndef __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
590#define __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
591typedef interface ISpeechGrammarRuleStateTransitions ISpeechGrammarRuleStateTransitions;
592#ifdef __cplusplus
593interface ISpeechGrammarRuleStateTransitions;
594#endif /* __cplusplus */
595#endif
596
597#ifndef __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
598#define __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
599typedef interface ISpeechGrammarRuleStateTransition ISpeechGrammarRuleStateTransition;
600#ifdef __cplusplus
601interface ISpeechGrammarRuleStateTransition;
602#endif /* __cplusplus */
603#endif
604
605#ifndef __ISpeechTextSelectionInformation_FWD_DEFINED__
606#define __ISpeechTextSelectionInformation_FWD_DEFINED__
607typedef interface ISpeechTextSelectionInformation ISpeechTextSelectionInformation;
608#ifdef __cplusplus
609interface ISpeechTextSelectionInformation;
610#endif /* __cplusplus */
611#endif
612
613#ifndef __ISpeechRecoResult_FWD_DEFINED__
614#define __ISpeechRecoResult_FWD_DEFINED__
615typedef interface ISpeechRecoResult ISpeechRecoResult;
616#ifdef __cplusplus
617interface ISpeechRecoResult;
618#endif /* __cplusplus */
619#endif
620
621#ifndef __ISpeechXMLRecoResult_FWD_DEFINED__
622#define __ISpeechXMLRecoResult_FWD_DEFINED__
623typedef interface ISpeechXMLRecoResult ISpeechXMLRecoResult;
624#ifdef __cplusplus
625interface ISpeechXMLRecoResult;
626#endif /* __cplusplus */
627#endif
628
629#ifndef __ISpeechRecoResult2_FWD_DEFINED__
630#define __ISpeechRecoResult2_FWD_DEFINED__
631typedef interface ISpeechRecoResult2 ISpeechRecoResult2;
632#ifdef __cplusplus
633interface ISpeechRecoResult2;
634#endif /* __cplusplus */
635#endif
636
637#ifndef __ISpeechRecoResultDispatch_FWD_DEFINED__
638#define __ISpeechRecoResultDispatch_FWD_DEFINED__
639typedef interface ISpeechRecoResultDispatch ISpeechRecoResultDispatch;
640#ifdef __cplusplus
641interface ISpeechRecoResultDispatch;
642#endif /* __cplusplus */
643#endif
644
645#ifndef __ISpeechPhraseInfoBuilder_FWD_DEFINED__
646#define __ISpeechPhraseInfoBuilder_FWD_DEFINED__
647typedef interface ISpeechPhraseInfoBuilder ISpeechPhraseInfoBuilder;
648#ifdef __cplusplus
649interface ISpeechPhraseInfoBuilder;
650#endif /* __cplusplus */
651#endif
652
653#ifndef __ISpeechRecoResultTimes_FWD_DEFINED__
654#define __ISpeechRecoResultTimes_FWD_DEFINED__
655typedef interface ISpeechRecoResultTimes ISpeechRecoResultTimes;
656#ifdef __cplusplus
657interface ISpeechRecoResultTimes;
658#endif /* __cplusplus */
659#endif
660
661#ifndef __ISpeechPhraseAlternate_FWD_DEFINED__
662#define __ISpeechPhraseAlternate_FWD_DEFINED__
663typedef interface ISpeechPhraseAlternate ISpeechPhraseAlternate;
664#ifdef __cplusplus
665interface ISpeechPhraseAlternate;
666#endif /* __cplusplus */
667#endif
668
669#ifndef __ISpeechPhraseAlternates_FWD_DEFINED__
670#define __ISpeechPhraseAlternates_FWD_DEFINED__
671typedef interface ISpeechPhraseAlternates ISpeechPhraseAlternates;
672#ifdef __cplusplus
673interface ISpeechPhraseAlternates;
674#endif /* __cplusplus */
675#endif
676
677#ifndef __ISpeechPhraseInfo_FWD_DEFINED__
678#define __ISpeechPhraseInfo_FWD_DEFINED__
679typedef interface ISpeechPhraseInfo ISpeechPhraseInfo;
680#ifdef __cplusplus
681interface ISpeechPhraseInfo;
682#endif /* __cplusplus */
683#endif
684
685#ifndef __ISpeechPhraseElement_FWD_DEFINED__
686#define __ISpeechPhraseElement_FWD_DEFINED__
687typedef interface ISpeechPhraseElement ISpeechPhraseElement;
688#ifdef __cplusplus
689interface ISpeechPhraseElement;
690#endif /* __cplusplus */
691#endif
692
693#ifndef __ISpeechPhraseElements_FWD_DEFINED__
694#define __ISpeechPhraseElements_FWD_DEFINED__
695typedef interface ISpeechPhraseElements ISpeechPhraseElements;
696#ifdef __cplusplus
697interface ISpeechPhraseElements;
698#endif /* __cplusplus */
699#endif
700
701#ifndef __ISpeechPhraseReplacement_FWD_DEFINED__
702#define __ISpeechPhraseReplacement_FWD_DEFINED__
703typedef interface ISpeechPhraseReplacement ISpeechPhraseReplacement;
704#ifdef __cplusplus
705interface ISpeechPhraseReplacement;
706#endif /* __cplusplus */
707#endif
708
709#ifndef __ISpeechPhraseReplacements_FWD_DEFINED__
710#define __ISpeechPhraseReplacements_FWD_DEFINED__
711typedef interface ISpeechPhraseReplacements ISpeechPhraseReplacements;
712#ifdef __cplusplus
713interface ISpeechPhraseReplacements;
714#endif /* __cplusplus */
715#endif
716
717#ifndef __ISpeechPhraseProperty_FWD_DEFINED__
718#define __ISpeechPhraseProperty_FWD_DEFINED__
719typedef interface ISpeechPhraseProperty ISpeechPhraseProperty;
720#ifdef __cplusplus
721interface ISpeechPhraseProperty;
722#endif /* __cplusplus */
723#endif
724
725#ifndef __ISpeechPhraseProperties_FWD_DEFINED__
726#define __ISpeechPhraseProperties_FWD_DEFINED__
727typedef interface ISpeechPhraseProperties ISpeechPhraseProperties;
728#ifdef __cplusplus
729interface ISpeechPhraseProperties;
730#endif /* __cplusplus */
731#endif
732
733#ifndef __ISpeechPhraseRule_FWD_DEFINED__
734#define __ISpeechPhraseRule_FWD_DEFINED__
735typedef interface ISpeechPhraseRule ISpeechPhraseRule;
736#ifdef __cplusplus
737interface ISpeechPhraseRule;
738#endif /* __cplusplus */
739#endif
740
741#ifndef __ISpeechPhraseRules_FWD_DEFINED__
742#define __ISpeechPhraseRules_FWD_DEFINED__
743typedef interface ISpeechPhraseRules ISpeechPhraseRules;
744#ifdef __cplusplus
745interface ISpeechPhraseRules;
746#endif /* __cplusplus */
747#endif
748
749#ifndef __ISpeechLexiconWords_FWD_DEFINED__
750#define __ISpeechLexiconWords_FWD_DEFINED__
751typedef interface ISpeechLexiconWords ISpeechLexiconWords;
752#ifdef __cplusplus
753interface ISpeechLexiconWords;
754#endif /* __cplusplus */
755#endif
756
757#ifndef __ISpeechLexicon_FWD_DEFINED__
758#define __ISpeechLexicon_FWD_DEFINED__
759typedef interface ISpeechLexicon ISpeechLexicon;
760#ifdef __cplusplus
761interface ISpeechLexicon;
762#endif /* __cplusplus */
763#endif
764
765#ifndef __ISpeechLexiconWord_FWD_DEFINED__
766#define __ISpeechLexiconWord_FWD_DEFINED__
767typedef interface ISpeechLexiconWord ISpeechLexiconWord;
768#ifdef __cplusplus
769interface ISpeechLexiconWord;
770#endif /* __cplusplus */
771#endif
772
773#ifndef __ISpeechLexiconPronunciations_FWD_DEFINED__
774#define __ISpeechLexiconPronunciations_FWD_DEFINED__
775typedef interface ISpeechLexiconPronunciations ISpeechLexiconPronunciations;
776#ifdef __cplusplus
777interface ISpeechLexiconPronunciations;
778#endif /* __cplusplus */
779#endif
780
781#ifndef __ISpeechLexiconPronunciation_FWD_DEFINED__
782#define __ISpeechLexiconPronunciation_FWD_DEFINED__
783typedef interface ISpeechLexiconPronunciation ISpeechLexiconPronunciation;
784#ifdef __cplusplus
785interface ISpeechLexiconPronunciation;
786#endif /* __cplusplus */
787#endif
788
789#ifndef __ISpeechPhoneConverter_FWD_DEFINED__
790#define __ISpeechPhoneConverter_FWD_DEFINED__
791typedef interface ISpeechPhoneConverter ISpeechPhoneConverter;
792#ifdef __cplusplus
793interface ISpeechPhoneConverter;
794#endif /* __cplusplus */
795#endif
796
797#ifndef __SpNotifyTranslator_FWD_DEFINED__
798#define __SpNotifyTranslator_FWD_DEFINED__
799#ifdef __cplusplus
800typedef class SpNotifyTranslator SpNotifyTranslator;
801#else
802typedef struct SpNotifyTranslator SpNotifyTranslator;
803#endif /* defined __cplusplus */
804#endif /* defined __SpNotifyTranslator_FWD_DEFINED__ */
805
806#ifndef __SpObjectTokenCategory_FWD_DEFINED__
807#define __SpObjectTokenCategory_FWD_DEFINED__
808#ifdef __cplusplus
809typedef class SpObjectTokenCategory SpObjectTokenCategory;
810#else
811typedef struct SpObjectTokenCategory SpObjectTokenCategory;
812#endif /* defined __cplusplus */
813#endif /* defined __SpObjectTokenCategory_FWD_DEFINED__ */
814
815#ifndef __SpObjectToken_FWD_DEFINED__
816#define __SpObjectToken_FWD_DEFINED__
817#ifdef __cplusplus
818typedef class SpObjectToken SpObjectToken;
819#else
820typedef struct SpObjectToken SpObjectToken;
821#endif /* defined __cplusplus */
822#endif /* defined __SpObjectToken_FWD_DEFINED__ */
823
824#ifndef __SpResourceManager_FWD_DEFINED__
825#define __SpResourceManager_FWD_DEFINED__
826#ifdef __cplusplus
827typedef class SpResourceManager SpResourceManager;
828#else
829typedef struct SpResourceManager SpResourceManager;
830#endif /* defined __cplusplus */
831#endif /* defined __SpResourceManager_FWD_DEFINED__ */
832
833#ifndef __SpStreamFormatConverter_FWD_DEFINED__
834#define __SpStreamFormatConverter_FWD_DEFINED__
835#ifdef __cplusplus
836typedef class SpStreamFormatConverter SpStreamFormatConverter;
837#else
838typedef struct SpStreamFormatConverter SpStreamFormatConverter;
839#endif /* defined __cplusplus */
840#endif /* defined __SpStreamFormatConverter_FWD_DEFINED__ */
841
842#ifndef __SpMMAudioEnum_FWD_DEFINED__
843#define __SpMMAudioEnum_FWD_DEFINED__
844#ifdef __cplusplus
845typedef class SpMMAudioEnum SpMMAudioEnum;
846#else
847typedef struct SpMMAudioEnum SpMMAudioEnum;
848#endif /* defined __cplusplus */
849#endif /* defined __SpMMAudioEnum_FWD_DEFINED__ */
850
851#ifndef __SpMMAudioIn_FWD_DEFINED__
852#define __SpMMAudioIn_FWD_DEFINED__
853#ifdef __cplusplus
854typedef class SpMMAudioIn SpMMAudioIn;
855#else
856typedef struct SpMMAudioIn SpMMAudioIn;
857#endif /* defined __cplusplus */
858#endif /* defined __SpMMAudioIn_FWD_DEFINED__ */
859
860#ifndef __SpMMAudioOut_FWD_DEFINED__
861#define __SpMMAudioOut_FWD_DEFINED__
862#ifdef __cplusplus
863typedef class SpMMAudioOut SpMMAudioOut;
864#else
865typedef struct SpMMAudioOut SpMMAudioOut;
866#endif /* defined __cplusplus */
867#endif /* defined __SpMMAudioOut_FWD_DEFINED__ */
868
869#ifndef __SpStream_FWD_DEFINED__
870#define __SpStream_FWD_DEFINED__
871#ifdef __cplusplus
872typedef class SpStream SpStream;
873#else
874typedef struct SpStream SpStream;
875#endif /* defined __cplusplus */
876#endif /* defined __SpStream_FWD_DEFINED__ */
877
878#ifndef __SpVoice_FWD_DEFINED__
879#define __SpVoice_FWD_DEFINED__
880#ifdef __cplusplus
881typedef class SpVoice SpVoice;
882#else
883typedef struct SpVoice SpVoice;
884#endif /* defined __cplusplus */
885#endif /* defined __SpVoice_FWD_DEFINED__ */
886
887#ifndef __SpSharedRecoContext_FWD_DEFINED__
888#define __SpSharedRecoContext_FWD_DEFINED__
889#ifdef __cplusplus
890typedef class SpSharedRecoContext SpSharedRecoContext;
891#else
892typedef struct SpSharedRecoContext SpSharedRecoContext;
893#endif /* defined __cplusplus */
894#endif /* defined __SpSharedRecoContext_FWD_DEFINED__ */
895
896#ifndef __SpInprocRecognizer_FWD_DEFINED__
897#define __SpInprocRecognizer_FWD_DEFINED__
898#ifdef __cplusplus
899typedef class SpInprocRecognizer SpInprocRecognizer;
900#else
901typedef struct SpInprocRecognizer SpInprocRecognizer;
902#endif /* defined __cplusplus */
903#endif /* defined __SpInprocRecognizer_FWD_DEFINED__ */
904
905#ifndef __SpSharedRecognizer_FWD_DEFINED__
906#define __SpSharedRecognizer_FWD_DEFINED__
907#ifdef __cplusplus
908typedef class SpSharedRecognizer SpSharedRecognizer;
909#else
910typedef struct SpSharedRecognizer SpSharedRecognizer;
911#endif /* defined __cplusplus */
912#endif /* defined __SpSharedRecognizer_FWD_DEFINED__ */
913
914#ifndef __SpLexicon_FWD_DEFINED__
915#define __SpLexicon_FWD_DEFINED__
916#ifdef __cplusplus
917typedef class SpLexicon SpLexicon;
918#else
919typedef struct SpLexicon SpLexicon;
920#endif /* defined __cplusplus */
921#endif /* defined __SpLexicon_FWD_DEFINED__ */
922
923#ifndef __SpUnCompressedLexicon_FWD_DEFINED__
924#define __SpUnCompressedLexicon_FWD_DEFINED__
925#ifdef __cplusplus
926typedef class SpUnCompressedLexicon SpUnCompressedLexicon;
927#else
928typedef struct SpUnCompressedLexicon SpUnCompressedLexicon;
929#endif /* defined __cplusplus */
930#endif /* defined __SpUnCompressedLexicon_FWD_DEFINED__ */
931
932#ifndef __SpCompressedLexicon_FWD_DEFINED__
933#define __SpCompressedLexicon_FWD_DEFINED__
934#ifdef __cplusplus
935typedef class SpCompressedLexicon SpCompressedLexicon;
936#else
937typedef struct SpCompressedLexicon SpCompressedLexicon;
938#endif /* defined __cplusplus */
939#endif /* defined __SpCompressedLexicon_FWD_DEFINED__ */
940
941#ifndef __SpShortcut_FWD_DEFINED__
942#define __SpShortcut_FWD_DEFINED__
943#ifdef __cplusplus
944typedef class SpShortcut SpShortcut;
945#else
946typedef struct SpShortcut SpShortcut;
947#endif /* defined __cplusplus */
948#endif /* defined __SpShortcut_FWD_DEFINED__ */
949
950#ifndef __SpPhoneConverter_FWD_DEFINED__
951#define __SpPhoneConverter_FWD_DEFINED__
952#ifdef __cplusplus
953typedef class SpPhoneConverter SpPhoneConverter;
954#else
955typedef struct SpPhoneConverter SpPhoneConverter;
956#endif /* defined __cplusplus */
957#endif /* defined __SpPhoneConverter_FWD_DEFINED__ */
958
959#ifndef __SpPhoneticAlphabetConverter_FWD_DEFINED__
960#define __SpPhoneticAlphabetConverter_FWD_DEFINED__
961#ifdef __cplusplus
962typedef class SpPhoneticAlphabetConverter SpPhoneticAlphabetConverter;
963#else
964typedef struct SpPhoneticAlphabetConverter SpPhoneticAlphabetConverter;
965#endif /* defined __cplusplus */
966#endif /* defined __SpPhoneticAlphabetConverter_FWD_DEFINED__ */
967
968#ifndef __SpNullPhoneConverter_FWD_DEFINED__
969#define __SpNullPhoneConverter_FWD_DEFINED__
970#ifdef __cplusplus
971typedef class SpNullPhoneConverter SpNullPhoneConverter;
972#else
973typedef struct SpNullPhoneConverter SpNullPhoneConverter;
974#endif /* defined __cplusplus */
975#endif /* defined __SpNullPhoneConverter_FWD_DEFINED__ */
976
977#ifndef __SpTextSelectionInformation_FWD_DEFINED__
978#define __SpTextSelectionInformation_FWD_DEFINED__
979#ifdef __cplusplus
980typedef class SpTextSelectionInformation SpTextSelectionInformation;
981#else
982typedef struct SpTextSelectionInformation SpTextSelectionInformation;
983#endif /* defined __cplusplus */
984#endif /* defined __SpTextSelectionInformation_FWD_DEFINED__ */
985
986#ifndef __SpPhraseInfoBuilder_FWD_DEFINED__
987#define __SpPhraseInfoBuilder_FWD_DEFINED__
988#ifdef __cplusplus
989typedef class SpPhraseInfoBuilder SpPhraseInfoBuilder;
990#else
991typedef struct SpPhraseInfoBuilder SpPhraseInfoBuilder;
992#endif /* defined __cplusplus */
993#endif /* defined __SpPhraseInfoBuilder_FWD_DEFINED__ */
994
995#ifndef __SpAudioFormat_FWD_DEFINED__
996#define __SpAudioFormat_FWD_DEFINED__
997#ifdef __cplusplus
998typedef class SpAudioFormat SpAudioFormat;
999#else
1000typedef struct SpAudioFormat SpAudioFormat;
1001#endif /* defined __cplusplus */
1002#endif /* defined __SpAudioFormat_FWD_DEFINED__ */
1003
1004#ifndef __SpWaveFormatEx_FWD_DEFINED__
1005#define __SpWaveFormatEx_FWD_DEFINED__
1006#ifdef __cplusplus
1007typedef class SpWaveFormatEx SpWaveFormatEx;
1008#else
1009typedef struct SpWaveFormatEx SpWaveFormatEx;
1010#endif /* defined __cplusplus */
1011#endif /* defined __SpWaveFormatEx_FWD_DEFINED__ */
1012
1013#ifndef __SpInProcRecoContext_FWD_DEFINED__
1014#define __SpInProcRecoContext_FWD_DEFINED__
1015#ifdef __cplusplus
1016typedef class SpInProcRecoContext SpInProcRecoContext;
1017#else
1018typedef struct SpInProcRecoContext SpInProcRecoContext;
1019#endif /* defined __cplusplus */
1020#endif /* defined __SpInProcRecoContext_FWD_DEFINED__ */
1021
1022#ifndef __SpCustomStream_FWD_DEFINED__
1023#define __SpCustomStream_FWD_DEFINED__
1024#ifdef __cplusplus
1025typedef class SpCustomStream SpCustomStream;
1026#else
1027typedef struct SpCustomStream SpCustomStream;
1028#endif /* defined __cplusplus */
1029#endif /* defined __SpCustomStream_FWD_DEFINED__ */
1030
1031#ifndef __SpFileStream_FWD_DEFINED__
1032#define __SpFileStream_FWD_DEFINED__
1033#ifdef __cplusplus
1034typedef class SpFileStream SpFileStream;
1035#else
1036typedef struct SpFileStream SpFileStream;
1037#endif /* defined __cplusplus */
1038#endif /* defined __SpFileStream_FWD_DEFINED__ */
1039
1040#ifndef __SpMemoryStream_FWD_DEFINED__
1041#define __SpMemoryStream_FWD_DEFINED__
1042#ifdef __cplusplus
1043typedef class SpMemoryStream SpMemoryStream;
1044#else
1045typedef struct SpMemoryStream SpMemoryStream;
1046#endif /* defined __cplusplus */
1047#endif /* defined __SpMemoryStream_FWD_DEFINED__ */
1048
1049/* Headers for imported files */
1050
1051#include <oaidl.h>
1052#include <ocidl.h>
1053
1054#ifdef __cplusplus
1055extern "C" {
1056#endif
1057
1058#ifndef _SAPI_VER
1059#error "you have to include <sapi.h> header before this."
1060#endif
1061#if 0
1062typedef struct WAVEFORMATEX {
1063 WORD wFormatTag;
1064 WORD nChannels;
1065 DWORD nSamplesPerSec;
1066 DWORD nAvgBytesPerSec;
1067 WORD nBlockAlign;
1068 WORD wBitsPerSample;
1069 WORD cbSize;
1070} WAVEFORMATEX;
1071#endif
1072#ifndef __ISpNotifySource_FWD_DEFINED__
1073#define __ISpNotifySource_FWD_DEFINED__
1074typedef interface ISpNotifySource ISpNotifySource;
1075#ifdef __cplusplus
1076interface ISpNotifySource;
1077#endif /* __cplusplus */
1078#endif
1079
1080#ifndef __ISpNotifySink_FWD_DEFINED__
1081#define __ISpNotifySink_FWD_DEFINED__
1082typedef interface ISpNotifySink ISpNotifySink;
1083#ifdef __cplusplus
1084interface ISpNotifySink;
1085#endif /* __cplusplus */
1086#endif
1087
1088#ifndef __ISpNotifyTranslator_FWD_DEFINED__
1089#define __ISpNotifyTranslator_FWD_DEFINED__
1090typedef interface ISpNotifyTranslator ISpNotifyTranslator;
1091#ifdef __cplusplus
1092interface ISpNotifyTranslator;
1093#endif /* __cplusplus */
1094#endif
1095
1096#ifndef __ISpDataKey_FWD_DEFINED__
1097#define __ISpDataKey_FWD_DEFINED__
1098typedef interface ISpDataKey ISpDataKey;
1099#ifdef __cplusplus
1100interface ISpDataKey;
1101#endif /* __cplusplus */
1102#endif
1103
1104#ifndef __ISpObjectTokenCategory_FWD_DEFINED__
1105#define __ISpObjectTokenCategory_FWD_DEFINED__
1106typedef interface ISpObjectTokenCategory ISpObjectTokenCategory;
1107#ifdef __cplusplus
1108interface ISpObjectTokenCategory;
1109#endif /* __cplusplus */
1110#endif
1111
1112#ifndef __ISpObjectToken_FWD_DEFINED__
1113#define __ISpObjectToken_FWD_DEFINED__
1114typedef interface ISpObjectToken ISpObjectToken;
1115#ifdef __cplusplus
1116interface ISpObjectToken;
1117#endif /* __cplusplus */
1118#endif
1119
1120#ifndef __IEnumSpObjectTokens_FWD_DEFINED__
1121#define __IEnumSpObjectTokens_FWD_DEFINED__
1122typedef interface IEnumSpObjectTokens IEnumSpObjectTokens;
1123#ifdef __cplusplus
1124interface IEnumSpObjectTokens;
1125#endif /* __cplusplus */
1126#endif
1127
1128#ifndef __ISpObjectWithToken_FWD_DEFINED__
1129#define __ISpObjectWithToken_FWD_DEFINED__
1130typedef interface ISpObjectWithToken ISpObjectWithToken;
1131#ifdef __cplusplus
1132interface ISpObjectWithToken;
1133#endif /* __cplusplus */
1134#endif
1135
1136#ifndef __ISpResourceManager_FWD_DEFINED__
1137#define __ISpResourceManager_FWD_DEFINED__
1138typedef interface ISpResourceManager ISpResourceManager;
1139#ifdef __cplusplus
1140interface ISpResourceManager;
1141#endif /* __cplusplus */
1142#endif
1143
1144#ifndef __ISpEventSource_FWD_DEFINED__
1145#define __ISpEventSource_FWD_DEFINED__
1146typedef interface ISpEventSource ISpEventSource;
1147#ifdef __cplusplus
1148interface ISpEventSource;
1149#endif /* __cplusplus */
1150#endif
1151
1152#ifndef __ISpEventSink_FWD_DEFINED__
1153#define __ISpEventSink_FWD_DEFINED__
1154typedef interface ISpEventSink ISpEventSink;
1155#ifdef __cplusplus
1156interface ISpEventSink;
1157#endif /* __cplusplus */
1158#endif
1159
1160#ifndef __ISpStreamFormat_FWD_DEFINED__
1161#define __ISpStreamFormat_FWD_DEFINED__
1162typedef interface ISpStreamFormat ISpStreamFormat;
1163#ifdef __cplusplus
1164interface ISpStreamFormat;
1165#endif /* __cplusplus */
1166#endif
1167
1168#ifndef __ISpStream_FWD_DEFINED__
1169#define __ISpStream_FWD_DEFINED__
1170typedef interface ISpStream ISpStream;
1171#ifdef __cplusplus
1172interface ISpStream;
1173#endif /* __cplusplus */
1174#endif
1175
1176#ifndef __ISpStreamFormatConverter_FWD_DEFINED__
1177#define __ISpStreamFormatConverter_FWD_DEFINED__
1178typedef interface ISpStreamFormatConverter ISpStreamFormatConverter;
1179#ifdef __cplusplus
1180interface ISpStreamFormatConverter;
1181#endif /* __cplusplus */
1182#endif
1183
1184#ifndef __ISpAudio_FWD_DEFINED__
1185#define __ISpAudio_FWD_DEFINED__
1186typedef interface ISpAudio ISpAudio;
1187#ifdef __cplusplus
1188interface ISpAudio;
1189#endif /* __cplusplus */
1190#endif
1191
1192#ifndef __ISpMMSysAudio_FWD_DEFINED__
1193#define __ISpMMSysAudio_FWD_DEFINED__
1194typedef interface ISpMMSysAudio ISpMMSysAudio;
1195#ifdef __cplusplus
1196interface ISpMMSysAudio;
1197#endif /* __cplusplus */
1198#endif
1199
1200#ifndef __ISpTranscript_FWD_DEFINED__
1201#define __ISpTranscript_FWD_DEFINED__
1202typedef interface ISpTranscript ISpTranscript;
1203#ifdef __cplusplus
1204interface ISpTranscript;
1205#endif /* __cplusplus */
1206#endif
1207
1208#ifndef __ISpVoice_FWD_DEFINED__
1209#define __ISpVoice_FWD_DEFINED__
1210typedef interface ISpVoice ISpVoice;
1211#ifdef __cplusplus
1212interface ISpVoice;
1213#endif /* __cplusplus */
1214#endif
1215
1216#ifndef __ISpRecoResult_FWD_DEFINED__
1217#define __ISpRecoResult_FWD_DEFINED__
1218typedef interface ISpRecoResult ISpRecoResult;
1219#ifdef __cplusplus
1220interface ISpRecoResult;
1221#endif /* __cplusplus */
1222#endif
1223
1224#ifndef __ISpRecoContext_FWD_DEFINED__
1225#define __ISpRecoContext_FWD_DEFINED__
1226typedef interface ISpRecoContext ISpRecoContext;
1227#ifdef __cplusplus
1228interface ISpRecoContext;
1229#endif /* __cplusplus */
1230#endif
1231
1232#ifndef __ISpRecognizer_FWD_DEFINED__
1233#define __ISpRecognizer_FWD_DEFINED__
1234typedef interface ISpRecognizer ISpRecognizer;
1235#ifdef __cplusplus
1236interface ISpRecognizer;
1237#endif /* __cplusplus */
1238#endif
1239
1240#ifndef __ISpProperties_FWD_DEFINED__
1241#define __ISpProperties_FWD_DEFINED__
1242typedef interface ISpProperties ISpProperties;
1243#ifdef __cplusplus
1244interface ISpProperties;
1245#endif /* __cplusplus */
1246#endif
1247
1248#ifndef __ISpLexicon_FWD_DEFINED__
1249#define __ISpLexicon_FWD_DEFINED__
1250typedef interface ISpLexicon ISpLexicon;
1251#ifdef __cplusplus
1252interface ISpLexicon;
1253#endif /* __cplusplus */
1254#endif
1255
1256#ifndef __ISpPhoneConverter_FWD_DEFINED__
1257#define __ISpPhoneConverter_FWD_DEFINED__
1258typedef interface ISpPhoneConverter ISpPhoneConverter;
1259#ifdef __cplusplus
1260interface ISpPhoneConverter;
1261#endif /* __cplusplus */
1262#endif
1263
1264#ifndef __ISpPhrase_FWD_DEFINED__
1265#define __ISpPhrase_FWD_DEFINED__
1266typedef interface ISpPhrase ISpPhrase;
1267#ifdef __cplusplus
1268interface ISpPhrase;
1269#endif /* __cplusplus */
1270#endif
1271
1272#ifndef __ISpRecoContext2_FWD_DEFINED__
1273#define __ISpRecoContext2_FWD_DEFINED__
1274typedef interface ISpRecoContext2 ISpRecoContext2;
1275#ifdef __cplusplus
1276interface ISpRecoContext2;
1277#endif /* __cplusplus */
1278#endif
1279
1280#ifndef __ISpRecognizer2_FWD_DEFINED__
1281#define __ISpRecognizer2_FWD_DEFINED__
1282typedef interface ISpRecognizer2 ISpRecognizer2;
1283#ifdef __cplusplus
1284interface ISpRecognizer2;
1285#endif /* __cplusplus */
1286#endif
1287
1288#ifndef __ISpShortcut_FWD_DEFINED__
1289#define __ISpShortcut_FWD_DEFINED__
1290typedef interface ISpShortcut ISpShortcut;
1291#ifdef __cplusplus
1292interface ISpShortcut;
1293#endif /* __cplusplus */
1294#endif
1295
1296#ifndef __ISpPhoneticAlphabetConverter_FWD_DEFINED__
1297#define __ISpPhoneticAlphabetConverter_FWD_DEFINED__
1298typedef interface ISpPhoneticAlphabetConverter ISpPhoneticAlphabetConverter;
1299#ifdef __cplusplus
1300interface ISpPhoneticAlphabetConverter;
1301#endif /* __cplusplus */
1302#endif
1303
1304#ifndef __ISpPhoneticAlphabetSelection_FWD_DEFINED__
1305#define __ISpPhoneticAlphabetSelection_FWD_DEFINED__
1306typedef interface ISpPhoneticAlphabetSelection ISpPhoneticAlphabetSelection;
1307#ifdef __cplusplus
1308interface ISpPhoneticAlphabetSelection;
1309#endif /* __cplusplus */
1310#endif
1311
1312#ifndef __ISpRecoGrammar2_FWD_DEFINED__
1313#define __ISpRecoGrammar2_FWD_DEFINED__
1314typedef interface ISpRecoGrammar2 ISpRecoGrammar2;
1315#ifdef __cplusplus
1316interface ISpRecoGrammar2;
1317#endif /* __cplusplus */
1318#endif
1319
1320#ifndef __ISpeechResourceLoader_FWD_DEFINED__
1321#define __ISpeechResourceLoader_FWD_DEFINED__
1322typedef interface ISpeechResourceLoader ISpeechResourceLoader;
1323#ifdef __cplusplus
1324interface ISpeechResourceLoader;
1325#endif /* __cplusplus */
1326#endif
1327
1328typedef enum SPDATAKEYLOCATION {
1329 SPDKL_DefaultLocation = 0,
1330 SPDKL_CurrentUser = 1,
1331 SPDKL_LocalMachine = 2,
1332 SPDKL_CurrentConfig = 5
1333} SPDATAKEYLOCATION;
1334typedef enum SPSTREAMFORMAT {
1335 SPSF_Default = -1,
1336 SPSF_NoAssignedFormat = 0,
1337 SPSF_Text = 1,
1338 SPSF_NonStandardFormat = 2,
1339 SPSF_ExtendedAudioFormat = 3,
1340 SPSF_8kHz8BitMono = 4,
1341 SPSF_8kHz8BitStereo = 5,
1342 SPSF_8kHz16BitMono = 6,
1343 SPSF_8kHz16BitStereo = 7,
1344 SPSF_11kHz8BitMono = 8,
1345 SPSF_11kHz8BitStereo = 9,
1346 SPSF_11kHz16BitMono = 10,
1347 SPSF_11kHz16BitStereo = 11,
1348 SPSF_12kHz8BitMono = 12,
1349 SPSF_12kHz8BitStereo = 13,
1350 SPSF_12kHz16BitMono = 14,
1351 SPSF_12kHz16BitStereo = 15,
1352 SPSF_16kHz8BitMono = 16,
1353 SPSF_16kHz8BitStereo = 17,
1354 SPSF_16kHz16BitMono = 18,
1355 SPSF_16kHz16BitStereo = 19,
1356 SPSF_22kHz8BitMono = 20,
1357 SPSF_22kHz8BitStereo = 21,
1358 SPSF_22kHz16BitMono = 22,
1359 SPSF_22kHz16BitStereo = 23,
1360 SPSF_24kHz8BitMono = 24,
1361 SPSF_24kHz8BitStereo = 25,
1362 SPSF_24kHz16BitMono = 26,
1363 SPSF_24kHz16BitStereo = 27,
1364 SPSF_32kHz8BitMono = 28,
1365 SPSF_32kHz8BitStereo = 29,
1366 SPSF_32kHz16BitMono = 30,
1367 SPSF_32kHz16BitStereo = 31,
1368 SPSF_44kHz8BitMono = 32,
1369 SPSF_44kHz8BitStereo = 33,
1370 SPSF_44kHz16BitMono = 34,
1371 SPSF_44kHz16BitStereo = 35,
1372 SPSF_48kHz8BitMono = 36,
1373 SPSF_48kHz8BitStereo = 37,
1374 SPSF_48kHz16BitMono = 38,
1375 SPSF_48kHz16BitStereo = 39,
1376 SPSF_TrueSpeech_8kHz1BitMono = 40,
1377 SPSF_CCITT_ALaw_8kHzMono = 41,
1378 SPSF_CCITT_ALaw_8kHzStereo = 42,
1379 SPSF_CCITT_ALaw_11kHzMono = 43,
1380 SPSF_CCITT_ALaw_11kHzStereo = 44,
1381 SPSF_CCITT_ALaw_22kHzMono = 45,
1382 SPSF_CCITT_ALaw_22kHzStereo = 46,
1383 SPSF_CCITT_ALaw_44kHzMono = 47,
1384 SPSF_CCITT_ALaw_44kHzStereo = 48,
1385 SPSF_CCITT_uLaw_8kHzMono = 49,
1386 SPSF_CCITT_uLaw_8kHzStereo = 50,
1387 SPSF_CCITT_uLaw_11kHzMono = 51,
1388 SPSF_CCITT_uLaw_11kHzStereo = 52,
1389 SPSF_CCITT_uLaw_22kHzMono = 53,
1390 SPSF_CCITT_uLaw_22kHzStereo = 54,
1391 SPSF_CCITT_uLaw_44kHzMono = 55,
1392 SPSF_CCITT_uLaw_44kHzStereo = 56,
1393 SPSF_ADPCM_8kHzMono = 57,
1394 SPSF_ADPCM_8kHzStereo = 58,
1395 SPSF_ADPCM_11kHzMono = 59,
1396 SPSF_ADPCM_11kHzStereo = 60,
1397 SPSF_ADPCM_22kHzMono = 61,
1398 SPSF_ADPCM_22kHzStereo = 62,
1399 SPSF_ADPCM_44kHzMono = 63,
1400 SPSF_ADPCM_44kHzStereo = 64,
1401 SPSF_GSM610_8kHzMono = 65,
1402 SPSF_GSM610_11kHzMono = 66,
1403 SPSF_GSM610_22kHzMono = 67,
1404 SPSF_GSM610_44kHzMono = 68,
1405 SPSF_NUM_FORMATS = 69
1406} SPSTREAMFORMAT;
1407typedef enum SPEVENTLPARAMTYPE {
1408 SPET_LPARAM_IS_UNDEFINED = 0,
1409 SPET_LPARAM_IS_TOKEN = 1,
1410 SPET_LPARAM_IS_OBJECT = 2,
1411 SPET_LPARAM_IS_POINTER = 3,
1412 SPET_LPARAM_IS_STRING = 4
1413} SPEVENTLPARAMTYPE;
1414typedef enum SPEVENTENUM {
1415 SPEI_UNDEFINED = 0,
1416 SPEI_START_INPUT_STREAM = 1,
1417 SPEI_END_INPUT_STREAM = 2,
1418 SPEI_VOICE_CHANGE = 3,
1419 SPEI_TTS_BOOKMARK = 4,
1420 SPEI_WORD_BOUNDARY = 5,
1421 SPEI_PHONEME = 6,
1422 SPEI_SENTENCE_BOUNDARY = 7,
1423 SPEI_VISEME = 8,
1424 SPEI_TTS_AUDIO_LEVEL = 9,
1425 SPEI_TTS_PRIVATE = 15,
1426 SPEI_MIN_TTS = 1,
1427 SPEI_MAX_TTS = 15,
1428 SPEI_END_SR_STREAM = 34,
1429 SPEI_SOUND_START = 35,
1430 SPEI_SOUND_END = 36,
1431 SPEI_PHRASE_START = 37,
1432 SPEI_RECOGNITION = 38,
1433 SPEI_HYPOTHESIS = 39,
1434 SPEI_SR_BOOKMARK = 40,
1435 SPEI_PROPERTY_NUM_CHANGE = 41,
1436 SPEI_PROPERTY_STRING_CHANGE = 42,
1437 SPEI_FALSE_RECOGNITION = 43,
1438 SPEI_INTERFERENCE = 44,
1439 SPEI_REQUEST_UI = 45,
1440 SPEI_RECO_STATE_CHANGE = 46,
1441 SPEI_ADAPTATION = 47,
1442 SPEI_START_SR_STREAM = 48,
1443 SPEI_RECO_OTHER_CONTEXT = 49,
1444 SPEI_SR_AUDIO_LEVEL = 50,
1445 SPEI_SR_RETAINEDAUDIO = 51,
1446 SPEI_SR_PRIVATE = 52,
1447 SPEI_RESERVED4 = 53,
1448 SPEI_RESERVED5 = 54,
1449 SPEI_RESERVED6 = 55,
1450 SPEI_MIN_SR = 34,
1451 SPEI_MAX_SR = 55,
1452 SPEI_RESERVED1 = 30,
1453 SPEI_RESERVED2 = 33,
1454 SPEI_RESERVED3 = 63
1455} SPEVENTENUM;
1456typedef enum SPINTERFERENCE {
1457 SPINTERFERENCE_NONE = 0,
1458 SPINTERFERENCE_NOISE = 1,
1459 SPINTERFERENCE_NOSIGNAL = 2,
1460 SPINTERFERENCE_TOOLOUD = 3,
1461 SPINTERFERENCE_TOOQUIET = 4,
1462 SPINTERFERENCE_TOOFAST = 5,
1463 SPINTERFERENCE_TOOSLOW = 6,
1464 SPINTERFERENCE_LATENCY_WARNING = 7,
1465 SPINTERFERENCE_LATENCY_TRUNCATE_BEGIN = 8,
1466 SPINTERFERENCE_LATENCY_TRUNCATE_END = 9
1467} SPINTERFERENCE;
1468typedef enum SPENDSRSTREAMFLAGS {
1469 SPESF_NONE = 0,
1470 SPESF_STREAM_RELEASED = 1,
1471 SPESF_EMULATED = 2
1472} SPENDSRSTREAMFLAGS;
1473typedef enum SPVFEATURE {
1474 SPVFEATURE_STRESSED = 1,
1475 SPVFEATURE_EMPHASIS = 2
1476} SPVFEATURE;
1477typedef enum SPVISEMES {
1478 SP_VISEME_0 = 0,
1479 SP_VISEME_1 = 1,
1480 SP_VISEME_2 = 2,
1481 SP_VISEME_3 = 3,
1482 SP_VISEME_4 = 4,
1483 SP_VISEME_5 = 5,
1484 SP_VISEME_6 = 6,
1485 SP_VISEME_7 = 7,
1486 SP_VISEME_8 = 8,
1487 SP_VISEME_9 = 9,
1488 SP_VISEME_10 = 10,
1489 SP_VISEME_11 = 11,
1490 SP_VISEME_12 = 12,
1491 SP_VISEME_13 = 13,
1492 SP_VISEME_14 = 14,
1493 SP_VISEME_15 = 15,
1494 SP_VISEME_16 = 16,
1495 SP_VISEME_17 = 17,
1496 SP_VISEME_18 = 18,
1497 SP_VISEME_19 = 19,
1498 SP_VISEME_20 = 20,
1499 SP_VISEME_21 = 21
1500} SPVISEMES;
1501typedef enum SPFILEMODE {
1502 SPFM_OPEN_READONLY = 0,
1503 SPFM_OPEN_READWRITE = 1,
1504 SPFM_CREATE = 2,
1505 SPFM_CREATE_ALWAYS = 3,
1506 SPFM_NUM_MODES = 4
1507} SPFILEMODE;
1508typedef enum _SPAUDIOSTATE {
1509 SPAS_CLOSED = 0,
1510 SPAS_STOP = 1,
1511 SPAS_PAUSE = 2,
1512 SPAS_RUN = 3
1513} SPAUDIOSTATE;
1514typedef enum SPDISPLYATTRIBUTES {
1515 SPAF_ONE_TRAILING_SPACE = 0x2,
1516 SPAF_TWO_TRAILING_SPACES = 0x4,
1517 SPAF_CONSUME_LEADING_SPACES = 0x8,
1518 SPAF_BUFFER_POSITION = 0x10,
1519 SPAF_ALL = 0x1f,
1520 SPAF_USER_SPECIFIED = 0x80
1521} SPDISPLAYATTRIBUTES;
1522typedef enum SPPHRASEPROPERTYUNIONTYPE {
1523 SPPPUT_UNUSED = 0,
1524 SPPPUT_ARRAY_INDEX = 1
1525} SPPHRASEPROPERTYUNIONTYPE;
1526typedef enum SPSEMANTICFORMAT {
1527 SPSMF_SAPI_PROPERTIES = 0,
1528 SPSMF_SRGS_SEMANTICINTERPRETATION_MS = 1,
1529 SPSMF_SRGS_SAPIPROPERTIES = 2,
1530 SPSMF_UPS = 4,
1531 SPSMF_SRGS_SEMANTICINTERPRETATION_W3C = 8
1532} SPSEMANTICFORMAT;
1533typedef enum SPRECOEVENTFLAGS {
1534 SPREF_AutoPause = 0x1,
1535 SPREF_Emulated = 0x2,
1536 SPREF_SMLTimeout = 0x4,
1537 SPREF_ExtendableParse = 0x8,
1538 SPREF_ReSent = 0x10,
1539 SPREF_Hypothesis = 0x20,
1540 SPREF_FalseRecognition = 0x40
1541} SPRECOEVENTFLAGS;
1542typedef enum SPPARTOFSPEECH {
1543 SPPS_NotOverriden = -1,
1544 SPPS_Unknown = 0,
1545 SPPS_Noun = 0x1000,
1546 SPPS_Verb = 0x2000,
1547 SPPS_Modifier = 0x3000,
1548 SPPS_Function = 0x4000,
1549 SPPS_Interjection = 0x5000,
1550 SPPS_Noncontent = 0x6000,
1551 SPPS_LMA = 0x7000,
1552 SPPS_SuppressWord = 0xf000
1553} SPPARTOFSPEECH;
1554typedef enum SPLEXICONTYPE {
1555 eLEXTYPE_USER = 0x1,
1556 eLEXTYPE_APP = 0x2,
1557 eLEXTYPE_VENDORLEXICON = 0x4,
1558 eLEXTYPE_LETTERTOSOUND = 0x8,
1559 eLEXTYPE_MORPHOLOGY = 0x10,
1560 eLEXTYPE_RESERVED4 = 0x20,
1561 eLEXTYPE_USER_SHORTCUT = 0x40,
1562 eLEXTYPE_RESERVED6 = 0x80,
1563 eLEXTYPE_RESERVED7 = 0x100,
1564 eLEXTYPE_RESERVED8 = 0x200,
1565 eLEXTYPE_RESERVED9 = 0x400,
1566 eLEXTYPE_RESERVED10 = 0x800,
1567 eLEXTYPE_PRIVATE1 = 0x1000,
1568 eLEXTYPE_PRIVATE2 = 0x2000,
1569 eLEXTYPE_PRIVATE3 = 0x4000,
1570 eLEXTYPE_PRIVATE4 = 0x8000,
1571 eLEXTYPE_PRIVATE5 = 0x10000,
1572 eLEXTYPE_PRIVATE6 = 0x20000,
1573 eLEXTYPE_PRIVATE7 = 0x40000,
1574 eLEXTYPE_PRIVATE8 = 0x80000,
1575 eLEXTYPE_PRIVATE9 = 0x100000,
1576 eLEXTYPE_PRIVATE10 = 0x200000,
1577 eLEXTYPE_PRIVATE11 = 0x400000,
1578 eLEXTYPE_PRIVATE12 = 0x800000,
1579 eLEXTYPE_PRIVATE13 = 0x1000000,
1580 eLEXTYPE_PRIVATE14 = 0x2000000,
1581 eLEXTYPE_PRIVATE15 = 0x4000000,
1582 eLEXTYPE_PRIVATE16 = 0x8000000,
1583 eLEXTYPE_PRIVATE17 = 0x10000000,
1584 eLEXTYPE_PRIVATE18 = 0x20000000,
1585 eLEXTYPE_PRIVATE19 = 0x40000000,
1586 eLEXTYPE_PRIVATE20 = 0x80000000u
1587} SPLEXICONTYPE;
1588typedef enum SPWORDTYPE {
1589 eWORDTYPE_ADDED = 1,
1590 eWORDTYPE_DELETED = 2
1591} SPWORDTYPE;
1592typedef enum SPPRONUNCIATIONFLAGS {
1593 ePRONFLAG_USED = 1
1594} SPPRONUNCIATIONFLAGS;
1595typedef enum SPSHORTCUTTYPE {
1596 SPSHT_NotOverriden = -1,
1597 SPSHT_Unknown = 0,
1598 SPSHT_EMAIL = 0x1000,
1599 SPSHT_OTHER = 0x2000,
1600 SPPS_RESERVED1 = 0x3000,
1601 SPPS_RESERVED2 = 0x4000,
1602 SPPS_RESERVED3 = 0x5000,
1603 SPPS_RESERVED4 = 0xf000
1604} SPSHORTCUTTYPE;
1605typedef enum SPVALUETYPE {
1606 SPDF_PROPERTY = 0x1,
1607 SPDF_REPLACEMENT = 0x2,
1608 SPDF_RULE = 0x4,
1609 SPDF_DISPLAYTEXT = 0x8,
1610 SPDF_LEXICALFORM = 0x10,
1611 SPDF_PRONUNCIATION = 0x20,
1612 SPDF_AUDIO = 0x40,
1613 SPDF_ALTERNATES = 0x80,
1614 SPDF_ALL = 0xff
1615} SPVALUETYPE;
1616typedef enum SPPHRASERNG {
1617 SPPR_ALL_ELEMENTS = -1
1618} SPPHRASERNG;
1619typedef enum SPVACTIONS {
1620 SPVA_Speak = 0,
1621 SPVA_Silence = 1,
1622 SPVA_Pronounce = 2,
1623 SPVA_Bookmark = 3,
1624 SPVA_SpellOut = 4,
1625 SPVA_Section = 5,
1626 SPVA_ParseUnknownTag = 6
1627} SPVACTIONS;
1628typedef enum SPRUNSTATE {
1629 SPRS_DONE = 1,
1630 SPRS_IS_SPEAKING = 2
1631} SPRUNSTATE;
1632typedef enum SPVLIMITS {
1633 SPMIN_VOLUME = 0,
1634 SPMAX_VOLUME = 100,
1635 SPMIN_RATE = -10,
1636 SPMAX_RATE = 10
1637} SPVLIMITS;
1638typedef enum SPVPRIORITY {
1639 SPVPRI_NORMAL = 0,
1640 SPVPRI_ALERT = 1,
1641 SPVPRI_OVER = 2
1642} SPVPRIORITY;
1643EXTERN_C const GUID SPDFID_Text;
1644EXTERN_C const GUID SPDFID_WaveFormatEx;
1645
1646#define SP_LOW_CONFIDENCE (-1)
1647
1648#define SP_NORMAL_CONFIDENCE (0)
1649
1650#define SP_HIGH_CONFIDENCE (+1)
1651
1652#define DEFAULT_WEIGHT (1)
1653
1654#define SP_MAX_WORD_LENGTH (128)
1655
1656#define SP_MAX_PRON_LENGTH (384)
1657
1658#define SP_EMULATE_RESULT (0x40000000)
1659
1660
1661#ifdef __cplusplus
1662interface ISpNotifyCallback {
1663 virtual HRESULT STDMETHODCALLTYPE NotifyCallback(WPARAM wParam, LPARAM lParam) = 0;
1664};
1665#else
1666typedef void *ISpNotifyCallback;
1667#endif
1668#if 0
1669typedef void *SPNOTIFYCALLBACK;
1670#else
1671typedef void __stdcall SPNOTIFYCALLBACK(WPARAM wParam, LPARAM lParam);
1672#endif
1673/*****************************************************************************
1674 * ISpNotifySource interface
1675 */
1676#ifndef __ISpNotifySource_INTERFACE_DEFINED__
1677#define __ISpNotifySource_INTERFACE_DEFINED__
1678
1679DEFINE_GUID(IID_ISpNotifySource, 0x5eff4aef, 0x8487, 0x11d2, 0x96,0x1c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
1680#if defined(__cplusplus) && !defined(CINTERFACE)
1681MIDL_INTERFACE("5eff4aef-8487-11d2-961c-00c04f8ee628")
1682ISpNotifySource : public IUnknown
1683{
1684 virtual HRESULT STDMETHODCALLTYPE SetNotifySink(
1685 ISpNotifySink *pNotifySink) = 0;
1686
1687 virtual HRESULT STDMETHODCALLTYPE SetNotifyWindowMessage(
1688 HWND hWnd,
1689 UINT Msg,
1690 WPARAM wParam,
1691 LPARAM lParam) = 0;
1692
1693 virtual HRESULT STDMETHODCALLTYPE SetNotifyCallbackFunction(
1694 SPNOTIFYCALLBACK *pfnCallback,
1695 WPARAM wParam,
1696 LPARAM lParam) = 0;
1697
1698 virtual HRESULT STDMETHODCALLTYPE SetNotifyCallbackInterface(
1699 ISpNotifyCallback *pSpCallback,
1700 WPARAM wParam,
1701 LPARAM lParam) = 0;
1702
1703 virtual HRESULT STDMETHODCALLTYPE SetNotifyWin32Event(
1704 ) = 0;
1705
1706 virtual HRESULT STDMETHODCALLTYPE WaitForNotifyEvent(
1707 DWORD dwMilliseconds) = 0;
1708
1709 virtual HANDLE STDMETHODCALLTYPE GetNotifyEventHandle(
1710 ) = 0;
1711
1712};
1713#ifdef __CRT_UUID_DECL
1714__CRT_UUID_DECL(ISpNotifySource, 0x5eff4aef, 0x8487, 0x11d2, 0x96,0x1c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
1715#endif
1716#else
1717typedef struct ISpNotifySourceVtbl {
1718 BEGIN_INTERFACE
1719
1720 /*** IUnknown methods ***/
1721 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1722 ISpNotifySource *This,
1723 REFIID riid,
1724 void **ppvObject);
1725
1726 ULONG (STDMETHODCALLTYPE *AddRef)(
1727 ISpNotifySource *This);
1728
1729 ULONG (STDMETHODCALLTYPE *Release)(
1730 ISpNotifySource *This);
1731
1732 /*** ISpNotifySource methods ***/
1733 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
1734 ISpNotifySource *This,
1735 ISpNotifySink *pNotifySink);
1736
1737 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
1738 ISpNotifySource *This,
1739 HWND hWnd,
1740 UINT Msg,
1741 WPARAM wParam,
1742 LPARAM lParam);
1743
1744 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
1745 ISpNotifySource *This,
1746 SPNOTIFYCALLBACK *pfnCallback,
1747 WPARAM wParam,
1748 LPARAM lParam);
1749
1750 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
1751 ISpNotifySource *This,
1752 ISpNotifyCallback *pSpCallback,
1753 WPARAM wParam,
1754 LPARAM lParam);
1755
1756 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
1757 ISpNotifySource *This);
1758
1759 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
1760 ISpNotifySource *This,
1761 DWORD dwMilliseconds);
1762
1763 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
1764 ISpNotifySource *This);
1765
1766 END_INTERFACE
1767} ISpNotifySourceVtbl;
1768
1769interface ISpNotifySource {
1770 CONST_VTBL ISpNotifySourceVtbl* lpVtbl;
1771};
1772
1773#ifdef COBJMACROS
1774#ifndef WIDL_C_INLINE_WRAPPERS
1775/*** IUnknown methods ***/
1776#define ISpNotifySource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1777#define ISpNotifySource_AddRef(This) (This)->lpVtbl->AddRef(This)
1778#define ISpNotifySource_Release(This) (This)->lpVtbl->Release(This)
1779/*** ISpNotifySource methods ***/
1780#define ISpNotifySource_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
1781#define ISpNotifySource_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
1782#define ISpNotifySource_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
1783#define ISpNotifySource_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
1784#define ISpNotifySource_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
1785#define ISpNotifySource_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
1786#define ISpNotifySource_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
1787#else
1788/*** IUnknown methods ***/
1789static inline HRESULT ISpNotifySource_QueryInterface(ISpNotifySource* This,REFIID riid,void **ppvObject) {
1790 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1791}
1792static inline ULONG ISpNotifySource_AddRef(ISpNotifySource* This) {
1793 return This->lpVtbl->AddRef(This);
1794}
1795static inline ULONG ISpNotifySource_Release(ISpNotifySource* This) {
1796 return This->lpVtbl->Release(This);
1797}
1798/*** ISpNotifySource methods ***/
1799static inline HRESULT ISpNotifySource_SetNotifySink(ISpNotifySource* This,ISpNotifySink *pNotifySink) {
1800 return This->lpVtbl->SetNotifySink(This,pNotifySink);
1801}
1802static inline HRESULT ISpNotifySource_SetNotifyWindowMessage(ISpNotifySource* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
1803 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
1804}
1805static inline HRESULT ISpNotifySource_SetNotifyCallbackFunction(ISpNotifySource* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
1806 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
1807}
1808static inline HRESULT ISpNotifySource_SetNotifyCallbackInterface(ISpNotifySource* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
1809 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
1810}
1811static inline HRESULT ISpNotifySource_SetNotifyWin32Event(ISpNotifySource* This) {
1812 return This->lpVtbl->SetNotifyWin32Event(This);
1813}
1814static inline HRESULT ISpNotifySource_WaitForNotifyEvent(ISpNotifySource* This,DWORD dwMilliseconds) {
1815 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
1816}
1817static inline HANDLE ISpNotifySource_GetNotifyEventHandle(ISpNotifySource* This) {
1818 return This->lpVtbl->GetNotifyEventHandle(This);
1819}
1820#endif
1821#endif
1822
1823#endif
1824
1825
1826#endif /* __ISpNotifySource_INTERFACE_DEFINED__ */
1827
1828/*****************************************************************************
1829 * ISpNotifySink interface
1830 */
1831#ifndef __ISpNotifySink_INTERFACE_DEFINED__
1832#define __ISpNotifySink_INTERFACE_DEFINED__
1833
1834DEFINE_GUID(IID_ISpNotifySink, 0x259684dc, 0x37c3, 0x11d2, 0x96,0x03, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
1835#if defined(__cplusplus) && !defined(CINTERFACE)
1836MIDL_INTERFACE("259684dc-37c3-11d2-9603-00c04f8ee628")
1837ISpNotifySink : public IUnknown
1838{
1839 virtual HRESULT STDMETHODCALLTYPE Notify(
1840 ) = 0;
1841
1842};
1843#ifdef __CRT_UUID_DECL
1844__CRT_UUID_DECL(ISpNotifySink, 0x259684dc, 0x37c3, 0x11d2, 0x96,0x03, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
1845#endif
1846#else
1847typedef struct ISpNotifySinkVtbl {
1848 BEGIN_INTERFACE
1849
1850 /*** IUnknown methods ***/
1851 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1852 ISpNotifySink *This,
1853 REFIID riid,
1854 void **ppvObject);
1855
1856 ULONG (STDMETHODCALLTYPE *AddRef)(
1857 ISpNotifySink *This);
1858
1859 ULONG (STDMETHODCALLTYPE *Release)(
1860 ISpNotifySink *This);
1861
1862 /*** ISpNotifySink methods ***/
1863 HRESULT (STDMETHODCALLTYPE *Notify)(
1864 ISpNotifySink *This);
1865
1866 END_INTERFACE
1867} ISpNotifySinkVtbl;
1868
1869interface ISpNotifySink {
1870 CONST_VTBL ISpNotifySinkVtbl* lpVtbl;
1871};
1872
1873#ifdef COBJMACROS
1874#ifndef WIDL_C_INLINE_WRAPPERS
1875/*** IUnknown methods ***/
1876#define ISpNotifySink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1877#define ISpNotifySink_AddRef(This) (This)->lpVtbl->AddRef(This)
1878#define ISpNotifySink_Release(This) (This)->lpVtbl->Release(This)
1879/*** ISpNotifySink methods ***/
1880#define ISpNotifySink_Notify(This) (This)->lpVtbl->Notify(This)
1881#else
1882/*** IUnknown methods ***/
1883static inline HRESULT ISpNotifySink_QueryInterface(ISpNotifySink* This,REFIID riid,void **ppvObject) {
1884 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1885}
1886static inline ULONG ISpNotifySink_AddRef(ISpNotifySink* This) {
1887 return This->lpVtbl->AddRef(This);
1888}
1889static inline ULONG ISpNotifySink_Release(ISpNotifySink* This) {
1890 return This->lpVtbl->Release(This);
1891}
1892/*** ISpNotifySink methods ***/
1893static inline HRESULT ISpNotifySink_Notify(ISpNotifySink* This) {
1894 return This->lpVtbl->Notify(This);
1895}
1896#endif
1897#endif
1898
1899#endif
1900
1901
1902#endif /* __ISpNotifySink_INTERFACE_DEFINED__ */
1903
1904/*****************************************************************************
1905 * ISpNotifyTranslator interface
1906 */
1907#ifndef __ISpNotifyTranslator_INTERFACE_DEFINED__
1908#define __ISpNotifyTranslator_INTERFACE_DEFINED__
1909
1910DEFINE_GUID(IID_ISpNotifyTranslator, 0xaca16614, 0x5d3d, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
1911#if defined(__cplusplus) && !defined(CINTERFACE)
1912MIDL_INTERFACE("aca16614-5d3d-11d2-960e-00c04f8ee628")
1913ISpNotifyTranslator : public ISpNotifySink
1914{
1915 virtual HRESULT STDMETHODCALLTYPE InitWindowMessage(
1916 HWND hWnd,
1917 UINT Msg,
1918 WPARAM wParam,
1919 LPARAM lParam) = 0;
1920
1921 virtual HRESULT STDMETHODCALLTYPE InitCallback(
1922 SPNOTIFYCALLBACK *pfnCallback,
1923 WPARAM wParam,
1924 LPARAM lParam) = 0;
1925
1926 virtual HRESULT STDMETHODCALLTYPE InitSpNotifyCallback(
1927 ISpNotifyCallback *pSpCallback,
1928 WPARAM wParam,
1929 LPARAM lParam) = 0;
1930
1931 virtual HRESULT STDMETHODCALLTYPE InitWin32Event(
1932 HANDLE hEvent,
1933 WINBOOL fCloseHandleOnRelease) = 0;
1934
1935 virtual HRESULT STDMETHODCALLTYPE Wait(
1936 DWORD dwMilliseconds) = 0;
1937
1938 virtual HANDLE STDMETHODCALLTYPE GetEventHandle(
1939 ) = 0;
1940
1941};
1942#ifdef __CRT_UUID_DECL
1943__CRT_UUID_DECL(ISpNotifyTranslator, 0xaca16614, 0x5d3d, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
1944#endif
1945#else
1946typedef struct ISpNotifyTranslatorVtbl {
1947 BEGIN_INTERFACE
1948
1949 /*** IUnknown methods ***/
1950 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1951 ISpNotifyTranslator *This,
1952 REFIID riid,
1953 void **ppvObject);
1954
1955 ULONG (STDMETHODCALLTYPE *AddRef)(
1956 ISpNotifyTranslator *This);
1957
1958 ULONG (STDMETHODCALLTYPE *Release)(
1959 ISpNotifyTranslator *This);
1960
1961 /*** ISpNotifySink methods ***/
1962 HRESULT (STDMETHODCALLTYPE *Notify)(
1963 ISpNotifyTranslator *This);
1964
1965 /*** ISpNotifyTranslator methods ***/
1966 HRESULT (STDMETHODCALLTYPE *InitWindowMessage)(
1967 ISpNotifyTranslator *This,
1968 HWND hWnd,
1969 UINT Msg,
1970 WPARAM wParam,
1971 LPARAM lParam);
1972
1973 HRESULT (STDMETHODCALLTYPE *InitCallback)(
1974 ISpNotifyTranslator *This,
1975 SPNOTIFYCALLBACK *pfnCallback,
1976 WPARAM wParam,
1977 LPARAM lParam);
1978
1979 HRESULT (STDMETHODCALLTYPE *InitSpNotifyCallback)(
1980 ISpNotifyTranslator *This,
1981 ISpNotifyCallback *pSpCallback,
1982 WPARAM wParam,
1983 LPARAM lParam);
1984
1985 HRESULT (STDMETHODCALLTYPE *InitWin32Event)(
1986 ISpNotifyTranslator *This,
1987 HANDLE hEvent,
1988 WINBOOL fCloseHandleOnRelease);
1989
1990 HRESULT (STDMETHODCALLTYPE *Wait)(
1991 ISpNotifyTranslator *This,
1992 DWORD dwMilliseconds);
1993
1994 HANDLE (STDMETHODCALLTYPE *GetEventHandle)(
1995 ISpNotifyTranslator *This);
1996
1997 END_INTERFACE
1998} ISpNotifyTranslatorVtbl;
1999
2000interface ISpNotifyTranslator {
2001 CONST_VTBL ISpNotifyTranslatorVtbl* lpVtbl;
2002};
2003
2004#ifdef COBJMACROS
2005#ifndef WIDL_C_INLINE_WRAPPERS
2006/*** IUnknown methods ***/
2007#define ISpNotifyTranslator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2008#define ISpNotifyTranslator_AddRef(This) (This)->lpVtbl->AddRef(This)
2009#define ISpNotifyTranslator_Release(This) (This)->lpVtbl->Release(This)
2010/*** ISpNotifySink methods ***/
2011#define ISpNotifyTranslator_Notify(This) (This)->lpVtbl->Notify(This)
2012/*** ISpNotifyTranslator methods ***/
2013#define ISpNotifyTranslator_InitWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->InitWindowMessage(This,hWnd,Msg,wParam,lParam)
2014#define ISpNotifyTranslator_InitCallback(This,pfnCallback,wParam,lParam) (This)->lpVtbl->InitCallback(This,pfnCallback,wParam,lParam)
2015#define ISpNotifyTranslator_InitSpNotifyCallback(This,pSpCallback,wParam,lParam) (This)->lpVtbl->InitSpNotifyCallback(This,pSpCallback,wParam,lParam)
2016#define ISpNotifyTranslator_InitWin32Event(This,hEvent,fCloseHandleOnRelease) (This)->lpVtbl->InitWin32Event(This,hEvent,fCloseHandleOnRelease)
2017#define ISpNotifyTranslator_Wait(This,dwMilliseconds) (This)->lpVtbl->Wait(This,dwMilliseconds)
2018#define ISpNotifyTranslator_GetEventHandle(This) (This)->lpVtbl->GetEventHandle(This)
2019#else
2020/*** IUnknown methods ***/
2021static inline HRESULT ISpNotifyTranslator_QueryInterface(ISpNotifyTranslator* This,REFIID riid,void **ppvObject) {
2022 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2023}
2024static inline ULONG ISpNotifyTranslator_AddRef(ISpNotifyTranslator* This) {
2025 return This->lpVtbl->AddRef(This);
2026}
2027static inline ULONG ISpNotifyTranslator_Release(ISpNotifyTranslator* This) {
2028 return This->lpVtbl->Release(This);
2029}
2030/*** ISpNotifySink methods ***/
2031static inline HRESULT ISpNotifyTranslator_Notify(ISpNotifyTranslator* This) {
2032 return This->lpVtbl->Notify(This);
2033}
2034/*** ISpNotifyTranslator methods ***/
2035static inline HRESULT ISpNotifyTranslator_InitWindowMessage(ISpNotifyTranslator* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
2036 return This->lpVtbl->InitWindowMessage(This,hWnd,Msg,wParam,lParam);
2037}
2038static inline HRESULT ISpNotifyTranslator_InitCallback(ISpNotifyTranslator* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
2039 return This->lpVtbl->InitCallback(This,pfnCallback,wParam,lParam);
2040}
2041static inline HRESULT ISpNotifyTranslator_InitSpNotifyCallback(ISpNotifyTranslator* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
2042 return This->lpVtbl->InitSpNotifyCallback(This,pSpCallback,wParam,lParam);
2043}
2044static inline HRESULT ISpNotifyTranslator_InitWin32Event(ISpNotifyTranslator* This,HANDLE hEvent,WINBOOL fCloseHandleOnRelease) {
2045 return This->lpVtbl->InitWin32Event(This,hEvent,fCloseHandleOnRelease);
2046}
2047static inline HRESULT ISpNotifyTranslator_Wait(ISpNotifyTranslator* This,DWORD dwMilliseconds) {
2048 return This->lpVtbl->Wait(This,dwMilliseconds);
2049}
2050static inline HANDLE ISpNotifyTranslator_GetEventHandle(ISpNotifyTranslator* This) {
2051 return This->lpVtbl->GetEventHandle(This);
2052}
2053#endif
2054#endif
2055
2056#endif
2057
2058
2059#endif /* __ISpNotifyTranslator_INTERFACE_DEFINED__ */
2060
2061/*****************************************************************************
2062 * ISpDataKey interface
2063 */
2064#ifndef __ISpDataKey_INTERFACE_DEFINED__
2065#define __ISpDataKey_INTERFACE_DEFINED__
2066
2067DEFINE_GUID(IID_ISpDataKey, 0x14056581, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
2068#if defined(__cplusplus) && !defined(CINTERFACE)
2069MIDL_INTERFACE("14056581-e16c-11d2-bb90-00c04f8ee6c0")
2070ISpDataKey : public IUnknown
2071{
2072 virtual HRESULT STDMETHODCALLTYPE SetData(
2073 LPCWSTR pszValueName,
2074 ULONG cbData,
2075 const BYTE *pData) = 0;
2076
2077 virtual HRESULT STDMETHODCALLTYPE GetData(
2078 LPCWSTR pszValueName,
2079 ULONG *pcbData,
2080 BYTE *pData) = 0;
2081
2082 virtual HRESULT STDMETHODCALLTYPE SetStringValue(
2083 LPCWSTR pszValueName,
2084 LPCWSTR pszValue) = 0;
2085
2086 virtual HRESULT STDMETHODCALLTYPE GetStringValue(
2087 LPCWSTR pszValueName,
2088 LPWSTR *ppszValue) = 0;
2089
2090 virtual HRESULT STDMETHODCALLTYPE SetDWORD(
2091 LPCWSTR pszValueName,
2092 DWORD dwValue) = 0;
2093
2094 virtual HRESULT STDMETHODCALLTYPE GetDWORD(
2095 LPCWSTR pszValueName,
2096 DWORD *pdwValue) = 0;
2097
2098 virtual HRESULT STDMETHODCALLTYPE OpenKey(
2099 LPCWSTR pszSubKeyName,
2100 ISpDataKey **ppSubKey) = 0;
2101
2102 virtual HRESULT STDMETHODCALLTYPE CreateKey(
2103 LPCWSTR pszSubKey,
2104 ISpDataKey **ppSubKey) = 0;
2105
2106 virtual HRESULT STDMETHODCALLTYPE DeleteKey(
2107 LPCWSTR pszSubKey) = 0;
2108
2109 virtual HRESULT STDMETHODCALLTYPE DeleteValue(
2110 LPCWSTR pszValueName) = 0;
2111
2112 virtual HRESULT STDMETHODCALLTYPE EnumKeys(
2113 ULONG Index,
2114 LPWSTR *ppszSubKeyName) = 0;
2115
2116 virtual HRESULT STDMETHODCALLTYPE EnumValues(
2117 ULONG Index,
2118 LPWSTR *ppszValueName) = 0;
2119
2120};
2121#ifdef __CRT_UUID_DECL
2122__CRT_UUID_DECL(ISpDataKey, 0x14056581, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
2123#endif
2124#else
2125typedef struct ISpDataKeyVtbl {
2126 BEGIN_INTERFACE
2127
2128 /*** IUnknown methods ***/
2129 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2130 ISpDataKey *This,
2131 REFIID riid,
2132 void **ppvObject);
2133
2134 ULONG (STDMETHODCALLTYPE *AddRef)(
2135 ISpDataKey *This);
2136
2137 ULONG (STDMETHODCALLTYPE *Release)(
2138 ISpDataKey *This);
2139
2140 /*** ISpDataKey methods ***/
2141 HRESULT (STDMETHODCALLTYPE *SetData)(
2142 ISpDataKey *This,
2143 LPCWSTR pszValueName,
2144 ULONG cbData,
2145 const BYTE *pData);
2146
2147 HRESULT (STDMETHODCALLTYPE *GetData)(
2148 ISpDataKey *This,
2149 LPCWSTR pszValueName,
2150 ULONG *pcbData,
2151 BYTE *pData);
2152
2153 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
2154 ISpDataKey *This,
2155 LPCWSTR pszValueName,
2156 LPCWSTR pszValue);
2157
2158 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2159 ISpDataKey *This,
2160 LPCWSTR pszValueName,
2161 LPWSTR *ppszValue);
2162
2163 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
2164 ISpDataKey *This,
2165 LPCWSTR pszValueName,
2166 DWORD dwValue);
2167
2168 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
2169 ISpDataKey *This,
2170 LPCWSTR pszValueName,
2171 DWORD *pdwValue);
2172
2173 HRESULT (STDMETHODCALLTYPE *OpenKey)(
2174 ISpDataKey *This,
2175 LPCWSTR pszSubKeyName,
2176 ISpDataKey **ppSubKey);
2177
2178 HRESULT (STDMETHODCALLTYPE *CreateKey)(
2179 ISpDataKey *This,
2180 LPCWSTR pszSubKey,
2181 ISpDataKey **ppSubKey);
2182
2183 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
2184 ISpDataKey *This,
2185 LPCWSTR pszSubKey);
2186
2187 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
2188 ISpDataKey *This,
2189 LPCWSTR pszValueName);
2190
2191 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
2192 ISpDataKey *This,
2193 ULONG Index,
2194 LPWSTR *ppszSubKeyName);
2195
2196 HRESULT (STDMETHODCALLTYPE *EnumValues)(
2197 ISpDataKey *This,
2198 ULONG Index,
2199 LPWSTR *ppszValueName);
2200
2201 END_INTERFACE
2202} ISpDataKeyVtbl;
2203
2204interface ISpDataKey {
2205 CONST_VTBL ISpDataKeyVtbl* lpVtbl;
2206};
2207
2208#ifdef COBJMACROS
2209#ifndef WIDL_C_INLINE_WRAPPERS
2210/*** IUnknown methods ***/
2211#define ISpDataKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2212#define ISpDataKey_AddRef(This) (This)->lpVtbl->AddRef(This)
2213#define ISpDataKey_Release(This) (This)->lpVtbl->Release(This)
2214/*** ISpDataKey methods ***/
2215#define ISpDataKey_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
2216#define ISpDataKey_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
2217#define ISpDataKey_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
2218#define ISpDataKey_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
2219#define ISpDataKey_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
2220#define ISpDataKey_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
2221#define ISpDataKey_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
2222#define ISpDataKey_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
2223#define ISpDataKey_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
2224#define ISpDataKey_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
2225#define ISpDataKey_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
2226#define ISpDataKey_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
2227#else
2228/*** IUnknown methods ***/
2229static inline HRESULT ISpDataKey_QueryInterface(ISpDataKey* This,REFIID riid,void **ppvObject) {
2230 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2231}
2232static inline ULONG ISpDataKey_AddRef(ISpDataKey* This) {
2233 return This->lpVtbl->AddRef(This);
2234}
2235static inline ULONG ISpDataKey_Release(ISpDataKey* This) {
2236 return This->lpVtbl->Release(This);
2237}
2238/*** ISpDataKey methods ***/
2239static inline HRESULT ISpDataKey_SetData(ISpDataKey* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
2240 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
2241}
2242static inline HRESULT ISpDataKey_GetData(ISpDataKey* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
2243 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
2244}
2245static inline HRESULT ISpDataKey_SetStringValue(ISpDataKey* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
2246 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
2247}
2248static inline HRESULT ISpDataKey_GetStringValue(ISpDataKey* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
2249 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
2250}
2251static inline HRESULT ISpDataKey_SetDWORD(ISpDataKey* This,LPCWSTR pszValueName,DWORD dwValue) {
2252 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
2253}
2254static inline HRESULT ISpDataKey_GetDWORD(ISpDataKey* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2255 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2256}
2257static inline HRESULT ISpDataKey_OpenKey(ISpDataKey* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2258 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2259}
2260static inline HRESULT ISpDataKey_CreateKey(ISpDataKey* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2261 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2262}
2263static inline HRESULT ISpDataKey_DeleteKey(ISpDataKey* This,LPCWSTR pszSubKey) {
2264 return This->lpVtbl->DeleteKey(This,pszSubKey);
2265}
2266static inline HRESULT ISpDataKey_DeleteValue(ISpDataKey* This,LPCWSTR pszValueName) {
2267 return This->lpVtbl->DeleteValue(This,pszValueName);
2268}
2269static inline HRESULT ISpDataKey_EnumKeys(ISpDataKey* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2270 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2271}
2272static inline HRESULT ISpDataKey_EnumValues(ISpDataKey* This,ULONG Index,LPWSTR *ppszValueName) {
2273 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2274}
2275#endif
2276#endif
2277
2278#endif
2279
2280
2281#endif /* __ISpDataKey_INTERFACE_DEFINED__ */
2282
2283/*****************************************************************************
2284 * ISpObjectWithToken interface
2285 */
2286#ifndef __ISpObjectWithToken_INTERFACE_DEFINED__
2287#define __ISpObjectWithToken_INTERFACE_DEFINED__
2288
2289DEFINE_GUID(IID_ISpObjectWithToken, 0x5b559f40, 0xe952, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
2290#if defined(__cplusplus) && !defined(CINTERFACE)
2291MIDL_INTERFACE("5b559f40-e952-11d2-bb91-00c04f8ee6c0")
2292ISpObjectWithToken : public IUnknown
2293{
2294 virtual HRESULT STDMETHODCALLTYPE SetObjectToken(
2295 ISpObjectToken *pToken) = 0;
2296
2297 virtual HRESULT STDMETHODCALLTYPE GetObjectToken(
2298 ISpObjectToken **ppToken) = 0;
2299
2300};
2301#ifdef __CRT_UUID_DECL
2302__CRT_UUID_DECL(ISpObjectWithToken, 0x5b559f40, 0xe952, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
2303#endif
2304#else
2305typedef struct ISpObjectWithTokenVtbl {
2306 BEGIN_INTERFACE
2307
2308 /*** IUnknown methods ***/
2309 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2310 ISpObjectWithToken *This,
2311 REFIID riid,
2312 void **ppvObject);
2313
2314 ULONG (STDMETHODCALLTYPE *AddRef)(
2315 ISpObjectWithToken *This);
2316
2317 ULONG (STDMETHODCALLTYPE *Release)(
2318 ISpObjectWithToken *This);
2319
2320 /*** ISpObjectWithToken methods ***/
2321 HRESULT (STDMETHODCALLTYPE *SetObjectToken)(
2322 ISpObjectWithToken *This,
2323 ISpObjectToken *pToken);
2324
2325 HRESULT (STDMETHODCALLTYPE *GetObjectToken)(
2326 ISpObjectWithToken *This,
2327 ISpObjectToken **ppToken);
2328
2329 END_INTERFACE
2330} ISpObjectWithTokenVtbl;
2331
2332interface ISpObjectWithToken {
2333 CONST_VTBL ISpObjectWithTokenVtbl* lpVtbl;
2334};
2335
2336#ifdef COBJMACROS
2337#ifndef WIDL_C_INLINE_WRAPPERS
2338/*** IUnknown methods ***/
2339#define ISpObjectWithToken_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2340#define ISpObjectWithToken_AddRef(This) (This)->lpVtbl->AddRef(This)
2341#define ISpObjectWithToken_Release(This) (This)->lpVtbl->Release(This)
2342/*** ISpObjectWithToken methods ***/
2343#define ISpObjectWithToken_SetObjectToken(This,pToken) (This)->lpVtbl->SetObjectToken(This,pToken)
2344#define ISpObjectWithToken_GetObjectToken(This,ppToken) (This)->lpVtbl->GetObjectToken(This,ppToken)
2345#else
2346/*** IUnknown methods ***/
2347static inline HRESULT ISpObjectWithToken_QueryInterface(ISpObjectWithToken* This,REFIID riid,void **ppvObject) {
2348 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2349}
2350static inline ULONG ISpObjectWithToken_AddRef(ISpObjectWithToken* This) {
2351 return This->lpVtbl->AddRef(This);
2352}
2353static inline ULONG ISpObjectWithToken_Release(ISpObjectWithToken* This) {
2354 return This->lpVtbl->Release(This);
2355}
2356/*** ISpObjectWithToken methods ***/
2357static inline HRESULT ISpObjectWithToken_SetObjectToken(ISpObjectWithToken* This,ISpObjectToken *pToken) {
2358 return This->lpVtbl->SetObjectToken(This,pToken);
2359}
2360static inline HRESULT ISpObjectWithToken_GetObjectToken(ISpObjectWithToken* This,ISpObjectToken **ppToken) {
2361 return This->lpVtbl->GetObjectToken(This,ppToken);
2362}
2363#endif
2364#endif
2365
2366#endif
2367
2368
2369#endif /* __ISpObjectWithToken_INTERFACE_DEFINED__ */
2370
2371/*****************************************************************************
2372 * IEnumSpObjectTokens interface
2373 */
2374#ifndef __IEnumSpObjectTokens_INTERFACE_DEFINED__
2375#define __IEnumSpObjectTokens_INTERFACE_DEFINED__
2376
2377DEFINE_GUID(IID_IEnumSpObjectTokens, 0x06b64f9e, 0x7fda, 0x11d2, 0xb4,0xf2, 0x00,0xc0,0x4f,0x79,0x73,0x96);
2378#if defined(__cplusplus) && !defined(CINTERFACE)
2379MIDL_INTERFACE("06b64f9e-7fda-11d2-b4f2-00c04f797396")
2380IEnumSpObjectTokens : public IUnknown
2381{
2382 virtual HRESULT STDMETHODCALLTYPE Next(
2383 ULONG celt,
2384 ISpObjectToken **pelt,
2385 ULONG *pceltFetched) = 0;
2386
2387 virtual HRESULT STDMETHODCALLTYPE Skip(
2388 ULONG celt) = 0;
2389
2390 virtual HRESULT STDMETHODCALLTYPE Reset(
2391 ) = 0;
2392
2393 virtual HRESULT STDMETHODCALLTYPE Clone(
2394 IEnumSpObjectTokens **ppEnum) = 0;
2395
2396 virtual HRESULT STDMETHODCALLTYPE Item(
2397 ULONG Index,
2398 ISpObjectToken **ppToken) = 0;
2399
2400 virtual HRESULT STDMETHODCALLTYPE GetCount(
2401 ULONG *pCount) = 0;
2402
2403};
2404#ifdef __CRT_UUID_DECL
2405__CRT_UUID_DECL(IEnumSpObjectTokens, 0x06b64f9e, 0x7fda, 0x11d2, 0xb4,0xf2, 0x00,0xc0,0x4f,0x79,0x73,0x96)
2406#endif
2407#else
2408typedef struct IEnumSpObjectTokensVtbl {
2409 BEGIN_INTERFACE
2410
2411 /*** IUnknown methods ***/
2412 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2413 IEnumSpObjectTokens *This,
2414 REFIID riid,
2415 void **ppvObject);
2416
2417 ULONG (STDMETHODCALLTYPE *AddRef)(
2418 IEnumSpObjectTokens *This);
2419
2420 ULONG (STDMETHODCALLTYPE *Release)(
2421 IEnumSpObjectTokens *This);
2422
2423 /*** IEnumSpObjectTokens methods ***/
2424 HRESULT (STDMETHODCALLTYPE *Next)(
2425 IEnumSpObjectTokens *This,
2426 ULONG celt,
2427 ISpObjectToken **pelt,
2428 ULONG *pceltFetched);
2429
2430 HRESULT (STDMETHODCALLTYPE *Skip)(
2431 IEnumSpObjectTokens *This,
2432 ULONG celt);
2433
2434 HRESULT (STDMETHODCALLTYPE *Reset)(
2435 IEnumSpObjectTokens *This);
2436
2437 HRESULT (STDMETHODCALLTYPE *Clone)(
2438 IEnumSpObjectTokens *This,
2439 IEnumSpObjectTokens **ppEnum);
2440
2441 HRESULT (STDMETHODCALLTYPE *Item)(
2442 IEnumSpObjectTokens *This,
2443 ULONG Index,
2444 ISpObjectToken **ppToken);
2445
2446 HRESULT (STDMETHODCALLTYPE *GetCount)(
2447 IEnumSpObjectTokens *This,
2448 ULONG *pCount);
2449
2450 END_INTERFACE
2451} IEnumSpObjectTokensVtbl;
2452
2453interface IEnumSpObjectTokens {
2454 CONST_VTBL IEnumSpObjectTokensVtbl* lpVtbl;
2455};
2456
2457#ifdef COBJMACROS
2458#ifndef WIDL_C_INLINE_WRAPPERS
2459/*** IUnknown methods ***/
2460#define IEnumSpObjectTokens_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2461#define IEnumSpObjectTokens_AddRef(This) (This)->lpVtbl->AddRef(This)
2462#define IEnumSpObjectTokens_Release(This) (This)->lpVtbl->Release(This)
2463/*** IEnumSpObjectTokens methods ***/
2464#define IEnumSpObjectTokens_Next(This,celt,pelt,pceltFetched) (This)->lpVtbl->Next(This,celt,pelt,pceltFetched)
2465#define IEnumSpObjectTokens_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
2466#define IEnumSpObjectTokens_Reset(This) (This)->lpVtbl->Reset(This)
2467#define IEnumSpObjectTokens_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
2468#define IEnumSpObjectTokens_Item(This,Index,ppToken) (This)->lpVtbl->Item(This,Index,ppToken)
2469#define IEnumSpObjectTokens_GetCount(This,pCount) (This)->lpVtbl->GetCount(This,pCount)
2470#else
2471/*** IUnknown methods ***/
2472static inline HRESULT IEnumSpObjectTokens_QueryInterface(IEnumSpObjectTokens* This,REFIID riid,void **ppvObject) {
2473 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2474}
2475static inline ULONG IEnumSpObjectTokens_AddRef(IEnumSpObjectTokens* This) {
2476 return This->lpVtbl->AddRef(This);
2477}
2478static inline ULONG IEnumSpObjectTokens_Release(IEnumSpObjectTokens* This) {
2479 return This->lpVtbl->Release(This);
2480}
2481/*** IEnumSpObjectTokens methods ***/
2482static inline HRESULT IEnumSpObjectTokens_Next(IEnumSpObjectTokens* This,ULONG celt,ISpObjectToken **pelt,ULONG *pceltFetched) {
2483 return This->lpVtbl->Next(This,celt,pelt,pceltFetched);
2484}
2485static inline HRESULT IEnumSpObjectTokens_Skip(IEnumSpObjectTokens* This,ULONG celt) {
2486 return This->lpVtbl->Skip(This,celt);
2487}
2488static inline HRESULT IEnumSpObjectTokens_Reset(IEnumSpObjectTokens* This) {
2489 return This->lpVtbl->Reset(This);
2490}
2491static inline HRESULT IEnumSpObjectTokens_Clone(IEnumSpObjectTokens* This,IEnumSpObjectTokens **ppEnum) {
2492 return This->lpVtbl->Clone(This,ppEnum);
2493}
2494static inline HRESULT IEnumSpObjectTokens_Item(IEnumSpObjectTokens* This,ULONG Index,ISpObjectToken **ppToken) {
2495 return This->lpVtbl->Item(This,Index,ppToken);
2496}
2497static inline HRESULT IEnumSpObjectTokens_GetCount(IEnumSpObjectTokens* This,ULONG *pCount) {
2498 return This->lpVtbl->GetCount(This,pCount);
2499}
2500#endif
2501#endif
2502
2503#endif
2504
2505
2506#endif /* __IEnumSpObjectTokens_INTERFACE_DEFINED__ */
2507
2508/*****************************************************************************
2509 * ISpRegDataKey interface
2510 */
2511#ifndef __ISpRegDataKey_INTERFACE_DEFINED__
2512#define __ISpRegDataKey_INTERFACE_DEFINED__
2513
2514DEFINE_GUID(IID_ISpRegDataKey, 0x92a66e2b, 0xc830, 0x4149, 0x83,0xdf, 0x6f,0xc2,0xba,0x1e,0x7a,0x5b);
2515#if defined(__cplusplus) && !defined(CINTERFACE)
2516MIDL_INTERFACE("92a66e2b-c830-4149-83df-6fc2ba1e7a5b")
2517ISpRegDataKey : public ISpDataKey
2518{
2519 virtual HRESULT STDMETHODCALLTYPE SetKey(
2520 HKEY hkey,
2521 WINBOOL fReadOnly) = 0;
2522
2523};
2524#ifdef __CRT_UUID_DECL
2525__CRT_UUID_DECL(ISpRegDataKey, 0x92a66e2b, 0xc830, 0x4149, 0x83,0xdf, 0x6f,0xc2,0xba,0x1e,0x7a,0x5b)
2526#endif
2527#else
2528typedef struct ISpRegDataKeyVtbl {
2529 BEGIN_INTERFACE
2530
2531 /*** IUnknown methods ***/
2532 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2533 ISpRegDataKey *This,
2534 REFIID riid,
2535 void **ppvObject);
2536
2537 ULONG (STDMETHODCALLTYPE *AddRef)(
2538 ISpRegDataKey *This);
2539
2540 ULONG (STDMETHODCALLTYPE *Release)(
2541 ISpRegDataKey *This);
2542
2543 /*** ISpDataKey methods ***/
2544 HRESULT (STDMETHODCALLTYPE *SetData)(
2545 ISpRegDataKey *This,
2546 LPCWSTR pszValueName,
2547 ULONG cbData,
2548 const BYTE *pData);
2549
2550 HRESULT (STDMETHODCALLTYPE *GetData)(
2551 ISpRegDataKey *This,
2552 LPCWSTR pszValueName,
2553 ULONG *pcbData,
2554 BYTE *pData);
2555
2556 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
2557 ISpRegDataKey *This,
2558 LPCWSTR pszValueName,
2559 LPCWSTR pszValue);
2560
2561 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2562 ISpRegDataKey *This,
2563 LPCWSTR pszValueName,
2564 LPWSTR *ppszValue);
2565
2566 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
2567 ISpRegDataKey *This,
2568 LPCWSTR pszValueName,
2569 DWORD dwValue);
2570
2571 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
2572 ISpRegDataKey *This,
2573 LPCWSTR pszValueName,
2574 DWORD *pdwValue);
2575
2576 HRESULT (STDMETHODCALLTYPE *OpenKey)(
2577 ISpRegDataKey *This,
2578 LPCWSTR pszSubKeyName,
2579 ISpDataKey **ppSubKey);
2580
2581 HRESULT (STDMETHODCALLTYPE *CreateKey)(
2582 ISpRegDataKey *This,
2583 LPCWSTR pszSubKey,
2584 ISpDataKey **ppSubKey);
2585
2586 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
2587 ISpRegDataKey *This,
2588 LPCWSTR pszSubKey);
2589
2590 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
2591 ISpRegDataKey *This,
2592 LPCWSTR pszValueName);
2593
2594 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
2595 ISpRegDataKey *This,
2596 ULONG Index,
2597 LPWSTR *ppszSubKeyName);
2598
2599 HRESULT (STDMETHODCALLTYPE *EnumValues)(
2600 ISpRegDataKey *This,
2601 ULONG Index,
2602 LPWSTR *ppszValueName);
2603
2604 /*** ISpRegDataKey methods ***/
2605 HRESULT (STDMETHODCALLTYPE *SetKey)(
2606 ISpRegDataKey *This,
2607 HKEY hkey,
2608 WINBOOL fReadOnly);
2609
2610 END_INTERFACE
2611} ISpRegDataKeyVtbl;
2612
2613interface ISpRegDataKey {
2614 CONST_VTBL ISpRegDataKeyVtbl* lpVtbl;
2615};
2616
2617#ifdef COBJMACROS
2618#ifndef WIDL_C_INLINE_WRAPPERS
2619/*** IUnknown methods ***/
2620#define ISpRegDataKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2621#define ISpRegDataKey_AddRef(This) (This)->lpVtbl->AddRef(This)
2622#define ISpRegDataKey_Release(This) (This)->lpVtbl->Release(This)
2623/*** ISpDataKey methods ***/
2624#define ISpRegDataKey_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
2625#define ISpRegDataKey_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
2626#define ISpRegDataKey_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
2627#define ISpRegDataKey_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
2628#define ISpRegDataKey_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
2629#define ISpRegDataKey_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
2630#define ISpRegDataKey_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
2631#define ISpRegDataKey_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
2632#define ISpRegDataKey_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
2633#define ISpRegDataKey_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
2634#define ISpRegDataKey_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
2635#define ISpRegDataKey_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
2636/*** ISpRegDataKey methods ***/
2637#define ISpRegDataKey_SetKey(This,hkey,fReadOnly) (This)->lpVtbl->SetKey(This,hkey,fReadOnly)
2638#else
2639/*** IUnknown methods ***/
2640static inline HRESULT ISpRegDataKey_QueryInterface(ISpRegDataKey* This,REFIID riid,void **ppvObject) {
2641 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2642}
2643static inline ULONG ISpRegDataKey_AddRef(ISpRegDataKey* This) {
2644 return This->lpVtbl->AddRef(This);
2645}
2646static inline ULONG ISpRegDataKey_Release(ISpRegDataKey* This) {
2647 return This->lpVtbl->Release(This);
2648}
2649/*** ISpDataKey methods ***/
2650static inline HRESULT ISpRegDataKey_SetData(ISpRegDataKey* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
2651 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
2652}
2653static inline HRESULT ISpRegDataKey_GetData(ISpRegDataKey* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
2654 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
2655}
2656static inline HRESULT ISpRegDataKey_SetStringValue(ISpRegDataKey* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
2657 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
2658}
2659static inline HRESULT ISpRegDataKey_GetStringValue(ISpRegDataKey* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
2660 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
2661}
2662static inline HRESULT ISpRegDataKey_SetDWORD(ISpRegDataKey* This,LPCWSTR pszValueName,DWORD dwValue) {
2663 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
2664}
2665static inline HRESULT ISpRegDataKey_GetDWORD(ISpRegDataKey* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2666 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2667}
2668static inline HRESULT ISpRegDataKey_OpenKey(ISpRegDataKey* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2669 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2670}
2671static inline HRESULT ISpRegDataKey_CreateKey(ISpRegDataKey* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2672 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2673}
2674static inline HRESULT ISpRegDataKey_DeleteKey(ISpRegDataKey* This,LPCWSTR pszSubKey) {
2675 return This->lpVtbl->DeleteKey(This,pszSubKey);
2676}
2677static inline HRESULT ISpRegDataKey_DeleteValue(ISpRegDataKey* This,LPCWSTR pszValueName) {
2678 return This->lpVtbl->DeleteValue(This,pszValueName);
2679}
2680static inline HRESULT ISpRegDataKey_EnumKeys(ISpRegDataKey* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2681 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2682}
2683static inline HRESULT ISpRegDataKey_EnumValues(ISpRegDataKey* This,ULONG Index,LPWSTR *ppszValueName) {
2684 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2685}
2686/*** ISpRegDataKey methods ***/
2687static inline HRESULT ISpRegDataKey_SetKey(ISpRegDataKey* This,HKEY hkey,WINBOOL fReadOnly) {
2688 return This->lpVtbl->SetKey(This,hkey,fReadOnly);
2689}
2690#endif
2691#endif
2692
2693#endif
2694
2695
2696#endif /* __ISpRegDataKey_INTERFACE_DEFINED__ */
2697
2698/*****************************************************************************
2699 * ISpObjectTokenCategory interface
2700 */
2701#ifndef __ISpObjectTokenCategory_INTERFACE_DEFINED__
2702#define __ISpObjectTokenCategory_INTERFACE_DEFINED__
2703
2704DEFINE_GUID(IID_ISpObjectTokenCategory, 0x2d3d3845, 0x39af, 0x4850, 0xbb,0xf9, 0x40,0xb4,0x97,0x80,0x01,0x1d);
2705#if defined(__cplusplus) && !defined(CINTERFACE)
2706MIDL_INTERFACE("2d3d3845-39af-4850-bbf9-40b49780011d")
2707ISpObjectTokenCategory : public ISpDataKey
2708{
2709 virtual HRESULT STDMETHODCALLTYPE SetId(
2710 LPCWSTR pszCategoryId,
2711 WINBOOL fCreateIfNotExist) = 0;
2712
2713 virtual HRESULT STDMETHODCALLTYPE GetId(
2714 LPWSTR *ppszCoMemCategoryId) = 0;
2715
2716 virtual HRESULT STDMETHODCALLTYPE GetDataKey(
2717 SPDATAKEYLOCATION spdkl,
2718 ISpDataKey **ppDataKey) = 0;
2719
2720 virtual HRESULT STDMETHODCALLTYPE EnumTokens(
2721 LPCWSTR pzsReqAttribs,
2722 LPCWSTR pszOptAttribs,
2723 IEnumSpObjectTokens **ppEnum) = 0;
2724
2725 virtual HRESULT STDMETHODCALLTYPE SetDefaultTokenId(
2726 LPCWSTR pszTokenId) = 0;
2727
2728 virtual HRESULT STDMETHODCALLTYPE GetDefaultTokenId(
2729 LPWSTR *ppszCoMemTokenId) = 0;
2730
2731};
2732#ifdef __CRT_UUID_DECL
2733__CRT_UUID_DECL(ISpObjectTokenCategory, 0x2d3d3845, 0x39af, 0x4850, 0xbb,0xf9, 0x40,0xb4,0x97,0x80,0x01,0x1d)
2734#endif
2735#else
2736typedef struct ISpObjectTokenCategoryVtbl {
2737 BEGIN_INTERFACE
2738
2739 /*** IUnknown methods ***/
2740 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2741 ISpObjectTokenCategory *This,
2742 REFIID riid,
2743 void **ppvObject);
2744
2745 ULONG (STDMETHODCALLTYPE *AddRef)(
2746 ISpObjectTokenCategory *This);
2747
2748 ULONG (STDMETHODCALLTYPE *Release)(
2749 ISpObjectTokenCategory *This);
2750
2751 /*** ISpDataKey methods ***/
2752 HRESULT (STDMETHODCALLTYPE *SetData)(
2753 ISpObjectTokenCategory *This,
2754 LPCWSTR pszValueName,
2755 ULONG cbData,
2756 const BYTE *pData);
2757
2758 HRESULT (STDMETHODCALLTYPE *GetData)(
2759 ISpObjectTokenCategory *This,
2760 LPCWSTR pszValueName,
2761 ULONG *pcbData,
2762 BYTE *pData);
2763
2764 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
2765 ISpObjectTokenCategory *This,
2766 LPCWSTR pszValueName,
2767 LPCWSTR pszValue);
2768
2769 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2770 ISpObjectTokenCategory *This,
2771 LPCWSTR pszValueName,
2772 LPWSTR *ppszValue);
2773
2774 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
2775 ISpObjectTokenCategory *This,
2776 LPCWSTR pszValueName,
2777 DWORD dwValue);
2778
2779 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
2780 ISpObjectTokenCategory *This,
2781 LPCWSTR pszValueName,
2782 DWORD *pdwValue);
2783
2784 HRESULT (STDMETHODCALLTYPE *OpenKey)(
2785 ISpObjectTokenCategory *This,
2786 LPCWSTR pszSubKeyName,
2787 ISpDataKey **ppSubKey);
2788
2789 HRESULT (STDMETHODCALLTYPE *CreateKey)(
2790 ISpObjectTokenCategory *This,
2791 LPCWSTR pszSubKey,
2792 ISpDataKey **ppSubKey);
2793
2794 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
2795 ISpObjectTokenCategory *This,
2796 LPCWSTR pszSubKey);
2797
2798 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
2799 ISpObjectTokenCategory *This,
2800 LPCWSTR pszValueName);
2801
2802 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
2803 ISpObjectTokenCategory *This,
2804 ULONG Index,
2805 LPWSTR *ppszSubKeyName);
2806
2807 HRESULT (STDMETHODCALLTYPE *EnumValues)(
2808 ISpObjectTokenCategory *This,
2809 ULONG Index,
2810 LPWSTR *ppszValueName);
2811
2812 /*** ISpObjectTokenCategory methods ***/
2813 HRESULT (STDMETHODCALLTYPE *SetId)(
2814 ISpObjectTokenCategory *This,
2815 LPCWSTR pszCategoryId,
2816 WINBOOL fCreateIfNotExist);
2817
2818 HRESULT (STDMETHODCALLTYPE *GetId)(
2819 ISpObjectTokenCategory *This,
2820 LPWSTR *ppszCoMemCategoryId);
2821
2822 HRESULT (STDMETHODCALLTYPE *GetDataKey)(
2823 ISpObjectTokenCategory *This,
2824 SPDATAKEYLOCATION spdkl,
2825 ISpDataKey **ppDataKey);
2826
2827 HRESULT (STDMETHODCALLTYPE *EnumTokens)(
2828 ISpObjectTokenCategory *This,
2829 LPCWSTR pzsReqAttribs,
2830 LPCWSTR pszOptAttribs,
2831 IEnumSpObjectTokens **ppEnum);
2832
2833 HRESULT (STDMETHODCALLTYPE *SetDefaultTokenId)(
2834 ISpObjectTokenCategory *This,
2835 LPCWSTR pszTokenId);
2836
2837 HRESULT (STDMETHODCALLTYPE *GetDefaultTokenId)(
2838 ISpObjectTokenCategory *This,
2839 LPWSTR *ppszCoMemTokenId);
2840
2841 END_INTERFACE
2842} ISpObjectTokenCategoryVtbl;
2843
2844interface ISpObjectTokenCategory {
2845 CONST_VTBL ISpObjectTokenCategoryVtbl* lpVtbl;
2846};
2847
2848#ifdef COBJMACROS
2849#ifndef WIDL_C_INLINE_WRAPPERS
2850/*** IUnknown methods ***/
2851#define ISpObjectTokenCategory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2852#define ISpObjectTokenCategory_AddRef(This) (This)->lpVtbl->AddRef(This)
2853#define ISpObjectTokenCategory_Release(This) (This)->lpVtbl->Release(This)
2854/*** ISpDataKey methods ***/
2855#define ISpObjectTokenCategory_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
2856#define ISpObjectTokenCategory_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
2857#define ISpObjectTokenCategory_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
2858#define ISpObjectTokenCategory_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
2859#define ISpObjectTokenCategory_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
2860#define ISpObjectTokenCategory_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
2861#define ISpObjectTokenCategory_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
2862#define ISpObjectTokenCategory_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
2863#define ISpObjectTokenCategory_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
2864#define ISpObjectTokenCategory_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
2865#define ISpObjectTokenCategory_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
2866#define ISpObjectTokenCategory_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
2867/*** ISpObjectTokenCategory methods ***/
2868#define ISpObjectTokenCategory_SetId(This,pszCategoryId,fCreateIfNotExist) (This)->lpVtbl->SetId(This,pszCategoryId,fCreateIfNotExist)
2869#define ISpObjectTokenCategory_GetId(This,ppszCoMemCategoryId) (This)->lpVtbl->GetId(This,ppszCoMemCategoryId)
2870#define ISpObjectTokenCategory_GetDataKey(This,spdkl,ppDataKey) (This)->lpVtbl->GetDataKey(This,spdkl,ppDataKey)
2871#define ISpObjectTokenCategory_EnumTokens(This,pzsReqAttribs,pszOptAttribs,ppEnum) (This)->lpVtbl->EnumTokens(This,pzsReqAttribs,pszOptAttribs,ppEnum)
2872#define ISpObjectTokenCategory_SetDefaultTokenId(This,pszTokenId) (This)->lpVtbl->SetDefaultTokenId(This,pszTokenId)
2873#define ISpObjectTokenCategory_GetDefaultTokenId(This,ppszCoMemTokenId) (This)->lpVtbl->GetDefaultTokenId(This,ppszCoMemTokenId)
2874#else
2875/*** IUnknown methods ***/
2876static inline HRESULT ISpObjectTokenCategory_QueryInterface(ISpObjectTokenCategory* This,REFIID riid,void **ppvObject) {
2877 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2878}
2879static inline ULONG ISpObjectTokenCategory_AddRef(ISpObjectTokenCategory* This) {
2880 return This->lpVtbl->AddRef(This);
2881}
2882static inline ULONG ISpObjectTokenCategory_Release(ISpObjectTokenCategory* This) {
2883 return This->lpVtbl->Release(This);
2884}
2885/*** ISpDataKey methods ***/
2886static inline HRESULT ISpObjectTokenCategory_SetData(ISpObjectTokenCategory* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
2887 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
2888}
2889static inline HRESULT ISpObjectTokenCategory_GetData(ISpObjectTokenCategory* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
2890 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
2891}
2892static inline HRESULT ISpObjectTokenCategory_SetStringValue(ISpObjectTokenCategory* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
2893 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
2894}
2895static inline HRESULT ISpObjectTokenCategory_GetStringValue(ISpObjectTokenCategory* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
2896 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
2897}
2898static inline HRESULT ISpObjectTokenCategory_SetDWORD(ISpObjectTokenCategory* This,LPCWSTR pszValueName,DWORD dwValue) {
2899 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
2900}
2901static inline HRESULT ISpObjectTokenCategory_GetDWORD(ISpObjectTokenCategory* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2902 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2903}
2904static inline HRESULT ISpObjectTokenCategory_OpenKey(ISpObjectTokenCategory* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2905 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2906}
2907static inline HRESULT ISpObjectTokenCategory_CreateKey(ISpObjectTokenCategory* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2908 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2909}
2910static inline HRESULT ISpObjectTokenCategory_DeleteKey(ISpObjectTokenCategory* This,LPCWSTR pszSubKey) {
2911 return This->lpVtbl->DeleteKey(This,pszSubKey);
2912}
2913static inline HRESULT ISpObjectTokenCategory_DeleteValue(ISpObjectTokenCategory* This,LPCWSTR pszValueName) {
2914 return This->lpVtbl->DeleteValue(This,pszValueName);
2915}
2916static inline HRESULT ISpObjectTokenCategory_EnumKeys(ISpObjectTokenCategory* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2917 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2918}
2919static inline HRESULT ISpObjectTokenCategory_EnumValues(ISpObjectTokenCategory* This,ULONG Index,LPWSTR *ppszValueName) {
2920 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2921}
2922/*** ISpObjectTokenCategory methods ***/
2923static inline HRESULT ISpObjectTokenCategory_SetId(ISpObjectTokenCategory* This,LPCWSTR pszCategoryId,WINBOOL fCreateIfNotExist) {
2924 return This->lpVtbl->SetId(This,pszCategoryId,fCreateIfNotExist);
2925}
2926static inline HRESULT ISpObjectTokenCategory_GetId(ISpObjectTokenCategory* This,LPWSTR *ppszCoMemCategoryId) {
2927 return This->lpVtbl->GetId(This,ppszCoMemCategoryId);
2928}
2929static inline HRESULT ISpObjectTokenCategory_GetDataKey(ISpObjectTokenCategory* This,SPDATAKEYLOCATION spdkl,ISpDataKey **ppDataKey) {
2930 return This->lpVtbl->GetDataKey(This,spdkl,ppDataKey);
2931}
2932static inline HRESULT ISpObjectTokenCategory_EnumTokens(ISpObjectTokenCategory* This,LPCWSTR pzsReqAttribs,LPCWSTR pszOptAttribs,IEnumSpObjectTokens **ppEnum) {
2933 return This->lpVtbl->EnumTokens(This,pzsReqAttribs,pszOptAttribs,ppEnum);
2934}
2935static inline HRESULT ISpObjectTokenCategory_SetDefaultTokenId(ISpObjectTokenCategory* This,LPCWSTR pszTokenId) {
2936 return This->lpVtbl->SetDefaultTokenId(This,pszTokenId);
2937}
2938static inline HRESULT ISpObjectTokenCategory_GetDefaultTokenId(ISpObjectTokenCategory* This,LPWSTR *ppszCoMemTokenId) {
2939 return This->lpVtbl->GetDefaultTokenId(This,ppszCoMemTokenId);
2940}
2941#endif
2942#endif
2943
2944#endif
2945
2946
2947#endif /* __ISpObjectTokenCategory_INTERFACE_DEFINED__ */
2948
2949/*****************************************************************************
2950 * ISpObjectToken interface
2951 */
2952#ifndef __ISpObjectToken_INTERFACE_DEFINED__
2953#define __ISpObjectToken_INTERFACE_DEFINED__
2954
2955DEFINE_GUID(IID_ISpObjectToken, 0x14056589, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
2956#if defined(__cplusplus) && !defined(CINTERFACE)
2957MIDL_INTERFACE("14056589-e16c-11d2-bb90-00c04f8ee6c0")
2958ISpObjectToken : public ISpDataKey
2959{
2960 virtual HRESULT STDMETHODCALLTYPE SetId(
2961 LPCWSTR pszCategoryId,
2962 LPCWSTR pszTokenId,
2963 WINBOOL fCreateIfNotExist) = 0;
2964
2965 virtual HRESULT STDMETHODCALLTYPE GetId(
2966 LPWSTR *ppszCoMemTokenId) = 0;
2967
2968 virtual HRESULT STDMETHODCALLTYPE GetCategory(
2969 ISpObjectTokenCategory **ppTokenCategory) = 0;
2970
2971 virtual HRESULT STDMETHODCALLTYPE CreateInstance(
2972 IUnknown *pUnkOuter,
2973 DWORD dwClsContext,
2974 REFIID riid,
2975 void **ppvObject) = 0;
2976
2977 virtual HRESULT STDMETHODCALLTYPE GetStorageFileName(
2978 REFCLSID clsidCaller,
2979 LPCWSTR pszValueName,
2980 LPCWSTR pszFileNameSpecifier,
2981 ULONG nFolder,
2982 LPWSTR *ppszFilePath) = 0;
2983
2984 virtual HRESULT STDMETHODCALLTYPE RemoveStorageFileName(
2985 REFCLSID clsidCaller,
2986 LPCWSTR pszKeyName,
2987 WINBOOL fDeleteFile) = 0;
2988
2989 virtual HRESULT STDMETHODCALLTYPE Remove(
2990 const CLSID *pclsidCaller) = 0;
2991
2992 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
2993 LPCWSTR pszTypeOfUI,
2994 void *pvExtraData,
2995 ULONG cbExtraData,
2996 IUnknown *punkObject,
2997 WINBOOL *pfSupported) = 0;
2998
2999 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
3000 HWND hwndParent,
3001 LPCWSTR pszTitle,
3002 LPCWSTR pszTypeOfUI,
3003 void *pvExtraData,
3004 ULONG cbExtraData,
3005 IUnknown *punkObject) = 0;
3006
3007 virtual HRESULT STDMETHODCALLTYPE MatchesAttributes(
3008 LPCWSTR pszAttributes,
3009 WINBOOL *pfMatches) = 0;
3010
3011};
3012#ifdef __CRT_UUID_DECL
3013__CRT_UUID_DECL(ISpObjectToken, 0x14056589, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
3014#endif
3015#else
3016typedef struct ISpObjectTokenVtbl {
3017 BEGIN_INTERFACE
3018
3019 /*** IUnknown methods ***/
3020 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3021 ISpObjectToken *This,
3022 REFIID riid,
3023 void **ppvObject);
3024
3025 ULONG (STDMETHODCALLTYPE *AddRef)(
3026 ISpObjectToken *This);
3027
3028 ULONG (STDMETHODCALLTYPE *Release)(
3029 ISpObjectToken *This);
3030
3031 /*** ISpDataKey methods ***/
3032 HRESULT (STDMETHODCALLTYPE *SetData)(
3033 ISpObjectToken *This,
3034 LPCWSTR pszValueName,
3035 ULONG cbData,
3036 const BYTE *pData);
3037
3038 HRESULT (STDMETHODCALLTYPE *GetData)(
3039 ISpObjectToken *This,
3040 LPCWSTR pszValueName,
3041 ULONG *pcbData,
3042 BYTE *pData);
3043
3044 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
3045 ISpObjectToken *This,
3046 LPCWSTR pszValueName,
3047 LPCWSTR pszValue);
3048
3049 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
3050 ISpObjectToken *This,
3051 LPCWSTR pszValueName,
3052 LPWSTR *ppszValue);
3053
3054 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
3055 ISpObjectToken *This,
3056 LPCWSTR pszValueName,
3057 DWORD dwValue);
3058
3059 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
3060 ISpObjectToken *This,
3061 LPCWSTR pszValueName,
3062 DWORD *pdwValue);
3063
3064 HRESULT (STDMETHODCALLTYPE *OpenKey)(
3065 ISpObjectToken *This,
3066 LPCWSTR pszSubKeyName,
3067 ISpDataKey **ppSubKey);
3068
3069 HRESULT (STDMETHODCALLTYPE *CreateKey)(
3070 ISpObjectToken *This,
3071 LPCWSTR pszSubKey,
3072 ISpDataKey **ppSubKey);
3073
3074 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
3075 ISpObjectToken *This,
3076 LPCWSTR pszSubKey);
3077
3078 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
3079 ISpObjectToken *This,
3080 LPCWSTR pszValueName);
3081
3082 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
3083 ISpObjectToken *This,
3084 ULONG Index,
3085 LPWSTR *ppszSubKeyName);
3086
3087 HRESULT (STDMETHODCALLTYPE *EnumValues)(
3088 ISpObjectToken *This,
3089 ULONG Index,
3090 LPWSTR *ppszValueName);
3091
3092 /*** ISpObjectToken methods ***/
3093 HRESULT (STDMETHODCALLTYPE *SetId)(
3094 ISpObjectToken *This,
3095 LPCWSTR pszCategoryId,
3096 LPCWSTR pszTokenId,
3097 WINBOOL fCreateIfNotExist);
3098
3099 HRESULT (STDMETHODCALLTYPE *GetId)(
3100 ISpObjectToken *This,
3101 LPWSTR *ppszCoMemTokenId);
3102
3103 HRESULT (STDMETHODCALLTYPE *GetCategory)(
3104 ISpObjectToken *This,
3105 ISpObjectTokenCategory **ppTokenCategory);
3106
3107 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
3108 ISpObjectToken *This,
3109 IUnknown *pUnkOuter,
3110 DWORD dwClsContext,
3111 REFIID riid,
3112 void **ppvObject);
3113
3114 HRESULT (STDMETHODCALLTYPE *GetStorageFileName)(
3115 ISpObjectToken *This,
3116 REFCLSID clsidCaller,
3117 LPCWSTR pszValueName,
3118 LPCWSTR pszFileNameSpecifier,
3119 ULONG nFolder,
3120 LPWSTR *ppszFilePath);
3121
3122 HRESULT (STDMETHODCALLTYPE *RemoveStorageFileName)(
3123 ISpObjectToken *This,
3124 REFCLSID clsidCaller,
3125 LPCWSTR pszKeyName,
3126 WINBOOL fDeleteFile);
3127
3128 HRESULT (STDMETHODCALLTYPE *Remove)(
3129 ISpObjectToken *This,
3130 const CLSID *pclsidCaller);
3131
3132 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
3133 ISpObjectToken *This,
3134 LPCWSTR pszTypeOfUI,
3135 void *pvExtraData,
3136 ULONG cbExtraData,
3137 IUnknown *punkObject,
3138 WINBOOL *pfSupported);
3139
3140 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
3141 ISpObjectToken *This,
3142 HWND hwndParent,
3143 LPCWSTR pszTitle,
3144 LPCWSTR pszTypeOfUI,
3145 void *pvExtraData,
3146 ULONG cbExtraData,
3147 IUnknown *punkObject);
3148
3149 HRESULT (STDMETHODCALLTYPE *MatchesAttributes)(
3150 ISpObjectToken *This,
3151 LPCWSTR pszAttributes,
3152 WINBOOL *pfMatches);
3153
3154 END_INTERFACE
3155} ISpObjectTokenVtbl;
3156
3157interface ISpObjectToken {
3158 CONST_VTBL ISpObjectTokenVtbl* lpVtbl;
3159};
3160
3161#ifdef COBJMACROS
3162#ifndef WIDL_C_INLINE_WRAPPERS
3163/*** IUnknown methods ***/
3164#define ISpObjectToken_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3165#define ISpObjectToken_AddRef(This) (This)->lpVtbl->AddRef(This)
3166#define ISpObjectToken_Release(This) (This)->lpVtbl->Release(This)
3167/*** ISpDataKey methods ***/
3168#define ISpObjectToken_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
3169#define ISpObjectToken_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
3170#define ISpObjectToken_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
3171#define ISpObjectToken_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
3172#define ISpObjectToken_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
3173#define ISpObjectToken_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
3174#define ISpObjectToken_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
3175#define ISpObjectToken_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
3176#define ISpObjectToken_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
3177#define ISpObjectToken_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
3178#define ISpObjectToken_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
3179#define ISpObjectToken_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
3180/*** ISpObjectToken methods ***/
3181#define ISpObjectToken_SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist) (This)->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist)
3182#define ISpObjectToken_GetId(This,ppszCoMemTokenId) (This)->lpVtbl->GetId(This,ppszCoMemTokenId)
3183#define ISpObjectToken_GetCategory(This,ppTokenCategory) (This)->lpVtbl->GetCategory(This,ppTokenCategory)
3184#define ISpObjectToken_CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject)
3185#define ISpObjectToken_GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath) (This)->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath)
3186#define ISpObjectToken_RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile) (This)->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile)
3187#define ISpObjectToken_Remove(This,pclsidCaller) (This)->lpVtbl->Remove(This,pclsidCaller)
3188#define ISpObjectToken_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported)
3189#define ISpObjectToken_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject)
3190#define ISpObjectToken_MatchesAttributes(This,pszAttributes,pfMatches) (This)->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches)
3191#else
3192/*** IUnknown methods ***/
3193static inline HRESULT ISpObjectToken_QueryInterface(ISpObjectToken* This,REFIID riid,void **ppvObject) {
3194 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3195}
3196static inline ULONG ISpObjectToken_AddRef(ISpObjectToken* This) {
3197 return This->lpVtbl->AddRef(This);
3198}
3199static inline ULONG ISpObjectToken_Release(ISpObjectToken* This) {
3200 return This->lpVtbl->Release(This);
3201}
3202/*** ISpDataKey methods ***/
3203static inline HRESULT ISpObjectToken_SetData(ISpObjectToken* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
3204 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
3205}
3206static inline HRESULT ISpObjectToken_GetData(ISpObjectToken* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
3207 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
3208}
3209static inline HRESULT ISpObjectToken_SetStringValue(ISpObjectToken* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
3210 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
3211}
3212static inline HRESULT ISpObjectToken_GetStringValue(ISpObjectToken* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
3213 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
3214}
3215static inline HRESULT ISpObjectToken_SetDWORD(ISpObjectToken* This,LPCWSTR pszValueName,DWORD dwValue) {
3216 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
3217}
3218static inline HRESULT ISpObjectToken_GetDWORD(ISpObjectToken* This,LPCWSTR pszValueName,DWORD *pdwValue) {
3219 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
3220}
3221static inline HRESULT ISpObjectToken_OpenKey(ISpObjectToken* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
3222 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
3223}
3224static inline HRESULT ISpObjectToken_CreateKey(ISpObjectToken* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
3225 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
3226}
3227static inline HRESULT ISpObjectToken_DeleteKey(ISpObjectToken* This,LPCWSTR pszSubKey) {
3228 return This->lpVtbl->DeleteKey(This,pszSubKey);
3229}
3230static inline HRESULT ISpObjectToken_DeleteValue(ISpObjectToken* This,LPCWSTR pszValueName) {
3231 return This->lpVtbl->DeleteValue(This,pszValueName);
3232}
3233static inline HRESULT ISpObjectToken_EnumKeys(ISpObjectToken* This,ULONG Index,LPWSTR *ppszSubKeyName) {
3234 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
3235}
3236static inline HRESULT ISpObjectToken_EnumValues(ISpObjectToken* This,ULONG Index,LPWSTR *ppszValueName) {
3237 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
3238}
3239/*** ISpObjectToken methods ***/
3240static inline HRESULT ISpObjectToken_SetId(ISpObjectToken* This,LPCWSTR pszCategoryId,LPCWSTR pszTokenId,WINBOOL fCreateIfNotExist) {
3241 return This->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist);
3242}
3243static inline HRESULT ISpObjectToken_GetId(ISpObjectToken* This,LPWSTR *ppszCoMemTokenId) {
3244 return This->lpVtbl->GetId(This,ppszCoMemTokenId);
3245}
3246static inline HRESULT ISpObjectToken_GetCategory(ISpObjectToken* This,ISpObjectTokenCategory **ppTokenCategory) {
3247 return This->lpVtbl->GetCategory(This,ppTokenCategory);
3248}
3249static inline HRESULT ISpObjectToken_CreateInstance(ISpObjectToken* This,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,void **ppvObject) {
3250 return This->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject);
3251}
3252static inline HRESULT ISpObjectToken_GetStorageFileName(ISpObjectToken* This,REFCLSID clsidCaller,LPCWSTR pszValueName,LPCWSTR pszFileNameSpecifier,ULONG nFolder,LPWSTR *ppszFilePath) {
3253 return This->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath);
3254}
3255static inline HRESULT ISpObjectToken_RemoveStorageFileName(ISpObjectToken* This,REFCLSID clsidCaller,LPCWSTR pszKeyName,WINBOOL fDeleteFile) {
3256 return This->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile);
3257}
3258static inline HRESULT ISpObjectToken_Remove(ISpObjectToken* This,const CLSID *pclsidCaller) {
3259 return This->lpVtbl->Remove(This,pclsidCaller);
3260}
3261static inline HRESULT ISpObjectToken_IsUISupported(ISpObjectToken* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject,WINBOOL *pfSupported) {
3262 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported);
3263}
3264static inline HRESULT ISpObjectToken_DisplayUI(ISpObjectToken* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject) {
3265 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject);
3266}
3267static inline HRESULT ISpObjectToken_MatchesAttributes(ISpObjectToken* This,LPCWSTR pszAttributes,WINBOOL *pfMatches) {
3268 return This->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches);
3269}
3270#endif
3271#endif
3272
3273#endif
3274
3275
3276#endif /* __ISpObjectToken_INTERFACE_DEFINED__ */
3277
3278/*****************************************************************************
3279 * ISpObjectTokenInit interface
3280 */
3281#ifndef __ISpObjectTokenInit_INTERFACE_DEFINED__
3282#define __ISpObjectTokenInit_INTERFACE_DEFINED__
3283
3284DEFINE_GUID(IID_ISpObjectTokenInit, 0xb8aab0cf, 0x346f, 0x49d8, 0x94,0x99, 0xc8,0xb0,0x3f,0x16,0x1d,0x51);
3285#if defined(__cplusplus) && !defined(CINTERFACE)
3286MIDL_INTERFACE("b8aab0cf-346f-49d8-9499-c8b03f161d51")
3287ISpObjectTokenInit : public ISpObjectToken
3288{
3289 virtual HRESULT STDMETHODCALLTYPE InitFromDataKey(
3290 LPCWSTR pszCategoryId,
3291 LPCWSTR pszTokenId,
3292 ISpDataKey *pDataKey) = 0;
3293
3294};
3295#ifdef __CRT_UUID_DECL
3296__CRT_UUID_DECL(ISpObjectTokenInit, 0xb8aab0cf, 0x346f, 0x49d8, 0x94,0x99, 0xc8,0xb0,0x3f,0x16,0x1d,0x51)
3297#endif
3298#else
3299typedef struct ISpObjectTokenInitVtbl {
3300 BEGIN_INTERFACE
3301
3302 /*** IUnknown methods ***/
3303 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3304 ISpObjectTokenInit *This,
3305 REFIID riid,
3306 void **ppvObject);
3307
3308 ULONG (STDMETHODCALLTYPE *AddRef)(
3309 ISpObjectTokenInit *This);
3310
3311 ULONG (STDMETHODCALLTYPE *Release)(
3312 ISpObjectTokenInit *This);
3313
3314 /*** ISpDataKey methods ***/
3315 HRESULT (STDMETHODCALLTYPE *SetData)(
3316 ISpObjectTokenInit *This,
3317 LPCWSTR pszValueName,
3318 ULONG cbData,
3319 const BYTE *pData);
3320
3321 HRESULT (STDMETHODCALLTYPE *GetData)(
3322 ISpObjectTokenInit *This,
3323 LPCWSTR pszValueName,
3324 ULONG *pcbData,
3325 BYTE *pData);
3326
3327 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
3328 ISpObjectTokenInit *This,
3329 LPCWSTR pszValueName,
3330 LPCWSTR pszValue);
3331
3332 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
3333 ISpObjectTokenInit *This,
3334 LPCWSTR pszValueName,
3335 LPWSTR *ppszValue);
3336
3337 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
3338 ISpObjectTokenInit *This,
3339 LPCWSTR pszValueName,
3340 DWORD dwValue);
3341
3342 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
3343 ISpObjectTokenInit *This,
3344 LPCWSTR pszValueName,
3345 DWORD *pdwValue);
3346
3347 HRESULT (STDMETHODCALLTYPE *OpenKey)(
3348 ISpObjectTokenInit *This,
3349 LPCWSTR pszSubKeyName,
3350 ISpDataKey **ppSubKey);
3351
3352 HRESULT (STDMETHODCALLTYPE *CreateKey)(
3353 ISpObjectTokenInit *This,
3354 LPCWSTR pszSubKey,
3355 ISpDataKey **ppSubKey);
3356
3357 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
3358 ISpObjectTokenInit *This,
3359 LPCWSTR pszSubKey);
3360
3361 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
3362 ISpObjectTokenInit *This,
3363 LPCWSTR pszValueName);
3364
3365 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
3366 ISpObjectTokenInit *This,
3367 ULONG Index,
3368 LPWSTR *ppszSubKeyName);
3369
3370 HRESULT (STDMETHODCALLTYPE *EnumValues)(
3371 ISpObjectTokenInit *This,
3372 ULONG Index,
3373 LPWSTR *ppszValueName);
3374
3375 /*** ISpObjectToken methods ***/
3376 HRESULT (STDMETHODCALLTYPE *SetId)(
3377 ISpObjectTokenInit *This,
3378 LPCWSTR pszCategoryId,
3379 LPCWSTR pszTokenId,
3380 WINBOOL fCreateIfNotExist);
3381
3382 HRESULT (STDMETHODCALLTYPE *GetId)(
3383 ISpObjectTokenInit *This,
3384 LPWSTR *ppszCoMemTokenId);
3385
3386 HRESULT (STDMETHODCALLTYPE *GetCategory)(
3387 ISpObjectTokenInit *This,
3388 ISpObjectTokenCategory **ppTokenCategory);
3389
3390 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
3391 ISpObjectTokenInit *This,
3392 IUnknown *pUnkOuter,
3393 DWORD dwClsContext,
3394 REFIID riid,
3395 void **ppvObject);
3396
3397 HRESULT (STDMETHODCALLTYPE *GetStorageFileName)(
3398 ISpObjectTokenInit *This,
3399 REFCLSID clsidCaller,
3400 LPCWSTR pszValueName,
3401 LPCWSTR pszFileNameSpecifier,
3402 ULONG nFolder,
3403 LPWSTR *ppszFilePath);
3404
3405 HRESULT (STDMETHODCALLTYPE *RemoveStorageFileName)(
3406 ISpObjectTokenInit *This,
3407 REFCLSID clsidCaller,
3408 LPCWSTR pszKeyName,
3409 WINBOOL fDeleteFile);
3410
3411 HRESULT (STDMETHODCALLTYPE *Remove)(
3412 ISpObjectTokenInit *This,
3413 const CLSID *pclsidCaller);
3414
3415 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
3416 ISpObjectTokenInit *This,
3417 LPCWSTR pszTypeOfUI,
3418 void *pvExtraData,
3419 ULONG cbExtraData,
3420 IUnknown *punkObject,
3421 WINBOOL *pfSupported);
3422
3423 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
3424 ISpObjectTokenInit *This,
3425 HWND hwndParent,
3426 LPCWSTR pszTitle,
3427 LPCWSTR pszTypeOfUI,
3428 void *pvExtraData,
3429 ULONG cbExtraData,
3430 IUnknown *punkObject);
3431
3432 HRESULT (STDMETHODCALLTYPE *MatchesAttributes)(
3433 ISpObjectTokenInit *This,
3434 LPCWSTR pszAttributes,
3435 WINBOOL *pfMatches);
3436
3437 /*** ISpObjectTokenInit methods ***/
3438 HRESULT (STDMETHODCALLTYPE *InitFromDataKey)(
3439 ISpObjectTokenInit *This,
3440 LPCWSTR pszCategoryId,
3441 LPCWSTR pszTokenId,
3442 ISpDataKey *pDataKey);
3443
3444 END_INTERFACE
3445} ISpObjectTokenInitVtbl;
3446
3447interface ISpObjectTokenInit {
3448 CONST_VTBL ISpObjectTokenInitVtbl* lpVtbl;
3449};
3450
3451#ifdef COBJMACROS
3452#ifndef WIDL_C_INLINE_WRAPPERS
3453/*** IUnknown methods ***/
3454#define ISpObjectTokenInit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3455#define ISpObjectTokenInit_AddRef(This) (This)->lpVtbl->AddRef(This)
3456#define ISpObjectTokenInit_Release(This) (This)->lpVtbl->Release(This)
3457/*** ISpDataKey methods ***/
3458#define ISpObjectTokenInit_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
3459#define ISpObjectTokenInit_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
3460#define ISpObjectTokenInit_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
3461#define ISpObjectTokenInit_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
3462#define ISpObjectTokenInit_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
3463#define ISpObjectTokenInit_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
3464#define ISpObjectTokenInit_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
3465#define ISpObjectTokenInit_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
3466#define ISpObjectTokenInit_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
3467#define ISpObjectTokenInit_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
3468#define ISpObjectTokenInit_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
3469#define ISpObjectTokenInit_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
3470/*** ISpObjectToken methods ***/
3471#define ISpObjectTokenInit_SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist) (This)->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist)
3472#define ISpObjectTokenInit_GetId(This,ppszCoMemTokenId) (This)->lpVtbl->GetId(This,ppszCoMemTokenId)
3473#define ISpObjectTokenInit_GetCategory(This,ppTokenCategory) (This)->lpVtbl->GetCategory(This,ppTokenCategory)
3474#define ISpObjectTokenInit_CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject)
3475#define ISpObjectTokenInit_GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath) (This)->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath)
3476#define ISpObjectTokenInit_RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile) (This)->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile)
3477#define ISpObjectTokenInit_Remove(This,pclsidCaller) (This)->lpVtbl->Remove(This,pclsidCaller)
3478#define ISpObjectTokenInit_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported)
3479#define ISpObjectTokenInit_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject)
3480#define ISpObjectTokenInit_MatchesAttributes(This,pszAttributes,pfMatches) (This)->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches)
3481/*** ISpObjectTokenInit methods ***/
3482#define ISpObjectTokenInit_InitFromDataKey(This,pszCategoryId,pszTokenId,pDataKey) (This)->lpVtbl->InitFromDataKey(This,pszCategoryId,pszTokenId,pDataKey)
3483#else
3484/*** IUnknown methods ***/
3485static inline HRESULT ISpObjectTokenInit_QueryInterface(ISpObjectTokenInit* This,REFIID riid,void **ppvObject) {
3486 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3487}
3488static inline ULONG ISpObjectTokenInit_AddRef(ISpObjectTokenInit* This) {
3489 return This->lpVtbl->AddRef(This);
3490}
3491static inline ULONG ISpObjectTokenInit_Release(ISpObjectTokenInit* This) {
3492 return This->lpVtbl->Release(This);
3493}
3494/*** ISpDataKey methods ***/
3495static inline HRESULT ISpObjectTokenInit_SetData(ISpObjectTokenInit* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
3496 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
3497}
3498static inline HRESULT ISpObjectTokenInit_GetData(ISpObjectTokenInit* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
3499 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
3500}
3501static inline HRESULT ISpObjectTokenInit_SetStringValue(ISpObjectTokenInit* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
3502 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
3503}
3504static inline HRESULT ISpObjectTokenInit_GetStringValue(ISpObjectTokenInit* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
3505 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
3506}
3507static inline HRESULT ISpObjectTokenInit_SetDWORD(ISpObjectTokenInit* This,LPCWSTR pszValueName,DWORD dwValue) {
3508 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
3509}
3510static inline HRESULT ISpObjectTokenInit_GetDWORD(ISpObjectTokenInit* This,LPCWSTR pszValueName,DWORD *pdwValue) {
3511 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
3512}
3513static inline HRESULT ISpObjectTokenInit_OpenKey(ISpObjectTokenInit* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
3514 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
3515}
3516static inline HRESULT ISpObjectTokenInit_CreateKey(ISpObjectTokenInit* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
3517 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
3518}
3519static inline HRESULT ISpObjectTokenInit_DeleteKey(ISpObjectTokenInit* This,LPCWSTR pszSubKey) {
3520 return This->lpVtbl->DeleteKey(This,pszSubKey);
3521}
3522static inline HRESULT ISpObjectTokenInit_DeleteValue(ISpObjectTokenInit* This,LPCWSTR pszValueName) {
3523 return This->lpVtbl->DeleteValue(This,pszValueName);
3524}
3525static inline HRESULT ISpObjectTokenInit_EnumKeys(ISpObjectTokenInit* This,ULONG Index,LPWSTR *ppszSubKeyName) {
3526 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
3527}
3528static inline HRESULT ISpObjectTokenInit_EnumValues(ISpObjectTokenInit* This,ULONG Index,LPWSTR *ppszValueName) {
3529 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
3530}
3531/*** ISpObjectToken methods ***/
3532static inline HRESULT ISpObjectTokenInit_SetId(ISpObjectTokenInit* This,LPCWSTR pszCategoryId,LPCWSTR pszTokenId,WINBOOL fCreateIfNotExist) {
3533 return This->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist);
3534}
3535static inline HRESULT ISpObjectTokenInit_GetId(ISpObjectTokenInit* This,LPWSTR *ppszCoMemTokenId) {
3536 return This->lpVtbl->GetId(This,ppszCoMemTokenId);
3537}
3538static inline HRESULT ISpObjectTokenInit_GetCategory(ISpObjectTokenInit* This,ISpObjectTokenCategory **ppTokenCategory) {
3539 return This->lpVtbl->GetCategory(This,ppTokenCategory);
3540}
3541static inline HRESULT ISpObjectTokenInit_CreateInstance(ISpObjectTokenInit* This,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,void **ppvObject) {
3542 return This->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject);
3543}
3544static inline HRESULT ISpObjectTokenInit_GetStorageFileName(ISpObjectTokenInit* This,REFCLSID clsidCaller,LPCWSTR pszValueName,LPCWSTR pszFileNameSpecifier,ULONG nFolder,LPWSTR *ppszFilePath) {
3545 return This->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath);
3546}
3547static inline HRESULT ISpObjectTokenInit_RemoveStorageFileName(ISpObjectTokenInit* This,REFCLSID clsidCaller,LPCWSTR pszKeyName,WINBOOL fDeleteFile) {
3548 return This->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile);
3549}
3550static inline HRESULT ISpObjectTokenInit_Remove(ISpObjectTokenInit* This,const CLSID *pclsidCaller) {
3551 return This->lpVtbl->Remove(This,pclsidCaller);
3552}
3553static inline HRESULT ISpObjectTokenInit_IsUISupported(ISpObjectTokenInit* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject,WINBOOL *pfSupported) {
3554 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported);
3555}
3556static inline HRESULT ISpObjectTokenInit_DisplayUI(ISpObjectTokenInit* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject) {
3557 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject);
3558}
3559static inline HRESULT ISpObjectTokenInit_MatchesAttributes(ISpObjectTokenInit* This,LPCWSTR pszAttributes,WINBOOL *pfMatches) {
3560 return This->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches);
3561}
3562/*** ISpObjectTokenInit methods ***/
3563static inline HRESULT ISpObjectTokenInit_InitFromDataKey(ISpObjectTokenInit* This,LPCWSTR pszCategoryId,LPCWSTR pszTokenId,ISpDataKey *pDataKey) {
3564 return This->lpVtbl->InitFromDataKey(This,pszCategoryId,pszTokenId,pDataKey);
3565}
3566#endif
3567#endif
3568
3569#endif
3570
3571
3572#endif /* __ISpObjectTokenInit_INTERFACE_DEFINED__ */
3573
3574/*****************************************************************************
3575 * ISpResourceManager interface
3576 */
3577#ifndef __ISpResourceManager_INTERFACE_DEFINED__
3578#define __ISpResourceManager_INTERFACE_DEFINED__
3579
3580DEFINE_GUID(IID_ISpResourceManager, 0x93384e18, 0x5014, 0x43d5, 0xad,0xbb, 0xa7,0x8e,0x05,0x59,0x26,0xbd);
3581#if defined(__cplusplus) && !defined(CINTERFACE)
3582MIDL_INTERFACE("93384e18-5014-43d5-adbb-a78e055926bd")
3583ISpResourceManager : public IServiceProvider
3584{
3585 virtual HRESULT STDMETHODCALLTYPE SetObject(
3586 REFGUID guidServiceId,
3587 IUnknown *pUnkObject) = 0;
3588
3589 virtual HRESULT STDMETHODCALLTYPE GetObject(
3590 REFGUID guidServiceId,
3591 REFCLSID ObjectCLSID,
3592 REFIID ObjectIID,
3593 WINBOOL fReleaseWhenLastExternalRefReleased,
3594 void **ppObject) = 0;
3595
3596};
3597#ifdef __CRT_UUID_DECL
3598__CRT_UUID_DECL(ISpResourceManager, 0x93384e18, 0x5014, 0x43d5, 0xad,0xbb, 0xa7,0x8e,0x05,0x59,0x26,0xbd)
3599#endif
3600#else
3601typedef struct ISpResourceManagerVtbl {
3602 BEGIN_INTERFACE
3603
3604 /*** IUnknown methods ***/
3605 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3606 ISpResourceManager *This,
3607 REFIID riid,
3608 void **ppvObject);
3609
3610 ULONG (STDMETHODCALLTYPE *AddRef)(
3611 ISpResourceManager *This);
3612
3613 ULONG (STDMETHODCALLTYPE *Release)(
3614 ISpResourceManager *This);
3615
3616 /*** IServiceProvider methods ***/
3617 HRESULT (STDMETHODCALLTYPE *QueryService)(
3618 ISpResourceManager *This,
3619 REFGUID guidService,
3620 REFIID riid,
3621 void **ppvObject);
3622
3623 /*** ISpResourceManager methods ***/
3624 HRESULT (STDMETHODCALLTYPE *SetObject)(
3625 ISpResourceManager *This,
3626 REFGUID guidServiceId,
3627 IUnknown *pUnkObject);
3628
3629 HRESULT (STDMETHODCALLTYPE *GetObject)(
3630 ISpResourceManager *This,
3631 REFGUID guidServiceId,
3632 REFCLSID ObjectCLSID,
3633 REFIID ObjectIID,
3634 WINBOOL fReleaseWhenLastExternalRefReleased,
3635 void **ppObject);
3636
3637 END_INTERFACE
3638} ISpResourceManagerVtbl;
3639
3640interface ISpResourceManager {
3641 CONST_VTBL ISpResourceManagerVtbl* lpVtbl;
3642};
3643
3644#ifdef COBJMACROS
3645#ifndef WIDL_C_INLINE_WRAPPERS
3646/*** IUnknown methods ***/
3647#define ISpResourceManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3648#define ISpResourceManager_AddRef(This) (This)->lpVtbl->AddRef(This)
3649#define ISpResourceManager_Release(This) (This)->lpVtbl->Release(This)
3650/*** IServiceProvider methods ***/
3651#define ISpResourceManager_QueryService(This,guidService,riid,ppvObject) (This)->lpVtbl->QueryService(This,guidService,riid,ppvObject)
3652/*** ISpResourceManager methods ***/
3653#define ISpResourceManager_SetObject(This,guidServiceId,pUnkObject) (This)->lpVtbl->SetObject(This,guidServiceId,pUnkObject)
3654#define ISpResourceManager_GetObject(This,guidServiceId,ObjectCLSID,ObjectIID,fReleaseWhenLastExternalRefReleased,ppObject) (This)->lpVtbl->GetObject(This,guidServiceId,ObjectCLSID,ObjectIID,fReleaseWhenLastExternalRefReleased,ppObject)
3655#else
3656/*** IUnknown methods ***/
3657static inline HRESULT ISpResourceManager_QueryInterface(ISpResourceManager* This,REFIID riid,void **ppvObject) {
3658 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3659}
3660static inline ULONG ISpResourceManager_AddRef(ISpResourceManager* This) {
3661 return This->lpVtbl->AddRef(This);
3662}
3663static inline ULONG ISpResourceManager_Release(ISpResourceManager* This) {
3664 return This->lpVtbl->Release(This);
3665}
3666/*** IServiceProvider methods ***/
3667static inline HRESULT ISpResourceManager_QueryService(ISpResourceManager* This,REFGUID guidService,REFIID riid,void **ppvObject) {
3668 return This->lpVtbl->QueryService(This,guidService,riid,ppvObject);
3669}
3670/*** ISpResourceManager methods ***/
3671static inline HRESULT ISpResourceManager_SetObject(ISpResourceManager* This,REFGUID guidServiceId,IUnknown *pUnkObject) {
3672 return This->lpVtbl->SetObject(This,guidServiceId,pUnkObject);
3673}
3674static inline HRESULT ISpResourceManager_GetObject(ISpResourceManager* This,REFGUID guidServiceId,REFCLSID ObjectCLSID,REFIID ObjectIID,WINBOOL fReleaseWhenLastExternalRefReleased,void **ppObject) {
3675 return This->lpVtbl->GetObject(This,guidServiceId,ObjectCLSID,ObjectIID,fReleaseWhenLastExternalRefReleased,ppObject);
3676}
3677#endif
3678#endif
3679
3680#endif
3681
3682
3683#endif /* __ISpResourceManager_INTERFACE_DEFINED__ */
3684
3685#if 0
3686typedef struct SPEVENT {
3687 WORD eEventId;
3688 WORD elParamType;
3689 ULONG ulStreamNum;
3690 ULONGLONG ullAudioStreamOffset;
3691 WPARAM wParam;
3692 LPARAM lParam;
3693} SPEVENT;
3694typedef struct SPSERIALIZEDEVENT {
3695 WORD eEventId;
3696 WORD elParamType;
3697 ULONG ulStreamNum;
3698 ULONGLONG ullAudioStreamOffset;
3699 ULONG SerializedwParam;
3700 LONG SerializedlParam;
3701} SPSERIALIZEDEVENT;
3702typedef struct SPSERIALIZEDEVENT64 {
3703 WORD eEventId;
3704 WORD elParamType;
3705 ULONG ulStreamNum;
3706 ULONGLONG ullAudioStreamOffset;
3707 ULONGLONG SerializedwParam;
3708 LONGLONG SerializedlParam;
3709} SPSERIALIZEDEVENT64;
3710#else
3711typedef struct SPEVENT {
3712 SPEVENTENUM eEventId : 16;
3713 SPEVENTLPARAMTYPE elParamType : 16;
3714 ULONG ulStreamNum;
3715 ULONGLONG ullAudioStreamOffset;
3716 WPARAM wParam;
3717 LPARAM lParam;
3718} SPEVENT;
3719
3720typedef struct SPSERIALIZEDEVENT {
3721 SPEVENTENUM eEventId : 16;
3722 SPEVENTLPARAMTYPE elParamType : 16;
3723 ULONG ulStreamNum;
3724 ULONGLONG ullAudioStreamOffset;
3725 ULONG SerializedwParam;
3726 LONG SerializedlParam;
3727} SPSERIALIZEDEVENT;
3728
3729typedef struct SPSERIALIZEDEVENT64 {
3730 SPEVENTENUM eEventId : 16;
3731 SPEVENTLPARAMTYPE elParamType : 16;
3732 ULONG ulStreamNum;
3733 ULONGLONG ullAudioStreamOffset;
3734 ULONGLONG SerializedwParam;
3735 LONGLONG SerializedlParam;
3736} SPSERIALIZEDEVENT64;
3737#endif
3738#if 0
3739typedef struct SPEVENTEX {
3740 WORD eEventId;
3741 WORD elParamType;
3742 ULONG ulStreamNum;
3743 ULONGLONG ullAudioStreamOffset;
3744 WPARAM wParam;
3745 LPARAM lParam;
3746 ULONGLONG ullAudioTimeOffset;
3747} SPEVENTEX;
3748#else
3749typedef struct SPEVENTEX {
3750 SPEVENTENUM eEventId : 16;
3751 SPEVENTLPARAMTYPE elParamType : 16;
3752 ULONG ulStreamNum;
3753 ULONGLONG ullAudioStreamOffset;
3754 WPARAM wParam;
3755 LPARAM lParam;
3756 ULONGLONG ullAudioTimeOffset;
3757} SPEVENTEX;
3758#endif
3759typedef struct SPEVENTSOURCEINFO {
3760 ULONGLONG ullEventInterest;
3761 ULONGLONG ullQueuedInterest;
3762 ULONG ulCount;
3763} SPEVENTSOURCEINFO;
3764/*****************************************************************************
3765 * ISpEventSource interface
3766 */
3767#ifndef __ISpEventSource_INTERFACE_DEFINED__
3768#define __ISpEventSource_INTERFACE_DEFINED__
3769
3770DEFINE_GUID(IID_ISpEventSource, 0xbe7a9cce, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
3771#if defined(__cplusplus) && !defined(CINTERFACE)
3772MIDL_INTERFACE("be7a9cce-5f9e-11d2-960f-00c04f8ee628")
3773ISpEventSource : public ISpNotifySource
3774{
3775 virtual HRESULT STDMETHODCALLTYPE SetInterest(
3776 ULONGLONG ullEventInterest,
3777 ULONGLONG ullQueuedInterest) = 0;
3778
3779 virtual HRESULT STDMETHODCALLTYPE GetEvents(
3780 ULONG ulCount,
3781 SPEVENT *pEventArray,
3782 ULONG *pulFetched) = 0;
3783
3784 virtual HRESULT STDMETHODCALLTYPE GetInfo(
3785 SPEVENTSOURCEINFO *pInfo) = 0;
3786
3787};
3788#ifdef __CRT_UUID_DECL
3789__CRT_UUID_DECL(ISpEventSource, 0xbe7a9cce, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
3790#endif
3791#else
3792typedef struct ISpEventSourceVtbl {
3793 BEGIN_INTERFACE
3794
3795 /*** IUnknown methods ***/
3796 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3797 ISpEventSource *This,
3798 REFIID riid,
3799 void **ppvObject);
3800
3801 ULONG (STDMETHODCALLTYPE *AddRef)(
3802 ISpEventSource *This);
3803
3804 ULONG (STDMETHODCALLTYPE *Release)(
3805 ISpEventSource *This);
3806
3807 /*** ISpNotifySource methods ***/
3808 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
3809 ISpEventSource *This,
3810 ISpNotifySink *pNotifySink);
3811
3812 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
3813 ISpEventSource *This,
3814 HWND hWnd,
3815 UINT Msg,
3816 WPARAM wParam,
3817 LPARAM lParam);
3818
3819 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
3820 ISpEventSource *This,
3821 SPNOTIFYCALLBACK *pfnCallback,
3822 WPARAM wParam,
3823 LPARAM lParam);
3824
3825 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
3826 ISpEventSource *This,
3827 ISpNotifyCallback *pSpCallback,
3828 WPARAM wParam,
3829 LPARAM lParam);
3830
3831 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
3832 ISpEventSource *This);
3833
3834 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
3835 ISpEventSource *This,
3836 DWORD dwMilliseconds);
3837
3838 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
3839 ISpEventSource *This);
3840
3841 /*** ISpEventSource methods ***/
3842 HRESULT (STDMETHODCALLTYPE *SetInterest)(
3843 ISpEventSource *This,
3844 ULONGLONG ullEventInterest,
3845 ULONGLONG ullQueuedInterest);
3846
3847 HRESULT (STDMETHODCALLTYPE *GetEvents)(
3848 ISpEventSource *This,
3849 ULONG ulCount,
3850 SPEVENT *pEventArray,
3851 ULONG *pulFetched);
3852
3853 HRESULT (STDMETHODCALLTYPE *GetInfo)(
3854 ISpEventSource *This,
3855 SPEVENTSOURCEINFO *pInfo);
3856
3857 END_INTERFACE
3858} ISpEventSourceVtbl;
3859
3860interface ISpEventSource {
3861 CONST_VTBL ISpEventSourceVtbl* lpVtbl;
3862};
3863
3864#ifdef COBJMACROS
3865#ifndef WIDL_C_INLINE_WRAPPERS
3866/*** IUnknown methods ***/
3867#define ISpEventSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3868#define ISpEventSource_AddRef(This) (This)->lpVtbl->AddRef(This)
3869#define ISpEventSource_Release(This) (This)->lpVtbl->Release(This)
3870/*** ISpNotifySource methods ***/
3871#define ISpEventSource_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
3872#define ISpEventSource_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
3873#define ISpEventSource_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
3874#define ISpEventSource_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
3875#define ISpEventSource_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
3876#define ISpEventSource_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
3877#define ISpEventSource_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
3878/*** ISpEventSource methods ***/
3879#define ISpEventSource_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
3880#define ISpEventSource_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
3881#define ISpEventSource_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
3882#else
3883/*** IUnknown methods ***/
3884static inline HRESULT ISpEventSource_QueryInterface(ISpEventSource* This,REFIID riid,void **ppvObject) {
3885 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3886}
3887static inline ULONG ISpEventSource_AddRef(ISpEventSource* This) {
3888 return This->lpVtbl->AddRef(This);
3889}
3890static inline ULONG ISpEventSource_Release(ISpEventSource* This) {
3891 return This->lpVtbl->Release(This);
3892}
3893/*** ISpNotifySource methods ***/
3894static inline HRESULT ISpEventSource_SetNotifySink(ISpEventSource* This,ISpNotifySink *pNotifySink) {
3895 return This->lpVtbl->SetNotifySink(This,pNotifySink);
3896}
3897static inline HRESULT ISpEventSource_SetNotifyWindowMessage(ISpEventSource* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
3898 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
3899}
3900static inline HRESULT ISpEventSource_SetNotifyCallbackFunction(ISpEventSource* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
3901 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
3902}
3903static inline HRESULT ISpEventSource_SetNotifyCallbackInterface(ISpEventSource* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
3904 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
3905}
3906static inline HRESULT ISpEventSource_SetNotifyWin32Event(ISpEventSource* This) {
3907 return This->lpVtbl->SetNotifyWin32Event(This);
3908}
3909static inline HRESULT ISpEventSource_WaitForNotifyEvent(ISpEventSource* This,DWORD dwMilliseconds) {
3910 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
3911}
3912static inline HANDLE ISpEventSource_GetNotifyEventHandle(ISpEventSource* This) {
3913 return This->lpVtbl->GetNotifyEventHandle(This);
3914}
3915/*** ISpEventSource methods ***/
3916static inline HRESULT ISpEventSource_SetInterest(ISpEventSource* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
3917 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
3918}
3919static inline HRESULT ISpEventSource_GetEvents(ISpEventSource* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
3920 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
3921}
3922static inline HRESULT ISpEventSource_GetInfo(ISpEventSource* This,SPEVENTSOURCEINFO *pInfo) {
3923 return This->lpVtbl->GetInfo(This,pInfo);
3924}
3925#endif
3926#endif
3927
3928#endif
3929
3930
3931#endif /* __ISpEventSource_INTERFACE_DEFINED__ */
3932
3933/*****************************************************************************
3934 * ISpEventSource2 interface
3935 */
3936#ifndef __ISpEventSource2_INTERFACE_DEFINED__
3937#define __ISpEventSource2_INTERFACE_DEFINED__
3938
3939DEFINE_GUID(IID_ISpEventSource2, 0x2373a435, 0x6a4b, 0x429e, 0xa6,0xac, 0xd4,0x23,0x1a,0x61,0x97,0x5b);
3940#if defined(__cplusplus) && !defined(CINTERFACE)
3941MIDL_INTERFACE("2373a435-6a4b-429e-a6ac-d4231a61975b")
3942ISpEventSource2 : public ISpEventSource
3943{
3944 virtual HRESULT STDMETHODCALLTYPE GetEventsEx(
3945 ULONG ulCount,
3946 SPEVENTEX *pEventArray,
3947 ULONG *pulFetched) = 0;
3948
3949};
3950#ifdef __CRT_UUID_DECL
3951__CRT_UUID_DECL(ISpEventSource2, 0x2373a435, 0x6a4b, 0x429e, 0xa6,0xac, 0xd4,0x23,0x1a,0x61,0x97,0x5b)
3952#endif
3953#else
3954typedef struct ISpEventSource2Vtbl {
3955 BEGIN_INTERFACE
3956
3957 /*** IUnknown methods ***/
3958 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3959 ISpEventSource2 *This,
3960 REFIID riid,
3961 void **ppvObject);
3962
3963 ULONG (STDMETHODCALLTYPE *AddRef)(
3964 ISpEventSource2 *This);
3965
3966 ULONG (STDMETHODCALLTYPE *Release)(
3967 ISpEventSource2 *This);
3968
3969 /*** ISpNotifySource methods ***/
3970 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
3971 ISpEventSource2 *This,
3972 ISpNotifySink *pNotifySink);
3973
3974 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
3975 ISpEventSource2 *This,
3976 HWND hWnd,
3977 UINT Msg,
3978 WPARAM wParam,
3979 LPARAM lParam);
3980
3981 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
3982 ISpEventSource2 *This,
3983 SPNOTIFYCALLBACK *pfnCallback,
3984 WPARAM wParam,
3985 LPARAM lParam);
3986
3987 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
3988 ISpEventSource2 *This,
3989 ISpNotifyCallback *pSpCallback,
3990 WPARAM wParam,
3991 LPARAM lParam);
3992
3993 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
3994 ISpEventSource2 *This);
3995
3996 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
3997 ISpEventSource2 *This,
3998 DWORD dwMilliseconds);
3999
4000 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
4001 ISpEventSource2 *This);
4002
4003 /*** ISpEventSource methods ***/
4004 HRESULT (STDMETHODCALLTYPE *SetInterest)(
4005 ISpEventSource2 *This,
4006 ULONGLONG ullEventInterest,
4007 ULONGLONG ullQueuedInterest);
4008
4009 HRESULT (STDMETHODCALLTYPE *GetEvents)(
4010 ISpEventSource2 *This,
4011 ULONG ulCount,
4012 SPEVENT *pEventArray,
4013 ULONG *pulFetched);
4014
4015 HRESULT (STDMETHODCALLTYPE *GetInfo)(
4016 ISpEventSource2 *This,
4017 SPEVENTSOURCEINFO *pInfo);
4018
4019 /*** ISpEventSource2 methods ***/
4020 HRESULT (STDMETHODCALLTYPE *GetEventsEx)(
4021 ISpEventSource2 *This,
4022 ULONG ulCount,
4023 SPEVENTEX *pEventArray,
4024 ULONG *pulFetched);
4025
4026 END_INTERFACE
4027} ISpEventSource2Vtbl;
4028
4029interface ISpEventSource2 {
4030 CONST_VTBL ISpEventSource2Vtbl* lpVtbl;
4031};
4032
4033#ifdef COBJMACROS
4034#ifndef WIDL_C_INLINE_WRAPPERS
4035/*** IUnknown methods ***/
4036#define ISpEventSource2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4037#define ISpEventSource2_AddRef(This) (This)->lpVtbl->AddRef(This)
4038#define ISpEventSource2_Release(This) (This)->lpVtbl->Release(This)
4039/*** ISpNotifySource methods ***/
4040#define ISpEventSource2_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
4041#define ISpEventSource2_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
4042#define ISpEventSource2_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
4043#define ISpEventSource2_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
4044#define ISpEventSource2_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
4045#define ISpEventSource2_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
4046#define ISpEventSource2_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
4047/*** ISpEventSource methods ***/
4048#define ISpEventSource2_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
4049#define ISpEventSource2_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
4050#define ISpEventSource2_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
4051/*** ISpEventSource2 methods ***/
4052#define ISpEventSource2_GetEventsEx(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEventsEx(This,ulCount,pEventArray,pulFetched)
4053#else
4054/*** IUnknown methods ***/
4055static inline HRESULT ISpEventSource2_QueryInterface(ISpEventSource2* This,REFIID riid,void **ppvObject) {
4056 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4057}
4058static inline ULONG ISpEventSource2_AddRef(ISpEventSource2* This) {
4059 return This->lpVtbl->AddRef(This);
4060}
4061static inline ULONG ISpEventSource2_Release(ISpEventSource2* This) {
4062 return This->lpVtbl->Release(This);
4063}
4064/*** ISpNotifySource methods ***/
4065static inline HRESULT ISpEventSource2_SetNotifySink(ISpEventSource2* This,ISpNotifySink *pNotifySink) {
4066 return This->lpVtbl->SetNotifySink(This,pNotifySink);
4067}
4068static inline HRESULT ISpEventSource2_SetNotifyWindowMessage(ISpEventSource2* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
4069 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
4070}
4071static inline HRESULT ISpEventSource2_SetNotifyCallbackFunction(ISpEventSource2* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
4072 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
4073}
4074static inline HRESULT ISpEventSource2_SetNotifyCallbackInterface(ISpEventSource2* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
4075 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
4076}
4077static inline HRESULT ISpEventSource2_SetNotifyWin32Event(ISpEventSource2* This) {
4078 return This->lpVtbl->SetNotifyWin32Event(This);
4079}
4080static inline HRESULT ISpEventSource2_WaitForNotifyEvent(ISpEventSource2* This,DWORD dwMilliseconds) {
4081 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
4082}
4083static inline HANDLE ISpEventSource2_GetNotifyEventHandle(ISpEventSource2* This) {
4084 return This->lpVtbl->GetNotifyEventHandle(This);
4085}
4086/*** ISpEventSource methods ***/
4087static inline HRESULT ISpEventSource2_SetInterest(ISpEventSource2* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
4088 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
4089}
4090static inline HRESULT ISpEventSource2_GetEvents(ISpEventSource2* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
4091 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
4092}
4093static inline HRESULT ISpEventSource2_GetInfo(ISpEventSource2* This,SPEVENTSOURCEINFO *pInfo) {
4094 return This->lpVtbl->GetInfo(This,pInfo);
4095}
4096/*** ISpEventSource2 methods ***/
4097static inline HRESULT ISpEventSource2_GetEventsEx(ISpEventSource2* This,ULONG ulCount,SPEVENTEX *pEventArray,ULONG *pulFetched) {
4098 return This->lpVtbl->GetEventsEx(This,ulCount,pEventArray,pulFetched);
4099}
4100#endif
4101#endif
4102
4103#endif
4104
4105
4106#endif /* __ISpEventSource2_INTERFACE_DEFINED__ */
4107
4108/*****************************************************************************
4109 * ISpEventSink interface
4110 */
4111#ifndef __ISpEventSink_INTERFACE_DEFINED__
4112#define __ISpEventSink_INTERFACE_DEFINED__
4113
4114DEFINE_GUID(IID_ISpEventSink, 0xbe7a9cc9, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
4115#if defined(__cplusplus) && !defined(CINTERFACE)
4116MIDL_INTERFACE("be7a9cc9-5f9e-11d2-960f-00c04f8ee628")
4117ISpEventSink : public IUnknown
4118{
4119 virtual HRESULT STDMETHODCALLTYPE AddEvents(
4120 const SPEVENT *pEventArray,
4121 ULONG ulCount) = 0;
4122
4123 virtual HRESULT STDMETHODCALLTYPE GetEventInterest(
4124 ULONGLONG *pullEventInterest) = 0;
4125
4126};
4127#ifdef __CRT_UUID_DECL
4128__CRT_UUID_DECL(ISpEventSink, 0xbe7a9cc9, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
4129#endif
4130#else
4131typedef struct ISpEventSinkVtbl {
4132 BEGIN_INTERFACE
4133
4134 /*** IUnknown methods ***/
4135 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4136 ISpEventSink *This,
4137 REFIID riid,
4138 void **ppvObject);
4139
4140 ULONG (STDMETHODCALLTYPE *AddRef)(
4141 ISpEventSink *This);
4142
4143 ULONG (STDMETHODCALLTYPE *Release)(
4144 ISpEventSink *This);
4145
4146 /*** ISpEventSink methods ***/
4147 HRESULT (STDMETHODCALLTYPE *AddEvents)(
4148 ISpEventSink *This,
4149 const SPEVENT *pEventArray,
4150 ULONG ulCount);
4151
4152 HRESULT (STDMETHODCALLTYPE *GetEventInterest)(
4153 ISpEventSink *This,
4154 ULONGLONG *pullEventInterest);
4155
4156 END_INTERFACE
4157} ISpEventSinkVtbl;
4158
4159interface ISpEventSink {
4160 CONST_VTBL ISpEventSinkVtbl* lpVtbl;
4161};
4162
4163#ifdef COBJMACROS
4164#ifndef WIDL_C_INLINE_WRAPPERS
4165/*** IUnknown methods ***/
4166#define ISpEventSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4167#define ISpEventSink_AddRef(This) (This)->lpVtbl->AddRef(This)
4168#define ISpEventSink_Release(This) (This)->lpVtbl->Release(This)
4169/*** ISpEventSink methods ***/
4170#define ISpEventSink_AddEvents(This,pEventArray,ulCount) (This)->lpVtbl->AddEvents(This,pEventArray,ulCount)
4171#define ISpEventSink_GetEventInterest(This,pullEventInterest) (This)->lpVtbl->GetEventInterest(This,pullEventInterest)
4172#else
4173/*** IUnknown methods ***/
4174static inline HRESULT ISpEventSink_QueryInterface(ISpEventSink* This,REFIID riid,void **ppvObject) {
4175 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4176}
4177static inline ULONG ISpEventSink_AddRef(ISpEventSink* This) {
4178 return This->lpVtbl->AddRef(This);
4179}
4180static inline ULONG ISpEventSink_Release(ISpEventSink* This) {
4181 return This->lpVtbl->Release(This);
4182}
4183/*** ISpEventSink methods ***/
4184static inline HRESULT ISpEventSink_AddEvents(ISpEventSink* This,const SPEVENT *pEventArray,ULONG ulCount) {
4185 return This->lpVtbl->AddEvents(This,pEventArray,ulCount);
4186}
4187static inline HRESULT ISpEventSink_GetEventInterest(ISpEventSink* This,ULONGLONG *pullEventInterest) {
4188 return This->lpVtbl->GetEventInterest(This,pullEventInterest);
4189}
4190#endif
4191#endif
4192
4193#endif
4194
4195
4196#endif /* __ISpEventSink_INTERFACE_DEFINED__ */
4197
4198/*****************************************************************************
4199 * ISpStreamFormat interface
4200 */
4201#ifndef __ISpStreamFormat_INTERFACE_DEFINED__
4202#define __ISpStreamFormat_INTERFACE_DEFINED__
4203
4204DEFINE_GUID(IID_ISpStreamFormat, 0xbed530be, 0x2606, 0x4f4d, 0xa1,0xc0, 0x54,0xc5,0xcd,0xa5,0x56,0x6f);
4205#if defined(__cplusplus) && !defined(CINTERFACE)
4206MIDL_INTERFACE("bed530be-2606-4f4d-a1c0-54c5cda5566f")
4207ISpStreamFormat : public IStream
4208{
4209 virtual HRESULT STDMETHODCALLTYPE GetFormat(
4210 GUID *pguidFormatId,
4211 WAVEFORMATEX **ppCoMemWaveFormatEx) = 0;
4212
4213};
4214#ifdef __CRT_UUID_DECL
4215__CRT_UUID_DECL(ISpStreamFormat, 0xbed530be, 0x2606, 0x4f4d, 0xa1,0xc0, 0x54,0xc5,0xcd,0xa5,0x56,0x6f)
4216#endif
4217#else
4218typedef struct ISpStreamFormatVtbl {
4219 BEGIN_INTERFACE
4220
4221 /*** IUnknown methods ***/
4222 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4223 ISpStreamFormat *This,
4224 REFIID riid,
4225 void **ppvObject);
4226
4227 ULONG (STDMETHODCALLTYPE *AddRef)(
4228 ISpStreamFormat *This);
4229
4230 ULONG (STDMETHODCALLTYPE *Release)(
4231 ISpStreamFormat *This);
4232
4233 /*** ISequentialStream methods ***/
4234 HRESULT (STDMETHODCALLTYPE *Read)(
4235 ISpStreamFormat *This,
4236 void *pv,
4237 ULONG cb,
4238 ULONG *pcbRead);
4239
4240 HRESULT (STDMETHODCALLTYPE *Write)(
4241 ISpStreamFormat *This,
4242 const void *pv,
4243 ULONG cb,
4244 ULONG *pcbWritten);
4245
4246 /*** IStream methods ***/
4247 HRESULT (STDMETHODCALLTYPE *Seek)(
4248 ISpStreamFormat *This,
4249 LARGE_INTEGER dlibMove,
4250 DWORD dwOrigin,
4251 ULARGE_INTEGER *plibNewPosition);
4252
4253 HRESULT (STDMETHODCALLTYPE *SetSize)(
4254 ISpStreamFormat *This,
4255 ULARGE_INTEGER libNewSize);
4256
4257 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4258 ISpStreamFormat *This,
4259 IStream *pstm,
4260 ULARGE_INTEGER cb,
4261 ULARGE_INTEGER *pcbRead,
4262 ULARGE_INTEGER *pcbWritten);
4263
4264 HRESULT (STDMETHODCALLTYPE *Commit)(
4265 ISpStreamFormat *This,
4266 DWORD grfCommitFlags);
4267
4268 HRESULT (STDMETHODCALLTYPE *Revert)(
4269 ISpStreamFormat *This);
4270
4271 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4272 ISpStreamFormat *This,
4273 ULARGE_INTEGER libOffset,
4274 ULARGE_INTEGER cb,
4275 DWORD dwLockType);
4276
4277 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4278 ISpStreamFormat *This,
4279 ULARGE_INTEGER libOffset,
4280 ULARGE_INTEGER cb,
4281 DWORD dwLockType);
4282
4283 HRESULT (STDMETHODCALLTYPE *Stat)(
4284 ISpStreamFormat *This,
4285 STATSTG *pstatstg,
4286 DWORD grfStatFlag);
4287
4288 HRESULT (STDMETHODCALLTYPE *Clone)(
4289 ISpStreamFormat *This,
4290 IStream **ppstm);
4291
4292 /*** ISpStreamFormat methods ***/
4293 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4294 ISpStreamFormat *This,
4295 GUID *pguidFormatId,
4296 WAVEFORMATEX **ppCoMemWaveFormatEx);
4297
4298 END_INTERFACE
4299} ISpStreamFormatVtbl;
4300
4301interface ISpStreamFormat {
4302 CONST_VTBL ISpStreamFormatVtbl* lpVtbl;
4303};
4304
4305#ifdef COBJMACROS
4306#ifndef WIDL_C_INLINE_WRAPPERS
4307/*** IUnknown methods ***/
4308#define ISpStreamFormat_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4309#define ISpStreamFormat_AddRef(This) (This)->lpVtbl->AddRef(This)
4310#define ISpStreamFormat_Release(This) (This)->lpVtbl->Release(This)
4311/*** ISequentialStream methods ***/
4312#define ISpStreamFormat_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4313#define ISpStreamFormat_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4314/*** IStream methods ***/
4315#define ISpStreamFormat_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4316#define ISpStreamFormat_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4317#define ISpStreamFormat_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4318#define ISpStreamFormat_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4319#define ISpStreamFormat_Revert(This) (This)->lpVtbl->Revert(This)
4320#define ISpStreamFormat_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4321#define ISpStreamFormat_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4322#define ISpStreamFormat_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4323#define ISpStreamFormat_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4324/*** ISpStreamFormat methods ***/
4325#define ISpStreamFormat_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4326#else
4327/*** IUnknown methods ***/
4328static inline HRESULT ISpStreamFormat_QueryInterface(ISpStreamFormat* This,REFIID riid,void **ppvObject) {
4329 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4330}
4331static inline ULONG ISpStreamFormat_AddRef(ISpStreamFormat* This) {
4332 return This->lpVtbl->AddRef(This);
4333}
4334static inline ULONG ISpStreamFormat_Release(ISpStreamFormat* This) {
4335 return This->lpVtbl->Release(This);
4336}
4337/*** ISequentialStream methods ***/
4338static inline HRESULT ISpStreamFormat_Read(ISpStreamFormat* This,void *pv,ULONG cb,ULONG *pcbRead) {
4339 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4340}
4341static inline HRESULT ISpStreamFormat_Write(ISpStreamFormat* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4342 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
4343}
4344/*** IStream methods ***/
4345static inline HRESULT ISpStreamFormat_Seek(ISpStreamFormat* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
4346 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
4347}
4348static inline HRESULT ISpStreamFormat_SetSize(ISpStreamFormat* This,ULARGE_INTEGER libNewSize) {
4349 return This->lpVtbl->SetSize(This,libNewSize);
4350}
4351static inline HRESULT ISpStreamFormat_CopyTo(ISpStreamFormat* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
4352 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
4353}
4354static inline HRESULT ISpStreamFormat_Commit(ISpStreamFormat* This,DWORD grfCommitFlags) {
4355 return This->lpVtbl->Commit(This,grfCommitFlags);
4356}
4357static inline HRESULT ISpStreamFormat_Revert(ISpStreamFormat* This) {
4358 return This->lpVtbl->Revert(This);
4359}
4360static inline HRESULT ISpStreamFormat_LockRegion(ISpStreamFormat* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4361 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
4362}
4363static inline HRESULT ISpStreamFormat_UnlockRegion(ISpStreamFormat* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4364 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
4365}
4366static inline HRESULT ISpStreamFormat_Stat(ISpStreamFormat* This,STATSTG *pstatstg,DWORD grfStatFlag) {
4367 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
4368}
4369static inline HRESULT ISpStreamFormat_Clone(ISpStreamFormat* This,IStream **ppstm) {
4370 return This->lpVtbl->Clone(This,ppstm);
4371}
4372/*** ISpStreamFormat methods ***/
4373static inline HRESULT ISpStreamFormat_GetFormat(ISpStreamFormat* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4374 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
4375}
4376#endif
4377#endif
4378
4379#endif
4380
4381
4382#endif /* __ISpStreamFormat_INTERFACE_DEFINED__ */
4383
4384/*****************************************************************************
4385 * ISpStream interface
4386 */
4387#ifndef __ISpStream_INTERFACE_DEFINED__
4388#define __ISpStream_INTERFACE_DEFINED__
4389
4390DEFINE_GUID(IID_ISpStream, 0x12e3cca9, 0x7518, 0x44c5, 0xa5,0xe7, 0xba,0x5a,0x79,0xcb,0x92,0x9e);
4391#if defined(__cplusplus) && !defined(CINTERFACE)
4392MIDL_INTERFACE("12e3cca9-7518-44c5-a5e7-ba5a79cb929e")
4393ISpStream : public ISpStreamFormat
4394{
4395 virtual HRESULT STDMETHODCALLTYPE SetBaseStream(
4396 IStream *pStream,
4397 REFGUID rguidFormat,
4398 const WAVEFORMATEX *pWaveFormatEx) = 0;
4399
4400 virtual HRESULT STDMETHODCALLTYPE GetBaseStream(
4401 IStream **ppStream) = 0;
4402
4403 virtual HRESULT STDMETHODCALLTYPE BindToFile(
4404 LPCWSTR pszFileName,
4405 SPFILEMODE eMode,
4406 const GUID *pFormatId,
4407 const WAVEFORMATEX *pWaveFormatEx,
4408 ULONGLONG ullEventInterest) = 0;
4409
4410 virtual HRESULT STDMETHODCALLTYPE Close(
4411 ) = 0;
4412
4413};
4414#ifdef __CRT_UUID_DECL
4415__CRT_UUID_DECL(ISpStream, 0x12e3cca9, 0x7518, 0x44c5, 0xa5,0xe7, 0xba,0x5a,0x79,0xcb,0x92,0x9e)
4416#endif
4417#else
4418typedef struct ISpStreamVtbl {
4419 BEGIN_INTERFACE
4420
4421 /*** IUnknown methods ***/
4422 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4423 ISpStream *This,
4424 REFIID riid,
4425 void **ppvObject);
4426
4427 ULONG (STDMETHODCALLTYPE *AddRef)(
4428 ISpStream *This);
4429
4430 ULONG (STDMETHODCALLTYPE *Release)(
4431 ISpStream *This);
4432
4433 /*** ISequentialStream methods ***/
4434 HRESULT (STDMETHODCALLTYPE *Read)(
4435 ISpStream *This,
4436 void *pv,
4437 ULONG cb,
4438 ULONG *pcbRead);
4439
4440 HRESULT (STDMETHODCALLTYPE *Write)(
4441 ISpStream *This,
4442 const void *pv,
4443 ULONG cb,
4444 ULONG *pcbWritten);
4445
4446 /*** IStream methods ***/
4447 HRESULT (STDMETHODCALLTYPE *Seek)(
4448 ISpStream *This,
4449 LARGE_INTEGER dlibMove,
4450 DWORD dwOrigin,
4451 ULARGE_INTEGER *plibNewPosition);
4452
4453 HRESULT (STDMETHODCALLTYPE *SetSize)(
4454 ISpStream *This,
4455 ULARGE_INTEGER libNewSize);
4456
4457 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4458 ISpStream *This,
4459 IStream *pstm,
4460 ULARGE_INTEGER cb,
4461 ULARGE_INTEGER *pcbRead,
4462 ULARGE_INTEGER *pcbWritten);
4463
4464 HRESULT (STDMETHODCALLTYPE *Commit)(
4465 ISpStream *This,
4466 DWORD grfCommitFlags);
4467
4468 HRESULT (STDMETHODCALLTYPE *Revert)(
4469 ISpStream *This);
4470
4471 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4472 ISpStream *This,
4473 ULARGE_INTEGER libOffset,
4474 ULARGE_INTEGER cb,
4475 DWORD dwLockType);
4476
4477 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4478 ISpStream *This,
4479 ULARGE_INTEGER libOffset,
4480 ULARGE_INTEGER cb,
4481 DWORD dwLockType);
4482
4483 HRESULT (STDMETHODCALLTYPE *Stat)(
4484 ISpStream *This,
4485 STATSTG *pstatstg,
4486 DWORD grfStatFlag);
4487
4488 HRESULT (STDMETHODCALLTYPE *Clone)(
4489 ISpStream *This,
4490 IStream **ppstm);
4491
4492 /*** ISpStreamFormat methods ***/
4493 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4494 ISpStream *This,
4495 GUID *pguidFormatId,
4496 WAVEFORMATEX **ppCoMemWaveFormatEx);
4497
4498 /*** ISpStream methods ***/
4499 HRESULT (STDMETHODCALLTYPE *SetBaseStream)(
4500 ISpStream *This,
4501 IStream *pStream,
4502 REFGUID rguidFormat,
4503 const WAVEFORMATEX *pWaveFormatEx);
4504
4505 HRESULT (STDMETHODCALLTYPE *GetBaseStream)(
4506 ISpStream *This,
4507 IStream **ppStream);
4508
4509 HRESULT (STDMETHODCALLTYPE *BindToFile)(
4510 ISpStream *This,
4511 LPCWSTR pszFileName,
4512 SPFILEMODE eMode,
4513 const GUID *pFormatId,
4514 const WAVEFORMATEX *pWaveFormatEx,
4515 ULONGLONG ullEventInterest);
4516
4517 HRESULT (STDMETHODCALLTYPE *Close)(
4518 ISpStream *This);
4519
4520 END_INTERFACE
4521} ISpStreamVtbl;
4522
4523interface ISpStream {
4524 CONST_VTBL ISpStreamVtbl* lpVtbl;
4525};
4526
4527#ifdef COBJMACROS
4528#ifndef WIDL_C_INLINE_WRAPPERS
4529/*** IUnknown methods ***/
4530#define ISpStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4531#define ISpStream_AddRef(This) (This)->lpVtbl->AddRef(This)
4532#define ISpStream_Release(This) (This)->lpVtbl->Release(This)
4533/*** ISequentialStream methods ***/
4534#define ISpStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4535#define ISpStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4536/*** IStream methods ***/
4537#define ISpStream_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4538#define ISpStream_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4539#define ISpStream_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4540#define ISpStream_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4541#define ISpStream_Revert(This) (This)->lpVtbl->Revert(This)
4542#define ISpStream_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4543#define ISpStream_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4544#define ISpStream_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4545#define ISpStream_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4546/*** ISpStreamFormat methods ***/
4547#define ISpStream_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4548/*** ISpStream methods ***/
4549#define ISpStream_SetBaseStream(This,pStream,rguidFormat,pWaveFormatEx) (This)->lpVtbl->SetBaseStream(This,pStream,rguidFormat,pWaveFormatEx)
4550#define ISpStream_GetBaseStream(This,ppStream) (This)->lpVtbl->GetBaseStream(This,ppStream)
4551#define ISpStream_BindToFile(This,pszFileName,eMode,pFormatId,pWaveFormatEx,ullEventInterest) (This)->lpVtbl->BindToFile(This,pszFileName,eMode,pFormatId,pWaveFormatEx,ullEventInterest)
4552#define ISpStream_Close(This) (This)->lpVtbl->Close(This)
4553#else
4554/*** IUnknown methods ***/
4555static inline HRESULT ISpStream_QueryInterface(ISpStream* This,REFIID riid,void **ppvObject) {
4556 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4557}
4558static inline ULONG ISpStream_AddRef(ISpStream* This) {
4559 return This->lpVtbl->AddRef(This);
4560}
4561static inline ULONG ISpStream_Release(ISpStream* This) {
4562 return This->lpVtbl->Release(This);
4563}
4564/*** ISequentialStream methods ***/
4565static inline HRESULT ISpStream_Read(ISpStream* This,void *pv,ULONG cb,ULONG *pcbRead) {
4566 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4567}
4568static inline HRESULT ISpStream_Write(ISpStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4569 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
4570}
4571/*** IStream methods ***/
4572static inline HRESULT ISpStream_Seek(ISpStream* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
4573 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
4574}
4575static inline HRESULT ISpStream_SetSize(ISpStream* This,ULARGE_INTEGER libNewSize) {
4576 return This->lpVtbl->SetSize(This,libNewSize);
4577}
4578static inline HRESULT ISpStream_CopyTo(ISpStream* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
4579 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
4580}
4581static inline HRESULT ISpStream_Commit(ISpStream* This,DWORD grfCommitFlags) {
4582 return This->lpVtbl->Commit(This,grfCommitFlags);
4583}
4584static inline HRESULT ISpStream_Revert(ISpStream* This) {
4585 return This->lpVtbl->Revert(This);
4586}
4587static inline HRESULT ISpStream_LockRegion(ISpStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4588 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
4589}
4590static inline HRESULT ISpStream_UnlockRegion(ISpStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4591 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
4592}
4593static inline HRESULT ISpStream_Stat(ISpStream* This,STATSTG *pstatstg,DWORD grfStatFlag) {
4594 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
4595}
4596static inline HRESULT ISpStream_Clone(ISpStream* This,IStream **ppstm) {
4597 return This->lpVtbl->Clone(This,ppstm);
4598}
4599/*** ISpStreamFormat methods ***/
4600static inline HRESULT ISpStream_GetFormat(ISpStream* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4601 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
4602}
4603/*** ISpStream methods ***/
4604static inline HRESULT ISpStream_SetBaseStream(ISpStream* This,IStream *pStream,REFGUID rguidFormat,const WAVEFORMATEX *pWaveFormatEx) {
4605 return This->lpVtbl->SetBaseStream(This,pStream,rguidFormat,pWaveFormatEx);
4606}
4607static inline HRESULT ISpStream_GetBaseStream(ISpStream* This,IStream **ppStream) {
4608 return This->lpVtbl->GetBaseStream(This,ppStream);
4609}
4610static inline HRESULT ISpStream_BindToFile(ISpStream* This,LPCWSTR pszFileName,SPFILEMODE eMode,const GUID *pFormatId,const WAVEFORMATEX *pWaveFormatEx,ULONGLONG ullEventInterest) {
4611 return This->lpVtbl->BindToFile(This,pszFileName,eMode,pFormatId,pWaveFormatEx,ullEventInterest);
4612}
4613static inline HRESULT ISpStream_Close(ISpStream* This) {
4614 return This->lpVtbl->Close(This);
4615}
4616#endif
4617#endif
4618
4619#endif
4620
4621
4622#endif /* __ISpStream_INTERFACE_DEFINED__ */
4623
4624/*****************************************************************************
4625 * ISpStreamFormatConverter interface
4626 */
4627#ifndef __ISpStreamFormatConverter_INTERFACE_DEFINED__
4628#define __ISpStreamFormatConverter_INTERFACE_DEFINED__
4629
4630DEFINE_GUID(IID_ISpStreamFormatConverter, 0x678a932c, 0xea71, 0x4446, 0x9b,0x41, 0x78,0xfd,0xa6,0x28,0x0a,0x29);
4631#if defined(__cplusplus) && !defined(CINTERFACE)
4632MIDL_INTERFACE("678a932c-ea71-4446-9b41-78fda6280a29")
4633ISpStreamFormatConverter : public ISpStreamFormat
4634{
4635 virtual HRESULT STDMETHODCALLTYPE SetBaseStream(
4636 ISpStreamFormat *pStream,
4637 WINBOOL fSetFormatToBaseStreamFormat,
4638 WINBOOL fWriteToBaseStream) = 0;
4639
4640 virtual HRESULT STDMETHODCALLTYPE GetBaseStream(
4641 ISpStreamFormat **ppStream) = 0;
4642
4643 virtual HRESULT STDMETHODCALLTYPE SetFormat(
4644 REFGUID rguidFormatIdOfConvertedStream,
4645 const WAVEFORMATEX *pWaveFormatExOfConvertedStream) = 0;
4646
4647 virtual HRESULT STDMETHODCALLTYPE ResetSeekPosition(
4648 ) = 0;
4649
4650 virtual HRESULT STDMETHODCALLTYPE ScaleConvertedToBaseOffset(
4651 ULONGLONG ullOffsetConvertedStream,
4652 ULONGLONG *pullOffsetBaseStream) = 0;
4653
4654 virtual HRESULT STDMETHODCALLTYPE ScaleBaseToConvertedOffset(
4655 ULONGLONG ullOffsetBaseStream,
4656 ULONGLONG *pullOffsetConvertedStream) = 0;
4657
4658};
4659#ifdef __CRT_UUID_DECL
4660__CRT_UUID_DECL(ISpStreamFormatConverter, 0x678a932c, 0xea71, 0x4446, 0x9b,0x41, 0x78,0xfd,0xa6,0x28,0x0a,0x29)
4661#endif
4662#else
4663typedef struct ISpStreamFormatConverterVtbl {
4664 BEGIN_INTERFACE
4665
4666 /*** IUnknown methods ***/
4667 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4668 ISpStreamFormatConverter *This,
4669 REFIID riid,
4670 void **ppvObject);
4671
4672 ULONG (STDMETHODCALLTYPE *AddRef)(
4673 ISpStreamFormatConverter *This);
4674
4675 ULONG (STDMETHODCALLTYPE *Release)(
4676 ISpStreamFormatConverter *This);
4677
4678 /*** ISequentialStream methods ***/
4679 HRESULT (STDMETHODCALLTYPE *Read)(
4680 ISpStreamFormatConverter *This,
4681 void *pv,
4682 ULONG cb,
4683 ULONG *pcbRead);
4684
4685 HRESULT (STDMETHODCALLTYPE *Write)(
4686 ISpStreamFormatConverter *This,
4687 const void *pv,
4688 ULONG cb,
4689 ULONG *pcbWritten);
4690
4691 /*** IStream methods ***/
4692 HRESULT (STDMETHODCALLTYPE *Seek)(
4693 ISpStreamFormatConverter *This,
4694 LARGE_INTEGER dlibMove,
4695 DWORD dwOrigin,
4696 ULARGE_INTEGER *plibNewPosition);
4697
4698 HRESULT (STDMETHODCALLTYPE *SetSize)(
4699 ISpStreamFormatConverter *This,
4700 ULARGE_INTEGER libNewSize);
4701
4702 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4703 ISpStreamFormatConverter *This,
4704 IStream *pstm,
4705 ULARGE_INTEGER cb,
4706 ULARGE_INTEGER *pcbRead,
4707 ULARGE_INTEGER *pcbWritten);
4708
4709 HRESULT (STDMETHODCALLTYPE *Commit)(
4710 ISpStreamFormatConverter *This,
4711 DWORD grfCommitFlags);
4712
4713 HRESULT (STDMETHODCALLTYPE *Revert)(
4714 ISpStreamFormatConverter *This);
4715
4716 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4717 ISpStreamFormatConverter *This,
4718 ULARGE_INTEGER libOffset,
4719 ULARGE_INTEGER cb,
4720 DWORD dwLockType);
4721
4722 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4723 ISpStreamFormatConverter *This,
4724 ULARGE_INTEGER libOffset,
4725 ULARGE_INTEGER cb,
4726 DWORD dwLockType);
4727
4728 HRESULT (STDMETHODCALLTYPE *Stat)(
4729 ISpStreamFormatConverter *This,
4730 STATSTG *pstatstg,
4731 DWORD grfStatFlag);
4732
4733 HRESULT (STDMETHODCALLTYPE *Clone)(
4734 ISpStreamFormatConverter *This,
4735 IStream **ppstm);
4736
4737 /*** ISpStreamFormat methods ***/
4738 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4739 ISpStreamFormatConverter *This,
4740 GUID *pguidFormatId,
4741 WAVEFORMATEX **ppCoMemWaveFormatEx);
4742
4743 /*** ISpStreamFormatConverter methods ***/
4744 HRESULT (STDMETHODCALLTYPE *SetBaseStream)(
4745 ISpStreamFormatConverter *This,
4746 ISpStreamFormat *pStream,
4747 WINBOOL fSetFormatToBaseStreamFormat,
4748 WINBOOL fWriteToBaseStream);
4749
4750 HRESULT (STDMETHODCALLTYPE *GetBaseStream)(
4751 ISpStreamFormatConverter *This,
4752 ISpStreamFormat **ppStream);
4753
4754 HRESULT (STDMETHODCALLTYPE *SetFormat)(
4755 ISpStreamFormatConverter *This,
4756 REFGUID rguidFormatIdOfConvertedStream,
4757 const WAVEFORMATEX *pWaveFormatExOfConvertedStream);
4758
4759 HRESULT (STDMETHODCALLTYPE *ResetSeekPosition)(
4760 ISpStreamFormatConverter *This);
4761
4762 HRESULT (STDMETHODCALLTYPE *ScaleConvertedToBaseOffset)(
4763 ISpStreamFormatConverter *This,
4764 ULONGLONG ullOffsetConvertedStream,
4765 ULONGLONG *pullOffsetBaseStream);
4766
4767 HRESULT (STDMETHODCALLTYPE *ScaleBaseToConvertedOffset)(
4768 ISpStreamFormatConverter *This,
4769 ULONGLONG ullOffsetBaseStream,
4770 ULONGLONG *pullOffsetConvertedStream);
4771
4772 END_INTERFACE
4773} ISpStreamFormatConverterVtbl;
4774
4775interface ISpStreamFormatConverter {
4776 CONST_VTBL ISpStreamFormatConverterVtbl* lpVtbl;
4777};
4778
4779#ifdef COBJMACROS
4780#ifndef WIDL_C_INLINE_WRAPPERS
4781/*** IUnknown methods ***/
4782#define ISpStreamFormatConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4783#define ISpStreamFormatConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
4784#define ISpStreamFormatConverter_Release(This) (This)->lpVtbl->Release(This)
4785/*** ISequentialStream methods ***/
4786#define ISpStreamFormatConverter_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4787#define ISpStreamFormatConverter_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4788/*** IStream methods ***/
4789#define ISpStreamFormatConverter_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4790#define ISpStreamFormatConverter_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4791#define ISpStreamFormatConverter_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4792#define ISpStreamFormatConverter_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4793#define ISpStreamFormatConverter_Revert(This) (This)->lpVtbl->Revert(This)
4794#define ISpStreamFormatConverter_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4795#define ISpStreamFormatConverter_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4796#define ISpStreamFormatConverter_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4797#define ISpStreamFormatConverter_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4798/*** ISpStreamFormat methods ***/
4799#define ISpStreamFormatConverter_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4800/*** ISpStreamFormatConverter methods ***/
4801#define ISpStreamFormatConverter_SetBaseStream(This,pStream,fSetFormatToBaseStreamFormat,fWriteToBaseStream) (This)->lpVtbl->SetBaseStream(This,pStream,fSetFormatToBaseStreamFormat,fWriteToBaseStream)
4802#define ISpStreamFormatConverter_GetBaseStream(This,ppStream) (This)->lpVtbl->GetBaseStream(This,ppStream)
4803#define ISpStreamFormatConverter_SetFormat(This,rguidFormatIdOfConvertedStream,pWaveFormatExOfConvertedStream) (This)->lpVtbl->SetFormat(This,rguidFormatIdOfConvertedStream,pWaveFormatExOfConvertedStream)
4804#define ISpStreamFormatConverter_ResetSeekPosition(This) (This)->lpVtbl->ResetSeekPosition(This)
4805#define ISpStreamFormatConverter_ScaleConvertedToBaseOffset(This,ullOffsetConvertedStream,pullOffsetBaseStream) (This)->lpVtbl->ScaleConvertedToBaseOffset(This,ullOffsetConvertedStream,pullOffsetBaseStream)
4806#define ISpStreamFormatConverter_ScaleBaseToConvertedOffset(This,ullOffsetBaseStream,pullOffsetConvertedStream) (This)->lpVtbl->ScaleBaseToConvertedOffset(This,ullOffsetBaseStream,pullOffsetConvertedStream)
4807#else
4808/*** IUnknown methods ***/
4809static inline HRESULT ISpStreamFormatConverter_QueryInterface(ISpStreamFormatConverter* This,REFIID riid,void **ppvObject) {
4810 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4811}
4812static inline ULONG ISpStreamFormatConverter_AddRef(ISpStreamFormatConverter* This) {
4813 return This->lpVtbl->AddRef(This);
4814}
4815static inline ULONG ISpStreamFormatConverter_Release(ISpStreamFormatConverter* This) {
4816 return This->lpVtbl->Release(This);
4817}
4818/*** ISequentialStream methods ***/
4819static inline HRESULT ISpStreamFormatConverter_Read(ISpStreamFormatConverter* This,void *pv,ULONG cb,ULONG *pcbRead) {
4820 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4821}
4822static inline HRESULT ISpStreamFormatConverter_Write(ISpStreamFormatConverter* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4823 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
4824}
4825/*** IStream methods ***/
4826static inline HRESULT ISpStreamFormatConverter_Seek(ISpStreamFormatConverter* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
4827 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
4828}
4829static inline HRESULT ISpStreamFormatConverter_SetSize(ISpStreamFormatConverter* This,ULARGE_INTEGER libNewSize) {
4830 return This->lpVtbl->SetSize(This,libNewSize);
4831}
4832static inline HRESULT ISpStreamFormatConverter_CopyTo(ISpStreamFormatConverter* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
4833 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
4834}
4835static inline HRESULT ISpStreamFormatConverter_Commit(ISpStreamFormatConverter* This,DWORD grfCommitFlags) {
4836 return This->lpVtbl->Commit(This,grfCommitFlags);
4837}
4838static inline HRESULT ISpStreamFormatConverter_Revert(ISpStreamFormatConverter* This) {
4839 return This->lpVtbl->Revert(This);
4840}
4841static inline HRESULT ISpStreamFormatConverter_LockRegion(ISpStreamFormatConverter* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4842 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
4843}
4844static inline HRESULT ISpStreamFormatConverter_UnlockRegion(ISpStreamFormatConverter* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4845 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
4846}
4847static inline HRESULT ISpStreamFormatConverter_Stat(ISpStreamFormatConverter* This,STATSTG *pstatstg,DWORD grfStatFlag) {
4848 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
4849}
4850static inline HRESULT ISpStreamFormatConverter_Clone(ISpStreamFormatConverter* This,IStream **ppstm) {
4851 return This->lpVtbl->Clone(This,ppstm);
4852}
4853/*** ISpStreamFormat methods ***/
4854static inline HRESULT ISpStreamFormatConverter_GetFormat(ISpStreamFormatConverter* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4855 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
4856}
4857/*** ISpStreamFormatConverter methods ***/
4858static inline HRESULT ISpStreamFormatConverter_SetBaseStream(ISpStreamFormatConverter* This,ISpStreamFormat *pStream,WINBOOL fSetFormatToBaseStreamFormat,WINBOOL fWriteToBaseStream) {
4859 return This->lpVtbl->SetBaseStream(This,pStream,fSetFormatToBaseStreamFormat,fWriteToBaseStream);
4860}
4861static inline HRESULT ISpStreamFormatConverter_GetBaseStream(ISpStreamFormatConverter* This,ISpStreamFormat **ppStream) {
4862 return This->lpVtbl->GetBaseStream(This,ppStream);
4863}
4864static inline HRESULT ISpStreamFormatConverter_SetFormat(ISpStreamFormatConverter* This,REFGUID rguidFormatIdOfConvertedStream,const WAVEFORMATEX *pWaveFormatExOfConvertedStream) {
4865 return This->lpVtbl->SetFormat(This,rguidFormatIdOfConvertedStream,pWaveFormatExOfConvertedStream);
4866}
4867static inline HRESULT ISpStreamFormatConverter_ResetSeekPosition(ISpStreamFormatConverter* This) {
4868 return This->lpVtbl->ResetSeekPosition(This);
4869}
4870static inline HRESULT ISpStreamFormatConverter_ScaleConvertedToBaseOffset(ISpStreamFormatConverter* This,ULONGLONG ullOffsetConvertedStream,ULONGLONG *pullOffsetBaseStream) {
4871 return This->lpVtbl->ScaleConvertedToBaseOffset(This,ullOffsetConvertedStream,pullOffsetBaseStream);
4872}
4873static inline HRESULT ISpStreamFormatConverter_ScaleBaseToConvertedOffset(ISpStreamFormatConverter* This,ULONGLONG ullOffsetBaseStream,ULONGLONG *pullOffsetConvertedStream) {
4874 return This->lpVtbl->ScaleBaseToConvertedOffset(This,ullOffsetBaseStream,pullOffsetConvertedStream);
4875}
4876#endif
4877#endif
4878
4879#endif
4880
4881
4882#endif /* __ISpStreamFormatConverter_INTERFACE_DEFINED__ */
4883
4884typedef struct SPAUDIOSTATUS {
4885 LONG cbFreeBuffSpace;
4886 ULONG cbNonBlockingIO;
4887 SPAUDIOSTATE State;
4888 ULONGLONG CurSeekPos;
4889 ULONGLONG CurDevicePos;
4890 DWORD dwAudioLevel;
4891 DWORD dwReserved2;
4892} SPAUDIOSTATUS;
4893typedef struct SPAUDIOBUFFERINFO {
4894 ULONG ulMsMinNotification;
4895 ULONG ulMsBufferSize;
4896 ULONG ulMsEventBias;
4897} SPAUDIOBUFFERINFO;
4898/*****************************************************************************
4899 * ISpAudio interface
4900 */
4901#ifndef __ISpAudio_INTERFACE_DEFINED__
4902#define __ISpAudio_INTERFACE_DEFINED__
4903
4904DEFINE_GUID(IID_ISpAudio, 0xc05c768f, 0xfae8, 0x4ec2, 0x8e,0x07, 0x33,0x83,0x21,0xc1,0x24,0x52);
4905#if defined(__cplusplus) && !defined(CINTERFACE)
4906MIDL_INTERFACE("c05c768f-fae8-4ec2-8e07-338321c12452")
4907ISpAudio : public ISpStreamFormat
4908{
4909 virtual HRESULT STDMETHODCALLTYPE SetState(
4910 SPAUDIOSTATE NewState,
4911 ULONGLONG ullReserved) = 0;
4912
4913 virtual HRESULT STDMETHODCALLTYPE SetFormat(
4914 REFGUID rguidFmtId,
4915 const WAVEFORMATEX *pWaveFormatEx) = 0;
4916
4917 virtual HRESULT STDMETHODCALLTYPE GetStatus(
4918 SPAUDIOSTATUS *pStatus) = 0;
4919
4920 virtual HRESULT STDMETHODCALLTYPE SetBufferInfo(
4921 const SPAUDIOBUFFERINFO *pBuffInfo) = 0;
4922
4923 virtual HRESULT STDMETHODCALLTYPE GetBufferInfo(
4924 SPAUDIOBUFFERINFO *pBuffInfo) = 0;
4925
4926 virtual HRESULT STDMETHODCALLTYPE GetDefaultFormat(
4927 GUID *pFormatId,
4928 WAVEFORMATEX **ppCoMemWaveFormatEx) = 0;
4929
4930 virtual HANDLE STDMETHODCALLTYPE EventHandle(
4931 ) = 0;
4932
4933 virtual HRESULT STDMETHODCALLTYPE GetVolumeLevel(
4934 ULONG *pLevel) = 0;
4935
4936 virtual HRESULT STDMETHODCALLTYPE SetVolumeLevel(
4937 ULONG Level) = 0;
4938
4939 virtual HRESULT STDMETHODCALLTYPE GetBufferNotifySize(
4940 ULONG *pcbSize) = 0;
4941
4942 virtual HRESULT STDMETHODCALLTYPE SetBufferNotifySize(
4943 ULONG cbSize) = 0;
4944
4945};
4946#ifdef __CRT_UUID_DECL
4947__CRT_UUID_DECL(ISpAudio, 0xc05c768f, 0xfae8, 0x4ec2, 0x8e,0x07, 0x33,0x83,0x21,0xc1,0x24,0x52)
4948#endif
4949#else
4950typedef struct ISpAudioVtbl {
4951 BEGIN_INTERFACE
4952
4953 /*** IUnknown methods ***/
4954 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4955 ISpAudio *This,
4956 REFIID riid,
4957 void **ppvObject);
4958
4959 ULONG (STDMETHODCALLTYPE *AddRef)(
4960 ISpAudio *This);
4961
4962 ULONG (STDMETHODCALLTYPE *Release)(
4963 ISpAudio *This);
4964
4965 /*** ISequentialStream methods ***/
4966 HRESULT (STDMETHODCALLTYPE *Read)(
4967 ISpAudio *This,
4968 void *pv,
4969 ULONG cb,
4970 ULONG *pcbRead);
4971
4972 HRESULT (STDMETHODCALLTYPE *Write)(
4973 ISpAudio *This,
4974 const void *pv,
4975 ULONG cb,
4976 ULONG *pcbWritten);
4977
4978 /*** IStream methods ***/
4979 HRESULT (STDMETHODCALLTYPE *Seek)(
4980 ISpAudio *This,
4981 LARGE_INTEGER dlibMove,
4982 DWORD dwOrigin,
4983 ULARGE_INTEGER *plibNewPosition);
4984
4985 HRESULT (STDMETHODCALLTYPE *SetSize)(
4986 ISpAudio *This,
4987 ULARGE_INTEGER libNewSize);
4988
4989 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4990 ISpAudio *This,
4991 IStream *pstm,
4992 ULARGE_INTEGER cb,
4993 ULARGE_INTEGER *pcbRead,
4994 ULARGE_INTEGER *pcbWritten);
4995
4996 HRESULT (STDMETHODCALLTYPE *Commit)(
4997 ISpAudio *This,
4998 DWORD grfCommitFlags);
4999
5000 HRESULT (STDMETHODCALLTYPE *Revert)(
5001 ISpAudio *This);
5002
5003 HRESULT (STDMETHODCALLTYPE *LockRegion)(
5004 ISpAudio *This,
5005 ULARGE_INTEGER libOffset,
5006 ULARGE_INTEGER cb,
5007 DWORD dwLockType);
5008
5009 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
5010 ISpAudio *This,
5011 ULARGE_INTEGER libOffset,
5012 ULARGE_INTEGER cb,
5013 DWORD dwLockType);
5014
5015 HRESULT (STDMETHODCALLTYPE *Stat)(
5016 ISpAudio *This,
5017 STATSTG *pstatstg,
5018 DWORD grfStatFlag);
5019
5020 HRESULT (STDMETHODCALLTYPE *Clone)(
5021 ISpAudio *This,
5022 IStream **ppstm);
5023
5024 /*** ISpStreamFormat methods ***/
5025 HRESULT (STDMETHODCALLTYPE *GetFormat)(
5026 ISpAudio *This,
5027 GUID *pguidFormatId,
5028 WAVEFORMATEX **ppCoMemWaveFormatEx);
5029
5030 /*** ISpAudio methods ***/
5031 HRESULT (STDMETHODCALLTYPE *SetState)(
5032 ISpAudio *This,
5033 SPAUDIOSTATE NewState,
5034 ULONGLONG ullReserved);
5035
5036 HRESULT (STDMETHODCALLTYPE *SetFormat)(
5037 ISpAudio *This,
5038 REFGUID rguidFmtId,
5039 const WAVEFORMATEX *pWaveFormatEx);
5040
5041 HRESULT (STDMETHODCALLTYPE *GetStatus)(
5042 ISpAudio *This,
5043 SPAUDIOSTATUS *pStatus);
5044
5045 HRESULT (STDMETHODCALLTYPE *SetBufferInfo)(
5046 ISpAudio *This,
5047 const SPAUDIOBUFFERINFO *pBuffInfo);
5048
5049 HRESULT (STDMETHODCALLTYPE *GetBufferInfo)(
5050 ISpAudio *This,
5051 SPAUDIOBUFFERINFO *pBuffInfo);
5052
5053 HRESULT (STDMETHODCALLTYPE *GetDefaultFormat)(
5054 ISpAudio *This,
5055 GUID *pFormatId,
5056 WAVEFORMATEX **ppCoMemWaveFormatEx);
5057
5058 HANDLE (STDMETHODCALLTYPE *EventHandle)(
5059 ISpAudio *This);
5060
5061 HRESULT (STDMETHODCALLTYPE *GetVolumeLevel)(
5062 ISpAudio *This,
5063 ULONG *pLevel);
5064
5065 HRESULT (STDMETHODCALLTYPE *SetVolumeLevel)(
5066 ISpAudio *This,
5067 ULONG Level);
5068
5069 HRESULT (STDMETHODCALLTYPE *GetBufferNotifySize)(
5070 ISpAudio *This,
5071 ULONG *pcbSize);
5072
5073 HRESULT (STDMETHODCALLTYPE *SetBufferNotifySize)(
5074 ISpAudio *This,
5075 ULONG cbSize);
5076
5077 END_INTERFACE
5078} ISpAudioVtbl;
5079
5080interface ISpAudio {
5081 CONST_VTBL ISpAudioVtbl* lpVtbl;
5082};
5083
5084#ifdef COBJMACROS
5085#ifndef WIDL_C_INLINE_WRAPPERS
5086/*** IUnknown methods ***/
5087#define ISpAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5088#define ISpAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
5089#define ISpAudio_Release(This) (This)->lpVtbl->Release(This)
5090/*** ISequentialStream methods ***/
5091#define ISpAudio_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
5092#define ISpAudio_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
5093/*** IStream methods ***/
5094#define ISpAudio_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
5095#define ISpAudio_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
5096#define ISpAudio_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
5097#define ISpAudio_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
5098#define ISpAudio_Revert(This) (This)->lpVtbl->Revert(This)
5099#define ISpAudio_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
5100#define ISpAudio_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
5101#define ISpAudio_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
5102#define ISpAudio_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
5103/*** ISpStreamFormat methods ***/
5104#define ISpAudio_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
5105/*** ISpAudio methods ***/
5106#define ISpAudio_SetState(This,NewState,ullReserved) (This)->lpVtbl->SetState(This,NewState,ullReserved)
5107#define ISpAudio_SetFormat(This,rguidFmtId,pWaveFormatEx) (This)->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx)
5108#define ISpAudio_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
5109#define ISpAudio_SetBufferInfo(This,pBuffInfo) (This)->lpVtbl->SetBufferInfo(This,pBuffInfo)
5110#define ISpAudio_GetBufferInfo(This,pBuffInfo) (This)->lpVtbl->GetBufferInfo(This,pBuffInfo)
5111#define ISpAudio_GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx)
5112#define ISpAudio_EventHandle(This) (This)->lpVtbl->EventHandle(This)
5113#define ISpAudio_GetVolumeLevel(This,pLevel) (This)->lpVtbl->GetVolumeLevel(This,pLevel)
5114#define ISpAudio_SetVolumeLevel(This,Level) (This)->lpVtbl->SetVolumeLevel(This,Level)
5115#define ISpAudio_GetBufferNotifySize(This,pcbSize) (This)->lpVtbl->GetBufferNotifySize(This,pcbSize)
5116#define ISpAudio_SetBufferNotifySize(This,cbSize) (This)->lpVtbl->SetBufferNotifySize(This,cbSize)
5117#else
5118/*** IUnknown methods ***/
5119static inline HRESULT ISpAudio_QueryInterface(ISpAudio* This,REFIID riid,void **ppvObject) {
5120 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5121}
5122static inline ULONG ISpAudio_AddRef(ISpAudio* This) {
5123 return This->lpVtbl->AddRef(This);
5124}
5125static inline ULONG ISpAudio_Release(ISpAudio* This) {
5126 return This->lpVtbl->Release(This);
5127}
5128/*** ISequentialStream methods ***/
5129static inline HRESULT ISpAudio_Read(ISpAudio* This,void *pv,ULONG cb,ULONG *pcbRead) {
5130 return This->lpVtbl->Read(This,pv,cb,pcbRead);
5131}
5132static inline HRESULT ISpAudio_Write(ISpAudio* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
5133 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
5134}
5135/*** IStream methods ***/
5136static inline HRESULT ISpAudio_Seek(ISpAudio* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
5137 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
5138}
5139static inline HRESULT ISpAudio_SetSize(ISpAudio* This,ULARGE_INTEGER libNewSize) {
5140 return This->lpVtbl->SetSize(This,libNewSize);
5141}
5142static inline HRESULT ISpAudio_CopyTo(ISpAudio* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
5143 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
5144}
5145static inline HRESULT ISpAudio_Commit(ISpAudio* This,DWORD grfCommitFlags) {
5146 return This->lpVtbl->Commit(This,grfCommitFlags);
5147}
5148static inline HRESULT ISpAudio_Revert(ISpAudio* This) {
5149 return This->lpVtbl->Revert(This);
5150}
5151static inline HRESULT ISpAudio_LockRegion(ISpAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5152 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
5153}
5154static inline HRESULT ISpAudio_UnlockRegion(ISpAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5155 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
5156}
5157static inline HRESULT ISpAudio_Stat(ISpAudio* This,STATSTG *pstatstg,DWORD grfStatFlag) {
5158 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
5159}
5160static inline HRESULT ISpAudio_Clone(ISpAudio* This,IStream **ppstm) {
5161 return This->lpVtbl->Clone(This,ppstm);
5162}
5163/*** ISpStreamFormat methods ***/
5164static inline HRESULT ISpAudio_GetFormat(ISpAudio* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5165 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
5166}
5167/*** ISpAudio methods ***/
5168static inline HRESULT ISpAudio_SetState(ISpAudio* This,SPAUDIOSTATE NewState,ULONGLONG ullReserved) {
5169 return This->lpVtbl->SetState(This,NewState,ullReserved);
5170}
5171static inline HRESULT ISpAudio_SetFormat(ISpAudio* This,REFGUID rguidFmtId,const WAVEFORMATEX *pWaveFormatEx) {
5172 return This->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx);
5173}
5174static inline HRESULT ISpAudio_GetStatus(ISpAudio* This,SPAUDIOSTATUS *pStatus) {
5175 return This->lpVtbl->GetStatus(This,pStatus);
5176}
5177static inline HRESULT ISpAudio_SetBufferInfo(ISpAudio* This,const SPAUDIOBUFFERINFO *pBuffInfo) {
5178 return This->lpVtbl->SetBufferInfo(This,pBuffInfo);
5179}
5180static inline HRESULT ISpAudio_GetBufferInfo(ISpAudio* This,SPAUDIOBUFFERINFO *pBuffInfo) {
5181 return This->lpVtbl->GetBufferInfo(This,pBuffInfo);
5182}
5183static inline HRESULT ISpAudio_GetDefaultFormat(ISpAudio* This,GUID *pFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5184 return This->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx);
5185}
5186static inline HANDLE ISpAudio_EventHandle(ISpAudio* This) {
5187 return This->lpVtbl->EventHandle(This);
5188}
5189static inline HRESULT ISpAudio_GetVolumeLevel(ISpAudio* This,ULONG *pLevel) {
5190 return This->lpVtbl->GetVolumeLevel(This,pLevel);
5191}
5192static inline HRESULT ISpAudio_SetVolumeLevel(ISpAudio* This,ULONG Level) {
5193 return This->lpVtbl->SetVolumeLevel(This,Level);
5194}
5195static inline HRESULT ISpAudio_GetBufferNotifySize(ISpAudio* This,ULONG *pcbSize) {
5196 return This->lpVtbl->GetBufferNotifySize(This,pcbSize);
5197}
5198static inline HRESULT ISpAudio_SetBufferNotifySize(ISpAudio* This,ULONG cbSize) {
5199 return This->lpVtbl->SetBufferNotifySize(This,cbSize);
5200}
5201#endif
5202#endif
5203
5204#endif
5205
5206
5207#endif /* __ISpAudio_INTERFACE_DEFINED__ */
5208
5209/*****************************************************************************
5210 * ISpMMSysAudio interface
5211 */
5212#ifndef __ISpMMSysAudio_INTERFACE_DEFINED__
5213#define __ISpMMSysAudio_INTERFACE_DEFINED__
5214
5215DEFINE_GUID(IID_ISpMMSysAudio, 0x15806f6e, 0x1d70, 0x4b48, 0x98,0xe6, 0x3b,0x1a,0x00,0x75,0x09,0xab);
5216#if defined(__cplusplus) && !defined(CINTERFACE)
5217MIDL_INTERFACE("15806f6e-1d70-4b48-98e6-3b1a007509ab")
5218ISpMMSysAudio : public ISpAudio
5219{
5220 virtual HRESULT STDMETHODCALLTYPE GetDeviceId(
5221 UINT *puDeviceId) = 0;
5222
5223 virtual HRESULT STDMETHODCALLTYPE SetDeviceId(
5224 UINT uDeviceId) = 0;
5225
5226 virtual HRESULT STDMETHODCALLTYPE GetMMHandle(
5227 void **pHandle) = 0;
5228
5229 virtual HRESULT STDMETHODCALLTYPE GetLineId(
5230 UINT *puLineId) = 0;
5231
5232 virtual HRESULT STDMETHODCALLTYPE SetLineId(
5233 UINT uLineId) = 0;
5234
5235};
5236#ifdef __CRT_UUID_DECL
5237__CRT_UUID_DECL(ISpMMSysAudio, 0x15806f6e, 0x1d70, 0x4b48, 0x98,0xe6, 0x3b,0x1a,0x00,0x75,0x09,0xab)
5238#endif
5239#else
5240typedef struct ISpMMSysAudioVtbl {
5241 BEGIN_INTERFACE
5242
5243 /*** IUnknown methods ***/
5244 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5245 ISpMMSysAudio *This,
5246 REFIID riid,
5247 void **ppvObject);
5248
5249 ULONG (STDMETHODCALLTYPE *AddRef)(
5250 ISpMMSysAudio *This);
5251
5252 ULONG (STDMETHODCALLTYPE *Release)(
5253 ISpMMSysAudio *This);
5254
5255 /*** ISequentialStream methods ***/
5256 HRESULT (STDMETHODCALLTYPE *Read)(
5257 ISpMMSysAudio *This,
5258 void *pv,
5259 ULONG cb,
5260 ULONG *pcbRead);
5261
5262 HRESULT (STDMETHODCALLTYPE *Write)(
5263 ISpMMSysAudio *This,
5264 const void *pv,
5265 ULONG cb,
5266 ULONG *pcbWritten);
5267
5268 /*** IStream methods ***/
5269 HRESULT (STDMETHODCALLTYPE *Seek)(
5270 ISpMMSysAudio *This,
5271 LARGE_INTEGER dlibMove,
5272 DWORD dwOrigin,
5273 ULARGE_INTEGER *plibNewPosition);
5274
5275 HRESULT (STDMETHODCALLTYPE *SetSize)(
5276 ISpMMSysAudio *This,
5277 ULARGE_INTEGER libNewSize);
5278
5279 HRESULT (STDMETHODCALLTYPE *CopyTo)(
5280 ISpMMSysAudio *This,
5281 IStream *pstm,
5282 ULARGE_INTEGER cb,
5283 ULARGE_INTEGER *pcbRead,
5284 ULARGE_INTEGER *pcbWritten);
5285
5286 HRESULT (STDMETHODCALLTYPE *Commit)(
5287 ISpMMSysAudio *This,
5288 DWORD grfCommitFlags);
5289
5290 HRESULT (STDMETHODCALLTYPE *Revert)(
5291 ISpMMSysAudio *This);
5292
5293 HRESULT (STDMETHODCALLTYPE *LockRegion)(
5294 ISpMMSysAudio *This,
5295 ULARGE_INTEGER libOffset,
5296 ULARGE_INTEGER cb,
5297 DWORD dwLockType);
5298
5299 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
5300 ISpMMSysAudio *This,
5301 ULARGE_INTEGER libOffset,
5302 ULARGE_INTEGER cb,
5303 DWORD dwLockType);
5304
5305 HRESULT (STDMETHODCALLTYPE *Stat)(
5306 ISpMMSysAudio *This,
5307 STATSTG *pstatstg,
5308 DWORD grfStatFlag);
5309
5310 HRESULT (STDMETHODCALLTYPE *Clone)(
5311 ISpMMSysAudio *This,
5312 IStream **ppstm);
5313
5314 /*** ISpStreamFormat methods ***/
5315 HRESULT (STDMETHODCALLTYPE *GetFormat)(
5316 ISpMMSysAudio *This,
5317 GUID *pguidFormatId,
5318 WAVEFORMATEX **ppCoMemWaveFormatEx);
5319
5320 /*** ISpAudio methods ***/
5321 HRESULT (STDMETHODCALLTYPE *SetState)(
5322 ISpMMSysAudio *This,
5323 SPAUDIOSTATE NewState,
5324 ULONGLONG ullReserved);
5325
5326 HRESULT (STDMETHODCALLTYPE *SetFormat)(
5327 ISpMMSysAudio *This,
5328 REFGUID rguidFmtId,
5329 const WAVEFORMATEX *pWaveFormatEx);
5330
5331 HRESULT (STDMETHODCALLTYPE *GetStatus)(
5332 ISpMMSysAudio *This,
5333 SPAUDIOSTATUS *pStatus);
5334
5335 HRESULT (STDMETHODCALLTYPE *SetBufferInfo)(
5336 ISpMMSysAudio *This,
5337 const SPAUDIOBUFFERINFO *pBuffInfo);
5338
5339 HRESULT (STDMETHODCALLTYPE *GetBufferInfo)(
5340 ISpMMSysAudio *This,
5341 SPAUDIOBUFFERINFO *pBuffInfo);
5342
5343 HRESULT (STDMETHODCALLTYPE *GetDefaultFormat)(
5344 ISpMMSysAudio *This,
5345 GUID *pFormatId,
5346 WAVEFORMATEX **ppCoMemWaveFormatEx);
5347
5348 HANDLE (STDMETHODCALLTYPE *EventHandle)(
5349 ISpMMSysAudio *This);
5350
5351 HRESULT (STDMETHODCALLTYPE *GetVolumeLevel)(
5352 ISpMMSysAudio *This,
5353 ULONG *pLevel);
5354
5355 HRESULT (STDMETHODCALLTYPE *SetVolumeLevel)(
5356 ISpMMSysAudio *This,
5357 ULONG Level);
5358
5359 HRESULT (STDMETHODCALLTYPE *GetBufferNotifySize)(
5360 ISpMMSysAudio *This,
5361 ULONG *pcbSize);
5362
5363 HRESULT (STDMETHODCALLTYPE *SetBufferNotifySize)(
5364 ISpMMSysAudio *This,
5365 ULONG cbSize);
5366
5367 /*** ISpMMSysAudio methods ***/
5368 HRESULT (STDMETHODCALLTYPE *GetDeviceId)(
5369 ISpMMSysAudio *This,
5370 UINT *puDeviceId);
5371
5372 HRESULT (STDMETHODCALLTYPE *SetDeviceId)(
5373 ISpMMSysAudio *This,
5374 UINT uDeviceId);
5375
5376 HRESULT (STDMETHODCALLTYPE *GetMMHandle)(
5377 ISpMMSysAudio *This,
5378 void **pHandle);
5379
5380 HRESULT (STDMETHODCALLTYPE *GetLineId)(
5381 ISpMMSysAudio *This,
5382 UINT *puLineId);
5383
5384 HRESULT (STDMETHODCALLTYPE *SetLineId)(
5385 ISpMMSysAudio *This,
5386 UINT uLineId);
5387
5388 END_INTERFACE
5389} ISpMMSysAudioVtbl;
5390
5391interface ISpMMSysAudio {
5392 CONST_VTBL ISpMMSysAudioVtbl* lpVtbl;
5393};
5394
5395#ifdef COBJMACROS
5396#ifndef WIDL_C_INLINE_WRAPPERS
5397/*** IUnknown methods ***/
5398#define ISpMMSysAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5399#define ISpMMSysAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
5400#define ISpMMSysAudio_Release(This) (This)->lpVtbl->Release(This)
5401/*** ISequentialStream methods ***/
5402#define ISpMMSysAudio_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
5403#define ISpMMSysAudio_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
5404/*** IStream methods ***/
5405#define ISpMMSysAudio_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
5406#define ISpMMSysAudio_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
5407#define ISpMMSysAudio_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
5408#define ISpMMSysAudio_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
5409#define ISpMMSysAudio_Revert(This) (This)->lpVtbl->Revert(This)
5410#define ISpMMSysAudio_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
5411#define ISpMMSysAudio_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
5412#define ISpMMSysAudio_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
5413#define ISpMMSysAudio_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
5414/*** ISpStreamFormat methods ***/
5415#define ISpMMSysAudio_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
5416/*** ISpAudio methods ***/
5417#define ISpMMSysAudio_SetState(This,NewState,ullReserved) (This)->lpVtbl->SetState(This,NewState,ullReserved)
5418#define ISpMMSysAudio_SetFormat(This,rguidFmtId,pWaveFormatEx) (This)->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx)
5419#define ISpMMSysAudio_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
5420#define ISpMMSysAudio_SetBufferInfo(This,pBuffInfo) (This)->lpVtbl->SetBufferInfo(This,pBuffInfo)
5421#define ISpMMSysAudio_GetBufferInfo(This,pBuffInfo) (This)->lpVtbl->GetBufferInfo(This,pBuffInfo)
5422#define ISpMMSysAudio_GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx)
5423#define ISpMMSysAudio_EventHandle(This) (This)->lpVtbl->EventHandle(This)
5424#define ISpMMSysAudio_GetVolumeLevel(This,pLevel) (This)->lpVtbl->GetVolumeLevel(This,pLevel)
5425#define ISpMMSysAudio_SetVolumeLevel(This,Level) (This)->lpVtbl->SetVolumeLevel(This,Level)
5426#define ISpMMSysAudio_GetBufferNotifySize(This,pcbSize) (This)->lpVtbl->GetBufferNotifySize(This,pcbSize)
5427#define ISpMMSysAudio_SetBufferNotifySize(This,cbSize) (This)->lpVtbl->SetBufferNotifySize(This,cbSize)
5428/*** ISpMMSysAudio methods ***/
5429#define ISpMMSysAudio_GetDeviceId(This,puDeviceId) (This)->lpVtbl->GetDeviceId(This,puDeviceId)
5430#define ISpMMSysAudio_SetDeviceId(This,uDeviceId) (This)->lpVtbl->SetDeviceId(This,uDeviceId)
5431#define ISpMMSysAudio_GetMMHandle(This,pHandle) (This)->lpVtbl->GetMMHandle(This,pHandle)
5432#define ISpMMSysAudio_GetLineId(This,puLineId) (This)->lpVtbl->GetLineId(This,puLineId)
5433#define ISpMMSysAudio_SetLineId(This,uLineId) (This)->lpVtbl->SetLineId(This,uLineId)
5434#else
5435/*** IUnknown methods ***/
5436static inline HRESULT ISpMMSysAudio_QueryInterface(ISpMMSysAudio* This,REFIID riid,void **ppvObject) {
5437 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5438}
5439static inline ULONG ISpMMSysAudio_AddRef(ISpMMSysAudio* This) {
5440 return This->lpVtbl->AddRef(This);
5441}
5442static inline ULONG ISpMMSysAudio_Release(ISpMMSysAudio* This) {
5443 return This->lpVtbl->Release(This);
5444}
5445/*** ISequentialStream methods ***/
5446static inline HRESULT ISpMMSysAudio_Read(ISpMMSysAudio* This,void *pv,ULONG cb,ULONG *pcbRead) {
5447 return This->lpVtbl->Read(This,pv,cb,pcbRead);
5448}
5449static inline HRESULT ISpMMSysAudio_Write(ISpMMSysAudio* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
5450 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
5451}
5452/*** IStream methods ***/
5453static inline HRESULT ISpMMSysAudio_Seek(ISpMMSysAudio* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
5454 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
5455}
5456static inline HRESULT ISpMMSysAudio_SetSize(ISpMMSysAudio* This,ULARGE_INTEGER libNewSize) {
5457 return This->lpVtbl->SetSize(This,libNewSize);
5458}
5459static inline HRESULT ISpMMSysAudio_CopyTo(ISpMMSysAudio* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
5460 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
5461}
5462static inline HRESULT ISpMMSysAudio_Commit(ISpMMSysAudio* This,DWORD grfCommitFlags) {
5463 return This->lpVtbl->Commit(This,grfCommitFlags);
5464}
5465static inline HRESULT ISpMMSysAudio_Revert(ISpMMSysAudio* This) {
5466 return This->lpVtbl->Revert(This);
5467}
5468static inline HRESULT ISpMMSysAudio_LockRegion(ISpMMSysAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5469 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
5470}
5471static inline HRESULT ISpMMSysAudio_UnlockRegion(ISpMMSysAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5472 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
5473}
5474static inline HRESULT ISpMMSysAudio_Stat(ISpMMSysAudio* This,STATSTG *pstatstg,DWORD grfStatFlag) {
5475 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
5476}
5477static inline HRESULT ISpMMSysAudio_Clone(ISpMMSysAudio* This,IStream **ppstm) {
5478 return This->lpVtbl->Clone(This,ppstm);
5479}
5480/*** ISpStreamFormat methods ***/
5481static inline HRESULT ISpMMSysAudio_GetFormat(ISpMMSysAudio* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5482 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
5483}
5484/*** ISpAudio methods ***/
5485static inline HRESULT ISpMMSysAudio_SetState(ISpMMSysAudio* This,SPAUDIOSTATE NewState,ULONGLONG ullReserved) {
5486 return This->lpVtbl->SetState(This,NewState,ullReserved);
5487}
5488static inline HRESULT ISpMMSysAudio_SetFormat(ISpMMSysAudio* This,REFGUID rguidFmtId,const WAVEFORMATEX *pWaveFormatEx) {
5489 return This->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx);
5490}
5491static inline HRESULT ISpMMSysAudio_GetStatus(ISpMMSysAudio* This,SPAUDIOSTATUS *pStatus) {
5492 return This->lpVtbl->GetStatus(This,pStatus);
5493}
5494static inline HRESULT ISpMMSysAudio_SetBufferInfo(ISpMMSysAudio* This,const SPAUDIOBUFFERINFO *pBuffInfo) {
5495 return This->lpVtbl->SetBufferInfo(This,pBuffInfo);
5496}
5497static inline HRESULT ISpMMSysAudio_GetBufferInfo(ISpMMSysAudio* This,SPAUDIOBUFFERINFO *pBuffInfo) {
5498 return This->lpVtbl->GetBufferInfo(This,pBuffInfo);
5499}
5500static inline HRESULT ISpMMSysAudio_GetDefaultFormat(ISpMMSysAudio* This,GUID *pFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5501 return This->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx);
5502}
5503static inline HANDLE ISpMMSysAudio_EventHandle(ISpMMSysAudio* This) {
5504 return This->lpVtbl->EventHandle(This);
5505}
5506static inline HRESULT ISpMMSysAudio_GetVolumeLevel(ISpMMSysAudio* This,ULONG *pLevel) {
5507 return This->lpVtbl->GetVolumeLevel(This,pLevel);
5508}
5509static inline HRESULT ISpMMSysAudio_SetVolumeLevel(ISpMMSysAudio* This,ULONG Level) {
5510 return This->lpVtbl->SetVolumeLevel(This,Level);
5511}
5512static inline HRESULT ISpMMSysAudio_GetBufferNotifySize(ISpMMSysAudio* This,ULONG *pcbSize) {
5513 return This->lpVtbl->GetBufferNotifySize(This,pcbSize);
5514}
5515static inline HRESULT ISpMMSysAudio_SetBufferNotifySize(ISpMMSysAudio* This,ULONG cbSize) {
5516 return This->lpVtbl->SetBufferNotifySize(This,cbSize);
5517}
5518/*** ISpMMSysAudio methods ***/
5519static inline HRESULT ISpMMSysAudio_GetDeviceId(ISpMMSysAudio* This,UINT *puDeviceId) {
5520 return This->lpVtbl->GetDeviceId(This,puDeviceId);
5521}
5522static inline HRESULT ISpMMSysAudio_SetDeviceId(ISpMMSysAudio* This,UINT uDeviceId) {
5523 return This->lpVtbl->SetDeviceId(This,uDeviceId);
5524}
5525static inline HRESULT ISpMMSysAudio_GetMMHandle(ISpMMSysAudio* This,void **pHandle) {
5526 return This->lpVtbl->GetMMHandle(This,pHandle);
5527}
5528static inline HRESULT ISpMMSysAudio_GetLineId(ISpMMSysAudio* This,UINT *puLineId) {
5529 return This->lpVtbl->GetLineId(This,puLineId);
5530}
5531static inline HRESULT ISpMMSysAudio_SetLineId(ISpMMSysAudio* This,UINT uLineId) {
5532 return This->lpVtbl->SetLineId(This,uLineId);
5533}
5534#endif
5535#endif
5536
5537#endif
5538
5539
5540#endif /* __ISpMMSysAudio_INTERFACE_DEFINED__ */
5541
5542/*****************************************************************************
5543 * ISpTranscript interface
5544 */
5545#ifndef __ISpTranscript_INTERFACE_DEFINED__
5546#define __ISpTranscript_INTERFACE_DEFINED__
5547
5548DEFINE_GUID(IID_ISpTranscript, 0x10f63bce, 0x201a, 0x11d3, 0xac,0x70, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
5549#if defined(__cplusplus) && !defined(CINTERFACE)
5550MIDL_INTERFACE("10f63bce-201a-11d3-ac70-00c04f8ee6c0")
5551ISpTranscript : public IUnknown
5552{
5553 virtual HRESULT STDMETHODCALLTYPE GetTranscript(
5554 LPWSTR *ppszTranscript) = 0;
5555
5556 virtual HRESULT STDMETHODCALLTYPE AppendTranscript(
5557 LPCWSTR pszTranscript) = 0;
5558
5559};
5560#ifdef __CRT_UUID_DECL
5561__CRT_UUID_DECL(ISpTranscript, 0x10f63bce, 0x201a, 0x11d3, 0xac,0x70, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
5562#endif
5563#else
5564typedef struct ISpTranscriptVtbl {
5565 BEGIN_INTERFACE
5566
5567 /*** IUnknown methods ***/
5568 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5569 ISpTranscript *This,
5570 REFIID riid,
5571 void **ppvObject);
5572
5573 ULONG (STDMETHODCALLTYPE *AddRef)(
5574 ISpTranscript *This);
5575
5576 ULONG (STDMETHODCALLTYPE *Release)(
5577 ISpTranscript *This);
5578
5579 /*** ISpTranscript methods ***/
5580 HRESULT (STDMETHODCALLTYPE *GetTranscript)(
5581 ISpTranscript *This,
5582 LPWSTR *ppszTranscript);
5583
5584 HRESULT (STDMETHODCALLTYPE *AppendTranscript)(
5585 ISpTranscript *This,
5586 LPCWSTR pszTranscript);
5587
5588 END_INTERFACE
5589} ISpTranscriptVtbl;
5590
5591interface ISpTranscript {
5592 CONST_VTBL ISpTranscriptVtbl* lpVtbl;
5593};
5594
5595#ifdef COBJMACROS
5596#ifndef WIDL_C_INLINE_WRAPPERS
5597/*** IUnknown methods ***/
5598#define ISpTranscript_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5599#define ISpTranscript_AddRef(This) (This)->lpVtbl->AddRef(This)
5600#define ISpTranscript_Release(This) (This)->lpVtbl->Release(This)
5601/*** ISpTranscript methods ***/
5602#define ISpTranscript_GetTranscript(This,ppszTranscript) (This)->lpVtbl->GetTranscript(This,ppszTranscript)
5603#define ISpTranscript_AppendTranscript(This,pszTranscript) (This)->lpVtbl->AppendTranscript(This,pszTranscript)
5604#else
5605/*** IUnknown methods ***/
5606static inline HRESULT ISpTranscript_QueryInterface(ISpTranscript* This,REFIID riid,void **ppvObject) {
5607 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5608}
5609static inline ULONG ISpTranscript_AddRef(ISpTranscript* This) {
5610 return This->lpVtbl->AddRef(This);
5611}
5612static inline ULONG ISpTranscript_Release(ISpTranscript* This) {
5613 return This->lpVtbl->Release(This);
5614}
5615/*** ISpTranscript methods ***/
5616static inline HRESULT ISpTranscript_GetTranscript(ISpTranscript* This,LPWSTR *ppszTranscript) {
5617 return This->lpVtbl->GetTranscript(This,ppszTranscript);
5618}
5619static inline HRESULT ISpTranscript_AppendTranscript(ISpTranscript* This,LPCWSTR pszTranscript) {
5620 return This->lpVtbl->AppendTranscript(This,pszTranscript);
5621}
5622#endif
5623#endif
5624
5625#endif
5626
5627
5628#endif /* __ISpTranscript_INTERFACE_DEFINED__ */
5629
5630typedef WCHAR SPPHONEID;
5631typedef LPWSTR PSPPHONEID;
5632typedef LPCWSTR PCSPPHONEID;
5633typedef struct SPPHRASEELEMENT {
5634 ULONG ulAudioTimeOffset;
5635 ULONG ulAudioSizeTime;
5636 ULONG ulAudioStreamOffset;
5637 ULONG ulAudioSizeBytes;
5638 ULONG ulRetainedStreamOffset;
5639 ULONG ulRetainedSizeBytes;
5640 LPCWSTR pszDisplayText;
5641 LPCWSTR pszLexicalForm;
5642 const SPPHONEID *pszPronunciation;
5643 BYTE bDisplayAttributes;
5644 signed char RequiredConfidence;
5645 signed char ActualConfidence;
5646 BYTE Reserved;
5647 float SREngineConfidence;
5648} SPPHRASEELEMENT;
5649typedef struct SPPHRASERULE SPPHRASERULE;
5650typedef struct SPPHRASEPROPERTY SPPHRASEPROPERTY;
5651struct SPPHRASERULE {
5652 LPCWSTR pszName;
5653 ULONG ulId;
5654 ULONG ulFirstElement;
5655 ULONG ulCountOfElements;
5656 const SPPHRASERULE *pNextSibling;
5657 const SPPHRASERULE *pFirstChild;
5658 float SREngineConfidence;
5659 signed char Confidence;
5660};
5661struct SPPHRASEPROPERTY {
5662 LPCWSTR pszName;
5663 __C89_NAMELESS union {
5664 ULONG ulId;
5665 __C89_NAMELESS struct {
5666 byte bType;
5667 byte bReserved;
5668 unsigned short usArrayIndex;
5669 } __C89_NAMELESSSTRUCTNAME;
5670 } __C89_NAMELESSUNIONNAME;
5671 LPCWSTR pszValue;
5672 VARIANT vValue;
5673 ULONG ulFirstElement;
5674 ULONG ulCountOfElements;
5675 const SPPHRASEPROPERTY *pNextSibling;
5676 const SPPHRASEPROPERTY *pFirstChild;
5677 float SREngineConfidence;
5678 signed char Confidence;
5679};
5680typedef struct SPPHRASEREPLACEMENT {
5681 BYTE bDisplayAttributes;
5682 LPCWSTR pszReplacementText;
5683 ULONG ulFirstElement;
5684 ULONG ulCountOfElements;
5685} SPPHRASEREPLACEMENT;
5686typedef struct SPSEMANTICERRORINFO {
5687 ULONG ulLineNumber;
5688 LPWSTR pszScriptLine;
5689 LPWSTR pszSource;
5690 LPWSTR pszDescription;
5691 HRESULT hrResultCode;
5692} SPSEMANTICERRORINFO;
5693typedef struct SPPHRASE_50 {
5694 ULONG cbSize;
5695 WORD LangID;
5696 WORD wHomophoneGroupId;
5697 ULONGLONG ullGrammarID;
5698 ULONGLONG ftStartTime;
5699 ULONGLONG ullAudioStreamPosition;
5700 ULONG ulAudioSizeBytes;
5701 ULONG ulRetainedSizeBytes;
5702 ULONG ulAudioSizeTime;
5703 SPPHRASERULE Rule;
5704 const SPPHRASEPROPERTY *pProperties;
5705 const SPPHRASEELEMENT *pElements;
5706 ULONG cReplacements;
5707 const SPPHRASEREPLACEMENT *pReplacements;
5708 GUID SREngineID;
5709 ULONG ulSREnginePrivateDataSize;
5710 const BYTE *pSREnginePrivateData;
5711} SPPHRASE_50;
5712#define SP_SPPHRASESIZE_500 sizeof (SPPHRASE_50)
5713#ifdef __cplusplus
5714typedef struct SPPHRASE : public SPPHRASE_50 {
5715 LPWSTR pSML;
5716 SPSEMANTICERRORINFO* pSemanticErrorInfo;
5717} SPPHRASE;
5718#else
5719typedef struct SPPHRASE {
5720 ULONG cbSize;
5721 WORD LangID;
5722 WORD wHomophoneGroupId;
5723 ULONGLONG ullGrammarID;
5724 ULONGLONG ftStartTime;
5725 ULONGLONG ullAudioStreamPosition;
5726 ULONG ulAudioSizeBytes;
5727 ULONG ulRetainedSizeBytes;
5728 ULONG ulAudioSizeTime;
5729 SPPHRASERULE Rule;
5730 const SPPHRASEPROPERTY *pProperties;
5731 const SPPHRASEELEMENT *pElements;
5732 ULONG cReplacements;
5733 const SPPHRASEREPLACEMENT *pReplacements;
5734 GUID SREngineID;
5735 ULONG ulSREnginePrivateDataSize;
5736 const BYTE *pSREnginePrivateData;
5737 LPWSTR pSML;
5738 SPSEMANTICERRORINFO *pSemanticErrorInfo;
5739} SPPHRASE;
5740#endif
5741typedef struct SPSERIALIZEDPHRASE {
5742 ULONG ulSerializedSize;
5743} SPSERIALIZEDPHRASE;
5744typedef struct SPRULE {
5745 LPCWSTR pszRuleName;
5746 ULONG ulRuleId;
5747 DWORD dwAttributes;
5748} SPRULE;
5749typedef struct SPBINARYGRAMMAR {
5750 ULONG ulTotalSerializedSize;
5751} SPBINARYGRAMMAR;
5752#if 0
5753typedef void *SPSTATEHANDLE;
5754#else
5755DECLARE_HANDLE(SPSTATEHANDLE);
5756#endif
5757typedef struct SPWORDPRONUNCIATION {
5758 struct SPWORDPRONUNCIATION *pNextWordPronunciation;
5759 SPLEXICONTYPE eLexiconType;
5760 WORD LangID;
5761 WORD wPronunciationFlags;
5762 SPPARTOFSPEECH ePartOfSpeech;
5763 SPPHONEID szPronunciation[1];
5764} SPWORDPRONUNCIATION;
5765typedef struct SPWORDPRONUNCIATIONLIST {
5766 ULONG ulSize;
5767 BYTE *pvBuffer;
5768 SPWORDPRONUNCIATION *pFirstWordPronunciation;
5769} SPWORDPRONUNCIATIONLIST;
5770typedef struct SPWORD {
5771 struct SPWORD *pNextWord;
5772 WORD LangID;
5773 WORD wReserved;
5774 SPWORDTYPE eWordType;
5775 LPWSTR pszWord;
5776 SPWORDPRONUNCIATION *pFirstWordPronunciation;
5777} SPWORD;
5778typedef struct SPWORDLIST {
5779 ULONG ulSize;
5780 BYTE *pvBuffer;
5781 SPWORD *pFirstWord;
5782} SPWORDLIST;
5783/*****************************************************************************
5784 * ISpLexicon interface
5785 */
5786#ifndef __ISpLexicon_INTERFACE_DEFINED__
5787#define __ISpLexicon_INTERFACE_DEFINED__
5788
5789DEFINE_GUID(IID_ISpLexicon, 0xda41a7c2, 0x5383, 0x4db2, 0x91,0x6b, 0x6c,0x17,0x19,0xe3,0xdb,0x58);
5790#if defined(__cplusplus) && !defined(CINTERFACE)
5791MIDL_INTERFACE("da41a7c2-5383-4db2-916b-6c1719e3db58")
5792ISpLexicon : public IUnknown
5793{
5794 virtual HRESULT STDMETHODCALLTYPE GetPronunciations(
5795 LPCWSTR pszWord,
5796 WORD LangID,
5797 DWORD dwFlags,
5798 SPWORDPRONUNCIATIONLIST *pWordPronunciationList) = 0;
5799
5800 virtual HRESULT STDMETHODCALLTYPE AddPronunciation(
5801 LPCWSTR pszWord,
5802 WORD LangID,
5803 SPPARTOFSPEECH ePartOfSpeech,
5804 PCSPPHONEID pszPronunciation) = 0;
5805
5806 virtual HRESULT STDMETHODCALLTYPE RemovePronunciation(
5807 LPCWSTR pszWord,
5808 WORD LangID,
5809 SPPARTOFSPEECH ePartOfSpeech,
5810 PCSPPHONEID pszPronunciation) = 0;
5811
5812 virtual HRESULT STDMETHODCALLTYPE GetGeneration(
5813 DWORD *pdwGeneration) = 0;
5814
5815 virtual HRESULT STDMETHODCALLTYPE GetGenerationChange(
5816 DWORD dwFlags,
5817 DWORD *pdwGeneration,
5818 SPWORDLIST *pWordList) = 0;
5819
5820 virtual HRESULT STDMETHODCALLTYPE GetWords(
5821 DWORD dwFlags,
5822 DWORD *pdwGeneration,
5823 DWORD *pdwCookie,
5824 SPWORDLIST *pWordList) = 0;
5825
5826};
5827#ifdef __CRT_UUID_DECL
5828__CRT_UUID_DECL(ISpLexicon, 0xda41a7c2, 0x5383, 0x4db2, 0x91,0x6b, 0x6c,0x17,0x19,0xe3,0xdb,0x58)
5829#endif
5830#else
5831typedef struct ISpLexiconVtbl {
5832 BEGIN_INTERFACE
5833
5834 /*** IUnknown methods ***/
5835 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5836 ISpLexicon *This,
5837 REFIID riid,
5838 void **ppvObject);
5839
5840 ULONG (STDMETHODCALLTYPE *AddRef)(
5841 ISpLexicon *This);
5842
5843 ULONG (STDMETHODCALLTYPE *Release)(
5844 ISpLexicon *This);
5845
5846 /*** ISpLexicon methods ***/
5847 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
5848 ISpLexicon *This,
5849 LPCWSTR pszWord,
5850 WORD LangID,
5851 DWORD dwFlags,
5852 SPWORDPRONUNCIATIONLIST *pWordPronunciationList);
5853
5854 HRESULT (STDMETHODCALLTYPE *AddPronunciation)(
5855 ISpLexicon *This,
5856 LPCWSTR pszWord,
5857 WORD LangID,
5858 SPPARTOFSPEECH ePartOfSpeech,
5859 PCSPPHONEID pszPronunciation);
5860
5861 HRESULT (STDMETHODCALLTYPE *RemovePronunciation)(
5862 ISpLexicon *This,
5863 LPCWSTR pszWord,
5864 WORD LangID,
5865 SPPARTOFSPEECH ePartOfSpeech,
5866 PCSPPHONEID pszPronunciation);
5867
5868 HRESULT (STDMETHODCALLTYPE *GetGeneration)(
5869 ISpLexicon *This,
5870 DWORD *pdwGeneration);
5871
5872 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
5873 ISpLexicon *This,
5874 DWORD dwFlags,
5875 DWORD *pdwGeneration,
5876 SPWORDLIST *pWordList);
5877
5878 HRESULT (STDMETHODCALLTYPE *GetWords)(
5879 ISpLexicon *This,
5880 DWORD dwFlags,
5881 DWORD *pdwGeneration,
5882 DWORD *pdwCookie,
5883 SPWORDLIST *pWordList);
5884
5885 END_INTERFACE
5886} ISpLexiconVtbl;
5887
5888interface ISpLexicon {
5889 CONST_VTBL ISpLexiconVtbl* lpVtbl;
5890};
5891
5892#ifdef COBJMACROS
5893#ifndef WIDL_C_INLINE_WRAPPERS
5894/*** IUnknown methods ***/
5895#define ISpLexicon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5896#define ISpLexicon_AddRef(This) (This)->lpVtbl->AddRef(This)
5897#define ISpLexicon_Release(This) (This)->lpVtbl->Release(This)
5898/*** ISpLexicon methods ***/
5899#define ISpLexicon_GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList) (This)->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList)
5900#define ISpLexicon_AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
5901#define ISpLexicon_RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
5902#define ISpLexicon_GetGeneration(This,pdwGeneration) (This)->lpVtbl->GetGeneration(This,pdwGeneration)
5903#define ISpLexicon_GetGenerationChange(This,dwFlags,pdwGeneration,pWordList) (This)->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList)
5904#define ISpLexicon_GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList) (This)->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList)
5905#else
5906/*** IUnknown methods ***/
5907static inline HRESULT ISpLexicon_QueryInterface(ISpLexicon* This,REFIID riid,void **ppvObject) {
5908 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5909}
5910static inline ULONG ISpLexicon_AddRef(ISpLexicon* This) {
5911 return This->lpVtbl->AddRef(This);
5912}
5913static inline ULONG ISpLexicon_Release(ISpLexicon* This) {
5914 return This->lpVtbl->Release(This);
5915}
5916/*** ISpLexicon methods ***/
5917static inline HRESULT ISpLexicon_GetPronunciations(ISpLexicon* This,LPCWSTR pszWord,WORD LangID,DWORD dwFlags,SPWORDPRONUNCIATIONLIST *pWordPronunciationList) {
5918 return This->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList);
5919}
5920static inline HRESULT ISpLexicon_AddPronunciation(ISpLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
5921 return This->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
5922}
5923static inline HRESULT ISpLexicon_RemovePronunciation(ISpLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
5924 return This->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
5925}
5926static inline HRESULT ISpLexicon_GetGeneration(ISpLexicon* This,DWORD *pdwGeneration) {
5927 return This->lpVtbl->GetGeneration(This,pdwGeneration);
5928}
5929static inline HRESULT ISpLexicon_GetGenerationChange(ISpLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,SPWORDLIST *pWordList) {
5930 return This->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList);
5931}
5932static inline HRESULT ISpLexicon_GetWords(ISpLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,DWORD *pdwCookie,SPWORDLIST *pWordList) {
5933 return This->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList);
5934}
5935#endif
5936#endif
5937
5938#endif
5939
5940
5941#endif /* __ISpLexicon_INTERFACE_DEFINED__ */
5942
5943/*****************************************************************************
5944 * ISpContainerLexicon interface
5945 */
5946#ifndef __ISpContainerLexicon_INTERFACE_DEFINED__
5947#define __ISpContainerLexicon_INTERFACE_DEFINED__
5948
5949DEFINE_GUID(IID_ISpContainerLexicon, 0x8565572f, 0xc094, 0x41cc, 0xb5,0x6e, 0x10,0xbd,0x9c,0x3f,0xf0,0x44);
5950#if defined(__cplusplus) && !defined(CINTERFACE)
5951MIDL_INTERFACE("8565572f-c094-41cc-b56e-10bd9c3ff044")
5952ISpContainerLexicon : public ISpLexicon
5953{
5954 virtual HRESULT STDMETHODCALLTYPE AddLexicon(
5955 ISpLexicon *pAddLexicon,
5956 DWORD dwFlags) = 0;
5957
5958};
5959#ifdef __CRT_UUID_DECL
5960__CRT_UUID_DECL(ISpContainerLexicon, 0x8565572f, 0xc094, 0x41cc, 0xb5,0x6e, 0x10,0xbd,0x9c,0x3f,0xf0,0x44)
5961#endif
5962#else
5963typedef struct ISpContainerLexiconVtbl {
5964 BEGIN_INTERFACE
5965
5966 /*** IUnknown methods ***/
5967 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5968 ISpContainerLexicon *This,
5969 REFIID riid,
5970 void **ppvObject);
5971
5972 ULONG (STDMETHODCALLTYPE *AddRef)(
5973 ISpContainerLexicon *This);
5974
5975 ULONG (STDMETHODCALLTYPE *Release)(
5976 ISpContainerLexicon *This);
5977
5978 /*** ISpLexicon methods ***/
5979 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
5980 ISpContainerLexicon *This,
5981 LPCWSTR pszWord,
5982 WORD LangID,
5983 DWORD dwFlags,
5984 SPWORDPRONUNCIATIONLIST *pWordPronunciationList);
5985
5986 HRESULT (STDMETHODCALLTYPE *AddPronunciation)(
5987 ISpContainerLexicon *This,
5988 LPCWSTR pszWord,
5989 WORD LangID,
5990 SPPARTOFSPEECH ePartOfSpeech,
5991 PCSPPHONEID pszPronunciation);
5992
5993 HRESULT (STDMETHODCALLTYPE *RemovePronunciation)(
5994 ISpContainerLexicon *This,
5995 LPCWSTR pszWord,
5996 WORD LangID,
5997 SPPARTOFSPEECH ePartOfSpeech,
5998 PCSPPHONEID pszPronunciation);
5999
6000 HRESULT (STDMETHODCALLTYPE *GetGeneration)(
6001 ISpContainerLexicon *This,
6002 DWORD *pdwGeneration);
6003
6004 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
6005 ISpContainerLexicon *This,
6006 DWORD dwFlags,
6007 DWORD *pdwGeneration,
6008 SPWORDLIST *pWordList);
6009
6010 HRESULT (STDMETHODCALLTYPE *GetWords)(
6011 ISpContainerLexicon *This,
6012 DWORD dwFlags,
6013 DWORD *pdwGeneration,
6014 DWORD *pdwCookie,
6015 SPWORDLIST *pWordList);
6016
6017 /*** ISpContainerLexicon methods ***/
6018 HRESULT (STDMETHODCALLTYPE *AddLexicon)(
6019 ISpContainerLexicon *This,
6020 ISpLexicon *pAddLexicon,
6021 DWORD dwFlags);
6022
6023 END_INTERFACE
6024} ISpContainerLexiconVtbl;
6025
6026interface ISpContainerLexicon {
6027 CONST_VTBL ISpContainerLexiconVtbl* lpVtbl;
6028};
6029
6030#ifdef COBJMACROS
6031#ifndef WIDL_C_INLINE_WRAPPERS
6032/*** IUnknown methods ***/
6033#define ISpContainerLexicon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6034#define ISpContainerLexicon_AddRef(This) (This)->lpVtbl->AddRef(This)
6035#define ISpContainerLexicon_Release(This) (This)->lpVtbl->Release(This)
6036/*** ISpLexicon methods ***/
6037#define ISpContainerLexicon_GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList) (This)->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList)
6038#define ISpContainerLexicon_AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
6039#define ISpContainerLexicon_RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
6040#define ISpContainerLexicon_GetGeneration(This,pdwGeneration) (This)->lpVtbl->GetGeneration(This,pdwGeneration)
6041#define ISpContainerLexicon_GetGenerationChange(This,dwFlags,pdwGeneration,pWordList) (This)->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList)
6042#define ISpContainerLexicon_GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList) (This)->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList)
6043/*** ISpContainerLexicon methods ***/
6044#define ISpContainerLexicon_AddLexicon(This,pAddLexicon,dwFlags) (This)->lpVtbl->AddLexicon(This,pAddLexicon,dwFlags)
6045#else
6046/*** IUnknown methods ***/
6047static inline HRESULT ISpContainerLexicon_QueryInterface(ISpContainerLexicon* This,REFIID riid,void **ppvObject) {
6048 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6049}
6050static inline ULONG ISpContainerLexicon_AddRef(ISpContainerLexicon* This) {
6051 return This->lpVtbl->AddRef(This);
6052}
6053static inline ULONG ISpContainerLexicon_Release(ISpContainerLexicon* This) {
6054 return This->lpVtbl->Release(This);
6055}
6056/*** ISpLexicon methods ***/
6057static inline HRESULT ISpContainerLexicon_GetPronunciations(ISpContainerLexicon* This,LPCWSTR pszWord,WORD LangID,DWORD dwFlags,SPWORDPRONUNCIATIONLIST *pWordPronunciationList) {
6058 return This->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList);
6059}
6060static inline HRESULT ISpContainerLexicon_AddPronunciation(ISpContainerLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
6061 return This->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
6062}
6063static inline HRESULT ISpContainerLexicon_RemovePronunciation(ISpContainerLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
6064 return This->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
6065}
6066static inline HRESULT ISpContainerLexicon_GetGeneration(ISpContainerLexicon* This,DWORD *pdwGeneration) {
6067 return This->lpVtbl->GetGeneration(This,pdwGeneration);
6068}
6069static inline HRESULT ISpContainerLexicon_GetGenerationChange(ISpContainerLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,SPWORDLIST *pWordList) {
6070 return This->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList);
6071}
6072static inline HRESULT ISpContainerLexicon_GetWords(ISpContainerLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,DWORD *pdwCookie,SPWORDLIST *pWordList) {
6073 return This->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList);
6074}
6075/*** ISpContainerLexicon methods ***/
6076static inline HRESULT ISpContainerLexicon_AddLexicon(ISpContainerLexicon* This,ISpLexicon *pAddLexicon,DWORD dwFlags) {
6077 return This->lpVtbl->AddLexicon(This,pAddLexicon,dwFlags);
6078}
6079#endif
6080#endif
6081
6082#endif
6083
6084
6085#endif /* __ISpContainerLexicon_INTERFACE_DEFINED__ */
6086
6087typedef struct SPSHORTCUTPAIR {
6088 struct SPSHORTCUTPAIR *pNextSHORTCUTPAIR;
6089 WORD LangID;
6090 SPSHORTCUTTYPE shType;
6091 LPWSTR pszDisplay;
6092 LPWSTR pszSpoken;
6093} SPSHORTCUTPAIR;
6094typedef struct SPSHORTCUTPAIRLIST {
6095 ULONG ulSize;
6096 BYTE *pvBuffer;
6097 SPSHORTCUTPAIR *pFirstShortcutPair;
6098} SPSHORTCUTPAIRLIST;
6099/*****************************************************************************
6100 * ISpShortcut interface
6101 */
6102#ifndef __ISpShortcut_INTERFACE_DEFINED__
6103#define __ISpShortcut_INTERFACE_DEFINED__
6104
6105DEFINE_GUID(IID_ISpShortcut, 0x3df681e2, 0xea56, 0x11d9, 0x8b,0xde, 0xf6,0x6b,0xad,0x1e,0x3f,0x3a);
6106#if defined(__cplusplus) && !defined(CINTERFACE)
6107MIDL_INTERFACE("3df681e2-ea56-11d9-8bde-f66bad1e3f3a")
6108ISpShortcut : public IUnknown
6109{
6110 virtual HRESULT STDMETHODCALLTYPE AddShortcut(
6111 LPCWSTR pszDisplay,
6112 WORD LangID,
6113 LPCWSTR pszSpoken,
6114 SPSHORTCUTTYPE shType) = 0;
6115
6116 virtual HRESULT STDMETHODCALLTYPE RemoveShortcut(
6117 LPCWSTR pszDisplay,
6118 WORD LangID,
6119 LPCWSTR pszSpoken,
6120 SPSHORTCUTTYPE shType) = 0;
6121
6122 virtual HRESULT STDMETHODCALLTYPE GetShortcuts(
6123 WORD LangID,
6124 SPSHORTCUTPAIRLIST *pShortcutpairList) = 0;
6125
6126 virtual HRESULT STDMETHODCALLTYPE GetGeneration(
6127 DWORD *pdwGeneration) = 0;
6128
6129 virtual HRESULT STDMETHODCALLTYPE GetWordsFromGenerationChange(
6130 DWORD *pdwGeneration,
6131 SPWORDLIST *pWordList) = 0;
6132
6133 virtual HRESULT STDMETHODCALLTYPE GetWords(
6134 DWORD *pdwGeneration,
6135 DWORD *pdwCookie,
6136 SPWORDLIST *pWordList) = 0;
6137
6138 virtual HRESULT STDMETHODCALLTYPE GetShortcutsForGeneration(
6139 DWORD *pdwGeneration,
6140 DWORD *pdwCookie,
6141 SPSHORTCUTPAIRLIST *pShortcutpairList) = 0;
6142
6143 virtual HRESULT STDMETHODCALLTYPE GetGenerationChange(
6144 DWORD *pdwGeneration,
6145 SPSHORTCUTPAIRLIST *pShortcutpairList) = 0;
6146
6147};
6148#ifdef __CRT_UUID_DECL
6149__CRT_UUID_DECL(ISpShortcut, 0x3df681e2, 0xea56, 0x11d9, 0x8b,0xde, 0xf6,0x6b,0xad,0x1e,0x3f,0x3a)
6150#endif
6151#else
6152typedef struct ISpShortcutVtbl {
6153 BEGIN_INTERFACE
6154
6155 /*** IUnknown methods ***/
6156 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6157 ISpShortcut *This,
6158 REFIID riid,
6159 void **ppvObject);
6160
6161 ULONG (STDMETHODCALLTYPE *AddRef)(
6162 ISpShortcut *This);
6163
6164 ULONG (STDMETHODCALLTYPE *Release)(
6165 ISpShortcut *This);
6166
6167 /*** ISpShortcut methods ***/
6168 HRESULT (STDMETHODCALLTYPE *AddShortcut)(
6169 ISpShortcut *This,
6170 LPCWSTR pszDisplay,
6171 WORD LangID,
6172 LPCWSTR pszSpoken,
6173 SPSHORTCUTTYPE shType);
6174
6175 HRESULT (STDMETHODCALLTYPE *RemoveShortcut)(
6176 ISpShortcut *This,
6177 LPCWSTR pszDisplay,
6178 WORD LangID,
6179 LPCWSTR pszSpoken,
6180 SPSHORTCUTTYPE shType);
6181
6182 HRESULT (STDMETHODCALLTYPE *GetShortcuts)(
6183 ISpShortcut *This,
6184 WORD LangID,
6185 SPSHORTCUTPAIRLIST *pShortcutpairList);
6186
6187 HRESULT (STDMETHODCALLTYPE *GetGeneration)(
6188 ISpShortcut *This,
6189 DWORD *pdwGeneration);
6190
6191 HRESULT (STDMETHODCALLTYPE *GetWordsFromGenerationChange)(
6192 ISpShortcut *This,
6193 DWORD *pdwGeneration,
6194 SPWORDLIST *pWordList);
6195
6196 HRESULT (STDMETHODCALLTYPE *GetWords)(
6197 ISpShortcut *This,
6198 DWORD *pdwGeneration,
6199 DWORD *pdwCookie,
6200 SPWORDLIST *pWordList);
6201
6202 HRESULT (STDMETHODCALLTYPE *GetShortcutsForGeneration)(
6203 ISpShortcut *This,
6204 DWORD *pdwGeneration,
6205 DWORD *pdwCookie,
6206 SPSHORTCUTPAIRLIST *pShortcutpairList);
6207
6208 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
6209 ISpShortcut *This,
6210 DWORD *pdwGeneration,
6211 SPSHORTCUTPAIRLIST *pShortcutpairList);
6212
6213 END_INTERFACE
6214} ISpShortcutVtbl;
6215
6216interface ISpShortcut {
6217 CONST_VTBL ISpShortcutVtbl* lpVtbl;
6218};
6219
6220#ifdef COBJMACROS
6221#ifndef WIDL_C_INLINE_WRAPPERS
6222/*** IUnknown methods ***/
6223#define ISpShortcut_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6224#define ISpShortcut_AddRef(This) (This)->lpVtbl->AddRef(This)
6225#define ISpShortcut_Release(This) (This)->lpVtbl->Release(This)
6226/*** ISpShortcut methods ***/
6227#define ISpShortcut_AddShortcut(This,pszDisplay,LangID,pszSpoken,shType) (This)->lpVtbl->AddShortcut(This,pszDisplay,LangID,pszSpoken,shType)
6228#define ISpShortcut_RemoveShortcut(This,pszDisplay,LangID,pszSpoken,shType) (This)->lpVtbl->RemoveShortcut(This,pszDisplay,LangID,pszSpoken,shType)
6229#define ISpShortcut_GetShortcuts(This,LangID,pShortcutpairList) (This)->lpVtbl->GetShortcuts(This,LangID,pShortcutpairList)
6230#define ISpShortcut_GetGeneration(This,pdwGeneration) (This)->lpVtbl->GetGeneration(This,pdwGeneration)
6231#define ISpShortcut_GetWordsFromGenerationChange(This,pdwGeneration,pWordList) (This)->lpVtbl->GetWordsFromGenerationChange(This,pdwGeneration,pWordList)
6232#define ISpShortcut_GetWords(This,pdwGeneration,pdwCookie,pWordList) (This)->lpVtbl->GetWords(This,pdwGeneration,pdwCookie,pWordList)
6233#define ISpShortcut_GetShortcutsForGeneration(This,pdwGeneration,pdwCookie,pShortcutpairList) (This)->lpVtbl->GetShortcutsForGeneration(This,pdwGeneration,pdwCookie,pShortcutpairList)
6234#define ISpShortcut_GetGenerationChange(This,pdwGeneration,pShortcutpairList) (This)->lpVtbl->GetGenerationChange(This,pdwGeneration,pShortcutpairList)
6235#else
6236/*** IUnknown methods ***/
6237static inline HRESULT ISpShortcut_QueryInterface(ISpShortcut* This,REFIID riid,void **ppvObject) {
6238 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6239}
6240static inline ULONG ISpShortcut_AddRef(ISpShortcut* This) {
6241 return This->lpVtbl->AddRef(This);
6242}
6243static inline ULONG ISpShortcut_Release(ISpShortcut* This) {
6244 return This->lpVtbl->Release(This);
6245}
6246/*** ISpShortcut methods ***/
6247static inline HRESULT ISpShortcut_AddShortcut(ISpShortcut* This,LPCWSTR pszDisplay,WORD LangID,LPCWSTR pszSpoken,SPSHORTCUTTYPE shType) {
6248 return This->lpVtbl->AddShortcut(This,pszDisplay,LangID,pszSpoken,shType);
6249}
6250static inline HRESULT ISpShortcut_RemoveShortcut(ISpShortcut* This,LPCWSTR pszDisplay,WORD LangID,LPCWSTR pszSpoken,SPSHORTCUTTYPE shType) {
6251 return This->lpVtbl->RemoveShortcut(This,pszDisplay,LangID,pszSpoken,shType);
6252}
6253static inline HRESULT ISpShortcut_GetShortcuts(ISpShortcut* This,WORD LangID,SPSHORTCUTPAIRLIST *pShortcutpairList) {
6254 return This->lpVtbl->GetShortcuts(This,LangID,pShortcutpairList);
6255}
6256static inline HRESULT ISpShortcut_GetGeneration(ISpShortcut* This,DWORD *pdwGeneration) {
6257 return This->lpVtbl->GetGeneration(This,pdwGeneration);
6258}
6259static inline HRESULT ISpShortcut_GetWordsFromGenerationChange(ISpShortcut* This,DWORD *pdwGeneration,SPWORDLIST *pWordList) {
6260 return This->lpVtbl->GetWordsFromGenerationChange(This,pdwGeneration,pWordList);
6261}
6262static inline HRESULT ISpShortcut_GetWords(ISpShortcut* This,DWORD *pdwGeneration,DWORD *pdwCookie,SPWORDLIST *pWordList) {
6263 return This->lpVtbl->GetWords(This,pdwGeneration,pdwCookie,pWordList);
6264}
6265static inline HRESULT ISpShortcut_GetShortcutsForGeneration(ISpShortcut* This,DWORD *pdwGeneration,DWORD *pdwCookie,SPSHORTCUTPAIRLIST *pShortcutpairList) {
6266 return This->lpVtbl->GetShortcutsForGeneration(This,pdwGeneration,pdwCookie,pShortcutpairList);
6267}
6268static inline HRESULT ISpShortcut_GetGenerationChange(ISpShortcut* This,DWORD *pdwGeneration,SPSHORTCUTPAIRLIST *pShortcutpairList) {
6269 return This->lpVtbl->GetGenerationChange(This,pdwGeneration,pShortcutpairList);
6270}
6271#endif
6272#endif
6273
6274#endif
6275
6276
6277#endif /* __ISpShortcut_INTERFACE_DEFINED__ */
6278
6279/*****************************************************************************
6280 * ISpPhoneConverter interface
6281 */
6282#ifndef __ISpPhoneConverter_INTERFACE_DEFINED__
6283#define __ISpPhoneConverter_INTERFACE_DEFINED__
6284
6285DEFINE_GUID(IID_ISpPhoneConverter, 0x8445c581, 0x0cac, 0x4a38, 0xab,0xfe, 0x9b,0x2c,0xe2,0x82,0x64,0x55);
6286#if defined(__cplusplus) && !defined(CINTERFACE)
6287MIDL_INTERFACE("8445c581-0cac-4a38-abfe-9b2ce2826455")
6288ISpPhoneConverter : public ISpObjectWithToken
6289{
6290 virtual HRESULT STDMETHODCALLTYPE PhoneToId(
6291 LPCWSTR pszPhone,
6292 SPPHONEID *pId) = 0;
6293
6294 virtual HRESULT STDMETHODCALLTYPE IdToPhone(
6295 PCSPPHONEID pId,
6296 WCHAR *pszPhone) = 0;
6297
6298};
6299#ifdef __CRT_UUID_DECL
6300__CRT_UUID_DECL(ISpPhoneConverter, 0x8445c581, 0x0cac, 0x4a38, 0xab,0xfe, 0x9b,0x2c,0xe2,0x82,0x64,0x55)
6301#endif
6302#else
6303typedef struct ISpPhoneConverterVtbl {
6304 BEGIN_INTERFACE
6305
6306 /*** IUnknown methods ***/
6307 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6308 ISpPhoneConverter *This,
6309 REFIID riid,
6310 void **ppvObject);
6311
6312 ULONG (STDMETHODCALLTYPE *AddRef)(
6313 ISpPhoneConverter *This);
6314
6315 ULONG (STDMETHODCALLTYPE *Release)(
6316 ISpPhoneConverter *This);
6317
6318 /*** ISpObjectWithToken methods ***/
6319 HRESULT (STDMETHODCALLTYPE *SetObjectToken)(
6320 ISpPhoneConverter *This,
6321 ISpObjectToken *pToken);
6322
6323 HRESULT (STDMETHODCALLTYPE *GetObjectToken)(
6324 ISpPhoneConverter *This,
6325 ISpObjectToken **ppToken);
6326
6327 /*** ISpPhoneConverter methods ***/
6328 HRESULT (STDMETHODCALLTYPE *PhoneToId)(
6329 ISpPhoneConverter *This,
6330 LPCWSTR pszPhone,
6331 SPPHONEID *pId);
6332
6333 HRESULT (STDMETHODCALLTYPE *IdToPhone)(
6334 ISpPhoneConverter *This,
6335 PCSPPHONEID pId,
6336 WCHAR *pszPhone);
6337
6338 END_INTERFACE
6339} ISpPhoneConverterVtbl;
6340
6341interface ISpPhoneConverter {
6342 CONST_VTBL ISpPhoneConverterVtbl* lpVtbl;
6343};
6344
6345#ifdef COBJMACROS
6346#ifndef WIDL_C_INLINE_WRAPPERS
6347/*** IUnknown methods ***/
6348#define ISpPhoneConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6349#define ISpPhoneConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
6350#define ISpPhoneConverter_Release(This) (This)->lpVtbl->Release(This)
6351/*** ISpObjectWithToken methods ***/
6352#define ISpPhoneConverter_SetObjectToken(This,pToken) (This)->lpVtbl->SetObjectToken(This,pToken)
6353#define ISpPhoneConverter_GetObjectToken(This,ppToken) (This)->lpVtbl->GetObjectToken(This,ppToken)
6354/*** ISpPhoneConverter methods ***/
6355#define ISpPhoneConverter_PhoneToId(This,pszPhone,pId) (This)->lpVtbl->PhoneToId(This,pszPhone,pId)
6356#define ISpPhoneConverter_IdToPhone(This,pId,pszPhone) (This)->lpVtbl->IdToPhone(This,pId,pszPhone)
6357#else
6358/*** IUnknown methods ***/
6359static inline HRESULT ISpPhoneConverter_QueryInterface(ISpPhoneConverter* This,REFIID riid,void **ppvObject) {
6360 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6361}
6362static inline ULONG ISpPhoneConverter_AddRef(ISpPhoneConverter* This) {
6363 return This->lpVtbl->AddRef(This);
6364}
6365static inline ULONG ISpPhoneConverter_Release(ISpPhoneConverter* This) {
6366 return This->lpVtbl->Release(This);
6367}
6368/*** ISpObjectWithToken methods ***/
6369static inline HRESULT ISpPhoneConverter_SetObjectToken(ISpPhoneConverter* This,ISpObjectToken *pToken) {
6370 return This->lpVtbl->SetObjectToken(This,pToken);
6371}
6372static inline HRESULT ISpPhoneConverter_GetObjectToken(ISpPhoneConverter* This,ISpObjectToken **ppToken) {
6373 return This->lpVtbl->GetObjectToken(This,ppToken);
6374}
6375/*** ISpPhoneConverter methods ***/
6376static inline HRESULT ISpPhoneConverter_PhoneToId(ISpPhoneConverter* This,LPCWSTR pszPhone,SPPHONEID *pId) {
6377 return This->lpVtbl->PhoneToId(This,pszPhone,pId);
6378}
6379static inline HRESULT ISpPhoneConverter_IdToPhone(ISpPhoneConverter* This,PCSPPHONEID pId,WCHAR *pszPhone) {
6380 return This->lpVtbl->IdToPhone(This,pId,pszPhone);
6381}
6382#endif
6383#endif
6384
6385#endif
6386
6387
6388#endif /* __ISpPhoneConverter_INTERFACE_DEFINED__ */
6389
6390/*****************************************************************************
6391 * ISpPhoneticAlphabetConverter interface
6392 */
6393#ifndef __ISpPhoneticAlphabetConverter_INTERFACE_DEFINED__
6394#define __ISpPhoneticAlphabetConverter_INTERFACE_DEFINED__
6395
6396DEFINE_GUID(IID_ISpPhoneticAlphabetConverter, 0x133adcd4, 0x19b4, 0x4020, 0x9f,0xdc, 0x84,0x2e,0x78,0x25,0x3b,0x17);
6397#if defined(__cplusplus) && !defined(CINTERFACE)
6398MIDL_INTERFACE("133adcd4-19b4-4020-9fdc-842e78253b17")
6399ISpPhoneticAlphabetConverter : public IUnknown
6400{
6401 virtual HRESULT STDMETHODCALLTYPE GetLangId(
6402 WORD *pLangID) = 0;
6403
6404 virtual HRESULT STDMETHODCALLTYPE SetLangId(
6405 WORD LangID) = 0;
6406
6407 virtual HRESULT STDMETHODCALLTYPE SAPI2UPS(
6408 const SPPHONEID *pszSAPIId,
6409 SPPHONEID *pszUPSId,
6410 DWORD cMaxLength) = 0;
6411
6412 virtual HRESULT STDMETHODCALLTYPE UPS2SAPI(
6413 const SPPHONEID *pszUPSId,
6414 SPPHONEID *pszSAPIId,
6415 DWORD cMaxLength) = 0;
6416
6417 virtual HRESULT STDMETHODCALLTYPE GetMaxConvertLength(
6418 DWORD cSrcLength,
6419 WINBOOL bSAPI2UPS,
6420 DWORD *pcMaxDestLength) = 0;
6421
6422};
6423#ifdef __CRT_UUID_DECL
6424__CRT_UUID_DECL(ISpPhoneticAlphabetConverter, 0x133adcd4, 0x19b4, 0x4020, 0x9f,0xdc, 0x84,0x2e,0x78,0x25,0x3b,0x17)
6425#endif
6426#else
6427typedef struct ISpPhoneticAlphabetConverterVtbl {
6428 BEGIN_INTERFACE
6429
6430 /*** IUnknown methods ***/
6431 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6432 ISpPhoneticAlphabetConverter *This,
6433 REFIID riid,
6434 void **ppvObject);
6435
6436 ULONG (STDMETHODCALLTYPE *AddRef)(
6437 ISpPhoneticAlphabetConverter *This);
6438
6439 ULONG (STDMETHODCALLTYPE *Release)(
6440 ISpPhoneticAlphabetConverter *This);
6441
6442 /*** ISpPhoneticAlphabetConverter methods ***/
6443 HRESULT (STDMETHODCALLTYPE *GetLangId)(
6444 ISpPhoneticAlphabetConverter *This,
6445 WORD *pLangID);
6446
6447 HRESULT (STDMETHODCALLTYPE *SetLangId)(
6448 ISpPhoneticAlphabetConverter *This,
6449 WORD LangID);
6450
6451 HRESULT (STDMETHODCALLTYPE *SAPI2UPS)(
6452 ISpPhoneticAlphabetConverter *This,
6453 const SPPHONEID *pszSAPIId,
6454 SPPHONEID *pszUPSId,
6455 DWORD cMaxLength);
6456
6457 HRESULT (STDMETHODCALLTYPE *UPS2SAPI)(
6458 ISpPhoneticAlphabetConverter *This,
6459 const SPPHONEID *pszUPSId,
6460 SPPHONEID *pszSAPIId,
6461 DWORD cMaxLength);
6462
6463 HRESULT (STDMETHODCALLTYPE *GetMaxConvertLength)(
6464 ISpPhoneticAlphabetConverter *This,
6465 DWORD cSrcLength,
6466 WINBOOL bSAPI2UPS,
6467 DWORD *pcMaxDestLength);
6468
6469 END_INTERFACE
6470} ISpPhoneticAlphabetConverterVtbl;
6471
6472interface ISpPhoneticAlphabetConverter {
6473 CONST_VTBL ISpPhoneticAlphabetConverterVtbl* lpVtbl;
6474};
6475
6476#ifdef COBJMACROS
6477#ifndef WIDL_C_INLINE_WRAPPERS
6478/*** IUnknown methods ***/
6479#define ISpPhoneticAlphabetConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6480#define ISpPhoneticAlphabetConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
6481#define ISpPhoneticAlphabetConverter_Release(This) (This)->lpVtbl->Release(This)
6482/*** ISpPhoneticAlphabetConverter methods ***/
6483#define ISpPhoneticAlphabetConverter_GetLangId(This,pLangID) (This)->lpVtbl->GetLangId(This,pLangID)
6484#define ISpPhoneticAlphabetConverter_SetLangId(This,LangID) (This)->lpVtbl->SetLangId(This,LangID)
6485#define ISpPhoneticAlphabetConverter_SAPI2UPS(This,pszSAPIId,pszUPSId,cMaxLength) (This)->lpVtbl->SAPI2UPS(This,pszSAPIId,pszUPSId,cMaxLength)
6486#define ISpPhoneticAlphabetConverter_UPS2SAPI(This,pszUPSId,pszSAPIId,cMaxLength) (This)->lpVtbl->UPS2SAPI(This,pszUPSId,pszSAPIId,cMaxLength)
6487#define ISpPhoneticAlphabetConverter_GetMaxConvertLength(This,cSrcLength,bSAPI2UPS,pcMaxDestLength) (This)->lpVtbl->GetMaxConvertLength(This,cSrcLength,bSAPI2UPS,pcMaxDestLength)
6488#else
6489/*** IUnknown methods ***/
6490static inline HRESULT ISpPhoneticAlphabetConverter_QueryInterface(ISpPhoneticAlphabetConverter* This,REFIID riid,void **ppvObject) {
6491 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6492}
6493static inline ULONG ISpPhoneticAlphabetConverter_AddRef(ISpPhoneticAlphabetConverter* This) {
6494 return This->lpVtbl->AddRef(This);
6495}
6496static inline ULONG ISpPhoneticAlphabetConverter_Release(ISpPhoneticAlphabetConverter* This) {
6497 return This->lpVtbl->Release(This);
6498}
6499/*** ISpPhoneticAlphabetConverter methods ***/
6500static inline HRESULT ISpPhoneticAlphabetConverter_GetLangId(ISpPhoneticAlphabetConverter* This,WORD *pLangID) {
6501 return This->lpVtbl->GetLangId(This,pLangID);
6502}
6503static inline HRESULT ISpPhoneticAlphabetConverter_SetLangId(ISpPhoneticAlphabetConverter* This,WORD LangID) {
6504 return This->lpVtbl->SetLangId(This,LangID);
6505}
6506static inline HRESULT ISpPhoneticAlphabetConverter_SAPI2UPS(ISpPhoneticAlphabetConverter* This,const SPPHONEID *pszSAPIId,SPPHONEID *pszUPSId,DWORD cMaxLength) {
6507 return This->lpVtbl->SAPI2UPS(This,pszSAPIId,pszUPSId,cMaxLength);
6508}
6509static inline HRESULT ISpPhoneticAlphabetConverter_UPS2SAPI(ISpPhoneticAlphabetConverter* This,const SPPHONEID *pszUPSId,SPPHONEID *pszSAPIId,DWORD cMaxLength) {
6510 return This->lpVtbl->UPS2SAPI(This,pszUPSId,pszSAPIId,cMaxLength);
6511}
6512static inline HRESULT ISpPhoneticAlphabetConverter_GetMaxConvertLength(ISpPhoneticAlphabetConverter* This,DWORD cSrcLength,WINBOOL bSAPI2UPS,DWORD *pcMaxDestLength) {
6513 return This->lpVtbl->GetMaxConvertLength(This,cSrcLength,bSAPI2UPS,pcMaxDestLength);
6514}
6515#endif
6516#endif
6517
6518#endif
6519
6520
6521#endif /* __ISpPhoneticAlphabetConverter_INTERFACE_DEFINED__ */
6522
6523/*****************************************************************************
6524 * ISpPhoneticAlphabetSelection interface
6525 */
6526#ifndef __ISpPhoneticAlphabetSelection_INTERFACE_DEFINED__
6527#define __ISpPhoneticAlphabetSelection_INTERFACE_DEFINED__
6528
6529DEFINE_GUID(IID_ISpPhoneticAlphabetSelection, 0xb2745efd, 0x42ce, 0x48ca, 0x81,0xf1, 0xa9,0x6e,0x02,0x53,0x8a,0x90);
6530#if defined(__cplusplus) && !defined(CINTERFACE)
6531MIDL_INTERFACE("b2745efd-42ce-48ca-81f1-a96e02538a90")
6532ISpPhoneticAlphabetSelection : public IUnknown
6533{
6534 virtual HRESULT STDMETHODCALLTYPE IsAlphabetUPS(
6535 WINBOOL *pfIsUPS) = 0;
6536
6537 virtual HRESULT STDMETHODCALLTYPE SetAlphabetToUPS(
6538 WINBOOL fForceUPS) = 0;
6539
6540};
6541#ifdef __CRT_UUID_DECL
6542__CRT_UUID_DECL(ISpPhoneticAlphabetSelection, 0xb2745efd, 0x42ce, 0x48ca, 0x81,0xf1, 0xa9,0x6e,0x02,0x53,0x8a,0x90)
6543#endif
6544#else
6545typedef struct ISpPhoneticAlphabetSelectionVtbl {
6546 BEGIN_INTERFACE
6547
6548 /*** IUnknown methods ***/
6549 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6550 ISpPhoneticAlphabetSelection *This,
6551 REFIID riid,
6552 void **ppvObject);
6553
6554 ULONG (STDMETHODCALLTYPE *AddRef)(
6555 ISpPhoneticAlphabetSelection *This);
6556
6557 ULONG (STDMETHODCALLTYPE *Release)(
6558 ISpPhoneticAlphabetSelection *This);
6559
6560 /*** ISpPhoneticAlphabetSelection methods ***/
6561 HRESULT (STDMETHODCALLTYPE *IsAlphabetUPS)(
6562 ISpPhoneticAlphabetSelection *This,
6563 WINBOOL *pfIsUPS);
6564
6565 HRESULT (STDMETHODCALLTYPE *SetAlphabetToUPS)(
6566 ISpPhoneticAlphabetSelection *This,
6567 WINBOOL fForceUPS);
6568
6569 END_INTERFACE
6570} ISpPhoneticAlphabetSelectionVtbl;
6571
6572interface ISpPhoneticAlphabetSelection {
6573 CONST_VTBL ISpPhoneticAlphabetSelectionVtbl* lpVtbl;
6574};
6575
6576#ifdef COBJMACROS
6577#ifndef WIDL_C_INLINE_WRAPPERS
6578/*** IUnknown methods ***/
6579#define ISpPhoneticAlphabetSelection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6580#define ISpPhoneticAlphabetSelection_AddRef(This) (This)->lpVtbl->AddRef(This)
6581#define ISpPhoneticAlphabetSelection_Release(This) (This)->lpVtbl->Release(This)
6582/*** ISpPhoneticAlphabetSelection methods ***/
6583#define ISpPhoneticAlphabetSelection_IsAlphabetUPS(This,pfIsUPS) (This)->lpVtbl->IsAlphabetUPS(This,pfIsUPS)
6584#define ISpPhoneticAlphabetSelection_SetAlphabetToUPS(This,fForceUPS) (This)->lpVtbl->SetAlphabetToUPS(This,fForceUPS)
6585#else
6586/*** IUnknown methods ***/
6587static inline HRESULT ISpPhoneticAlphabetSelection_QueryInterface(ISpPhoneticAlphabetSelection* This,REFIID riid,void **ppvObject) {
6588 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6589}
6590static inline ULONG ISpPhoneticAlphabetSelection_AddRef(ISpPhoneticAlphabetSelection* This) {
6591 return This->lpVtbl->AddRef(This);
6592}
6593static inline ULONG ISpPhoneticAlphabetSelection_Release(ISpPhoneticAlphabetSelection* This) {
6594 return This->lpVtbl->Release(This);
6595}
6596/*** ISpPhoneticAlphabetSelection methods ***/
6597static inline HRESULT ISpPhoneticAlphabetSelection_IsAlphabetUPS(ISpPhoneticAlphabetSelection* This,WINBOOL *pfIsUPS) {
6598 return This->lpVtbl->IsAlphabetUPS(This,pfIsUPS);
6599}
6600static inline HRESULT ISpPhoneticAlphabetSelection_SetAlphabetToUPS(ISpPhoneticAlphabetSelection* This,WINBOOL fForceUPS) {
6601 return This->lpVtbl->SetAlphabetToUPS(This,fForceUPS);
6602}
6603#endif
6604#endif
6605
6606#endif
6607
6608
6609#endif /* __ISpPhoneticAlphabetSelection_INTERFACE_DEFINED__ */
6610
6611typedef struct SPVPITCH {
6612 LONG MiddleAdj;
6613 LONG RangeAdj;
6614} SPVPITCH;
6615typedef struct SPVCONTEXT {
6616 LPCWSTR pCategory;
6617 LPCWSTR pBefore;
6618 LPCWSTR pAfter;
6619} SPVCONTEXT;
6620typedef struct SPVSTATE {
6621 SPVACTIONS eAction;
6622 WORD LangID;
6623 WORD wReserved;
6624 LONG EmphAdj;
6625 LONG RateAdj;
6626 ULONG Volume;
6627 SPVPITCH PitchAdj;
6628 ULONG SilenceMSecs;
6629 SPPHONEID *pPhoneIds;
6630 SPPARTOFSPEECH ePartOfSpeech;
6631 SPVCONTEXT Context;
6632} SPVSTATE;
6633typedef struct SPVOICESTATUS {
6634 ULONG ulCurrentStream;
6635 ULONG ulLastStreamQueued;
6636 HRESULT hrLastResult;
6637 DWORD dwRunningState;
6638 ULONG ulInputWordPos;
6639 ULONG ulInputWordLen;
6640 ULONG ulInputSentPos;
6641 ULONG ulInputSentLen;
6642 LONG lBookmarkId;
6643 SPPHONEID PhonemeId;
6644 SPVISEMES VisemeId;
6645 DWORD dwReserved1;
6646 DWORD dwReserved2;
6647} SPVOICESTATUS;
6648typedef enum SPEAKFLAGS {
6649 SPF_DEFAULT = 0,
6650 SPF_ASYNC = 1,
6651 SPF_PURGEBEFORESPEAK = 2,
6652 SPF_IS_FILENAME = 4,
6653 SPF_IS_XML = 8,
6654 SPF_IS_NOT_XML = 0x10,
6655 SPF_PERSIST_XML = 0x20,
6656 SPF_NLP_SPEAK_PUNC = 0x40,
6657 SPF_PARSE_SAPI = 0x80,
6658 SPF_PARSE_SSML = 0x100,
6659 SPF_PARSE_AUTODETECT = 0,
6660 SPF_NLP_MASK = SPF_NLP_SPEAK_PUNC,
6661 SPF_PARSE_MASK = SPF_PARSE_SAPI | SPF_PARSE_SSML,
6662 SPF_VOICE_MASK = ((((((SPF_ASYNC | SPF_PURGEBEFORESPEAK) | SPF_IS_FILENAME) | SPF_IS_XML) | SPF_IS_NOT_XML) | SPF_NLP_MASK) | SPF_PERSIST_XML) | SPF_PARSE_MASK,
6663 SPF_UNUSED_FLAGS = ~SPF_VOICE_MASK
6664} SPEAKFLAGS;
6665/*****************************************************************************
6666 * ISpVoice interface
6667 */
6668#ifndef __ISpVoice_INTERFACE_DEFINED__
6669#define __ISpVoice_INTERFACE_DEFINED__
6670
6671DEFINE_GUID(IID_ISpVoice, 0x6c44df74, 0x72b9, 0x4992, 0xa1,0xec, 0xef,0x99,0x6e,0x04,0x22,0xd4);
6672#if defined(__cplusplus) && !defined(CINTERFACE)
6673MIDL_INTERFACE("6c44df74-72b9-4992-a1ec-ef996e0422d4")
6674ISpVoice : public ISpEventSource
6675{
6676 virtual HRESULT STDMETHODCALLTYPE SetOutput(
6677 IUnknown *pUnkOutput,
6678 WINBOOL fAllowFormatChanges) = 0;
6679
6680 virtual HRESULT STDMETHODCALLTYPE GetOutputObjectToken(
6681 ISpObjectToken **ppObjectToken) = 0;
6682
6683 virtual HRESULT STDMETHODCALLTYPE GetOutputStream(
6684 ISpStreamFormat **ppStream) = 0;
6685
6686 virtual HRESULT STDMETHODCALLTYPE Pause(
6687 ) = 0;
6688
6689 virtual HRESULT STDMETHODCALLTYPE Resume(
6690 ) = 0;
6691
6692 virtual HRESULT STDMETHODCALLTYPE SetVoice(
6693 ISpObjectToken *pToken) = 0;
6694
6695 virtual HRESULT STDMETHODCALLTYPE GetVoice(
6696 ISpObjectToken **ppToken) = 0;
6697
6698 virtual HRESULT STDMETHODCALLTYPE Speak(
6699 LPCWSTR pwcs,
6700 DWORD dwFlags,
6701 ULONG *pulStreamNumber) = 0;
6702
6703 virtual HRESULT STDMETHODCALLTYPE SpeakStream(
6704 IStream *pStream,
6705 DWORD dwFlags,
6706 ULONG *pulStreamNumber) = 0;
6707
6708 virtual HRESULT STDMETHODCALLTYPE GetStatus(
6709 SPVOICESTATUS *pStatus,
6710 LPWSTR *ppszLastBookmark) = 0;
6711
6712 virtual HRESULT STDMETHODCALLTYPE Skip(
6713 LPCWSTR pItemType,
6714 LONG lNumItems,
6715 ULONG *pulNumSkipped) = 0;
6716
6717 virtual HRESULT STDMETHODCALLTYPE SetPriority(
6718 SPVPRIORITY ePriority) = 0;
6719
6720 virtual HRESULT STDMETHODCALLTYPE GetPriority(
6721 SPVPRIORITY *pePriority) = 0;
6722
6723 virtual HRESULT STDMETHODCALLTYPE SetAlertBoundary(
6724 SPEVENTENUM eBoundary) = 0;
6725
6726 virtual HRESULT STDMETHODCALLTYPE GetAlertBoundary(
6727 SPEVENTENUM *peBoundary) = 0;
6728
6729 virtual HRESULT STDMETHODCALLTYPE SetRate(
6730 LONG RateAdjust) = 0;
6731
6732 virtual HRESULT STDMETHODCALLTYPE GetRate(
6733 LONG *pRateAdjust) = 0;
6734
6735 virtual HRESULT STDMETHODCALLTYPE SetVolume(
6736 USHORT usVolume) = 0;
6737
6738 virtual HRESULT STDMETHODCALLTYPE GetVolume(
6739 USHORT *pusVolume) = 0;
6740
6741 virtual HRESULT STDMETHODCALLTYPE WaitUntilDone(
6742 ULONG msTimeout) = 0;
6743
6744 virtual HRESULT STDMETHODCALLTYPE SetSyncSpeakTimeout(
6745 ULONG msTimeout) = 0;
6746
6747 virtual HRESULT STDMETHODCALLTYPE GetSyncSpeakTimeout(
6748 ULONG *pmsTimeout) = 0;
6749
6750 virtual HANDLE STDMETHODCALLTYPE SpeakCompleteEvent(
6751 ) = 0;
6752
6753 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
6754 LPCWSTR pszTypeOfUI,
6755 void *pvExtraData,
6756 ULONG cbExtraData,
6757 WINBOOL *pfSupported) = 0;
6758
6759 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
6760 HWND hwndParent,
6761 LPCWSTR pszTitle,
6762 LPCWSTR pszTypeOfUI,
6763 void *pvExtraData,
6764 ULONG cbExtraData) = 0;
6765
6766};
6767#ifdef __CRT_UUID_DECL
6768__CRT_UUID_DECL(ISpVoice, 0x6c44df74, 0x72b9, 0x4992, 0xa1,0xec, 0xef,0x99,0x6e,0x04,0x22,0xd4)
6769#endif
6770#else
6771typedef struct ISpVoiceVtbl {
6772 BEGIN_INTERFACE
6773
6774 /*** IUnknown methods ***/
6775 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6776 ISpVoice *This,
6777 REFIID riid,
6778 void **ppvObject);
6779
6780 ULONG (STDMETHODCALLTYPE *AddRef)(
6781 ISpVoice *This);
6782
6783 ULONG (STDMETHODCALLTYPE *Release)(
6784 ISpVoice *This);
6785
6786 /*** ISpNotifySource methods ***/
6787 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
6788 ISpVoice *This,
6789 ISpNotifySink *pNotifySink);
6790
6791 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
6792 ISpVoice *This,
6793 HWND hWnd,
6794 UINT Msg,
6795 WPARAM wParam,
6796 LPARAM lParam);
6797
6798 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
6799 ISpVoice *This,
6800 SPNOTIFYCALLBACK *pfnCallback,
6801 WPARAM wParam,
6802 LPARAM lParam);
6803
6804 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
6805 ISpVoice *This,
6806 ISpNotifyCallback *pSpCallback,
6807 WPARAM wParam,
6808 LPARAM lParam);
6809
6810 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
6811 ISpVoice *This);
6812
6813 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
6814 ISpVoice *This,
6815 DWORD dwMilliseconds);
6816
6817 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
6818 ISpVoice *This);
6819
6820 /*** ISpEventSource methods ***/
6821 HRESULT (STDMETHODCALLTYPE *SetInterest)(
6822 ISpVoice *This,
6823 ULONGLONG ullEventInterest,
6824 ULONGLONG ullQueuedInterest);
6825
6826 HRESULT (STDMETHODCALLTYPE *GetEvents)(
6827 ISpVoice *This,
6828 ULONG ulCount,
6829 SPEVENT *pEventArray,
6830 ULONG *pulFetched);
6831
6832 HRESULT (STDMETHODCALLTYPE *GetInfo)(
6833 ISpVoice *This,
6834 SPEVENTSOURCEINFO *pInfo);
6835
6836 /*** ISpVoice methods ***/
6837 HRESULT (STDMETHODCALLTYPE *SetOutput)(
6838 ISpVoice *This,
6839 IUnknown *pUnkOutput,
6840 WINBOOL fAllowFormatChanges);
6841
6842 HRESULT (STDMETHODCALLTYPE *GetOutputObjectToken)(
6843 ISpVoice *This,
6844 ISpObjectToken **ppObjectToken);
6845
6846 HRESULT (STDMETHODCALLTYPE *GetOutputStream)(
6847 ISpVoice *This,
6848 ISpStreamFormat **ppStream);
6849
6850 HRESULT (STDMETHODCALLTYPE *Pause)(
6851 ISpVoice *This);
6852
6853 HRESULT (STDMETHODCALLTYPE *Resume)(
6854 ISpVoice *This);
6855
6856 HRESULT (STDMETHODCALLTYPE *SetVoice)(
6857 ISpVoice *This,
6858 ISpObjectToken *pToken);
6859
6860 HRESULT (STDMETHODCALLTYPE *GetVoice)(
6861 ISpVoice *This,
6862 ISpObjectToken **ppToken);
6863
6864 HRESULT (STDMETHODCALLTYPE *Speak)(
6865 ISpVoice *This,
6866 LPCWSTR pwcs,
6867 DWORD dwFlags,
6868 ULONG *pulStreamNumber);
6869
6870 HRESULT (STDMETHODCALLTYPE *SpeakStream)(
6871 ISpVoice *This,
6872 IStream *pStream,
6873 DWORD dwFlags,
6874 ULONG *pulStreamNumber);
6875
6876 HRESULT (STDMETHODCALLTYPE *GetStatus)(
6877 ISpVoice *This,
6878 SPVOICESTATUS *pStatus,
6879 LPWSTR *ppszLastBookmark);
6880
6881 HRESULT (STDMETHODCALLTYPE *Skip)(
6882 ISpVoice *This,
6883 LPCWSTR pItemType,
6884 LONG lNumItems,
6885 ULONG *pulNumSkipped);
6886
6887 HRESULT (STDMETHODCALLTYPE *SetPriority)(
6888 ISpVoice *This,
6889 SPVPRIORITY ePriority);
6890
6891 HRESULT (STDMETHODCALLTYPE *GetPriority)(
6892 ISpVoice *This,
6893 SPVPRIORITY *pePriority);
6894
6895 HRESULT (STDMETHODCALLTYPE *SetAlertBoundary)(
6896 ISpVoice *This,
6897 SPEVENTENUM eBoundary);
6898
6899 HRESULT (STDMETHODCALLTYPE *GetAlertBoundary)(
6900 ISpVoice *This,
6901 SPEVENTENUM *peBoundary);
6902
6903 HRESULT (STDMETHODCALLTYPE *SetRate)(
6904 ISpVoice *This,
6905 LONG RateAdjust);
6906
6907 HRESULT (STDMETHODCALLTYPE *GetRate)(
6908 ISpVoice *This,
6909 LONG *pRateAdjust);
6910
6911 HRESULT (STDMETHODCALLTYPE *SetVolume)(
6912 ISpVoice *This,
6913 USHORT usVolume);
6914
6915 HRESULT (STDMETHODCALLTYPE *GetVolume)(
6916 ISpVoice *This,
6917 USHORT *pusVolume);
6918
6919 HRESULT (STDMETHODCALLTYPE *WaitUntilDone)(
6920 ISpVoice *This,
6921 ULONG msTimeout);
6922
6923 HRESULT (STDMETHODCALLTYPE *SetSyncSpeakTimeout)(
6924 ISpVoice *This,
6925 ULONG msTimeout);
6926
6927 HRESULT (STDMETHODCALLTYPE *GetSyncSpeakTimeout)(
6928 ISpVoice *This,
6929 ULONG *pmsTimeout);
6930
6931 HANDLE (STDMETHODCALLTYPE *SpeakCompleteEvent)(
6932 ISpVoice *This);
6933
6934 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
6935 ISpVoice *This,
6936 LPCWSTR pszTypeOfUI,
6937 void *pvExtraData,
6938 ULONG cbExtraData,
6939 WINBOOL *pfSupported);
6940
6941 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
6942 ISpVoice *This,
6943 HWND hwndParent,
6944 LPCWSTR pszTitle,
6945 LPCWSTR pszTypeOfUI,
6946 void *pvExtraData,
6947 ULONG cbExtraData);
6948
6949 END_INTERFACE
6950} ISpVoiceVtbl;
6951
6952interface ISpVoice {
6953 CONST_VTBL ISpVoiceVtbl* lpVtbl;
6954};
6955
6956#ifdef COBJMACROS
6957#ifndef WIDL_C_INLINE_WRAPPERS
6958/*** IUnknown methods ***/
6959#define ISpVoice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6960#define ISpVoice_AddRef(This) (This)->lpVtbl->AddRef(This)
6961#define ISpVoice_Release(This) (This)->lpVtbl->Release(This)
6962/*** ISpNotifySource methods ***/
6963#define ISpVoice_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
6964#define ISpVoice_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
6965#define ISpVoice_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
6966#define ISpVoice_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
6967#define ISpVoice_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
6968#define ISpVoice_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
6969#define ISpVoice_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
6970/*** ISpEventSource methods ***/
6971#define ISpVoice_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
6972#define ISpVoice_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
6973#define ISpVoice_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
6974/*** ISpVoice methods ***/
6975#define ISpVoice_SetOutput(This,pUnkOutput,fAllowFormatChanges) (This)->lpVtbl->SetOutput(This,pUnkOutput,fAllowFormatChanges)
6976#define ISpVoice_GetOutputObjectToken(This,ppObjectToken) (This)->lpVtbl->GetOutputObjectToken(This,ppObjectToken)
6977#define ISpVoice_GetOutputStream(This,ppStream) (This)->lpVtbl->GetOutputStream(This,ppStream)
6978#define ISpVoice_Pause(This) (This)->lpVtbl->Pause(This)
6979#define ISpVoice_Resume(This) (This)->lpVtbl->Resume(This)
6980#define ISpVoice_SetVoice(This,pToken) (This)->lpVtbl->SetVoice(This,pToken)
6981#define ISpVoice_GetVoice(This,ppToken) (This)->lpVtbl->GetVoice(This,ppToken)
6982#define ISpVoice_Speak(This,pwcs,dwFlags,pulStreamNumber) (This)->lpVtbl->Speak(This,pwcs,dwFlags,pulStreamNumber)
6983#define ISpVoice_SpeakStream(This,pStream,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakStream(This,pStream,dwFlags,pulStreamNumber)
6984#define ISpVoice_GetStatus(This,pStatus,ppszLastBookmark) (This)->lpVtbl->GetStatus(This,pStatus,ppszLastBookmark)
6985#define ISpVoice_Skip(This,pItemType,lNumItems,pulNumSkipped) (This)->lpVtbl->Skip(This,pItemType,lNumItems,pulNumSkipped)
6986#define ISpVoice_SetPriority(This,ePriority) (This)->lpVtbl->SetPriority(This,ePriority)
6987#define ISpVoice_GetPriority(This,pePriority) (This)->lpVtbl->GetPriority(This,pePriority)
6988#define ISpVoice_SetAlertBoundary(This,eBoundary) (This)->lpVtbl->SetAlertBoundary(This,eBoundary)
6989#define ISpVoice_GetAlertBoundary(This,peBoundary) (This)->lpVtbl->GetAlertBoundary(This,peBoundary)
6990#define ISpVoice_SetRate(This,RateAdjust) (This)->lpVtbl->SetRate(This,RateAdjust)
6991#define ISpVoice_GetRate(This,pRateAdjust) (This)->lpVtbl->GetRate(This,pRateAdjust)
6992#define ISpVoice_SetVolume(This,usVolume) (This)->lpVtbl->SetVolume(This,usVolume)
6993#define ISpVoice_GetVolume(This,pusVolume) (This)->lpVtbl->GetVolume(This,pusVolume)
6994#define ISpVoice_WaitUntilDone(This,msTimeout) (This)->lpVtbl->WaitUntilDone(This,msTimeout)
6995#define ISpVoice_SetSyncSpeakTimeout(This,msTimeout) (This)->lpVtbl->SetSyncSpeakTimeout(This,msTimeout)
6996#define ISpVoice_GetSyncSpeakTimeout(This,pmsTimeout) (This)->lpVtbl->GetSyncSpeakTimeout(This,pmsTimeout)
6997#define ISpVoice_SpeakCompleteEvent(This) (This)->lpVtbl->SpeakCompleteEvent(This)
6998#define ISpVoice_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported)
6999#define ISpVoice_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData)
7000#else
7001/*** IUnknown methods ***/
7002static inline HRESULT ISpVoice_QueryInterface(ISpVoice* This,REFIID riid,void **ppvObject) {
7003 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7004}
7005static inline ULONG ISpVoice_AddRef(ISpVoice* This) {
7006 return This->lpVtbl->AddRef(This);
7007}
7008static inline ULONG ISpVoice_Release(ISpVoice* This) {
7009 return This->lpVtbl->Release(This);
7010}
7011/*** ISpNotifySource methods ***/
7012static inline HRESULT ISpVoice_SetNotifySink(ISpVoice* This,ISpNotifySink *pNotifySink) {
7013 return This->lpVtbl->SetNotifySink(This,pNotifySink);
7014}
7015static inline HRESULT ISpVoice_SetNotifyWindowMessage(ISpVoice* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
7016 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
7017}
7018static inline HRESULT ISpVoice_SetNotifyCallbackFunction(ISpVoice* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
7019 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
7020}
7021static inline HRESULT ISpVoice_SetNotifyCallbackInterface(ISpVoice* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
7022 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
7023}
7024static inline HRESULT ISpVoice_SetNotifyWin32Event(ISpVoice* This) {
7025 return This->lpVtbl->SetNotifyWin32Event(This);
7026}
7027static inline HRESULT ISpVoice_WaitForNotifyEvent(ISpVoice* This,DWORD dwMilliseconds) {
7028 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
7029}
7030static inline HANDLE ISpVoice_GetNotifyEventHandle(ISpVoice* This) {
7031 return This->lpVtbl->GetNotifyEventHandle(This);
7032}
7033/*** ISpEventSource methods ***/
7034static inline HRESULT ISpVoice_SetInterest(ISpVoice* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
7035 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
7036}
7037static inline HRESULT ISpVoice_GetEvents(ISpVoice* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
7038 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
7039}
7040static inline HRESULT ISpVoice_GetInfo(ISpVoice* This,SPEVENTSOURCEINFO *pInfo) {
7041 return This->lpVtbl->GetInfo(This,pInfo);
7042}
7043/*** ISpVoice methods ***/
7044static inline HRESULT ISpVoice_SetOutput(ISpVoice* This,IUnknown *pUnkOutput,WINBOOL fAllowFormatChanges) {
7045 return This->lpVtbl->SetOutput(This,pUnkOutput,fAllowFormatChanges);
7046}
7047static inline HRESULT ISpVoice_GetOutputObjectToken(ISpVoice* This,ISpObjectToken **ppObjectToken) {
7048 return This->lpVtbl->GetOutputObjectToken(This,ppObjectToken);
7049}
7050static inline HRESULT ISpVoice_GetOutputStream(ISpVoice* This,ISpStreamFormat **ppStream) {
7051 return This->lpVtbl->GetOutputStream(This,ppStream);
7052}
7053static inline HRESULT ISpVoice_Pause(ISpVoice* This) {
7054 return This->lpVtbl->Pause(This);
7055}
7056static inline HRESULT ISpVoice_Resume(ISpVoice* This) {
7057 return This->lpVtbl->Resume(This);
7058}
7059static inline HRESULT ISpVoice_SetVoice(ISpVoice* This,ISpObjectToken *pToken) {
7060 return This->lpVtbl->SetVoice(This,pToken);
7061}
7062static inline HRESULT ISpVoice_GetVoice(ISpVoice* This,ISpObjectToken **ppToken) {
7063 return This->lpVtbl->GetVoice(This,ppToken);
7064}
7065static inline HRESULT ISpVoice_Speak(ISpVoice* This,LPCWSTR pwcs,DWORD dwFlags,ULONG *pulStreamNumber) {
7066 return This->lpVtbl->Speak(This,pwcs,dwFlags,pulStreamNumber);
7067}
7068static inline HRESULT ISpVoice_SpeakStream(ISpVoice* This,IStream *pStream,DWORD dwFlags,ULONG *pulStreamNumber) {
7069 return This->lpVtbl->SpeakStream(This,pStream,dwFlags,pulStreamNumber);
7070}
7071static inline HRESULT ISpVoice_GetStatus(ISpVoice* This,SPVOICESTATUS *pStatus,LPWSTR *ppszLastBookmark) {
7072 return This->lpVtbl->GetStatus(This,pStatus,ppszLastBookmark);
7073}
7074static inline HRESULT ISpVoice_Skip(ISpVoice* This,LPCWSTR pItemType,LONG lNumItems,ULONG *pulNumSkipped) {
7075 return This->lpVtbl->Skip(This,pItemType,lNumItems,pulNumSkipped);
7076}
7077static inline HRESULT ISpVoice_SetPriority(ISpVoice* This,SPVPRIORITY ePriority) {
7078 return This->lpVtbl->SetPriority(This,ePriority);
7079}
7080static inline HRESULT ISpVoice_GetPriority(ISpVoice* This,SPVPRIORITY *pePriority) {
7081 return This->lpVtbl->GetPriority(This,pePriority);
7082}
7083static inline HRESULT ISpVoice_SetAlertBoundary(ISpVoice* This,SPEVENTENUM eBoundary) {
7084 return This->lpVtbl->SetAlertBoundary(This,eBoundary);
7085}
7086static inline HRESULT ISpVoice_GetAlertBoundary(ISpVoice* This,SPEVENTENUM *peBoundary) {
7087 return This->lpVtbl->GetAlertBoundary(This,peBoundary);
7088}
7089static inline HRESULT ISpVoice_SetRate(ISpVoice* This,LONG RateAdjust) {
7090 return This->lpVtbl->SetRate(This,RateAdjust);
7091}
7092static inline HRESULT ISpVoice_GetRate(ISpVoice* This,LONG *pRateAdjust) {
7093 return This->lpVtbl->GetRate(This,pRateAdjust);
7094}
7095static inline HRESULT ISpVoice_SetVolume(ISpVoice* This,USHORT usVolume) {
7096 return This->lpVtbl->SetVolume(This,usVolume);
7097}
7098static inline HRESULT ISpVoice_GetVolume(ISpVoice* This,USHORT *pusVolume) {
7099 return This->lpVtbl->GetVolume(This,pusVolume);
7100}
7101static inline HRESULT ISpVoice_WaitUntilDone(ISpVoice* This,ULONG msTimeout) {
7102 return This->lpVtbl->WaitUntilDone(This,msTimeout);
7103}
7104static inline HRESULT ISpVoice_SetSyncSpeakTimeout(ISpVoice* This,ULONG msTimeout) {
7105 return This->lpVtbl->SetSyncSpeakTimeout(This,msTimeout);
7106}
7107static inline HRESULT ISpVoice_GetSyncSpeakTimeout(ISpVoice* This,ULONG *pmsTimeout) {
7108 return This->lpVtbl->GetSyncSpeakTimeout(This,pmsTimeout);
7109}
7110static inline HANDLE ISpVoice_SpeakCompleteEvent(ISpVoice* This) {
7111 return This->lpVtbl->SpeakCompleteEvent(This);
7112}
7113static inline HRESULT ISpVoice_IsUISupported(ISpVoice* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,WINBOOL *pfSupported) {
7114 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported);
7115}
7116static inline HRESULT ISpVoice_DisplayUI(ISpVoice* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData) {
7117 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData);
7118}
7119#endif
7120#endif
7121
7122#endif
7123
7124
7125#endif /* __ISpVoice_INTERFACE_DEFINED__ */
7126
7127/*****************************************************************************
7128 * ISpPhrase interface
7129 */
7130#ifndef __ISpPhrase_INTERFACE_DEFINED__
7131#define __ISpPhrase_INTERFACE_DEFINED__
7132
7133DEFINE_GUID(IID_ISpPhrase, 0x1a5c0354, 0xb621, 0x4b5a, 0x87,0x91, 0xd3,0x06,0xed,0x37,0x9e,0x53);
7134#if defined(__cplusplus) && !defined(CINTERFACE)
7135MIDL_INTERFACE("1a5c0354-b621-4b5a-8791-d306ed379e53")
7136ISpPhrase : public IUnknown
7137{
7138 virtual HRESULT STDMETHODCALLTYPE GetPhrase(
7139 SPPHRASE **ppCoMemPhrase) = 0;
7140
7141 virtual HRESULT STDMETHODCALLTYPE GetSerializedPhrase(
7142 SPSERIALIZEDPHRASE **ppCoMemPhrase) = 0;
7143
7144 virtual HRESULT STDMETHODCALLTYPE GetText(
7145 ULONG ulStart,
7146 ULONG ulCount,
7147 WINBOOL fUseTextReplacements,
7148 LPWSTR *ppszCoMemText,
7149 BYTE *pbDisplayAttributes) = 0;
7150
7151 virtual HRESULT STDMETHODCALLTYPE Discard(
7152 DWORD dwValueTypes) = 0;
7153
7154};
7155#ifdef __CRT_UUID_DECL
7156__CRT_UUID_DECL(ISpPhrase, 0x1a5c0354, 0xb621, 0x4b5a, 0x87,0x91, 0xd3,0x06,0xed,0x37,0x9e,0x53)
7157#endif
7158#else
7159typedef struct ISpPhraseVtbl {
7160 BEGIN_INTERFACE
7161
7162 /*** IUnknown methods ***/
7163 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7164 ISpPhrase *This,
7165 REFIID riid,
7166 void **ppvObject);
7167
7168 ULONG (STDMETHODCALLTYPE *AddRef)(
7169 ISpPhrase *This);
7170
7171 ULONG (STDMETHODCALLTYPE *Release)(
7172 ISpPhrase *This);
7173
7174 /*** ISpPhrase methods ***/
7175 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7176 ISpPhrase *This,
7177 SPPHRASE **ppCoMemPhrase);
7178
7179 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7180 ISpPhrase *This,
7181 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7182
7183 HRESULT (STDMETHODCALLTYPE *GetText)(
7184 ISpPhrase *This,
7185 ULONG ulStart,
7186 ULONG ulCount,
7187 WINBOOL fUseTextReplacements,
7188 LPWSTR *ppszCoMemText,
7189 BYTE *pbDisplayAttributes);
7190
7191 HRESULT (STDMETHODCALLTYPE *Discard)(
7192 ISpPhrase *This,
7193 DWORD dwValueTypes);
7194
7195 END_INTERFACE
7196} ISpPhraseVtbl;
7197
7198interface ISpPhrase {
7199 CONST_VTBL ISpPhraseVtbl* lpVtbl;
7200};
7201
7202#ifdef COBJMACROS
7203#ifndef WIDL_C_INLINE_WRAPPERS
7204/*** IUnknown methods ***/
7205#define ISpPhrase_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7206#define ISpPhrase_AddRef(This) (This)->lpVtbl->AddRef(This)
7207#define ISpPhrase_Release(This) (This)->lpVtbl->Release(This)
7208/*** ISpPhrase methods ***/
7209#define ISpPhrase_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7210#define ISpPhrase_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7211#define ISpPhrase_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7212#define ISpPhrase_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7213#else
7214/*** IUnknown methods ***/
7215static inline HRESULT ISpPhrase_QueryInterface(ISpPhrase* This,REFIID riid,void **ppvObject) {
7216 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7217}
7218static inline ULONG ISpPhrase_AddRef(ISpPhrase* This) {
7219 return This->lpVtbl->AddRef(This);
7220}
7221static inline ULONG ISpPhrase_Release(ISpPhrase* This) {
7222 return This->lpVtbl->Release(This);
7223}
7224/*** ISpPhrase methods ***/
7225static inline HRESULT ISpPhrase_GetPhrase(ISpPhrase* This,SPPHRASE **ppCoMemPhrase) {
7226 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7227}
7228static inline HRESULT ISpPhrase_GetSerializedPhrase(ISpPhrase* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7229 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7230}
7231static inline HRESULT ISpPhrase_GetText(ISpPhrase* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7232 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7233}
7234static inline HRESULT ISpPhrase_Discard(ISpPhrase* This,DWORD dwValueTypes) {
7235 return This->lpVtbl->Discard(This,dwValueTypes);
7236}
7237#endif
7238#endif
7239
7240#endif
7241
7242
7243#endif /* __ISpPhrase_INTERFACE_DEFINED__ */
7244
7245/*****************************************************************************
7246 * ISpPhraseAlt interface
7247 */
7248#ifndef __ISpPhraseAlt_INTERFACE_DEFINED__
7249#define __ISpPhraseAlt_INTERFACE_DEFINED__
7250
7251DEFINE_GUID(IID_ISpPhraseAlt, 0x8fcebc98, 0x4e49, 0x4067, 0x9c,0x6c, 0xd8,0x6a,0x0e,0x09,0x2e,0x3d);
7252#if defined(__cplusplus) && !defined(CINTERFACE)
7253MIDL_INTERFACE("8fcebc98-4e49-4067-9c6c-d86a0e092e3d")
7254ISpPhraseAlt : public ISpPhrase
7255{
7256 virtual HRESULT STDMETHODCALLTYPE GetAltInfo(
7257 ISpPhrase **ppParent,
7258 ULONG *pulStartElementInParent,
7259 ULONG *pcElementsInParent,
7260 ULONG *pcElementsInAlt) = 0;
7261
7262 virtual HRESULT STDMETHODCALLTYPE Commit(
7263 ) = 0;
7264
7265};
7266#ifdef __CRT_UUID_DECL
7267__CRT_UUID_DECL(ISpPhraseAlt, 0x8fcebc98, 0x4e49, 0x4067, 0x9c,0x6c, 0xd8,0x6a,0x0e,0x09,0x2e,0x3d)
7268#endif
7269#else
7270typedef struct ISpPhraseAltVtbl {
7271 BEGIN_INTERFACE
7272
7273 /*** IUnknown methods ***/
7274 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7275 ISpPhraseAlt *This,
7276 REFIID riid,
7277 void **ppvObject);
7278
7279 ULONG (STDMETHODCALLTYPE *AddRef)(
7280 ISpPhraseAlt *This);
7281
7282 ULONG (STDMETHODCALLTYPE *Release)(
7283 ISpPhraseAlt *This);
7284
7285 /*** ISpPhrase methods ***/
7286 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7287 ISpPhraseAlt *This,
7288 SPPHRASE **ppCoMemPhrase);
7289
7290 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7291 ISpPhraseAlt *This,
7292 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7293
7294 HRESULT (STDMETHODCALLTYPE *GetText)(
7295 ISpPhraseAlt *This,
7296 ULONG ulStart,
7297 ULONG ulCount,
7298 WINBOOL fUseTextReplacements,
7299 LPWSTR *ppszCoMemText,
7300 BYTE *pbDisplayAttributes);
7301
7302 HRESULT (STDMETHODCALLTYPE *Discard)(
7303 ISpPhraseAlt *This,
7304 DWORD dwValueTypes);
7305
7306 /*** ISpPhraseAlt methods ***/
7307 HRESULT (STDMETHODCALLTYPE *GetAltInfo)(
7308 ISpPhraseAlt *This,
7309 ISpPhrase **ppParent,
7310 ULONG *pulStartElementInParent,
7311 ULONG *pcElementsInParent,
7312 ULONG *pcElementsInAlt);
7313
7314 HRESULT (STDMETHODCALLTYPE *Commit)(
7315 ISpPhraseAlt *This);
7316
7317 END_INTERFACE
7318} ISpPhraseAltVtbl;
7319
7320interface ISpPhraseAlt {
7321 CONST_VTBL ISpPhraseAltVtbl* lpVtbl;
7322};
7323
7324#ifdef COBJMACROS
7325#ifndef WIDL_C_INLINE_WRAPPERS
7326/*** IUnknown methods ***/
7327#define ISpPhraseAlt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7328#define ISpPhraseAlt_AddRef(This) (This)->lpVtbl->AddRef(This)
7329#define ISpPhraseAlt_Release(This) (This)->lpVtbl->Release(This)
7330/*** ISpPhrase methods ***/
7331#define ISpPhraseAlt_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7332#define ISpPhraseAlt_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7333#define ISpPhraseAlt_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7334#define ISpPhraseAlt_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7335/*** ISpPhraseAlt methods ***/
7336#define ISpPhraseAlt_GetAltInfo(This,ppParent,pulStartElementInParent,pcElementsInParent,pcElementsInAlt) (This)->lpVtbl->GetAltInfo(This,ppParent,pulStartElementInParent,pcElementsInParent,pcElementsInAlt)
7337#define ISpPhraseAlt_Commit(This) (This)->lpVtbl->Commit(This)
7338#else
7339/*** IUnknown methods ***/
7340static inline HRESULT ISpPhraseAlt_QueryInterface(ISpPhraseAlt* This,REFIID riid,void **ppvObject) {
7341 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7342}
7343static inline ULONG ISpPhraseAlt_AddRef(ISpPhraseAlt* This) {
7344 return This->lpVtbl->AddRef(This);
7345}
7346static inline ULONG ISpPhraseAlt_Release(ISpPhraseAlt* This) {
7347 return This->lpVtbl->Release(This);
7348}
7349/*** ISpPhrase methods ***/
7350static inline HRESULT ISpPhraseAlt_GetPhrase(ISpPhraseAlt* This,SPPHRASE **ppCoMemPhrase) {
7351 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7352}
7353static inline HRESULT ISpPhraseAlt_GetSerializedPhrase(ISpPhraseAlt* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7354 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7355}
7356static inline HRESULT ISpPhraseAlt_GetText(ISpPhraseAlt* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7357 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7358}
7359static inline HRESULT ISpPhraseAlt_Discard(ISpPhraseAlt* This,DWORD dwValueTypes) {
7360 return This->lpVtbl->Discard(This,dwValueTypes);
7361}
7362/*** ISpPhraseAlt methods ***/
7363static inline HRESULT ISpPhraseAlt_GetAltInfo(ISpPhraseAlt* This,ISpPhrase **ppParent,ULONG *pulStartElementInParent,ULONG *pcElementsInParent,ULONG *pcElementsInAlt) {
7364 return This->lpVtbl->GetAltInfo(This,ppParent,pulStartElementInParent,pcElementsInParent,pcElementsInAlt);
7365}
7366static inline HRESULT ISpPhraseAlt_Commit(ISpPhraseAlt* This) {
7367 return This->lpVtbl->Commit(This);
7368}
7369#endif
7370#endif
7371
7372#endif
7373
7374
7375#endif /* __ISpPhraseAlt_INTERFACE_DEFINED__ */
7376
7377typedef enum SPXMLRESULTOPTIONS {
7378 SPXRO_SML = 0,
7379 SPXRO_Alternates_SML = 1
7380} SPXMLRESULTOPTIONS;
7381/*****************************************************************************
7382 * ISpPhrase2 interface
7383 */
7384#ifndef __ISpPhrase2_INTERFACE_DEFINED__
7385#define __ISpPhrase2_INTERFACE_DEFINED__
7386
7387DEFINE_GUID(IID_ISpPhrase2, 0xf264da52, 0xe457, 0x4696, 0xb8,0x56, 0xa7,0x37,0xb7,0x17,0xaf,0x79);
7388#if defined(__cplusplus) && !defined(CINTERFACE)
7389MIDL_INTERFACE("f264da52-e457-4696-b856-a737b717af79")
7390ISpPhrase2 : public ISpPhrase
7391{
7392 virtual HRESULT STDMETHODCALLTYPE GetXMLResult(
7393 LPWSTR *ppszCoMemXMLResult,
7394 SPXMLRESULTOPTIONS Options) = 0;
7395
7396 virtual HRESULT STDMETHODCALLTYPE GetXMLErrorInfo(
7397 SPSEMANTICERRORINFO *pSemanticErrorInfo) = 0;
7398
7399 virtual HRESULT STDMETHODCALLTYPE GetAudio(
7400 ULONG ulStartElement,
7401 ULONG cElements,
7402 ISpStreamFormat **ppStream) = 0;
7403
7404};
7405#ifdef __CRT_UUID_DECL
7406__CRT_UUID_DECL(ISpPhrase2, 0xf264da52, 0xe457, 0x4696, 0xb8,0x56, 0xa7,0x37,0xb7,0x17,0xaf,0x79)
7407#endif
7408#else
7409typedef struct ISpPhrase2Vtbl {
7410 BEGIN_INTERFACE
7411
7412 /*** IUnknown methods ***/
7413 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7414 ISpPhrase2 *This,
7415 REFIID riid,
7416 void **ppvObject);
7417
7418 ULONG (STDMETHODCALLTYPE *AddRef)(
7419 ISpPhrase2 *This);
7420
7421 ULONG (STDMETHODCALLTYPE *Release)(
7422 ISpPhrase2 *This);
7423
7424 /*** ISpPhrase methods ***/
7425 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7426 ISpPhrase2 *This,
7427 SPPHRASE **ppCoMemPhrase);
7428
7429 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7430 ISpPhrase2 *This,
7431 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7432
7433 HRESULT (STDMETHODCALLTYPE *GetText)(
7434 ISpPhrase2 *This,
7435 ULONG ulStart,
7436 ULONG ulCount,
7437 WINBOOL fUseTextReplacements,
7438 LPWSTR *ppszCoMemText,
7439 BYTE *pbDisplayAttributes);
7440
7441 HRESULT (STDMETHODCALLTYPE *Discard)(
7442 ISpPhrase2 *This,
7443 DWORD dwValueTypes);
7444
7445 /*** ISpPhrase2 methods ***/
7446 HRESULT (STDMETHODCALLTYPE *GetXMLResult)(
7447 ISpPhrase2 *This,
7448 LPWSTR *ppszCoMemXMLResult,
7449 SPXMLRESULTOPTIONS Options);
7450
7451 HRESULT (STDMETHODCALLTYPE *GetXMLErrorInfo)(
7452 ISpPhrase2 *This,
7453 SPSEMANTICERRORINFO *pSemanticErrorInfo);
7454
7455 HRESULT (STDMETHODCALLTYPE *GetAudio)(
7456 ISpPhrase2 *This,
7457 ULONG ulStartElement,
7458 ULONG cElements,
7459 ISpStreamFormat **ppStream);
7460
7461 END_INTERFACE
7462} ISpPhrase2Vtbl;
7463
7464interface ISpPhrase2 {
7465 CONST_VTBL ISpPhrase2Vtbl* lpVtbl;
7466};
7467
7468#ifdef COBJMACROS
7469#ifndef WIDL_C_INLINE_WRAPPERS
7470/*** IUnknown methods ***/
7471#define ISpPhrase2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7472#define ISpPhrase2_AddRef(This) (This)->lpVtbl->AddRef(This)
7473#define ISpPhrase2_Release(This) (This)->lpVtbl->Release(This)
7474/*** ISpPhrase methods ***/
7475#define ISpPhrase2_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7476#define ISpPhrase2_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7477#define ISpPhrase2_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7478#define ISpPhrase2_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7479/*** ISpPhrase2 methods ***/
7480#define ISpPhrase2_GetXMLResult(This,ppszCoMemXMLResult,Options) (This)->lpVtbl->GetXMLResult(This,ppszCoMemXMLResult,Options)
7481#define ISpPhrase2_GetXMLErrorInfo(This,pSemanticErrorInfo) (This)->lpVtbl->GetXMLErrorInfo(This,pSemanticErrorInfo)
7482#define ISpPhrase2_GetAudio(This,ulStartElement,cElements,ppStream) (This)->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream)
7483#else
7484/*** IUnknown methods ***/
7485static inline HRESULT ISpPhrase2_QueryInterface(ISpPhrase2* This,REFIID riid,void **ppvObject) {
7486 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7487}
7488static inline ULONG ISpPhrase2_AddRef(ISpPhrase2* This) {
7489 return This->lpVtbl->AddRef(This);
7490}
7491static inline ULONG ISpPhrase2_Release(ISpPhrase2* This) {
7492 return This->lpVtbl->Release(This);
7493}
7494/*** ISpPhrase methods ***/
7495static inline HRESULT ISpPhrase2_GetPhrase(ISpPhrase2* This,SPPHRASE **ppCoMemPhrase) {
7496 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7497}
7498static inline HRESULT ISpPhrase2_GetSerializedPhrase(ISpPhrase2* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7499 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7500}
7501static inline HRESULT ISpPhrase2_GetText(ISpPhrase2* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7502 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7503}
7504static inline HRESULT ISpPhrase2_Discard(ISpPhrase2* This,DWORD dwValueTypes) {
7505 return This->lpVtbl->Discard(This,dwValueTypes);
7506}
7507/*** ISpPhrase2 methods ***/
7508static inline HRESULT ISpPhrase2_GetXMLResult(ISpPhrase2* This,LPWSTR *ppszCoMemXMLResult,SPXMLRESULTOPTIONS Options) {
7509 return This->lpVtbl->GetXMLResult(This,ppszCoMemXMLResult,Options);
7510}
7511static inline HRESULT ISpPhrase2_GetXMLErrorInfo(ISpPhrase2* This,SPSEMANTICERRORINFO *pSemanticErrorInfo) {
7512 return This->lpVtbl->GetXMLErrorInfo(This,pSemanticErrorInfo);
7513}
7514static inline HRESULT ISpPhrase2_GetAudio(ISpPhrase2* This,ULONG ulStartElement,ULONG cElements,ISpStreamFormat **ppStream) {
7515 return This->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream);
7516}
7517#endif
7518#endif
7519
7520#endif
7521
7522
7523#endif /* __ISpPhrase2_INTERFACE_DEFINED__ */
7524
7525typedef struct SPRECORESULTTIMES {
7526 FILETIME ftStreamTime;
7527 ULONGLONG ullLength;
7528 DWORD dwTickCount;
7529 ULONGLONG ullStart;
7530} SPRECORESULTTIMES;
7531typedef struct SPSERIALIZEDRESULT {
7532 ULONG ulSerializedSize;
7533} SPSERIALIZEDRESULT;
7534/*****************************************************************************
7535 * ISpRecoResult interface
7536 */
7537#ifndef __ISpRecoResult_INTERFACE_DEFINED__
7538#define __ISpRecoResult_INTERFACE_DEFINED__
7539
7540DEFINE_GUID(IID_ISpRecoResult, 0x20b053be, 0xe235, 0x43cd, 0x9a,0x2a, 0x8d,0x17,0xa4,0x8b,0x78,0x42);
7541#if defined(__cplusplus) && !defined(CINTERFACE)
7542MIDL_INTERFACE("20b053be-e235-43cd-9a2a-8d17a48b7842")
7543ISpRecoResult : public ISpPhrase
7544{
7545 virtual HRESULT STDMETHODCALLTYPE GetResultTimes(
7546 SPRECORESULTTIMES *pTimes) = 0;
7547
7548 virtual HRESULT STDMETHODCALLTYPE GetAlternates(
7549 ULONG ulStartElement,
7550 ULONG cElements,
7551 ULONG ulRequestCount,
7552 ISpPhraseAlt **ppPhrases,
7553 ULONG *pcPhrasesReturned) = 0;
7554
7555 virtual HRESULT STDMETHODCALLTYPE GetAudio(
7556 ULONG ulStartElement,
7557 ULONG cElements,
7558 ISpStreamFormat **ppStream) = 0;
7559
7560 virtual HRESULT STDMETHODCALLTYPE SpeakAudio(
7561 ULONG ulStartElement,
7562 ULONG cElements,
7563 DWORD dwFlags,
7564 ULONG *pulStreamNumber) = 0;
7565
7566 virtual HRESULT STDMETHODCALLTYPE Serialize(
7567 SPSERIALIZEDRESULT **ppCoMemSerializedResult) = 0;
7568
7569 virtual HRESULT STDMETHODCALLTYPE ScaleAudio(
7570 const GUID *pAudioFormatId,
7571 const WAVEFORMATEX *pWaveFormatEx) = 0;
7572
7573 virtual HRESULT STDMETHODCALLTYPE GetRecoContext(
7574 ISpRecoContext **ppRecoContext) = 0;
7575
7576};
7577#ifdef __CRT_UUID_DECL
7578__CRT_UUID_DECL(ISpRecoResult, 0x20b053be, 0xe235, 0x43cd, 0x9a,0x2a, 0x8d,0x17,0xa4,0x8b,0x78,0x42)
7579#endif
7580#else
7581typedef struct ISpRecoResultVtbl {
7582 BEGIN_INTERFACE
7583
7584 /*** IUnknown methods ***/
7585 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7586 ISpRecoResult *This,
7587 REFIID riid,
7588 void **ppvObject);
7589
7590 ULONG (STDMETHODCALLTYPE *AddRef)(
7591 ISpRecoResult *This);
7592
7593 ULONG (STDMETHODCALLTYPE *Release)(
7594 ISpRecoResult *This);
7595
7596 /*** ISpPhrase methods ***/
7597 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7598 ISpRecoResult *This,
7599 SPPHRASE **ppCoMemPhrase);
7600
7601 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7602 ISpRecoResult *This,
7603 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7604
7605 HRESULT (STDMETHODCALLTYPE *GetText)(
7606 ISpRecoResult *This,
7607 ULONG ulStart,
7608 ULONG ulCount,
7609 WINBOOL fUseTextReplacements,
7610 LPWSTR *ppszCoMemText,
7611 BYTE *pbDisplayAttributes);
7612
7613 HRESULT (STDMETHODCALLTYPE *Discard)(
7614 ISpRecoResult *This,
7615 DWORD dwValueTypes);
7616
7617 /*** ISpRecoResult methods ***/
7618 HRESULT (STDMETHODCALLTYPE *GetResultTimes)(
7619 ISpRecoResult *This,
7620 SPRECORESULTTIMES *pTimes);
7621
7622 HRESULT (STDMETHODCALLTYPE *GetAlternates)(
7623 ISpRecoResult *This,
7624 ULONG ulStartElement,
7625 ULONG cElements,
7626 ULONG ulRequestCount,
7627 ISpPhraseAlt **ppPhrases,
7628 ULONG *pcPhrasesReturned);
7629
7630 HRESULT (STDMETHODCALLTYPE *GetAudio)(
7631 ISpRecoResult *This,
7632 ULONG ulStartElement,
7633 ULONG cElements,
7634 ISpStreamFormat **ppStream);
7635
7636 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
7637 ISpRecoResult *This,
7638 ULONG ulStartElement,
7639 ULONG cElements,
7640 DWORD dwFlags,
7641 ULONG *pulStreamNumber);
7642
7643 HRESULT (STDMETHODCALLTYPE *Serialize)(
7644 ISpRecoResult *This,
7645 SPSERIALIZEDRESULT **ppCoMemSerializedResult);
7646
7647 HRESULT (STDMETHODCALLTYPE *ScaleAudio)(
7648 ISpRecoResult *This,
7649 const GUID *pAudioFormatId,
7650 const WAVEFORMATEX *pWaveFormatEx);
7651
7652 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
7653 ISpRecoResult *This,
7654 ISpRecoContext **ppRecoContext);
7655
7656 END_INTERFACE
7657} ISpRecoResultVtbl;
7658
7659interface ISpRecoResult {
7660 CONST_VTBL ISpRecoResultVtbl* lpVtbl;
7661};
7662
7663#ifdef COBJMACROS
7664#ifndef WIDL_C_INLINE_WRAPPERS
7665/*** IUnknown methods ***/
7666#define ISpRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7667#define ISpRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
7668#define ISpRecoResult_Release(This) (This)->lpVtbl->Release(This)
7669/*** ISpPhrase methods ***/
7670#define ISpRecoResult_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7671#define ISpRecoResult_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7672#define ISpRecoResult_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7673#define ISpRecoResult_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7674/*** ISpRecoResult methods ***/
7675#define ISpRecoResult_GetResultTimes(This,pTimes) (This)->lpVtbl->GetResultTimes(This,pTimes)
7676#define ISpRecoResult_GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned) (This)->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned)
7677#define ISpRecoResult_GetAudio(This,ulStartElement,cElements,ppStream) (This)->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream)
7678#define ISpRecoResult_SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber)
7679#define ISpRecoResult_Serialize(This,ppCoMemSerializedResult) (This)->lpVtbl->Serialize(This,ppCoMemSerializedResult)
7680#define ISpRecoResult_ScaleAudio(This,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx)
7681#define ISpRecoResult_GetRecoContext(This,ppRecoContext) (This)->lpVtbl->GetRecoContext(This,ppRecoContext)
7682#else
7683/*** IUnknown methods ***/
7684static inline HRESULT ISpRecoResult_QueryInterface(ISpRecoResult* This,REFIID riid,void **ppvObject) {
7685 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7686}
7687static inline ULONG ISpRecoResult_AddRef(ISpRecoResult* This) {
7688 return This->lpVtbl->AddRef(This);
7689}
7690static inline ULONG ISpRecoResult_Release(ISpRecoResult* This) {
7691 return This->lpVtbl->Release(This);
7692}
7693/*** ISpPhrase methods ***/
7694static inline HRESULT ISpRecoResult_GetPhrase(ISpRecoResult* This,SPPHRASE **ppCoMemPhrase) {
7695 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7696}
7697static inline HRESULT ISpRecoResult_GetSerializedPhrase(ISpRecoResult* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7698 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7699}
7700static inline HRESULT ISpRecoResult_GetText(ISpRecoResult* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7701 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7702}
7703static inline HRESULT ISpRecoResult_Discard(ISpRecoResult* This,DWORD dwValueTypes) {
7704 return This->lpVtbl->Discard(This,dwValueTypes);
7705}
7706/*** ISpRecoResult methods ***/
7707static inline HRESULT ISpRecoResult_GetResultTimes(ISpRecoResult* This,SPRECORESULTTIMES *pTimes) {
7708 return This->lpVtbl->GetResultTimes(This,pTimes);
7709}
7710static inline HRESULT ISpRecoResult_GetAlternates(ISpRecoResult* This,ULONG ulStartElement,ULONG cElements,ULONG ulRequestCount,ISpPhraseAlt **ppPhrases,ULONG *pcPhrasesReturned) {
7711 return This->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned);
7712}
7713static inline HRESULT ISpRecoResult_GetAudio(ISpRecoResult* This,ULONG ulStartElement,ULONG cElements,ISpStreamFormat **ppStream) {
7714 return This->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream);
7715}
7716static inline HRESULT ISpRecoResult_SpeakAudio(ISpRecoResult* This,ULONG ulStartElement,ULONG cElements,DWORD dwFlags,ULONG *pulStreamNumber) {
7717 return This->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber);
7718}
7719static inline HRESULT ISpRecoResult_Serialize(ISpRecoResult* This,SPSERIALIZEDRESULT **ppCoMemSerializedResult) {
7720 return This->lpVtbl->Serialize(This,ppCoMemSerializedResult);
7721}
7722static inline HRESULT ISpRecoResult_ScaleAudio(ISpRecoResult* This,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
7723 return This->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx);
7724}
7725static inline HRESULT ISpRecoResult_GetRecoContext(ISpRecoResult* This,ISpRecoContext **ppRecoContext) {
7726 return This->lpVtbl->GetRecoContext(This,ppRecoContext);
7727}
7728#endif
7729#endif
7730
7731#endif
7732
7733
7734#endif /* __ISpRecoResult_INTERFACE_DEFINED__ */
7735
7736typedef enum SPCOMMITFLAGS {
7737 SPCF_NONE = 0,
7738 SPCF_ADD_TO_USER_LEXICON = 1 << 0,
7739 SPCF_DEFINITE_CORRECTION = 1 << 1
7740} SPCOMMITFLAGS;
7741/*****************************************************************************
7742 * ISpRecoResult2 interface
7743 */
7744#ifndef __ISpRecoResult2_INTERFACE_DEFINED__
7745#define __ISpRecoResult2_INTERFACE_DEFINED__
7746
7747DEFINE_GUID(IID_ISpRecoResult2, 0x27cac6c4, 0x88f2, 0x41f2, 0x88,0x17, 0x0c,0x95,0xe5,0x9f,0x1e,0x6e);
7748#if defined(__cplusplus) && !defined(CINTERFACE)
7749MIDL_INTERFACE("27cac6c4-88f2-41f2-8817-0c95e59f1e6e")
7750ISpRecoResult2 : public ISpRecoResult
7751{
7752 virtual HRESULT STDMETHODCALLTYPE CommitAlternate(
7753 ISpPhraseAlt *pPhraseAlt,
7754 ISpRecoResult **ppNewResult) = 0;
7755
7756 virtual HRESULT STDMETHODCALLTYPE CommitText(
7757 ULONG ulStartElement,
7758 ULONG cElements,
7759 LPCWSTR pszCorrectedData,
7760 DWORD eCommitFlags) = 0;
7761
7762 virtual HRESULT STDMETHODCALLTYPE SetTextFeedback(
7763 LPCWSTR pszFeedback,
7764 WINBOOL fSuccessful) = 0;
7765
7766};
7767#ifdef __CRT_UUID_DECL
7768__CRT_UUID_DECL(ISpRecoResult2, 0x27cac6c4, 0x88f2, 0x41f2, 0x88,0x17, 0x0c,0x95,0xe5,0x9f,0x1e,0x6e)
7769#endif
7770#else
7771typedef struct ISpRecoResult2Vtbl {
7772 BEGIN_INTERFACE
7773
7774 /*** IUnknown methods ***/
7775 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7776 ISpRecoResult2 *This,
7777 REFIID riid,
7778 void **ppvObject);
7779
7780 ULONG (STDMETHODCALLTYPE *AddRef)(
7781 ISpRecoResult2 *This);
7782
7783 ULONG (STDMETHODCALLTYPE *Release)(
7784 ISpRecoResult2 *This);
7785
7786 /*** ISpPhrase methods ***/
7787 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7788 ISpRecoResult2 *This,
7789 SPPHRASE **ppCoMemPhrase);
7790
7791 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7792 ISpRecoResult2 *This,
7793 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7794
7795 HRESULT (STDMETHODCALLTYPE *GetText)(
7796 ISpRecoResult2 *This,
7797 ULONG ulStart,
7798 ULONG ulCount,
7799 WINBOOL fUseTextReplacements,
7800 LPWSTR *ppszCoMemText,
7801 BYTE *pbDisplayAttributes);
7802
7803 HRESULT (STDMETHODCALLTYPE *Discard)(
7804 ISpRecoResult2 *This,
7805 DWORD dwValueTypes);
7806
7807 /*** ISpRecoResult methods ***/
7808 HRESULT (STDMETHODCALLTYPE *GetResultTimes)(
7809 ISpRecoResult2 *This,
7810 SPRECORESULTTIMES *pTimes);
7811
7812 HRESULT (STDMETHODCALLTYPE *GetAlternates)(
7813 ISpRecoResult2 *This,
7814 ULONG ulStartElement,
7815 ULONG cElements,
7816 ULONG ulRequestCount,
7817 ISpPhraseAlt **ppPhrases,
7818 ULONG *pcPhrasesReturned);
7819
7820 HRESULT (STDMETHODCALLTYPE *GetAudio)(
7821 ISpRecoResult2 *This,
7822 ULONG ulStartElement,
7823 ULONG cElements,
7824 ISpStreamFormat **ppStream);
7825
7826 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
7827 ISpRecoResult2 *This,
7828 ULONG ulStartElement,
7829 ULONG cElements,
7830 DWORD dwFlags,
7831 ULONG *pulStreamNumber);
7832
7833 HRESULT (STDMETHODCALLTYPE *Serialize)(
7834 ISpRecoResult2 *This,
7835 SPSERIALIZEDRESULT **ppCoMemSerializedResult);
7836
7837 HRESULT (STDMETHODCALLTYPE *ScaleAudio)(
7838 ISpRecoResult2 *This,
7839 const GUID *pAudioFormatId,
7840 const WAVEFORMATEX *pWaveFormatEx);
7841
7842 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
7843 ISpRecoResult2 *This,
7844 ISpRecoContext **ppRecoContext);
7845
7846 /*** ISpRecoResult2 methods ***/
7847 HRESULT (STDMETHODCALLTYPE *CommitAlternate)(
7848 ISpRecoResult2 *This,
7849 ISpPhraseAlt *pPhraseAlt,
7850 ISpRecoResult **ppNewResult);
7851
7852 HRESULT (STDMETHODCALLTYPE *CommitText)(
7853 ISpRecoResult2 *This,
7854 ULONG ulStartElement,
7855 ULONG cElements,
7856 LPCWSTR pszCorrectedData,
7857 DWORD eCommitFlags);
7858
7859 HRESULT (STDMETHODCALLTYPE *SetTextFeedback)(
7860 ISpRecoResult2 *This,
7861 LPCWSTR pszFeedback,
7862 WINBOOL fSuccessful);
7863
7864 END_INTERFACE
7865} ISpRecoResult2Vtbl;
7866
7867interface ISpRecoResult2 {
7868 CONST_VTBL ISpRecoResult2Vtbl* lpVtbl;
7869};
7870
7871#ifdef COBJMACROS
7872#ifndef WIDL_C_INLINE_WRAPPERS
7873/*** IUnknown methods ***/
7874#define ISpRecoResult2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7875#define ISpRecoResult2_AddRef(This) (This)->lpVtbl->AddRef(This)
7876#define ISpRecoResult2_Release(This) (This)->lpVtbl->Release(This)
7877/*** ISpPhrase methods ***/
7878#define ISpRecoResult2_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7879#define ISpRecoResult2_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7880#define ISpRecoResult2_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7881#define ISpRecoResult2_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7882/*** ISpRecoResult methods ***/
7883#define ISpRecoResult2_GetResultTimes(This,pTimes) (This)->lpVtbl->GetResultTimes(This,pTimes)
7884#define ISpRecoResult2_GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned) (This)->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned)
7885#define ISpRecoResult2_GetAudio(This,ulStartElement,cElements,ppStream) (This)->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream)
7886#define ISpRecoResult2_SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber)
7887#define ISpRecoResult2_Serialize(This,ppCoMemSerializedResult) (This)->lpVtbl->Serialize(This,ppCoMemSerializedResult)
7888#define ISpRecoResult2_ScaleAudio(This,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx)
7889#define ISpRecoResult2_GetRecoContext(This,ppRecoContext) (This)->lpVtbl->GetRecoContext(This,ppRecoContext)
7890/*** ISpRecoResult2 methods ***/
7891#define ISpRecoResult2_CommitAlternate(This,pPhraseAlt,ppNewResult) (This)->lpVtbl->CommitAlternate(This,pPhraseAlt,ppNewResult)
7892#define ISpRecoResult2_CommitText(This,ulStartElement,cElements,pszCorrectedData,eCommitFlags) (This)->lpVtbl->CommitText(This,ulStartElement,cElements,pszCorrectedData,eCommitFlags)
7893#define ISpRecoResult2_SetTextFeedback(This,pszFeedback,fSuccessful) (This)->lpVtbl->SetTextFeedback(This,pszFeedback,fSuccessful)
7894#else
7895/*** IUnknown methods ***/
7896static inline HRESULT ISpRecoResult2_QueryInterface(ISpRecoResult2* This,REFIID riid,void **ppvObject) {
7897 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7898}
7899static inline ULONG ISpRecoResult2_AddRef(ISpRecoResult2* This) {
7900 return This->lpVtbl->AddRef(This);
7901}
7902static inline ULONG ISpRecoResult2_Release(ISpRecoResult2* This) {
7903 return This->lpVtbl->Release(This);
7904}
7905/*** ISpPhrase methods ***/
7906static inline HRESULT ISpRecoResult2_GetPhrase(ISpRecoResult2* This,SPPHRASE **ppCoMemPhrase) {
7907 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7908}
7909static inline HRESULT ISpRecoResult2_GetSerializedPhrase(ISpRecoResult2* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7910 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7911}
7912static inline HRESULT ISpRecoResult2_GetText(ISpRecoResult2* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7913 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7914}
7915static inline HRESULT ISpRecoResult2_Discard(ISpRecoResult2* This,DWORD dwValueTypes) {
7916 return This->lpVtbl->Discard(This,dwValueTypes);
7917}
7918/*** ISpRecoResult methods ***/
7919static inline HRESULT ISpRecoResult2_GetResultTimes(ISpRecoResult2* This,SPRECORESULTTIMES *pTimes) {
7920 return This->lpVtbl->GetResultTimes(This,pTimes);
7921}
7922static inline HRESULT ISpRecoResult2_GetAlternates(ISpRecoResult2* This,ULONG ulStartElement,ULONG cElements,ULONG ulRequestCount,ISpPhraseAlt **ppPhrases,ULONG *pcPhrasesReturned) {
7923 return This->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned);
7924}
7925static inline HRESULT ISpRecoResult2_GetAudio(ISpRecoResult2* This,ULONG ulStartElement,ULONG cElements,ISpStreamFormat **ppStream) {
7926 return This->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream);
7927}
7928static inline HRESULT ISpRecoResult2_SpeakAudio(ISpRecoResult2* This,ULONG ulStartElement,ULONG cElements,DWORD dwFlags,ULONG *pulStreamNumber) {
7929 return This->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber);
7930}
7931static inline HRESULT ISpRecoResult2_Serialize(ISpRecoResult2* This,SPSERIALIZEDRESULT **ppCoMemSerializedResult) {
7932 return This->lpVtbl->Serialize(This,ppCoMemSerializedResult);
7933}
7934static inline HRESULT ISpRecoResult2_ScaleAudio(ISpRecoResult2* This,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
7935 return This->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx);
7936}
7937static inline HRESULT ISpRecoResult2_GetRecoContext(ISpRecoResult2* This,ISpRecoContext **ppRecoContext) {
7938 return This->lpVtbl->GetRecoContext(This,ppRecoContext);
7939}
7940/*** ISpRecoResult2 methods ***/
7941static inline HRESULT ISpRecoResult2_CommitAlternate(ISpRecoResult2* This,ISpPhraseAlt *pPhraseAlt,ISpRecoResult **ppNewResult) {
7942 return This->lpVtbl->CommitAlternate(This,pPhraseAlt,ppNewResult);
7943}
7944static inline HRESULT ISpRecoResult2_CommitText(ISpRecoResult2* This,ULONG ulStartElement,ULONG cElements,LPCWSTR pszCorrectedData,DWORD eCommitFlags) {
7945 return This->lpVtbl->CommitText(This,ulStartElement,cElements,pszCorrectedData,eCommitFlags);
7946}
7947static inline HRESULT ISpRecoResult2_SetTextFeedback(ISpRecoResult2* This,LPCWSTR pszFeedback,WINBOOL fSuccessful) {
7948 return This->lpVtbl->SetTextFeedback(This,pszFeedback,fSuccessful);
7949}
7950#endif
7951#endif
7952
7953#endif
7954
7955
7956#endif /* __ISpRecoResult2_INTERFACE_DEFINED__ */
7957
7958/*****************************************************************************
7959 * ISpXMLRecoResult interface
7960 */
7961#ifndef __ISpXMLRecoResult_INTERFACE_DEFINED__
7962#define __ISpXMLRecoResult_INTERFACE_DEFINED__
7963
7964DEFINE_GUID(IID_ISpXMLRecoResult, 0xae39362b, 0x45a8, 0x4074, 0x9b,0x9e, 0xcc,0xf4,0x9a,0xa2,0xd0,0xb6);
7965#if defined(__cplusplus) && !defined(CINTERFACE)
7966MIDL_INTERFACE("ae39362b-45a8-4074-9b9e-ccf49aa2d0b6")
7967ISpXMLRecoResult : public ISpRecoResult
7968{
7969 virtual HRESULT STDMETHODCALLTYPE GetXMLResult(
7970 LPWSTR *ppszCoMemXMLResult,
7971 SPXMLRESULTOPTIONS Options) = 0;
7972
7973 virtual HRESULT STDMETHODCALLTYPE GetXMLErrorInfo(
7974 SPSEMANTICERRORINFO *pSemanticErrorInfo) = 0;
7975
7976};
7977#ifdef __CRT_UUID_DECL
7978__CRT_UUID_DECL(ISpXMLRecoResult, 0xae39362b, 0x45a8, 0x4074, 0x9b,0x9e, 0xcc,0xf4,0x9a,0xa2,0xd0,0xb6)
7979#endif
7980#else
7981typedef struct ISpXMLRecoResultVtbl {
7982 BEGIN_INTERFACE
7983
7984 /*** IUnknown methods ***/
7985 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7986 ISpXMLRecoResult *This,
7987 REFIID riid,
7988 void **ppvObject);
7989
7990 ULONG (STDMETHODCALLTYPE *AddRef)(
7991 ISpXMLRecoResult *This);
7992
7993 ULONG (STDMETHODCALLTYPE *Release)(
7994 ISpXMLRecoResult *This);
7995
7996 /*** ISpPhrase methods ***/
7997 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7998 ISpXMLRecoResult *This,
7999 SPPHRASE **ppCoMemPhrase);
8000
8001 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
8002 ISpXMLRecoResult *This,
8003 SPSERIALIZEDPHRASE **ppCoMemPhrase);
8004
8005 HRESULT (STDMETHODCALLTYPE *GetText)(
8006 ISpXMLRecoResult *This,
8007 ULONG ulStart,
8008 ULONG ulCount,
8009 WINBOOL fUseTextReplacements,
8010 LPWSTR *ppszCoMemText,
8011 BYTE *pbDisplayAttributes);
8012
8013 HRESULT (STDMETHODCALLTYPE *Discard)(
8014 ISpXMLRecoResult *This,
8015 DWORD dwValueTypes);
8016
8017 /*** ISpRecoResult methods ***/
8018 HRESULT (STDMETHODCALLTYPE *GetResultTimes)(
8019 ISpXMLRecoResult *This,
8020 SPRECORESULTTIMES *pTimes);
8021
8022 HRESULT (STDMETHODCALLTYPE *GetAlternates)(
8023 ISpXMLRecoResult *This,
8024 ULONG ulStartElement,
8025 ULONG cElements,
8026 ULONG ulRequestCount,
8027 ISpPhraseAlt **ppPhrases,
8028 ULONG *pcPhrasesReturned);
8029
8030 HRESULT (STDMETHODCALLTYPE *GetAudio)(
8031 ISpXMLRecoResult *This,
8032 ULONG ulStartElement,
8033 ULONG cElements,
8034 ISpStreamFormat **ppStream);
8035
8036 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
8037 ISpXMLRecoResult *This,
8038 ULONG ulStartElement,
8039 ULONG cElements,
8040 DWORD dwFlags,
8041 ULONG *pulStreamNumber);
8042
8043 HRESULT (STDMETHODCALLTYPE *Serialize)(
8044 ISpXMLRecoResult *This,
8045 SPSERIALIZEDRESULT **ppCoMemSerializedResult);
8046
8047 HRESULT (STDMETHODCALLTYPE *ScaleAudio)(
8048 ISpXMLRecoResult *This,
8049 const GUID *pAudioFormatId,
8050 const WAVEFORMATEX *pWaveFormatEx);
8051
8052 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
8053 ISpXMLRecoResult *This,
8054 ISpRecoContext **ppRecoContext);
8055
8056 /*** ISpXMLRecoResult methods ***/
8057 HRESULT (STDMETHODCALLTYPE *GetXMLResult)(
8058 ISpXMLRecoResult *This,
8059 LPWSTR *ppszCoMemXMLResult,
8060 SPXMLRESULTOPTIONS Options);
8061
8062 HRESULT (STDMETHODCALLTYPE *GetXMLErrorInfo)(
8063 ISpXMLRecoResult *This,
8064 SPSEMANTICERRORINFO *pSemanticErrorInfo);
8065
8066 END_INTERFACE
8067} ISpXMLRecoResultVtbl;
8068
8069interface ISpXMLRecoResult {
8070 CONST_VTBL ISpXMLRecoResultVtbl* lpVtbl;
8071};
8072
8073#ifdef COBJMACROS
8074#ifndef WIDL_C_INLINE_WRAPPERS
8075/*** IUnknown methods ***/
8076#define ISpXMLRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8077#define ISpXMLRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
8078#define ISpXMLRecoResult_Release(This) (This)->lpVtbl->Release(This)
8079/*** ISpPhrase methods ***/
8080#define ISpXMLRecoResult_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
8081#define ISpXMLRecoResult_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
8082#define ISpXMLRecoResult_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
8083#define ISpXMLRecoResult_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
8084/*** ISpRecoResult methods ***/
8085#define ISpXMLRecoResult_GetResultTimes(This,pTimes) (This)->lpVtbl->GetResultTimes(This,pTimes)
8086#define ISpXMLRecoResult_GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned) (This)->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned)
8087#define ISpXMLRecoResult_GetAudio(This,ulStartElement,cElements,ppStream) (This)->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream)
8088#define ISpXMLRecoResult_SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber)
8089#define ISpXMLRecoResult_Serialize(This,ppCoMemSerializedResult) (This)->lpVtbl->Serialize(This,ppCoMemSerializedResult)
8090#define ISpXMLRecoResult_ScaleAudio(This,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx)
8091#define ISpXMLRecoResult_GetRecoContext(This,ppRecoContext) (This)->lpVtbl->GetRecoContext(This,ppRecoContext)
8092/*** ISpXMLRecoResult methods ***/
8093#define ISpXMLRecoResult_GetXMLResult(This,ppszCoMemXMLResult,Options) (This)->lpVtbl->GetXMLResult(This,ppszCoMemXMLResult,Options)
8094#define ISpXMLRecoResult_GetXMLErrorInfo(This,pSemanticErrorInfo) (This)->lpVtbl->GetXMLErrorInfo(This,pSemanticErrorInfo)
8095#else
8096/*** IUnknown methods ***/
8097static inline HRESULT ISpXMLRecoResult_QueryInterface(ISpXMLRecoResult* This,REFIID riid,void **ppvObject) {
8098 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8099}
8100static inline ULONG ISpXMLRecoResult_AddRef(ISpXMLRecoResult* This) {
8101 return This->lpVtbl->AddRef(This);
8102}
8103static inline ULONG ISpXMLRecoResult_Release(ISpXMLRecoResult* This) {
8104 return This->lpVtbl->Release(This);
8105}
8106/*** ISpPhrase methods ***/
8107static inline HRESULT ISpXMLRecoResult_GetPhrase(ISpXMLRecoResult* This,SPPHRASE **ppCoMemPhrase) {
8108 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
8109}
8110static inline HRESULT ISpXMLRecoResult_GetSerializedPhrase(ISpXMLRecoResult* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
8111 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
8112}
8113static inline HRESULT ISpXMLRecoResult_GetText(ISpXMLRecoResult* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
8114 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
8115}
8116static inline HRESULT ISpXMLRecoResult_Discard(ISpXMLRecoResult* This,DWORD dwValueTypes) {
8117 return This->lpVtbl->Discard(This,dwValueTypes);
8118}
8119/*** ISpRecoResult methods ***/
8120static inline HRESULT ISpXMLRecoResult_GetResultTimes(ISpXMLRecoResult* This,SPRECORESULTTIMES *pTimes) {
8121 return This->lpVtbl->GetResultTimes(This,pTimes);
8122}
8123static inline HRESULT ISpXMLRecoResult_GetAlternates(ISpXMLRecoResult* This,ULONG ulStartElement,ULONG cElements,ULONG ulRequestCount,ISpPhraseAlt **ppPhrases,ULONG *pcPhrasesReturned) {
8124 return This->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned);
8125}
8126static inline HRESULT ISpXMLRecoResult_GetAudio(ISpXMLRecoResult* This,ULONG ulStartElement,ULONG cElements,ISpStreamFormat **ppStream) {
8127 return This->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream);
8128}
8129static inline HRESULT ISpXMLRecoResult_SpeakAudio(ISpXMLRecoResult* This,ULONG ulStartElement,ULONG cElements,DWORD dwFlags,ULONG *pulStreamNumber) {
8130 return This->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber);
8131}
8132static inline HRESULT ISpXMLRecoResult_Serialize(ISpXMLRecoResult* This,SPSERIALIZEDRESULT **ppCoMemSerializedResult) {
8133 return This->lpVtbl->Serialize(This,ppCoMemSerializedResult);
8134}
8135static inline HRESULT ISpXMLRecoResult_ScaleAudio(ISpXMLRecoResult* This,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
8136 return This->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx);
8137}
8138static inline HRESULT ISpXMLRecoResult_GetRecoContext(ISpXMLRecoResult* This,ISpRecoContext **ppRecoContext) {
8139 return This->lpVtbl->GetRecoContext(This,ppRecoContext);
8140}
8141/*** ISpXMLRecoResult methods ***/
8142static inline HRESULT ISpXMLRecoResult_GetXMLResult(ISpXMLRecoResult* This,LPWSTR *ppszCoMemXMLResult,SPXMLRESULTOPTIONS Options) {
8143 return This->lpVtbl->GetXMLResult(This,ppszCoMemXMLResult,Options);
8144}
8145static inline HRESULT ISpXMLRecoResult_GetXMLErrorInfo(ISpXMLRecoResult* This,SPSEMANTICERRORINFO *pSemanticErrorInfo) {
8146 return This->lpVtbl->GetXMLErrorInfo(This,pSemanticErrorInfo);
8147}
8148#endif
8149#endif
8150
8151#endif
8152
8153
8154#endif /* __ISpXMLRecoResult_INTERFACE_DEFINED__ */
8155
8156typedef struct tagSPTEXTSELECTIONINFO {
8157 ULONG ulStartActiveOffset;
8158 ULONG cchActiveChars;
8159 ULONG ulStartSelection;
8160 ULONG cchSelection;
8161} SPTEXTSELECTIONINFO;
8162typedef enum SPWORDPRONOUNCEABLE {
8163 SPWP_UNKNOWN_WORD_UNPRONOUNCEABLE = 0,
8164 SPWP_UNKNOWN_WORD_PRONOUNCEABLE = 1,
8165 SPWP_KNOWN_WORD_PRONOUNCEABLE = 2
8166} SPWORDPRONOUNCEABLE;
8167typedef enum SPGRAMMARSTATE {
8168 SPGS_DISABLED = 0,
8169 SPGS_ENABLED = 1,
8170 SPGS_EXCLUSIVE = 3
8171} SPGRAMMARSTATE;
8172typedef enum SPCONTEXTSTATE {
8173 SPCS_DISABLED = 0,
8174 SPCS_ENABLED = 1
8175} SPCONTEXTSTATE;
8176typedef enum SPRULESTATE {
8177 SPRS_INACTIVE = 0,
8178 SPRS_ACTIVE = 1,
8179 SPRS_ACTIVE_WITH_AUTO_PAUSE = 3,
8180 SPRS_ACTIVE_USER_DELIMITED = 4
8181} SPRULESTATE;
8182#define SP_STREAMPOS_ASAP (0)
8183
8184#define SP_STREAMPOS_REALTIME (-1)
8185
8186#define SPRULETRANS_TEXTBUFFER (SPSTATEHANDLE) (-1)
8187#define SPRULETRANS_WILDCARD (SPSTATEHANDLE) (-2)
8188#define SPRULETRANS_DICTATION (SPSTATEHANDLE) (-3)
8189typedef enum SPGRAMMARWORDTYPE {
8190 SPWT_DISPLAY = 0,
8191 SPWT_LEXICAL = 1,
8192 SPWT_PRONUNCIATION = 2,
8193 SPWT_LEXICAL_NO_SPECIAL_CHARS = 3
8194} SPGRAMMARWORDTYPE;
8195typedef struct tagSPPROPERTYINFO {
8196 LPCWSTR pszName;
8197 ULONG ulId;
8198 LPCWSTR pszValue;
8199 VARIANT vValue;
8200} SPPROPERTYINFO;
8201typedef enum SPCFGRULEATTRIBUTES {
8202 SPRAF_TopLevel = 0x1,
8203 SPRAF_Active = 0x2,
8204 SPRAF_Export = 0x4,
8205 SPRAF_Import = 0x8,
8206 SPRAF_Interpreter = 0x10,
8207 SPRAF_Dynamic = 0x20,
8208 SPRAF_Root = 0x40,
8209 SPRAF_AutoPause = 0x10000,
8210 SPRAF_UserDelimited = 0x20000
8211} SPCFGRULEATTRIBUTES;
8212/*****************************************************************************
8213 * ISpGrammarBuilder interface
8214 */
8215#ifndef __ISpGrammarBuilder_INTERFACE_DEFINED__
8216#define __ISpGrammarBuilder_INTERFACE_DEFINED__
8217
8218DEFINE_GUID(IID_ISpGrammarBuilder, 0x8137828f, 0x591a, 0x4a42, 0xbe,0x58, 0x49,0xea,0x7e,0xba,0xac,0x68);
8219#if defined(__cplusplus) && !defined(CINTERFACE)
8220MIDL_INTERFACE("8137828f-591a-4a42-be58-49ea7ebaac68")
8221ISpGrammarBuilder : public IUnknown
8222{
8223 virtual HRESULT STDMETHODCALLTYPE ResetGrammar(
8224 WORD NewLanguage) = 0;
8225
8226 virtual HRESULT STDMETHODCALLTYPE GetRule(
8227 LPCWSTR pszRuleName,
8228 DWORD dwRuleId,
8229 DWORD dwAttributes,
8230 WINBOOL fCreateIfNotExist,
8231 SPSTATEHANDLE *phInitialState) = 0;
8232
8233 virtual HRESULT STDMETHODCALLTYPE ClearRule(
8234 SPSTATEHANDLE hState) = 0;
8235
8236 virtual HRESULT STDMETHODCALLTYPE CreateNewState(
8237 SPSTATEHANDLE hState,
8238 SPSTATEHANDLE *phState) = 0;
8239
8240 virtual HRESULT STDMETHODCALLTYPE AddWordTransition(
8241 SPSTATEHANDLE hFromState,
8242 SPSTATEHANDLE hToState,
8243 LPCWSTR psz,
8244 LPCWSTR pszSeparators,
8245 SPGRAMMARWORDTYPE eWordType,
8246 float Weight,
8247 const SPPROPERTYINFO *pPropInfo) = 0;
8248
8249 virtual HRESULT STDMETHODCALLTYPE AddRuleTransition(
8250 SPSTATEHANDLE hFromState,
8251 SPSTATEHANDLE hToState,
8252 SPSTATEHANDLE hRule,
8253 float Weight,
8254 const SPPROPERTYINFO *pPropInfo) = 0;
8255
8256 virtual HRESULT STDMETHODCALLTYPE AddResource(
8257 SPSTATEHANDLE hRuleState,
8258 LPCWSTR pszResourceName,
8259 LPCWSTR pszResourceValue) = 0;
8260
8261 virtual HRESULT STDMETHODCALLTYPE Commit(
8262 DWORD dwReserved) = 0;
8263
8264};
8265#ifdef __CRT_UUID_DECL
8266__CRT_UUID_DECL(ISpGrammarBuilder, 0x8137828f, 0x591a, 0x4a42, 0xbe,0x58, 0x49,0xea,0x7e,0xba,0xac,0x68)
8267#endif
8268#else
8269typedef struct ISpGrammarBuilderVtbl {
8270 BEGIN_INTERFACE
8271
8272 /*** IUnknown methods ***/
8273 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8274 ISpGrammarBuilder *This,
8275 REFIID riid,
8276 void **ppvObject);
8277
8278 ULONG (STDMETHODCALLTYPE *AddRef)(
8279 ISpGrammarBuilder *This);
8280
8281 ULONG (STDMETHODCALLTYPE *Release)(
8282 ISpGrammarBuilder *This);
8283
8284 /*** ISpGrammarBuilder methods ***/
8285 HRESULT (STDMETHODCALLTYPE *ResetGrammar)(
8286 ISpGrammarBuilder *This,
8287 WORD NewLanguage);
8288
8289 HRESULT (STDMETHODCALLTYPE *GetRule)(
8290 ISpGrammarBuilder *This,
8291 LPCWSTR pszRuleName,
8292 DWORD dwRuleId,
8293 DWORD dwAttributes,
8294 WINBOOL fCreateIfNotExist,
8295 SPSTATEHANDLE *phInitialState);
8296
8297 HRESULT (STDMETHODCALLTYPE *ClearRule)(
8298 ISpGrammarBuilder *This,
8299 SPSTATEHANDLE hState);
8300
8301 HRESULT (STDMETHODCALLTYPE *CreateNewState)(
8302 ISpGrammarBuilder *This,
8303 SPSTATEHANDLE hState,
8304 SPSTATEHANDLE *phState);
8305
8306 HRESULT (STDMETHODCALLTYPE *AddWordTransition)(
8307 ISpGrammarBuilder *This,
8308 SPSTATEHANDLE hFromState,
8309 SPSTATEHANDLE hToState,
8310 LPCWSTR psz,
8311 LPCWSTR pszSeparators,
8312 SPGRAMMARWORDTYPE eWordType,
8313 float Weight,
8314 const SPPROPERTYINFO *pPropInfo);
8315
8316 HRESULT (STDMETHODCALLTYPE *AddRuleTransition)(
8317 ISpGrammarBuilder *This,
8318 SPSTATEHANDLE hFromState,
8319 SPSTATEHANDLE hToState,
8320 SPSTATEHANDLE hRule,
8321 float Weight,
8322 const SPPROPERTYINFO *pPropInfo);
8323
8324 HRESULT (STDMETHODCALLTYPE *AddResource)(
8325 ISpGrammarBuilder *This,
8326 SPSTATEHANDLE hRuleState,
8327 LPCWSTR pszResourceName,
8328 LPCWSTR pszResourceValue);
8329
8330 HRESULT (STDMETHODCALLTYPE *Commit)(
8331 ISpGrammarBuilder *This,
8332 DWORD dwReserved);
8333
8334 END_INTERFACE
8335} ISpGrammarBuilderVtbl;
8336
8337interface ISpGrammarBuilder {
8338 CONST_VTBL ISpGrammarBuilderVtbl* lpVtbl;
8339};
8340
8341#ifdef COBJMACROS
8342#ifndef WIDL_C_INLINE_WRAPPERS
8343/*** IUnknown methods ***/
8344#define ISpGrammarBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8345#define ISpGrammarBuilder_AddRef(This) (This)->lpVtbl->AddRef(This)
8346#define ISpGrammarBuilder_Release(This) (This)->lpVtbl->Release(This)
8347/*** ISpGrammarBuilder methods ***/
8348#define ISpGrammarBuilder_ResetGrammar(This,NewLanguage) (This)->lpVtbl->ResetGrammar(This,NewLanguage)
8349#define ISpGrammarBuilder_GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState) (This)->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState)
8350#define ISpGrammarBuilder_ClearRule(This,hState) (This)->lpVtbl->ClearRule(This,hState)
8351#define ISpGrammarBuilder_CreateNewState(This,hState,phState) (This)->lpVtbl->CreateNewState(This,hState,phState)
8352#define ISpGrammarBuilder_AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo) (This)->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo)
8353#define ISpGrammarBuilder_AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo) (This)->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo)
8354#define ISpGrammarBuilder_AddResource(This,hRuleState,pszResourceName,pszResourceValue) (This)->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue)
8355#define ISpGrammarBuilder_Commit(This,dwReserved) (This)->lpVtbl->Commit(This,dwReserved)
8356#else
8357/*** IUnknown methods ***/
8358static inline HRESULT ISpGrammarBuilder_QueryInterface(ISpGrammarBuilder* This,REFIID riid,void **ppvObject) {
8359 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8360}
8361static inline ULONG ISpGrammarBuilder_AddRef(ISpGrammarBuilder* This) {
8362 return This->lpVtbl->AddRef(This);
8363}
8364static inline ULONG ISpGrammarBuilder_Release(ISpGrammarBuilder* This) {
8365 return This->lpVtbl->Release(This);
8366}
8367/*** ISpGrammarBuilder methods ***/
8368static inline HRESULT ISpGrammarBuilder_ResetGrammar(ISpGrammarBuilder* This,WORD NewLanguage) {
8369 return This->lpVtbl->ResetGrammar(This,NewLanguage);
8370}
8371static inline HRESULT ISpGrammarBuilder_GetRule(ISpGrammarBuilder* This,LPCWSTR pszRuleName,DWORD dwRuleId,DWORD dwAttributes,WINBOOL fCreateIfNotExist,SPSTATEHANDLE *phInitialState) {
8372 return This->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState);
8373}
8374static inline HRESULT ISpGrammarBuilder_ClearRule(ISpGrammarBuilder* This,SPSTATEHANDLE hState) {
8375 return This->lpVtbl->ClearRule(This,hState);
8376}
8377static inline HRESULT ISpGrammarBuilder_CreateNewState(ISpGrammarBuilder* This,SPSTATEHANDLE hState,SPSTATEHANDLE *phState) {
8378 return This->lpVtbl->CreateNewState(This,hState,phState);
8379}
8380static inline HRESULT ISpGrammarBuilder_AddWordTransition(ISpGrammarBuilder* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,LPCWSTR psz,LPCWSTR pszSeparators,SPGRAMMARWORDTYPE eWordType,float Weight,const SPPROPERTYINFO *pPropInfo) {
8381 return This->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo);
8382}
8383static inline HRESULT ISpGrammarBuilder_AddRuleTransition(ISpGrammarBuilder* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,SPSTATEHANDLE hRule,float Weight,const SPPROPERTYINFO *pPropInfo) {
8384 return This->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo);
8385}
8386static inline HRESULT ISpGrammarBuilder_AddResource(ISpGrammarBuilder* This,SPSTATEHANDLE hRuleState,LPCWSTR pszResourceName,LPCWSTR pszResourceValue) {
8387 return This->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue);
8388}
8389static inline HRESULT ISpGrammarBuilder_Commit(ISpGrammarBuilder* This,DWORD dwReserved) {
8390 return This->lpVtbl->Commit(This,dwReserved);
8391}
8392#endif
8393#endif
8394
8395#endif
8396
8397
8398#endif /* __ISpGrammarBuilder_INTERFACE_DEFINED__ */
8399
8400typedef enum SPLOADOPTIONS {
8401 SPLO_STATIC = 0,
8402 SPLO_DYNAMIC = 1
8403} SPLOADOPTIONS;
8404/*****************************************************************************
8405 * ISpRecoGrammar interface
8406 */
8407#ifndef __ISpRecoGrammar_INTERFACE_DEFINED__
8408#define __ISpRecoGrammar_INTERFACE_DEFINED__
8409
8410DEFINE_GUID(IID_ISpRecoGrammar, 0x2177db29, 0x7f45, 0x47d0, 0x85,0x54, 0x06,0x7e,0x91,0xc8,0x05,0x02);
8411#if defined(__cplusplus) && !defined(CINTERFACE)
8412MIDL_INTERFACE("2177db29-7f45-47d0-8554-067e91c80502")
8413ISpRecoGrammar : public ISpGrammarBuilder
8414{
8415 virtual HRESULT STDMETHODCALLTYPE GetGrammarId(
8416 ULONGLONG *pullGrammarId) = 0;
8417
8418 virtual HRESULT STDMETHODCALLTYPE GetRecoContext(
8419 ISpRecoContext **ppRecoCtxt) = 0;
8420
8421 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromFile(
8422 LPCWSTR pszFileName,
8423 SPLOADOPTIONS Options) = 0;
8424
8425 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromObject(
8426 REFCLSID rcid,
8427 LPCWSTR pszGrammarName,
8428 SPLOADOPTIONS Options) = 0;
8429
8430 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromResource(
8431 HMODULE hModule,
8432 LPCWSTR pszResourceName,
8433 LPCWSTR pszResourceType,
8434 WORD wLanguage,
8435 SPLOADOPTIONS Options) = 0;
8436
8437 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromMemory(
8438 const SPBINARYGRAMMAR *pGrammar,
8439 SPLOADOPTIONS Options) = 0;
8440
8441 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromProprietaryGrammar(
8442 REFGUID rguidParam,
8443 LPCWSTR pszStringParam,
8444 const void *pvDataPrarm,
8445 ULONG cbDataSize,
8446 SPLOADOPTIONS Options) = 0;
8447
8448 virtual HRESULT STDMETHODCALLTYPE SetRuleState(
8449 LPCWSTR pszName,
8450 void *pReserved,
8451 SPRULESTATE NewState) = 0;
8452
8453 virtual HRESULT STDMETHODCALLTYPE SetRuleIdState(
8454 ULONG ulRuleId,
8455 SPRULESTATE NewState) = 0;
8456
8457 virtual HRESULT STDMETHODCALLTYPE LoadDictation(
8458 LPCWSTR pszTopicName,
8459 SPLOADOPTIONS Options) = 0;
8460
8461 virtual HRESULT STDMETHODCALLTYPE UnloadDictation(
8462 ) = 0;
8463
8464 virtual HRESULT STDMETHODCALLTYPE SetDictationState(
8465 SPRULESTATE NewState) = 0;
8466
8467 virtual HRESULT STDMETHODCALLTYPE SetWordSequenceData(
8468 const WCHAR *pText,
8469 ULONG cchText,
8470 const SPTEXTSELECTIONINFO *pInfo) = 0;
8471
8472 virtual HRESULT STDMETHODCALLTYPE SetTextSelection(
8473 const SPTEXTSELECTIONINFO *pInfo) = 0;
8474
8475 virtual HRESULT STDMETHODCALLTYPE IsPronounceable(
8476 LPCWSTR pszWord,
8477 SPWORDPRONOUNCEABLE *pWordPronounceable) = 0;
8478
8479 virtual HRESULT STDMETHODCALLTYPE SetGrammarState(
8480 SPGRAMMARSTATE eGrammarState) = 0;
8481
8482 virtual HRESULT STDMETHODCALLTYPE SaveCmd(
8483 IStream *pStream,
8484 LPWSTR *ppszCoMemErrorText) = 0;
8485
8486 virtual HRESULT STDMETHODCALLTYPE GetGrammarState(
8487 SPGRAMMARSTATE *peGrammarState) = 0;
8488
8489};
8490#ifdef __CRT_UUID_DECL
8491__CRT_UUID_DECL(ISpRecoGrammar, 0x2177db29, 0x7f45, 0x47d0, 0x85,0x54, 0x06,0x7e,0x91,0xc8,0x05,0x02)
8492#endif
8493#else
8494typedef struct ISpRecoGrammarVtbl {
8495 BEGIN_INTERFACE
8496
8497 /*** IUnknown methods ***/
8498 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8499 ISpRecoGrammar *This,
8500 REFIID riid,
8501 void **ppvObject);
8502
8503 ULONG (STDMETHODCALLTYPE *AddRef)(
8504 ISpRecoGrammar *This);
8505
8506 ULONG (STDMETHODCALLTYPE *Release)(
8507 ISpRecoGrammar *This);
8508
8509 /*** ISpGrammarBuilder methods ***/
8510 HRESULT (STDMETHODCALLTYPE *ResetGrammar)(
8511 ISpRecoGrammar *This,
8512 WORD NewLanguage);
8513
8514 HRESULT (STDMETHODCALLTYPE *GetRule)(
8515 ISpRecoGrammar *This,
8516 LPCWSTR pszRuleName,
8517 DWORD dwRuleId,
8518 DWORD dwAttributes,
8519 WINBOOL fCreateIfNotExist,
8520 SPSTATEHANDLE *phInitialState);
8521
8522 HRESULT (STDMETHODCALLTYPE *ClearRule)(
8523 ISpRecoGrammar *This,
8524 SPSTATEHANDLE hState);
8525
8526 HRESULT (STDMETHODCALLTYPE *CreateNewState)(
8527 ISpRecoGrammar *This,
8528 SPSTATEHANDLE hState,
8529 SPSTATEHANDLE *phState);
8530
8531 HRESULT (STDMETHODCALLTYPE *AddWordTransition)(
8532 ISpRecoGrammar *This,
8533 SPSTATEHANDLE hFromState,
8534 SPSTATEHANDLE hToState,
8535 LPCWSTR psz,
8536 LPCWSTR pszSeparators,
8537 SPGRAMMARWORDTYPE eWordType,
8538 float Weight,
8539 const SPPROPERTYINFO *pPropInfo);
8540
8541 HRESULT (STDMETHODCALLTYPE *AddRuleTransition)(
8542 ISpRecoGrammar *This,
8543 SPSTATEHANDLE hFromState,
8544 SPSTATEHANDLE hToState,
8545 SPSTATEHANDLE hRule,
8546 float Weight,
8547 const SPPROPERTYINFO *pPropInfo);
8548
8549 HRESULT (STDMETHODCALLTYPE *AddResource)(
8550 ISpRecoGrammar *This,
8551 SPSTATEHANDLE hRuleState,
8552 LPCWSTR pszResourceName,
8553 LPCWSTR pszResourceValue);
8554
8555 HRESULT (STDMETHODCALLTYPE *Commit)(
8556 ISpRecoGrammar *This,
8557 DWORD dwReserved);
8558
8559 /*** ISpRecoGrammar methods ***/
8560 HRESULT (STDMETHODCALLTYPE *GetGrammarId)(
8561 ISpRecoGrammar *This,
8562 ULONGLONG *pullGrammarId);
8563
8564 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
8565 ISpRecoGrammar *This,
8566 ISpRecoContext **ppRecoCtxt);
8567
8568 HRESULT (STDMETHODCALLTYPE *LoadCmdFromFile)(
8569 ISpRecoGrammar *This,
8570 LPCWSTR pszFileName,
8571 SPLOADOPTIONS Options);
8572
8573 HRESULT (STDMETHODCALLTYPE *LoadCmdFromObject)(
8574 ISpRecoGrammar *This,
8575 REFCLSID rcid,
8576 LPCWSTR pszGrammarName,
8577 SPLOADOPTIONS Options);
8578
8579 HRESULT (STDMETHODCALLTYPE *LoadCmdFromResource)(
8580 ISpRecoGrammar *This,
8581 HMODULE hModule,
8582 LPCWSTR pszResourceName,
8583 LPCWSTR pszResourceType,
8584 WORD wLanguage,
8585 SPLOADOPTIONS Options);
8586
8587 HRESULT (STDMETHODCALLTYPE *LoadCmdFromMemory)(
8588 ISpRecoGrammar *This,
8589 const SPBINARYGRAMMAR *pGrammar,
8590 SPLOADOPTIONS Options);
8591
8592 HRESULT (STDMETHODCALLTYPE *LoadCmdFromProprietaryGrammar)(
8593 ISpRecoGrammar *This,
8594 REFGUID rguidParam,
8595 LPCWSTR pszStringParam,
8596 const void *pvDataPrarm,
8597 ULONG cbDataSize,
8598 SPLOADOPTIONS Options);
8599
8600 HRESULT (STDMETHODCALLTYPE *SetRuleState)(
8601 ISpRecoGrammar *This,
8602 LPCWSTR pszName,
8603 void *pReserved,
8604 SPRULESTATE NewState);
8605
8606 HRESULT (STDMETHODCALLTYPE *SetRuleIdState)(
8607 ISpRecoGrammar *This,
8608 ULONG ulRuleId,
8609 SPRULESTATE NewState);
8610
8611 HRESULT (STDMETHODCALLTYPE *LoadDictation)(
8612 ISpRecoGrammar *This,
8613 LPCWSTR pszTopicName,
8614 SPLOADOPTIONS Options);
8615
8616 HRESULT (STDMETHODCALLTYPE *UnloadDictation)(
8617 ISpRecoGrammar *This);
8618
8619 HRESULT (STDMETHODCALLTYPE *SetDictationState)(
8620 ISpRecoGrammar *This,
8621 SPRULESTATE NewState);
8622
8623 HRESULT (STDMETHODCALLTYPE *SetWordSequenceData)(
8624 ISpRecoGrammar *This,
8625 const WCHAR *pText,
8626 ULONG cchText,
8627 const SPTEXTSELECTIONINFO *pInfo);
8628
8629 HRESULT (STDMETHODCALLTYPE *SetTextSelection)(
8630 ISpRecoGrammar *This,
8631 const SPTEXTSELECTIONINFO *pInfo);
8632
8633 HRESULT (STDMETHODCALLTYPE *IsPronounceable)(
8634 ISpRecoGrammar *This,
8635 LPCWSTR pszWord,
8636 SPWORDPRONOUNCEABLE *pWordPronounceable);
8637
8638 HRESULT (STDMETHODCALLTYPE *SetGrammarState)(
8639 ISpRecoGrammar *This,
8640 SPGRAMMARSTATE eGrammarState);
8641
8642 HRESULT (STDMETHODCALLTYPE *SaveCmd)(
8643 ISpRecoGrammar *This,
8644 IStream *pStream,
8645 LPWSTR *ppszCoMemErrorText);
8646
8647 HRESULT (STDMETHODCALLTYPE *GetGrammarState)(
8648 ISpRecoGrammar *This,
8649 SPGRAMMARSTATE *peGrammarState);
8650
8651 END_INTERFACE
8652} ISpRecoGrammarVtbl;
8653
8654interface ISpRecoGrammar {
8655 CONST_VTBL ISpRecoGrammarVtbl* lpVtbl;
8656};
8657
8658#ifdef COBJMACROS
8659#ifndef WIDL_C_INLINE_WRAPPERS
8660/*** IUnknown methods ***/
8661#define ISpRecoGrammar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8662#define ISpRecoGrammar_AddRef(This) (This)->lpVtbl->AddRef(This)
8663#define ISpRecoGrammar_Release(This) (This)->lpVtbl->Release(This)
8664/*** ISpGrammarBuilder methods ***/
8665#define ISpRecoGrammar_ResetGrammar(This,NewLanguage) (This)->lpVtbl->ResetGrammar(This,NewLanguage)
8666#define ISpRecoGrammar_GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState) (This)->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState)
8667#define ISpRecoGrammar_ClearRule(This,hState) (This)->lpVtbl->ClearRule(This,hState)
8668#define ISpRecoGrammar_CreateNewState(This,hState,phState) (This)->lpVtbl->CreateNewState(This,hState,phState)
8669#define ISpRecoGrammar_AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo) (This)->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo)
8670#define ISpRecoGrammar_AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo) (This)->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo)
8671#define ISpRecoGrammar_AddResource(This,hRuleState,pszResourceName,pszResourceValue) (This)->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue)
8672#define ISpRecoGrammar_Commit(This,dwReserved) (This)->lpVtbl->Commit(This,dwReserved)
8673/*** ISpRecoGrammar methods ***/
8674#define ISpRecoGrammar_GetGrammarId(This,pullGrammarId) (This)->lpVtbl->GetGrammarId(This,pullGrammarId)
8675#define ISpRecoGrammar_GetRecoContext(This,ppRecoCtxt) (This)->lpVtbl->GetRecoContext(This,ppRecoCtxt)
8676#define ISpRecoGrammar_LoadCmdFromFile(This,pszFileName,Options) (This)->lpVtbl->LoadCmdFromFile(This,pszFileName,Options)
8677#define ISpRecoGrammar_LoadCmdFromObject(This,rcid,pszGrammarName,Options) (This)->lpVtbl->LoadCmdFromObject(This,rcid,pszGrammarName,Options)
8678#define ISpRecoGrammar_LoadCmdFromResource(This,hModule,pszResourceName,pszResourceType,wLanguage,Options) (This)->lpVtbl->LoadCmdFromResource(This,hModule,pszResourceName,pszResourceType,wLanguage,Options)
8679#define ISpRecoGrammar_LoadCmdFromMemory(This,pGrammar,Options) (This)->lpVtbl->LoadCmdFromMemory(This,pGrammar,Options)
8680#define ISpRecoGrammar_LoadCmdFromProprietaryGrammar(This,rguidParam,pszStringParam,pvDataPrarm,cbDataSize,Options) (This)->lpVtbl->LoadCmdFromProprietaryGrammar(This,rguidParam,pszStringParam,pvDataPrarm,cbDataSize,Options)
8681#define ISpRecoGrammar_SetRuleState(This,pszName,pReserved,NewState) (This)->lpVtbl->SetRuleState(This,pszName,pReserved,NewState)
8682#define ISpRecoGrammar_SetRuleIdState(This,ulRuleId,NewState) (This)->lpVtbl->SetRuleIdState(This,ulRuleId,NewState)
8683#define ISpRecoGrammar_LoadDictation(This,pszTopicName,Options) (This)->lpVtbl->LoadDictation(This,pszTopicName,Options)
8684#define ISpRecoGrammar_UnloadDictation(This) (This)->lpVtbl->UnloadDictation(This)
8685#define ISpRecoGrammar_SetDictationState(This,NewState) (This)->lpVtbl->SetDictationState(This,NewState)
8686#define ISpRecoGrammar_SetWordSequenceData(This,pText,cchText,pInfo) (This)->lpVtbl->SetWordSequenceData(This,pText,cchText,pInfo)
8687#define ISpRecoGrammar_SetTextSelection(This,pInfo) (This)->lpVtbl->SetTextSelection(This,pInfo)
8688#define ISpRecoGrammar_IsPronounceable(This,pszWord,pWordPronounceable) (This)->lpVtbl->IsPronounceable(This,pszWord,pWordPronounceable)
8689#define ISpRecoGrammar_SetGrammarState(This,eGrammarState) (This)->lpVtbl->SetGrammarState(This,eGrammarState)
8690#define ISpRecoGrammar_SaveCmd(This,pStream,ppszCoMemErrorText) (This)->lpVtbl->SaveCmd(This,pStream,ppszCoMemErrorText)
8691#define ISpRecoGrammar_GetGrammarState(This,peGrammarState) (This)->lpVtbl->GetGrammarState(This,peGrammarState)
8692#else
8693/*** IUnknown methods ***/
8694static inline HRESULT ISpRecoGrammar_QueryInterface(ISpRecoGrammar* This,REFIID riid,void **ppvObject) {
8695 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8696}
8697static inline ULONG ISpRecoGrammar_AddRef(ISpRecoGrammar* This) {
8698 return This->lpVtbl->AddRef(This);
8699}
8700static inline ULONG ISpRecoGrammar_Release(ISpRecoGrammar* This) {
8701 return This->lpVtbl->Release(This);
8702}
8703/*** ISpGrammarBuilder methods ***/
8704static inline HRESULT ISpRecoGrammar_ResetGrammar(ISpRecoGrammar* This,WORD NewLanguage) {
8705 return This->lpVtbl->ResetGrammar(This,NewLanguage);
8706}
8707static inline HRESULT ISpRecoGrammar_GetRule(ISpRecoGrammar* This,LPCWSTR pszRuleName,DWORD dwRuleId,DWORD dwAttributes,WINBOOL fCreateIfNotExist,SPSTATEHANDLE *phInitialState) {
8708 return This->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState);
8709}
8710static inline HRESULT ISpRecoGrammar_ClearRule(ISpRecoGrammar* This,SPSTATEHANDLE hState) {
8711 return This->lpVtbl->ClearRule(This,hState);
8712}
8713static inline HRESULT ISpRecoGrammar_CreateNewState(ISpRecoGrammar* This,SPSTATEHANDLE hState,SPSTATEHANDLE *phState) {
8714 return This->lpVtbl->CreateNewState(This,hState,phState);
8715}
8716static inline HRESULT ISpRecoGrammar_AddWordTransition(ISpRecoGrammar* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,LPCWSTR psz,LPCWSTR pszSeparators,SPGRAMMARWORDTYPE eWordType,float Weight,const SPPROPERTYINFO *pPropInfo) {
8717 return This->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo);
8718}
8719static inline HRESULT ISpRecoGrammar_AddRuleTransition(ISpRecoGrammar* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,SPSTATEHANDLE hRule,float Weight,const SPPROPERTYINFO *pPropInfo) {
8720 return This->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo);
8721}
8722static inline HRESULT ISpRecoGrammar_AddResource(ISpRecoGrammar* This,SPSTATEHANDLE hRuleState,LPCWSTR pszResourceName,LPCWSTR pszResourceValue) {
8723 return This->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue);
8724}
8725static inline HRESULT ISpRecoGrammar_Commit(ISpRecoGrammar* This,DWORD dwReserved) {
8726 return This->lpVtbl->Commit(This,dwReserved);
8727}
8728/*** ISpRecoGrammar methods ***/
8729static inline HRESULT ISpRecoGrammar_GetGrammarId(ISpRecoGrammar* This,ULONGLONG *pullGrammarId) {
8730 return This->lpVtbl->GetGrammarId(This,pullGrammarId);
8731}
8732static inline HRESULT ISpRecoGrammar_GetRecoContext(ISpRecoGrammar* This,ISpRecoContext **ppRecoCtxt) {
8733 return This->lpVtbl->GetRecoContext(This,ppRecoCtxt);
8734}
8735static inline HRESULT ISpRecoGrammar_LoadCmdFromFile(ISpRecoGrammar* This,LPCWSTR pszFileName,SPLOADOPTIONS Options) {
8736 return This->lpVtbl->LoadCmdFromFile(This,pszFileName,Options);
8737}
8738static inline HRESULT ISpRecoGrammar_LoadCmdFromObject(ISpRecoGrammar* This,REFCLSID rcid,LPCWSTR pszGrammarName,SPLOADOPTIONS Options) {
8739 return This->lpVtbl->LoadCmdFromObject(This,rcid,pszGrammarName,Options);
8740}
8741static inline HRESULT ISpRecoGrammar_LoadCmdFromResource(ISpRecoGrammar* This,HMODULE hModule,LPCWSTR pszResourceName,LPCWSTR pszResourceType,WORD wLanguage,SPLOADOPTIONS Options) {
8742 return This->lpVtbl->LoadCmdFromResource(This,hModule,pszResourceName,pszResourceType,wLanguage,Options);
8743}
8744static inline HRESULT ISpRecoGrammar_LoadCmdFromMemory(ISpRecoGrammar* This,const SPBINARYGRAMMAR *pGrammar,SPLOADOPTIONS Options) {
8745 return This->lpVtbl->LoadCmdFromMemory(This,pGrammar,Options);
8746}
8747static inline HRESULT ISpRecoGrammar_LoadCmdFromProprietaryGrammar(ISpRecoGrammar* This,REFGUID rguidParam,LPCWSTR pszStringParam,const void *pvDataPrarm,ULONG cbDataSize,SPLOADOPTIONS Options) {
8748 return This->lpVtbl->LoadCmdFromProprietaryGrammar(This,rguidParam,pszStringParam,pvDataPrarm,cbDataSize,Options);
8749}
8750static inline HRESULT ISpRecoGrammar_SetRuleState(ISpRecoGrammar* This,LPCWSTR pszName,void *pReserved,SPRULESTATE NewState) {
8751 return This->lpVtbl->SetRuleState(This,pszName,pReserved,NewState);
8752}
8753static inline HRESULT ISpRecoGrammar_SetRuleIdState(ISpRecoGrammar* This,ULONG ulRuleId,SPRULESTATE NewState) {
8754 return This->lpVtbl->SetRuleIdState(This,ulRuleId,NewState);
8755}
8756static inline HRESULT ISpRecoGrammar_LoadDictation(ISpRecoGrammar* This,LPCWSTR pszTopicName,SPLOADOPTIONS Options) {
8757 return This->lpVtbl->LoadDictation(This,pszTopicName,Options);
8758}
8759static inline HRESULT ISpRecoGrammar_UnloadDictation(ISpRecoGrammar* This) {
8760 return This->lpVtbl->UnloadDictation(This);
8761}
8762static inline HRESULT ISpRecoGrammar_SetDictationState(ISpRecoGrammar* This,SPRULESTATE NewState) {
8763 return This->lpVtbl->SetDictationState(This,NewState);
8764}
8765static inline HRESULT ISpRecoGrammar_SetWordSequenceData(ISpRecoGrammar* This,const WCHAR *pText,ULONG cchText,const SPTEXTSELECTIONINFO *pInfo) {
8766 return This->lpVtbl->SetWordSequenceData(This,pText,cchText,pInfo);
8767}
8768static inline HRESULT ISpRecoGrammar_SetTextSelection(ISpRecoGrammar* This,const SPTEXTSELECTIONINFO *pInfo) {
8769 return This->lpVtbl->SetTextSelection(This,pInfo);
8770}
8771static inline HRESULT ISpRecoGrammar_IsPronounceable(ISpRecoGrammar* This,LPCWSTR pszWord,SPWORDPRONOUNCEABLE *pWordPronounceable) {
8772 return This->lpVtbl->IsPronounceable(This,pszWord,pWordPronounceable);
8773}
8774static inline HRESULT ISpRecoGrammar_SetGrammarState(ISpRecoGrammar* This,SPGRAMMARSTATE eGrammarState) {
8775 return This->lpVtbl->SetGrammarState(This,eGrammarState);
8776}
8777static inline HRESULT ISpRecoGrammar_SaveCmd(ISpRecoGrammar* This,IStream *pStream,LPWSTR *ppszCoMemErrorText) {
8778 return This->lpVtbl->SaveCmd(This,pStream,ppszCoMemErrorText);
8779}
8780static inline HRESULT ISpRecoGrammar_GetGrammarState(ISpRecoGrammar* This,SPGRAMMARSTATE *peGrammarState) {
8781 return This->lpVtbl->GetGrammarState(This,peGrammarState);
8782}
8783#endif
8784#endif
8785
8786#endif
8787
8788
8789#endif /* __ISpRecoGrammar_INTERFACE_DEFINED__ */
8790
8791typedef enum SPMATCHINGMODE {
8792 AllWords = 0,
8793 Subsequence = 1,
8794 OrderedSubset = 3,
8795 SubsequenceContentRequired = 5,
8796 OrderedSubsetContentRequired = 7
8797} SPMATCHINGMODE;
8798typedef enum PHONETICALPHABET {
8799 PA_Ipa = 0,
8800 PA_Ups = 1,
8801 PA_Sapi = 2
8802} PHONETICALPHABET;
8803/*****************************************************************************
8804 * ISpGrammarBuilder2 interface
8805 */
8806#ifndef __ISpGrammarBuilder2_INTERFACE_DEFINED__
8807#define __ISpGrammarBuilder2_INTERFACE_DEFINED__
8808
8809DEFINE_GUID(IID_ISpGrammarBuilder2, 0x8ab10026, 0x20cc, 0x4b20, 0x8c,0x22, 0xa4,0x9c,0x9b,0xa7,0x8f,0x60);
8810#if defined(__cplusplus) && !defined(CINTERFACE)
8811MIDL_INTERFACE("8ab10026-20cc-4b20-8c22-a49c9ba78f60")
8812ISpGrammarBuilder2 : public IUnknown
8813{
8814 virtual HRESULT STDMETHODCALLTYPE AddTextSubset(
8815 SPSTATEHANDLE hFromState,
8816 SPSTATEHANDLE hToState,
8817 LPCWSTR psz,
8818 SPMATCHINGMODE eMatchMode) = 0;
8819
8820 virtual HRESULT STDMETHODCALLTYPE SetPhoneticAlphabet(
8821 PHONETICALPHABET phoneticALphabet) = 0;
8822
8823};
8824#ifdef __CRT_UUID_DECL
8825__CRT_UUID_DECL(ISpGrammarBuilder2, 0x8ab10026, 0x20cc, 0x4b20, 0x8c,0x22, 0xa4,0x9c,0x9b,0xa7,0x8f,0x60)
8826#endif
8827#else
8828typedef struct ISpGrammarBuilder2Vtbl {
8829 BEGIN_INTERFACE
8830
8831 /*** IUnknown methods ***/
8832 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8833 ISpGrammarBuilder2 *This,
8834 REFIID riid,
8835 void **ppvObject);
8836
8837 ULONG (STDMETHODCALLTYPE *AddRef)(
8838 ISpGrammarBuilder2 *This);
8839
8840 ULONG (STDMETHODCALLTYPE *Release)(
8841 ISpGrammarBuilder2 *This);
8842
8843 /*** ISpGrammarBuilder2 methods ***/
8844 HRESULT (STDMETHODCALLTYPE *AddTextSubset)(
8845 ISpGrammarBuilder2 *This,
8846 SPSTATEHANDLE hFromState,
8847 SPSTATEHANDLE hToState,
8848 LPCWSTR psz,
8849 SPMATCHINGMODE eMatchMode);
8850
8851 HRESULT (STDMETHODCALLTYPE *SetPhoneticAlphabet)(
8852 ISpGrammarBuilder2 *This,
8853 PHONETICALPHABET phoneticALphabet);
8854
8855 END_INTERFACE
8856} ISpGrammarBuilder2Vtbl;
8857
8858interface ISpGrammarBuilder2 {
8859 CONST_VTBL ISpGrammarBuilder2Vtbl* lpVtbl;
8860};
8861
8862#ifdef COBJMACROS
8863#ifndef WIDL_C_INLINE_WRAPPERS
8864/*** IUnknown methods ***/
8865#define ISpGrammarBuilder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8866#define ISpGrammarBuilder2_AddRef(This) (This)->lpVtbl->AddRef(This)
8867#define ISpGrammarBuilder2_Release(This) (This)->lpVtbl->Release(This)
8868/*** ISpGrammarBuilder2 methods ***/
8869#define ISpGrammarBuilder2_AddTextSubset(This,hFromState,hToState,psz,eMatchMode) (This)->lpVtbl->AddTextSubset(This,hFromState,hToState,psz,eMatchMode)
8870#define ISpGrammarBuilder2_SetPhoneticAlphabet(This,phoneticALphabet) (This)->lpVtbl->SetPhoneticAlphabet(This,phoneticALphabet)
8871#else
8872/*** IUnknown methods ***/
8873static inline HRESULT ISpGrammarBuilder2_QueryInterface(ISpGrammarBuilder2* This,REFIID riid,void **ppvObject) {
8874 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8875}
8876static inline ULONG ISpGrammarBuilder2_AddRef(ISpGrammarBuilder2* This) {
8877 return This->lpVtbl->AddRef(This);
8878}
8879static inline ULONG ISpGrammarBuilder2_Release(ISpGrammarBuilder2* This) {
8880 return This->lpVtbl->Release(This);
8881}
8882/*** ISpGrammarBuilder2 methods ***/
8883static inline HRESULT ISpGrammarBuilder2_AddTextSubset(ISpGrammarBuilder2* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,LPCWSTR psz,SPMATCHINGMODE eMatchMode) {
8884 return This->lpVtbl->AddTextSubset(This,hFromState,hToState,psz,eMatchMode);
8885}
8886static inline HRESULT ISpGrammarBuilder2_SetPhoneticAlphabet(ISpGrammarBuilder2* This,PHONETICALPHABET phoneticALphabet) {
8887 return This->lpVtbl->SetPhoneticAlphabet(This,phoneticALphabet);
8888}
8889#endif
8890#endif
8891
8892#endif
8893
8894
8895#endif /* __ISpGrammarBuilder2_INTERFACE_DEFINED__ */
8896
8897#define SPRP_NORMAL 0
8898/*****************************************************************************
8899 * ISpRecoGrammar2 interface
8900 */
8901#ifndef __ISpRecoGrammar2_INTERFACE_DEFINED__
8902#define __ISpRecoGrammar2_INTERFACE_DEFINED__
8903
8904DEFINE_GUID(IID_ISpRecoGrammar2, 0x4b37bc9e, 0x9ed6, 0x44a3, 0x93,0xd3, 0x18,0xf0,0x22,0xb7,0x9e,0xc3);
8905#if defined(__cplusplus) && !defined(CINTERFACE)
8906MIDL_INTERFACE("4b37bc9e-9ed6-44a3-93d3-18f022b79ec3")
8907ISpRecoGrammar2 : public IUnknown
8908{
8909 virtual HRESULT STDMETHODCALLTYPE GetRules(
8910 SPRULE **ppCoMemRules,
8911 UINT *puNumRules) = 0;
8912
8913 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromFile2(
8914 LPCWSTR pszFileName,
8915 SPLOADOPTIONS Options,
8916 LPCWSTR pszSharingUri,
8917 LPCWSTR pszBaseUri) = 0;
8918
8919 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromMemory2(
8920 const SPBINARYGRAMMAR *pGrammar,
8921 SPLOADOPTIONS Options,
8922 LPCWSTR pszSharingUri,
8923 LPCWSTR pszBaseUri) = 0;
8924
8925 virtual HRESULT STDMETHODCALLTYPE SetRulePriority(
8926 LPCWSTR pszRuleName,
8927 ULONG ulRuleId,
8928 int nRulePriority) = 0;
8929
8930 virtual HRESULT STDMETHODCALLTYPE SetRuleWeight(
8931 LPCWSTR pszRuleName,
8932 ULONG ulRuleId,
8933 float flWeight) = 0;
8934
8935 virtual HRESULT STDMETHODCALLTYPE SetDictationWeight(
8936 float flWeight) = 0;
8937
8938 virtual HRESULT STDMETHODCALLTYPE SetGrammarLoader(
8939 ISpeechResourceLoader *pLoader) = 0;
8940
8941 virtual HRESULT STDMETHODCALLTYPE SetSMLSecurityManager(
8942 IInternetSecurityManager *pSMLSecurityManager) = 0;
8943
8944};
8945#ifdef __CRT_UUID_DECL
8946__CRT_UUID_DECL(ISpRecoGrammar2, 0x4b37bc9e, 0x9ed6, 0x44a3, 0x93,0xd3, 0x18,0xf0,0x22,0xb7,0x9e,0xc3)
8947#endif
8948#else
8949typedef struct ISpRecoGrammar2Vtbl {
8950 BEGIN_INTERFACE
8951
8952 /*** IUnknown methods ***/
8953 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8954 ISpRecoGrammar2 *This,
8955 REFIID riid,
8956 void **ppvObject);
8957
8958 ULONG (STDMETHODCALLTYPE *AddRef)(
8959 ISpRecoGrammar2 *This);
8960
8961 ULONG (STDMETHODCALLTYPE *Release)(
8962 ISpRecoGrammar2 *This);
8963
8964 /*** ISpRecoGrammar2 methods ***/
8965 HRESULT (STDMETHODCALLTYPE *GetRules)(
8966 ISpRecoGrammar2 *This,
8967 SPRULE **ppCoMemRules,
8968 UINT *puNumRules);
8969
8970 HRESULT (STDMETHODCALLTYPE *LoadCmdFromFile2)(
8971 ISpRecoGrammar2 *This,
8972 LPCWSTR pszFileName,
8973 SPLOADOPTIONS Options,
8974 LPCWSTR pszSharingUri,
8975 LPCWSTR pszBaseUri);
8976
8977 HRESULT (STDMETHODCALLTYPE *LoadCmdFromMemory2)(
8978 ISpRecoGrammar2 *This,
8979 const SPBINARYGRAMMAR *pGrammar,
8980 SPLOADOPTIONS Options,
8981 LPCWSTR pszSharingUri,
8982 LPCWSTR pszBaseUri);
8983
8984 HRESULT (STDMETHODCALLTYPE *SetRulePriority)(
8985 ISpRecoGrammar2 *This,
8986 LPCWSTR pszRuleName,
8987 ULONG ulRuleId,
8988 int nRulePriority);
8989
8990 HRESULT (STDMETHODCALLTYPE *SetRuleWeight)(
8991 ISpRecoGrammar2 *This,
8992 LPCWSTR pszRuleName,
8993 ULONG ulRuleId,
8994 float flWeight);
8995
8996 HRESULT (STDMETHODCALLTYPE *SetDictationWeight)(
8997 ISpRecoGrammar2 *This,
8998 float flWeight);
8999
9000 HRESULT (STDMETHODCALLTYPE *SetGrammarLoader)(
9001 ISpRecoGrammar2 *This,
9002 ISpeechResourceLoader *pLoader);
9003
9004 HRESULT (STDMETHODCALLTYPE *SetSMLSecurityManager)(
9005 ISpRecoGrammar2 *This,
9006 IInternetSecurityManager *pSMLSecurityManager);
9007
9008 END_INTERFACE
9009} ISpRecoGrammar2Vtbl;
9010
9011interface ISpRecoGrammar2 {
9012 CONST_VTBL ISpRecoGrammar2Vtbl* lpVtbl;
9013};
9014
9015#ifdef COBJMACROS
9016#ifndef WIDL_C_INLINE_WRAPPERS
9017/*** IUnknown methods ***/
9018#define ISpRecoGrammar2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9019#define ISpRecoGrammar2_AddRef(This) (This)->lpVtbl->AddRef(This)
9020#define ISpRecoGrammar2_Release(This) (This)->lpVtbl->Release(This)
9021/*** ISpRecoGrammar2 methods ***/
9022#define ISpRecoGrammar2_GetRules(This,ppCoMemRules,puNumRules) (This)->lpVtbl->GetRules(This,ppCoMemRules,puNumRules)
9023#define ISpRecoGrammar2_LoadCmdFromFile2(This,pszFileName,Options,pszSharingUri,pszBaseUri) (This)->lpVtbl->LoadCmdFromFile2(This,pszFileName,Options,pszSharingUri,pszBaseUri)
9024#define ISpRecoGrammar2_LoadCmdFromMemory2(This,pGrammar,Options,pszSharingUri,pszBaseUri) (This)->lpVtbl->LoadCmdFromMemory2(This,pGrammar,Options,pszSharingUri,pszBaseUri)
9025#define ISpRecoGrammar2_SetRulePriority(This,pszRuleName,ulRuleId,nRulePriority) (This)->lpVtbl->SetRulePriority(This,pszRuleName,ulRuleId,nRulePriority)
9026#define ISpRecoGrammar2_SetRuleWeight(This,pszRuleName,ulRuleId,flWeight) (This)->lpVtbl->SetRuleWeight(This,pszRuleName,ulRuleId,flWeight)
9027#define ISpRecoGrammar2_SetDictationWeight(This,flWeight) (This)->lpVtbl->SetDictationWeight(This,flWeight)
9028#define ISpRecoGrammar2_SetGrammarLoader(This,pLoader) (This)->lpVtbl->SetGrammarLoader(This,pLoader)
9029#define ISpRecoGrammar2_SetSMLSecurityManager(This,pSMLSecurityManager) (This)->lpVtbl->SetSMLSecurityManager(This,pSMLSecurityManager)
9030#else
9031/*** IUnknown methods ***/
9032static inline HRESULT ISpRecoGrammar2_QueryInterface(ISpRecoGrammar2* This,REFIID riid,void **ppvObject) {
9033 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9034}
9035static inline ULONG ISpRecoGrammar2_AddRef(ISpRecoGrammar2* This) {
9036 return This->lpVtbl->AddRef(This);
9037}
9038static inline ULONG ISpRecoGrammar2_Release(ISpRecoGrammar2* This) {
9039 return This->lpVtbl->Release(This);
9040}
9041/*** ISpRecoGrammar2 methods ***/
9042static inline HRESULT ISpRecoGrammar2_GetRules(ISpRecoGrammar2* This,SPRULE **ppCoMemRules,UINT *puNumRules) {
9043 return This->lpVtbl->GetRules(This,ppCoMemRules,puNumRules);
9044}
9045static inline HRESULT ISpRecoGrammar2_LoadCmdFromFile2(ISpRecoGrammar2* This,LPCWSTR pszFileName,SPLOADOPTIONS Options,LPCWSTR pszSharingUri,LPCWSTR pszBaseUri) {
9046 return This->lpVtbl->LoadCmdFromFile2(This,pszFileName,Options,pszSharingUri,pszBaseUri);
9047}
9048static inline HRESULT ISpRecoGrammar2_LoadCmdFromMemory2(ISpRecoGrammar2* This,const SPBINARYGRAMMAR *pGrammar,SPLOADOPTIONS Options,LPCWSTR pszSharingUri,LPCWSTR pszBaseUri) {
9049 return This->lpVtbl->LoadCmdFromMemory2(This,pGrammar,Options,pszSharingUri,pszBaseUri);
9050}
9051static inline HRESULT ISpRecoGrammar2_SetRulePriority(ISpRecoGrammar2* This,LPCWSTR pszRuleName,ULONG ulRuleId,int nRulePriority) {
9052 return This->lpVtbl->SetRulePriority(This,pszRuleName,ulRuleId,nRulePriority);
9053}
9054static inline HRESULT ISpRecoGrammar2_SetRuleWeight(ISpRecoGrammar2* This,LPCWSTR pszRuleName,ULONG ulRuleId,float flWeight) {
9055 return This->lpVtbl->SetRuleWeight(This,pszRuleName,ulRuleId,flWeight);
9056}
9057static inline HRESULT ISpRecoGrammar2_SetDictationWeight(ISpRecoGrammar2* This,float flWeight) {
9058 return This->lpVtbl->SetDictationWeight(This,flWeight);
9059}
9060static inline HRESULT ISpRecoGrammar2_SetGrammarLoader(ISpRecoGrammar2* This,ISpeechResourceLoader *pLoader) {
9061 return This->lpVtbl->SetGrammarLoader(This,pLoader);
9062}
9063static inline HRESULT ISpRecoGrammar2_SetSMLSecurityManager(ISpRecoGrammar2* This,IInternetSecurityManager *pSMLSecurityManager) {
9064 return This->lpVtbl->SetSMLSecurityManager(This,pSMLSecurityManager);
9065}
9066#endif
9067#endif
9068
9069#endif
9070
9071
9072#endif /* __ISpRecoGrammar2_INTERFACE_DEFINED__ */
9073
9074/*****************************************************************************
9075 * ISpeechResourceLoader interface
9076 */
9077#ifndef __ISpeechResourceLoader_INTERFACE_DEFINED__
9078#define __ISpeechResourceLoader_INTERFACE_DEFINED__
9079
9080DEFINE_GUID(IID_ISpeechResourceLoader, 0xb9ac5783, 0xfcd0, 0x4b21, 0xb1,0x19, 0xb4,0xf8,0xda,0x8f,0xd2,0xc3);
9081#if defined(__cplusplus) && !defined(CINTERFACE)
9082MIDL_INTERFACE("b9ac5783-fcd0-4b21-b119-b4f8da8fd2c3")
9083ISpeechResourceLoader : public IDispatch
9084{
9085 virtual HRESULT STDMETHODCALLTYPE LoadResource(
9086 BSTR bstrResourceUri,
9087 VARIANT_BOOL fAlwaysReload,
9088 IUnknown **pStream,
9089 BSTR *pbstrMIMEType,
9090 VARIANT_BOOL *pfModified,
9091 BSTR *pbstrRedirectUrl) = 0;
9092
9093 virtual HRESULT STDMETHODCALLTYPE GetLocalCopy(
9094 BSTR bstrResourceUri,
9095 BSTR *pbstrLocalPath,
9096 BSTR *pbstrMIMEType,
9097 BSTR *pbstrRedirectUrl) = 0;
9098
9099 virtual HRESULT STDMETHODCALLTYPE ReleaseLocalCopy(
9100 BSTR pbstrLocalPath) = 0;
9101
9102};
9103#ifdef __CRT_UUID_DECL
9104__CRT_UUID_DECL(ISpeechResourceLoader, 0xb9ac5783, 0xfcd0, 0x4b21, 0xb1,0x19, 0xb4,0xf8,0xda,0x8f,0xd2,0xc3)
9105#endif
9106#else
9107typedef struct ISpeechResourceLoaderVtbl {
9108 BEGIN_INTERFACE
9109
9110 /*** IUnknown methods ***/
9111 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9112 ISpeechResourceLoader *This,
9113 REFIID riid,
9114 void **ppvObject);
9115
9116 ULONG (STDMETHODCALLTYPE *AddRef)(
9117 ISpeechResourceLoader *This);
9118
9119 ULONG (STDMETHODCALLTYPE *Release)(
9120 ISpeechResourceLoader *This);
9121
9122 /*** IDispatch methods ***/
9123 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
9124 ISpeechResourceLoader *This,
9125 UINT *pctinfo);
9126
9127 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
9128 ISpeechResourceLoader *This,
9129 UINT iTInfo,
9130 LCID lcid,
9131 ITypeInfo **ppTInfo);
9132
9133 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
9134 ISpeechResourceLoader *This,
9135 REFIID riid,
9136 LPOLESTR *rgszNames,
9137 UINT cNames,
9138 LCID lcid,
9139 DISPID *rgDispId);
9140
9141 HRESULT (STDMETHODCALLTYPE *Invoke)(
9142 ISpeechResourceLoader *This,
9143 DISPID dispIdMember,
9144 REFIID riid,
9145 LCID lcid,
9146 WORD wFlags,
9147 DISPPARAMS *pDispParams,
9148 VARIANT *pVarResult,
9149 EXCEPINFO *pExcepInfo,
9150 UINT *puArgErr);
9151
9152 /*** ISpeechResourceLoader methods ***/
9153 HRESULT (STDMETHODCALLTYPE *LoadResource)(
9154 ISpeechResourceLoader *This,
9155 BSTR bstrResourceUri,
9156 VARIANT_BOOL fAlwaysReload,
9157 IUnknown **pStream,
9158 BSTR *pbstrMIMEType,
9159 VARIANT_BOOL *pfModified,
9160 BSTR *pbstrRedirectUrl);
9161
9162 HRESULT (STDMETHODCALLTYPE *GetLocalCopy)(
9163 ISpeechResourceLoader *This,
9164 BSTR bstrResourceUri,
9165 BSTR *pbstrLocalPath,
9166 BSTR *pbstrMIMEType,
9167 BSTR *pbstrRedirectUrl);
9168
9169 HRESULT (STDMETHODCALLTYPE *ReleaseLocalCopy)(
9170 ISpeechResourceLoader *This,
9171 BSTR pbstrLocalPath);
9172
9173 END_INTERFACE
9174} ISpeechResourceLoaderVtbl;
9175
9176interface ISpeechResourceLoader {
9177 CONST_VTBL ISpeechResourceLoaderVtbl* lpVtbl;
9178};
9179
9180#ifdef COBJMACROS
9181#ifndef WIDL_C_INLINE_WRAPPERS
9182/*** IUnknown methods ***/
9183#define ISpeechResourceLoader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9184#define ISpeechResourceLoader_AddRef(This) (This)->lpVtbl->AddRef(This)
9185#define ISpeechResourceLoader_Release(This) (This)->lpVtbl->Release(This)
9186/*** IDispatch methods ***/
9187#define ISpeechResourceLoader_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
9188#define ISpeechResourceLoader_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
9189#define ISpeechResourceLoader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
9190#define ISpeechResourceLoader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
9191/*** ISpeechResourceLoader methods ***/
9192#define ISpeechResourceLoader_LoadResource(This,bstrResourceUri,fAlwaysReload,pStream,pbstrMIMEType,pfModified,pbstrRedirectUrl) (This)->lpVtbl->LoadResource(This,bstrResourceUri,fAlwaysReload,pStream,pbstrMIMEType,pfModified,pbstrRedirectUrl)
9193#define ISpeechResourceLoader_GetLocalCopy(This,bstrResourceUri,pbstrLocalPath,pbstrMIMEType,pbstrRedirectUrl) (This)->lpVtbl->GetLocalCopy(This,bstrResourceUri,pbstrLocalPath,pbstrMIMEType,pbstrRedirectUrl)
9194#define ISpeechResourceLoader_ReleaseLocalCopy(This,pbstrLocalPath) (This)->lpVtbl->ReleaseLocalCopy(This,pbstrLocalPath)
9195#else
9196/*** IUnknown methods ***/
9197static inline HRESULT ISpeechResourceLoader_QueryInterface(ISpeechResourceLoader* This,REFIID riid,void **ppvObject) {
9198 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9199}
9200static inline ULONG ISpeechResourceLoader_AddRef(ISpeechResourceLoader* This) {
9201 return This->lpVtbl->AddRef(This);
9202}
9203static inline ULONG ISpeechResourceLoader_Release(ISpeechResourceLoader* This) {
9204 return This->lpVtbl->Release(This);
9205}
9206/*** IDispatch methods ***/
9207static inline HRESULT ISpeechResourceLoader_GetTypeInfoCount(ISpeechResourceLoader* This,UINT *pctinfo) {
9208 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
9209}
9210static inline HRESULT ISpeechResourceLoader_GetTypeInfo(ISpeechResourceLoader* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
9211 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
9212}
9213static inline HRESULT ISpeechResourceLoader_GetIDsOfNames(ISpeechResourceLoader* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
9214 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
9215}
9216static inline HRESULT ISpeechResourceLoader_Invoke(ISpeechResourceLoader* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
9217 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
9218}
9219/*** ISpeechResourceLoader methods ***/
9220static inline HRESULT ISpeechResourceLoader_LoadResource(ISpeechResourceLoader* This,BSTR bstrResourceUri,VARIANT_BOOL fAlwaysReload,IUnknown **pStream,BSTR *pbstrMIMEType,VARIANT_BOOL *pfModified,BSTR *pbstrRedirectUrl) {
9221 return This->lpVtbl->LoadResource(This,bstrResourceUri,fAlwaysReload,pStream,pbstrMIMEType,pfModified,pbstrRedirectUrl);
9222}
9223static inline HRESULT ISpeechResourceLoader_GetLocalCopy(ISpeechResourceLoader* This,BSTR bstrResourceUri,BSTR *pbstrLocalPath,BSTR *pbstrMIMEType,BSTR *pbstrRedirectUrl) {
9224 return This->lpVtbl->GetLocalCopy(This,bstrResourceUri,pbstrLocalPath,pbstrMIMEType,pbstrRedirectUrl);
9225}
9226static inline HRESULT ISpeechResourceLoader_ReleaseLocalCopy(ISpeechResourceLoader* This,BSTR pbstrLocalPath) {
9227 return This->lpVtbl->ReleaseLocalCopy(This,pbstrLocalPath);
9228}
9229#endif
9230#endif
9231
9232#endif
9233
9234
9235#endif /* __ISpeechResourceLoader_INTERFACE_DEFINED__ */
9236
9237typedef struct SPRECOCONTEXTSTATUS {
9238 SPINTERFERENCE eInterference;
9239 WCHAR szRequestTypeOfUI[255];
9240 DWORD dwReserved1;
9241 DWORD dwReserved2;
9242} SPRECOCONTEXTSTATUS;
9243typedef enum SPBOOKMARKOPTIONS {
9244 SPBO_NONE = 0,
9245 SPBO_PAUSE = 0x1,
9246 SPBO_AHEAD = 0x2,
9247 SPBO_TIME_UNITS = 0x4
9248} SPBOOKMARKOPTIONS;
9249typedef enum SPAUDIOOPTIONS {
9250 SPAO_NONE = 0,
9251 SPAO_RETAIN_AUDIO = 0x1
9252} SPAUDIOOPTIONS;
9253/*****************************************************************************
9254 * ISpRecoContext interface
9255 */
9256#ifndef __ISpRecoContext_INTERFACE_DEFINED__
9257#define __ISpRecoContext_INTERFACE_DEFINED__
9258
9259DEFINE_GUID(IID_ISpRecoContext, 0xf740a62f, 0x7c15, 0x489e, 0x82,0x34, 0x94,0x0a,0x33,0xd9,0x27,0x2d);
9260#if defined(__cplusplus) && !defined(CINTERFACE)
9261MIDL_INTERFACE("f740a62f-7c15-489e-8234-940a33d9272d")
9262ISpRecoContext : public ISpEventSource
9263{
9264 virtual HRESULT STDMETHODCALLTYPE GetRecognizer(
9265 ISpRecognizer **ppRecognizer) = 0;
9266
9267 virtual HRESULT STDMETHODCALLTYPE CreateGrammar(
9268 ULONGLONG ullGrammarId,
9269 ISpRecoGrammar **ppGrammar) = 0;
9270
9271 virtual HRESULT STDMETHODCALLTYPE GetStatus(
9272 SPRECOCONTEXTSTATUS *pStatus) = 0;
9273
9274 virtual HRESULT STDMETHODCALLTYPE GetMaxAlternates(
9275 ULONG *pcAlternates) = 0;
9276
9277 virtual HRESULT STDMETHODCALLTYPE SetMaxAlternates(
9278 ULONG cAlternates) = 0;
9279
9280 virtual HRESULT STDMETHODCALLTYPE SetAudioOptions(
9281 SPAUDIOOPTIONS Options,
9282 const GUID *pAudioFormatId,
9283 const WAVEFORMATEX *pWaveFormatEx) = 0;
9284
9285 virtual HRESULT STDMETHODCALLTYPE GetAudioOptions(
9286 SPAUDIOOPTIONS *pOptions,
9287 GUID *pAudioFormatId,
9288 WAVEFORMATEX **ppCoMemWFEX) = 0;
9289
9290 virtual HRESULT STDMETHODCALLTYPE DeserializeResult(
9291 const SPSERIALIZEDRESULT *pSerializedResult,
9292 ISpRecoResult **ppResult) = 0;
9293
9294 virtual HRESULT STDMETHODCALLTYPE Bookmark(
9295 SPBOOKMARKOPTIONS Options,
9296 ULONGLONG ullStreamPosition,
9297 LPARAM lparamEvent) = 0;
9298
9299 virtual HRESULT STDMETHODCALLTYPE SetAdaptationData(
9300 LPCWSTR pAdaptationData,
9301 const ULONG cch) = 0;
9302
9303 virtual HRESULT STDMETHODCALLTYPE Pause(
9304 DWORD dwReserved) = 0;
9305
9306 virtual HRESULT STDMETHODCALLTYPE Resume(
9307 DWORD dwReserved) = 0;
9308
9309 virtual HRESULT STDMETHODCALLTYPE SetVoice(
9310 ISpVoice *pVoice,
9311 WINBOOL fAllowFormatChanges) = 0;
9312
9313 virtual HRESULT STDMETHODCALLTYPE GetVoice(
9314 ISpVoice **ppVoice) = 0;
9315
9316 virtual HRESULT STDMETHODCALLTYPE SetVoicePurgeEvent(
9317 ULONGLONG ullEventInterest) = 0;
9318
9319 virtual HRESULT STDMETHODCALLTYPE GetVoicePurgeEvent(
9320 ULONGLONG *pullEventInterest) = 0;
9321
9322 virtual HRESULT STDMETHODCALLTYPE SetContextState(
9323 SPCONTEXTSTATE eContextState) = 0;
9324
9325 virtual HRESULT STDMETHODCALLTYPE GetContextState(
9326 SPCONTEXTSTATE *peContextState) = 0;
9327
9328};
9329#ifdef __CRT_UUID_DECL
9330__CRT_UUID_DECL(ISpRecoContext, 0xf740a62f, 0x7c15, 0x489e, 0x82,0x34, 0x94,0x0a,0x33,0xd9,0x27,0x2d)
9331#endif
9332#else
9333typedef struct ISpRecoContextVtbl {
9334 BEGIN_INTERFACE
9335
9336 /*** IUnknown methods ***/
9337 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9338 ISpRecoContext *This,
9339 REFIID riid,
9340 void **ppvObject);
9341
9342 ULONG (STDMETHODCALLTYPE *AddRef)(
9343 ISpRecoContext *This);
9344
9345 ULONG (STDMETHODCALLTYPE *Release)(
9346 ISpRecoContext *This);
9347
9348 /*** ISpNotifySource methods ***/
9349 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
9350 ISpRecoContext *This,
9351 ISpNotifySink *pNotifySink);
9352
9353 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
9354 ISpRecoContext *This,
9355 HWND hWnd,
9356 UINT Msg,
9357 WPARAM wParam,
9358 LPARAM lParam);
9359
9360 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
9361 ISpRecoContext *This,
9362 SPNOTIFYCALLBACK *pfnCallback,
9363 WPARAM wParam,
9364 LPARAM lParam);
9365
9366 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
9367 ISpRecoContext *This,
9368 ISpNotifyCallback *pSpCallback,
9369 WPARAM wParam,
9370 LPARAM lParam);
9371
9372 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
9373 ISpRecoContext *This);
9374
9375 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
9376 ISpRecoContext *This,
9377 DWORD dwMilliseconds);
9378
9379 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
9380 ISpRecoContext *This);
9381
9382 /*** ISpEventSource methods ***/
9383 HRESULT (STDMETHODCALLTYPE *SetInterest)(
9384 ISpRecoContext *This,
9385 ULONGLONG ullEventInterest,
9386 ULONGLONG ullQueuedInterest);
9387
9388 HRESULT (STDMETHODCALLTYPE *GetEvents)(
9389 ISpRecoContext *This,
9390 ULONG ulCount,
9391 SPEVENT *pEventArray,
9392 ULONG *pulFetched);
9393
9394 HRESULT (STDMETHODCALLTYPE *GetInfo)(
9395 ISpRecoContext *This,
9396 SPEVENTSOURCEINFO *pInfo);
9397
9398 /*** ISpRecoContext methods ***/
9399 HRESULT (STDMETHODCALLTYPE *GetRecognizer)(
9400 ISpRecoContext *This,
9401 ISpRecognizer **ppRecognizer);
9402
9403 HRESULT (STDMETHODCALLTYPE *CreateGrammar)(
9404 ISpRecoContext *This,
9405 ULONGLONG ullGrammarId,
9406 ISpRecoGrammar **ppGrammar);
9407
9408 HRESULT (STDMETHODCALLTYPE *GetStatus)(
9409 ISpRecoContext *This,
9410 SPRECOCONTEXTSTATUS *pStatus);
9411
9412 HRESULT (STDMETHODCALLTYPE *GetMaxAlternates)(
9413 ISpRecoContext *This,
9414 ULONG *pcAlternates);
9415
9416 HRESULT (STDMETHODCALLTYPE *SetMaxAlternates)(
9417 ISpRecoContext *This,
9418 ULONG cAlternates);
9419
9420 HRESULT (STDMETHODCALLTYPE *SetAudioOptions)(
9421 ISpRecoContext *This,
9422 SPAUDIOOPTIONS Options,
9423 const GUID *pAudioFormatId,
9424 const WAVEFORMATEX *pWaveFormatEx);
9425
9426 HRESULT (STDMETHODCALLTYPE *GetAudioOptions)(
9427 ISpRecoContext *This,
9428 SPAUDIOOPTIONS *pOptions,
9429 GUID *pAudioFormatId,
9430 WAVEFORMATEX **ppCoMemWFEX);
9431
9432 HRESULT (STDMETHODCALLTYPE *DeserializeResult)(
9433 ISpRecoContext *This,
9434 const SPSERIALIZEDRESULT *pSerializedResult,
9435 ISpRecoResult **ppResult);
9436
9437 HRESULT (STDMETHODCALLTYPE *Bookmark)(
9438 ISpRecoContext *This,
9439 SPBOOKMARKOPTIONS Options,
9440 ULONGLONG ullStreamPosition,
9441 LPARAM lparamEvent);
9442
9443 HRESULT (STDMETHODCALLTYPE *SetAdaptationData)(
9444 ISpRecoContext *This,
9445 LPCWSTR pAdaptationData,
9446 const ULONG cch);
9447
9448 HRESULT (STDMETHODCALLTYPE *Pause)(
9449 ISpRecoContext *This,
9450 DWORD dwReserved);
9451
9452 HRESULT (STDMETHODCALLTYPE *Resume)(
9453 ISpRecoContext *This,
9454 DWORD dwReserved);
9455
9456 HRESULT (STDMETHODCALLTYPE *SetVoice)(
9457 ISpRecoContext *This,
9458 ISpVoice *pVoice,
9459 WINBOOL fAllowFormatChanges);
9460
9461 HRESULT (STDMETHODCALLTYPE *GetVoice)(
9462 ISpRecoContext *This,
9463 ISpVoice **ppVoice);
9464
9465 HRESULT (STDMETHODCALLTYPE *SetVoicePurgeEvent)(
9466 ISpRecoContext *This,
9467 ULONGLONG ullEventInterest);
9468
9469 HRESULT (STDMETHODCALLTYPE *GetVoicePurgeEvent)(
9470 ISpRecoContext *This,
9471 ULONGLONG *pullEventInterest);
9472
9473 HRESULT (STDMETHODCALLTYPE *SetContextState)(
9474 ISpRecoContext *This,
9475 SPCONTEXTSTATE eContextState);
9476
9477 HRESULT (STDMETHODCALLTYPE *GetContextState)(
9478 ISpRecoContext *This,
9479 SPCONTEXTSTATE *peContextState);
9480
9481 END_INTERFACE
9482} ISpRecoContextVtbl;
9483
9484interface ISpRecoContext {
9485 CONST_VTBL ISpRecoContextVtbl* lpVtbl;
9486};
9487
9488#ifdef COBJMACROS
9489#ifndef WIDL_C_INLINE_WRAPPERS
9490/*** IUnknown methods ***/
9491#define ISpRecoContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9492#define ISpRecoContext_AddRef(This) (This)->lpVtbl->AddRef(This)
9493#define ISpRecoContext_Release(This) (This)->lpVtbl->Release(This)
9494/*** ISpNotifySource methods ***/
9495#define ISpRecoContext_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
9496#define ISpRecoContext_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
9497#define ISpRecoContext_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
9498#define ISpRecoContext_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
9499#define ISpRecoContext_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
9500#define ISpRecoContext_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
9501#define ISpRecoContext_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
9502/*** ISpEventSource methods ***/
9503#define ISpRecoContext_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
9504#define ISpRecoContext_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
9505#define ISpRecoContext_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
9506/*** ISpRecoContext methods ***/
9507#define ISpRecoContext_GetRecognizer(This,ppRecognizer) (This)->lpVtbl->GetRecognizer(This,ppRecognizer)
9508#define ISpRecoContext_CreateGrammar(This,ullGrammarId,ppGrammar) (This)->lpVtbl->CreateGrammar(This,ullGrammarId,ppGrammar)
9509#define ISpRecoContext_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
9510#define ISpRecoContext_GetMaxAlternates(This,pcAlternates) (This)->lpVtbl->GetMaxAlternates(This,pcAlternates)
9511#define ISpRecoContext_SetMaxAlternates(This,cAlternates) (This)->lpVtbl->SetMaxAlternates(This,cAlternates)
9512#define ISpRecoContext_SetAudioOptions(This,Options,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->SetAudioOptions(This,Options,pAudioFormatId,pWaveFormatEx)
9513#define ISpRecoContext_GetAudioOptions(This,pOptions,pAudioFormatId,ppCoMemWFEX) (This)->lpVtbl->GetAudioOptions(This,pOptions,pAudioFormatId,ppCoMemWFEX)
9514#define ISpRecoContext_DeserializeResult(This,pSerializedResult,ppResult) (This)->lpVtbl->DeserializeResult(This,pSerializedResult,ppResult)
9515#define ISpRecoContext_Bookmark(This,Options,ullStreamPosition,lparamEvent) (This)->lpVtbl->Bookmark(This,Options,ullStreamPosition,lparamEvent)
9516#define ISpRecoContext_SetAdaptationData(This,pAdaptationData,cch) (This)->lpVtbl->SetAdaptationData(This,pAdaptationData,cch)
9517#define ISpRecoContext_Pause(This,dwReserved) (This)->lpVtbl->Pause(This,dwReserved)
9518#define ISpRecoContext_Resume(This,dwReserved) (This)->lpVtbl->Resume(This,dwReserved)
9519#define ISpRecoContext_SetVoice(This,pVoice,fAllowFormatChanges) (This)->lpVtbl->SetVoice(This,pVoice,fAllowFormatChanges)
9520#define ISpRecoContext_GetVoice(This,ppVoice) (This)->lpVtbl->GetVoice(This,ppVoice)
9521#define ISpRecoContext_SetVoicePurgeEvent(This,ullEventInterest) (This)->lpVtbl->SetVoicePurgeEvent(This,ullEventInterest)
9522#define ISpRecoContext_GetVoicePurgeEvent(This,pullEventInterest) (This)->lpVtbl->GetVoicePurgeEvent(This,pullEventInterest)
9523#define ISpRecoContext_SetContextState(This,eContextState) (This)->lpVtbl->SetContextState(This,eContextState)
9524#define ISpRecoContext_GetContextState(This,peContextState) (This)->lpVtbl->GetContextState(This,peContextState)
9525#else
9526/*** IUnknown methods ***/
9527static inline HRESULT ISpRecoContext_QueryInterface(ISpRecoContext* This,REFIID riid,void **ppvObject) {
9528 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9529}
9530static inline ULONG ISpRecoContext_AddRef(ISpRecoContext* This) {
9531 return This->lpVtbl->AddRef(This);
9532}
9533static inline ULONG ISpRecoContext_Release(ISpRecoContext* This) {
9534 return This->lpVtbl->Release(This);
9535}
9536/*** ISpNotifySource methods ***/
9537static inline HRESULT ISpRecoContext_SetNotifySink(ISpRecoContext* This,ISpNotifySink *pNotifySink) {
9538 return This->lpVtbl->SetNotifySink(This,pNotifySink);
9539}
9540static inline HRESULT ISpRecoContext_SetNotifyWindowMessage(ISpRecoContext* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
9541 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
9542}
9543static inline HRESULT ISpRecoContext_SetNotifyCallbackFunction(ISpRecoContext* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
9544 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
9545}
9546static inline HRESULT ISpRecoContext_SetNotifyCallbackInterface(ISpRecoContext* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
9547 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
9548}
9549static inline HRESULT ISpRecoContext_SetNotifyWin32Event(ISpRecoContext* This) {
9550 return This->lpVtbl->SetNotifyWin32Event(This);
9551}
9552static inline HRESULT ISpRecoContext_WaitForNotifyEvent(ISpRecoContext* This,DWORD dwMilliseconds) {
9553 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
9554}
9555static inline HANDLE ISpRecoContext_GetNotifyEventHandle(ISpRecoContext* This) {
9556 return This->lpVtbl->GetNotifyEventHandle(This);
9557}
9558/*** ISpEventSource methods ***/
9559static inline HRESULT ISpRecoContext_SetInterest(ISpRecoContext* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
9560 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
9561}
9562static inline HRESULT ISpRecoContext_GetEvents(ISpRecoContext* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
9563 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
9564}
9565static inline HRESULT ISpRecoContext_GetInfo(ISpRecoContext* This,SPEVENTSOURCEINFO *pInfo) {
9566 return This->lpVtbl->GetInfo(This,pInfo);
9567}
9568/*** ISpRecoContext methods ***/
9569static inline HRESULT ISpRecoContext_GetRecognizer(ISpRecoContext* This,ISpRecognizer **ppRecognizer) {
9570 return This->lpVtbl->GetRecognizer(This,ppRecognizer);
9571}
9572static inline HRESULT ISpRecoContext_CreateGrammar(ISpRecoContext* This,ULONGLONG ullGrammarId,ISpRecoGrammar **ppGrammar) {
9573 return This->lpVtbl->CreateGrammar(This,ullGrammarId,ppGrammar);
9574}
9575static inline HRESULT ISpRecoContext_GetStatus(ISpRecoContext* This,SPRECOCONTEXTSTATUS *pStatus) {
9576 return This->lpVtbl->GetStatus(This,pStatus);
9577}
9578static inline HRESULT ISpRecoContext_GetMaxAlternates(ISpRecoContext* This,ULONG *pcAlternates) {
9579 return This->lpVtbl->GetMaxAlternates(This,pcAlternates);
9580}
9581static inline HRESULT ISpRecoContext_SetMaxAlternates(ISpRecoContext* This,ULONG cAlternates) {
9582 return This->lpVtbl->SetMaxAlternates(This,cAlternates);
9583}
9584static inline HRESULT ISpRecoContext_SetAudioOptions(ISpRecoContext* This,SPAUDIOOPTIONS Options,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
9585 return This->lpVtbl->SetAudioOptions(This,Options,pAudioFormatId,pWaveFormatEx);
9586}
9587static inline HRESULT ISpRecoContext_GetAudioOptions(ISpRecoContext* This,SPAUDIOOPTIONS *pOptions,GUID *pAudioFormatId,WAVEFORMATEX **ppCoMemWFEX) {
9588 return This->lpVtbl->GetAudioOptions(This,pOptions,pAudioFormatId,ppCoMemWFEX);
9589}
9590static inline HRESULT ISpRecoContext_DeserializeResult(ISpRecoContext* This,const SPSERIALIZEDRESULT *pSerializedResult,ISpRecoResult **ppResult) {
9591 return This->lpVtbl->DeserializeResult(This,pSerializedResult,ppResult);
9592}
9593static inline HRESULT ISpRecoContext_Bookmark(ISpRecoContext* This,SPBOOKMARKOPTIONS Options,ULONGLONG ullStreamPosition,LPARAM lparamEvent) {
9594 return This->lpVtbl->Bookmark(This,Options,ullStreamPosition,lparamEvent);
9595}
9596static inline HRESULT ISpRecoContext_SetAdaptationData(ISpRecoContext* This,LPCWSTR pAdaptationData,const ULONG cch) {
9597 return This->lpVtbl->SetAdaptationData(This,pAdaptationData,cch);
9598}
9599static inline HRESULT ISpRecoContext_Pause(ISpRecoContext* This,DWORD dwReserved) {
9600 return This->lpVtbl->Pause(This,dwReserved);
9601}
9602static inline HRESULT ISpRecoContext_Resume(ISpRecoContext* This,DWORD dwReserved) {
9603 return This->lpVtbl->Resume(This,dwReserved);
9604}
9605static inline HRESULT ISpRecoContext_SetVoice(ISpRecoContext* This,ISpVoice *pVoice,WINBOOL fAllowFormatChanges) {
9606 return This->lpVtbl->SetVoice(This,pVoice,fAllowFormatChanges);
9607}
9608static inline HRESULT ISpRecoContext_GetVoice(ISpRecoContext* This,ISpVoice **ppVoice) {
9609 return This->lpVtbl->GetVoice(This,ppVoice);
9610}
9611static inline HRESULT ISpRecoContext_SetVoicePurgeEvent(ISpRecoContext* This,ULONGLONG ullEventInterest) {
9612 return This->lpVtbl->SetVoicePurgeEvent(This,ullEventInterest);
9613}
9614static inline HRESULT ISpRecoContext_GetVoicePurgeEvent(ISpRecoContext* This,ULONGLONG *pullEventInterest) {
9615 return This->lpVtbl->GetVoicePurgeEvent(This,pullEventInterest);
9616}
9617static inline HRESULT ISpRecoContext_SetContextState(ISpRecoContext* This,SPCONTEXTSTATE eContextState) {
9618 return This->lpVtbl->SetContextState(This,eContextState);
9619}
9620static inline HRESULT ISpRecoContext_GetContextState(ISpRecoContext* This,SPCONTEXTSTATE *peContextState) {
9621 return This->lpVtbl->GetContextState(This,peContextState);
9622}
9623#endif
9624#endif
9625
9626#endif
9627
9628
9629#endif /* __ISpRecoContext_INTERFACE_DEFINED__ */
9630
9631typedef enum SPGRAMMAROPTIONS {
9632 SPGO_SAPI = 0x1,
9633 SPGO_SRGS = 0x2,
9634 SPGO_UPS = 0x4,
9635 SPGO_SRGS_MS_SCRIPT = 0x8,
9636 SPGO_FILE = 0x10,
9637 SPGO_HTTP = 0x20,
9638 SPGO_RES = 0x40,
9639 SPGO_OBJECT = 0x80,
9640 SPGO_SRGS_W3C_SCRIPT = 0x100,
9641 SPGO_SRGS_STG_SCRIPT = 0x200,
9642 SPGO_SRGS_SCRIPT = ((SPGO_SRGS | SPGO_SRGS_MS_SCRIPT) | SPGO_SRGS_W3C_SCRIPT) | SPGO_SRGS_STG_SCRIPT,
9643 SPGO_DEFAULT = 0x3fb,
9644 SPGO_ALL = 0x3ff
9645} SPGRAMMAROPTIONS;
9646typedef enum SPADAPTATIONSETTINGS {
9647 SPADS_Default = 0x0,
9648 SPADS_CurrentRecognizer = 0x1,
9649 SPADS_RecoProfile = 0x2,
9650 SPADS_Immediate = 0x4,
9651 SPADS_Reset = 0x8,
9652 SPADS_HighVolumeDataSource = 0x10
9653} SPADAPTATIONSETTINGS;
9654typedef enum SPADAPTATIONRELEVANCE {
9655 SPAR_Unknown = 0,
9656 SPAR_Low = 1,
9657 SPAR_Medium = 2,
9658 SPAR_High = 3
9659} SPADAPTATIONRELEVANCE;
9660/*****************************************************************************
9661 * ISpRecoContext2 interface
9662 */
9663#ifndef __ISpRecoContext2_INTERFACE_DEFINED__
9664#define __ISpRecoContext2_INTERFACE_DEFINED__
9665
9666DEFINE_GUID(IID_ISpRecoContext2, 0xbead311c, 0x52ff, 0x437f, 0x94,0x64, 0x6b,0x21,0x05,0x4c,0xa7,0x3d);
9667#if defined(__cplusplus) && !defined(CINTERFACE)
9668MIDL_INTERFACE("bead311c-52ff-437f-9464-6b21054ca73d")
9669ISpRecoContext2 : public IUnknown
9670{
9671 virtual HRESULT STDMETHODCALLTYPE SetGrammarOptions(
9672 DWORD eGrammarOptions) = 0;
9673
9674 virtual HRESULT STDMETHODCALLTYPE GetGrammarOptions(
9675 DWORD *peGrammarOptions) = 0;
9676
9677 virtual HRESULT STDMETHODCALLTYPE SetAdaptationData2(
9678 LPCWSTR pAdaptationData,
9679 const ULONG cch,
9680 LPCWSTR pTopicName,
9681 DWORD eAdaptationSettings,
9682 SPADAPTATIONRELEVANCE eRelevance) = 0;
9683
9684};
9685#ifdef __CRT_UUID_DECL
9686__CRT_UUID_DECL(ISpRecoContext2, 0xbead311c, 0x52ff, 0x437f, 0x94,0x64, 0x6b,0x21,0x05,0x4c,0xa7,0x3d)
9687#endif
9688#else
9689typedef struct ISpRecoContext2Vtbl {
9690 BEGIN_INTERFACE
9691
9692 /*** IUnknown methods ***/
9693 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9694 ISpRecoContext2 *This,
9695 REFIID riid,
9696 void **ppvObject);
9697
9698 ULONG (STDMETHODCALLTYPE *AddRef)(
9699 ISpRecoContext2 *This);
9700
9701 ULONG (STDMETHODCALLTYPE *Release)(
9702 ISpRecoContext2 *This);
9703
9704 /*** ISpRecoContext2 methods ***/
9705 HRESULT (STDMETHODCALLTYPE *SetGrammarOptions)(
9706 ISpRecoContext2 *This,
9707 DWORD eGrammarOptions);
9708
9709 HRESULT (STDMETHODCALLTYPE *GetGrammarOptions)(
9710 ISpRecoContext2 *This,
9711 DWORD *peGrammarOptions);
9712
9713 HRESULT (STDMETHODCALLTYPE *SetAdaptationData2)(
9714 ISpRecoContext2 *This,
9715 LPCWSTR pAdaptationData,
9716 const ULONG cch,
9717 LPCWSTR pTopicName,
9718 DWORD eAdaptationSettings,
9719 SPADAPTATIONRELEVANCE eRelevance);
9720
9721 END_INTERFACE
9722} ISpRecoContext2Vtbl;
9723
9724interface ISpRecoContext2 {
9725 CONST_VTBL ISpRecoContext2Vtbl* lpVtbl;
9726};
9727
9728#ifdef COBJMACROS
9729#ifndef WIDL_C_INLINE_WRAPPERS
9730/*** IUnknown methods ***/
9731#define ISpRecoContext2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9732#define ISpRecoContext2_AddRef(This) (This)->lpVtbl->AddRef(This)
9733#define ISpRecoContext2_Release(This) (This)->lpVtbl->Release(This)
9734/*** ISpRecoContext2 methods ***/
9735#define ISpRecoContext2_SetGrammarOptions(This,eGrammarOptions) (This)->lpVtbl->SetGrammarOptions(This,eGrammarOptions)
9736#define ISpRecoContext2_GetGrammarOptions(This,peGrammarOptions) (This)->lpVtbl->GetGrammarOptions(This,peGrammarOptions)
9737#define ISpRecoContext2_SetAdaptationData2(This,pAdaptationData,cch,pTopicName,eAdaptationSettings,eRelevance) (This)->lpVtbl->SetAdaptationData2(This,pAdaptationData,cch,pTopicName,eAdaptationSettings,eRelevance)
9738#else
9739/*** IUnknown methods ***/
9740static inline HRESULT ISpRecoContext2_QueryInterface(ISpRecoContext2* This,REFIID riid,void **ppvObject) {
9741 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9742}
9743static inline ULONG ISpRecoContext2_AddRef(ISpRecoContext2* This) {
9744 return This->lpVtbl->AddRef(This);
9745}
9746static inline ULONG ISpRecoContext2_Release(ISpRecoContext2* This) {
9747 return This->lpVtbl->Release(This);
9748}
9749/*** ISpRecoContext2 methods ***/
9750static inline HRESULT ISpRecoContext2_SetGrammarOptions(ISpRecoContext2* This,DWORD eGrammarOptions) {
9751 return This->lpVtbl->SetGrammarOptions(This,eGrammarOptions);
9752}
9753static inline HRESULT ISpRecoContext2_GetGrammarOptions(ISpRecoContext2* This,DWORD *peGrammarOptions) {
9754 return This->lpVtbl->GetGrammarOptions(This,peGrammarOptions);
9755}
9756static inline HRESULT ISpRecoContext2_SetAdaptationData2(ISpRecoContext2* This,LPCWSTR pAdaptationData,const ULONG cch,LPCWSTR pTopicName,DWORD eAdaptationSettings,SPADAPTATIONRELEVANCE eRelevance) {
9757 return This->lpVtbl->SetAdaptationData2(This,pAdaptationData,cch,pTopicName,eAdaptationSettings,eRelevance);
9758}
9759#endif
9760#endif
9761
9762#endif
9763
9764
9765#endif /* __ISpRecoContext2_INTERFACE_DEFINED__ */
9766
9767/*****************************************************************************
9768 * ISpProperties interface
9769 */
9770#ifndef __ISpProperties_INTERFACE_DEFINED__
9771#define __ISpProperties_INTERFACE_DEFINED__
9772
9773DEFINE_GUID(IID_ISpProperties, 0x5b4fb971, 0xb115, 0x4de1, 0xad,0x97, 0xe4,0x82,0xe3,0xbf,0x6e,0xe4);
9774#if defined(__cplusplus) && !defined(CINTERFACE)
9775MIDL_INTERFACE("5b4fb971-b115-4de1-ad97-e482e3bf6ee4")
9776ISpProperties : public IUnknown
9777{
9778 virtual HRESULT STDMETHODCALLTYPE SetPropertyNum(
9779 LPCWSTR pName,
9780 LONG lValue) = 0;
9781
9782 virtual HRESULT STDMETHODCALLTYPE GetPropertyNum(
9783 LPCWSTR pName,
9784 LONG *plValue) = 0;
9785
9786 virtual HRESULT STDMETHODCALLTYPE SetPropertyString(
9787 LPCWSTR pName,
9788 LPCWSTR pValue) = 0;
9789
9790 virtual HRESULT STDMETHODCALLTYPE GetPropertyString(
9791 LPCWSTR pName,
9792 LPWSTR *ppCoMemValue) = 0;
9793
9794};
9795#ifdef __CRT_UUID_DECL
9796__CRT_UUID_DECL(ISpProperties, 0x5b4fb971, 0xb115, 0x4de1, 0xad,0x97, 0xe4,0x82,0xe3,0xbf,0x6e,0xe4)
9797#endif
9798#else
9799typedef struct ISpPropertiesVtbl {
9800 BEGIN_INTERFACE
9801
9802 /*** IUnknown methods ***/
9803 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9804 ISpProperties *This,
9805 REFIID riid,
9806 void **ppvObject);
9807
9808 ULONG (STDMETHODCALLTYPE *AddRef)(
9809 ISpProperties *This);
9810
9811 ULONG (STDMETHODCALLTYPE *Release)(
9812 ISpProperties *This);
9813
9814 /*** ISpProperties methods ***/
9815 HRESULT (STDMETHODCALLTYPE *SetPropertyNum)(
9816 ISpProperties *This,
9817 LPCWSTR pName,
9818 LONG lValue);
9819
9820 HRESULT (STDMETHODCALLTYPE *GetPropertyNum)(
9821 ISpProperties *This,
9822 LPCWSTR pName,
9823 LONG *plValue);
9824
9825 HRESULT (STDMETHODCALLTYPE *SetPropertyString)(
9826 ISpProperties *This,
9827 LPCWSTR pName,
9828 LPCWSTR pValue);
9829
9830 HRESULT (STDMETHODCALLTYPE *GetPropertyString)(
9831 ISpProperties *This,
9832 LPCWSTR pName,
9833 LPWSTR *ppCoMemValue);
9834
9835 END_INTERFACE
9836} ISpPropertiesVtbl;
9837
9838interface ISpProperties {
9839 CONST_VTBL ISpPropertiesVtbl* lpVtbl;
9840};
9841
9842#ifdef COBJMACROS
9843#ifndef WIDL_C_INLINE_WRAPPERS
9844/*** IUnknown methods ***/
9845#define ISpProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9846#define ISpProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
9847#define ISpProperties_Release(This) (This)->lpVtbl->Release(This)
9848/*** ISpProperties methods ***/
9849#define ISpProperties_SetPropertyNum(This,pName,lValue) (This)->lpVtbl->SetPropertyNum(This,pName,lValue)
9850#define ISpProperties_GetPropertyNum(This,pName,plValue) (This)->lpVtbl->GetPropertyNum(This,pName,plValue)
9851#define ISpProperties_SetPropertyString(This,pName,pValue) (This)->lpVtbl->SetPropertyString(This,pName,pValue)
9852#define ISpProperties_GetPropertyString(This,pName,ppCoMemValue) (This)->lpVtbl->GetPropertyString(This,pName,ppCoMemValue)
9853#else
9854/*** IUnknown methods ***/
9855static inline HRESULT ISpProperties_QueryInterface(ISpProperties* This,REFIID riid,void **ppvObject) {
9856 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9857}
9858static inline ULONG ISpProperties_AddRef(ISpProperties* This) {
9859 return This->lpVtbl->AddRef(This);
9860}
9861static inline ULONG ISpProperties_Release(ISpProperties* This) {
9862 return This->lpVtbl->Release(This);
9863}
9864/*** ISpProperties methods ***/
9865static inline HRESULT ISpProperties_SetPropertyNum(ISpProperties* This,LPCWSTR pName,LONG lValue) {
9866 return This->lpVtbl->SetPropertyNum(This,pName,lValue);
9867}
9868static inline HRESULT ISpProperties_GetPropertyNum(ISpProperties* This,LPCWSTR pName,LONG *plValue) {
9869 return This->lpVtbl->GetPropertyNum(This,pName,plValue);
9870}
9871static inline HRESULT ISpProperties_SetPropertyString(ISpProperties* This,LPCWSTR pName,LPCWSTR pValue) {
9872 return This->lpVtbl->SetPropertyString(This,pName,pValue);
9873}
9874static inline HRESULT ISpProperties_GetPropertyString(ISpProperties* This,LPCWSTR pName,LPWSTR *ppCoMemValue) {
9875 return This->lpVtbl->GetPropertyString(This,pName,ppCoMemValue);
9876}
9877#endif
9878#endif
9879
9880#endif
9881
9882
9883#endif /* __ISpProperties_INTERFACE_DEFINED__ */
9884
9885#define SP_MAX_LANGIDS (20)
9886
9887typedef struct SPRECOGNIZERSTATUS {
9888 SPAUDIOSTATUS AudioStatus;
9889 ULONGLONG ullRecognitionStreamPos;
9890 ULONG ulStreamNumber;
9891 ULONG ulNumActive;
9892 CLSID clsidEngine;
9893 ULONG cLangIDs;
9894 WORD aLangID[20];
9895 ULONGLONG ullRecognitionStreamTime;
9896} SPRECOGNIZERSTATUS;
9897typedef enum SPWAVEFORMATTYPE {
9898 SPWF_INPUT = 0,
9899 SPWF_SRENGINE = 1
9900} SPSTREAMFORMATTYPE;
9901typedef enum SPRECOSTATE {
9902 SPRST_INACTIVE = 0,
9903 SPRST_ACTIVE = 1,
9904 SPRST_ACTIVE_ALWAYS = 2,
9905 SPRST_INACTIVE_WITH_PURGE = 3,
9906 SPRST_NUM_STATES = 4
9907} SPRECOSTATE;
9908/*****************************************************************************
9909 * ISpRecognizer interface
9910 */
9911#ifndef __ISpRecognizer_INTERFACE_DEFINED__
9912#define __ISpRecognizer_INTERFACE_DEFINED__
9913
9914DEFINE_GUID(IID_ISpRecognizer, 0xc2b5f241, 0xdaa0, 0x4507, 0x9e,0x16, 0x5a,0x1e,0xaa,0x2b,0x7a,0x5c);
9915#if defined(__cplusplus) && !defined(CINTERFACE)
9916MIDL_INTERFACE("c2b5f241-daa0-4507-9e16-5a1eaa2b7a5c")
9917ISpRecognizer : public ISpProperties
9918{
9919 virtual HRESULT STDMETHODCALLTYPE SetRecognizer(
9920 ISpObjectToken *pRecognizer) = 0;
9921
9922 virtual HRESULT STDMETHODCALLTYPE GetRecognizer(
9923 ISpObjectToken **ppRecognizer) = 0;
9924
9925 virtual HRESULT STDMETHODCALLTYPE SetInput(
9926 IUnknown *pUnkInput,
9927 WINBOOL fAllowFormatChanges) = 0;
9928
9929 virtual HRESULT STDMETHODCALLTYPE GetInputObjectToken(
9930 ISpObjectToken **ppToken) = 0;
9931
9932 virtual HRESULT STDMETHODCALLTYPE GetInputStream(
9933 ISpStreamFormat **ppStream) = 0;
9934
9935 virtual HRESULT STDMETHODCALLTYPE CreateRecoContext(
9936 ISpRecoContext **ppNewCtxt) = 0;
9937
9938 virtual HRESULT STDMETHODCALLTYPE GetRecoProfile(
9939 ISpObjectToken **ppToken) = 0;
9940
9941 virtual HRESULT STDMETHODCALLTYPE SetRecoProfile(
9942 ISpObjectToken *pToken) = 0;
9943
9944 virtual HRESULT STDMETHODCALLTYPE IsSharedInstance(
9945 ) = 0;
9946
9947 virtual HRESULT STDMETHODCALLTYPE GetRecoState(
9948 SPRECOSTATE *pState) = 0;
9949
9950 virtual HRESULT STDMETHODCALLTYPE SetRecoState(
9951 SPRECOSTATE NewState) = 0;
9952
9953 virtual HRESULT STDMETHODCALLTYPE GetStatus(
9954 SPRECOGNIZERSTATUS *pStatus) = 0;
9955
9956 virtual HRESULT STDMETHODCALLTYPE GetFormat(
9957 SPSTREAMFORMATTYPE WaveFormatType,
9958 GUID *pFormatId,
9959 WAVEFORMATEX **ppCoMemWFEX) = 0;
9960
9961 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
9962 LPCWSTR pszTypeOfUI,
9963 void *pvExtraData,
9964 ULONG cbExtraData,
9965 WINBOOL *pfSupported) = 0;
9966
9967 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
9968 HWND hwndParent,
9969 LPCWSTR pszTitle,
9970 LPCWSTR pszTypeOfUI,
9971 void *pvExtraData,
9972 ULONG cbExtraData) = 0;
9973
9974 virtual HRESULT STDMETHODCALLTYPE EmulateRecognition(
9975 ISpPhrase *pPhrase) = 0;
9976
9977};
9978#ifdef __CRT_UUID_DECL
9979__CRT_UUID_DECL(ISpRecognizer, 0xc2b5f241, 0xdaa0, 0x4507, 0x9e,0x16, 0x5a,0x1e,0xaa,0x2b,0x7a,0x5c)
9980#endif
9981#else
9982typedef struct ISpRecognizerVtbl {
9983 BEGIN_INTERFACE
9984
9985 /*** IUnknown methods ***/
9986 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9987 ISpRecognizer *This,
9988 REFIID riid,
9989 void **ppvObject);
9990
9991 ULONG (STDMETHODCALLTYPE *AddRef)(
9992 ISpRecognizer *This);
9993
9994 ULONG (STDMETHODCALLTYPE *Release)(
9995 ISpRecognizer *This);
9996
9997 /*** ISpProperties methods ***/
9998 HRESULT (STDMETHODCALLTYPE *SetPropertyNum)(
9999 ISpRecognizer *This,
10000 LPCWSTR pName,
10001 LONG lValue);
10002
10003 HRESULT (STDMETHODCALLTYPE *GetPropertyNum)(
10004 ISpRecognizer *This,
10005 LPCWSTR pName,
10006 LONG *plValue);
10007
10008 HRESULT (STDMETHODCALLTYPE *SetPropertyString)(
10009 ISpRecognizer *This,
10010 LPCWSTR pName,
10011 LPCWSTR pValue);
10012
10013 HRESULT (STDMETHODCALLTYPE *GetPropertyString)(
10014 ISpRecognizer *This,
10015 LPCWSTR pName,
10016 LPWSTR *ppCoMemValue);
10017
10018 /*** ISpRecognizer methods ***/
10019 HRESULT (STDMETHODCALLTYPE *SetRecognizer)(
10020 ISpRecognizer *This,
10021 ISpObjectToken *pRecognizer);
10022
10023 HRESULT (STDMETHODCALLTYPE *GetRecognizer)(
10024 ISpRecognizer *This,
10025 ISpObjectToken **ppRecognizer);
10026
10027 HRESULT (STDMETHODCALLTYPE *SetInput)(
10028 ISpRecognizer *This,
10029 IUnknown *pUnkInput,
10030 WINBOOL fAllowFormatChanges);
10031
10032 HRESULT (STDMETHODCALLTYPE *GetInputObjectToken)(
10033 ISpRecognizer *This,
10034 ISpObjectToken **ppToken);
10035
10036 HRESULT (STDMETHODCALLTYPE *GetInputStream)(
10037 ISpRecognizer *This,
10038 ISpStreamFormat **ppStream);
10039
10040 HRESULT (STDMETHODCALLTYPE *CreateRecoContext)(
10041 ISpRecognizer *This,
10042 ISpRecoContext **ppNewCtxt);
10043
10044 HRESULT (STDMETHODCALLTYPE *GetRecoProfile)(
10045 ISpRecognizer *This,
10046 ISpObjectToken **ppToken);
10047
10048 HRESULT (STDMETHODCALLTYPE *SetRecoProfile)(
10049 ISpRecognizer *This,
10050 ISpObjectToken *pToken);
10051
10052 HRESULT (STDMETHODCALLTYPE *IsSharedInstance)(
10053 ISpRecognizer *This);
10054
10055 HRESULT (STDMETHODCALLTYPE *GetRecoState)(
10056 ISpRecognizer *This,
10057 SPRECOSTATE *pState);
10058
10059 HRESULT (STDMETHODCALLTYPE *SetRecoState)(
10060 ISpRecognizer *This,
10061 SPRECOSTATE NewState);
10062
10063 HRESULT (STDMETHODCALLTYPE *GetStatus)(
10064 ISpRecognizer *This,
10065 SPRECOGNIZERSTATUS *pStatus);
10066
10067 HRESULT (STDMETHODCALLTYPE *GetFormat)(
10068 ISpRecognizer *This,
10069 SPSTREAMFORMATTYPE WaveFormatType,
10070 GUID *pFormatId,
10071 WAVEFORMATEX **ppCoMemWFEX);
10072
10073 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
10074 ISpRecognizer *This,
10075 LPCWSTR pszTypeOfUI,
10076 void *pvExtraData,
10077 ULONG cbExtraData,
10078 WINBOOL *pfSupported);
10079
10080 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
10081 ISpRecognizer *This,
10082 HWND hwndParent,
10083 LPCWSTR pszTitle,
10084 LPCWSTR pszTypeOfUI,
10085 void *pvExtraData,
10086 ULONG cbExtraData);
10087
10088 HRESULT (STDMETHODCALLTYPE *EmulateRecognition)(
10089 ISpRecognizer *This,
10090 ISpPhrase *pPhrase);
10091
10092 END_INTERFACE
10093} ISpRecognizerVtbl;
10094
10095interface ISpRecognizer {
10096 CONST_VTBL ISpRecognizerVtbl* lpVtbl;
10097};
10098
10099#ifdef COBJMACROS
10100#ifndef WIDL_C_INLINE_WRAPPERS
10101/*** IUnknown methods ***/
10102#define ISpRecognizer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10103#define ISpRecognizer_AddRef(This) (This)->lpVtbl->AddRef(This)
10104#define ISpRecognizer_Release(This) (This)->lpVtbl->Release(This)
10105/*** ISpProperties methods ***/
10106#define ISpRecognizer_SetPropertyNum(This,pName,lValue) (This)->lpVtbl->SetPropertyNum(This,pName,lValue)
10107#define ISpRecognizer_GetPropertyNum(This,pName,plValue) (This)->lpVtbl->GetPropertyNum(This,pName,plValue)
10108#define ISpRecognizer_SetPropertyString(This,pName,pValue) (This)->lpVtbl->SetPropertyString(This,pName,pValue)
10109#define ISpRecognizer_GetPropertyString(This,pName,ppCoMemValue) (This)->lpVtbl->GetPropertyString(This,pName,ppCoMemValue)
10110/*** ISpRecognizer methods ***/
10111#define ISpRecognizer_SetRecognizer(This,pRecognizer) (This)->lpVtbl->SetRecognizer(This,pRecognizer)
10112#define ISpRecognizer_GetRecognizer(This,ppRecognizer) (This)->lpVtbl->GetRecognizer(This,ppRecognizer)
10113#define ISpRecognizer_SetInput(This,pUnkInput,fAllowFormatChanges) (This)->lpVtbl->SetInput(This,pUnkInput,fAllowFormatChanges)
10114#define ISpRecognizer_GetInputObjectToken(This,ppToken) (This)->lpVtbl->GetInputObjectToken(This,ppToken)
10115#define ISpRecognizer_GetInputStream(This,ppStream) (This)->lpVtbl->GetInputStream(This,ppStream)
10116#define ISpRecognizer_CreateRecoContext(This,ppNewCtxt) (This)->lpVtbl->CreateRecoContext(This,ppNewCtxt)
10117#define ISpRecognizer_GetRecoProfile(This,ppToken) (This)->lpVtbl->GetRecoProfile(This,ppToken)
10118#define ISpRecognizer_SetRecoProfile(This,pToken) (This)->lpVtbl->SetRecoProfile(This,pToken)
10119#define ISpRecognizer_IsSharedInstance(This) (This)->lpVtbl->IsSharedInstance(This)
10120#define ISpRecognizer_GetRecoState(This,pState) (This)->lpVtbl->GetRecoState(This,pState)
10121#define ISpRecognizer_SetRecoState(This,NewState) (This)->lpVtbl->SetRecoState(This,NewState)
10122#define ISpRecognizer_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
10123#define ISpRecognizer_GetFormat(This,WaveFormatType,pFormatId,ppCoMemWFEX) (This)->lpVtbl->GetFormat(This,WaveFormatType,pFormatId,ppCoMemWFEX)
10124#define ISpRecognizer_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported)
10125#define ISpRecognizer_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData)
10126#define ISpRecognizer_EmulateRecognition(This,pPhrase) (This)->lpVtbl->EmulateRecognition(This,pPhrase)
10127#else
10128/*** IUnknown methods ***/
10129static inline HRESULT ISpRecognizer_QueryInterface(ISpRecognizer* This,REFIID riid,void **ppvObject) {
10130 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10131}
10132static inline ULONG ISpRecognizer_AddRef(ISpRecognizer* This) {
10133 return This->lpVtbl->AddRef(This);
10134}
10135static inline ULONG ISpRecognizer_Release(ISpRecognizer* This) {
10136 return This->lpVtbl->Release(This);
10137}
10138/*** ISpProperties methods ***/
10139static inline HRESULT ISpRecognizer_SetPropertyNum(ISpRecognizer* This,LPCWSTR pName,LONG lValue) {
10140 return This->lpVtbl->SetPropertyNum(This,pName,lValue);
10141}
10142static inline HRESULT ISpRecognizer_GetPropertyNum(ISpRecognizer* This,LPCWSTR pName,LONG *plValue) {
10143 return This->lpVtbl->GetPropertyNum(This,pName,plValue);
10144}
10145static inline HRESULT ISpRecognizer_SetPropertyString(ISpRecognizer* This,LPCWSTR pName,LPCWSTR pValue) {
10146 return This->lpVtbl->SetPropertyString(This,pName,pValue);
10147}
10148static inline HRESULT ISpRecognizer_GetPropertyString(ISpRecognizer* This,LPCWSTR pName,LPWSTR *ppCoMemValue) {
10149 return This->lpVtbl->GetPropertyString(This,pName,ppCoMemValue);
10150}
10151/*** ISpRecognizer methods ***/
10152static inline HRESULT ISpRecognizer_SetRecognizer(ISpRecognizer* This,ISpObjectToken *pRecognizer) {
10153 return This->lpVtbl->SetRecognizer(This,pRecognizer);
10154}
10155static inline HRESULT ISpRecognizer_GetRecognizer(ISpRecognizer* This,ISpObjectToken **ppRecognizer) {
10156 return This->lpVtbl->GetRecognizer(This,ppRecognizer);
10157}
10158static inline HRESULT ISpRecognizer_SetInput(ISpRecognizer* This,IUnknown *pUnkInput,WINBOOL fAllowFormatChanges) {
10159 return This->lpVtbl->SetInput(This,pUnkInput,fAllowFormatChanges);
10160}
10161static inline HRESULT ISpRecognizer_GetInputObjectToken(ISpRecognizer* This,ISpObjectToken **ppToken) {
10162 return This->lpVtbl->GetInputObjectToken(This,ppToken);
10163}
10164static inline HRESULT ISpRecognizer_GetInputStream(ISpRecognizer* This,ISpStreamFormat **ppStream) {
10165 return This->lpVtbl->GetInputStream(This,ppStream);
10166}
10167static inline HRESULT ISpRecognizer_CreateRecoContext(ISpRecognizer* This,ISpRecoContext **ppNewCtxt) {
10168 return This->lpVtbl->CreateRecoContext(This,ppNewCtxt);
10169}
10170static inline HRESULT ISpRecognizer_GetRecoProfile(ISpRecognizer* This,ISpObjectToken **ppToken) {
10171 return This->lpVtbl->GetRecoProfile(This,ppToken);
10172}
10173static inline HRESULT ISpRecognizer_SetRecoProfile(ISpRecognizer* This,ISpObjectToken *pToken) {
10174 return This->lpVtbl->SetRecoProfile(This,pToken);
10175}
10176static inline HRESULT ISpRecognizer_IsSharedInstance(ISpRecognizer* This) {
10177 return This->lpVtbl->IsSharedInstance(This);
10178}
10179static inline HRESULT ISpRecognizer_GetRecoState(ISpRecognizer* This,SPRECOSTATE *pState) {
10180 return This->lpVtbl->GetRecoState(This,pState);
10181}
10182static inline HRESULT ISpRecognizer_SetRecoState(ISpRecognizer* This,SPRECOSTATE NewState) {
10183 return This->lpVtbl->SetRecoState(This,NewState);
10184}
10185static inline HRESULT ISpRecognizer_GetStatus(ISpRecognizer* This,SPRECOGNIZERSTATUS *pStatus) {
10186 return This->lpVtbl->GetStatus(This,pStatus);
10187}
10188static inline HRESULT ISpRecognizer_GetFormat(ISpRecognizer* This,SPSTREAMFORMATTYPE WaveFormatType,GUID *pFormatId,WAVEFORMATEX **ppCoMemWFEX) {
10189 return This->lpVtbl->GetFormat(This,WaveFormatType,pFormatId,ppCoMemWFEX);
10190}
10191static inline HRESULT ISpRecognizer_IsUISupported(ISpRecognizer* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,WINBOOL *pfSupported) {
10192 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported);
10193}
10194static inline HRESULT ISpRecognizer_DisplayUI(ISpRecognizer* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData) {
10195 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData);
10196}
10197static inline HRESULT ISpRecognizer_EmulateRecognition(ISpRecognizer* This,ISpPhrase *pPhrase) {
10198 return This->lpVtbl->EmulateRecognition(This,pPhrase);
10199}
10200#endif
10201#endif
10202
10203#endif
10204
10205
10206#endif /* __ISpRecognizer_INTERFACE_DEFINED__ */
10207
10208/*****************************************************************************
10209 * ISpSerializeState interface
10210 */
10211#ifndef __ISpSerializeState_INTERFACE_DEFINED__
10212#define __ISpSerializeState_INTERFACE_DEFINED__
10213
10214DEFINE_GUID(IID_ISpSerializeState, 0x21b501a0, 0x0ec7, 0x46c9, 0x92,0xc3, 0xa2,0xbc,0x78,0x4c,0x54,0xb9);
10215#if defined(__cplusplus) && !defined(CINTERFACE)
10216MIDL_INTERFACE("21b501a0-0ec7-46c9-92c3-a2bc784c54b9")
10217ISpSerializeState : public IUnknown
10218{
10219 virtual HRESULT STDMETHODCALLTYPE GetSerializedState(
10220 BYTE **ppbData,
10221 ULONG *pulSize,
10222 DWORD dwReserved) = 0;
10223
10224 virtual HRESULT STDMETHODCALLTYPE SetSerializedState(
10225 BYTE *pbData,
10226 ULONG ulSize,
10227 DWORD dwReserved) = 0;
10228
10229};
10230#ifdef __CRT_UUID_DECL
10231__CRT_UUID_DECL(ISpSerializeState, 0x21b501a0, 0x0ec7, 0x46c9, 0x92,0xc3, 0xa2,0xbc,0x78,0x4c,0x54,0xb9)
10232#endif
10233#else
10234typedef struct ISpSerializeStateVtbl {
10235 BEGIN_INTERFACE
10236
10237 /*** IUnknown methods ***/
10238 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10239 ISpSerializeState *This,
10240 REFIID riid,
10241 void **ppvObject);
10242
10243 ULONG (STDMETHODCALLTYPE *AddRef)(
10244 ISpSerializeState *This);
10245
10246 ULONG (STDMETHODCALLTYPE *Release)(
10247 ISpSerializeState *This);
10248
10249 /*** ISpSerializeState methods ***/
10250 HRESULT (STDMETHODCALLTYPE *GetSerializedState)(
10251 ISpSerializeState *This,
10252 BYTE **ppbData,
10253 ULONG *pulSize,
10254 DWORD dwReserved);
10255
10256 HRESULT (STDMETHODCALLTYPE *SetSerializedState)(
10257 ISpSerializeState *This,
10258 BYTE *pbData,
10259 ULONG ulSize,
10260 DWORD dwReserved);
10261
10262 END_INTERFACE
10263} ISpSerializeStateVtbl;
10264
10265interface ISpSerializeState {
10266 CONST_VTBL ISpSerializeStateVtbl* lpVtbl;
10267};
10268
10269#ifdef COBJMACROS
10270#ifndef WIDL_C_INLINE_WRAPPERS
10271/*** IUnknown methods ***/
10272#define ISpSerializeState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10273#define ISpSerializeState_AddRef(This) (This)->lpVtbl->AddRef(This)
10274#define ISpSerializeState_Release(This) (This)->lpVtbl->Release(This)
10275/*** ISpSerializeState methods ***/
10276#define ISpSerializeState_GetSerializedState(This,ppbData,pulSize,dwReserved) (This)->lpVtbl->GetSerializedState(This,ppbData,pulSize,dwReserved)
10277#define ISpSerializeState_SetSerializedState(This,pbData,ulSize,dwReserved) (This)->lpVtbl->SetSerializedState(This,pbData,ulSize,dwReserved)
10278#else
10279/*** IUnknown methods ***/
10280static inline HRESULT ISpSerializeState_QueryInterface(ISpSerializeState* This,REFIID riid,void **ppvObject) {
10281 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10282}
10283static inline ULONG ISpSerializeState_AddRef(ISpSerializeState* This) {
10284 return This->lpVtbl->AddRef(This);
10285}
10286static inline ULONG ISpSerializeState_Release(ISpSerializeState* This) {
10287 return This->lpVtbl->Release(This);
10288}
10289/*** ISpSerializeState methods ***/
10290static inline HRESULT ISpSerializeState_GetSerializedState(ISpSerializeState* This,BYTE **ppbData,ULONG *pulSize,DWORD dwReserved) {
10291 return This->lpVtbl->GetSerializedState(This,ppbData,pulSize,dwReserved);
10292}
10293static inline HRESULT ISpSerializeState_SetSerializedState(ISpSerializeState* This,BYTE *pbData,ULONG ulSize,DWORD dwReserved) {
10294 return This->lpVtbl->SetSerializedState(This,pbData,ulSize,dwReserved);
10295}
10296#endif
10297#endif
10298
10299#endif
10300
10301
10302#endif /* __ISpSerializeState_INTERFACE_DEFINED__ */
10303
10304/*****************************************************************************
10305 * ISpRecognizer2 interface
10306 */
10307#ifndef __ISpRecognizer2_INTERFACE_DEFINED__
10308#define __ISpRecognizer2_INTERFACE_DEFINED__
10309
10310DEFINE_GUID(IID_ISpRecognizer2, 0x8fc6d974, 0xc81e, 0x4098, 0x93,0xc5, 0x01,0x47,0xf6,0x1e,0xd4,0xd3);
10311#if defined(__cplusplus) && !defined(CINTERFACE)
10312MIDL_INTERFACE("8fc6d974-c81e-4098-93c5-0147f61ed4d3")
10313ISpRecognizer2 : public IUnknown
10314{
10315 virtual HRESULT STDMETHODCALLTYPE EmulateRecognitionEx(
10316 ISpPhrase *pPhrase,
10317 DWORD dwCompareFlags) = 0;
10318
10319 virtual HRESULT STDMETHODCALLTYPE SetTrainingState(
10320 WINBOOL fDoingTraining,
10321 WINBOOL fAdaptFromTrainingData) = 0;
10322
10323 virtual HRESULT STDMETHODCALLTYPE ResetAcousticModelAdaptation(
10324 ) = 0;
10325
10326};
10327#ifdef __CRT_UUID_DECL
10328__CRT_UUID_DECL(ISpRecognizer2, 0x8fc6d974, 0xc81e, 0x4098, 0x93,0xc5, 0x01,0x47,0xf6,0x1e,0xd4,0xd3)
10329#endif
10330#else
10331typedef struct ISpRecognizer2Vtbl {
10332 BEGIN_INTERFACE
10333
10334 /*** IUnknown methods ***/
10335 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10336 ISpRecognizer2 *This,
10337 REFIID riid,
10338 void **ppvObject);
10339
10340 ULONG (STDMETHODCALLTYPE *AddRef)(
10341 ISpRecognizer2 *This);
10342
10343 ULONG (STDMETHODCALLTYPE *Release)(
10344 ISpRecognizer2 *This);
10345
10346 /*** ISpRecognizer2 methods ***/
10347 HRESULT (STDMETHODCALLTYPE *EmulateRecognitionEx)(
10348 ISpRecognizer2 *This,
10349 ISpPhrase *pPhrase,
10350 DWORD dwCompareFlags);
10351
10352 HRESULT (STDMETHODCALLTYPE *SetTrainingState)(
10353 ISpRecognizer2 *This,
10354 WINBOOL fDoingTraining,
10355 WINBOOL fAdaptFromTrainingData);
10356
10357 HRESULT (STDMETHODCALLTYPE *ResetAcousticModelAdaptation)(
10358 ISpRecognizer2 *This);
10359
10360 END_INTERFACE
10361} ISpRecognizer2Vtbl;
10362
10363interface ISpRecognizer2 {
10364 CONST_VTBL ISpRecognizer2Vtbl* lpVtbl;
10365};
10366
10367#ifdef COBJMACROS
10368#ifndef WIDL_C_INLINE_WRAPPERS
10369/*** IUnknown methods ***/
10370#define ISpRecognizer2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10371#define ISpRecognizer2_AddRef(This) (This)->lpVtbl->AddRef(This)
10372#define ISpRecognizer2_Release(This) (This)->lpVtbl->Release(This)
10373/*** ISpRecognizer2 methods ***/
10374#define ISpRecognizer2_EmulateRecognitionEx(This,pPhrase,dwCompareFlags) (This)->lpVtbl->EmulateRecognitionEx(This,pPhrase,dwCompareFlags)
10375#define ISpRecognizer2_SetTrainingState(This,fDoingTraining,fAdaptFromTrainingData) (This)->lpVtbl->SetTrainingState(This,fDoingTraining,fAdaptFromTrainingData)
10376#define ISpRecognizer2_ResetAcousticModelAdaptation(This) (This)->lpVtbl->ResetAcousticModelAdaptation(This)
10377#else
10378/*** IUnknown methods ***/
10379static inline HRESULT ISpRecognizer2_QueryInterface(ISpRecognizer2* This,REFIID riid,void **ppvObject) {
10380 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10381}
10382static inline ULONG ISpRecognizer2_AddRef(ISpRecognizer2* This) {
10383 return This->lpVtbl->AddRef(This);
10384}
10385static inline ULONG ISpRecognizer2_Release(ISpRecognizer2* This) {
10386 return This->lpVtbl->Release(This);
10387}
10388/*** ISpRecognizer2 methods ***/
10389static inline HRESULT ISpRecognizer2_EmulateRecognitionEx(ISpRecognizer2* This,ISpPhrase *pPhrase,DWORD dwCompareFlags) {
10390 return This->lpVtbl->EmulateRecognitionEx(This,pPhrase,dwCompareFlags);
10391}
10392static inline HRESULT ISpRecognizer2_SetTrainingState(ISpRecognizer2* This,WINBOOL fDoingTraining,WINBOOL fAdaptFromTrainingData) {
10393 return This->lpVtbl->SetTrainingState(This,fDoingTraining,fAdaptFromTrainingData);
10394}
10395static inline HRESULT ISpRecognizer2_ResetAcousticModelAdaptation(ISpRecognizer2* This) {
10396 return This->lpVtbl->ResetAcousticModelAdaptation(This);
10397}
10398#endif
10399#endif
10400
10401#endif
10402
10403
10404#endif /* __ISpRecognizer2_INTERFACE_DEFINED__ */
10405
10406typedef struct SPNORMALIZATIONLIST {
10407 ULONG ulSize;
10408 WCHAR **ppszzNormalizedList;
10409} SPNORMALIZATIONLIST;
10410/*****************************************************************************
10411 * ISpEnginePronunciation interface
10412 */
10413#ifndef __ISpEnginePronunciation_INTERFACE_DEFINED__
10414#define __ISpEnginePronunciation_INTERFACE_DEFINED__
10415
10416DEFINE_GUID(IID_ISpEnginePronunciation, 0xc360ce4b, 0x76d1, 0x4214, 0xad,0x68, 0x52,0x65,0x7d,0x50,0x83,0xda);
10417#if defined(__cplusplus) && !defined(CINTERFACE)
10418MIDL_INTERFACE("c360ce4b-76d1-4214-ad68-52657d5083da")
10419ISpEnginePronunciation : public IUnknown
10420{
10421 virtual HRESULT STDMETHODCALLTYPE Normalize(
10422 LPCWSTR pszWord,
10423 LPCWSTR pszLeftContext,
10424 LPCWSTR pszRightContext,
10425 WORD LangID,
10426 SPNORMALIZATIONLIST *pNormalizationList) = 0;
10427
10428 virtual HRESULT STDMETHODCALLTYPE GetPronunciations(
10429 LPCWSTR pszWord,
10430 LPCWSTR pszLeftContext,
10431 LPCWSTR pszRightContext,
10432 WORD LangID,
10433 SPWORDPRONUNCIATIONLIST *pEnginePronunciationList) = 0;
10434
10435};
10436#ifdef __CRT_UUID_DECL
10437__CRT_UUID_DECL(ISpEnginePronunciation, 0xc360ce4b, 0x76d1, 0x4214, 0xad,0x68, 0x52,0x65,0x7d,0x50,0x83,0xda)
10438#endif
10439#else
10440typedef struct ISpEnginePronunciationVtbl {
10441 BEGIN_INTERFACE
10442
10443 /*** IUnknown methods ***/
10444 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10445 ISpEnginePronunciation *This,
10446 REFIID riid,
10447 void **ppvObject);
10448
10449 ULONG (STDMETHODCALLTYPE *AddRef)(
10450 ISpEnginePronunciation *This);
10451
10452 ULONG (STDMETHODCALLTYPE *Release)(
10453 ISpEnginePronunciation *This);
10454
10455 /*** ISpEnginePronunciation methods ***/
10456 HRESULT (STDMETHODCALLTYPE *Normalize)(
10457 ISpEnginePronunciation *This,
10458 LPCWSTR pszWord,
10459 LPCWSTR pszLeftContext,
10460 LPCWSTR pszRightContext,
10461 WORD LangID,
10462 SPNORMALIZATIONLIST *pNormalizationList);
10463
10464 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
10465 ISpEnginePronunciation *This,
10466 LPCWSTR pszWord,
10467 LPCWSTR pszLeftContext,
10468 LPCWSTR pszRightContext,
10469 WORD LangID,
10470 SPWORDPRONUNCIATIONLIST *pEnginePronunciationList);
10471
10472 END_INTERFACE
10473} ISpEnginePronunciationVtbl;
10474
10475interface ISpEnginePronunciation {
10476 CONST_VTBL ISpEnginePronunciationVtbl* lpVtbl;
10477};
10478
10479#ifdef COBJMACROS
10480#ifndef WIDL_C_INLINE_WRAPPERS
10481/*** IUnknown methods ***/
10482#define ISpEnginePronunciation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10483#define ISpEnginePronunciation_AddRef(This) (This)->lpVtbl->AddRef(This)
10484#define ISpEnginePronunciation_Release(This) (This)->lpVtbl->Release(This)
10485/*** ISpEnginePronunciation methods ***/
10486#define ISpEnginePronunciation_Normalize(This,pszWord,pszLeftContext,pszRightContext,LangID,pNormalizationList) (This)->lpVtbl->Normalize(This,pszWord,pszLeftContext,pszRightContext,LangID,pNormalizationList)
10487#define ISpEnginePronunciation_GetPronunciations(This,pszWord,pszLeftContext,pszRightContext,LangID,pEnginePronunciationList) (This)->lpVtbl->GetPronunciations(This,pszWord,pszLeftContext,pszRightContext,LangID,pEnginePronunciationList)
10488#else
10489/*** IUnknown methods ***/
10490static inline HRESULT ISpEnginePronunciation_QueryInterface(ISpEnginePronunciation* This,REFIID riid,void **ppvObject) {
10491 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10492}
10493static inline ULONG ISpEnginePronunciation_AddRef(ISpEnginePronunciation* This) {
10494 return This->lpVtbl->AddRef(This);
10495}
10496static inline ULONG ISpEnginePronunciation_Release(ISpEnginePronunciation* This) {
10497 return This->lpVtbl->Release(This);
10498}
10499/*** ISpEnginePronunciation methods ***/
10500static inline HRESULT ISpEnginePronunciation_Normalize(ISpEnginePronunciation* This,LPCWSTR pszWord,LPCWSTR pszLeftContext,LPCWSTR pszRightContext,WORD LangID,SPNORMALIZATIONLIST *pNormalizationList) {
10501 return This->lpVtbl->Normalize(This,pszWord,pszLeftContext,pszRightContext,LangID,pNormalizationList);
10502}
10503static inline HRESULT ISpEnginePronunciation_GetPronunciations(ISpEnginePronunciation* This,LPCWSTR pszWord,LPCWSTR pszLeftContext,LPCWSTR pszRightContext,WORD LangID,SPWORDPRONUNCIATIONLIST *pEnginePronunciationList) {
10504 return This->lpVtbl->GetPronunciations(This,pszWord,pszLeftContext,pszRightContext,LangID,pEnginePronunciationList);
10505}
10506#endif
10507#endif
10508
10509#endif
10510
10511
10512#endif /* __ISpEnginePronunciation_INTERFACE_DEFINED__ */
10513
10514typedef struct SPDISPLAYTOKEN {
10515 const WCHAR *pszLexical;
10516 const WCHAR *pszDisplay;
10517 BYTE bDisplayAttributes;
10518} SPDISPLAYTOKEN;
10519typedef struct SPDISPLAYPHRASE {
10520 ULONG ulNumTokens;
10521 SPDISPLAYTOKEN *pTokens;
10522} SPDISPLAYPHRASE;
10523/*****************************************************************************
10524 * ISpDisplayAlternates interface
10525 */
10526#ifndef __ISpDisplayAlternates_INTERFACE_DEFINED__
10527#define __ISpDisplayAlternates_INTERFACE_DEFINED__
10528
10529DEFINE_GUID(IID_ISpDisplayAlternates, 0xc8d7c7e2, 0x0dde, 0x44b7, 0xaf,0xe3, 0xb0,0xc9,0x91,0xfb,0xeb,0x5e);
10530#if defined(__cplusplus) && !defined(CINTERFACE)
10531MIDL_INTERFACE("c8d7c7e2-0dde-44b7-afe3-b0c991fbeb5e")
10532ISpDisplayAlternates : public IUnknown
10533{
10534 virtual HRESULT STDMETHODCALLTYPE GetDisplayAlternates(
10535 const SPDISPLAYPHRASE *pPhrase,
10536 ULONG cRequestCount,
10537 SPDISPLAYPHRASE **ppCoMemPhrases,
10538 ULONG *pcPhrasesReturned) = 0;
10539
10540 virtual HRESULT STDMETHODCALLTYPE SetFullStopTrailSpace(
10541 ULONG ulTrailSpace) = 0;
10542
10543};
10544#ifdef __CRT_UUID_DECL
10545__CRT_UUID_DECL(ISpDisplayAlternates, 0xc8d7c7e2, 0x0dde, 0x44b7, 0xaf,0xe3, 0xb0,0xc9,0x91,0xfb,0xeb,0x5e)
10546#endif
10547#else
10548typedef struct ISpDisplayAlternatesVtbl {
10549 BEGIN_INTERFACE
10550
10551 /*** IUnknown methods ***/
10552 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10553 ISpDisplayAlternates *This,
10554 REFIID riid,
10555 void **ppvObject);
10556
10557 ULONG (STDMETHODCALLTYPE *AddRef)(
10558 ISpDisplayAlternates *This);
10559
10560 ULONG (STDMETHODCALLTYPE *Release)(
10561 ISpDisplayAlternates *This);
10562
10563 /*** ISpDisplayAlternates methods ***/
10564 HRESULT (STDMETHODCALLTYPE *GetDisplayAlternates)(
10565 ISpDisplayAlternates *This,
10566 const SPDISPLAYPHRASE *pPhrase,
10567 ULONG cRequestCount,
10568 SPDISPLAYPHRASE **ppCoMemPhrases,
10569 ULONG *pcPhrasesReturned);
10570
10571 HRESULT (STDMETHODCALLTYPE *SetFullStopTrailSpace)(
10572 ISpDisplayAlternates *This,
10573 ULONG ulTrailSpace);
10574
10575 END_INTERFACE
10576} ISpDisplayAlternatesVtbl;
10577
10578interface ISpDisplayAlternates {
10579 CONST_VTBL ISpDisplayAlternatesVtbl* lpVtbl;
10580};
10581
10582#ifdef COBJMACROS
10583#ifndef WIDL_C_INLINE_WRAPPERS
10584/*** IUnknown methods ***/
10585#define ISpDisplayAlternates_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10586#define ISpDisplayAlternates_AddRef(This) (This)->lpVtbl->AddRef(This)
10587#define ISpDisplayAlternates_Release(This) (This)->lpVtbl->Release(This)
10588/*** ISpDisplayAlternates methods ***/
10589#define ISpDisplayAlternates_GetDisplayAlternates(This,pPhrase,cRequestCount,ppCoMemPhrases,pcPhrasesReturned) (This)->lpVtbl->GetDisplayAlternates(This,pPhrase,cRequestCount,ppCoMemPhrases,pcPhrasesReturned)
10590#define ISpDisplayAlternates_SetFullStopTrailSpace(This,ulTrailSpace) (This)->lpVtbl->SetFullStopTrailSpace(This,ulTrailSpace)
10591#else
10592/*** IUnknown methods ***/
10593static inline HRESULT ISpDisplayAlternates_QueryInterface(ISpDisplayAlternates* This,REFIID riid,void **ppvObject) {
10594 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10595}
10596static inline ULONG ISpDisplayAlternates_AddRef(ISpDisplayAlternates* This) {
10597 return This->lpVtbl->AddRef(This);
10598}
10599static inline ULONG ISpDisplayAlternates_Release(ISpDisplayAlternates* This) {
10600 return This->lpVtbl->Release(This);
10601}
10602/*** ISpDisplayAlternates methods ***/
10603static inline HRESULT ISpDisplayAlternates_GetDisplayAlternates(ISpDisplayAlternates* This,const SPDISPLAYPHRASE *pPhrase,ULONG cRequestCount,SPDISPLAYPHRASE **ppCoMemPhrases,ULONG *pcPhrasesReturned) {
10604 return This->lpVtbl->GetDisplayAlternates(This,pPhrase,cRequestCount,ppCoMemPhrases,pcPhrasesReturned);
10605}
10606static inline HRESULT ISpDisplayAlternates_SetFullStopTrailSpace(ISpDisplayAlternates* This,ULONG ulTrailSpace) {
10607 return This->lpVtbl->SetFullStopTrailSpace(This,ulTrailSpace);
10608}
10609#endif
10610#endif
10611
10612#endif
10613
10614
10615#endif /* __ISpDisplayAlternates_INTERFACE_DEFINED__ */
10616
10617#ifndef __SpeechLib_LIBRARY_DEFINED__
10618#define __SpeechLib_LIBRARY_DEFINED__
10619
10620DEFINE_GUID(LIBID_SpeechLib, 0xc866ca3a, 0x32f7, 0x11d2, 0x96,0x02, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
10621
10622#ifndef __ISpeechDataKey_FWD_DEFINED__
10623#define __ISpeechDataKey_FWD_DEFINED__
10624typedef interface ISpeechDataKey ISpeechDataKey;
10625#ifdef __cplusplus
10626interface ISpeechDataKey;
10627#endif /* __cplusplus */
10628#endif
10629
10630#ifndef __ISpeechObjectToken_FWD_DEFINED__
10631#define __ISpeechObjectToken_FWD_DEFINED__
10632typedef interface ISpeechObjectToken ISpeechObjectToken;
10633#ifdef __cplusplus
10634interface ISpeechObjectToken;
10635#endif /* __cplusplus */
10636#endif
10637
10638#ifndef __ISpeechObjectTokens_FWD_DEFINED__
10639#define __ISpeechObjectTokens_FWD_DEFINED__
10640typedef interface ISpeechObjectTokens ISpeechObjectTokens;
10641#ifdef __cplusplus
10642interface ISpeechObjectTokens;
10643#endif /* __cplusplus */
10644#endif
10645
10646#ifndef __ISpeechObjectTokenCategory_FWD_DEFINED__
10647#define __ISpeechObjectTokenCategory_FWD_DEFINED__
10648typedef interface ISpeechObjectTokenCategory ISpeechObjectTokenCategory;
10649#ifdef __cplusplus
10650interface ISpeechObjectTokenCategory;
10651#endif /* __cplusplus */
10652#endif
10653
10654#ifndef __ISpeechAudioBufferInfo_FWD_DEFINED__
10655#define __ISpeechAudioBufferInfo_FWD_DEFINED__
10656typedef interface ISpeechAudioBufferInfo ISpeechAudioBufferInfo;
10657#ifdef __cplusplus
10658interface ISpeechAudioBufferInfo;
10659#endif /* __cplusplus */
10660#endif
10661
10662#ifndef __ISpeechAudioStatus_FWD_DEFINED__
10663#define __ISpeechAudioStatus_FWD_DEFINED__
10664typedef interface ISpeechAudioStatus ISpeechAudioStatus;
10665#ifdef __cplusplus
10666interface ISpeechAudioStatus;
10667#endif /* __cplusplus */
10668#endif
10669
10670#ifndef __ISpeechAudioFormat_FWD_DEFINED__
10671#define __ISpeechAudioFormat_FWD_DEFINED__
10672typedef interface ISpeechAudioFormat ISpeechAudioFormat;
10673#ifdef __cplusplus
10674interface ISpeechAudioFormat;
10675#endif /* __cplusplus */
10676#endif
10677
10678#ifndef __ISpeechWaveFormatEx_FWD_DEFINED__
10679#define __ISpeechWaveFormatEx_FWD_DEFINED__
10680typedef interface ISpeechWaveFormatEx ISpeechWaveFormatEx;
10681#ifdef __cplusplus
10682interface ISpeechWaveFormatEx;
10683#endif /* __cplusplus */
10684#endif
10685
10686#ifndef __ISpeechBaseStream_FWD_DEFINED__
10687#define __ISpeechBaseStream_FWD_DEFINED__
10688typedef interface ISpeechBaseStream ISpeechBaseStream;
10689#ifdef __cplusplus
10690interface ISpeechBaseStream;
10691#endif /* __cplusplus */
10692#endif
10693
10694#ifndef __ISpeechFileStream_FWD_DEFINED__
10695#define __ISpeechFileStream_FWD_DEFINED__
10696typedef interface ISpeechFileStream ISpeechFileStream;
10697#ifdef __cplusplus
10698interface ISpeechFileStream;
10699#endif /* __cplusplus */
10700#endif
10701
10702#ifndef __ISpeechMemoryStream_FWD_DEFINED__
10703#define __ISpeechMemoryStream_FWD_DEFINED__
10704typedef interface ISpeechMemoryStream ISpeechMemoryStream;
10705#ifdef __cplusplus
10706interface ISpeechMemoryStream;
10707#endif /* __cplusplus */
10708#endif
10709
10710#ifndef __ISpeechCustomStream_FWD_DEFINED__
10711#define __ISpeechCustomStream_FWD_DEFINED__
10712typedef interface ISpeechCustomStream ISpeechCustomStream;
10713#ifdef __cplusplus
10714interface ISpeechCustomStream;
10715#endif /* __cplusplus */
10716#endif
10717
10718#ifndef __ISpeechAudio_FWD_DEFINED__
10719#define __ISpeechAudio_FWD_DEFINED__
10720typedef interface ISpeechAudio ISpeechAudio;
10721#ifdef __cplusplus
10722interface ISpeechAudio;
10723#endif /* __cplusplus */
10724#endif
10725
10726#ifndef __ISpeechMMSysAudio_FWD_DEFINED__
10727#define __ISpeechMMSysAudio_FWD_DEFINED__
10728typedef interface ISpeechMMSysAudio ISpeechMMSysAudio;
10729#ifdef __cplusplus
10730interface ISpeechMMSysAudio;
10731#endif /* __cplusplus */
10732#endif
10733
10734#ifndef __ISpeechVoice_FWD_DEFINED__
10735#define __ISpeechVoice_FWD_DEFINED__
10736typedef interface ISpeechVoice ISpeechVoice;
10737#ifdef __cplusplus
10738interface ISpeechVoice;
10739#endif /* __cplusplus */
10740#endif
10741
10742#ifndef __ISpeechVoiceStatus_FWD_DEFINED__
10743#define __ISpeechVoiceStatus_FWD_DEFINED__
10744typedef interface ISpeechVoiceStatus ISpeechVoiceStatus;
10745#ifdef __cplusplus
10746interface ISpeechVoiceStatus;
10747#endif /* __cplusplus */
10748#endif
10749
10750#ifndef ___ISpeechVoiceEvents_FWD_DEFINED__
10751#define ___ISpeechVoiceEvents_FWD_DEFINED__
10752typedef interface _ISpeechVoiceEvents _ISpeechVoiceEvents;
10753#ifdef __cplusplus
10754interface _ISpeechVoiceEvents;
10755#endif /* __cplusplus */
10756#endif
10757
10758#ifndef __ISpeechRecognizer_FWD_DEFINED__
10759#define __ISpeechRecognizer_FWD_DEFINED__
10760typedef interface ISpeechRecognizer ISpeechRecognizer;
10761#ifdef __cplusplus
10762interface ISpeechRecognizer;
10763#endif /* __cplusplus */
10764#endif
10765
10766#ifndef __ISpeechRecognizerStatus_FWD_DEFINED__
10767#define __ISpeechRecognizerStatus_FWD_DEFINED__
10768typedef interface ISpeechRecognizerStatus ISpeechRecognizerStatus;
10769#ifdef __cplusplus
10770interface ISpeechRecognizerStatus;
10771#endif /* __cplusplus */
10772#endif
10773
10774#ifndef __ISpeechRecoContext_FWD_DEFINED__
10775#define __ISpeechRecoContext_FWD_DEFINED__
10776typedef interface ISpeechRecoContext ISpeechRecoContext;
10777#ifdef __cplusplus
10778interface ISpeechRecoContext;
10779#endif /* __cplusplus */
10780#endif
10781
10782#ifndef __ISpeechRecoGrammar_FWD_DEFINED__
10783#define __ISpeechRecoGrammar_FWD_DEFINED__
10784typedef interface ISpeechRecoGrammar ISpeechRecoGrammar;
10785#ifdef __cplusplus
10786interface ISpeechRecoGrammar;
10787#endif /* __cplusplus */
10788#endif
10789
10790#ifndef ___ISpeechRecoContextEvents_FWD_DEFINED__
10791#define ___ISpeechRecoContextEvents_FWD_DEFINED__
10792typedef interface _ISpeechRecoContextEvents _ISpeechRecoContextEvents;
10793#ifdef __cplusplus
10794interface _ISpeechRecoContextEvents;
10795#endif /* __cplusplus */
10796#endif
10797
10798#ifndef __ISpeechGrammarRule_FWD_DEFINED__
10799#define __ISpeechGrammarRule_FWD_DEFINED__
10800typedef interface ISpeechGrammarRule ISpeechGrammarRule;
10801#ifdef __cplusplus
10802interface ISpeechGrammarRule;
10803#endif /* __cplusplus */
10804#endif
10805
10806#ifndef __ISpeechGrammarRules_FWD_DEFINED__
10807#define __ISpeechGrammarRules_FWD_DEFINED__
10808typedef interface ISpeechGrammarRules ISpeechGrammarRules;
10809#ifdef __cplusplus
10810interface ISpeechGrammarRules;
10811#endif /* __cplusplus */
10812#endif
10813
10814#ifndef __ISpeechGrammarRuleState_FWD_DEFINED__
10815#define __ISpeechGrammarRuleState_FWD_DEFINED__
10816typedef interface ISpeechGrammarRuleState ISpeechGrammarRuleState;
10817#ifdef __cplusplus
10818interface ISpeechGrammarRuleState;
10819#endif /* __cplusplus */
10820#endif
10821
10822#ifndef __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
10823#define __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
10824typedef interface ISpeechGrammarRuleStateTransition ISpeechGrammarRuleStateTransition;
10825#ifdef __cplusplus
10826interface ISpeechGrammarRuleStateTransition;
10827#endif /* __cplusplus */
10828#endif
10829
10830#ifndef __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
10831#define __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
10832typedef interface ISpeechGrammarRuleStateTransitions ISpeechGrammarRuleStateTransitions;
10833#ifdef __cplusplus
10834interface ISpeechGrammarRuleStateTransitions;
10835#endif /* __cplusplus */
10836#endif
10837
10838#ifndef __ISpeechTextSelectionInformation_FWD_DEFINED__
10839#define __ISpeechTextSelectionInformation_FWD_DEFINED__
10840typedef interface ISpeechTextSelectionInformation ISpeechTextSelectionInformation;
10841#ifdef __cplusplus
10842interface ISpeechTextSelectionInformation;
10843#endif /* __cplusplus */
10844#endif
10845
10846#ifndef __ISpeechRecoResult_FWD_DEFINED__
10847#define __ISpeechRecoResult_FWD_DEFINED__
10848typedef interface ISpeechRecoResult ISpeechRecoResult;
10849#ifdef __cplusplus
10850interface ISpeechRecoResult;
10851#endif /* __cplusplus */
10852#endif
10853
10854#ifndef __ISpeechRecoResult2_FWD_DEFINED__
10855#define __ISpeechRecoResult2_FWD_DEFINED__
10856typedef interface ISpeechRecoResult2 ISpeechRecoResult2;
10857#ifdef __cplusplus
10858interface ISpeechRecoResult2;
10859#endif /* __cplusplus */
10860#endif
10861
10862#ifndef __ISpeechRecoResultTimes_FWD_DEFINED__
10863#define __ISpeechRecoResultTimes_FWD_DEFINED__
10864typedef interface ISpeechRecoResultTimes ISpeechRecoResultTimes;
10865#ifdef __cplusplus
10866interface ISpeechRecoResultTimes;
10867#endif /* __cplusplus */
10868#endif
10869
10870#ifndef __ISpeechPhraseAlternate_FWD_DEFINED__
10871#define __ISpeechPhraseAlternate_FWD_DEFINED__
10872typedef interface ISpeechPhraseAlternate ISpeechPhraseAlternate;
10873#ifdef __cplusplus
10874interface ISpeechPhraseAlternate;
10875#endif /* __cplusplus */
10876#endif
10877
10878#ifndef __ISpeechPhraseAlternates_FWD_DEFINED__
10879#define __ISpeechPhraseAlternates_FWD_DEFINED__
10880typedef interface ISpeechPhraseAlternates ISpeechPhraseAlternates;
10881#ifdef __cplusplus
10882interface ISpeechPhraseAlternates;
10883#endif /* __cplusplus */
10884#endif
10885
10886#ifndef __ISpeechPhraseInfo_FWD_DEFINED__
10887#define __ISpeechPhraseInfo_FWD_DEFINED__
10888typedef interface ISpeechPhraseInfo ISpeechPhraseInfo;
10889#ifdef __cplusplus
10890interface ISpeechPhraseInfo;
10891#endif /* __cplusplus */
10892#endif
10893
10894#ifndef __ISpeechPhraseElement_FWD_DEFINED__
10895#define __ISpeechPhraseElement_FWD_DEFINED__
10896typedef interface ISpeechPhraseElement ISpeechPhraseElement;
10897#ifdef __cplusplus
10898interface ISpeechPhraseElement;
10899#endif /* __cplusplus */
10900#endif
10901
10902#ifndef __ISpeechPhraseElements_FWD_DEFINED__
10903#define __ISpeechPhraseElements_FWD_DEFINED__
10904typedef interface ISpeechPhraseElements ISpeechPhraseElements;
10905#ifdef __cplusplus
10906interface ISpeechPhraseElements;
10907#endif /* __cplusplus */
10908#endif
10909
10910#ifndef __ISpeechPhraseReplacement_FWD_DEFINED__
10911#define __ISpeechPhraseReplacement_FWD_DEFINED__
10912typedef interface ISpeechPhraseReplacement ISpeechPhraseReplacement;
10913#ifdef __cplusplus
10914interface ISpeechPhraseReplacement;
10915#endif /* __cplusplus */
10916#endif
10917
10918#ifndef __ISpeechPhraseReplacements_FWD_DEFINED__
10919#define __ISpeechPhraseReplacements_FWD_DEFINED__
10920typedef interface ISpeechPhraseReplacements ISpeechPhraseReplacements;
10921#ifdef __cplusplus
10922interface ISpeechPhraseReplacements;
10923#endif /* __cplusplus */
10924#endif
10925
10926#ifndef __ISpeechPhraseProperty_FWD_DEFINED__
10927#define __ISpeechPhraseProperty_FWD_DEFINED__
10928typedef interface ISpeechPhraseProperty ISpeechPhraseProperty;
10929#ifdef __cplusplus
10930interface ISpeechPhraseProperty;
10931#endif /* __cplusplus */
10932#endif
10933
10934#ifndef __ISpeechPhraseProperties_FWD_DEFINED__
10935#define __ISpeechPhraseProperties_FWD_DEFINED__
10936typedef interface ISpeechPhraseProperties ISpeechPhraseProperties;
10937#ifdef __cplusplus
10938interface ISpeechPhraseProperties;
10939#endif /* __cplusplus */
10940#endif
10941
10942#ifndef __ISpeechPhraseRule_FWD_DEFINED__
10943#define __ISpeechPhraseRule_FWD_DEFINED__
10944typedef interface ISpeechPhraseRule ISpeechPhraseRule;
10945#ifdef __cplusplus
10946interface ISpeechPhraseRule;
10947#endif /* __cplusplus */
10948#endif
10949
10950#ifndef __ISpeechPhraseRules_FWD_DEFINED__
10951#define __ISpeechPhraseRules_FWD_DEFINED__
10952typedef interface ISpeechPhraseRules ISpeechPhraseRules;
10953#ifdef __cplusplus
10954interface ISpeechPhraseRules;
10955#endif /* __cplusplus */
10956#endif
10957
10958#ifndef __ISpeechLexicon_FWD_DEFINED__
10959#define __ISpeechLexicon_FWD_DEFINED__
10960typedef interface ISpeechLexicon ISpeechLexicon;
10961#ifdef __cplusplus
10962interface ISpeechLexicon;
10963#endif /* __cplusplus */
10964#endif
10965
10966#ifndef __ISpeechLexiconWords_FWD_DEFINED__
10967#define __ISpeechLexiconWords_FWD_DEFINED__
10968typedef interface ISpeechLexiconWords ISpeechLexiconWords;
10969#ifdef __cplusplus
10970interface ISpeechLexiconWords;
10971#endif /* __cplusplus */
10972#endif
10973
10974#ifndef __ISpeechLexiconWord_FWD_DEFINED__
10975#define __ISpeechLexiconWord_FWD_DEFINED__
10976typedef interface ISpeechLexiconWord ISpeechLexiconWord;
10977#ifdef __cplusplus
10978interface ISpeechLexiconWord;
10979#endif /* __cplusplus */
10980#endif
10981
10982#ifndef __ISpeechLexiconPronunciations_FWD_DEFINED__
10983#define __ISpeechLexiconPronunciations_FWD_DEFINED__
10984typedef interface ISpeechLexiconPronunciations ISpeechLexiconPronunciations;
10985#ifdef __cplusplus
10986interface ISpeechLexiconPronunciations;
10987#endif /* __cplusplus */
10988#endif
10989
10990#ifndef __ISpeechLexiconPronunciation_FWD_DEFINED__
10991#define __ISpeechLexiconPronunciation_FWD_DEFINED__
10992typedef interface ISpeechLexiconPronunciation ISpeechLexiconPronunciation;
10993#ifdef __cplusplus
10994interface ISpeechLexiconPronunciation;
10995#endif /* __cplusplus */
10996#endif
10997
10998typedef LONG SpeechLanguageId;
10999#define __SpeechStringConstants_MODULE_DEFINED__
11000#ifndef __SpeechStringConstants_MODULE_DEFINED__
11001#define __SpeechStringConstants_MODULE_DEFINED__
11002#define SpeechRegistryUserRoot (L"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Speech")
11003
11004#define SpeechRegistryLocalMachineRoot (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech")
11005
11006#define SpeechCategoryAudioOut (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\AudioOutput")
11007
11008#define SpeechCategoryAudioIn (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\AudioInput")
11009
11010#define SpeechCategoryVoices (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices")
11011
11012#define SpeechCategoryRecognizers (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Recognizers")
11013
11014#define SpeechCategoryAppLexicons (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\AppLexicons")
11015
11016#define SpeechCategoryPhoneConverters (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\PhoneConverters")
11017
11018#define SpeechCategoryRecoProfiles (L"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Speech\RecoProfiles")
11019
11020#define SpeechTokenIdUserLexicon (L"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Speech\CurrentUserLexicon")
11021
11022#define SpeechTokenValueCLSID (L"CLSID")
11023
11024#define SpeechTokenKeyFiles (L"Files")
11025
11026#define SpeechTokenKeyUI (L"UI")
11027
11028#define SpeechTokenKeyAttributes (L"Attributes")
11029
11030#define SpeechVoiceCategoryTTSRate (L"DefaultTTSRate")
11031
11032#define SpeechPropertyResourceUsage (L"ResourceUsage")
11033
11034#define SpeechPropertyHighConfidenceThreshold (L"HighConfidenceThreshold")
11035
11036#define SpeechPropertyNormalConfidenceThreshold (L"NormalConfidenceThreshold")
11037
11038#define SpeechPropertyLowConfidenceThreshold (L"LowConfidenceThreshold")
11039
11040#define SpeechPropertyResponseSpeed (L"ResponseSpeed")
11041
11042#define SpeechPropertyComplexResponseSpeed (L"ComplexResponseSpeed")
11043
11044#define SpeechPropertyAdaptationOn (L"AdaptationOn")
11045
11046#define SpeechDictationTopicSpelling (L"Spelling")
11047
11048#define SpeechGrammarTagWildcard (L"...")
11049
11050#define SpeechGrammarTagDictation (L"*")
11051
11052#define SpeechGrammarTagUnlimitedDictation (L"*+")
11053
11054#define SpeechEngineProperties (L"EngineProperties")
11055
11056#define SpeechAddRemoveWord (L"AddRemoveWord")
11057
11058#define SpeechUserTraining (L"UserTraining")
11059
11060#define SpeechMicTraining (L"MicTraining")
11061
11062#define SpeechRecoProfileProperties (L"RecoProfileProperties")
11063
11064#define SpeechAudioProperties (L"AudioProperties")
11065
11066#define SpeechAudioVolume (L"AudioVolume")
11067
11068#define SpeechVoiceSkipTypeSentence (L"Sentence")
11069
11070#define SpeechAudioFormatGUIDWave (L"{C31ADBAE-527F-4ff5-A230-F62BB61FF70C}")
11071
11072#define SpeechAudioFormatGUIDText (L"{7CEEF9F9-3D13-11d2-9EE7-00C04F797396}")
11073
11074#endif /* __SpeechStringConstants_MODULE_DEFINED__ */
11075#ifndef __SpeechConstants_MODULE_DEFINED__
11076#define __SpeechConstants_MODULE_DEFINED__
11077#define Speech_Default_Weight (DEFAULT_WEIGHT)
11078
11079#define Speech_Max_Word_Length (SP_MAX_WORD_LENGTH)
11080
11081#define Speech_Max_Pron_Length (SP_MAX_PRON_LENGTH)
11082
11083#define Speech_StreamPos_Asap (SP_STREAMPOS_ASAP)
11084
11085#define Speech_StreamPos_RealTime (SP_STREAMPOS_REALTIME)
11086
11087#define SpeechAllElements (SPPR_ALL_ELEMENTS)
11088
11089#endif /* __SpeechConstants_MODULE_DEFINED__ */
11090typedef enum DISPID_SpeechDataKey {
11091 DISPID_SDKSetBinaryValue = 1,
11092 DISPID_SDKGetBinaryValue = 2,
11093 DISPID_SDKSetStringValue = 3,
11094 DISPID_SDKGetStringValue = 4,
11095 DISPID_SDKSetLongValue = 5,
11096 DISPID_SDKGetlongValue = 6,
11097 DISPID_SDKOpenKey = 7,
11098 DISPID_SDKCreateKey = 8,
11099 DISPID_SDKDeleteKey = 9,
11100 DISPID_SDKDeleteValue = 10,
11101 DISPID_SDKEnumKeys = 11,
11102 DISPID_SDKEnumValues = 12
11103} DISPID_SpeechDataKey;
11104typedef enum DISPID_SpeechObjectToken {
11105 DISPID_SOTId = 1,
11106 DISPID_SOTDataKey = 2,
11107 DISPID_SOTCategory = 3,
11108 DISPID_SOTGetDescription = 4,
11109 DISPID_SOTSetId = 5,
11110 DISPID_SOTGetAttribute = 6,
11111 DISPID_SOTCreateInstance = 7,
11112 DISPID_SOTRemove = 8,
11113 DISPID_SOTGetStorageFileName = 9,
11114 DISPID_SOTRemoveStorageFileName = 10,
11115 DISPID_SOTIsUISupported = 11,
11116 DISPID_SOTDisplayUI = 12,
11117 DISPID_SOTMatchesAttributes = 13
11118} DISPID_SpeechObjectToken;
11119typedef enum SpeechDataKeyLocation {
11120 SDKLDefaultLocation = SPDKL_DefaultLocation,
11121 SDKLCurrentUser = SPDKL_CurrentUser,
11122 SDKLLocalMachine = SPDKL_LocalMachine,
11123 SDKLCurrentConfig = SPDKL_CurrentConfig
11124} SpeechDataKeyLocation;
11125typedef enum SpeechTokenContext {
11126 STCInprocServer = CLSCTX_INPROC_SERVER,
11127 STCInprocHandler = CLSCTX_INPROC_HANDLER,
11128 STCLocalServer = CLSCTX_LOCAL_SERVER,
11129 STCRemoteServer = CLSCTX_REMOTE_SERVER,
11130 STCAll = ((CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER) | CLSCTX_LOCAL_SERVER) | CLSCTX_REMOTE_SERVER
11131} SpeechTokenContext;
11132typedef enum SpeechTokenShellFolder {
11133 STSF_AppData = 0x1a,
11134 STSF_LocalAppData = 0x1c,
11135 STSF_CommonAppData = 0x23,
11136 STSF_FlagCreate = 0x8000
11137} SpeechTokenShellFolder;
11138typedef enum DISPID_SpeechObjectTokens {
11139 DISPID_SOTsCount = 1,
11140 DISPID_SOTsItem = DISPID_VALUE,
11141 DISPID_SOTs_NewEnum = DISPID_NEWENUM
11142} DISPID_SpeechObjectTokens;
11143typedef enum DISPID_SpeechObjectTokenCategory {
11144 DISPID_SOTCId = 1,
11145 DISPID_SOTCDefault = 2,
11146 DISPID_SOTCSetId = 3,
11147 DISPID_SOTCGetDataKey = 4,
11148 DISPID_SOTCEnumerateTokens = 5
11149} DISPID_SpeechObjectTokenCategory;
11150/*****************************************************************************
11151 * ISpeechDataKey interface
11152 */
11153#ifndef __ISpeechDataKey_INTERFACE_DEFINED__
11154#define __ISpeechDataKey_INTERFACE_DEFINED__
11155
11156DEFINE_GUID(IID_ISpeechDataKey, 0xce17c09b, 0x4efa, 0x44d5, 0xa4,0xc9, 0x59,0xd9,0x58,0x5a,0xb0,0xcd);
11157#if defined(__cplusplus) && !defined(CINTERFACE)
11158MIDL_INTERFACE("ce17c09b-4efa-44d5-a4c9-59d9585ab0cd")
11159ISpeechDataKey : public IDispatch
11160{
11161 virtual HRESULT STDMETHODCALLTYPE SetBinaryValue(
11162 const BSTR ValueName,
11163 VARIANT Value) = 0;
11164
11165 virtual HRESULT STDMETHODCALLTYPE GetBinaryValue(
11166 const BSTR ValueName,
11167 VARIANT *Value) = 0;
11168
11169 virtual HRESULT STDMETHODCALLTYPE SetStringValue(
11170 const BSTR ValueName,
11171 const BSTR Value) = 0;
11172
11173 virtual HRESULT STDMETHODCALLTYPE GetStringValue(
11174 const BSTR ValueName,
11175 BSTR *Value) = 0;
11176
11177 virtual HRESULT STDMETHODCALLTYPE SetLongValue(
11178 const BSTR ValueName,
11179 LONG Value) = 0;
11180
11181 virtual HRESULT STDMETHODCALLTYPE GetLongValue(
11182 const BSTR ValueName,
11183 LONG *Value) = 0;
11184
11185 virtual HRESULT STDMETHODCALLTYPE OpenKey(
11186 const BSTR SubKeyName,
11187 ISpeechDataKey **SubKey) = 0;
11188
11189 virtual HRESULT STDMETHODCALLTYPE CreateKey(
11190 const BSTR SubKeyName,
11191 ISpeechDataKey **SubKey) = 0;
11192
11193 virtual HRESULT STDMETHODCALLTYPE DeleteKey(
11194 const BSTR SubKeyName) = 0;
11195
11196 virtual HRESULT STDMETHODCALLTYPE DeleteValue(
11197 const BSTR ValueName) = 0;
11198
11199 virtual HRESULT STDMETHODCALLTYPE EnumKeys(
11200 LONG Index,
11201 BSTR *SubKeyName) = 0;
11202
11203 virtual HRESULT STDMETHODCALLTYPE EnumValues(
11204 LONG Index,
11205 BSTR *ValueName) = 0;
11206
11207};
11208#ifdef __CRT_UUID_DECL
11209__CRT_UUID_DECL(ISpeechDataKey, 0xce17c09b, 0x4efa, 0x44d5, 0xa4,0xc9, 0x59,0xd9,0x58,0x5a,0xb0,0xcd)
11210#endif
11211#else
11212typedef struct ISpeechDataKeyVtbl {
11213 BEGIN_INTERFACE
11214
11215 /*** IUnknown methods ***/
11216 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11217 ISpeechDataKey *This,
11218 REFIID riid,
11219 void **ppvObject);
11220
11221 ULONG (STDMETHODCALLTYPE *AddRef)(
11222 ISpeechDataKey *This);
11223
11224 ULONG (STDMETHODCALLTYPE *Release)(
11225 ISpeechDataKey *This);
11226
11227 /*** IDispatch methods ***/
11228 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11229 ISpeechDataKey *This,
11230 UINT *pctinfo);
11231
11232 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11233 ISpeechDataKey *This,
11234 UINT iTInfo,
11235 LCID lcid,
11236 ITypeInfo **ppTInfo);
11237
11238 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11239 ISpeechDataKey *This,
11240 REFIID riid,
11241 LPOLESTR *rgszNames,
11242 UINT cNames,
11243 LCID lcid,
11244 DISPID *rgDispId);
11245
11246 HRESULT (STDMETHODCALLTYPE *Invoke)(
11247 ISpeechDataKey *This,
11248 DISPID dispIdMember,
11249 REFIID riid,
11250 LCID lcid,
11251 WORD wFlags,
11252 DISPPARAMS *pDispParams,
11253 VARIANT *pVarResult,
11254 EXCEPINFO *pExcepInfo,
11255 UINT *puArgErr);
11256
11257 /*** ISpeechDataKey methods ***/
11258 HRESULT (STDMETHODCALLTYPE *SetBinaryValue)(
11259 ISpeechDataKey *This,
11260 const BSTR ValueName,
11261 VARIANT Value);
11262
11263 HRESULT (STDMETHODCALLTYPE *GetBinaryValue)(
11264 ISpeechDataKey *This,
11265 const BSTR ValueName,
11266 VARIANT *Value);
11267
11268 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
11269 ISpeechDataKey *This,
11270 const BSTR ValueName,
11271 const BSTR Value);
11272
11273 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
11274 ISpeechDataKey *This,
11275 const BSTR ValueName,
11276 BSTR *Value);
11277
11278 HRESULT (STDMETHODCALLTYPE *SetLongValue)(
11279 ISpeechDataKey *This,
11280 const BSTR ValueName,
11281 LONG Value);
11282
11283 HRESULT (STDMETHODCALLTYPE *GetLongValue)(
11284 ISpeechDataKey *This,
11285 const BSTR ValueName,
11286 LONG *Value);
11287
11288 HRESULT (STDMETHODCALLTYPE *OpenKey)(
11289 ISpeechDataKey *This,
11290 const BSTR SubKeyName,
11291 ISpeechDataKey **SubKey);
11292
11293 HRESULT (STDMETHODCALLTYPE *CreateKey)(
11294 ISpeechDataKey *This,
11295 const BSTR SubKeyName,
11296 ISpeechDataKey **SubKey);
11297
11298 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
11299 ISpeechDataKey *This,
11300 const BSTR SubKeyName);
11301
11302 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
11303 ISpeechDataKey *This,
11304 const BSTR ValueName);
11305
11306 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
11307 ISpeechDataKey *This,
11308 LONG Index,
11309 BSTR *SubKeyName);
11310
11311 HRESULT (STDMETHODCALLTYPE *EnumValues)(
11312 ISpeechDataKey *This,
11313 LONG Index,
11314 BSTR *ValueName);
11315
11316 END_INTERFACE
11317} ISpeechDataKeyVtbl;
11318
11319interface ISpeechDataKey {
11320 CONST_VTBL ISpeechDataKeyVtbl* lpVtbl;
11321};
11322
11323#ifdef COBJMACROS
11324#ifndef WIDL_C_INLINE_WRAPPERS
11325/*** IUnknown methods ***/
11326#define ISpeechDataKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11327#define ISpeechDataKey_AddRef(This) (This)->lpVtbl->AddRef(This)
11328#define ISpeechDataKey_Release(This) (This)->lpVtbl->Release(This)
11329/*** IDispatch methods ***/
11330#define ISpeechDataKey_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11331#define ISpeechDataKey_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11332#define ISpeechDataKey_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11333#define ISpeechDataKey_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11334/*** ISpeechDataKey methods ***/
11335#define ISpeechDataKey_SetBinaryValue(This,ValueName,Value) (This)->lpVtbl->SetBinaryValue(This,ValueName,Value)
11336#define ISpeechDataKey_GetBinaryValue(This,ValueName,Value) (This)->lpVtbl->GetBinaryValue(This,ValueName,Value)
11337#define ISpeechDataKey_SetStringValue(This,ValueName,Value) (This)->lpVtbl->SetStringValue(This,ValueName,Value)
11338#define ISpeechDataKey_GetStringValue(This,ValueName,Value) (This)->lpVtbl->GetStringValue(This,ValueName,Value)
11339#define ISpeechDataKey_SetLongValue(This,ValueName,Value) (This)->lpVtbl->SetLongValue(This,ValueName,Value)
11340#define ISpeechDataKey_GetLongValue(This,ValueName,Value) (This)->lpVtbl->GetLongValue(This,ValueName,Value)
11341#define ISpeechDataKey_OpenKey(This,SubKeyName,SubKey) (This)->lpVtbl->OpenKey(This,SubKeyName,SubKey)
11342#define ISpeechDataKey_CreateKey(This,SubKeyName,SubKey) (This)->lpVtbl->CreateKey(This,SubKeyName,SubKey)
11343#define ISpeechDataKey_DeleteKey(This,SubKeyName) (This)->lpVtbl->DeleteKey(This,SubKeyName)
11344#define ISpeechDataKey_DeleteValue(This,ValueName) (This)->lpVtbl->DeleteValue(This,ValueName)
11345#define ISpeechDataKey_EnumKeys(This,Index,SubKeyName) (This)->lpVtbl->EnumKeys(This,Index,SubKeyName)
11346#define ISpeechDataKey_EnumValues(This,Index,ValueName) (This)->lpVtbl->EnumValues(This,Index,ValueName)
11347#else
11348/*** IUnknown methods ***/
11349static inline HRESULT ISpeechDataKey_QueryInterface(ISpeechDataKey* This,REFIID riid,void **ppvObject) {
11350 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11351}
11352static inline ULONG ISpeechDataKey_AddRef(ISpeechDataKey* This) {
11353 return This->lpVtbl->AddRef(This);
11354}
11355static inline ULONG ISpeechDataKey_Release(ISpeechDataKey* This) {
11356 return This->lpVtbl->Release(This);
11357}
11358/*** IDispatch methods ***/
11359static inline HRESULT ISpeechDataKey_GetTypeInfoCount(ISpeechDataKey* This,UINT *pctinfo) {
11360 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11361}
11362static inline HRESULT ISpeechDataKey_GetTypeInfo(ISpeechDataKey* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11363 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11364}
11365static inline HRESULT ISpeechDataKey_GetIDsOfNames(ISpeechDataKey* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11366 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11367}
11368static inline HRESULT ISpeechDataKey_Invoke(ISpeechDataKey* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11369 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11370}
11371/*** ISpeechDataKey methods ***/
11372static inline HRESULT ISpeechDataKey_SetBinaryValue(ISpeechDataKey* This,const BSTR ValueName,VARIANT Value) {
11373 return This->lpVtbl->SetBinaryValue(This,ValueName,Value);
11374}
11375static inline HRESULT ISpeechDataKey_GetBinaryValue(ISpeechDataKey* This,const BSTR ValueName,VARIANT *Value) {
11376 return This->lpVtbl->GetBinaryValue(This,ValueName,Value);
11377}
11378static inline HRESULT ISpeechDataKey_SetStringValue(ISpeechDataKey* This,const BSTR ValueName,const BSTR Value) {
11379 return This->lpVtbl->SetStringValue(This,ValueName,Value);
11380}
11381static inline HRESULT ISpeechDataKey_GetStringValue(ISpeechDataKey* This,const BSTR ValueName,BSTR *Value) {
11382 return This->lpVtbl->GetStringValue(This,ValueName,Value);
11383}
11384static inline HRESULT ISpeechDataKey_SetLongValue(ISpeechDataKey* This,const BSTR ValueName,LONG Value) {
11385 return This->lpVtbl->SetLongValue(This,ValueName,Value);
11386}
11387static inline HRESULT ISpeechDataKey_GetLongValue(ISpeechDataKey* This,const BSTR ValueName,LONG *Value) {
11388 return This->lpVtbl->GetLongValue(This,ValueName,Value);
11389}
11390static inline HRESULT ISpeechDataKey_OpenKey(ISpeechDataKey* This,const BSTR SubKeyName,ISpeechDataKey **SubKey) {
11391 return This->lpVtbl->OpenKey(This,SubKeyName,SubKey);
11392}
11393static inline HRESULT ISpeechDataKey_CreateKey(ISpeechDataKey* This,const BSTR SubKeyName,ISpeechDataKey **SubKey) {
11394 return This->lpVtbl->CreateKey(This,SubKeyName,SubKey);
11395}
11396static inline HRESULT ISpeechDataKey_DeleteKey(ISpeechDataKey* This,const BSTR SubKeyName) {
11397 return This->lpVtbl->DeleteKey(This,SubKeyName);
11398}
11399static inline HRESULT ISpeechDataKey_DeleteValue(ISpeechDataKey* This,const BSTR ValueName) {
11400 return This->lpVtbl->DeleteValue(This,ValueName);
11401}
11402static inline HRESULT ISpeechDataKey_EnumKeys(ISpeechDataKey* This,LONG Index,BSTR *SubKeyName) {
11403 return This->lpVtbl->EnumKeys(This,Index,SubKeyName);
11404}
11405static inline HRESULT ISpeechDataKey_EnumValues(ISpeechDataKey* This,LONG Index,BSTR *ValueName) {
11406 return This->lpVtbl->EnumValues(This,Index,ValueName);
11407}
11408#endif
11409#endif
11410
11411#endif
11412
11413
11414#endif /* __ISpeechDataKey_INTERFACE_DEFINED__ */
11415
11416/*****************************************************************************
11417 * ISpeechObjectToken interface
11418 */
11419#ifndef __ISpeechObjectToken_INTERFACE_DEFINED__
11420#define __ISpeechObjectToken_INTERFACE_DEFINED__
11421
11422DEFINE_GUID(IID_ISpeechObjectToken, 0xc74a3adc, 0xb727, 0x4500, 0xa8,0x4a, 0xb5,0x26,0x72,0x1c,0x8b,0x8c);
11423#if defined(__cplusplus) && !defined(CINTERFACE)
11424MIDL_INTERFACE("c74a3adc-b727-4500-a84a-b526721c8b8c")
11425ISpeechObjectToken : public IDispatch
11426{
11427 virtual HRESULT STDMETHODCALLTYPE get_Id(
11428 BSTR *ObjectId) = 0;
11429
11430 virtual HRESULT STDMETHODCALLTYPE get_DataKey(
11431 ISpeechDataKey **DataKey) = 0;
11432
11433 virtual HRESULT STDMETHODCALLTYPE get_Category(
11434 ISpeechObjectTokenCategory **Category) = 0;
11435
11436 virtual HRESULT STDMETHODCALLTYPE GetDescription(
11437 LONG Locale,
11438 BSTR *Description) = 0;
11439
11440 virtual HRESULT STDMETHODCALLTYPE SetId(
11441 BSTR Id,
11442 BSTR CategoryID = L"",
11443 VARIANT_BOOL CreateIfNotExist = 0) = 0;
11444
11445 virtual HRESULT STDMETHODCALLTYPE GetAttribute(
11446 BSTR AttributeName,
11447 BSTR *AttributeValue) = 0;
11448
11449 virtual HRESULT STDMETHODCALLTYPE CreateInstance(
11450 IUnknown *pUnkOuter,
11451 SpeechTokenContext ClsContext,
11452 IUnknown **Object) = 0;
11453
11454 virtual HRESULT STDMETHODCALLTYPE Remove(
11455 BSTR ObjectStorageCLSID) = 0;
11456
11457 virtual HRESULT STDMETHODCALLTYPE GetStorageFileName(
11458 BSTR ObjectStorageCLSID,
11459 BSTR KeyName,
11460 BSTR FileName,
11461 SpeechTokenShellFolder Folder,
11462 BSTR *FilePath) = 0;
11463
11464 virtual HRESULT STDMETHODCALLTYPE RemoveStorageFileName(
11465 BSTR ObjectStorageCLSID,
11466 BSTR KeyName,
11467 VARIANT_BOOL DeleteFile) = 0;
11468
11469 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
11470 const BSTR TypeOfUI,
11471 const VARIANT *ExtraData,
11472 IUnknown *Object,
11473 VARIANT_BOOL *Supported) = 0;
11474
11475 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
11476 LONG hWnd,
11477 BSTR Title,
11478 const BSTR TypeOfUI,
11479 const VARIANT *ExtraData = 0,
11480 IUnknown *Object = 0) = 0;
11481
11482 virtual HRESULT STDMETHODCALLTYPE MatchesAttributes(
11483 BSTR Attributes,
11484 VARIANT_BOOL *Matches) = 0;
11485
11486};
11487#ifdef __CRT_UUID_DECL
11488__CRT_UUID_DECL(ISpeechObjectToken, 0xc74a3adc, 0xb727, 0x4500, 0xa8,0x4a, 0xb5,0x26,0x72,0x1c,0x8b,0x8c)
11489#endif
11490#else
11491typedef struct ISpeechObjectTokenVtbl {
11492 BEGIN_INTERFACE
11493
11494 /*** IUnknown methods ***/
11495 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11496 ISpeechObjectToken *This,
11497 REFIID riid,
11498 void **ppvObject);
11499
11500 ULONG (STDMETHODCALLTYPE *AddRef)(
11501 ISpeechObjectToken *This);
11502
11503 ULONG (STDMETHODCALLTYPE *Release)(
11504 ISpeechObjectToken *This);
11505
11506 /*** IDispatch methods ***/
11507 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11508 ISpeechObjectToken *This,
11509 UINT *pctinfo);
11510
11511 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11512 ISpeechObjectToken *This,
11513 UINT iTInfo,
11514 LCID lcid,
11515 ITypeInfo **ppTInfo);
11516
11517 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11518 ISpeechObjectToken *This,
11519 REFIID riid,
11520 LPOLESTR *rgszNames,
11521 UINT cNames,
11522 LCID lcid,
11523 DISPID *rgDispId);
11524
11525 HRESULT (STDMETHODCALLTYPE *Invoke)(
11526 ISpeechObjectToken *This,
11527 DISPID dispIdMember,
11528 REFIID riid,
11529 LCID lcid,
11530 WORD wFlags,
11531 DISPPARAMS *pDispParams,
11532 VARIANT *pVarResult,
11533 EXCEPINFO *pExcepInfo,
11534 UINT *puArgErr);
11535
11536 /*** ISpeechObjectToken methods ***/
11537 HRESULT (STDMETHODCALLTYPE *get_Id)(
11538 ISpeechObjectToken *This,
11539 BSTR *ObjectId);
11540
11541 HRESULT (STDMETHODCALLTYPE *get_DataKey)(
11542 ISpeechObjectToken *This,
11543 ISpeechDataKey **DataKey);
11544
11545 HRESULT (STDMETHODCALLTYPE *get_Category)(
11546 ISpeechObjectToken *This,
11547 ISpeechObjectTokenCategory **Category);
11548
11549 HRESULT (STDMETHODCALLTYPE *GetDescription)(
11550 ISpeechObjectToken *This,
11551 LONG Locale,
11552 BSTR *Description);
11553
11554 HRESULT (STDMETHODCALLTYPE *SetId)(
11555 ISpeechObjectToken *This,
11556 BSTR Id,
11557 BSTR CategoryID,
11558 VARIANT_BOOL CreateIfNotExist);
11559
11560 HRESULT (STDMETHODCALLTYPE *GetAttribute)(
11561 ISpeechObjectToken *This,
11562 BSTR AttributeName,
11563 BSTR *AttributeValue);
11564
11565 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
11566 ISpeechObjectToken *This,
11567 IUnknown *pUnkOuter,
11568 SpeechTokenContext ClsContext,
11569 IUnknown **Object);
11570
11571 HRESULT (STDMETHODCALLTYPE *Remove)(
11572 ISpeechObjectToken *This,
11573 BSTR ObjectStorageCLSID);
11574
11575 HRESULT (STDMETHODCALLTYPE *GetStorageFileName)(
11576 ISpeechObjectToken *This,
11577 BSTR ObjectStorageCLSID,
11578 BSTR KeyName,
11579 BSTR FileName,
11580 SpeechTokenShellFolder Folder,
11581 BSTR *FilePath);
11582
11583 HRESULT (STDMETHODCALLTYPE *RemoveStorageFileName)(
11584 ISpeechObjectToken *This,
11585 BSTR ObjectStorageCLSID,
11586 BSTR KeyName,
11587 VARIANT_BOOL DeleteFile);
11588
11589 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
11590 ISpeechObjectToken *This,
11591 const BSTR TypeOfUI,
11592 const VARIANT *ExtraData,
11593 IUnknown *Object,
11594 VARIANT_BOOL *Supported);
11595
11596 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
11597 ISpeechObjectToken *This,
11598 LONG hWnd,
11599 BSTR Title,
11600 const BSTR TypeOfUI,
11601 const VARIANT *ExtraData,
11602 IUnknown *Object);
11603
11604 HRESULT (STDMETHODCALLTYPE *MatchesAttributes)(
11605 ISpeechObjectToken *This,
11606 BSTR Attributes,
11607 VARIANT_BOOL *Matches);
11608
11609 END_INTERFACE
11610} ISpeechObjectTokenVtbl;
11611
11612interface ISpeechObjectToken {
11613 CONST_VTBL ISpeechObjectTokenVtbl* lpVtbl;
11614};
11615
11616#ifdef COBJMACROS
11617#ifndef WIDL_C_INLINE_WRAPPERS
11618/*** IUnknown methods ***/
11619#define ISpeechObjectToken_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11620#define ISpeechObjectToken_AddRef(This) (This)->lpVtbl->AddRef(This)
11621#define ISpeechObjectToken_Release(This) (This)->lpVtbl->Release(This)
11622/*** IDispatch methods ***/
11623#define ISpeechObjectToken_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11624#define ISpeechObjectToken_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11625#define ISpeechObjectToken_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11626#define ISpeechObjectToken_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11627/*** ISpeechObjectToken methods ***/
11628#define ISpeechObjectToken_get_Id(This,ObjectId) (This)->lpVtbl->get_Id(This,ObjectId)
11629#define ISpeechObjectToken_get_DataKey(This,DataKey) (This)->lpVtbl->get_DataKey(This,DataKey)
11630#define ISpeechObjectToken_get_Category(This,Category) (This)->lpVtbl->get_Category(This,Category)
11631#define ISpeechObjectToken_GetDescription(This,Locale,Description) (This)->lpVtbl->GetDescription(This,Locale,Description)
11632#define ISpeechObjectToken_SetId(This,Id,CategoryID,CreateIfNotExist) (This)->lpVtbl->SetId(This,Id,CategoryID,CreateIfNotExist)
11633#define ISpeechObjectToken_GetAttribute(This,AttributeName,AttributeValue) (This)->lpVtbl->GetAttribute(This,AttributeName,AttributeValue)
11634#define ISpeechObjectToken_CreateInstance(This,pUnkOuter,ClsContext,Object) (This)->lpVtbl->CreateInstance(This,pUnkOuter,ClsContext,Object)
11635#define ISpeechObjectToken_Remove(This,ObjectStorageCLSID) (This)->lpVtbl->Remove(This,ObjectStorageCLSID)
11636#define ISpeechObjectToken_GetStorageFileName(This,ObjectStorageCLSID,KeyName,FileName,Folder,FilePath) (This)->lpVtbl->GetStorageFileName(This,ObjectStorageCLSID,KeyName,FileName,Folder,FilePath)
11637#define ISpeechObjectToken_RemoveStorageFileName(This,ObjectStorageCLSID,KeyName,DeleteFile) (This)->lpVtbl->RemoveStorageFileName(This,ObjectStorageCLSID,KeyName,DeleteFile)
11638#define ISpeechObjectToken_IsUISupported(This,TypeOfUI,ExtraData,Object,Supported) (This)->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Object,Supported)
11639#define ISpeechObjectToken_DisplayUI(This,hWnd,Title,TypeOfUI,ExtraData,Object) (This)->lpVtbl->DisplayUI(This,hWnd,Title,TypeOfUI,ExtraData,Object)
11640#define ISpeechObjectToken_MatchesAttributes(This,Attributes,Matches) (This)->lpVtbl->MatchesAttributes(This,Attributes,Matches)
11641#else
11642/*** IUnknown methods ***/
11643static inline HRESULT ISpeechObjectToken_QueryInterface(ISpeechObjectToken* This,REFIID riid,void **ppvObject) {
11644 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11645}
11646static inline ULONG ISpeechObjectToken_AddRef(ISpeechObjectToken* This) {
11647 return This->lpVtbl->AddRef(This);
11648}
11649static inline ULONG ISpeechObjectToken_Release(ISpeechObjectToken* This) {
11650 return This->lpVtbl->Release(This);
11651}
11652/*** IDispatch methods ***/
11653static inline HRESULT ISpeechObjectToken_GetTypeInfoCount(ISpeechObjectToken* This,UINT *pctinfo) {
11654 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11655}
11656static inline HRESULT ISpeechObjectToken_GetTypeInfo(ISpeechObjectToken* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11657 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11658}
11659static inline HRESULT ISpeechObjectToken_GetIDsOfNames(ISpeechObjectToken* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11660 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11661}
11662static inline HRESULT ISpeechObjectToken_Invoke(ISpeechObjectToken* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11663 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11664}
11665/*** ISpeechObjectToken methods ***/
11666static inline HRESULT ISpeechObjectToken_get_Id(ISpeechObjectToken* This,BSTR *ObjectId) {
11667 return This->lpVtbl->get_Id(This,ObjectId);
11668}
11669static inline HRESULT ISpeechObjectToken_get_DataKey(ISpeechObjectToken* This,ISpeechDataKey **DataKey) {
11670 return This->lpVtbl->get_DataKey(This,DataKey);
11671}
11672static inline HRESULT ISpeechObjectToken_get_Category(ISpeechObjectToken* This,ISpeechObjectTokenCategory **Category) {
11673 return This->lpVtbl->get_Category(This,Category);
11674}
11675static inline HRESULT ISpeechObjectToken_GetDescription(ISpeechObjectToken* This,LONG Locale,BSTR *Description) {
11676 return This->lpVtbl->GetDescription(This,Locale,Description);
11677}
11678static inline HRESULT ISpeechObjectToken_SetId(ISpeechObjectToken* This,BSTR Id,BSTR CategoryID,VARIANT_BOOL CreateIfNotExist) {
11679 return This->lpVtbl->SetId(This,Id,CategoryID,CreateIfNotExist);
11680}
11681static inline HRESULT ISpeechObjectToken_GetAttribute(ISpeechObjectToken* This,BSTR AttributeName,BSTR *AttributeValue) {
11682 return This->lpVtbl->GetAttribute(This,AttributeName,AttributeValue);
11683}
11684static inline HRESULT ISpeechObjectToken_CreateInstance(ISpeechObjectToken* This,IUnknown *pUnkOuter,SpeechTokenContext ClsContext,IUnknown **Object) {
11685 return This->lpVtbl->CreateInstance(This,pUnkOuter,ClsContext,Object);
11686}
11687static inline HRESULT ISpeechObjectToken_Remove(ISpeechObjectToken* This,BSTR ObjectStorageCLSID) {
11688 return This->lpVtbl->Remove(This,ObjectStorageCLSID);
11689}
11690static inline HRESULT ISpeechObjectToken_GetStorageFileName(ISpeechObjectToken* This,BSTR ObjectStorageCLSID,BSTR KeyName,BSTR FileName,SpeechTokenShellFolder Folder,BSTR *FilePath) {
11691 return This->lpVtbl->GetStorageFileName(This,ObjectStorageCLSID,KeyName,FileName,Folder,FilePath);
11692}
11693static inline HRESULT ISpeechObjectToken_RemoveStorageFileName(ISpeechObjectToken* This,BSTR ObjectStorageCLSID,BSTR KeyName,VARIANT_BOOL DeleteFile) {
11694 return This->lpVtbl->RemoveStorageFileName(This,ObjectStorageCLSID,KeyName,DeleteFile);
11695}
11696static inline HRESULT ISpeechObjectToken_IsUISupported(ISpeechObjectToken* This,const BSTR TypeOfUI,const VARIANT *ExtraData,IUnknown *Object,VARIANT_BOOL *Supported) {
11697 return This->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Object,Supported);
11698}
11699static inline HRESULT ISpeechObjectToken_DisplayUI(ISpeechObjectToken* This,LONG hWnd,BSTR Title,const BSTR TypeOfUI,const VARIANT *ExtraData,IUnknown *Object) {
11700 return This->lpVtbl->DisplayUI(This,hWnd,Title,TypeOfUI,ExtraData,Object);
11701}
11702static inline HRESULT ISpeechObjectToken_MatchesAttributes(ISpeechObjectToken* This,BSTR Attributes,VARIANT_BOOL *Matches) {
11703 return This->lpVtbl->MatchesAttributes(This,Attributes,Matches);
11704}
11705#endif
11706#endif
11707
11708#endif
11709
11710
11711#endif /* __ISpeechObjectToken_INTERFACE_DEFINED__ */
11712
11713/*****************************************************************************
11714 * ISpeechObjectTokens interface
11715 */
11716#ifndef __ISpeechObjectTokens_INTERFACE_DEFINED__
11717#define __ISpeechObjectTokens_INTERFACE_DEFINED__
11718
11719DEFINE_GUID(IID_ISpeechObjectTokens, 0x9285b776, 0x2e7b, 0x4bc0, 0xb5,0x3e, 0x58,0x0e,0xb6,0xfa,0x96,0x7f);
11720#if defined(__cplusplus) && !defined(CINTERFACE)
11721MIDL_INTERFACE("9285b776-2e7b-4bc0-b53e-580eb6fa967f")
11722ISpeechObjectTokens : public IDispatch
11723{
11724 virtual HRESULT STDMETHODCALLTYPE get_Count(
11725 LONG *Count) = 0;
11726
11727 virtual HRESULT STDMETHODCALLTYPE Item(
11728 LONG Index,
11729 ISpeechObjectToken **Token) = 0;
11730
11731 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
11732 IUnknown **ppEnumVARIANT) = 0;
11733
11734};
11735#ifdef __CRT_UUID_DECL
11736__CRT_UUID_DECL(ISpeechObjectTokens, 0x9285b776, 0x2e7b, 0x4bc0, 0xb5,0x3e, 0x58,0x0e,0xb6,0xfa,0x96,0x7f)
11737#endif
11738#else
11739typedef struct ISpeechObjectTokensVtbl {
11740 BEGIN_INTERFACE
11741
11742 /*** IUnknown methods ***/
11743 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11744 ISpeechObjectTokens *This,
11745 REFIID riid,
11746 void **ppvObject);
11747
11748 ULONG (STDMETHODCALLTYPE *AddRef)(
11749 ISpeechObjectTokens *This);
11750
11751 ULONG (STDMETHODCALLTYPE *Release)(
11752 ISpeechObjectTokens *This);
11753
11754 /*** IDispatch methods ***/
11755 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11756 ISpeechObjectTokens *This,
11757 UINT *pctinfo);
11758
11759 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11760 ISpeechObjectTokens *This,
11761 UINT iTInfo,
11762 LCID lcid,
11763 ITypeInfo **ppTInfo);
11764
11765 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11766 ISpeechObjectTokens *This,
11767 REFIID riid,
11768 LPOLESTR *rgszNames,
11769 UINT cNames,
11770 LCID lcid,
11771 DISPID *rgDispId);
11772
11773 HRESULT (STDMETHODCALLTYPE *Invoke)(
11774 ISpeechObjectTokens *This,
11775 DISPID dispIdMember,
11776 REFIID riid,
11777 LCID lcid,
11778 WORD wFlags,
11779 DISPPARAMS *pDispParams,
11780 VARIANT *pVarResult,
11781 EXCEPINFO *pExcepInfo,
11782 UINT *puArgErr);
11783
11784 /*** ISpeechObjectTokens methods ***/
11785 HRESULT (STDMETHODCALLTYPE *get_Count)(
11786 ISpeechObjectTokens *This,
11787 LONG *Count);
11788
11789 HRESULT (STDMETHODCALLTYPE *Item)(
11790 ISpeechObjectTokens *This,
11791 LONG Index,
11792 ISpeechObjectToken **Token);
11793
11794 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
11795 ISpeechObjectTokens *This,
11796 IUnknown **ppEnumVARIANT);
11797
11798 END_INTERFACE
11799} ISpeechObjectTokensVtbl;
11800
11801interface ISpeechObjectTokens {
11802 CONST_VTBL ISpeechObjectTokensVtbl* lpVtbl;
11803};
11804
11805#ifdef COBJMACROS
11806#ifndef WIDL_C_INLINE_WRAPPERS
11807/*** IUnknown methods ***/
11808#define ISpeechObjectTokens_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11809#define ISpeechObjectTokens_AddRef(This) (This)->lpVtbl->AddRef(This)
11810#define ISpeechObjectTokens_Release(This) (This)->lpVtbl->Release(This)
11811/*** IDispatch methods ***/
11812#define ISpeechObjectTokens_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11813#define ISpeechObjectTokens_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11814#define ISpeechObjectTokens_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11815#define ISpeechObjectTokens_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11816/*** ISpeechObjectTokens methods ***/
11817#define ISpeechObjectTokens_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
11818#define ISpeechObjectTokens_Item(This,Index,Token) (This)->lpVtbl->Item(This,Index,Token)
11819#define ISpeechObjectTokens_get__NewEnum(This,ppEnumVARIANT) (This)->lpVtbl->get__NewEnum(This,ppEnumVARIANT)
11820#else
11821/*** IUnknown methods ***/
11822static inline HRESULT ISpeechObjectTokens_QueryInterface(ISpeechObjectTokens* This,REFIID riid,void **ppvObject) {
11823 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11824}
11825static inline ULONG ISpeechObjectTokens_AddRef(ISpeechObjectTokens* This) {
11826 return This->lpVtbl->AddRef(This);
11827}
11828static inline ULONG ISpeechObjectTokens_Release(ISpeechObjectTokens* This) {
11829 return This->lpVtbl->Release(This);
11830}
11831/*** IDispatch methods ***/
11832static inline HRESULT ISpeechObjectTokens_GetTypeInfoCount(ISpeechObjectTokens* This,UINT *pctinfo) {
11833 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11834}
11835static inline HRESULT ISpeechObjectTokens_GetTypeInfo(ISpeechObjectTokens* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11836 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11837}
11838static inline HRESULT ISpeechObjectTokens_GetIDsOfNames(ISpeechObjectTokens* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11839 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11840}
11841static inline HRESULT ISpeechObjectTokens_Invoke(ISpeechObjectTokens* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11842 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11843}
11844/*** ISpeechObjectTokens methods ***/
11845static inline HRESULT ISpeechObjectTokens_get_Count(ISpeechObjectTokens* This,LONG *Count) {
11846 return This->lpVtbl->get_Count(This,Count);
11847}
11848static inline HRESULT ISpeechObjectTokens_Item(ISpeechObjectTokens* This,LONG Index,ISpeechObjectToken **Token) {
11849 return This->lpVtbl->Item(This,Index,Token);
11850}
11851static inline HRESULT ISpeechObjectTokens_get__NewEnum(ISpeechObjectTokens* This,IUnknown **ppEnumVARIANT) {
11852 return This->lpVtbl->get__NewEnum(This,ppEnumVARIANT);
11853}
11854#endif
11855#endif
11856
11857#endif
11858
11859
11860#endif /* __ISpeechObjectTokens_INTERFACE_DEFINED__ */
11861
11862/*****************************************************************************
11863 * ISpeechObjectTokenCategory interface
11864 */
11865#ifndef __ISpeechObjectTokenCategory_INTERFACE_DEFINED__
11866#define __ISpeechObjectTokenCategory_INTERFACE_DEFINED__
11867
11868DEFINE_GUID(IID_ISpeechObjectTokenCategory, 0xca7eac50, 0x2d01, 0x4145, 0x86,0xd4, 0x5a,0xe7,0xd7,0x0f,0x44,0x69);
11869#if defined(__cplusplus) && !defined(CINTERFACE)
11870MIDL_INTERFACE("ca7eac50-2d01-4145-86d4-5ae7d70f4469")
11871ISpeechObjectTokenCategory : public IDispatch
11872{
11873 virtual HRESULT STDMETHODCALLTYPE get_Id(
11874 BSTR *Id) = 0;
11875
11876 virtual HRESULT STDMETHODCALLTYPE put_Default(
11877 const BSTR TokenId) = 0;
11878
11879 virtual HRESULT STDMETHODCALLTYPE get_Default(
11880 BSTR *TokenId) = 0;
11881
11882 virtual HRESULT STDMETHODCALLTYPE SetId(
11883 const BSTR Id,
11884 VARIANT_BOOL CreateIfNotExist = 0) = 0;
11885
11886 virtual HRESULT STDMETHODCALLTYPE GetDataKey(
11887 SpeechDataKeyLocation Location,
11888 ISpeechDataKey **DataKey) = 0;
11889
11890 virtual HRESULT STDMETHODCALLTYPE EnumerateTokens(
11891 BSTR RequiredAttributes,
11892 BSTR OptionalAttributes,
11893 ISpeechObjectTokens **Tokens) = 0;
11894
11895};
11896#ifdef __CRT_UUID_DECL
11897__CRT_UUID_DECL(ISpeechObjectTokenCategory, 0xca7eac50, 0x2d01, 0x4145, 0x86,0xd4, 0x5a,0xe7,0xd7,0x0f,0x44,0x69)
11898#endif
11899#else
11900typedef struct ISpeechObjectTokenCategoryVtbl {
11901 BEGIN_INTERFACE
11902
11903 /*** IUnknown methods ***/
11904 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11905 ISpeechObjectTokenCategory *This,
11906 REFIID riid,
11907 void **ppvObject);
11908
11909 ULONG (STDMETHODCALLTYPE *AddRef)(
11910 ISpeechObjectTokenCategory *This);
11911
11912 ULONG (STDMETHODCALLTYPE *Release)(
11913 ISpeechObjectTokenCategory *This);
11914
11915 /*** IDispatch methods ***/
11916 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11917 ISpeechObjectTokenCategory *This,
11918 UINT *pctinfo);
11919
11920 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11921 ISpeechObjectTokenCategory *This,
11922 UINT iTInfo,
11923 LCID lcid,
11924 ITypeInfo **ppTInfo);
11925
11926 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11927 ISpeechObjectTokenCategory *This,
11928 REFIID riid,
11929 LPOLESTR *rgszNames,
11930 UINT cNames,
11931 LCID lcid,
11932 DISPID *rgDispId);
11933
11934 HRESULT (STDMETHODCALLTYPE *Invoke)(
11935 ISpeechObjectTokenCategory *This,
11936 DISPID dispIdMember,
11937 REFIID riid,
11938 LCID lcid,
11939 WORD wFlags,
11940 DISPPARAMS *pDispParams,
11941 VARIANT *pVarResult,
11942 EXCEPINFO *pExcepInfo,
11943 UINT *puArgErr);
11944
11945 /*** ISpeechObjectTokenCategory methods ***/
11946 HRESULT (STDMETHODCALLTYPE *get_Id)(
11947 ISpeechObjectTokenCategory *This,
11948 BSTR *Id);
11949
11950 HRESULT (STDMETHODCALLTYPE *put_Default)(
11951 ISpeechObjectTokenCategory *This,
11952 const BSTR TokenId);
11953
11954 HRESULT (STDMETHODCALLTYPE *get_Default)(
11955 ISpeechObjectTokenCategory *This,
11956 BSTR *TokenId);
11957
11958 HRESULT (STDMETHODCALLTYPE *SetId)(
11959 ISpeechObjectTokenCategory *This,
11960 const BSTR Id,
11961 VARIANT_BOOL CreateIfNotExist);
11962
11963 HRESULT (STDMETHODCALLTYPE *GetDataKey)(
11964 ISpeechObjectTokenCategory *This,
11965 SpeechDataKeyLocation Location,
11966 ISpeechDataKey **DataKey);
11967
11968 HRESULT (STDMETHODCALLTYPE *EnumerateTokens)(
11969 ISpeechObjectTokenCategory *This,
11970 BSTR RequiredAttributes,
11971 BSTR OptionalAttributes,
11972 ISpeechObjectTokens **Tokens);
11973
11974 END_INTERFACE
11975} ISpeechObjectTokenCategoryVtbl;
11976
11977interface ISpeechObjectTokenCategory {
11978 CONST_VTBL ISpeechObjectTokenCategoryVtbl* lpVtbl;
11979};
11980
11981#ifdef COBJMACROS
11982#ifndef WIDL_C_INLINE_WRAPPERS
11983/*** IUnknown methods ***/
11984#define ISpeechObjectTokenCategory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11985#define ISpeechObjectTokenCategory_AddRef(This) (This)->lpVtbl->AddRef(This)
11986#define ISpeechObjectTokenCategory_Release(This) (This)->lpVtbl->Release(This)
11987/*** IDispatch methods ***/
11988#define ISpeechObjectTokenCategory_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11989#define ISpeechObjectTokenCategory_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11990#define ISpeechObjectTokenCategory_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11991#define ISpeechObjectTokenCategory_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11992/*** ISpeechObjectTokenCategory methods ***/
11993#define ISpeechObjectTokenCategory_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
11994#define ISpeechObjectTokenCategory_put_Default(This,TokenId) (This)->lpVtbl->put_Default(This,TokenId)
11995#define ISpeechObjectTokenCategory_get_Default(This,TokenId) (This)->lpVtbl->get_Default(This,TokenId)
11996#define ISpeechObjectTokenCategory_SetId(This,Id,CreateIfNotExist) (This)->lpVtbl->SetId(This,Id,CreateIfNotExist)
11997#define ISpeechObjectTokenCategory_GetDataKey(This,Location,DataKey) (This)->lpVtbl->GetDataKey(This,Location,DataKey)
11998#define ISpeechObjectTokenCategory_EnumerateTokens(This,RequiredAttributes,OptionalAttributes,Tokens) (This)->lpVtbl->EnumerateTokens(This,RequiredAttributes,OptionalAttributes,Tokens)
11999#else
12000/*** IUnknown methods ***/
12001static inline HRESULT ISpeechObjectTokenCategory_QueryInterface(ISpeechObjectTokenCategory* This,REFIID riid,void **ppvObject) {
12002 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12003}
12004static inline ULONG ISpeechObjectTokenCategory_AddRef(ISpeechObjectTokenCategory* This) {
12005 return This->lpVtbl->AddRef(This);
12006}
12007static inline ULONG ISpeechObjectTokenCategory_Release(ISpeechObjectTokenCategory* This) {
12008 return This->lpVtbl->Release(This);
12009}
12010/*** IDispatch methods ***/
12011static inline HRESULT ISpeechObjectTokenCategory_GetTypeInfoCount(ISpeechObjectTokenCategory* This,UINT *pctinfo) {
12012 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12013}
12014static inline HRESULT ISpeechObjectTokenCategory_GetTypeInfo(ISpeechObjectTokenCategory* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12015 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12016}
12017static inline HRESULT ISpeechObjectTokenCategory_GetIDsOfNames(ISpeechObjectTokenCategory* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12018 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12019}
12020static inline HRESULT ISpeechObjectTokenCategory_Invoke(ISpeechObjectTokenCategory* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12021 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12022}
12023/*** ISpeechObjectTokenCategory methods ***/
12024static inline HRESULT ISpeechObjectTokenCategory_get_Id(ISpeechObjectTokenCategory* This,BSTR *Id) {
12025 return This->lpVtbl->get_Id(This,Id);
12026}
12027static inline HRESULT ISpeechObjectTokenCategory_put_Default(ISpeechObjectTokenCategory* This,const BSTR TokenId) {
12028 return This->lpVtbl->put_Default(This,TokenId);
12029}
12030static inline HRESULT ISpeechObjectTokenCategory_get_Default(ISpeechObjectTokenCategory* This,BSTR *TokenId) {
12031 return This->lpVtbl->get_Default(This,TokenId);
12032}
12033static inline HRESULT ISpeechObjectTokenCategory_SetId(ISpeechObjectTokenCategory* This,const BSTR Id,VARIANT_BOOL CreateIfNotExist) {
12034 return This->lpVtbl->SetId(This,Id,CreateIfNotExist);
12035}
12036static inline HRESULT ISpeechObjectTokenCategory_GetDataKey(ISpeechObjectTokenCategory* This,SpeechDataKeyLocation Location,ISpeechDataKey **DataKey) {
12037 return This->lpVtbl->GetDataKey(This,Location,DataKey);
12038}
12039static inline HRESULT ISpeechObjectTokenCategory_EnumerateTokens(ISpeechObjectTokenCategory* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **Tokens) {
12040 return This->lpVtbl->EnumerateTokens(This,RequiredAttributes,OptionalAttributes,Tokens);
12041}
12042#endif
12043#endif
12044
12045#endif
12046
12047
12048#endif /* __ISpeechObjectTokenCategory_INTERFACE_DEFINED__ */
12049
12050typedef enum SpeechAudioFormatType {
12051 SAFTDefault = -1,
12052 SAFTNoAssignedFormat = 0,
12053 SAFTText = 1,
12054 SAFTNonStandardFormat = 2,
12055 SAFTExtendedAudioFormat = 3,
12056 SAFT8kHz8BitMono = 4,
12057 SAFT8kHz8BitStereo = 5,
12058 SAFT8kHz16BitMono = 6,
12059 SAFT8kHz16BitStereo = 7,
12060 SAFT11kHz8BitMono = 8,
12061 SAFT11kHz8BitStereo = 9,
12062 SAFT11kHz16BitMono = 10,
12063 SAFT11kHz16BitStereo = 11,
12064 SAFT12kHz8BitMono = 12,
12065 SAFT12kHz8BitStereo = 13,
12066 SAFT12kHz16BitMono = 14,
12067 SAFT12kHz16BitStereo = 15,
12068 SAFT16kHz8BitMono = 16,
12069 SAFT16kHz8BitStereo = 17,
12070 SAFT16kHz16BitMono = 18,
12071 SAFT16kHz16BitStereo = 19,
12072 SAFT22kHz8BitMono = 20,
12073 SAFT22kHz8BitStereo = 21,
12074 SAFT22kHz16BitMono = 22,
12075 SAFT22kHz16BitStereo = 23,
12076 SAFT24kHz8BitMono = 24,
12077 SAFT24kHz8BitStereo = 25,
12078 SAFT24kHz16BitMono = 26,
12079 SAFT24kHz16BitStereo = 27,
12080 SAFT32kHz8BitMono = 28,
12081 SAFT32kHz8BitStereo = 29,
12082 SAFT32kHz16BitMono = 30,
12083 SAFT32kHz16BitStereo = 31,
12084 SAFT44kHz8BitMono = 32,
12085 SAFT44kHz8BitStereo = 33,
12086 SAFT44kHz16BitMono = 34,
12087 SAFT44kHz16BitStereo = 35,
12088 SAFT48kHz8BitMono = 36,
12089 SAFT48kHz8BitStereo = 37,
12090 SAFT48kHz16BitMono = 38,
12091 SAFT48kHz16BitStereo = 39,
12092 SAFTTrueSpeech_8kHz1BitMono = 40,
12093 SAFTCCITT_ALaw_8kHzMono = 41,
12094 SAFTCCITT_ALaw_8kHzStereo = 42,
12095 SAFTCCITT_ALaw_11kHzMono = 43,
12096 SAFTCCITT_ALaw_11kHzStereo = 44,
12097 SAFTCCITT_ALaw_22kHzMono = 45,
12098 SAFTCCITT_ALaw_22kHzStereo = 46,
12099 SAFTCCITT_ALaw_44kHzMono = 47,
12100 SAFTCCITT_ALaw_44kHzStereo = 48,
12101 SAFTCCITT_uLaw_8kHzMono = 49,
12102 SAFTCCITT_uLaw_8kHzStereo = 50,
12103 SAFTCCITT_uLaw_11kHzMono = 51,
12104 SAFTCCITT_uLaw_11kHzStereo = 52,
12105 SAFTCCITT_uLaw_22kHzMono = 53,
12106 SAFTCCITT_uLaw_22kHzStereo = 54,
12107 SAFTCCITT_uLaw_44kHzMono = 55,
12108 SAFTCCITT_uLaw_44kHzStereo = 56,
12109 SAFTADPCM_8kHzMono = 57,
12110 SAFTADPCM_8kHzStereo = 58,
12111 SAFTADPCM_11kHzMono = 59,
12112 SAFTADPCM_11kHzStereo = 60,
12113 SAFTADPCM_22kHzMono = 61,
12114 SAFTADPCM_22kHzStereo = 62,
12115 SAFTADPCM_44kHzMono = 63,
12116 SAFTADPCM_44kHzStereo = 64,
12117 SAFTGSM610_8kHzMono = 65,
12118 SAFTGSM610_11kHzMono = 66,
12119 SAFTGSM610_22kHzMono = 67,
12120 SAFTGSM610_44kHzMono = 68
12121} SpeechAudioFormatType;
12122typedef enum DISPID_SpeechAudioFormat {
12123 DISPID_SAFType = 1,
12124 DISPID_SAFGuid = 2,
12125 DISPID_SAFGetWaveFormatEx = 3,
12126 DISPID_SAFSetWaveFormatEx = 4
12127} DISPID_SpeechAudioFormat;
12128typedef enum DISPID_SpeechBaseStream {
12129 DISPID_SBSFormat = 1,
12130 DISPID_SBSRead = 2,
12131 DISPID_SBSWrite = 3,
12132 DISPID_SBSSeek = 4
12133} DISPID_SpeechBaseStream;
12134typedef enum SpeechStreamSeekPositionType {
12135 SSSPTRelativeToStart = STREAM_SEEK_SET,
12136 SSSPTRelativeToCurrentPosition = STREAM_SEEK_CUR,
12137 SSSPTRelativeToEnd = STREAM_SEEK_END
12138} SpeechStreamSeekPositionType;
12139typedef enum DISPID_SpeechAudio {
12140 DISPID_SAStatus = 200,
12141 DISPID_SABufferInfo = 201,
12142 DISPID_SADefaultFormat = 202,
12143 DISPID_SAVolume = 203,
12144 DISPID_SABufferNotifySize = 204,
12145 DISPID_SAEventHandle = 205,
12146 DISPID_SASetState = 206
12147} DISPID_SpeechAudio;
12148typedef enum SpeechAudioState {
12149 SASClosed = SPAS_CLOSED,
12150 SASStop = SPAS_STOP,
12151 SASPause = SPAS_PAUSE,
12152 SASRun = SPAS_RUN
12153} SpeechAudioState;
12154typedef enum DISPID_SpeechMMSysAudio {
12155 DISPID_SMSADeviceId = 300,
12156 DISPID_SMSALineId = 301,
12157 DISPID_SMSAMMHandle = 302
12158} DISPID_SpeechMMSysAudio;
12159typedef enum DISPID_SpeechFileStream {
12160 DISPID_SFSOpen = 100,
12161 DISPID_SFSClose = 101
12162} DISPID_SpeechFileStream;
12163typedef enum SpeechStreamFileMode {
12164 SSFMOpenForRead = SPFM_OPEN_READONLY,
12165 SSFMOpenReadWrite = SPFM_OPEN_READWRITE,
12166 SSFMCreate = SPFM_CREATE,
12167 SSFMCreateForWrite = SPFM_CREATE_ALWAYS
12168} SpeechStreamFileMode;
12169typedef enum DISPID_SpeechCustomStream {
12170 DISPID_SCSBaseStream = 100
12171} DISPID_SpeechCustomStream;
12172typedef enum DISPID_SpeechMemoryStream {
12173 DISPID_SMSSetData = 100,
12174 DISPID_SMSGetData = 101
12175} DISPID_SpeechMemoryStream;
12176typedef enum DISPID_SpeechAudioStatus {
12177 DISPID_SASFreeBufferSpace = 1,
12178 DISPID_SASNonBlockingIO = 2,
12179 DISPID_SASState = 3,
12180 DISPID_SASCurrentSeekPosition = 4,
12181 DISPID_SASCurrentDevicePosition = 5
12182} DISPID_SpeechAudioStatus;
12183typedef enum DISPID_SpeechAudioBufferInfo {
12184 DISPID_SABIMinNotification = 1,
12185 DISPID_SABIBufferSize = 2,
12186 DISPID_SABIEventBias = 3
12187} DISPID_SpeechAudioBufferInfo;
12188typedef enum DISPID_SpeechWaveFormatEx {
12189 DISPID_SWFEFormatTag = 1,
12190 DISPID_SWFEChannels = 2,
12191 DISPID_SWFESamplesPerSec = 3,
12192 DISPID_SWFEAvgBytesPerSec = 4,
12193 DISPID_SWFEBlockAlign = 5,
12194 DISPID_SWFEBitsPerSample = 6,
12195 DISPID_SWFEExtraData = 7
12196} DISPID_SpeechWaveFormatEx;
12197typedef enum DISPID_SpeechVoice {
12198 DISPID_SVStatus = 1,
12199 DISPID_SVVoice = 2,
12200 DISPID_SVAudioOutput = 3,
12201 DISPID_SVAudioOutputStream = 4,
12202 DISPID_SVRate = 5,
12203 DISPID_SVVolume = 6,
12204 DISPID_SVAllowAudioOuputFormatChangesOnNextSet = 7,
12205 DISPID_SVEventInterests = 8,
12206 DISPID_SVPriority = 9,
12207 DISPID_SVAlertBoundary = 10,
12208 DISPID_SVSyncronousSpeakTimeout = 11,
12209 DISPID_SVSpeak = 12,
12210 DISPID_SVSpeakStream = 13,
12211 DISPID_SVPause = 14,
12212 DISPID_SVResume = 15,
12213 DISPID_SVSkip = 16,
12214 DISPID_SVGetVoices = 17,
12215 DISPID_SVGetAudioOutputs = 18,
12216 DISPID_SVWaitUntilDone = 19,
12217 DISPID_SVSpeakCompleteEvent = 20,
12218 DISPID_SVIsUISupported = 21,
12219 DISPID_SVDisplayUI = 22
12220} DISPID_SpeechVoice;
12221typedef enum SpeechVoicePriority {
12222 SVPNormal = SPVPRI_NORMAL,
12223 SVPAlert = SPVPRI_ALERT,
12224 SVPOver = SPVPRI_OVER
12225} SpeechVoicePriority;
12226typedef enum SpeechVoiceSpeakFlags {
12227 SVSFDefault = SPF_DEFAULT,
12228 SVSFlagsAsync = SPF_ASYNC,
12229 SVSFPurgeBeforeSpeak = SPF_PURGEBEFORESPEAK,
12230 SVSFIsFilename = SPF_IS_FILENAME,
12231 SVSFIsXML = SPF_IS_XML,
12232 SVSFIsNotXML = SPF_IS_NOT_XML,
12233 SVSFPersistXML = SPF_PERSIST_XML,
12234 SVSFNLPSpeakPunc = SPF_NLP_SPEAK_PUNC,
12235 SVSFParseSapi = SPF_PARSE_SAPI,
12236 SVSFParseSsml = SPF_PARSE_SSML,
12237 SVSFParseAutodetect = SPF_PARSE_AUTODETECT,
12238 SVSFNLPMask = SPF_NLP_MASK,
12239 SVSFParseMask = SPF_PARSE_MASK,
12240 SVSFVoiceMask = SPF_VOICE_MASK,
12241 SVSFUnusedFlags = SPF_UNUSED_FLAGS
12242} SpeechVoiceSpeakFlags;
12243typedef enum SpeechVoiceEvents {
12244 SVEStartInputStream = 0x2,
12245 SVEEndInputStream = 0x4,
12246 SVEVoiceChange = 0x8,
12247 SVEBookmark = 0x10,
12248 SVEWordBoundary = 0x20,
12249 SVEPhoneme = 0x40,
12250 SVESentenceBoundary = 0x80,
12251 SVEViseme = 0x100,
12252 SVEAudioLevel = 0x200,
12253 SVEPrivate = 0x8000,
12254 SVEAllEvents = 0x83fe
12255} SpeechVoiceEvents;
12256typedef enum DISPID_SpeechVoiceStatus {
12257 DISPID_SVSCurrentStreamNumber = 1,
12258 DISPID_SVSLastStreamNumberQueued = 2,
12259 DISPID_SVSLastResult = 3,
12260 DISPID_SVSRunningState = 4,
12261 DISPID_SVSInputWordPosition = 5,
12262 DISPID_SVSInputWordLength = 6,
12263 DISPID_SVSInputSentencePosition = 7,
12264 DISPID_SVSInputSentenceLength = 8,
12265 DISPID_SVSLastBookmark = 9,
12266 DISPID_SVSLastBookmarkId = 10,
12267 DISPID_SVSPhonemeId = 11,
12268 DISPID_SVSVisemeId = 12
12269} DISPID_SpeechVoiceStatus;
12270typedef enum SpeechRunState {
12271 SRSEDone = SPRS_DONE,
12272 SRSEIsSpeaking = SPRS_IS_SPEAKING
12273} SpeechRunState;
12274/*****************************************************************************
12275 * ISpeechAudioFormat interface
12276 */
12277#ifndef __ISpeechAudioFormat_INTERFACE_DEFINED__
12278#define __ISpeechAudioFormat_INTERFACE_DEFINED__
12279
12280DEFINE_GUID(IID_ISpeechAudioFormat, 0xe6e9c590, 0x3e18, 0x40e3, 0x82,0x99, 0x06,0x1f,0x98,0xbd,0xe7,0xc7);
12281#if defined(__cplusplus) && !defined(CINTERFACE)
12282MIDL_INTERFACE("e6e9c590-3e18-40e3-8299-061f98bde7c7")
12283ISpeechAudioFormat : public IDispatch
12284{
12285 virtual HRESULT STDMETHODCALLTYPE get_Type(
12286 SpeechAudioFormatType *AudioFormat) = 0;
12287
12288 virtual HRESULT STDMETHODCALLTYPE put_Type(
12289 SpeechAudioFormatType AudioFormat) = 0;
12290
12291 virtual HRESULT STDMETHODCALLTYPE get_Guid(
12292 BSTR *Guid) = 0;
12293
12294 virtual HRESULT STDMETHODCALLTYPE put_Guid(
12295 BSTR Guid) = 0;
12296
12297 virtual HRESULT STDMETHODCALLTYPE GetWaveFormatEx(
12298 ISpeechWaveFormatEx **SpeechWaveFormatEx) = 0;
12299
12300 virtual HRESULT STDMETHODCALLTYPE SetWaveFormatEx(
12301 ISpeechWaveFormatEx *SpeechWaveFormatEx) = 0;
12302
12303};
12304#ifdef __CRT_UUID_DECL
12305__CRT_UUID_DECL(ISpeechAudioFormat, 0xe6e9c590, 0x3e18, 0x40e3, 0x82,0x99, 0x06,0x1f,0x98,0xbd,0xe7,0xc7)
12306#endif
12307#else
12308typedef struct ISpeechAudioFormatVtbl {
12309 BEGIN_INTERFACE
12310
12311 /*** IUnknown methods ***/
12312 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12313 ISpeechAudioFormat *This,
12314 REFIID riid,
12315 void **ppvObject);
12316
12317 ULONG (STDMETHODCALLTYPE *AddRef)(
12318 ISpeechAudioFormat *This);
12319
12320 ULONG (STDMETHODCALLTYPE *Release)(
12321 ISpeechAudioFormat *This);
12322
12323 /*** IDispatch methods ***/
12324 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12325 ISpeechAudioFormat *This,
12326 UINT *pctinfo);
12327
12328 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12329 ISpeechAudioFormat *This,
12330 UINT iTInfo,
12331 LCID lcid,
12332 ITypeInfo **ppTInfo);
12333
12334 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12335 ISpeechAudioFormat *This,
12336 REFIID riid,
12337 LPOLESTR *rgszNames,
12338 UINT cNames,
12339 LCID lcid,
12340 DISPID *rgDispId);
12341
12342 HRESULT (STDMETHODCALLTYPE *Invoke)(
12343 ISpeechAudioFormat *This,
12344 DISPID dispIdMember,
12345 REFIID riid,
12346 LCID lcid,
12347 WORD wFlags,
12348 DISPPARAMS *pDispParams,
12349 VARIANT *pVarResult,
12350 EXCEPINFO *pExcepInfo,
12351 UINT *puArgErr);
12352
12353 /*** ISpeechAudioFormat methods ***/
12354 HRESULT (STDMETHODCALLTYPE *get_Type)(
12355 ISpeechAudioFormat *This,
12356 SpeechAudioFormatType *AudioFormat);
12357
12358 HRESULT (STDMETHODCALLTYPE *put_Type)(
12359 ISpeechAudioFormat *This,
12360 SpeechAudioFormatType AudioFormat);
12361
12362 HRESULT (STDMETHODCALLTYPE *get_Guid)(
12363 ISpeechAudioFormat *This,
12364 BSTR *Guid);
12365
12366 HRESULT (STDMETHODCALLTYPE *put_Guid)(
12367 ISpeechAudioFormat *This,
12368 BSTR Guid);
12369
12370 HRESULT (STDMETHODCALLTYPE *GetWaveFormatEx)(
12371 ISpeechAudioFormat *This,
12372 ISpeechWaveFormatEx **SpeechWaveFormatEx);
12373
12374 HRESULT (STDMETHODCALLTYPE *SetWaveFormatEx)(
12375 ISpeechAudioFormat *This,
12376 ISpeechWaveFormatEx *SpeechWaveFormatEx);
12377
12378 END_INTERFACE
12379} ISpeechAudioFormatVtbl;
12380
12381interface ISpeechAudioFormat {
12382 CONST_VTBL ISpeechAudioFormatVtbl* lpVtbl;
12383};
12384
12385#ifdef COBJMACROS
12386#ifndef WIDL_C_INLINE_WRAPPERS
12387/*** IUnknown methods ***/
12388#define ISpeechAudioFormat_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12389#define ISpeechAudioFormat_AddRef(This) (This)->lpVtbl->AddRef(This)
12390#define ISpeechAudioFormat_Release(This) (This)->lpVtbl->Release(This)
12391/*** IDispatch methods ***/
12392#define ISpeechAudioFormat_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12393#define ISpeechAudioFormat_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12394#define ISpeechAudioFormat_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12395#define ISpeechAudioFormat_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12396/*** ISpeechAudioFormat methods ***/
12397#define ISpeechAudioFormat_get_Type(This,AudioFormat) (This)->lpVtbl->get_Type(This,AudioFormat)
12398#define ISpeechAudioFormat_put_Type(This,AudioFormat) (This)->lpVtbl->put_Type(This,AudioFormat)
12399#define ISpeechAudioFormat_get_Guid(This,Guid) (This)->lpVtbl->get_Guid(This,Guid)
12400#define ISpeechAudioFormat_put_Guid(This,Guid) (This)->lpVtbl->put_Guid(This,Guid)
12401#define ISpeechAudioFormat_GetWaveFormatEx(This,SpeechWaveFormatEx) (This)->lpVtbl->GetWaveFormatEx(This,SpeechWaveFormatEx)
12402#define ISpeechAudioFormat_SetWaveFormatEx(This,SpeechWaveFormatEx) (This)->lpVtbl->SetWaveFormatEx(This,SpeechWaveFormatEx)
12403#else
12404/*** IUnknown methods ***/
12405static inline HRESULT ISpeechAudioFormat_QueryInterface(ISpeechAudioFormat* This,REFIID riid,void **ppvObject) {
12406 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12407}
12408static inline ULONG ISpeechAudioFormat_AddRef(ISpeechAudioFormat* This) {
12409 return This->lpVtbl->AddRef(This);
12410}
12411static inline ULONG ISpeechAudioFormat_Release(ISpeechAudioFormat* This) {
12412 return This->lpVtbl->Release(This);
12413}
12414/*** IDispatch methods ***/
12415static inline HRESULT ISpeechAudioFormat_GetTypeInfoCount(ISpeechAudioFormat* This,UINT *pctinfo) {
12416 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12417}
12418static inline HRESULT ISpeechAudioFormat_GetTypeInfo(ISpeechAudioFormat* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12419 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12420}
12421static inline HRESULT ISpeechAudioFormat_GetIDsOfNames(ISpeechAudioFormat* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12422 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12423}
12424static inline HRESULT ISpeechAudioFormat_Invoke(ISpeechAudioFormat* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12425 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12426}
12427/*** ISpeechAudioFormat methods ***/
12428static inline HRESULT ISpeechAudioFormat_get_Type(ISpeechAudioFormat* This,SpeechAudioFormatType *AudioFormat) {
12429 return This->lpVtbl->get_Type(This,AudioFormat);
12430}
12431static inline HRESULT ISpeechAudioFormat_put_Type(ISpeechAudioFormat* This,SpeechAudioFormatType AudioFormat) {
12432 return This->lpVtbl->put_Type(This,AudioFormat);
12433}
12434static inline HRESULT ISpeechAudioFormat_get_Guid(ISpeechAudioFormat* This,BSTR *Guid) {
12435 return This->lpVtbl->get_Guid(This,Guid);
12436}
12437static inline HRESULT ISpeechAudioFormat_put_Guid(ISpeechAudioFormat* This,BSTR Guid) {
12438 return This->lpVtbl->put_Guid(This,Guid);
12439}
12440static inline HRESULT ISpeechAudioFormat_GetWaveFormatEx(ISpeechAudioFormat* This,ISpeechWaveFormatEx **SpeechWaveFormatEx) {
12441 return This->lpVtbl->GetWaveFormatEx(This,SpeechWaveFormatEx);
12442}
12443static inline HRESULT ISpeechAudioFormat_SetWaveFormatEx(ISpeechAudioFormat* This,ISpeechWaveFormatEx *SpeechWaveFormatEx) {
12444 return This->lpVtbl->SetWaveFormatEx(This,SpeechWaveFormatEx);
12445}
12446#endif
12447#endif
12448
12449#endif
12450
12451
12452#endif /* __ISpeechAudioFormat_INTERFACE_DEFINED__ */
12453
12454/*****************************************************************************
12455 * ISpeechBaseStream interface
12456 */
12457#ifndef __ISpeechBaseStream_INTERFACE_DEFINED__
12458#define __ISpeechBaseStream_INTERFACE_DEFINED__
12459
12460DEFINE_GUID(IID_ISpeechBaseStream, 0x6450336f, 0x7d49, 0x4ced, 0x80,0x97, 0x49,0xd6,0xde,0xe3,0x72,0x94);
12461#if defined(__cplusplus) && !defined(CINTERFACE)
12462MIDL_INTERFACE("6450336f-7d49-4ced-8097-49d6dee37294")
12463ISpeechBaseStream : public IDispatch
12464{
12465 virtual HRESULT STDMETHODCALLTYPE get_Format(
12466 ISpeechAudioFormat **AudioFormat) = 0;
12467
12468 virtual HRESULT STDMETHODCALLTYPE putref_Format(
12469 ISpeechAudioFormat *AudioFormat) = 0;
12470
12471 virtual HRESULT STDMETHODCALLTYPE Read(
12472 VARIANT *Buffer,
12473 LONG NumberOfBytes,
12474 LONG *BytesRead) = 0;
12475
12476 virtual HRESULT STDMETHODCALLTYPE Write(
12477 VARIANT Buffer,
12478 LONG *BytesWritten) = 0;
12479
12480 virtual HRESULT STDMETHODCALLTYPE Seek(
12481 VARIANT Position,
12482 SpeechStreamSeekPositionType Origin,
12483 VARIANT *NewPosition) = 0;
12484
12485};
12486#ifdef __CRT_UUID_DECL
12487__CRT_UUID_DECL(ISpeechBaseStream, 0x6450336f, 0x7d49, 0x4ced, 0x80,0x97, 0x49,0xd6,0xde,0xe3,0x72,0x94)
12488#endif
12489#else
12490typedef struct ISpeechBaseStreamVtbl {
12491 BEGIN_INTERFACE
12492
12493 /*** IUnknown methods ***/
12494 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12495 ISpeechBaseStream *This,
12496 REFIID riid,
12497 void **ppvObject);
12498
12499 ULONG (STDMETHODCALLTYPE *AddRef)(
12500 ISpeechBaseStream *This);
12501
12502 ULONG (STDMETHODCALLTYPE *Release)(
12503 ISpeechBaseStream *This);
12504
12505 /*** IDispatch methods ***/
12506 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12507 ISpeechBaseStream *This,
12508 UINT *pctinfo);
12509
12510 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12511 ISpeechBaseStream *This,
12512 UINT iTInfo,
12513 LCID lcid,
12514 ITypeInfo **ppTInfo);
12515
12516 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12517 ISpeechBaseStream *This,
12518 REFIID riid,
12519 LPOLESTR *rgszNames,
12520 UINT cNames,
12521 LCID lcid,
12522 DISPID *rgDispId);
12523
12524 HRESULT (STDMETHODCALLTYPE *Invoke)(
12525 ISpeechBaseStream *This,
12526 DISPID dispIdMember,
12527 REFIID riid,
12528 LCID lcid,
12529 WORD wFlags,
12530 DISPPARAMS *pDispParams,
12531 VARIANT *pVarResult,
12532 EXCEPINFO *pExcepInfo,
12533 UINT *puArgErr);
12534
12535 /*** ISpeechBaseStream methods ***/
12536 HRESULT (STDMETHODCALLTYPE *get_Format)(
12537 ISpeechBaseStream *This,
12538 ISpeechAudioFormat **AudioFormat);
12539
12540 HRESULT (STDMETHODCALLTYPE *putref_Format)(
12541 ISpeechBaseStream *This,
12542 ISpeechAudioFormat *AudioFormat);
12543
12544 HRESULT (STDMETHODCALLTYPE *Read)(
12545 ISpeechBaseStream *This,
12546 VARIANT *Buffer,
12547 LONG NumberOfBytes,
12548 LONG *BytesRead);
12549
12550 HRESULT (STDMETHODCALLTYPE *Write)(
12551 ISpeechBaseStream *This,
12552 VARIANT Buffer,
12553 LONG *BytesWritten);
12554
12555 HRESULT (STDMETHODCALLTYPE *Seek)(
12556 ISpeechBaseStream *This,
12557 VARIANT Position,
12558 SpeechStreamSeekPositionType Origin,
12559 VARIANT *NewPosition);
12560
12561 END_INTERFACE
12562} ISpeechBaseStreamVtbl;
12563
12564interface ISpeechBaseStream {
12565 CONST_VTBL ISpeechBaseStreamVtbl* lpVtbl;
12566};
12567
12568#ifdef COBJMACROS
12569#ifndef WIDL_C_INLINE_WRAPPERS
12570/*** IUnknown methods ***/
12571#define ISpeechBaseStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12572#define ISpeechBaseStream_AddRef(This) (This)->lpVtbl->AddRef(This)
12573#define ISpeechBaseStream_Release(This) (This)->lpVtbl->Release(This)
12574/*** IDispatch methods ***/
12575#define ISpeechBaseStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12576#define ISpeechBaseStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12577#define ISpeechBaseStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12578#define ISpeechBaseStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12579/*** ISpeechBaseStream methods ***/
12580#define ISpeechBaseStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
12581#define ISpeechBaseStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
12582#define ISpeechBaseStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
12583#define ISpeechBaseStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
12584#define ISpeechBaseStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
12585#else
12586/*** IUnknown methods ***/
12587static inline HRESULT ISpeechBaseStream_QueryInterface(ISpeechBaseStream* This,REFIID riid,void **ppvObject) {
12588 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12589}
12590static inline ULONG ISpeechBaseStream_AddRef(ISpeechBaseStream* This) {
12591 return This->lpVtbl->AddRef(This);
12592}
12593static inline ULONG ISpeechBaseStream_Release(ISpeechBaseStream* This) {
12594 return This->lpVtbl->Release(This);
12595}
12596/*** IDispatch methods ***/
12597static inline HRESULT ISpeechBaseStream_GetTypeInfoCount(ISpeechBaseStream* This,UINT *pctinfo) {
12598 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12599}
12600static inline HRESULT ISpeechBaseStream_GetTypeInfo(ISpeechBaseStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12601 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12602}
12603static inline HRESULT ISpeechBaseStream_GetIDsOfNames(ISpeechBaseStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12604 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12605}
12606static inline HRESULT ISpeechBaseStream_Invoke(ISpeechBaseStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12607 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12608}
12609/*** ISpeechBaseStream methods ***/
12610static inline HRESULT ISpeechBaseStream_get_Format(ISpeechBaseStream* This,ISpeechAudioFormat **AudioFormat) {
12611 return This->lpVtbl->get_Format(This,AudioFormat);
12612}
12613static inline HRESULT ISpeechBaseStream_putref_Format(ISpeechBaseStream* This,ISpeechAudioFormat *AudioFormat) {
12614 return This->lpVtbl->putref_Format(This,AudioFormat);
12615}
12616static inline HRESULT ISpeechBaseStream_Read(ISpeechBaseStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
12617 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
12618}
12619static inline HRESULT ISpeechBaseStream_Write(ISpeechBaseStream* This,VARIANT Buffer,LONG *BytesWritten) {
12620 return This->lpVtbl->Write(This,Buffer,BytesWritten);
12621}
12622static inline HRESULT ISpeechBaseStream_Seek(ISpeechBaseStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
12623 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
12624}
12625#endif
12626#endif
12627
12628#endif
12629
12630
12631#endif /* __ISpeechBaseStream_INTERFACE_DEFINED__ */
12632
12633/*****************************************************************************
12634 * ISpeechAudio interface
12635 */
12636#ifndef __ISpeechAudio_INTERFACE_DEFINED__
12637#define __ISpeechAudio_INTERFACE_DEFINED__
12638
12639DEFINE_GUID(IID_ISpeechAudio, 0xcff8e175, 0x019e, 0x11d3, 0xa0,0x8e, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5);
12640#if defined(__cplusplus) && !defined(CINTERFACE)
12641MIDL_INTERFACE("cff8e175-019e-11d3-a08e-00c04f8ef9b5")
12642ISpeechAudio : public ISpeechBaseStream
12643{
12644 virtual HRESULT STDMETHODCALLTYPE get_Status(
12645 ISpeechAudioStatus **Status) = 0;
12646
12647 virtual HRESULT STDMETHODCALLTYPE get_BufferInfo(
12648 ISpeechAudioBufferInfo **BufferInfo) = 0;
12649
12650 virtual HRESULT STDMETHODCALLTYPE get_DefaultFormat(
12651 ISpeechAudioFormat **StreamFormat) = 0;
12652
12653 virtual HRESULT STDMETHODCALLTYPE get_Volume(
12654 LONG *Volume) = 0;
12655
12656 virtual HRESULT STDMETHODCALLTYPE put_Volume(
12657 LONG Volume) = 0;
12658
12659 virtual HRESULT STDMETHODCALLTYPE get_BufferNotifySize(
12660 LONG *BufferNotifySize) = 0;
12661
12662 virtual HRESULT STDMETHODCALLTYPE put_BufferNotifySize(
12663 LONG BufferNotifySize) = 0;
12664
12665 virtual HRESULT STDMETHODCALLTYPE get_EventHandle(
12666 LONG *EventHandle) = 0;
12667
12668 virtual HRESULT STDMETHODCALLTYPE SetState(
12669 SpeechAudioState State) = 0;
12670
12671};
12672#ifdef __CRT_UUID_DECL
12673__CRT_UUID_DECL(ISpeechAudio, 0xcff8e175, 0x019e, 0x11d3, 0xa0,0x8e, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5)
12674#endif
12675#else
12676typedef struct ISpeechAudioVtbl {
12677 BEGIN_INTERFACE
12678
12679 /*** IUnknown methods ***/
12680 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12681 ISpeechAudio *This,
12682 REFIID riid,
12683 void **ppvObject);
12684
12685 ULONG (STDMETHODCALLTYPE *AddRef)(
12686 ISpeechAudio *This);
12687
12688 ULONG (STDMETHODCALLTYPE *Release)(
12689 ISpeechAudio *This);
12690
12691 /*** IDispatch methods ***/
12692 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12693 ISpeechAudio *This,
12694 UINT *pctinfo);
12695
12696 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12697 ISpeechAudio *This,
12698 UINT iTInfo,
12699 LCID lcid,
12700 ITypeInfo **ppTInfo);
12701
12702 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12703 ISpeechAudio *This,
12704 REFIID riid,
12705 LPOLESTR *rgszNames,
12706 UINT cNames,
12707 LCID lcid,
12708 DISPID *rgDispId);
12709
12710 HRESULT (STDMETHODCALLTYPE *Invoke)(
12711 ISpeechAudio *This,
12712 DISPID dispIdMember,
12713 REFIID riid,
12714 LCID lcid,
12715 WORD wFlags,
12716 DISPPARAMS *pDispParams,
12717 VARIANT *pVarResult,
12718 EXCEPINFO *pExcepInfo,
12719 UINT *puArgErr);
12720
12721 /*** ISpeechBaseStream methods ***/
12722 HRESULT (STDMETHODCALLTYPE *get_Format)(
12723 ISpeechAudio *This,
12724 ISpeechAudioFormat **AudioFormat);
12725
12726 HRESULT (STDMETHODCALLTYPE *putref_Format)(
12727 ISpeechAudio *This,
12728 ISpeechAudioFormat *AudioFormat);
12729
12730 HRESULT (STDMETHODCALLTYPE *Read)(
12731 ISpeechAudio *This,
12732 VARIANT *Buffer,
12733 LONG NumberOfBytes,
12734 LONG *BytesRead);
12735
12736 HRESULT (STDMETHODCALLTYPE *Write)(
12737 ISpeechAudio *This,
12738 VARIANT Buffer,
12739 LONG *BytesWritten);
12740
12741 HRESULT (STDMETHODCALLTYPE *Seek)(
12742 ISpeechAudio *This,
12743 VARIANT Position,
12744 SpeechStreamSeekPositionType Origin,
12745 VARIANT *NewPosition);
12746
12747 /*** ISpeechAudio methods ***/
12748 HRESULT (STDMETHODCALLTYPE *get_Status)(
12749 ISpeechAudio *This,
12750 ISpeechAudioStatus **Status);
12751
12752 HRESULT (STDMETHODCALLTYPE *get_BufferInfo)(
12753 ISpeechAudio *This,
12754 ISpeechAudioBufferInfo **BufferInfo);
12755
12756 HRESULT (STDMETHODCALLTYPE *get_DefaultFormat)(
12757 ISpeechAudio *This,
12758 ISpeechAudioFormat **StreamFormat);
12759
12760 HRESULT (STDMETHODCALLTYPE *get_Volume)(
12761 ISpeechAudio *This,
12762 LONG *Volume);
12763
12764 HRESULT (STDMETHODCALLTYPE *put_Volume)(
12765 ISpeechAudio *This,
12766 LONG Volume);
12767
12768 HRESULT (STDMETHODCALLTYPE *get_BufferNotifySize)(
12769 ISpeechAudio *This,
12770 LONG *BufferNotifySize);
12771
12772 HRESULT (STDMETHODCALLTYPE *put_BufferNotifySize)(
12773 ISpeechAudio *This,
12774 LONG BufferNotifySize);
12775
12776 HRESULT (STDMETHODCALLTYPE *get_EventHandle)(
12777 ISpeechAudio *This,
12778 LONG *EventHandle);
12779
12780 HRESULT (STDMETHODCALLTYPE *SetState)(
12781 ISpeechAudio *This,
12782 SpeechAudioState State);
12783
12784 END_INTERFACE
12785} ISpeechAudioVtbl;
12786
12787interface ISpeechAudio {
12788 CONST_VTBL ISpeechAudioVtbl* lpVtbl;
12789};
12790
12791#ifdef COBJMACROS
12792#ifndef WIDL_C_INLINE_WRAPPERS
12793/*** IUnknown methods ***/
12794#define ISpeechAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12795#define ISpeechAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
12796#define ISpeechAudio_Release(This) (This)->lpVtbl->Release(This)
12797/*** IDispatch methods ***/
12798#define ISpeechAudio_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12799#define ISpeechAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12800#define ISpeechAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12801#define ISpeechAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12802/*** ISpeechBaseStream methods ***/
12803#define ISpeechAudio_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
12804#define ISpeechAudio_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
12805#define ISpeechAudio_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
12806#define ISpeechAudio_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
12807#define ISpeechAudio_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
12808/*** ISpeechAudio methods ***/
12809#define ISpeechAudio_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
12810#define ISpeechAudio_get_BufferInfo(This,BufferInfo) (This)->lpVtbl->get_BufferInfo(This,BufferInfo)
12811#define ISpeechAudio_get_DefaultFormat(This,StreamFormat) (This)->lpVtbl->get_DefaultFormat(This,StreamFormat)
12812#define ISpeechAudio_get_Volume(This,Volume) (This)->lpVtbl->get_Volume(This,Volume)
12813#define ISpeechAudio_put_Volume(This,Volume) (This)->lpVtbl->put_Volume(This,Volume)
12814#define ISpeechAudio_get_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->get_BufferNotifySize(This,BufferNotifySize)
12815#define ISpeechAudio_put_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->put_BufferNotifySize(This,BufferNotifySize)
12816#define ISpeechAudio_get_EventHandle(This,EventHandle) (This)->lpVtbl->get_EventHandle(This,EventHandle)
12817#define ISpeechAudio_SetState(This,State) (This)->lpVtbl->SetState(This,State)
12818#else
12819/*** IUnknown methods ***/
12820static inline HRESULT ISpeechAudio_QueryInterface(ISpeechAudio* This,REFIID riid,void **ppvObject) {
12821 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12822}
12823static inline ULONG ISpeechAudio_AddRef(ISpeechAudio* This) {
12824 return This->lpVtbl->AddRef(This);
12825}
12826static inline ULONG ISpeechAudio_Release(ISpeechAudio* This) {
12827 return This->lpVtbl->Release(This);
12828}
12829/*** IDispatch methods ***/
12830static inline HRESULT ISpeechAudio_GetTypeInfoCount(ISpeechAudio* This,UINT *pctinfo) {
12831 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12832}
12833static inline HRESULT ISpeechAudio_GetTypeInfo(ISpeechAudio* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12834 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12835}
12836static inline HRESULT ISpeechAudio_GetIDsOfNames(ISpeechAudio* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12837 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12838}
12839static inline HRESULT ISpeechAudio_Invoke(ISpeechAudio* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12840 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12841}
12842/*** ISpeechBaseStream methods ***/
12843static inline HRESULT ISpeechAudio_get_Format(ISpeechAudio* This,ISpeechAudioFormat **AudioFormat) {
12844 return This->lpVtbl->get_Format(This,AudioFormat);
12845}
12846static inline HRESULT ISpeechAudio_putref_Format(ISpeechAudio* This,ISpeechAudioFormat *AudioFormat) {
12847 return This->lpVtbl->putref_Format(This,AudioFormat);
12848}
12849static inline HRESULT ISpeechAudio_Read(ISpeechAudio* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
12850 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
12851}
12852static inline HRESULT ISpeechAudio_Write(ISpeechAudio* This,VARIANT Buffer,LONG *BytesWritten) {
12853 return This->lpVtbl->Write(This,Buffer,BytesWritten);
12854}
12855static inline HRESULT ISpeechAudio_Seek(ISpeechAudio* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
12856 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
12857}
12858/*** ISpeechAudio methods ***/
12859static inline HRESULT ISpeechAudio_get_Status(ISpeechAudio* This,ISpeechAudioStatus **Status) {
12860 return This->lpVtbl->get_Status(This,Status);
12861}
12862static inline HRESULT ISpeechAudio_get_BufferInfo(ISpeechAudio* This,ISpeechAudioBufferInfo **BufferInfo) {
12863 return This->lpVtbl->get_BufferInfo(This,BufferInfo);
12864}
12865static inline HRESULT ISpeechAudio_get_DefaultFormat(ISpeechAudio* This,ISpeechAudioFormat **StreamFormat) {
12866 return This->lpVtbl->get_DefaultFormat(This,StreamFormat);
12867}
12868static inline HRESULT ISpeechAudio_get_Volume(ISpeechAudio* This,LONG *Volume) {
12869 return This->lpVtbl->get_Volume(This,Volume);
12870}
12871static inline HRESULT ISpeechAudio_put_Volume(ISpeechAudio* This,LONG Volume) {
12872 return This->lpVtbl->put_Volume(This,Volume);
12873}
12874static inline HRESULT ISpeechAudio_get_BufferNotifySize(ISpeechAudio* This,LONG *BufferNotifySize) {
12875 return This->lpVtbl->get_BufferNotifySize(This,BufferNotifySize);
12876}
12877static inline HRESULT ISpeechAudio_put_BufferNotifySize(ISpeechAudio* This,LONG BufferNotifySize) {
12878 return This->lpVtbl->put_BufferNotifySize(This,BufferNotifySize);
12879}
12880static inline HRESULT ISpeechAudio_get_EventHandle(ISpeechAudio* This,LONG *EventHandle) {
12881 return This->lpVtbl->get_EventHandle(This,EventHandle);
12882}
12883static inline HRESULT ISpeechAudio_SetState(ISpeechAudio* This,SpeechAudioState State) {
12884 return This->lpVtbl->SetState(This,State);
12885}
12886#endif
12887#endif
12888
12889#endif
12890
12891
12892#endif /* __ISpeechAudio_INTERFACE_DEFINED__ */
12893
12894/*****************************************************************************
12895 * ISpeechMMSysAudio interface
12896 */
12897#ifndef __ISpeechMMSysAudio_INTERFACE_DEFINED__
12898#define __ISpeechMMSysAudio_INTERFACE_DEFINED__
12899
12900DEFINE_GUID(IID_ISpeechMMSysAudio, 0x3c76af6d, 0x1fd7, 0x4831, 0x81,0xd1, 0x3b,0x71,0xd5,0xa1,0x3c,0x44);
12901#if defined(__cplusplus) && !defined(CINTERFACE)
12902MIDL_INTERFACE("3c76af6d-1fd7-4831-81d1-3b71d5a13c44")
12903ISpeechMMSysAudio : public ISpeechAudio
12904{
12905 virtual HRESULT STDMETHODCALLTYPE get_DeviceId(
12906 LONG *DeviceId) = 0;
12907
12908 virtual HRESULT STDMETHODCALLTYPE put_DeviceId(
12909 LONG DeviceId) = 0;
12910
12911 virtual HRESULT STDMETHODCALLTYPE get_LineId(
12912 LONG *LineId) = 0;
12913
12914 virtual HRESULT STDMETHODCALLTYPE put_LineId(
12915 LONG LineId) = 0;
12916
12917 virtual HRESULT STDMETHODCALLTYPE get_MMHandle(
12918 LONG *Handle) = 0;
12919
12920};
12921#ifdef __CRT_UUID_DECL
12922__CRT_UUID_DECL(ISpeechMMSysAudio, 0x3c76af6d, 0x1fd7, 0x4831, 0x81,0xd1, 0x3b,0x71,0xd5,0xa1,0x3c,0x44)
12923#endif
12924#else
12925typedef struct ISpeechMMSysAudioVtbl {
12926 BEGIN_INTERFACE
12927
12928 /*** IUnknown methods ***/
12929 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12930 ISpeechMMSysAudio *This,
12931 REFIID riid,
12932 void **ppvObject);
12933
12934 ULONG (STDMETHODCALLTYPE *AddRef)(
12935 ISpeechMMSysAudio *This);
12936
12937 ULONG (STDMETHODCALLTYPE *Release)(
12938 ISpeechMMSysAudio *This);
12939
12940 /*** IDispatch methods ***/
12941 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12942 ISpeechMMSysAudio *This,
12943 UINT *pctinfo);
12944
12945 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12946 ISpeechMMSysAudio *This,
12947 UINT iTInfo,
12948 LCID lcid,
12949 ITypeInfo **ppTInfo);
12950
12951 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12952 ISpeechMMSysAudio *This,
12953 REFIID riid,
12954 LPOLESTR *rgszNames,
12955 UINT cNames,
12956 LCID lcid,
12957 DISPID *rgDispId);
12958
12959 HRESULT (STDMETHODCALLTYPE *Invoke)(
12960 ISpeechMMSysAudio *This,
12961 DISPID dispIdMember,
12962 REFIID riid,
12963 LCID lcid,
12964 WORD wFlags,
12965 DISPPARAMS *pDispParams,
12966 VARIANT *pVarResult,
12967 EXCEPINFO *pExcepInfo,
12968 UINT *puArgErr);
12969
12970 /*** ISpeechBaseStream methods ***/
12971 HRESULT (STDMETHODCALLTYPE *get_Format)(
12972 ISpeechMMSysAudio *This,
12973 ISpeechAudioFormat **AudioFormat);
12974
12975 HRESULT (STDMETHODCALLTYPE *putref_Format)(
12976 ISpeechMMSysAudio *This,
12977 ISpeechAudioFormat *AudioFormat);
12978
12979 HRESULT (STDMETHODCALLTYPE *Read)(
12980 ISpeechMMSysAudio *This,
12981 VARIANT *Buffer,
12982 LONG NumberOfBytes,
12983 LONG *BytesRead);
12984
12985 HRESULT (STDMETHODCALLTYPE *Write)(
12986 ISpeechMMSysAudio *This,
12987 VARIANT Buffer,
12988 LONG *BytesWritten);
12989
12990 HRESULT (STDMETHODCALLTYPE *Seek)(
12991 ISpeechMMSysAudio *This,
12992 VARIANT Position,
12993 SpeechStreamSeekPositionType Origin,
12994 VARIANT *NewPosition);
12995
12996 /*** ISpeechAudio methods ***/
12997 HRESULT (STDMETHODCALLTYPE *get_Status)(
12998 ISpeechMMSysAudio *This,
12999 ISpeechAudioStatus **Status);
13000
13001 HRESULT (STDMETHODCALLTYPE *get_BufferInfo)(
13002 ISpeechMMSysAudio *This,
13003 ISpeechAudioBufferInfo **BufferInfo);
13004
13005 HRESULT (STDMETHODCALLTYPE *get_DefaultFormat)(
13006 ISpeechMMSysAudio *This,
13007 ISpeechAudioFormat **StreamFormat);
13008
13009 HRESULT (STDMETHODCALLTYPE *get_Volume)(
13010 ISpeechMMSysAudio *This,
13011 LONG *Volume);
13012
13013 HRESULT (STDMETHODCALLTYPE *put_Volume)(
13014 ISpeechMMSysAudio *This,
13015 LONG Volume);
13016
13017 HRESULT (STDMETHODCALLTYPE *get_BufferNotifySize)(
13018 ISpeechMMSysAudio *This,
13019 LONG *BufferNotifySize);
13020
13021 HRESULT (STDMETHODCALLTYPE *put_BufferNotifySize)(
13022 ISpeechMMSysAudio *This,
13023 LONG BufferNotifySize);
13024
13025 HRESULT (STDMETHODCALLTYPE *get_EventHandle)(
13026 ISpeechMMSysAudio *This,
13027 LONG *EventHandle);
13028
13029 HRESULT (STDMETHODCALLTYPE *SetState)(
13030 ISpeechMMSysAudio *This,
13031 SpeechAudioState State);
13032
13033 /*** ISpeechMMSysAudio methods ***/
13034 HRESULT (STDMETHODCALLTYPE *get_DeviceId)(
13035 ISpeechMMSysAudio *This,
13036 LONG *DeviceId);
13037
13038 HRESULT (STDMETHODCALLTYPE *put_DeviceId)(
13039 ISpeechMMSysAudio *This,
13040 LONG DeviceId);
13041
13042 HRESULT (STDMETHODCALLTYPE *get_LineId)(
13043 ISpeechMMSysAudio *This,
13044 LONG *LineId);
13045
13046 HRESULT (STDMETHODCALLTYPE *put_LineId)(
13047 ISpeechMMSysAudio *This,
13048 LONG LineId);
13049
13050 HRESULT (STDMETHODCALLTYPE *get_MMHandle)(
13051 ISpeechMMSysAudio *This,
13052 LONG *Handle);
13053
13054 END_INTERFACE
13055} ISpeechMMSysAudioVtbl;
13056
13057interface ISpeechMMSysAudio {
13058 CONST_VTBL ISpeechMMSysAudioVtbl* lpVtbl;
13059};
13060
13061#ifdef COBJMACROS
13062#ifndef WIDL_C_INLINE_WRAPPERS
13063/*** IUnknown methods ***/
13064#define ISpeechMMSysAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13065#define ISpeechMMSysAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
13066#define ISpeechMMSysAudio_Release(This) (This)->lpVtbl->Release(This)
13067/*** IDispatch methods ***/
13068#define ISpeechMMSysAudio_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13069#define ISpeechMMSysAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13070#define ISpeechMMSysAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13071#define ISpeechMMSysAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13072/*** ISpeechBaseStream methods ***/
13073#define ISpeechMMSysAudio_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
13074#define ISpeechMMSysAudio_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
13075#define ISpeechMMSysAudio_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
13076#define ISpeechMMSysAudio_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
13077#define ISpeechMMSysAudio_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
13078/*** ISpeechAudio methods ***/
13079#define ISpeechMMSysAudio_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
13080#define ISpeechMMSysAudio_get_BufferInfo(This,BufferInfo) (This)->lpVtbl->get_BufferInfo(This,BufferInfo)
13081#define ISpeechMMSysAudio_get_DefaultFormat(This,StreamFormat) (This)->lpVtbl->get_DefaultFormat(This,StreamFormat)
13082#define ISpeechMMSysAudio_get_Volume(This,Volume) (This)->lpVtbl->get_Volume(This,Volume)
13083#define ISpeechMMSysAudio_put_Volume(This,Volume) (This)->lpVtbl->put_Volume(This,Volume)
13084#define ISpeechMMSysAudio_get_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->get_BufferNotifySize(This,BufferNotifySize)
13085#define ISpeechMMSysAudio_put_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->put_BufferNotifySize(This,BufferNotifySize)
13086#define ISpeechMMSysAudio_get_EventHandle(This,EventHandle) (This)->lpVtbl->get_EventHandle(This,EventHandle)
13087#define ISpeechMMSysAudio_SetState(This,State) (This)->lpVtbl->SetState(This,State)
13088/*** ISpeechMMSysAudio methods ***/
13089#define ISpeechMMSysAudio_get_DeviceId(This,DeviceId) (This)->lpVtbl->get_DeviceId(This,DeviceId)
13090#define ISpeechMMSysAudio_put_DeviceId(This,DeviceId) (This)->lpVtbl->put_DeviceId(This,DeviceId)
13091#define ISpeechMMSysAudio_get_LineId(This,LineId) (This)->lpVtbl->get_LineId(This,LineId)
13092#define ISpeechMMSysAudio_put_LineId(This,LineId) (This)->lpVtbl->put_LineId(This,LineId)
13093#define ISpeechMMSysAudio_get_MMHandle(This,Handle) (This)->lpVtbl->get_MMHandle(This,Handle)
13094#else
13095/*** IUnknown methods ***/
13096static inline HRESULT ISpeechMMSysAudio_QueryInterface(ISpeechMMSysAudio* This,REFIID riid,void **ppvObject) {
13097 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13098}
13099static inline ULONG ISpeechMMSysAudio_AddRef(ISpeechMMSysAudio* This) {
13100 return This->lpVtbl->AddRef(This);
13101}
13102static inline ULONG ISpeechMMSysAudio_Release(ISpeechMMSysAudio* This) {
13103 return This->lpVtbl->Release(This);
13104}
13105/*** IDispatch methods ***/
13106static inline HRESULT ISpeechMMSysAudio_GetTypeInfoCount(ISpeechMMSysAudio* This,UINT *pctinfo) {
13107 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13108}
13109static inline HRESULT ISpeechMMSysAudio_GetTypeInfo(ISpeechMMSysAudio* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13110 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13111}
13112static inline HRESULT ISpeechMMSysAudio_GetIDsOfNames(ISpeechMMSysAudio* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13113 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13114}
13115static inline HRESULT ISpeechMMSysAudio_Invoke(ISpeechMMSysAudio* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13116 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13117}
13118/*** ISpeechBaseStream methods ***/
13119static inline HRESULT ISpeechMMSysAudio_get_Format(ISpeechMMSysAudio* This,ISpeechAudioFormat **AudioFormat) {
13120 return This->lpVtbl->get_Format(This,AudioFormat);
13121}
13122static inline HRESULT ISpeechMMSysAudio_putref_Format(ISpeechMMSysAudio* This,ISpeechAudioFormat *AudioFormat) {
13123 return This->lpVtbl->putref_Format(This,AudioFormat);
13124}
13125static inline HRESULT ISpeechMMSysAudio_Read(ISpeechMMSysAudio* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
13126 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
13127}
13128static inline HRESULT ISpeechMMSysAudio_Write(ISpeechMMSysAudio* This,VARIANT Buffer,LONG *BytesWritten) {
13129 return This->lpVtbl->Write(This,Buffer,BytesWritten);
13130}
13131static inline HRESULT ISpeechMMSysAudio_Seek(ISpeechMMSysAudio* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
13132 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
13133}
13134/*** ISpeechAudio methods ***/
13135static inline HRESULT ISpeechMMSysAudio_get_Status(ISpeechMMSysAudio* This,ISpeechAudioStatus **Status) {
13136 return This->lpVtbl->get_Status(This,Status);
13137}
13138static inline HRESULT ISpeechMMSysAudio_get_BufferInfo(ISpeechMMSysAudio* This,ISpeechAudioBufferInfo **BufferInfo) {
13139 return This->lpVtbl->get_BufferInfo(This,BufferInfo);
13140}
13141static inline HRESULT ISpeechMMSysAudio_get_DefaultFormat(ISpeechMMSysAudio* This,ISpeechAudioFormat **StreamFormat) {
13142 return This->lpVtbl->get_DefaultFormat(This,StreamFormat);
13143}
13144static inline HRESULT ISpeechMMSysAudio_get_Volume(ISpeechMMSysAudio* This,LONG *Volume) {
13145 return This->lpVtbl->get_Volume(This,Volume);
13146}
13147static inline HRESULT ISpeechMMSysAudio_put_Volume(ISpeechMMSysAudio* This,LONG Volume) {
13148 return This->lpVtbl->put_Volume(This,Volume);
13149}
13150static inline HRESULT ISpeechMMSysAudio_get_BufferNotifySize(ISpeechMMSysAudio* This,LONG *BufferNotifySize) {
13151 return This->lpVtbl->get_BufferNotifySize(This,BufferNotifySize);
13152}
13153static inline HRESULT ISpeechMMSysAudio_put_BufferNotifySize(ISpeechMMSysAudio* This,LONG BufferNotifySize) {
13154 return This->lpVtbl->put_BufferNotifySize(This,BufferNotifySize);
13155}
13156static inline HRESULT ISpeechMMSysAudio_get_EventHandle(ISpeechMMSysAudio* This,LONG *EventHandle) {
13157 return This->lpVtbl->get_EventHandle(This,EventHandle);
13158}
13159static inline HRESULT ISpeechMMSysAudio_SetState(ISpeechMMSysAudio* This,SpeechAudioState State) {
13160 return This->lpVtbl->SetState(This,State);
13161}
13162/*** ISpeechMMSysAudio methods ***/
13163static inline HRESULT ISpeechMMSysAudio_get_DeviceId(ISpeechMMSysAudio* This,LONG *DeviceId) {
13164 return This->lpVtbl->get_DeviceId(This,DeviceId);
13165}
13166static inline HRESULT ISpeechMMSysAudio_put_DeviceId(ISpeechMMSysAudio* This,LONG DeviceId) {
13167 return This->lpVtbl->put_DeviceId(This,DeviceId);
13168}
13169static inline HRESULT ISpeechMMSysAudio_get_LineId(ISpeechMMSysAudio* This,LONG *LineId) {
13170 return This->lpVtbl->get_LineId(This,LineId);
13171}
13172static inline HRESULT ISpeechMMSysAudio_put_LineId(ISpeechMMSysAudio* This,LONG LineId) {
13173 return This->lpVtbl->put_LineId(This,LineId);
13174}
13175static inline HRESULT ISpeechMMSysAudio_get_MMHandle(ISpeechMMSysAudio* This,LONG *Handle) {
13176 return This->lpVtbl->get_MMHandle(This,Handle);
13177}
13178#endif
13179#endif
13180
13181#endif
13182
13183
13184#endif /* __ISpeechMMSysAudio_INTERFACE_DEFINED__ */
13185
13186/*****************************************************************************
13187 * ISpeechFileStream interface
13188 */
13189#ifndef __ISpeechFileStream_INTERFACE_DEFINED__
13190#define __ISpeechFileStream_INTERFACE_DEFINED__
13191
13192DEFINE_GUID(IID_ISpeechFileStream, 0xaf67f125, 0xab39, 0x4e93, 0xb4,0xa2, 0xcc,0x2e,0x66,0xe1,0x82,0xa7);
13193#if defined(__cplusplus) && !defined(CINTERFACE)
13194MIDL_INTERFACE("af67f125-ab39-4e93-b4a2-cc2e66e182a7")
13195ISpeechFileStream : public ISpeechBaseStream
13196{
13197 virtual HRESULT STDMETHODCALLTYPE Open(
13198 BSTR FileName,
13199 SpeechStreamFileMode FileMode = SSFMOpenForRead,
13200 VARIANT_BOOL DoEvents = 0) = 0;
13201
13202 virtual HRESULT STDMETHODCALLTYPE Close(
13203 ) = 0;
13204
13205};
13206#ifdef __CRT_UUID_DECL
13207__CRT_UUID_DECL(ISpeechFileStream, 0xaf67f125, 0xab39, 0x4e93, 0xb4,0xa2, 0xcc,0x2e,0x66,0xe1,0x82,0xa7)
13208#endif
13209#else
13210typedef struct ISpeechFileStreamVtbl {
13211 BEGIN_INTERFACE
13212
13213 /*** IUnknown methods ***/
13214 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13215 ISpeechFileStream *This,
13216 REFIID riid,
13217 void **ppvObject);
13218
13219 ULONG (STDMETHODCALLTYPE *AddRef)(
13220 ISpeechFileStream *This);
13221
13222 ULONG (STDMETHODCALLTYPE *Release)(
13223 ISpeechFileStream *This);
13224
13225 /*** IDispatch methods ***/
13226 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13227 ISpeechFileStream *This,
13228 UINT *pctinfo);
13229
13230 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13231 ISpeechFileStream *This,
13232 UINT iTInfo,
13233 LCID lcid,
13234 ITypeInfo **ppTInfo);
13235
13236 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13237 ISpeechFileStream *This,
13238 REFIID riid,
13239 LPOLESTR *rgszNames,
13240 UINT cNames,
13241 LCID lcid,
13242 DISPID *rgDispId);
13243
13244 HRESULT (STDMETHODCALLTYPE *Invoke)(
13245 ISpeechFileStream *This,
13246 DISPID dispIdMember,
13247 REFIID riid,
13248 LCID lcid,
13249 WORD wFlags,
13250 DISPPARAMS *pDispParams,
13251 VARIANT *pVarResult,
13252 EXCEPINFO *pExcepInfo,
13253 UINT *puArgErr);
13254
13255 /*** ISpeechBaseStream methods ***/
13256 HRESULT (STDMETHODCALLTYPE *get_Format)(
13257 ISpeechFileStream *This,
13258 ISpeechAudioFormat **AudioFormat);
13259
13260 HRESULT (STDMETHODCALLTYPE *putref_Format)(
13261 ISpeechFileStream *This,
13262 ISpeechAudioFormat *AudioFormat);
13263
13264 HRESULT (STDMETHODCALLTYPE *Read)(
13265 ISpeechFileStream *This,
13266 VARIANT *Buffer,
13267 LONG NumberOfBytes,
13268 LONG *BytesRead);
13269
13270 HRESULT (STDMETHODCALLTYPE *Write)(
13271 ISpeechFileStream *This,
13272 VARIANT Buffer,
13273 LONG *BytesWritten);
13274
13275 HRESULT (STDMETHODCALLTYPE *Seek)(
13276 ISpeechFileStream *This,
13277 VARIANT Position,
13278 SpeechStreamSeekPositionType Origin,
13279 VARIANT *NewPosition);
13280
13281 /*** ISpeechFileStream methods ***/
13282 HRESULT (STDMETHODCALLTYPE *Open)(
13283 ISpeechFileStream *This,
13284 BSTR FileName,
13285 SpeechStreamFileMode FileMode,
13286 VARIANT_BOOL DoEvents);
13287
13288 HRESULT (STDMETHODCALLTYPE *Close)(
13289 ISpeechFileStream *This);
13290
13291 END_INTERFACE
13292} ISpeechFileStreamVtbl;
13293
13294interface ISpeechFileStream {
13295 CONST_VTBL ISpeechFileStreamVtbl* lpVtbl;
13296};
13297
13298#ifdef COBJMACROS
13299#ifndef WIDL_C_INLINE_WRAPPERS
13300/*** IUnknown methods ***/
13301#define ISpeechFileStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13302#define ISpeechFileStream_AddRef(This) (This)->lpVtbl->AddRef(This)
13303#define ISpeechFileStream_Release(This) (This)->lpVtbl->Release(This)
13304/*** IDispatch methods ***/
13305#define ISpeechFileStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13306#define ISpeechFileStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13307#define ISpeechFileStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13308#define ISpeechFileStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13309/*** ISpeechBaseStream methods ***/
13310#define ISpeechFileStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
13311#define ISpeechFileStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
13312#define ISpeechFileStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
13313#define ISpeechFileStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
13314#define ISpeechFileStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
13315/*** ISpeechFileStream methods ***/
13316#define ISpeechFileStream_Open(This,FileName,FileMode,DoEvents) (This)->lpVtbl->Open(This,FileName,FileMode,DoEvents)
13317#define ISpeechFileStream_Close(This) (This)->lpVtbl->Close(This)
13318#else
13319/*** IUnknown methods ***/
13320static inline HRESULT ISpeechFileStream_QueryInterface(ISpeechFileStream* This,REFIID riid,void **ppvObject) {
13321 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13322}
13323static inline ULONG ISpeechFileStream_AddRef(ISpeechFileStream* This) {
13324 return This->lpVtbl->AddRef(This);
13325}
13326static inline ULONG ISpeechFileStream_Release(ISpeechFileStream* This) {
13327 return This->lpVtbl->Release(This);
13328}
13329/*** IDispatch methods ***/
13330static inline HRESULT ISpeechFileStream_GetTypeInfoCount(ISpeechFileStream* This,UINT *pctinfo) {
13331 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13332}
13333static inline HRESULT ISpeechFileStream_GetTypeInfo(ISpeechFileStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13334 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13335}
13336static inline HRESULT ISpeechFileStream_GetIDsOfNames(ISpeechFileStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13337 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13338}
13339static inline HRESULT ISpeechFileStream_Invoke(ISpeechFileStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13340 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13341}
13342/*** ISpeechBaseStream methods ***/
13343static inline HRESULT ISpeechFileStream_get_Format(ISpeechFileStream* This,ISpeechAudioFormat **AudioFormat) {
13344 return This->lpVtbl->get_Format(This,AudioFormat);
13345}
13346static inline HRESULT ISpeechFileStream_putref_Format(ISpeechFileStream* This,ISpeechAudioFormat *AudioFormat) {
13347 return This->lpVtbl->putref_Format(This,AudioFormat);
13348}
13349static inline HRESULT ISpeechFileStream_Read(ISpeechFileStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
13350 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
13351}
13352static inline HRESULT ISpeechFileStream_Write(ISpeechFileStream* This,VARIANT Buffer,LONG *BytesWritten) {
13353 return This->lpVtbl->Write(This,Buffer,BytesWritten);
13354}
13355static inline HRESULT ISpeechFileStream_Seek(ISpeechFileStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
13356 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
13357}
13358/*** ISpeechFileStream methods ***/
13359static inline HRESULT ISpeechFileStream_Open(ISpeechFileStream* This,BSTR FileName,SpeechStreamFileMode FileMode,VARIANT_BOOL DoEvents) {
13360 return This->lpVtbl->Open(This,FileName,FileMode,DoEvents);
13361}
13362static inline HRESULT ISpeechFileStream_Close(ISpeechFileStream* This) {
13363 return This->lpVtbl->Close(This);
13364}
13365#endif
13366#endif
13367
13368#endif
13369
13370
13371#endif /* __ISpeechFileStream_INTERFACE_DEFINED__ */
13372
13373/*****************************************************************************
13374 * ISpeechCustomStream interface
13375 */
13376#ifndef __ISpeechCustomStream_INTERFACE_DEFINED__
13377#define __ISpeechCustomStream_INTERFACE_DEFINED__
13378
13379DEFINE_GUID(IID_ISpeechCustomStream, 0x1a9e9f4f, 0x104f, 0x4db8, 0xa1,0x15, 0xef,0xd7,0xfd,0x0c,0x97,0xae);
13380#if defined(__cplusplus) && !defined(CINTERFACE)
13381MIDL_INTERFACE("1a9e9f4f-104f-4db8-a115-efd7fd0c97ae")
13382ISpeechCustomStream : public ISpeechBaseStream
13383{
13384 virtual HRESULT STDMETHODCALLTYPE get_BaseStream(
13385 IUnknown **ppUnkStream) = 0;
13386
13387 virtual HRESULT STDMETHODCALLTYPE putref_BaseStream(
13388 IUnknown *pUnkStream) = 0;
13389
13390};
13391#ifdef __CRT_UUID_DECL
13392__CRT_UUID_DECL(ISpeechCustomStream, 0x1a9e9f4f, 0x104f, 0x4db8, 0xa1,0x15, 0xef,0xd7,0xfd,0x0c,0x97,0xae)
13393#endif
13394#else
13395typedef struct ISpeechCustomStreamVtbl {
13396 BEGIN_INTERFACE
13397
13398 /*** IUnknown methods ***/
13399 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13400 ISpeechCustomStream *This,
13401 REFIID riid,
13402 void **ppvObject);
13403
13404 ULONG (STDMETHODCALLTYPE *AddRef)(
13405 ISpeechCustomStream *This);
13406
13407 ULONG (STDMETHODCALLTYPE *Release)(
13408 ISpeechCustomStream *This);
13409
13410 /*** IDispatch methods ***/
13411 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13412 ISpeechCustomStream *This,
13413 UINT *pctinfo);
13414
13415 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13416 ISpeechCustomStream *This,
13417 UINT iTInfo,
13418 LCID lcid,
13419 ITypeInfo **ppTInfo);
13420
13421 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13422 ISpeechCustomStream *This,
13423 REFIID riid,
13424 LPOLESTR *rgszNames,
13425 UINT cNames,
13426 LCID lcid,
13427 DISPID *rgDispId);
13428
13429 HRESULT (STDMETHODCALLTYPE *Invoke)(
13430 ISpeechCustomStream *This,
13431 DISPID dispIdMember,
13432 REFIID riid,
13433 LCID lcid,
13434 WORD wFlags,
13435 DISPPARAMS *pDispParams,
13436 VARIANT *pVarResult,
13437 EXCEPINFO *pExcepInfo,
13438 UINT *puArgErr);
13439
13440 /*** ISpeechBaseStream methods ***/
13441 HRESULT (STDMETHODCALLTYPE *get_Format)(
13442 ISpeechCustomStream *This,
13443 ISpeechAudioFormat **AudioFormat);
13444
13445 HRESULT (STDMETHODCALLTYPE *putref_Format)(
13446 ISpeechCustomStream *This,
13447 ISpeechAudioFormat *AudioFormat);
13448
13449 HRESULT (STDMETHODCALLTYPE *Read)(
13450 ISpeechCustomStream *This,
13451 VARIANT *Buffer,
13452 LONG NumberOfBytes,
13453 LONG *BytesRead);
13454
13455 HRESULT (STDMETHODCALLTYPE *Write)(
13456 ISpeechCustomStream *This,
13457 VARIANT Buffer,
13458 LONG *BytesWritten);
13459
13460 HRESULT (STDMETHODCALLTYPE *Seek)(
13461 ISpeechCustomStream *This,
13462 VARIANT Position,
13463 SpeechStreamSeekPositionType Origin,
13464 VARIANT *NewPosition);
13465
13466 /*** ISpeechCustomStream methods ***/
13467 HRESULT (STDMETHODCALLTYPE *get_BaseStream)(
13468 ISpeechCustomStream *This,
13469 IUnknown **ppUnkStream);
13470
13471 HRESULT (STDMETHODCALLTYPE *putref_BaseStream)(
13472 ISpeechCustomStream *This,
13473 IUnknown *pUnkStream);
13474
13475 END_INTERFACE
13476} ISpeechCustomStreamVtbl;
13477
13478interface ISpeechCustomStream {
13479 CONST_VTBL ISpeechCustomStreamVtbl* lpVtbl;
13480};
13481
13482#ifdef COBJMACROS
13483#ifndef WIDL_C_INLINE_WRAPPERS
13484/*** IUnknown methods ***/
13485#define ISpeechCustomStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13486#define ISpeechCustomStream_AddRef(This) (This)->lpVtbl->AddRef(This)
13487#define ISpeechCustomStream_Release(This) (This)->lpVtbl->Release(This)
13488/*** IDispatch methods ***/
13489#define ISpeechCustomStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13490#define ISpeechCustomStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13491#define ISpeechCustomStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13492#define ISpeechCustomStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13493/*** ISpeechBaseStream methods ***/
13494#define ISpeechCustomStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
13495#define ISpeechCustomStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
13496#define ISpeechCustomStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
13497#define ISpeechCustomStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
13498#define ISpeechCustomStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
13499/*** ISpeechCustomStream methods ***/
13500#define ISpeechCustomStream_get_BaseStream(This,ppUnkStream) (This)->lpVtbl->get_BaseStream(This,ppUnkStream)
13501#define ISpeechCustomStream_putref_BaseStream(This,pUnkStream) (This)->lpVtbl->putref_BaseStream(This,pUnkStream)
13502#else
13503/*** IUnknown methods ***/
13504static inline HRESULT ISpeechCustomStream_QueryInterface(ISpeechCustomStream* This,REFIID riid,void **ppvObject) {
13505 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13506}
13507static inline ULONG ISpeechCustomStream_AddRef(ISpeechCustomStream* This) {
13508 return This->lpVtbl->AddRef(This);
13509}
13510static inline ULONG ISpeechCustomStream_Release(ISpeechCustomStream* This) {
13511 return This->lpVtbl->Release(This);
13512}
13513/*** IDispatch methods ***/
13514static inline HRESULT ISpeechCustomStream_GetTypeInfoCount(ISpeechCustomStream* This,UINT *pctinfo) {
13515 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13516}
13517static inline HRESULT ISpeechCustomStream_GetTypeInfo(ISpeechCustomStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13518 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13519}
13520static inline HRESULT ISpeechCustomStream_GetIDsOfNames(ISpeechCustomStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13521 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13522}
13523static inline HRESULT ISpeechCustomStream_Invoke(ISpeechCustomStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13524 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13525}
13526/*** ISpeechBaseStream methods ***/
13527static inline HRESULT ISpeechCustomStream_get_Format(ISpeechCustomStream* This,ISpeechAudioFormat **AudioFormat) {
13528 return This->lpVtbl->get_Format(This,AudioFormat);
13529}
13530static inline HRESULT ISpeechCustomStream_putref_Format(ISpeechCustomStream* This,ISpeechAudioFormat *AudioFormat) {
13531 return This->lpVtbl->putref_Format(This,AudioFormat);
13532}
13533static inline HRESULT ISpeechCustomStream_Read(ISpeechCustomStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
13534 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
13535}
13536static inline HRESULT ISpeechCustomStream_Write(ISpeechCustomStream* This,VARIANT Buffer,LONG *BytesWritten) {
13537 return This->lpVtbl->Write(This,Buffer,BytesWritten);
13538}
13539static inline HRESULT ISpeechCustomStream_Seek(ISpeechCustomStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
13540 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
13541}
13542/*** ISpeechCustomStream methods ***/
13543static inline HRESULT ISpeechCustomStream_get_BaseStream(ISpeechCustomStream* This,IUnknown **ppUnkStream) {
13544 return This->lpVtbl->get_BaseStream(This,ppUnkStream);
13545}
13546static inline HRESULT ISpeechCustomStream_putref_BaseStream(ISpeechCustomStream* This,IUnknown *pUnkStream) {
13547 return This->lpVtbl->putref_BaseStream(This,pUnkStream);
13548}
13549#endif
13550#endif
13551
13552#endif
13553
13554
13555#endif /* __ISpeechCustomStream_INTERFACE_DEFINED__ */
13556
13557/*****************************************************************************
13558 * ISpeechMemoryStream interface
13559 */
13560#ifndef __ISpeechMemoryStream_INTERFACE_DEFINED__
13561#define __ISpeechMemoryStream_INTERFACE_DEFINED__
13562
13563DEFINE_GUID(IID_ISpeechMemoryStream, 0xeeb14b68, 0x808b, 0x4abe, 0xa5,0xea, 0xb5,0x1d,0xa7,0x58,0x80,0x08);
13564#if defined(__cplusplus) && !defined(CINTERFACE)
13565MIDL_INTERFACE("eeb14b68-808b-4abe-a5ea-b51da7588008")
13566ISpeechMemoryStream : public ISpeechBaseStream
13567{
13568 virtual HRESULT STDMETHODCALLTYPE SetData(
13569 VARIANT Data) = 0;
13570
13571 virtual HRESULT STDMETHODCALLTYPE GetData(
13572 VARIANT *pData) = 0;
13573
13574};
13575#ifdef __CRT_UUID_DECL
13576__CRT_UUID_DECL(ISpeechMemoryStream, 0xeeb14b68, 0x808b, 0x4abe, 0xa5,0xea, 0xb5,0x1d,0xa7,0x58,0x80,0x08)
13577#endif
13578#else
13579typedef struct ISpeechMemoryStreamVtbl {
13580 BEGIN_INTERFACE
13581
13582 /*** IUnknown methods ***/
13583 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13584 ISpeechMemoryStream *This,
13585 REFIID riid,
13586 void **ppvObject);
13587
13588 ULONG (STDMETHODCALLTYPE *AddRef)(
13589 ISpeechMemoryStream *This);
13590
13591 ULONG (STDMETHODCALLTYPE *Release)(
13592 ISpeechMemoryStream *This);
13593
13594 /*** IDispatch methods ***/
13595 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13596 ISpeechMemoryStream *This,
13597 UINT *pctinfo);
13598
13599 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13600 ISpeechMemoryStream *This,
13601 UINT iTInfo,
13602 LCID lcid,
13603 ITypeInfo **ppTInfo);
13604
13605 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13606 ISpeechMemoryStream *This,
13607 REFIID riid,
13608 LPOLESTR *rgszNames,
13609 UINT cNames,
13610 LCID lcid,
13611 DISPID *rgDispId);
13612
13613 HRESULT (STDMETHODCALLTYPE *Invoke)(
13614 ISpeechMemoryStream *This,
13615 DISPID dispIdMember,
13616 REFIID riid,
13617 LCID lcid,
13618 WORD wFlags,
13619 DISPPARAMS *pDispParams,
13620 VARIANT *pVarResult,
13621 EXCEPINFO *pExcepInfo,
13622 UINT *puArgErr);
13623
13624 /*** ISpeechBaseStream methods ***/
13625 HRESULT (STDMETHODCALLTYPE *get_Format)(
13626 ISpeechMemoryStream *This,
13627 ISpeechAudioFormat **AudioFormat);
13628
13629 HRESULT (STDMETHODCALLTYPE *putref_Format)(
13630 ISpeechMemoryStream *This,
13631 ISpeechAudioFormat *AudioFormat);
13632
13633 HRESULT (STDMETHODCALLTYPE *Read)(
13634 ISpeechMemoryStream *This,
13635 VARIANT *Buffer,
13636 LONG NumberOfBytes,
13637 LONG *BytesRead);
13638
13639 HRESULT (STDMETHODCALLTYPE *Write)(
13640 ISpeechMemoryStream *This,
13641 VARIANT Buffer,
13642 LONG *BytesWritten);
13643
13644 HRESULT (STDMETHODCALLTYPE *Seek)(
13645 ISpeechMemoryStream *This,
13646 VARIANT Position,
13647 SpeechStreamSeekPositionType Origin,
13648 VARIANT *NewPosition);
13649
13650 /*** ISpeechMemoryStream methods ***/
13651 HRESULT (STDMETHODCALLTYPE *SetData)(
13652 ISpeechMemoryStream *This,
13653 VARIANT Data);
13654
13655 HRESULT (STDMETHODCALLTYPE *GetData)(
13656 ISpeechMemoryStream *This,
13657 VARIANT *pData);
13658
13659 END_INTERFACE
13660} ISpeechMemoryStreamVtbl;
13661
13662interface ISpeechMemoryStream {
13663 CONST_VTBL ISpeechMemoryStreamVtbl* lpVtbl;
13664};
13665
13666#ifdef COBJMACROS
13667#ifndef WIDL_C_INLINE_WRAPPERS
13668/*** IUnknown methods ***/
13669#define ISpeechMemoryStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13670#define ISpeechMemoryStream_AddRef(This) (This)->lpVtbl->AddRef(This)
13671#define ISpeechMemoryStream_Release(This) (This)->lpVtbl->Release(This)
13672/*** IDispatch methods ***/
13673#define ISpeechMemoryStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13674#define ISpeechMemoryStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13675#define ISpeechMemoryStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13676#define ISpeechMemoryStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13677/*** ISpeechBaseStream methods ***/
13678#define ISpeechMemoryStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
13679#define ISpeechMemoryStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
13680#define ISpeechMemoryStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
13681#define ISpeechMemoryStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
13682#define ISpeechMemoryStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
13683/*** ISpeechMemoryStream methods ***/
13684#define ISpeechMemoryStream_SetData(This,Data) (This)->lpVtbl->SetData(This,Data)
13685#define ISpeechMemoryStream_GetData(This,pData) (This)->lpVtbl->GetData(This,pData)
13686#else
13687/*** IUnknown methods ***/
13688static inline HRESULT ISpeechMemoryStream_QueryInterface(ISpeechMemoryStream* This,REFIID riid,void **ppvObject) {
13689 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13690}
13691static inline ULONG ISpeechMemoryStream_AddRef(ISpeechMemoryStream* This) {
13692 return This->lpVtbl->AddRef(This);
13693}
13694static inline ULONG ISpeechMemoryStream_Release(ISpeechMemoryStream* This) {
13695 return This->lpVtbl->Release(This);
13696}
13697/*** IDispatch methods ***/
13698static inline HRESULT ISpeechMemoryStream_GetTypeInfoCount(ISpeechMemoryStream* This,UINT *pctinfo) {
13699 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13700}
13701static inline HRESULT ISpeechMemoryStream_GetTypeInfo(ISpeechMemoryStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13702 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13703}
13704static inline HRESULT ISpeechMemoryStream_GetIDsOfNames(ISpeechMemoryStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13705 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13706}
13707static inline HRESULT ISpeechMemoryStream_Invoke(ISpeechMemoryStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13708 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13709}
13710/*** ISpeechBaseStream methods ***/
13711static inline HRESULT ISpeechMemoryStream_get_Format(ISpeechMemoryStream* This,ISpeechAudioFormat **AudioFormat) {
13712 return This->lpVtbl->get_Format(This,AudioFormat);
13713}
13714static inline HRESULT ISpeechMemoryStream_putref_Format(ISpeechMemoryStream* This,ISpeechAudioFormat *AudioFormat) {
13715 return This->lpVtbl->putref_Format(This,AudioFormat);
13716}
13717static inline HRESULT ISpeechMemoryStream_Read(ISpeechMemoryStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
13718 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
13719}
13720static inline HRESULT ISpeechMemoryStream_Write(ISpeechMemoryStream* This,VARIANT Buffer,LONG *BytesWritten) {
13721 return This->lpVtbl->Write(This,Buffer,BytesWritten);
13722}
13723static inline HRESULT ISpeechMemoryStream_Seek(ISpeechMemoryStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
13724 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
13725}
13726/*** ISpeechMemoryStream methods ***/
13727static inline HRESULT ISpeechMemoryStream_SetData(ISpeechMemoryStream* This,VARIANT Data) {
13728 return This->lpVtbl->SetData(This,Data);
13729}
13730static inline HRESULT ISpeechMemoryStream_GetData(ISpeechMemoryStream* This,VARIANT *pData) {
13731 return This->lpVtbl->GetData(This,pData);
13732}
13733#endif
13734#endif
13735
13736#endif
13737
13738
13739#endif /* __ISpeechMemoryStream_INTERFACE_DEFINED__ */
13740
13741/*****************************************************************************
13742 * ISpeechAudioStatus interface
13743 */
13744#ifndef __ISpeechAudioStatus_INTERFACE_DEFINED__
13745#define __ISpeechAudioStatus_INTERFACE_DEFINED__
13746
13747DEFINE_GUID(IID_ISpeechAudioStatus, 0xc62d9c91, 0x7458, 0x47f6, 0x86,0x2d, 0x1e,0xf8,0x6f,0xb0,0xb2,0x78);
13748#if defined(__cplusplus) && !defined(CINTERFACE)
13749MIDL_INTERFACE("c62d9c91-7458-47f6-862d-1ef86fb0b278")
13750ISpeechAudioStatus : public IDispatch
13751{
13752 virtual HRESULT STDMETHODCALLTYPE get_FreeBufferSpace(
13753 LONG *FreeBufferSpace) = 0;
13754
13755 virtual HRESULT STDMETHODCALLTYPE get_NonBlockingIO(
13756 LONG *NonBlockingIO) = 0;
13757
13758 virtual HRESULT STDMETHODCALLTYPE get_State(
13759 SpeechAudioState *State) = 0;
13760
13761 virtual HRESULT STDMETHODCALLTYPE get_CurrentSeekPosition(
13762 VARIANT *CurrentSeekPosition) = 0;
13763
13764 virtual HRESULT STDMETHODCALLTYPE get_CurrentDevicePosition(
13765 VARIANT *CurrentDevicePosition) = 0;
13766
13767};
13768#ifdef __CRT_UUID_DECL
13769__CRT_UUID_DECL(ISpeechAudioStatus, 0xc62d9c91, 0x7458, 0x47f6, 0x86,0x2d, 0x1e,0xf8,0x6f,0xb0,0xb2,0x78)
13770#endif
13771#else
13772typedef struct ISpeechAudioStatusVtbl {
13773 BEGIN_INTERFACE
13774
13775 /*** IUnknown methods ***/
13776 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13777 ISpeechAudioStatus *This,
13778 REFIID riid,
13779 void **ppvObject);
13780
13781 ULONG (STDMETHODCALLTYPE *AddRef)(
13782 ISpeechAudioStatus *This);
13783
13784 ULONG (STDMETHODCALLTYPE *Release)(
13785 ISpeechAudioStatus *This);
13786
13787 /*** IDispatch methods ***/
13788 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13789 ISpeechAudioStatus *This,
13790 UINT *pctinfo);
13791
13792 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13793 ISpeechAudioStatus *This,
13794 UINT iTInfo,
13795 LCID lcid,
13796 ITypeInfo **ppTInfo);
13797
13798 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13799 ISpeechAudioStatus *This,
13800 REFIID riid,
13801 LPOLESTR *rgszNames,
13802 UINT cNames,
13803 LCID lcid,
13804 DISPID *rgDispId);
13805
13806 HRESULT (STDMETHODCALLTYPE *Invoke)(
13807 ISpeechAudioStatus *This,
13808 DISPID dispIdMember,
13809 REFIID riid,
13810 LCID lcid,
13811 WORD wFlags,
13812 DISPPARAMS *pDispParams,
13813 VARIANT *pVarResult,
13814 EXCEPINFO *pExcepInfo,
13815 UINT *puArgErr);
13816
13817 /*** ISpeechAudioStatus methods ***/
13818 HRESULT (STDMETHODCALLTYPE *get_FreeBufferSpace)(
13819 ISpeechAudioStatus *This,
13820 LONG *FreeBufferSpace);
13821
13822 HRESULT (STDMETHODCALLTYPE *get_NonBlockingIO)(
13823 ISpeechAudioStatus *This,
13824 LONG *NonBlockingIO);
13825
13826 HRESULT (STDMETHODCALLTYPE *get_State)(
13827 ISpeechAudioStatus *This,
13828 SpeechAudioState *State);
13829
13830 HRESULT (STDMETHODCALLTYPE *get_CurrentSeekPosition)(
13831 ISpeechAudioStatus *This,
13832 VARIANT *CurrentSeekPosition);
13833
13834 HRESULT (STDMETHODCALLTYPE *get_CurrentDevicePosition)(
13835 ISpeechAudioStatus *This,
13836 VARIANT *CurrentDevicePosition);
13837
13838 END_INTERFACE
13839} ISpeechAudioStatusVtbl;
13840
13841interface ISpeechAudioStatus {
13842 CONST_VTBL ISpeechAudioStatusVtbl* lpVtbl;
13843};
13844
13845#ifdef COBJMACROS
13846#ifndef WIDL_C_INLINE_WRAPPERS
13847/*** IUnknown methods ***/
13848#define ISpeechAudioStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13849#define ISpeechAudioStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
13850#define ISpeechAudioStatus_Release(This) (This)->lpVtbl->Release(This)
13851/*** IDispatch methods ***/
13852#define ISpeechAudioStatus_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13853#define ISpeechAudioStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13854#define ISpeechAudioStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13855#define ISpeechAudioStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13856/*** ISpeechAudioStatus methods ***/
13857#define ISpeechAudioStatus_get_FreeBufferSpace(This,FreeBufferSpace) (This)->lpVtbl->get_FreeBufferSpace(This,FreeBufferSpace)
13858#define ISpeechAudioStatus_get_NonBlockingIO(This,NonBlockingIO) (This)->lpVtbl->get_NonBlockingIO(This,NonBlockingIO)
13859#define ISpeechAudioStatus_get_State(This,State) (This)->lpVtbl->get_State(This,State)
13860#define ISpeechAudioStatus_get_CurrentSeekPosition(This,CurrentSeekPosition) (This)->lpVtbl->get_CurrentSeekPosition(This,CurrentSeekPosition)
13861#define ISpeechAudioStatus_get_CurrentDevicePosition(This,CurrentDevicePosition) (This)->lpVtbl->get_CurrentDevicePosition(This,CurrentDevicePosition)
13862#else
13863/*** IUnknown methods ***/
13864static inline HRESULT ISpeechAudioStatus_QueryInterface(ISpeechAudioStatus* This,REFIID riid,void **ppvObject) {
13865 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13866}
13867static inline ULONG ISpeechAudioStatus_AddRef(ISpeechAudioStatus* This) {
13868 return This->lpVtbl->AddRef(This);
13869}
13870static inline ULONG ISpeechAudioStatus_Release(ISpeechAudioStatus* This) {
13871 return This->lpVtbl->Release(This);
13872}
13873/*** IDispatch methods ***/
13874static inline HRESULT ISpeechAudioStatus_GetTypeInfoCount(ISpeechAudioStatus* This,UINT *pctinfo) {
13875 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13876}
13877static inline HRESULT ISpeechAudioStatus_GetTypeInfo(ISpeechAudioStatus* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13878 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13879}
13880static inline HRESULT ISpeechAudioStatus_GetIDsOfNames(ISpeechAudioStatus* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13881 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13882}
13883static inline HRESULT ISpeechAudioStatus_Invoke(ISpeechAudioStatus* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13884 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13885}
13886/*** ISpeechAudioStatus methods ***/
13887static inline HRESULT ISpeechAudioStatus_get_FreeBufferSpace(ISpeechAudioStatus* This,LONG *FreeBufferSpace) {
13888 return This->lpVtbl->get_FreeBufferSpace(This,FreeBufferSpace);
13889}
13890static inline HRESULT ISpeechAudioStatus_get_NonBlockingIO(ISpeechAudioStatus* This,LONG *NonBlockingIO) {
13891 return This->lpVtbl->get_NonBlockingIO(This,NonBlockingIO);
13892}
13893static inline HRESULT ISpeechAudioStatus_get_State(ISpeechAudioStatus* This,SpeechAudioState *State) {
13894 return This->lpVtbl->get_State(This,State);
13895}
13896static inline HRESULT ISpeechAudioStatus_get_CurrentSeekPosition(ISpeechAudioStatus* This,VARIANT *CurrentSeekPosition) {
13897 return This->lpVtbl->get_CurrentSeekPosition(This,CurrentSeekPosition);
13898}
13899static inline HRESULT ISpeechAudioStatus_get_CurrentDevicePosition(ISpeechAudioStatus* This,VARIANT *CurrentDevicePosition) {
13900 return This->lpVtbl->get_CurrentDevicePosition(This,CurrentDevicePosition);
13901}
13902#endif
13903#endif
13904
13905#endif
13906
13907
13908#endif /* __ISpeechAudioStatus_INTERFACE_DEFINED__ */
13909
13910/*****************************************************************************
13911 * ISpeechAudioBufferInfo interface
13912 */
13913#ifndef __ISpeechAudioBufferInfo_INTERFACE_DEFINED__
13914#define __ISpeechAudioBufferInfo_INTERFACE_DEFINED__
13915
13916DEFINE_GUID(IID_ISpeechAudioBufferInfo, 0x11b103d8, 0x1142, 0x4edf, 0xa0,0x93, 0x82,0xfb,0x39,0x15,0xf8,0xcc);
13917#if defined(__cplusplus) && !defined(CINTERFACE)
13918MIDL_INTERFACE("11b103d8-1142-4edf-a093-82fb3915f8cc")
13919ISpeechAudioBufferInfo : public IDispatch
13920{
13921 virtual HRESULT STDMETHODCALLTYPE get_MinNotification(
13922 LONG *MinNotification) = 0;
13923
13924 virtual HRESULT STDMETHODCALLTYPE put_MinNotification(
13925 LONG MinNotification) = 0;
13926
13927 virtual HRESULT STDMETHODCALLTYPE get_BufferSize(
13928 LONG *BufferSize) = 0;
13929
13930 virtual HRESULT STDMETHODCALLTYPE put_BufferSize(
13931 LONG BufferSize) = 0;
13932
13933 virtual HRESULT STDMETHODCALLTYPE get_EventBias(
13934 LONG *EventBias) = 0;
13935
13936 virtual HRESULT STDMETHODCALLTYPE put_EventBias(
13937 LONG EventBias) = 0;
13938
13939};
13940#ifdef __CRT_UUID_DECL
13941__CRT_UUID_DECL(ISpeechAudioBufferInfo, 0x11b103d8, 0x1142, 0x4edf, 0xa0,0x93, 0x82,0xfb,0x39,0x15,0xf8,0xcc)
13942#endif
13943#else
13944typedef struct ISpeechAudioBufferInfoVtbl {
13945 BEGIN_INTERFACE
13946
13947 /*** IUnknown methods ***/
13948 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13949 ISpeechAudioBufferInfo *This,
13950 REFIID riid,
13951 void **ppvObject);
13952
13953 ULONG (STDMETHODCALLTYPE *AddRef)(
13954 ISpeechAudioBufferInfo *This);
13955
13956 ULONG (STDMETHODCALLTYPE *Release)(
13957 ISpeechAudioBufferInfo *This);
13958
13959 /*** IDispatch methods ***/
13960 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13961 ISpeechAudioBufferInfo *This,
13962 UINT *pctinfo);
13963
13964 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13965 ISpeechAudioBufferInfo *This,
13966 UINT iTInfo,
13967 LCID lcid,
13968 ITypeInfo **ppTInfo);
13969
13970 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13971 ISpeechAudioBufferInfo *This,
13972 REFIID riid,
13973 LPOLESTR *rgszNames,
13974 UINT cNames,
13975 LCID lcid,
13976 DISPID *rgDispId);
13977
13978 HRESULT (STDMETHODCALLTYPE *Invoke)(
13979 ISpeechAudioBufferInfo *This,
13980 DISPID dispIdMember,
13981 REFIID riid,
13982 LCID lcid,
13983 WORD wFlags,
13984 DISPPARAMS *pDispParams,
13985 VARIANT *pVarResult,
13986 EXCEPINFO *pExcepInfo,
13987 UINT *puArgErr);
13988
13989 /*** ISpeechAudioBufferInfo methods ***/
13990 HRESULT (STDMETHODCALLTYPE *get_MinNotification)(
13991 ISpeechAudioBufferInfo *This,
13992 LONG *MinNotification);
13993
13994 HRESULT (STDMETHODCALLTYPE *put_MinNotification)(
13995 ISpeechAudioBufferInfo *This,
13996 LONG MinNotification);
13997
13998 HRESULT (STDMETHODCALLTYPE *get_BufferSize)(
13999 ISpeechAudioBufferInfo *This,
14000 LONG *BufferSize);
14001
14002 HRESULT (STDMETHODCALLTYPE *put_BufferSize)(
14003 ISpeechAudioBufferInfo *This,
14004 LONG BufferSize);
14005
14006 HRESULT (STDMETHODCALLTYPE *get_EventBias)(
14007 ISpeechAudioBufferInfo *This,
14008 LONG *EventBias);
14009
14010 HRESULT (STDMETHODCALLTYPE *put_EventBias)(
14011 ISpeechAudioBufferInfo *This,
14012 LONG EventBias);
14013
14014 END_INTERFACE
14015} ISpeechAudioBufferInfoVtbl;
14016
14017interface ISpeechAudioBufferInfo {
14018 CONST_VTBL ISpeechAudioBufferInfoVtbl* lpVtbl;
14019};
14020
14021#ifdef COBJMACROS
14022#ifndef WIDL_C_INLINE_WRAPPERS
14023/*** IUnknown methods ***/
14024#define ISpeechAudioBufferInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14025#define ISpeechAudioBufferInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
14026#define ISpeechAudioBufferInfo_Release(This) (This)->lpVtbl->Release(This)
14027/*** IDispatch methods ***/
14028#define ISpeechAudioBufferInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14029#define ISpeechAudioBufferInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14030#define ISpeechAudioBufferInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14031#define ISpeechAudioBufferInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14032/*** ISpeechAudioBufferInfo methods ***/
14033#define ISpeechAudioBufferInfo_get_MinNotification(This,MinNotification) (This)->lpVtbl->get_MinNotification(This,MinNotification)
14034#define ISpeechAudioBufferInfo_put_MinNotification(This,MinNotification) (This)->lpVtbl->put_MinNotification(This,MinNotification)
14035#define ISpeechAudioBufferInfo_get_BufferSize(This,BufferSize) (This)->lpVtbl->get_BufferSize(This,BufferSize)
14036#define ISpeechAudioBufferInfo_put_BufferSize(This,BufferSize) (This)->lpVtbl->put_BufferSize(This,BufferSize)
14037#define ISpeechAudioBufferInfo_get_EventBias(This,EventBias) (This)->lpVtbl->get_EventBias(This,EventBias)
14038#define ISpeechAudioBufferInfo_put_EventBias(This,EventBias) (This)->lpVtbl->put_EventBias(This,EventBias)
14039#else
14040/*** IUnknown methods ***/
14041static inline HRESULT ISpeechAudioBufferInfo_QueryInterface(ISpeechAudioBufferInfo* This,REFIID riid,void **ppvObject) {
14042 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14043}
14044static inline ULONG ISpeechAudioBufferInfo_AddRef(ISpeechAudioBufferInfo* This) {
14045 return This->lpVtbl->AddRef(This);
14046}
14047static inline ULONG ISpeechAudioBufferInfo_Release(ISpeechAudioBufferInfo* This) {
14048 return This->lpVtbl->Release(This);
14049}
14050/*** IDispatch methods ***/
14051static inline HRESULT ISpeechAudioBufferInfo_GetTypeInfoCount(ISpeechAudioBufferInfo* This,UINT *pctinfo) {
14052 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14053}
14054static inline HRESULT ISpeechAudioBufferInfo_GetTypeInfo(ISpeechAudioBufferInfo* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14055 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14056}
14057static inline HRESULT ISpeechAudioBufferInfo_GetIDsOfNames(ISpeechAudioBufferInfo* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14058 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14059}
14060static inline HRESULT ISpeechAudioBufferInfo_Invoke(ISpeechAudioBufferInfo* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14061 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14062}
14063/*** ISpeechAudioBufferInfo methods ***/
14064static inline HRESULT ISpeechAudioBufferInfo_get_MinNotification(ISpeechAudioBufferInfo* This,LONG *MinNotification) {
14065 return This->lpVtbl->get_MinNotification(This,MinNotification);
14066}
14067static inline HRESULT ISpeechAudioBufferInfo_put_MinNotification(ISpeechAudioBufferInfo* This,LONG MinNotification) {
14068 return This->lpVtbl->put_MinNotification(This,MinNotification);
14069}
14070static inline HRESULT ISpeechAudioBufferInfo_get_BufferSize(ISpeechAudioBufferInfo* This,LONG *BufferSize) {
14071 return This->lpVtbl->get_BufferSize(This,BufferSize);
14072}
14073static inline HRESULT ISpeechAudioBufferInfo_put_BufferSize(ISpeechAudioBufferInfo* This,LONG BufferSize) {
14074 return This->lpVtbl->put_BufferSize(This,BufferSize);
14075}
14076static inline HRESULT ISpeechAudioBufferInfo_get_EventBias(ISpeechAudioBufferInfo* This,LONG *EventBias) {
14077 return This->lpVtbl->get_EventBias(This,EventBias);
14078}
14079static inline HRESULT ISpeechAudioBufferInfo_put_EventBias(ISpeechAudioBufferInfo* This,LONG EventBias) {
14080 return This->lpVtbl->put_EventBias(This,EventBias);
14081}
14082#endif
14083#endif
14084
14085#endif
14086
14087
14088#endif /* __ISpeechAudioBufferInfo_INTERFACE_DEFINED__ */
14089
14090/*****************************************************************************
14091 * ISpeechWaveFormatEx interface
14092 */
14093#ifndef __ISpeechWaveFormatEx_INTERFACE_DEFINED__
14094#define __ISpeechWaveFormatEx_INTERFACE_DEFINED__
14095
14096DEFINE_GUID(IID_ISpeechWaveFormatEx, 0x7a1ef0d5, 0x1581, 0x4741, 0x88,0xe4, 0x20,0x9a,0x49,0xf1,0x1a,0x10);
14097#if defined(__cplusplus) && !defined(CINTERFACE)
14098MIDL_INTERFACE("7a1ef0d5-1581-4741-88e4-209a49f11a10")
14099ISpeechWaveFormatEx : public IDispatch
14100{
14101 virtual HRESULT STDMETHODCALLTYPE get_FormatTag(
14102 short *FormatTag) = 0;
14103
14104 virtual HRESULT STDMETHODCALLTYPE put_FormatTag(
14105 short FormatTag) = 0;
14106
14107 virtual HRESULT STDMETHODCALLTYPE get_Channels(
14108 short *Channels) = 0;
14109
14110 virtual HRESULT STDMETHODCALLTYPE put_Channels(
14111 short Channels) = 0;
14112
14113 virtual HRESULT STDMETHODCALLTYPE get_SamplesPerSec(
14114 LONG *SamplesPerSec) = 0;
14115
14116 virtual HRESULT STDMETHODCALLTYPE put_SamplesPerSec(
14117 LONG SamplesPerSec) = 0;
14118
14119 virtual HRESULT STDMETHODCALLTYPE get_AvgBytesPerSec(
14120 LONG *AvgBytesPerSec) = 0;
14121
14122 virtual HRESULT STDMETHODCALLTYPE put_AvgBytesPerSec(
14123 LONG AvgBytesPerSec) = 0;
14124
14125 virtual HRESULT STDMETHODCALLTYPE get_BlockAlign(
14126 short *BlockAlign) = 0;
14127
14128 virtual HRESULT STDMETHODCALLTYPE put_BlockAlign(
14129 short BlockAlign) = 0;
14130
14131 virtual HRESULT STDMETHODCALLTYPE get_BitsPerSample(
14132 short *BitsPerSample) = 0;
14133
14134 virtual HRESULT STDMETHODCALLTYPE put_BitsPerSample(
14135 short BitsPerSample) = 0;
14136
14137 virtual HRESULT STDMETHODCALLTYPE get_ExtraData(
14138 VARIANT *ExtraData) = 0;
14139
14140 virtual HRESULT STDMETHODCALLTYPE put_ExtraData(
14141 VARIANT ExtraData) = 0;
14142
14143};
14144#ifdef __CRT_UUID_DECL
14145__CRT_UUID_DECL(ISpeechWaveFormatEx, 0x7a1ef0d5, 0x1581, 0x4741, 0x88,0xe4, 0x20,0x9a,0x49,0xf1,0x1a,0x10)
14146#endif
14147#else
14148typedef struct ISpeechWaveFormatExVtbl {
14149 BEGIN_INTERFACE
14150
14151 /*** IUnknown methods ***/
14152 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14153 ISpeechWaveFormatEx *This,
14154 REFIID riid,
14155 void **ppvObject);
14156
14157 ULONG (STDMETHODCALLTYPE *AddRef)(
14158 ISpeechWaveFormatEx *This);
14159
14160 ULONG (STDMETHODCALLTYPE *Release)(
14161 ISpeechWaveFormatEx *This);
14162
14163 /*** IDispatch methods ***/
14164 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14165 ISpeechWaveFormatEx *This,
14166 UINT *pctinfo);
14167
14168 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14169 ISpeechWaveFormatEx *This,
14170 UINT iTInfo,
14171 LCID lcid,
14172 ITypeInfo **ppTInfo);
14173
14174 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14175 ISpeechWaveFormatEx *This,
14176 REFIID riid,
14177 LPOLESTR *rgszNames,
14178 UINT cNames,
14179 LCID lcid,
14180 DISPID *rgDispId);
14181
14182 HRESULT (STDMETHODCALLTYPE *Invoke)(
14183 ISpeechWaveFormatEx *This,
14184 DISPID dispIdMember,
14185 REFIID riid,
14186 LCID lcid,
14187 WORD wFlags,
14188 DISPPARAMS *pDispParams,
14189 VARIANT *pVarResult,
14190 EXCEPINFO *pExcepInfo,
14191 UINT *puArgErr);
14192
14193 /*** ISpeechWaveFormatEx methods ***/
14194 HRESULT (STDMETHODCALLTYPE *get_FormatTag)(
14195 ISpeechWaveFormatEx *This,
14196 short *FormatTag);
14197
14198 HRESULT (STDMETHODCALLTYPE *put_FormatTag)(
14199 ISpeechWaveFormatEx *This,
14200 short FormatTag);
14201
14202 HRESULT (STDMETHODCALLTYPE *get_Channels)(
14203 ISpeechWaveFormatEx *This,
14204 short *Channels);
14205
14206 HRESULT (STDMETHODCALLTYPE *put_Channels)(
14207 ISpeechWaveFormatEx *This,
14208 short Channels);
14209
14210 HRESULT (STDMETHODCALLTYPE *get_SamplesPerSec)(
14211 ISpeechWaveFormatEx *This,
14212 LONG *SamplesPerSec);
14213
14214 HRESULT (STDMETHODCALLTYPE *put_SamplesPerSec)(
14215 ISpeechWaveFormatEx *This,
14216 LONG SamplesPerSec);
14217
14218 HRESULT (STDMETHODCALLTYPE *get_AvgBytesPerSec)(
14219 ISpeechWaveFormatEx *This,
14220 LONG *AvgBytesPerSec);
14221
14222 HRESULT (STDMETHODCALLTYPE *put_AvgBytesPerSec)(
14223 ISpeechWaveFormatEx *This,
14224 LONG AvgBytesPerSec);
14225
14226 HRESULT (STDMETHODCALLTYPE *get_BlockAlign)(
14227 ISpeechWaveFormatEx *This,
14228 short *BlockAlign);
14229
14230 HRESULT (STDMETHODCALLTYPE *put_BlockAlign)(
14231 ISpeechWaveFormatEx *This,
14232 short BlockAlign);
14233
14234 HRESULT (STDMETHODCALLTYPE *get_BitsPerSample)(
14235 ISpeechWaveFormatEx *This,
14236 short *BitsPerSample);
14237
14238 HRESULT (STDMETHODCALLTYPE *put_BitsPerSample)(
14239 ISpeechWaveFormatEx *This,
14240 short BitsPerSample);
14241
14242 HRESULT (STDMETHODCALLTYPE *get_ExtraData)(
14243 ISpeechWaveFormatEx *This,
14244 VARIANT *ExtraData);
14245
14246 HRESULT (STDMETHODCALLTYPE *put_ExtraData)(
14247 ISpeechWaveFormatEx *This,
14248 VARIANT ExtraData);
14249
14250 END_INTERFACE
14251} ISpeechWaveFormatExVtbl;
14252
14253interface ISpeechWaveFormatEx {
14254 CONST_VTBL ISpeechWaveFormatExVtbl* lpVtbl;
14255};
14256
14257#ifdef COBJMACROS
14258#ifndef WIDL_C_INLINE_WRAPPERS
14259/*** IUnknown methods ***/
14260#define ISpeechWaveFormatEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14261#define ISpeechWaveFormatEx_AddRef(This) (This)->lpVtbl->AddRef(This)
14262#define ISpeechWaveFormatEx_Release(This) (This)->lpVtbl->Release(This)
14263/*** IDispatch methods ***/
14264#define ISpeechWaveFormatEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14265#define ISpeechWaveFormatEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14266#define ISpeechWaveFormatEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14267#define ISpeechWaveFormatEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14268/*** ISpeechWaveFormatEx methods ***/
14269#define ISpeechWaveFormatEx_get_FormatTag(This,FormatTag) (This)->lpVtbl->get_FormatTag(This,FormatTag)
14270#define ISpeechWaveFormatEx_put_FormatTag(This,FormatTag) (This)->lpVtbl->put_FormatTag(This,FormatTag)
14271#define ISpeechWaveFormatEx_get_Channels(This,Channels) (This)->lpVtbl->get_Channels(This,Channels)
14272#define ISpeechWaveFormatEx_put_Channels(This,Channels) (This)->lpVtbl->put_Channels(This,Channels)
14273#define ISpeechWaveFormatEx_get_SamplesPerSec(This,SamplesPerSec) (This)->lpVtbl->get_SamplesPerSec(This,SamplesPerSec)
14274#define ISpeechWaveFormatEx_put_SamplesPerSec(This,SamplesPerSec) (This)->lpVtbl->put_SamplesPerSec(This,SamplesPerSec)
14275#define ISpeechWaveFormatEx_get_AvgBytesPerSec(This,AvgBytesPerSec) (This)->lpVtbl->get_AvgBytesPerSec(This,AvgBytesPerSec)
14276#define ISpeechWaveFormatEx_put_AvgBytesPerSec(This,AvgBytesPerSec) (This)->lpVtbl->put_AvgBytesPerSec(This,AvgBytesPerSec)
14277#define ISpeechWaveFormatEx_get_BlockAlign(This,BlockAlign) (This)->lpVtbl->get_BlockAlign(This,BlockAlign)
14278#define ISpeechWaveFormatEx_put_BlockAlign(This,BlockAlign) (This)->lpVtbl->put_BlockAlign(This,BlockAlign)
14279#define ISpeechWaveFormatEx_get_BitsPerSample(This,BitsPerSample) (This)->lpVtbl->get_BitsPerSample(This,BitsPerSample)
14280#define ISpeechWaveFormatEx_put_BitsPerSample(This,BitsPerSample) (This)->lpVtbl->put_BitsPerSample(This,BitsPerSample)
14281#define ISpeechWaveFormatEx_get_ExtraData(This,ExtraData) (This)->lpVtbl->get_ExtraData(This,ExtraData)
14282#define ISpeechWaveFormatEx_put_ExtraData(This,ExtraData) (This)->lpVtbl->put_ExtraData(This,ExtraData)
14283#else
14284/*** IUnknown methods ***/
14285static inline HRESULT ISpeechWaveFormatEx_QueryInterface(ISpeechWaveFormatEx* This,REFIID riid,void **ppvObject) {
14286 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14287}
14288static inline ULONG ISpeechWaveFormatEx_AddRef(ISpeechWaveFormatEx* This) {
14289 return This->lpVtbl->AddRef(This);
14290}
14291static inline ULONG ISpeechWaveFormatEx_Release(ISpeechWaveFormatEx* This) {
14292 return This->lpVtbl->Release(This);
14293}
14294/*** IDispatch methods ***/
14295static inline HRESULT ISpeechWaveFormatEx_GetTypeInfoCount(ISpeechWaveFormatEx* This,UINT *pctinfo) {
14296 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14297}
14298static inline HRESULT ISpeechWaveFormatEx_GetTypeInfo(ISpeechWaveFormatEx* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14299 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14300}
14301static inline HRESULT ISpeechWaveFormatEx_GetIDsOfNames(ISpeechWaveFormatEx* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14302 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14303}
14304static inline HRESULT ISpeechWaveFormatEx_Invoke(ISpeechWaveFormatEx* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14305 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14306}
14307/*** ISpeechWaveFormatEx methods ***/
14308static inline HRESULT ISpeechWaveFormatEx_get_FormatTag(ISpeechWaveFormatEx* This,short *FormatTag) {
14309 return This->lpVtbl->get_FormatTag(This,FormatTag);
14310}
14311static inline HRESULT ISpeechWaveFormatEx_put_FormatTag(ISpeechWaveFormatEx* This,short FormatTag) {
14312 return This->lpVtbl->put_FormatTag(This,FormatTag);
14313}
14314static inline HRESULT ISpeechWaveFormatEx_get_Channels(ISpeechWaveFormatEx* This,short *Channels) {
14315 return This->lpVtbl->get_Channels(This,Channels);
14316}
14317static inline HRESULT ISpeechWaveFormatEx_put_Channels(ISpeechWaveFormatEx* This,short Channels) {
14318 return This->lpVtbl->put_Channels(This,Channels);
14319}
14320static inline HRESULT ISpeechWaveFormatEx_get_SamplesPerSec(ISpeechWaveFormatEx* This,LONG *SamplesPerSec) {
14321 return This->lpVtbl->get_SamplesPerSec(This,SamplesPerSec);
14322}
14323static inline HRESULT ISpeechWaveFormatEx_put_SamplesPerSec(ISpeechWaveFormatEx* This,LONG SamplesPerSec) {
14324 return This->lpVtbl->put_SamplesPerSec(This,SamplesPerSec);
14325}
14326static inline HRESULT ISpeechWaveFormatEx_get_AvgBytesPerSec(ISpeechWaveFormatEx* This,LONG *AvgBytesPerSec) {
14327 return This->lpVtbl->get_AvgBytesPerSec(This,AvgBytesPerSec);
14328}
14329static inline HRESULT ISpeechWaveFormatEx_put_AvgBytesPerSec(ISpeechWaveFormatEx* This,LONG AvgBytesPerSec) {
14330 return This->lpVtbl->put_AvgBytesPerSec(This,AvgBytesPerSec);
14331}
14332static inline HRESULT ISpeechWaveFormatEx_get_BlockAlign(ISpeechWaveFormatEx* This,short *BlockAlign) {
14333 return This->lpVtbl->get_BlockAlign(This,BlockAlign);
14334}
14335static inline HRESULT ISpeechWaveFormatEx_put_BlockAlign(ISpeechWaveFormatEx* This,short BlockAlign) {
14336 return This->lpVtbl->put_BlockAlign(This,BlockAlign);
14337}
14338static inline HRESULT ISpeechWaveFormatEx_get_BitsPerSample(ISpeechWaveFormatEx* This,short *BitsPerSample) {
14339 return This->lpVtbl->get_BitsPerSample(This,BitsPerSample);
14340}
14341static inline HRESULT ISpeechWaveFormatEx_put_BitsPerSample(ISpeechWaveFormatEx* This,short BitsPerSample) {
14342 return This->lpVtbl->put_BitsPerSample(This,BitsPerSample);
14343}
14344static inline HRESULT ISpeechWaveFormatEx_get_ExtraData(ISpeechWaveFormatEx* This,VARIANT *ExtraData) {
14345 return This->lpVtbl->get_ExtraData(This,ExtraData);
14346}
14347static inline HRESULT ISpeechWaveFormatEx_put_ExtraData(ISpeechWaveFormatEx* This,VARIANT ExtraData) {
14348 return This->lpVtbl->put_ExtraData(This,ExtraData);
14349}
14350#endif
14351#endif
14352
14353#endif
14354
14355
14356#endif /* __ISpeechWaveFormatEx_INTERFACE_DEFINED__ */
14357
14358/*****************************************************************************
14359 * ISpeechVoice interface
14360 */
14361#ifndef __ISpeechVoice_INTERFACE_DEFINED__
14362#define __ISpeechVoice_INTERFACE_DEFINED__
14363
14364DEFINE_GUID(IID_ISpeechVoice, 0x269316d8, 0x57bd, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96);
14365#if defined(__cplusplus) && !defined(CINTERFACE)
14366MIDL_INTERFACE("269316d8-57bd-11d2-9eee-00c04f797396")
14367ISpeechVoice : public IDispatch
14368{
14369 virtual HRESULT STDMETHODCALLTYPE get_Status(
14370 ISpeechVoiceStatus **Status) = 0;
14371
14372 virtual HRESULT STDMETHODCALLTYPE get_Voice(
14373 ISpeechObjectToken **Voice) = 0;
14374
14375 virtual HRESULT STDMETHODCALLTYPE putref_Voice(
14376 ISpeechObjectToken *Voice) = 0;
14377
14378 virtual HRESULT STDMETHODCALLTYPE get_AudioOutput(
14379 ISpeechObjectToken **AudioOutput) = 0;
14380
14381 virtual HRESULT STDMETHODCALLTYPE putref_AudioOutput(
14382 ISpeechObjectToken *AudioOutput) = 0;
14383
14384 virtual HRESULT STDMETHODCALLTYPE get_AudioOutputStream(
14385 ISpeechBaseStream **AudioOutputStream) = 0;
14386
14387 virtual HRESULT STDMETHODCALLTYPE putref_AudioOutputStream(
14388 ISpeechBaseStream *AudioOutputStream) = 0;
14389
14390 virtual HRESULT STDMETHODCALLTYPE get_Rate(
14391 LONG *Rate) = 0;
14392
14393 virtual HRESULT STDMETHODCALLTYPE put_Rate(
14394 LONG Rate) = 0;
14395
14396 virtual HRESULT STDMETHODCALLTYPE get_Volume(
14397 LONG *Volume) = 0;
14398
14399 virtual HRESULT STDMETHODCALLTYPE put_Volume(
14400 LONG Volume) = 0;
14401
14402 virtual HRESULT STDMETHODCALLTYPE put_AllowAudioOutputFormatChangesOnNextSet(
14403 VARIANT_BOOL Allow) = 0;
14404
14405 virtual HRESULT STDMETHODCALLTYPE get_AllowAudioOutputFormatChangesOnNextSet(
14406 VARIANT_BOOL *Allow) = 0;
14407
14408 virtual HRESULT STDMETHODCALLTYPE get_EventInterests(
14409 SpeechVoiceEvents *EventInterestFlags) = 0;
14410
14411 virtual HRESULT STDMETHODCALLTYPE put_EventInterests(
14412 SpeechVoiceEvents EventInterestFlags) = 0;
14413
14414 virtual HRESULT STDMETHODCALLTYPE put_Priority(
14415 SpeechVoicePriority Priority) = 0;
14416
14417 virtual HRESULT STDMETHODCALLTYPE get_Priority(
14418 SpeechVoicePriority *Priority) = 0;
14419
14420 virtual HRESULT STDMETHODCALLTYPE put_AlertBoundary(
14421 SpeechVoiceEvents Boundary) = 0;
14422
14423 virtual HRESULT STDMETHODCALLTYPE get_AlertBoundary(
14424 SpeechVoiceEvents *Boundary) = 0;
14425
14426 virtual HRESULT STDMETHODCALLTYPE put_SynchronousSpeakTimeout(
14427 LONG msTimeout) = 0;
14428
14429 virtual HRESULT STDMETHODCALLTYPE get_SynchronousSpeakTimeout(
14430 LONG *msTimeout) = 0;
14431
14432 virtual HRESULT STDMETHODCALLTYPE Speak(
14433 BSTR Text,
14434 SpeechVoiceSpeakFlags Flags,
14435 LONG *StreamNumber) = 0;
14436
14437 virtual HRESULT STDMETHODCALLTYPE SpeakStream(
14438 ISpeechBaseStream *Stream,
14439 SpeechVoiceSpeakFlags Flags,
14440 LONG *StreamNumber) = 0;
14441
14442 virtual HRESULT STDMETHODCALLTYPE Pause(
14443 ) = 0;
14444
14445 virtual HRESULT STDMETHODCALLTYPE Resume(
14446 ) = 0;
14447
14448 virtual HRESULT STDMETHODCALLTYPE Skip(
14449 const BSTR Type,
14450 LONG NumItems,
14451 LONG *NumSkipped) = 0;
14452
14453 virtual HRESULT STDMETHODCALLTYPE GetVoices(
14454 BSTR RequiredAttributes,
14455 BSTR OptionalAttributes,
14456 ISpeechObjectTokens **ObjectTokens) = 0;
14457
14458 virtual HRESULT STDMETHODCALLTYPE GetAudioOutputs(
14459 BSTR RequiredAttributes,
14460 BSTR OptionalAttributes,
14461 ISpeechObjectTokens **ObjectTokens) = 0;
14462
14463 virtual HRESULT STDMETHODCALLTYPE WaitUntilDone(
14464 LONG msTimeout,
14465 VARIANT_BOOL *Done) = 0;
14466
14467 virtual HRESULT STDMETHODCALLTYPE SpeakCompleteEvent(
14468 LONG *Handle) = 0;
14469
14470 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
14471 const BSTR TypeOfUI,
14472 const VARIANT *ExtraData,
14473 VARIANT_BOOL *Supported) = 0;
14474
14475 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
14476 LONG hWndParent,
14477 BSTR Title,
14478 const BSTR TypeOfUI,
14479 const VARIANT *ExtraData = 0) = 0;
14480
14481};
14482#ifdef __CRT_UUID_DECL
14483__CRT_UUID_DECL(ISpeechVoice, 0x269316d8, 0x57bd, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96)
14484#endif
14485#else
14486typedef struct ISpeechVoiceVtbl {
14487 BEGIN_INTERFACE
14488
14489 /*** IUnknown methods ***/
14490 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14491 ISpeechVoice *This,
14492 REFIID riid,
14493 void **ppvObject);
14494
14495 ULONG (STDMETHODCALLTYPE *AddRef)(
14496 ISpeechVoice *This);
14497
14498 ULONG (STDMETHODCALLTYPE *Release)(
14499 ISpeechVoice *This);
14500
14501 /*** IDispatch methods ***/
14502 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14503 ISpeechVoice *This,
14504 UINT *pctinfo);
14505
14506 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14507 ISpeechVoice *This,
14508 UINT iTInfo,
14509 LCID lcid,
14510 ITypeInfo **ppTInfo);
14511
14512 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14513 ISpeechVoice *This,
14514 REFIID riid,
14515 LPOLESTR *rgszNames,
14516 UINT cNames,
14517 LCID lcid,
14518 DISPID *rgDispId);
14519
14520 HRESULT (STDMETHODCALLTYPE *Invoke)(
14521 ISpeechVoice *This,
14522 DISPID dispIdMember,
14523 REFIID riid,
14524 LCID lcid,
14525 WORD wFlags,
14526 DISPPARAMS *pDispParams,
14527 VARIANT *pVarResult,
14528 EXCEPINFO *pExcepInfo,
14529 UINT *puArgErr);
14530
14531 /*** ISpeechVoice methods ***/
14532 HRESULT (STDMETHODCALLTYPE *get_Status)(
14533 ISpeechVoice *This,
14534 ISpeechVoiceStatus **Status);
14535
14536 HRESULT (STDMETHODCALLTYPE *get_Voice)(
14537 ISpeechVoice *This,
14538 ISpeechObjectToken **Voice);
14539
14540 HRESULT (STDMETHODCALLTYPE *putref_Voice)(
14541 ISpeechVoice *This,
14542 ISpeechObjectToken *Voice);
14543
14544 HRESULT (STDMETHODCALLTYPE *get_AudioOutput)(
14545 ISpeechVoice *This,
14546 ISpeechObjectToken **AudioOutput);
14547
14548 HRESULT (STDMETHODCALLTYPE *putref_AudioOutput)(
14549 ISpeechVoice *This,
14550 ISpeechObjectToken *AudioOutput);
14551
14552 HRESULT (STDMETHODCALLTYPE *get_AudioOutputStream)(
14553 ISpeechVoice *This,
14554 ISpeechBaseStream **AudioOutputStream);
14555
14556 HRESULT (STDMETHODCALLTYPE *putref_AudioOutputStream)(
14557 ISpeechVoice *This,
14558 ISpeechBaseStream *AudioOutputStream);
14559
14560 HRESULT (STDMETHODCALLTYPE *get_Rate)(
14561 ISpeechVoice *This,
14562 LONG *Rate);
14563
14564 HRESULT (STDMETHODCALLTYPE *put_Rate)(
14565 ISpeechVoice *This,
14566 LONG Rate);
14567
14568 HRESULT (STDMETHODCALLTYPE *get_Volume)(
14569 ISpeechVoice *This,
14570 LONG *Volume);
14571
14572 HRESULT (STDMETHODCALLTYPE *put_Volume)(
14573 ISpeechVoice *This,
14574 LONG Volume);
14575
14576 HRESULT (STDMETHODCALLTYPE *put_AllowAudioOutputFormatChangesOnNextSet)(
14577 ISpeechVoice *This,
14578 VARIANT_BOOL Allow);
14579
14580 HRESULT (STDMETHODCALLTYPE *get_AllowAudioOutputFormatChangesOnNextSet)(
14581 ISpeechVoice *This,
14582 VARIANT_BOOL *Allow);
14583
14584 HRESULT (STDMETHODCALLTYPE *get_EventInterests)(
14585 ISpeechVoice *This,
14586 SpeechVoiceEvents *EventInterestFlags);
14587
14588 HRESULT (STDMETHODCALLTYPE *put_EventInterests)(
14589 ISpeechVoice *This,
14590 SpeechVoiceEvents EventInterestFlags);
14591
14592 HRESULT (STDMETHODCALLTYPE *put_Priority)(
14593 ISpeechVoice *This,
14594 SpeechVoicePriority Priority);
14595
14596 HRESULT (STDMETHODCALLTYPE *get_Priority)(
14597 ISpeechVoice *This,
14598 SpeechVoicePriority *Priority);
14599
14600 HRESULT (STDMETHODCALLTYPE *put_AlertBoundary)(
14601 ISpeechVoice *This,
14602 SpeechVoiceEvents Boundary);
14603
14604 HRESULT (STDMETHODCALLTYPE *get_AlertBoundary)(
14605 ISpeechVoice *This,
14606 SpeechVoiceEvents *Boundary);
14607
14608 HRESULT (STDMETHODCALLTYPE *put_SynchronousSpeakTimeout)(
14609 ISpeechVoice *This,
14610 LONG msTimeout);
14611
14612 HRESULT (STDMETHODCALLTYPE *get_SynchronousSpeakTimeout)(
14613 ISpeechVoice *This,
14614 LONG *msTimeout);
14615
14616 HRESULT (STDMETHODCALLTYPE *Speak)(
14617 ISpeechVoice *This,
14618 BSTR Text,
14619 SpeechVoiceSpeakFlags Flags,
14620 LONG *StreamNumber);
14621
14622 HRESULT (STDMETHODCALLTYPE *SpeakStream)(
14623 ISpeechVoice *This,
14624 ISpeechBaseStream *Stream,
14625 SpeechVoiceSpeakFlags Flags,
14626 LONG *StreamNumber);
14627
14628 HRESULT (STDMETHODCALLTYPE *Pause)(
14629 ISpeechVoice *This);
14630
14631 HRESULT (STDMETHODCALLTYPE *Resume)(
14632 ISpeechVoice *This);
14633
14634 HRESULT (STDMETHODCALLTYPE *Skip)(
14635 ISpeechVoice *This,
14636 const BSTR Type,
14637 LONG NumItems,
14638 LONG *NumSkipped);
14639
14640 HRESULT (STDMETHODCALLTYPE *GetVoices)(
14641 ISpeechVoice *This,
14642 BSTR RequiredAttributes,
14643 BSTR OptionalAttributes,
14644 ISpeechObjectTokens **ObjectTokens);
14645
14646 HRESULT (STDMETHODCALLTYPE *GetAudioOutputs)(
14647 ISpeechVoice *This,
14648 BSTR RequiredAttributes,
14649 BSTR OptionalAttributes,
14650 ISpeechObjectTokens **ObjectTokens);
14651
14652 HRESULT (STDMETHODCALLTYPE *WaitUntilDone)(
14653 ISpeechVoice *This,
14654 LONG msTimeout,
14655 VARIANT_BOOL *Done);
14656
14657 HRESULT (STDMETHODCALLTYPE *SpeakCompleteEvent)(
14658 ISpeechVoice *This,
14659 LONG *Handle);
14660
14661 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
14662 ISpeechVoice *This,
14663 const BSTR TypeOfUI,
14664 const VARIANT *ExtraData,
14665 VARIANT_BOOL *Supported);
14666
14667 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
14668 ISpeechVoice *This,
14669 LONG hWndParent,
14670 BSTR Title,
14671 const BSTR TypeOfUI,
14672 const VARIANT *ExtraData);
14673
14674 END_INTERFACE
14675} ISpeechVoiceVtbl;
14676
14677interface ISpeechVoice {
14678 CONST_VTBL ISpeechVoiceVtbl* lpVtbl;
14679};
14680
14681#ifdef COBJMACROS
14682#ifndef WIDL_C_INLINE_WRAPPERS
14683/*** IUnknown methods ***/
14684#define ISpeechVoice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14685#define ISpeechVoice_AddRef(This) (This)->lpVtbl->AddRef(This)
14686#define ISpeechVoice_Release(This) (This)->lpVtbl->Release(This)
14687/*** IDispatch methods ***/
14688#define ISpeechVoice_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14689#define ISpeechVoice_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14690#define ISpeechVoice_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14691#define ISpeechVoice_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14692/*** ISpeechVoice methods ***/
14693#define ISpeechVoice_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
14694#define ISpeechVoice_get_Voice(This,Voice) (This)->lpVtbl->get_Voice(This,Voice)
14695#define ISpeechVoice_putref_Voice(This,Voice) (This)->lpVtbl->putref_Voice(This,Voice)
14696#define ISpeechVoice_get_AudioOutput(This,AudioOutput) (This)->lpVtbl->get_AudioOutput(This,AudioOutput)
14697#define ISpeechVoice_putref_AudioOutput(This,AudioOutput) (This)->lpVtbl->putref_AudioOutput(This,AudioOutput)
14698#define ISpeechVoice_get_AudioOutputStream(This,AudioOutputStream) (This)->lpVtbl->get_AudioOutputStream(This,AudioOutputStream)
14699#define ISpeechVoice_putref_AudioOutputStream(This,AudioOutputStream) (This)->lpVtbl->putref_AudioOutputStream(This,AudioOutputStream)
14700#define ISpeechVoice_get_Rate(This,Rate) (This)->lpVtbl->get_Rate(This,Rate)
14701#define ISpeechVoice_put_Rate(This,Rate) (This)->lpVtbl->put_Rate(This,Rate)
14702#define ISpeechVoice_get_Volume(This,Volume) (This)->lpVtbl->get_Volume(This,Volume)
14703#define ISpeechVoice_put_Volume(This,Volume) (This)->lpVtbl->put_Volume(This,Volume)
14704#define ISpeechVoice_put_AllowAudioOutputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->put_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
14705#define ISpeechVoice_get_AllowAudioOutputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->get_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
14706#define ISpeechVoice_get_EventInterests(This,EventInterestFlags) (This)->lpVtbl->get_EventInterests(This,EventInterestFlags)
14707#define ISpeechVoice_put_EventInterests(This,EventInterestFlags) (This)->lpVtbl->put_EventInterests(This,EventInterestFlags)
14708#define ISpeechVoice_put_Priority(This,Priority) (This)->lpVtbl->put_Priority(This,Priority)
14709#define ISpeechVoice_get_Priority(This,Priority) (This)->lpVtbl->get_Priority(This,Priority)
14710#define ISpeechVoice_put_AlertBoundary(This,Boundary) (This)->lpVtbl->put_AlertBoundary(This,Boundary)
14711#define ISpeechVoice_get_AlertBoundary(This,Boundary) (This)->lpVtbl->get_AlertBoundary(This,Boundary)
14712#define ISpeechVoice_put_SynchronousSpeakTimeout(This,msTimeout) (This)->lpVtbl->put_SynchronousSpeakTimeout(This,msTimeout)
14713#define ISpeechVoice_get_SynchronousSpeakTimeout(This,msTimeout) (This)->lpVtbl->get_SynchronousSpeakTimeout(This,msTimeout)
14714#define ISpeechVoice_Speak(This,Text,Flags,StreamNumber) (This)->lpVtbl->Speak(This,Text,Flags,StreamNumber)
14715#define ISpeechVoice_SpeakStream(This,Stream,Flags,StreamNumber) (This)->lpVtbl->SpeakStream(This,Stream,Flags,StreamNumber)
14716#define ISpeechVoice_Pause(This) (This)->lpVtbl->Pause(This)
14717#define ISpeechVoice_Resume(This) (This)->lpVtbl->Resume(This)
14718#define ISpeechVoice_Skip(This,Type,NumItems,NumSkipped) (This)->lpVtbl->Skip(This,Type,NumItems,NumSkipped)
14719#define ISpeechVoice_GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
14720#define ISpeechVoice_GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
14721#define ISpeechVoice_WaitUntilDone(This,msTimeout,Done) (This)->lpVtbl->WaitUntilDone(This,msTimeout,Done)
14722#define ISpeechVoice_SpeakCompleteEvent(This,Handle) (This)->lpVtbl->SpeakCompleteEvent(This,Handle)
14723#define ISpeechVoice_IsUISupported(This,TypeOfUI,ExtraData,Supported) (This)->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported)
14724#define ISpeechVoice_DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData) (This)->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
14725#else
14726/*** IUnknown methods ***/
14727static inline HRESULT ISpeechVoice_QueryInterface(ISpeechVoice* This,REFIID riid,void **ppvObject) {
14728 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14729}
14730static inline ULONG ISpeechVoice_AddRef(ISpeechVoice* This) {
14731 return This->lpVtbl->AddRef(This);
14732}
14733static inline ULONG ISpeechVoice_Release(ISpeechVoice* This) {
14734 return This->lpVtbl->Release(This);
14735}
14736/*** IDispatch methods ***/
14737static inline HRESULT ISpeechVoice_GetTypeInfoCount(ISpeechVoice* This,UINT *pctinfo) {
14738 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14739}
14740static inline HRESULT ISpeechVoice_GetTypeInfo(ISpeechVoice* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14741 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14742}
14743static inline HRESULT ISpeechVoice_GetIDsOfNames(ISpeechVoice* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14744 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14745}
14746static inline HRESULT ISpeechVoice_Invoke(ISpeechVoice* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14747 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14748}
14749/*** ISpeechVoice methods ***/
14750static inline HRESULT ISpeechVoice_get_Status(ISpeechVoice* This,ISpeechVoiceStatus **Status) {
14751 return This->lpVtbl->get_Status(This,Status);
14752}
14753static inline HRESULT ISpeechVoice_get_Voice(ISpeechVoice* This,ISpeechObjectToken **Voice) {
14754 return This->lpVtbl->get_Voice(This,Voice);
14755}
14756static inline HRESULT ISpeechVoice_putref_Voice(ISpeechVoice* This,ISpeechObjectToken *Voice) {
14757 return This->lpVtbl->putref_Voice(This,Voice);
14758}
14759static inline HRESULT ISpeechVoice_get_AudioOutput(ISpeechVoice* This,ISpeechObjectToken **AudioOutput) {
14760 return This->lpVtbl->get_AudioOutput(This,AudioOutput);
14761}
14762static inline HRESULT ISpeechVoice_putref_AudioOutput(ISpeechVoice* This,ISpeechObjectToken *AudioOutput) {
14763 return This->lpVtbl->putref_AudioOutput(This,AudioOutput);
14764}
14765static inline HRESULT ISpeechVoice_get_AudioOutputStream(ISpeechVoice* This,ISpeechBaseStream **AudioOutputStream) {
14766 return This->lpVtbl->get_AudioOutputStream(This,AudioOutputStream);
14767}
14768static inline HRESULT ISpeechVoice_putref_AudioOutputStream(ISpeechVoice* This,ISpeechBaseStream *AudioOutputStream) {
14769 return This->lpVtbl->putref_AudioOutputStream(This,AudioOutputStream);
14770}
14771static inline HRESULT ISpeechVoice_get_Rate(ISpeechVoice* This,LONG *Rate) {
14772 return This->lpVtbl->get_Rate(This,Rate);
14773}
14774static inline HRESULT ISpeechVoice_put_Rate(ISpeechVoice* This,LONG Rate) {
14775 return This->lpVtbl->put_Rate(This,Rate);
14776}
14777static inline HRESULT ISpeechVoice_get_Volume(ISpeechVoice* This,LONG *Volume) {
14778 return This->lpVtbl->get_Volume(This,Volume);
14779}
14780static inline HRESULT ISpeechVoice_put_Volume(ISpeechVoice* This,LONG Volume) {
14781 return This->lpVtbl->put_Volume(This,Volume);
14782}
14783static inline HRESULT ISpeechVoice_put_AllowAudioOutputFormatChangesOnNextSet(ISpeechVoice* This,VARIANT_BOOL Allow) {
14784 return This->lpVtbl->put_AllowAudioOutputFormatChangesOnNextSet(This,Allow);
14785}
14786static inline HRESULT ISpeechVoice_get_AllowAudioOutputFormatChangesOnNextSet(ISpeechVoice* This,VARIANT_BOOL *Allow) {
14787 return This->lpVtbl->get_AllowAudioOutputFormatChangesOnNextSet(This,Allow);
14788}
14789static inline HRESULT ISpeechVoice_get_EventInterests(ISpeechVoice* This,SpeechVoiceEvents *EventInterestFlags) {
14790 return This->lpVtbl->get_EventInterests(This,EventInterestFlags);
14791}
14792static inline HRESULT ISpeechVoice_put_EventInterests(ISpeechVoice* This,SpeechVoiceEvents EventInterestFlags) {
14793 return This->lpVtbl->put_EventInterests(This,EventInterestFlags);
14794}
14795static inline HRESULT ISpeechVoice_put_Priority(ISpeechVoice* This,SpeechVoicePriority Priority) {
14796 return This->lpVtbl->put_Priority(This,Priority);
14797}
14798static inline HRESULT ISpeechVoice_get_Priority(ISpeechVoice* This,SpeechVoicePriority *Priority) {
14799 return This->lpVtbl->get_Priority(This,Priority);
14800}
14801static inline HRESULT ISpeechVoice_put_AlertBoundary(ISpeechVoice* This,SpeechVoiceEvents Boundary) {
14802 return This->lpVtbl->put_AlertBoundary(This,Boundary);
14803}
14804static inline HRESULT ISpeechVoice_get_AlertBoundary(ISpeechVoice* This,SpeechVoiceEvents *Boundary) {
14805 return This->lpVtbl->get_AlertBoundary(This,Boundary);
14806}
14807static inline HRESULT ISpeechVoice_put_SynchronousSpeakTimeout(ISpeechVoice* This,LONG msTimeout) {
14808 return This->lpVtbl->put_SynchronousSpeakTimeout(This,msTimeout);
14809}
14810static inline HRESULT ISpeechVoice_get_SynchronousSpeakTimeout(ISpeechVoice* This,LONG *msTimeout) {
14811 return This->lpVtbl->get_SynchronousSpeakTimeout(This,msTimeout);
14812}
14813static inline HRESULT ISpeechVoice_Speak(ISpeechVoice* This,BSTR Text,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
14814 return This->lpVtbl->Speak(This,Text,Flags,StreamNumber);
14815}
14816static inline HRESULT ISpeechVoice_SpeakStream(ISpeechVoice* This,ISpeechBaseStream *Stream,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
14817 return This->lpVtbl->SpeakStream(This,Stream,Flags,StreamNumber);
14818}
14819static inline HRESULT ISpeechVoice_Pause(ISpeechVoice* This) {
14820 return This->lpVtbl->Pause(This);
14821}
14822static inline HRESULT ISpeechVoice_Resume(ISpeechVoice* This) {
14823 return This->lpVtbl->Resume(This);
14824}
14825static inline HRESULT ISpeechVoice_Skip(ISpeechVoice* This,const BSTR Type,LONG NumItems,LONG *NumSkipped) {
14826 return This->lpVtbl->Skip(This,Type,NumItems,NumSkipped);
14827}
14828static inline HRESULT ISpeechVoice_GetVoices(ISpeechVoice* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
14829 return This->lpVtbl->GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
14830}
14831static inline HRESULT ISpeechVoice_GetAudioOutputs(ISpeechVoice* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
14832 return This->lpVtbl->GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
14833}
14834static inline HRESULT ISpeechVoice_WaitUntilDone(ISpeechVoice* This,LONG msTimeout,VARIANT_BOOL *Done) {
14835 return This->lpVtbl->WaitUntilDone(This,msTimeout,Done);
14836}
14837static inline HRESULT ISpeechVoice_SpeakCompleteEvent(ISpeechVoice* This,LONG *Handle) {
14838 return This->lpVtbl->SpeakCompleteEvent(This,Handle);
14839}
14840static inline HRESULT ISpeechVoice_IsUISupported(ISpeechVoice* This,const BSTR TypeOfUI,const VARIANT *ExtraData,VARIANT_BOOL *Supported) {
14841 return This->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported);
14842}
14843static inline HRESULT ISpeechVoice_DisplayUI(ISpeechVoice* This,LONG hWndParent,BSTR Title,const BSTR TypeOfUI,const VARIANT *ExtraData) {
14844 return This->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData);
14845}
14846#endif
14847#endif
14848
14849#endif
14850
14851
14852#endif /* __ISpeechVoice_INTERFACE_DEFINED__ */
14853
14854/*****************************************************************************
14855 * ISpeechVoiceStatus interface
14856 */
14857#ifndef __ISpeechVoiceStatus_INTERFACE_DEFINED__
14858#define __ISpeechVoiceStatus_INTERFACE_DEFINED__
14859
14860DEFINE_GUID(IID_ISpeechVoiceStatus, 0x8be47b07, 0x57f6, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96);
14861#if defined(__cplusplus) && !defined(CINTERFACE)
14862MIDL_INTERFACE("8be47b07-57f6-11d2-9eee-00c04f797396")
14863ISpeechVoiceStatus : public IDispatch
14864{
14865 virtual HRESULT STDMETHODCALLTYPE get_CurrentStreamNumber(
14866 LONG *StreamNumber) = 0;
14867
14868 virtual HRESULT STDMETHODCALLTYPE get_LastStreamNumberQueued(
14869 LONG *StreamNumber) = 0;
14870
14871 virtual HRESULT STDMETHODCALLTYPE get_LastHResult(
14872 LONG *HResult) = 0;
14873
14874 virtual HRESULT STDMETHODCALLTYPE get_RunningState(
14875 SpeechRunState *State) = 0;
14876
14877 virtual HRESULT STDMETHODCALLTYPE get_InputWordPosition(
14878 LONG *Position) = 0;
14879
14880 virtual HRESULT STDMETHODCALLTYPE get_InputWordLength(
14881 LONG *Length) = 0;
14882
14883 virtual HRESULT STDMETHODCALLTYPE get_InputSentencePosition(
14884 LONG *Position) = 0;
14885
14886 virtual HRESULT STDMETHODCALLTYPE get_InputSentenceLength(
14887 LONG *Length) = 0;
14888
14889 virtual HRESULT STDMETHODCALLTYPE get_LastBookmark(
14890 BSTR *Bookmark) = 0;
14891
14892 virtual HRESULT STDMETHODCALLTYPE get_LastBookmarkId(
14893 LONG *BookmarkId) = 0;
14894
14895 virtual HRESULT STDMETHODCALLTYPE get_PhonemeId(
14896 short *PhoneId) = 0;
14897
14898 virtual HRESULT STDMETHODCALLTYPE get_VisemeId(
14899 short *VisemeId) = 0;
14900
14901};
14902#ifdef __CRT_UUID_DECL
14903__CRT_UUID_DECL(ISpeechVoiceStatus, 0x8be47b07, 0x57f6, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96)
14904#endif
14905#else
14906typedef struct ISpeechVoiceStatusVtbl {
14907 BEGIN_INTERFACE
14908
14909 /*** IUnknown methods ***/
14910 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14911 ISpeechVoiceStatus *This,
14912 REFIID riid,
14913 void **ppvObject);
14914
14915 ULONG (STDMETHODCALLTYPE *AddRef)(
14916 ISpeechVoiceStatus *This);
14917
14918 ULONG (STDMETHODCALLTYPE *Release)(
14919 ISpeechVoiceStatus *This);
14920
14921 /*** IDispatch methods ***/
14922 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14923 ISpeechVoiceStatus *This,
14924 UINT *pctinfo);
14925
14926 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14927 ISpeechVoiceStatus *This,
14928 UINT iTInfo,
14929 LCID lcid,
14930 ITypeInfo **ppTInfo);
14931
14932 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14933 ISpeechVoiceStatus *This,
14934 REFIID riid,
14935 LPOLESTR *rgszNames,
14936 UINT cNames,
14937 LCID lcid,
14938 DISPID *rgDispId);
14939
14940 HRESULT (STDMETHODCALLTYPE *Invoke)(
14941 ISpeechVoiceStatus *This,
14942 DISPID dispIdMember,
14943 REFIID riid,
14944 LCID lcid,
14945 WORD wFlags,
14946 DISPPARAMS *pDispParams,
14947 VARIANT *pVarResult,
14948 EXCEPINFO *pExcepInfo,
14949 UINT *puArgErr);
14950
14951 /*** ISpeechVoiceStatus methods ***/
14952 HRESULT (STDMETHODCALLTYPE *get_CurrentStreamNumber)(
14953 ISpeechVoiceStatus *This,
14954 LONG *StreamNumber);
14955
14956 HRESULT (STDMETHODCALLTYPE *get_LastStreamNumberQueued)(
14957 ISpeechVoiceStatus *This,
14958 LONG *StreamNumber);
14959
14960 HRESULT (STDMETHODCALLTYPE *get_LastHResult)(
14961 ISpeechVoiceStatus *This,
14962 LONG *HResult);
14963
14964 HRESULT (STDMETHODCALLTYPE *get_RunningState)(
14965 ISpeechVoiceStatus *This,
14966 SpeechRunState *State);
14967
14968 HRESULT (STDMETHODCALLTYPE *get_InputWordPosition)(
14969 ISpeechVoiceStatus *This,
14970 LONG *Position);
14971
14972 HRESULT (STDMETHODCALLTYPE *get_InputWordLength)(
14973 ISpeechVoiceStatus *This,
14974 LONG *Length);
14975
14976 HRESULT (STDMETHODCALLTYPE *get_InputSentencePosition)(
14977 ISpeechVoiceStatus *This,
14978 LONG *Position);
14979
14980 HRESULT (STDMETHODCALLTYPE *get_InputSentenceLength)(
14981 ISpeechVoiceStatus *This,
14982 LONG *Length);
14983
14984 HRESULT (STDMETHODCALLTYPE *get_LastBookmark)(
14985 ISpeechVoiceStatus *This,
14986 BSTR *Bookmark);
14987
14988 HRESULT (STDMETHODCALLTYPE *get_LastBookmarkId)(
14989 ISpeechVoiceStatus *This,
14990 LONG *BookmarkId);
14991
14992 HRESULT (STDMETHODCALLTYPE *get_PhonemeId)(
14993 ISpeechVoiceStatus *This,
14994 short *PhoneId);
14995
14996 HRESULT (STDMETHODCALLTYPE *get_VisemeId)(
14997 ISpeechVoiceStatus *This,
14998 short *VisemeId);
14999
15000 END_INTERFACE
15001} ISpeechVoiceStatusVtbl;
15002
15003interface ISpeechVoiceStatus {
15004 CONST_VTBL ISpeechVoiceStatusVtbl* lpVtbl;
15005};
15006
15007#ifdef COBJMACROS
15008#ifndef WIDL_C_INLINE_WRAPPERS
15009/*** IUnknown methods ***/
15010#define ISpeechVoiceStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15011#define ISpeechVoiceStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
15012#define ISpeechVoiceStatus_Release(This) (This)->lpVtbl->Release(This)
15013/*** IDispatch methods ***/
15014#define ISpeechVoiceStatus_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
15015#define ISpeechVoiceStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
15016#define ISpeechVoiceStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
15017#define ISpeechVoiceStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
15018/*** ISpeechVoiceStatus methods ***/
15019#define ISpeechVoiceStatus_get_CurrentStreamNumber(This,StreamNumber) (This)->lpVtbl->get_CurrentStreamNumber(This,StreamNumber)
15020#define ISpeechVoiceStatus_get_LastStreamNumberQueued(This,StreamNumber) (This)->lpVtbl->get_LastStreamNumberQueued(This,StreamNumber)
15021#define ISpeechVoiceStatus_get_LastHResult(This,HResult) (This)->lpVtbl->get_LastHResult(This,HResult)
15022#define ISpeechVoiceStatus_get_RunningState(This,State) (This)->lpVtbl->get_RunningState(This,State)
15023#define ISpeechVoiceStatus_get_InputWordPosition(This,Position) (This)->lpVtbl->get_InputWordPosition(This,Position)
15024#define ISpeechVoiceStatus_get_InputWordLength(This,Length) (This)->lpVtbl->get_InputWordLength(This,Length)
15025#define ISpeechVoiceStatus_get_InputSentencePosition(This,Position) (This)->lpVtbl->get_InputSentencePosition(This,Position)
15026#define ISpeechVoiceStatus_get_InputSentenceLength(This,Length) (This)->lpVtbl->get_InputSentenceLength(This,Length)
15027#define ISpeechVoiceStatus_get_LastBookmark(This,Bookmark) (This)->lpVtbl->get_LastBookmark(This,Bookmark)
15028#define ISpeechVoiceStatus_get_LastBookmarkId(This,BookmarkId) (This)->lpVtbl->get_LastBookmarkId(This,BookmarkId)
15029#define ISpeechVoiceStatus_get_PhonemeId(This,PhoneId) (This)->lpVtbl->get_PhonemeId(This,PhoneId)
15030#define ISpeechVoiceStatus_get_VisemeId(This,VisemeId) (This)->lpVtbl->get_VisemeId(This,VisemeId)
15031#else
15032/*** IUnknown methods ***/
15033static inline HRESULT ISpeechVoiceStatus_QueryInterface(ISpeechVoiceStatus* This,REFIID riid,void **ppvObject) {
15034 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15035}
15036static inline ULONG ISpeechVoiceStatus_AddRef(ISpeechVoiceStatus* This) {
15037 return This->lpVtbl->AddRef(This);
15038}
15039static inline ULONG ISpeechVoiceStatus_Release(ISpeechVoiceStatus* This) {
15040 return This->lpVtbl->Release(This);
15041}
15042/*** IDispatch methods ***/
15043static inline HRESULT ISpeechVoiceStatus_GetTypeInfoCount(ISpeechVoiceStatus* This,UINT *pctinfo) {
15044 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
15045}
15046static inline HRESULT ISpeechVoiceStatus_GetTypeInfo(ISpeechVoiceStatus* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
15047 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
15048}
15049static inline HRESULT ISpeechVoiceStatus_GetIDsOfNames(ISpeechVoiceStatus* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
15050 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
15051}
15052static inline HRESULT ISpeechVoiceStatus_Invoke(ISpeechVoiceStatus* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
15053 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
15054}
15055/*** ISpeechVoiceStatus methods ***/
15056static inline HRESULT ISpeechVoiceStatus_get_CurrentStreamNumber(ISpeechVoiceStatus* This,LONG *StreamNumber) {
15057 return This->lpVtbl->get_CurrentStreamNumber(This,StreamNumber);
15058}
15059static inline HRESULT ISpeechVoiceStatus_get_LastStreamNumberQueued(ISpeechVoiceStatus* This,LONG *StreamNumber) {
15060 return This->lpVtbl->get_LastStreamNumberQueued(This,StreamNumber);
15061}
15062static inline HRESULT ISpeechVoiceStatus_get_LastHResult(ISpeechVoiceStatus* This,LONG *HResult) {
15063 return This->lpVtbl->get_LastHResult(This,HResult);
15064}
15065static inline HRESULT ISpeechVoiceStatus_get_RunningState(ISpeechVoiceStatus* This,SpeechRunState *State) {
15066 return This->lpVtbl->get_RunningState(This,State);
15067}
15068static inline HRESULT ISpeechVoiceStatus_get_InputWordPosition(ISpeechVoiceStatus* This,LONG *Position) {
15069 return This->lpVtbl->get_InputWordPosition(This,Position);
15070}
15071static inline HRESULT ISpeechVoiceStatus_get_InputWordLength(ISpeechVoiceStatus* This,LONG *Length) {
15072 return This->lpVtbl->get_InputWordLength(This,Length);
15073}
15074static inline HRESULT ISpeechVoiceStatus_get_InputSentencePosition(ISpeechVoiceStatus* This,LONG *Position) {
15075 return This->lpVtbl->get_InputSentencePosition(This,Position);
15076}
15077static inline HRESULT ISpeechVoiceStatus_get_InputSentenceLength(ISpeechVoiceStatus* This,LONG *Length) {
15078 return This->lpVtbl->get_InputSentenceLength(This,Length);
15079}
15080static inline HRESULT ISpeechVoiceStatus_get_LastBookmark(ISpeechVoiceStatus* This,BSTR *Bookmark) {
15081 return This->lpVtbl->get_LastBookmark(This,Bookmark);
15082}
15083static inline HRESULT ISpeechVoiceStatus_get_LastBookmarkId(ISpeechVoiceStatus* This,LONG *BookmarkId) {
15084 return This->lpVtbl->get_LastBookmarkId(This,BookmarkId);
15085}
15086static inline HRESULT ISpeechVoiceStatus_get_PhonemeId(ISpeechVoiceStatus* This,short *PhoneId) {
15087 return This->lpVtbl->get_PhonemeId(This,PhoneId);
15088}
15089static inline HRESULT ISpeechVoiceStatus_get_VisemeId(ISpeechVoiceStatus* This,short *VisemeId) {
15090 return This->lpVtbl->get_VisemeId(This,VisemeId);
15091}
15092#endif
15093#endif
15094
15095#endif
15096
15097
15098#endif /* __ISpeechVoiceStatus_INTERFACE_DEFINED__ */
15099
15100typedef enum SpeechVisemeType {
15101 SVP_0 = 0,
15102 SVP_1 = 1,
15103 SVP_2 = 2,
15104 SVP_3 = 3,
15105 SVP_4 = 4,
15106 SVP_5 = 5,
15107 SVP_6 = 6,
15108 SVP_7 = 7,
15109 SVP_8 = 8,
15110 SVP_9 = 9,
15111 SVP_10 = 10,
15112 SVP_11 = 11,
15113 SVP_12 = 12,
15114 SVP_13 = 13,
15115 SVP_14 = 14,
15116 SVP_15 = 15,
15117 SVP_16 = 16,
15118 SVP_17 = 17,
15119 SVP_18 = 18,
15120 SVP_19 = 19,
15121 SVP_20 = 20,
15122 SVP_21 = 21
15123} SpeechVisemeType;
15124typedef enum SpeechVisemeFeature {
15125 SVF_None = 0,
15126 SVF_Stressed = SPVFEATURE_STRESSED,
15127 SVF_Emphasis = SPVFEATURE_EMPHASIS
15128} SpeechVisemeFeature;
15129typedef enum DISPID_SpeechVoiceEvent {
15130 DISPID_SVEStreamStart = 1,
15131 DISPID_SVEStreamEnd = 2,
15132 DISPID_SVEVoiceChange = 3,
15133 DISPID_SVEBookmark = 4,
15134 DISPID_SVEWord = 5,
15135 DISPID_SVEPhoneme = 6,
15136 DISPID_SVESentenceBoundary = 7,
15137 DISPID_SVEViseme = 8,
15138 DISPID_SVEAudioLevel = 9,
15139 DISPID_SVEEnginePrivate = 10
15140} DISPID_SpeechVoiceEvent;
15141typedef enum DISPID_SpeechRecognizer {
15142 DISPID_SRRecognizer = 1,
15143 DISPID_SRAllowAudioInputFormatChangesOnNextSet = 2,
15144 DISPID_SRAudioInput = 3,
15145 DISPID_SRAudioInputStream = 4,
15146 DISPID_SRIsShared = 5,
15147 DISPID_SRState = 6,
15148 DISPID_SRStatus = 7,
15149 DISPID_SRProfile = 8,
15150 DISPID_SREmulateRecognition = 9,
15151 DISPID_SRCreateRecoContext = 10,
15152 DISPID_SRGetFormat = 11,
15153 DISPID_SRSetPropertyNumber = 12,
15154 DISPID_SRGetPropertyNumber = 13,
15155 DISPID_SRSetPropertyString = 14,
15156 DISPID_SRGetPropertyString = 15,
15157 DISPID_SRIsUISupported = 16,
15158 DISPID_SRDisplayUI = 17,
15159 DISPID_SRGetRecognizers = 18,
15160 DISPID_SVGetAudioInputs = 19,
15161 DISPID_SVGetProfiles = 20
15162} DISPID_SpeechRecognizer;
15163typedef enum SpeechRecognizerState {
15164 SRSInactive = SPRST_INACTIVE,
15165 SRSActive = SPRST_ACTIVE,
15166 SRSActiveAlways = SPRST_ACTIVE_ALWAYS,
15167 SRSInactiveWithPurge = SPRST_INACTIVE_WITH_PURGE
15168} SpeechRecognizerState;
15169typedef enum SpeechDisplayAttributes {
15170 SDA_No_Trailing_Space = 0,
15171 SDA_One_Trailing_Space = SPAF_ONE_TRAILING_SPACE,
15172 SDA_Two_Trailing_Spaces = SPAF_TWO_TRAILING_SPACES,
15173 SDA_Consume_Leading_Spaces = SPAF_CONSUME_LEADING_SPACES
15174} SpeechDisplayAttributes;
15175typedef enum SpeechFormatType {
15176 SFTInput = SPWF_INPUT,
15177 SFTSREngine = SPWF_SRENGINE
15178} SpeechFormatType;
15179typedef enum DISPID_SpeechRecognizerStatus {
15180 DISPID_SRSAudioStatus = 1,
15181 DISPID_SRSCurrentStreamPosition = 2,
15182 DISPID_SRSCurrentStreamNumber = 3,
15183 DISPID_SRSNumberOfActiveRules = 4,
15184 DISPID_SRSClsidEngine = 5,
15185 DISPID_SRSSupportedLanguages = 6
15186} DISPID_SpeechRecognizerStatus;
15187typedef enum DISPID_SpeechRecoContext {
15188 DISPID_SRCRecognizer = 1,
15189 DISPID_SRCAudioInInterferenceStatus = 2,
15190 DISPID_SRCRequestedUIType = 3,
15191 DISPID_SRCVoice = 4,
15192 DISPID_SRAllowVoiceFormatMatchingOnNextSet = 5,
15193 DISPID_SRCVoicePurgeEvent = 6,
15194 DISPID_SRCEventInterests = 7,
15195 DISPID_SRCCmdMaxAlternates = 8,
15196 DISPID_SRCState = 9,
15197 DISPID_SRCRetainedAudio = 10,
15198 DISPID_SRCRetainedAudioFormat = 11,
15199 DISPID_SRCPause = 12,
15200 DISPID_SRCResume = 13,
15201 DISPID_SRCCreateGrammar = 14,
15202 DISPID_SRCCreateResultFromMemory = 15,
15203 DISPID_SRCBookmark = 16,
15204 DISPID_SRCSetAdaptationData = 17
15205} DISPID_SpeechRecoContext;
15206typedef enum SpeechRetainedAudioOptions {
15207 SRAONone = SPAO_NONE,
15208 SRAORetainAudio = SPAO_RETAIN_AUDIO
15209} SpeechRetainedAudioOptions;
15210typedef enum SpeechBookmarkOptions {
15211 SBONone = SPBO_NONE,
15212 SBOPause = SPBO_PAUSE
15213} SpeechBookmarkOptions;
15214typedef enum SpeechInterference {
15215 SINone = SPINTERFERENCE_NONE,
15216 SINoise = SPINTERFERENCE_NOISE,
15217 SINoSignal = SPINTERFERENCE_NOSIGNAL,
15218 SITooLoud = SPINTERFERENCE_TOOLOUD,
15219 SITooQuiet = SPINTERFERENCE_TOOQUIET,
15220 SITooFast = SPINTERFERENCE_TOOFAST,
15221 SITooSlow = SPINTERFERENCE_TOOSLOW
15222} SpeechInterference;
15223typedef enum SpeechRecoEvents {
15224 SREStreamEnd = 0x1,
15225 SRESoundStart = 0x2,
15226 SRESoundEnd = 0x4,
15227 SREPhraseStart = 0x8,
15228 SRERecognition = 0x10,
15229 SREHypothesis = 0x20,
15230 SREBookmark = 0x40,
15231 SREPropertyNumChange = 0x80,
15232 SREPropertyStringChange = 0x100,
15233 SREFalseRecognition = 0x200,
15234 SREInterference = 0x400,
15235 SRERequestUI = 0x800,
15236 SREStateChange = 0x1000,
15237 SREAdaptation = 0x2000,
15238 SREStreamStart = 0x4000,
15239 SRERecoOtherContext = 0x8000,
15240 SREAudioLevel = 0x10000,
15241 SREPrivate = 0x40000,
15242 SREAllEvents = 0x5ffff
15243} SpeechRecoEvents;
15244typedef enum SpeechRecoContextState {
15245 SRCS_Disabled = SPCS_DISABLED,
15246 SRCS_Enabled = SPCS_ENABLED
15247} SpeechRecoContextState;
15248typedef enum DISPIDSPRG {
15249 DISPID_SRGId = 1,
15250 DISPID_SRGRecoContext = 2,
15251 DISPID_SRGState = 3,
15252 DISPID_SRGRules = 4,
15253 DISPID_SRGReset = 5,
15254 DISPID_SRGCommit = 6,
15255 DISPID_SRGCmdLoadFromFile = 7,
15256 DISPID_SRGCmdLoadFromObject = 8,
15257 DISPID_SRGCmdLoadFromResource = 9,
15258 DISPID_SRGCmdLoadFromMemory = 10,
15259 DISPID_SRGCmdLoadFromProprietaryGrammar = 11,
15260 DISPID_SRGCmdSetRuleState = 12,
15261 DISPID_SRGCmdSetRuleIdState = 13,
15262 DISPID_SRGDictationLoad = 14,
15263 DISPID_SRGDictationUnload = 15,
15264 DISPID_SRGDictationSetState = 16,
15265 DISPID_SRGSetWordSequenceData = 17,
15266 DISPID_SRGSetTextSelection = 18,
15267 DISPID_SRGIsPronounceable = 19
15268} DISPIDSPRG;
15269typedef enum SpeechLoadOption {
15270 SLOStatic = SPLO_STATIC,
15271 SLODynamic = SPLO_DYNAMIC
15272} SpeechLoadOption;
15273typedef enum SpeechWordPronounceable {
15274 SWPUnknownWordUnpronounceable = SPWP_UNKNOWN_WORD_UNPRONOUNCEABLE,
15275 SWPUnknownWordPronounceable = SPWP_UNKNOWN_WORD_PRONOUNCEABLE,
15276 SWPKnownWordPronounceable = SPWP_KNOWN_WORD_PRONOUNCEABLE
15277} SpeechWordPronounceable;
15278typedef enum SpeechGrammarState {
15279 SGSEnabled = SPGS_ENABLED,
15280 SGSDisabled = SPGS_DISABLED,
15281 SGSExclusive = SPGS_EXCLUSIVE
15282} SpeechGrammarState;
15283typedef enum SpeechRuleState {
15284 SGDSInactive = SPRS_INACTIVE,
15285 SGDSActive = SPRS_ACTIVE,
15286 SGDSActiveWithAutoPause = SPRS_ACTIVE_WITH_AUTO_PAUSE,
15287 SGDSActiveUserDelimited = SPRS_ACTIVE_USER_DELIMITED
15288} SpeechRuleState;
15289typedef enum SpeechRuleAttributes {
15290 SRATopLevel = SPRAF_TopLevel,
15291 SRADefaultToActive = SPRAF_Active,
15292 SRAExport = SPRAF_Export,
15293 SRAImport = SPRAF_Import,
15294 SRAInterpreter = SPRAF_Interpreter,
15295 SRADynamic = SPRAF_Dynamic,
15296 SRARoot = SPRAF_Root
15297} SpeechRuleAttributes;
15298typedef enum SpeechGrammarWordType {
15299 SGDisplay = SPWT_DISPLAY,
15300 SGLexical = SPWT_LEXICAL,
15301 SGPronounciation = SPWT_PRONUNCIATION,
15302 SGLexicalNoSpecialChars = SPWT_LEXICAL_NO_SPECIAL_CHARS
15303} SpeechGrammarWordType;
15304typedef enum DISPID_SpeechRecoContextEvents {
15305 DISPID_SRCEStartStream = 1,
15306 DISPID_SRCEEndStream = 2,
15307 DISPID_SRCEBookmark = 3,
15308 DISPID_SRCESoundStart = 4,
15309 DISPID_SRCESoundEnd = 5,
15310 DISPID_SRCEPhraseStart = 6,
15311 DISPID_SRCERecognition = 7,
15312 DISPID_SRCEHypothesis = 8,
15313 DISPID_SRCEPropertyNumberChange = 9,
15314 DISPID_SRCEPropertyStringChange = 10,
15315 DISPID_SRCEFalseRecognition = 11,
15316 DISPID_SRCEInterference = 12,
15317 DISPID_SRCERequestUI = 13,
15318 DISPID_SRCERecognizerStateChange = 14,
15319 DISPID_SRCEAdaptation = 15,
15320 DISPID_SRCERecognitionForOtherContext = 16,
15321 DISPID_SRCEAudioLevel = 17,
15322 DISPID_SRCEEnginePrivate = 18
15323} DISPID_SpeechRecoContextEvents;
15324typedef enum SpeechRecognitionType {
15325 SRTStandard = 0,
15326 SRTAutopause = SPREF_AutoPause,
15327 SRTEmulated = SPREF_Emulated,
15328 SRTSMLTimeout = SPREF_SMLTimeout,
15329 SRTExtendableParse = SPREF_ExtendableParse,
15330 SRTReSent = SPREF_ReSent
15331} SpeechRecognitionType;
15332typedef enum DISPID_SpeechGrammarRule {
15333 DISPID_SGRAttributes = 1,
15334 DISPID_SGRInitialState = 2,
15335 DISPID_SGRName = 3,
15336 DISPID_SGRId = 4,
15337 DISPID_SGRClear = 5,
15338 DISPID_SGRAddResource = 6,
15339 DISPID_SGRAddState = 7
15340} DISPID_SpeechGrammarRule;
15341typedef enum DISPID_SpeechGrammarRules {
15342 DISPID_SGRsCount = 1,
15343 DISPID_SGRsDynamic = 2,
15344 DISPID_SGRsAdd = 3,
15345 DISPID_SGRsCommit = 4,
15346 DISPID_SGRsCommitAndSave = 5,
15347 DISPID_SGRsFindRule = 6,
15348 DISPID_SGRsItem = DISPID_VALUE,
15349 DISPID_SGRs_NewEnum = DISPID_NEWENUM
15350} DISPID_SpeechGrammarRules;
15351typedef enum DISPID_SpeechGrammarRuleState {
15352 DISPID_SGRSRule = 1,
15353 DISPID_SGRSTransitions = 2,
15354 DISPID_SGRSAddWordTransition = 3,
15355 DISPID_SGRSAddRuleTransition = 4,
15356 DISPID_SGRSAddSpecialTransition = 5
15357} DISPID_SpeechGrammarRuleState;
15358typedef enum SpeechSpecialTransitionType {
15359 SSTTWildcard = 1,
15360 SSTTDictation = 2,
15361 SSTTTextBuffer = 3
15362} SpeechSpecialTransitionType;
15363typedef enum DISPID_SpeechGrammarRuleStateTransitions {
15364 DISPID_SGRSTsCount = 1,
15365 DISPID_SGRSTsItem = DISPID_VALUE,
15366 DISPID_SGRSTs_NewEnum = DISPID_NEWENUM
15367} DISPID_SpeechGrammarRuleStateTransitions;
15368typedef enum DISPID_SpeechGrammarRuleStateTransition {
15369 DISPID_SGRSTType = 1,
15370 DISPID_SGRSTText = 2,
15371 DISPID_SGRSTRule = 3,
15372 DISPID_SGRSTWeight = 4,
15373 DISPID_SGRSTPropertyName = 5,
15374 DISPID_SGRSTPropertyId = 6,
15375 DISPID_SGRSTPropertyValue = 7,
15376 DISPID_SGRSTNextState = 8
15377} DISPID_SpeechGrammarRuleStateTransition;
15378typedef enum SpeechGrammarRuleStateTransitionType {
15379 SGRSTTEpsilon = 0,
15380 SGRSTTWord = 1,
15381 SGRSTTRule = 2,
15382 SGRSTTDictation = 3,
15383 SGRSTTWildcard = 4,
15384 SGRSTTTextBuffer = 5
15385} SpeechGrammarRuleStateTransitionType;
15386typedef enum DISPIDSPTSI {
15387 DISPIDSPTSI_ActiveOffset = 1,
15388 DISPIDSPTSI_ActiveLength = 2,
15389 DISPIDSPTSI_SelectionOffset = 3,
15390 DISPIDSPTSI_SelectionLength = 4
15391} DISPIDSPTSI;
15392typedef enum DISPID_SpeechRecoResult {
15393 DISPID_SRRRecoContext = 1,
15394 DISPID_SRRTimes = 2,
15395 DISPID_SRRAudioFormat = 3,
15396 DISPID_SRRPhraseInfo = 4,
15397 DISPID_SRRAlternates = 5,
15398 DISPID_SRRAudio = 6,
15399 DISPID_SRRSpeakAudio = 7,
15400 DISPID_SRRSaveToMemory = 8,
15401 DISPID_SRRDiscardResultInfo = 9
15402} DISPID_SpeechRecoResult;
15403typedef enum SpeechDiscardType {
15404 SDTProperty = SPDF_PROPERTY,
15405 SDTReplacement = SPDF_REPLACEMENT,
15406 SDTRule = SPDF_RULE,
15407 SDTDisplayText = SPDF_DISPLAYTEXT,
15408 SDTLexicalForm = SPDF_LEXICALFORM,
15409 SDTPronunciation = SPDF_PRONUNCIATION,
15410 SDTAudio = SPDF_AUDIO,
15411 SDTAlternates = SPDF_ALTERNATES,
15412 SDTAll = SPDF_ALL
15413} SpeechDiscardType;
15414typedef enum SpeechEmulationCompareFlags {
15415 SECFIgnoreCase = 0x1,
15416 SECFIgnoreKanaType = 0x10000,
15417 SECFIgnoreWidth = 0x20000,
15418 SECFNoSpecialChars = 0x20000000,
15419 SECFEmulateResult = 0x40000000,
15420 SECFDefault = (SECFIgnoreCase | SECFIgnoreKanaType) | SECFIgnoreWidth
15421} SpeechEmulationCompareFlags;
15422typedef enum DISPID_SpeechXMLRecoResult {
15423 DISPID_SRRGetXMLResult = DISPID_SRRDiscardResultInfo + 1,
15424 DISPID_SRRGetXMLErrorInfo = DISPID_SRRGetXMLResult + 1
15425} DISPID_SpeechXMLRecoResult;
15426typedef enum DISPID_SpeechRecoResult2 {
15427 DISPID_SRRSetTextFeedback = DISPID_SRRGetXMLErrorInfo + 1
15428} DISPID_SpeechRecoResult2;
15429typedef enum DISPID_SpeechPhraseBuilder {
15430 DISPID_SPPBRestorePhraseFromMemory = 1
15431} DISPID_SpeechPhraseBuilder;
15432typedef enum DISPID_SpeechRecoResultTimes {
15433 DISPID_SRRTStreamTime = 1,
15434 DISPID_SRRTLength = 2,
15435 DISPID_SRRTTickCount = 3,
15436 DISPID_SRRTOffsetFromStart = 4
15437} DISPID_SpeechRecoResultTimes;
15438typedef enum DISPID_SpeechPhraseAlternate {
15439 DISPID_SPARecoResult = 1,
15440 DISPID_SPAStartElementInResult = 2,
15441 DISPID_SPANumberOfElementsInResult = 3,
15442 DISPID_SPAPhraseInfo = 4,
15443 DISPID_SPACommit = 5
15444} DISPID_SpeechPhraseAlternate;
15445typedef enum DISPID_SpeechPhraseAlternates {
15446 DISPID_SPAsCount = 1,
15447 DISPID_SPAsItem = DISPID_VALUE,
15448 DISPID_SPAs_NewEnum = DISPID_NEWENUM
15449} DISPID_SpeechPhraseAlternates;
15450typedef enum DISPID_SpeechPhraseInfo {
15451 DISPID_SPILanguageId = 1,
15452 DISPID_SPIGrammarId = 2,
15453 DISPID_SPIStartTime = 3,
15454 DISPID_SPIAudioStreamPosition = 4,
15455 DISPID_SPIAudioSizeBytes = 5,
15456 DISPID_SPIRetainedSizeBytes = 6,
15457 DISPID_SPIAudioSizeTime = 7,
15458 DISPID_SPIRule = 8,
15459 DISPID_SPIProperties = 9,
15460 DISPID_SPIElements = 10,
15461 DISPID_SPIReplacements = 11,
15462 DISPID_SPIEngineId = 12,
15463 DISPID_SPIEnginePrivateData = 13,
15464 DISPID_SPISaveToMemory = 14,
15465 DISPID_SPIGetText = 15,
15466 DISPID_SPIGetDisplayAttributes = 16
15467} DISPID_SpeechPhraseInfo;
15468typedef enum DISPID_SpeechPhraseElement {
15469 DISPID_SPEAudioTimeOffset = 1,
15470 DISPID_SPEAudioSizeTime = 2,
15471 DISPID_SPEAudioStreamOffset = 3,
15472 DISPID_SPEAudioSizeBytes = 4,
15473 DISPID_SPERetainedStreamOffset = 5,
15474 DISPID_SPERetainedSizeBytes = 6,
15475 DISPID_SPEDisplayText = 7,
15476 DISPID_SPELexicalForm = 8,
15477 DISPID_SPEPronunciation = 9,
15478 DISPID_SPEDisplayAttributes = 10,
15479 DISPID_SPERequiredConfidence = 11,
15480 DISPID_SPEActualConfidence = 12,
15481 DISPID_SPEEngineConfidence = 13
15482} DISPID_SpeechPhraseElement;
15483typedef enum SpeechEngineConfidence {
15484 SECLowConfidence = -1,
15485 SECNormalConfidence = 0,
15486 SECHighConfidence = 1
15487} SpeechEngineConfidence;
15488typedef enum DISPID_SpeechPhraseElements {
15489 DISPID_SPEsCount = 1,
15490 DISPID_SPEsItem = DISPID_VALUE,
15491 DISPID_SPEs_NewEnum = DISPID_NEWENUM
15492} DISPID_SpeechPhraseElements;
15493typedef enum DISPID_SpeechPhraseReplacement {
15494 DISPID_SPRDisplayAttributes = 1,
15495 DISPID_SPRText = 2,
15496 DISPID_SPRFirstElement = 3,
15497 DISPID_SPRNumberOfElements = 4
15498} DISPID_SpeechPhraseReplacement;
15499typedef enum DISPID_SpeechPhraseReplacements {
15500 DISPID_SPRsCount = 1,
15501 DISPID_SPRsItem = DISPID_VALUE,
15502 DISPID_SPRs_NewEnum = DISPID_NEWENUM
15503} DISPID_SpeechPhraseReplacements;
15504typedef enum DISPID_SpeechPhraseProperty {
15505 DISPID_SPPName = 1,
15506 DISPID_SPPId = 2,
15507 DISPID_SPPValue = 3,
15508 DISPID_SPPFirstElement = 4,
15509 DISPID_SPPNumberOfElements = 5,
15510 DISPID_SPPEngineConfidence = 6,
15511 DISPID_SPPConfidence = 7,
15512 DISPID_SPPParent = 8,
15513 DISPID_SPPChildren = 9
15514} DISPID_SpeechPhraseProperty;
15515typedef enum DISPID_SpeechPhraseProperties {
15516 DISPID_SPPsCount = 1,
15517 DISPID_SPPsItem = DISPID_VALUE,
15518 DISPID_SPPs_NewEnum = DISPID_NEWENUM
15519} DISPID_SpeechPhraseProperties;
15520typedef enum DISPID_SpeechPhraseRule {
15521 DISPID_SPRuleName = 1,
15522 DISPID_SPRuleId = 2,
15523 DISPID_SPRuleFirstElement = 3,
15524 DISPID_SPRuleNumberOfElements = 4,
15525 DISPID_SPRuleParent = 5,
15526 DISPID_SPRuleChildren = 6,
15527 DISPID_SPRuleConfidence = 7,
15528 DISPID_SPRuleEngineConfidence = 8
15529} DISPID_SpeechPhraseRule;
15530typedef enum DISPID_SpeechPhraseRules {
15531 DISPID_SPRulesCount = 1,
15532 DISPID_SPRulesItem = DISPID_VALUE,
15533 DISPID_SPRules_NewEnum = DISPID_NEWENUM
15534} DISPID_SpeechPhraseRules;
15535typedef enum DISPID_SpeechLexicon {
15536 DISPID_SLGenerationId = 1,
15537 DISPID_SLGetWords = 2,
15538 DISPID_SLAddPronunciation = 3,
15539 DISPID_SLAddPronunciationByPhoneIds = 4,
15540 DISPID_SLRemovePronunciation = 5,
15541 DISPID_SLRemovePronunciationByPhoneIds = 6,
15542 DISPID_SLGetPronunciations = 7,
15543 DISPID_SLGetGenerationChange = 8
15544} DISPID_SpeechLexicon;
15545typedef enum SpeechLexiconType {
15546 SLTUser = eLEXTYPE_USER,
15547 SLTApp = eLEXTYPE_APP
15548} SpeechLexiconType;
15549typedef enum SpeechPartOfSpeech {
15550 SPSNotOverriden = SPPS_NotOverriden,
15551 SPSUnknown = SPPS_Unknown,
15552 SPSNoun = SPPS_Noun,
15553 SPSVerb = SPPS_Verb,
15554 SPSModifier = SPPS_Modifier,
15555 SPSFunction = SPPS_Function,
15556 SPSInterjection = SPPS_Interjection,
15557 SPSLMA = SPPS_LMA,
15558 SPSSuppressWord = SPPS_SuppressWord
15559} SpeechPartOfSpeech;
15560typedef enum DISPID_SpeechLexiconWords {
15561 DISPID_SLWsCount = 1,
15562 DISPID_SLWsItem = DISPID_VALUE,
15563 DISPID_SLWs_NewEnum = DISPID_NEWENUM
15564} DISPID_SpeechLexiconWords;
15565typedef enum SpeechWordType {
15566 SWTAdded = eWORDTYPE_ADDED,
15567 SWTDeleted = eWORDTYPE_DELETED
15568} SpeechWordType;
15569typedef enum DISPID_SpeechLexiconWord {
15570 DISPID_SLWLangId = 1,
15571 DISPID_SLWType = 2,
15572 DISPID_SLWWord = 3,
15573 DISPID_SLWPronunciations = 4
15574} DISPID_SpeechLexiconWord;
15575typedef enum DISPID_SpeechLexiconProns {
15576 DISPID_SLPsCount = 1,
15577 DISPID_SLPsItem = DISPID_VALUE,
15578 DISPID_SLPs_NewEnum = DISPID_NEWENUM
15579} DISPID_SpeechLexiconProns;
15580typedef enum DISPID_SpeechLexiconPronunciation {
15581 DISPID_SLPType = 1,
15582 DISPID_SLPLangId = 2,
15583 DISPID_SLPPartOfSpeech = 3,
15584 DISPID_SLPPhoneIds = 4,
15585 DISPID_SLPSymbolic = 5
15586} DISPID_SpeechLexiconPronunciation;
15587typedef enum DISPID_SpeechPhoneConverter {
15588 DISPID_SPCLangId = 1,
15589 DISPID_SPCPhoneToId = 2,
15590 DISPID_SPCIdToPhone = 3
15591} DISPID_SpeechPhoneConverter;
15592/*****************************************************************************
15593 * _ISpeechVoiceEvents dispinterface
15594 */
15595#ifndef ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__
15596#define ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__
15597
15598DEFINE_GUID(DIID__ISpeechVoiceEvents, 0xa372acd1, 0x3bef, 0x4bbd, 0x8f,0xfb, 0xcb,0x3e,0x2b,0x41,0x6a,0xf8);
15599#if defined(__cplusplus) && !defined(CINTERFACE)
15600MIDL_INTERFACE("a372acd1-3bef-4bbd-8ffb-cb3e2b416af8")
15601_ISpeechVoiceEvents : public IDispatch
15602{
15603};
15604#ifdef __CRT_UUID_DECL
15605__CRT_UUID_DECL(_ISpeechVoiceEvents, 0xa372acd1, 0x3bef, 0x4bbd, 0x8f,0xfb, 0xcb,0x3e,0x2b,0x41,0x6a,0xf8)
15606#endif
15607#else
15608typedef struct _ISpeechVoiceEventsVtbl {
15609 BEGIN_INTERFACE
15610
15611 /*** IUnknown methods ***/
15612 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15613 _ISpeechVoiceEvents *This,
15614 REFIID riid,
15615 void **ppvObject);
15616
15617 ULONG (STDMETHODCALLTYPE *AddRef)(
15618 _ISpeechVoiceEvents *This);
15619
15620 ULONG (STDMETHODCALLTYPE *Release)(
15621 _ISpeechVoiceEvents *This);
15622
15623 /*** IDispatch methods ***/
15624 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
15625 _ISpeechVoiceEvents *This,
15626 UINT *pctinfo);
15627
15628 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
15629 _ISpeechVoiceEvents *This,
15630 UINT iTInfo,
15631 LCID lcid,
15632 ITypeInfo **ppTInfo);
15633
15634 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
15635 _ISpeechVoiceEvents *This,
15636 REFIID riid,
15637 LPOLESTR *rgszNames,
15638 UINT cNames,
15639 LCID lcid,
15640 DISPID *rgDispId);
15641
15642 HRESULT (STDMETHODCALLTYPE *Invoke)(
15643 _ISpeechVoiceEvents *This,
15644 DISPID dispIdMember,
15645 REFIID riid,
15646 LCID lcid,
15647 WORD wFlags,
15648 DISPPARAMS *pDispParams,
15649 VARIANT *pVarResult,
15650 EXCEPINFO *pExcepInfo,
15651 UINT *puArgErr);
15652
15653 END_INTERFACE
15654} _ISpeechVoiceEventsVtbl;
15655
15656interface _ISpeechVoiceEvents {
15657 CONST_VTBL _ISpeechVoiceEventsVtbl* lpVtbl;
15658};
15659
15660#ifdef COBJMACROS
15661#ifndef WIDL_C_INLINE_WRAPPERS
15662/*** IUnknown methods ***/
15663#define _ISpeechVoiceEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15664#define _ISpeechVoiceEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
15665#define _ISpeechVoiceEvents_Release(This) (This)->lpVtbl->Release(This)
15666/*** IDispatch methods ***/
15667#define _ISpeechVoiceEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
15668#define _ISpeechVoiceEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
15669#define _ISpeechVoiceEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
15670#define _ISpeechVoiceEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
15671#else
15672/*** IUnknown methods ***/
15673static inline HRESULT _ISpeechVoiceEvents_QueryInterface(_ISpeechVoiceEvents* This,REFIID riid,void **ppvObject) {
15674 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15675}
15676static inline ULONG _ISpeechVoiceEvents_AddRef(_ISpeechVoiceEvents* This) {
15677 return This->lpVtbl->AddRef(This);
15678}
15679static inline ULONG _ISpeechVoiceEvents_Release(_ISpeechVoiceEvents* This) {
15680 return This->lpVtbl->Release(This);
15681}
15682/*** IDispatch methods ***/
15683static inline HRESULT _ISpeechVoiceEvents_GetTypeInfoCount(_ISpeechVoiceEvents* This,UINT *pctinfo) {
15684 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
15685}
15686static inline HRESULT _ISpeechVoiceEvents_GetTypeInfo(_ISpeechVoiceEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
15687 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
15688}
15689static inline HRESULT _ISpeechVoiceEvents_GetIDsOfNames(_ISpeechVoiceEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
15690 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
15691}
15692static inline HRESULT _ISpeechVoiceEvents_Invoke(_ISpeechVoiceEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
15693 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
15694}
15695#endif
15696#endif
15697
15698#endif
15699
15700#endif /* ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__ */
15701
15702/*****************************************************************************
15703 * ISpeechRecognizer interface
15704 */
15705#ifndef __ISpeechRecognizer_INTERFACE_DEFINED__
15706#define __ISpeechRecognizer_INTERFACE_DEFINED__
15707
15708DEFINE_GUID(IID_ISpeechRecognizer, 0x2d5f1c0c, 0xbd75, 0x4b08, 0x94,0x78, 0x3b,0x11,0xfe,0xa2,0x58,0x6c);
15709#if defined(__cplusplus) && !defined(CINTERFACE)
15710MIDL_INTERFACE("2d5f1c0c-bd75-4b08-9478-3b11fea2586c")
15711ISpeechRecognizer : public IDispatch
15712{
15713 virtual HRESULT STDMETHODCALLTYPE putref_Recognizer(
15714 ISpeechObjectToken *Recognizer) = 0;
15715
15716 virtual HRESULT STDMETHODCALLTYPE get_Recognizer(
15717 ISpeechObjectToken **Recognizer) = 0;
15718
15719 virtual HRESULT STDMETHODCALLTYPE put_AllowAudioInputFormatChangesOnNextSet(
15720 VARIANT_BOOL Allow) = 0;
15721
15722 virtual HRESULT STDMETHODCALLTYPE get_AllowAudioInputFormatChangesOnNextSet(
15723 VARIANT_BOOL *Allow) = 0;
15724
15725 virtual HRESULT STDMETHODCALLTYPE putref_AudioInput(
15726 ISpeechObjectToken *AudioInput = 0) = 0;
15727
15728 virtual HRESULT STDMETHODCALLTYPE get_AudioInput(
15729 ISpeechObjectToken **AudioInput) = 0;
15730
15731 virtual HRESULT STDMETHODCALLTYPE putref_AudioInputStream(
15732 ISpeechBaseStream *AudioInputStream = 0) = 0;
15733
15734 virtual HRESULT STDMETHODCALLTYPE get_AudioInputStream(
15735 ISpeechBaseStream **AudioInputStream) = 0;
15736
15737 virtual HRESULT STDMETHODCALLTYPE get_IsShared(
15738 VARIANT_BOOL *Shared) = 0;
15739
15740 virtual HRESULT STDMETHODCALLTYPE put_State(
15741 SpeechRecognizerState State) = 0;
15742
15743 virtual HRESULT STDMETHODCALLTYPE get_State(
15744 SpeechRecognizerState *State) = 0;
15745
15746 virtual HRESULT STDMETHODCALLTYPE get_Status(
15747 ISpeechRecognizerStatus **Status) = 0;
15748
15749 virtual HRESULT STDMETHODCALLTYPE putref_Profile(
15750 ISpeechObjectToken *Profile = 0) = 0;
15751
15752 virtual HRESULT STDMETHODCALLTYPE get_Profile(
15753 ISpeechObjectToken **Profile) = 0;
15754
15755 virtual HRESULT STDMETHODCALLTYPE EmulateRecognition(
15756 VARIANT TextElements,
15757 VARIANT *ElementDisplayAttributes = 0,
15758 LONG LanguageId = 0) = 0;
15759
15760 virtual HRESULT STDMETHODCALLTYPE CreateRecoContext(
15761 ISpeechRecoContext **NewContext) = 0;
15762
15763 virtual HRESULT STDMETHODCALLTYPE GetFormat(
15764 SpeechFormatType Type,
15765 ISpeechAudioFormat **Format) = 0;
15766
15767 virtual HRESULT STDMETHODCALLTYPE SetPropertyNumber(
15768 const BSTR Name,
15769 LONG Value,
15770 VARIANT_BOOL *Supported) = 0;
15771
15772 virtual HRESULT STDMETHODCALLTYPE GetPropertyNumber(
15773 const BSTR Name,
15774 LONG *Value,
15775 VARIANT_BOOL *Supported) = 0;
15776
15777 virtual HRESULT STDMETHODCALLTYPE SetPropertyString(
15778 const BSTR Name,
15779 const BSTR Value,
15780 VARIANT_BOOL *Supported) = 0;
15781
15782 virtual HRESULT STDMETHODCALLTYPE GetPropertyString(
15783 const BSTR Name,
15784 BSTR *Value,
15785 VARIANT_BOOL *Supported) = 0;
15786
15787 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
15788 const BSTR TypeOfUI,
15789 const VARIANT *ExtraData,
15790 VARIANT_BOOL *Supported) = 0;
15791
15792 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
15793 LONG hWndParent,
15794 BSTR Title,
15795 const BSTR TypeOfUI,
15796 const VARIANT *ExtraData = 0) = 0;
15797
15798 virtual HRESULT STDMETHODCALLTYPE GetRecognizers(
15799 BSTR RequiredAttributes,
15800 BSTR OptionalAttributes,
15801 ISpeechObjectTokens **ObjectTokens) = 0;
15802
15803 virtual HRESULT STDMETHODCALLTYPE GetAudioInputs(
15804 BSTR RequiredAttributes,
15805 BSTR OptionalAttributes,
15806 ISpeechObjectTokens **ObjectTokens) = 0;
15807
15808 virtual HRESULT STDMETHODCALLTYPE GetProfiles(
15809 BSTR RequiredAttributes,
15810 BSTR OptionalAttributes,
15811 ISpeechObjectTokens **ObjectTokens) = 0;
15812
15813};
15814#ifdef __CRT_UUID_DECL
15815__CRT_UUID_DECL(ISpeechRecognizer, 0x2d5f1c0c, 0xbd75, 0x4b08, 0x94,0x78, 0x3b,0x11,0xfe,0xa2,0x58,0x6c)
15816#endif
15817#else
15818typedef struct ISpeechRecognizerVtbl {
15819 BEGIN_INTERFACE
15820
15821 /*** IUnknown methods ***/
15822 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15823 ISpeechRecognizer *This,
15824 REFIID riid,
15825 void **ppvObject);
15826
15827 ULONG (STDMETHODCALLTYPE *AddRef)(
15828 ISpeechRecognizer *This);
15829
15830 ULONG (STDMETHODCALLTYPE *Release)(
15831 ISpeechRecognizer *This);
15832
15833 /*** IDispatch methods ***/
15834 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
15835 ISpeechRecognizer *This,
15836 UINT *pctinfo);
15837
15838 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
15839 ISpeechRecognizer *This,
15840 UINT iTInfo,
15841 LCID lcid,
15842 ITypeInfo **ppTInfo);
15843
15844 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
15845 ISpeechRecognizer *This,
15846 REFIID riid,
15847 LPOLESTR *rgszNames,
15848 UINT cNames,
15849 LCID lcid,
15850 DISPID *rgDispId);
15851
15852 HRESULT (STDMETHODCALLTYPE *Invoke)(
15853 ISpeechRecognizer *This,
15854 DISPID dispIdMember,
15855 REFIID riid,
15856 LCID lcid,
15857 WORD wFlags,
15858 DISPPARAMS *pDispParams,
15859 VARIANT *pVarResult,
15860 EXCEPINFO *pExcepInfo,
15861 UINT *puArgErr);
15862
15863 /*** ISpeechRecognizer methods ***/
15864 HRESULT (STDMETHODCALLTYPE *putref_Recognizer)(
15865 ISpeechRecognizer *This,
15866 ISpeechObjectToken *Recognizer);
15867
15868 HRESULT (STDMETHODCALLTYPE *get_Recognizer)(
15869 ISpeechRecognizer *This,
15870 ISpeechObjectToken **Recognizer);
15871
15872 HRESULT (STDMETHODCALLTYPE *put_AllowAudioInputFormatChangesOnNextSet)(
15873 ISpeechRecognizer *This,
15874 VARIANT_BOOL Allow);
15875
15876 HRESULT (STDMETHODCALLTYPE *get_AllowAudioInputFormatChangesOnNextSet)(
15877 ISpeechRecognizer *This,
15878 VARIANT_BOOL *Allow);
15879
15880 HRESULT (STDMETHODCALLTYPE *putref_AudioInput)(
15881 ISpeechRecognizer *This,
15882 ISpeechObjectToken *AudioInput);
15883
15884 HRESULT (STDMETHODCALLTYPE *get_AudioInput)(
15885 ISpeechRecognizer *This,
15886 ISpeechObjectToken **AudioInput);
15887
15888 HRESULT (STDMETHODCALLTYPE *putref_AudioInputStream)(
15889 ISpeechRecognizer *This,
15890 ISpeechBaseStream *AudioInputStream);
15891
15892 HRESULT (STDMETHODCALLTYPE *get_AudioInputStream)(
15893 ISpeechRecognizer *This,
15894 ISpeechBaseStream **AudioInputStream);
15895
15896 HRESULT (STDMETHODCALLTYPE *get_IsShared)(
15897 ISpeechRecognizer *This,
15898 VARIANT_BOOL *Shared);
15899
15900 HRESULT (STDMETHODCALLTYPE *put_State)(
15901 ISpeechRecognizer *This,
15902 SpeechRecognizerState State);
15903
15904 HRESULT (STDMETHODCALLTYPE *get_State)(
15905 ISpeechRecognizer *This,
15906 SpeechRecognizerState *State);
15907
15908 HRESULT (STDMETHODCALLTYPE *get_Status)(
15909 ISpeechRecognizer *This,
15910 ISpeechRecognizerStatus **Status);
15911
15912 HRESULT (STDMETHODCALLTYPE *putref_Profile)(
15913 ISpeechRecognizer *This,
15914 ISpeechObjectToken *Profile);
15915
15916 HRESULT (STDMETHODCALLTYPE *get_Profile)(
15917 ISpeechRecognizer *This,
15918 ISpeechObjectToken **Profile);
15919
15920 HRESULT (STDMETHODCALLTYPE *EmulateRecognition)(
15921 ISpeechRecognizer *This,
15922 VARIANT TextElements,
15923 VARIANT *ElementDisplayAttributes,
15924 LONG LanguageId);
15925
15926 HRESULT (STDMETHODCALLTYPE *CreateRecoContext)(
15927 ISpeechRecognizer *This,
15928 ISpeechRecoContext **NewContext);
15929
15930 HRESULT (STDMETHODCALLTYPE *GetFormat)(
15931 ISpeechRecognizer *This,
15932 SpeechFormatType Type,
15933 ISpeechAudioFormat **Format);
15934
15935 HRESULT (STDMETHODCALLTYPE *SetPropertyNumber)(
15936 ISpeechRecognizer *This,
15937 const BSTR Name,
15938 LONG Value,
15939 VARIANT_BOOL *Supported);
15940
15941 HRESULT (STDMETHODCALLTYPE *GetPropertyNumber)(
15942 ISpeechRecognizer *This,
15943 const BSTR Name,
15944 LONG *Value,
15945 VARIANT_BOOL *Supported);
15946
15947 HRESULT (STDMETHODCALLTYPE *SetPropertyString)(
15948 ISpeechRecognizer *This,
15949 const BSTR Name,
15950 const BSTR Value,
15951 VARIANT_BOOL *Supported);
15952
15953 HRESULT (STDMETHODCALLTYPE *GetPropertyString)(
15954 ISpeechRecognizer *This,
15955 const BSTR Name,
15956 BSTR *Value,
15957 VARIANT_BOOL *Supported);
15958
15959 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
15960 ISpeechRecognizer *This,
15961 const BSTR TypeOfUI,
15962 const VARIANT *ExtraData,
15963 VARIANT_BOOL *Supported);
15964
15965 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
15966 ISpeechRecognizer *This,
15967 LONG hWndParent,
15968 BSTR Title,
15969 const BSTR TypeOfUI,
15970 const VARIANT *ExtraData);
15971
15972 HRESULT (STDMETHODCALLTYPE *GetRecognizers)(
15973 ISpeechRecognizer *This,
15974 BSTR RequiredAttributes,
15975 BSTR OptionalAttributes,
15976 ISpeechObjectTokens **ObjectTokens);
15977
15978 HRESULT (STDMETHODCALLTYPE *GetAudioInputs)(
15979 ISpeechRecognizer *This,
15980 BSTR RequiredAttributes,
15981 BSTR OptionalAttributes,
15982 ISpeechObjectTokens **ObjectTokens);
15983
15984 HRESULT (STDMETHODCALLTYPE *GetProfiles)(
15985 ISpeechRecognizer *This,
15986 BSTR RequiredAttributes,
15987 BSTR OptionalAttributes,
15988 ISpeechObjectTokens **ObjectTokens);
15989
15990 END_INTERFACE
15991} ISpeechRecognizerVtbl;
15992
15993interface ISpeechRecognizer {
15994 CONST_VTBL ISpeechRecognizerVtbl* lpVtbl;
15995};
15996
15997#ifdef COBJMACROS
15998#ifndef WIDL_C_INLINE_WRAPPERS
15999/*** IUnknown methods ***/
16000#define ISpeechRecognizer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16001#define ISpeechRecognizer_AddRef(This) (This)->lpVtbl->AddRef(This)
16002#define ISpeechRecognizer_Release(This) (This)->lpVtbl->Release(This)
16003/*** IDispatch methods ***/
16004#define ISpeechRecognizer_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16005#define ISpeechRecognizer_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16006#define ISpeechRecognizer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16007#define ISpeechRecognizer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16008/*** ISpeechRecognizer methods ***/
16009#define ISpeechRecognizer_putref_Recognizer(This,Recognizer) (This)->lpVtbl->putref_Recognizer(This,Recognizer)
16010#define ISpeechRecognizer_get_Recognizer(This,Recognizer) (This)->lpVtbl->get_Recognizer(This,Recognizer)
16011#define ISpeechRecognizer_put_AllowAudioInputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->put_AllowAudioInputFormatChangesOnNextSet(This,Allow)
16012#define ISpeechRecognizer_get_AllowAudioInputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->get_AllowAudioInputFormatChangesOnNextSet(This,Allow)
16013#define ISpeechRecognizer_putref_AudioInput(This,AudioInput) (This)->lpVtbl->putref_AudioInput(This,AudioInput)
16014#define ISpeechRecognizer_get_AudioInput(This,AudioInput) (This)->lpVtbl->get_AudioInput(This,AudioInput)
16015#define ISpeechRecognizer_putref_AudioInputStream(This,AudioInputStream) (This)->lpVtbl->putref_AudioInputStream(This,AudioInputStream)
16016#define ISpeechRecognizer_get_AudioInputStream(This,AudioInputStream) (This)->lpVtbl->get_AudioInputStream(This,AudioInputStream)
16017#define ISpeechRecognizer_get_IsShared(This,Shared) (This)->lpVtbl->get_IsShared(This,Shared)
16018#define ISpeechRecognizer_put_State(This,State) (This)->lpVtbl->put_State(This,State)
16019#define ISpeechRecognizer_get_State(This,State) (This)->lpVtbl->get_State(This,State)
16020#define ISpeechRecognizer_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
16021#define ISpeechRecognizer_putref_Profile(This,Profile) (This)->lpVtbl->putref_Profile(This,Profile)
16022#define ISpeechRecognizer_get_Profile(This,Profile) (This)->lpVtbl->get_Profile(This,Profile)
16023#define ISpeechRecognizer_EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId) (This)->lpVtbl->EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId)
16024#define ISpeechRecognizer_CreateRecoContext(This,NewContext) (This)->lpVtbl->CreateRecoContext(This,NewContext)
16025#define ISpeechRecognizer_GetFormat(This,Type,Format) (This)->lpVtbl->GetFormat(This,Type,Format)
16026#define ISpeechRecognizer_SetPropertyNumber(This,Name,Value,Supported) (This)->lpVtbl->SetPropertyNumber(This,Name,Value,Supported)
16027#define ISpeechRecognizer_GetPropertyNumber(This,Name,Value,Supported) (This)->lpVtbl->GetPropertyNumber(This,Name,Value,Supported)
16028#define ISpeechRecognizer_SetPropertyString(This,Name,Value,Supported) (This)->lpVtbl->SetPropertyString(This,Name,Value,Supported)
16029#define ISpeechRecognizer_GetPropertyString(This,Name,Value,Supported) (This)->lpVtbl->GetPropertyString(This,Name,Value,Supported)
16030#define ISpeechRecognizer_IsUISupported(This,TypeOfUI,ExtraData,Supported) (This)->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported)
16031#define ISpeechRecognizer_DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData) (This)->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
16032#define ISpeechRecognizer_GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
16033#define ISpeechRecognizer_GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
16034#define ISpeechRecognizer_GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
16035#else
16036/*** IUnknown methods ***/
16037static inline HRESULT ISpeechRecognizer_QueryInterface(ISpeechRecognizer* This,REFIID riid,void **ppvObject) {
16038 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16039}
16040static inline ULONG ISpeechRecognizer_AddRef(ISpeechRecognizer* This) {
16041 return This->lpVtbl->AddRef(This);
16042}
16043static inline ULONG ISpeechRecognizer_Release(ISpeechRecognizer* This) {
16044 return This->lpVtbl->Release(This);
16045}
16046/*** IDispatch methods ***/
16047static inline HRESULT ISpeechRecognizer_GetTypeInfoCount(ISpeechRecognizer* This,UINT *pctinfo) {
16048 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16049}
16050static inline HRESULT ISpeechRecognizer_GetTypeInfo(ISpeechRecognizer* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16051 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16052}
16053static inline HRESULT ISpeechRecognizer_GetIDsOfNames(ISpeechRecognizer* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16054 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16055}
16056static inline HRESULT ISpeechRecognizer_Invoke(ISpeechRecognizer* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16057 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16058}
16059/*** ISpeechRecognizer methods ***/
16060static inline HRESULT ISpeechRecognizer_putref_Recognizer(ISpeechRecognizer* This,ISpeechObjectToken *Recognizer) {
16061 return This->lpVtbl->putref_Recognizer(This,Recognizer);
16062}
16063static inline HRESULT ISpeechRecognizer_get_Recognizer(ISpeechRecognizer* This,ISpeechObjectToken **Recognizer) {
16064 return This->lpVtbl->get_Recognizer(This,Recognizer);
16065}
16066static inline HRESULT ISpeechRecognizer_put_AllowAudioInputFormatChangesOnNextSet(ISpeechRecognizer* This,VARIANT_BOOL Allow) {
16067 return This->lpVtbl->put_AllowAudioInputFormatChangesOnNextSet(This,Allow);
16068}
16069static inline HRESULT ISpeechRecognizer_get_AllowAudioInputFormatChangesOnNextSet(ISpeechRecognizer* This,VARIANT_BOOL *Allow) {
16070 return This->lpVtbl->get_AllowAudioInputFormatChangesOnNextSet(This,Allow);
16071}
16072static inline HRESULT ISpeechRecognizer_putref_AudioInput(ISpeechRecognizer* This,ISpeechObjectToken *AudioInput) {
16073 return This->lpVtbl->putref_AudioInput(This,AudioInput);
16074}
16075static inline HRESULT ISpeechRecognizer_get_AudioInput(ISpeechRecognizer* This,ISpeechObjectToken **AudioInput) {
16076 return This->lpVtbl->get_AudioInput(This,AudioInput);
16077}
16078static inline HRESULT ISpeechRecognizer_putref_AudioInputStream(ISpeechRecognizer* This,ISpeechBaseStream *AudioInputStream) {
16079 return This->lpVtbl->putref_AudioInputStream(This,AudioInputStream);
16080}
16081static inline HRESULT ISpeechRecognizer_get_AudioInputStream(ISpeechRecognizer* This,ISpeechBaseStream **AudioInputStream) {
16082 return This->lpVtbl->get_AudioInputStream(This,AudioInputStream);
16083}
16084static inline HRESULT ISpeechRecognizer_get_IsShared(ISpeechRecognizer* This,VARIANT_BOOL *Shared) {
16085 return This->lpVtbl->get_IsShared(This,Shared);
16086}
16087static inline HRESULT ISpeechRecognizer_put_State(ISpeechRecognizer* This,SpeechRecognizerState State) {
16088 return This->lpVtbl->put_State(This,State);
16089}
16090static inline HRESULT ISpeechRecognizer_get_State(ISpeechRecognizer* This,SpeechRecognizerState *State) {
16091 return This->lpVtbl->get_State(This,State);
16092}
16093static inline HRESULT ISpeechRecognizer_get_Status(ISpeechRecognizer* This,ISpeechRecognizerStatus **Status) {
16094 return This->lpVtbl->get_Status(This,Status);
16095}
16096static inline HRESULT ISpeechRecognizer_putref_Profile(ISpeechRecognizer* This,ISpeechObjectToken *Profile) {
16097 return This->lpVtbl->putref_Profile(This,Profile);
16098}
16099static inline HRESULT ISpeechRecognizer_get_Profile(ISpeechRecognizer* This,ISpeechObjectToken **Profile) {
16100 return This->lpVtbl->get_Profile(This,Profile);
16101}
16102static inline HRESULT ISpeechRecognizer_EmulateRecognition(ISpeechRecognizer* This,VARIANT TextElements,VARIANT *ElementDisplayAttributes,LONG LanguageId) {
16103 return This->lpVtbl->EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId);
16104}
16105static inline HRESULT ISpeechRecognizer_CreateRecoContext(ISpeechRecognizer* This,ISpeechRecoContext **NewContext) {
16106 return This->lpVtbl->CreateRecoContext(This,NewContext);
16107}
16108static inline HRESULT ISpeechRecognizer_GetFormat(ISpeechRecognizer* This,SpeechFormatType Type,ISpeechAudioFormat **Format) {
16109 return This->lpVtbl->GetFormat(This,Type,Format);
16110}
16111static inline HRESULT ISpeechRecognizer_SetPropertyNumber(ISpeechRecognizer* This,const BSTR Name,LONG Value,VARIANT_BOOL *Supported) {
16112 return This->lpVtbl->SetPropertyNumber(This,Name,Value,Supported);
16113}
16114static inline HRESULT ISpeechRecognizer_GetPropertyNumber(ISpeechRecognizer* This,const BSTR Name,LONG *Value,VARIANT_BOOL *Supported) {
16115 return This->lpVtbl->GetPropertyNumber(This,Name,Value,Supported);
16116}
16117static inline HRESULT ISpeechRecognizer_SetPropertyString(ISpeechRecognizer* This,const BSTR Name,const BSTR Value,VARIANT_BOOL *Supported) {
16118 return This->lpVtbl->SetPropertyString(This,Name,Value,Supported);
16119}
16120static inline HRESULT ISpeechRecognizer_GetPropertyString(ISpeechRecognizer* This,const BSTR Name,BSTR *Value,VARIANT_BOOL *Supported) {
16121 return This->lpVtbl->GetPropertyString(This,Name,Value,Supported);
16122}
16123static inline HRESULT ISpeechRecognizer_IsUISupported(ISpeechRecognizer* This,const BSTR TypeOfUI,const VARIANT *ExtraData,VARIANT_BOOL *Supported) {
16124 return This->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported);
16125}
16126static inline HRESULT ISpeechRecognizer_DisplayUI(ISpeechRecognizer* This,LONG hWndParent,BSTR Title,const BSTR TypeOfUI,const VARIANT *ExtraData) {
16127 return This->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData);
16128}
16129static inline HRESULT ISpeechRecognizer_GetRecognizers(ISpeechRecognizer* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
16130 return This->lpVtbl->GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
16131}
16132static inline HRESULT ISpeechRecognizer_GetAudioInputs(ISpeechRecognizer* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
16133 return This->lpVtbl->GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
16134}
16135static inline HRESULT ISpeechRecognizer_GetProfiles(ISpeechRecognizer* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
16136 return This->lpVtbl->GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
16137}
16138#endif
16139#endif
16140
16141#endif
16142
16143
16144#endif /* __ISpeechRecognizer_INTERFACE_DEFINED__ */
16145
16146/*****************************************************************************
16147 * ISpeechRecognizerStatus interface
16148 */
16149#ifndef __ISpeechRecognizerStatus_INTERFACE_DEFINED__
16150#define __ISpeechRecognizerStatus_INTERFACE_DEFINED__
16151
16152DEFINE_GUID(IID_ISpeechRecognizerStatus, 0xbff9e781, 0x53ec, 0x484e, 0xbb,0x8a, 0x0e,0x1b,0x55,0x51,0xe3,0x5c);
16153#if defined(__cplusplus) && !defined(CINTERFACE)
16154MIDL_INTERFACE("bff9e781-53ec-484e-bb8a-0e1b5551e35c")
16155ISpeechRecognizerStatus : public IDispatch
16156{
16157 virtual HRESULT STDMETHODCALLTYPE get_AudioStatus(
16158 ISpeechAudioStatus **AudioStatus) = 0;
16159
16160 virtual HRESULT STDMETHODCALLTYPE get_CurrentStreamPosition(
16161 VARIANT *pCurrentStreamPos) = 0;
16162
16163 virtual HRESULT STDMETHODCALLTYPE get_CurrentStreamNumber(
16164 LONG *StreamNumber) = 0;
16165
16166 virtual HRESULT STDMETHODCALLTYPE get_NumberOfActiveRules(
16167 LONG *NumberOfActiveRules) = 0;
16168
16169 virtual HRESULT STDMETHODCALLTYPE get_ClsidEngine(
16170 BSTR *ClsidEngine) = 0;
16171
16172 virtual HRESULT STDMETHODCALLTYPE get_SupportedLanguages(
16173 VARIANT *SupportedLanguages) = 0;
16174
16175};
16176#ifdef __CRT_UUID_DECL
16177__CRT_UUID_DECL(ISpeechRecognizerStatus, 0xbff9e781, 0x53ec, 0x484e, 0xbb,0x8a, 0x0e,0x1b,0x55,0x51,0xe3,0x5c)
16178#endif
16179#else
16180typedef struct ISpeechRecognizerStatusVtbl {
16181 BEGIN_INTERFACE
16182
16183 /*** IUnknown methods ***/
16184 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16185 ISpeechRecognizerStatus *This,
16186 REFIID riid,
16187 void **ppvObject);
16188
16189 ULONG (STDMETHODCALLTYPE *AddRef)(
16190 ISpeechRecognizerStatus *This);
16191
16192 ULONG (STDMETHODCALLTYPE *Release)(
16193 ISpeechRecognizerStatus *This);
16194
16195 /*** IDispatch methods ***/
16196 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16197 ISpeechRecognizerStatus *This,
16198 UINT *pctinfo);
16199
16200 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16201 ISpeechRecognizerStatus *This,
16202 UINT iTInfo,
16203 LCID lcid,
16204 ITypeInfo **ppTInfo);
16205
16206 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16207 ISpeechRecognizerStatus *This,
16208 REFIID riid,
16209 LPOLESTR *rgszNames,
16210 UINT cNames,
16211 LCID lcid,
16212 DISPID *rgDispId);
16213
16214 HRESULT (STDMETHODCALLTYPE *Invoke)(
16215 ISpeechRecognizerStatus *This,
16216 DISPID dispIdMember,
16217 REFIID riid,
16218 LCID lcid,
16219 WORD wFlags,
16220 DISPPARAMS *pDispParams,
16221 VARIANT *pVarResult,
16222 EXCEPINFO *pExcepInfo,
16223 UINT *puArgErr);
16224
16225 /*** ISpeechRecognizerStatus methods ***/
16226 HRESULT (STDMETHODCALLTYPE *get_AudioStatus)(
16227 ISpeechRecognizerStatus *This,
16228 ISpeechAudioStatus **AudioStatus);
16229
16230 HRESULT (STDMETHODCALLTYPE *get_CurrentStreamPosition)(
16231 ISpeechRecognizerStatus *This,
16232 VARIANT *pCurrentStreamPos);
16233
16234 HRESULT (STDMETHODCALLTYPE *get_CurrentStreamNumber)(
16235 ISpeechRecognizerStatus *This,
16236 LONG *StreamNumber);
16237
16238 HRESULT (STDMETHODCALLTYPE *get_NumberOfActiveRules)(
16239 ISpeechRecognizerStatus *This,
16240 LONG *NumberOfActiveRules);
16241
16242 HRESULT (STDMETHODCALLTYPE *get_ClsidEngine)(
16243 ISpeechRecognizerStatus *This,
16244 BSTR *ClsidEngine);
16245
16246 HRESULT (STDMETHODCALLTYPE *get_SupportedLanguages)(
16247 ISpeechRecognizerStatus *This,
16248 VARIANT *SupportedLanguages);
16249
16250 END_INTERFACE
16251} ISpeechRecognizerStatusVtbl;
16252
16253interface ISpeechRecognizerStatus {
16254 CONST_VTBL ISpeechRecognizerStatusVtbl* lpVtbl;
16255};
16256
16257#ifdef COBJMACROS
16258#ifndef WIDL_C_INLINE_WRAPPERS
16259/*** IUnknown methods ***/
16260#define ISpeechRecognizerStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16261#define ISpeechRecognizerStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
16262#define ISpeechRecognizerStatus_Release(This) (This)->lpVtbl->Release(This)
16263/*** IDispatch methods ***/
16264#define ISpeechRecognizerStatus_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16265#define ISpeechRecognizerStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16266#define ISpeechRecognizerStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16267#define ISpeechRecognizerStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16268/*** ISpeechRecognizerStatus methods ***/
16269#define ISpeechRecognizerStatus_get_AudioStatus(This,AudioStatus) (This)->lpVtbl->get_AudioStatus(This,AudioStatus)
16270#define ISpeechRecognizerStatus_get_CurrentStreamPosition(This,pCurrentStreamPos) (This)->lpVtbl->get_CurrentStreamPosition(This,pCurrentStreamPos)
16271#define ISpeechRecognizerStatus_get_CurrentStreamNumber(This,StreamNumber) (This)->lpVtbl->get_CurrentStreamNumber(This,StreamNumber)
16272#define ISpeechRecognizerStatus_get_NumberOfActiveRules(This,NumberOfActiveRules) (This)->lpVtbl->get_NumberOfActiveRules(This,NumberOfActiveRules)
16273#define ISpeechRecognizerStatus_get_ClsidEngine(This,ClsidEngine) (This)->lpVtbl->get_ClsidEngine(This,ClsidEngine)
16274#define ISpeechRecognizerStatus_get_SupportedLanguages(This,SupportedLanguages) (This)->lpVtbl->get_SupportedLanguages(This,SupportedLanguages)
16275#else
16276/*** IUnknown methods ***/
16277static inline HRESULT ISpeechRecognizerStatus_QueryInterface(ISpeechRecognizerStatus* This,REFIID riid,void **ppvObject) {
16278 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16279}
16280static inline ULONG ISpeechRecognizerStatus_AddRef(ISpeechRecognizerStatus* This) {
16281 return This->lpVtbl->AddRef(This);
16282}
16283static inline ULONG ISpeechRecognizerStatus_Release(ISpeechRecognizerStatus* This) {
16284 return This->lpVtbl->Release(This);
16285}
16286/*** IDispatch methods ***/
16287static inline HRESULT ISpeechRecognizerStatus_GetTypeInfoCount(ISpeechRecognizerStatus* This,UINT *pctinfo) {
16288 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16289}
16290static inline HRESULT ISpeechRecognizerStatus_GetTypeInfo(ISpeechRecognizerStatus* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16291 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16292}
16293static inline HRESULT ISpeechRecognizerStatus_GetIDsOfNames(ISpeechRecognizerStatus* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16294 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16295}
16296static inline HRESULT ISpeechRecognizerStatus_Invoke(ISpeechRecognizerStatus* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16297 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16298}
16299/*** ISpeechRecognizerStatus methods ***/
16300static inline HRESULT ISpeechRecognizerStatus_get_AudioStatus(ISpeechRecognizerStatus* This,ISpeechAudioStatus **AudioStatus) {
16301 return This->lpVtbl->get_AudioStatus(This,AudioStatus);
16302}
16303static inline HRESULT ISpeechRecognizerStatus_get_CurrentStreamPosition(ISpeechRecognizerStatus* This,VARIANT *pCurrentStreamPos) {
16304 return This->lpVtbl->get_CurrentStreamPosition(This,pCurrentStreamPos);
16305}
16306static inline HRESULT ISpeechRecognizerStatus_get_CurrentStreamNumber(ISpeechRecognizerStatus* This,LONG *StreamNumber) {
16307 return This->lpVtbl->get_CurrentStreamNumber(This,StreamNumber);
16308}
16309static inline HRESULT ISpeechRecognizerStatus_get_NumberOfActiveRules(ISpeechRecognizerStatus* This,LONG *NumberOfActiveRules) {
16310 return This->lpVtbl->get_NumberOfActiveRules(This,NumberOfActiveRules);
16311}
16312static inline HRESULT ISpeechRecognizerStatus_get_ClsidEngine(ISpeechRecognizerStatus* This,BSTR *ClsidEngine) {
16313 return This->lpVtbl->get_ClsidEngine(This,ClsidEngine);
16314}
16315static inline HRESULT ISpeechRecognizerStatus_get_SupportedLanguages(ISpeechRecognizerStatus* This,VARIANT *SupportedLanguages) {
16316 return This->lpVtbl->get_SupportedLanguages(This,SupportedLanguages);
16317}
16318#endif
16319#endif
16320
16321#endif
16322
16323
16324#endif /* __ISpeechRecognizerStatus_INTERFACE_DEFINED__ */
16325
16326/*****************************************************************************
16327 * ISpeechRecoContext interface
16328 */
16329#ifndef __ISpeechRecoContext_INTERFACE_DEFINED__
16330#define __ISpeechRecoContext_INTERFACE_DEFINED__
16331
16332DEFINE_GUID(IID_ISpeechRecoContext, 0x580aa49d, 0x7e1e, 0x4809, 0xb8,0xe2, 0x57,0xda,0x80,0x61,0x04,0xb8);
16333#if defined(__cplusplus) && !defined(CINTERFACE)
16334MIDL_INTERFACE("580aa49d-7e1e-4809-b8e2-57da806104b8")
16335ISpeechRecoContext : public IDispatch
16336{
16337 virtual HRESULT STDMETHODCALLTYPE get_Recognizer(
16338 ISpeechRecognizer **Recognizer) = 0;
16339
16340 virtual HRESULT STDMETHODCALLTYPE get_AudioInputInterferenceStatus(
16341 SpeechInterference *Interference) = 0;
16342
16343 virtual HRESULT STDMETHODCALLTYPE get_RequestedUIType(
16344 BSTR *UIType) = 0;
16345
16346 virtual HRESULT STDMETHODCALLTYPE putref_Voice(
16347 ISpeechVoice *Voice) = 0;
16348
16349 virtual HRESULT STDMETHODCALLTYPE get_Voice(
16350 ISpeechVoice **Voice) = 0;
16351
16352 virtual HRESULT STDMETHODCALLTYPE put_AllowVoiceFormatMatchingOnNextSet(
16353 VARIANT_BOOL Allow) = 0;
16354
16355 virtual HRESULT STDMETHODCALLTYPE get_AllowVoiceFormatMatchingOnNextSet(
16356 VARIANT_BOOL *pAllow) = 0;
16357
16358 virtual HRESULT STDMETHODCALLTYPE put_VoicePurgeEvent(
16359 SpeechRecoEvents EventInterest) = 0;
16360
16361 virtual HRESULT STDMETHODCALLTYPE get_VoicePurgeEvent(
16362 SpeechRecoEvents *EventInterest) = 0;
16363
16364 virtual HRESULT STDMETHODCALLTYPE put_EventInterests(
16365 SpeechRecoEvents EventInterest) = 0;
16366
16367 virtual HRESULT STDMETHODCALLTYPE get_EventInterests(
16368 SpeechRecoEvents *EventInterest) = 0;
16369
16370 virtual HRESULT STDMETHODCALLTYPE put_CmdMaxAlternates(
16371 LONG MaxAlternates) = 0;
16372
16373 virtual HRESULT STDMETHODCALLTYPE get_CmdMaxAlternates(
16374 LONG *MaxAlternates) = 0;
16375
16376 virtual HRESULT STDMETHODCALLTYPE put_State(
16377 SpeechRecoContextState State) = 0;
16378
16379 virtual HRESULT STDMETHODCALLTYPE get_State(
16380 SpeechRecoContextState *State) = 0;
16381
16382 virtual HRESULT STDMETHODCALLTYPE put_RetainedAudio(
16383 SpeechRetainedAudioOptions Option) = 0;
16384
16385 virtual HRESULT STDMETHODCALLTYPE get_RetainedAudio(
16386 SpeechRetainedAudioOptions *Option) = 0;
16387
16388 virtual HRESULT STDMETHODCALLTYPE putref_RetainedAudioFormat(
16389 ISpeechAudioFormat *Format) = 0;
16390
16391 virtual HRESULT STDMETHODCALLTYPE get_RetainedAudioFormat(
16392 ISpeechAudioFormat **Format) = 0;
16393
16394 virtual HRESULT STDMETHODCALLTYPE Pause(
16395 ) = 0;
16396
16397 virtual HRESULT STDMETHODCALLTYPE Resume(
16398 ) = 0;
16399
16400 virtual HRESULT STDMETHODCALLTYPE CreateGrammar(
16401 VARIANT GrammarId,
16402 ISpeechRecoGrammar **Grammar) = 0;
16403
16404 virtual HRESULT STDMETHODCALLTYPE CreateResultFromMemory(
16405 VARIANT *ResultBlock,
16406 ISpeechRecoResult **Result) = 0;
16407
16408 virtual HRESULT STDMETHODCALLTYPE Bookmark(
16409 SpeechBookmarkOptions Options,
16410 VARIANT StreamPos,
16411 VARIANT BookmarkId) = 0;
16412
16413 virtual HRESULT STDMETHODCALLTYPE SetAdaptationData(
16414 BSTR AdaptationString) = 0;
16415
16416};
16417#ifdef __CRT_UUID_DECL
16418__CRT_UUID_DECL(ISpeechRecoContext, 0x580aa49d, 0x7e1e, 0x4809, 0xb8,0xe2, 0x57,0xda,0x80,0x61,0x04,0xb8)
16419#endif
16420#else
16421typedef struct ISpeechRecoContextVtbl {
16422 BEGIN_INTERFACE
16423
16424 /*** IUnknown methods ***/
16425 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16426 ISpeechRecoContext *This,
16427 REFIID riid,
16428 void **ppvObject);
16429
16430 ULONG (STDMETHODCALLTYPE *AddRef)(
16431 ISpeechRecoContext *This);
16432
16433 ULONG (STDMETHODCALLTYPE *Release)(
16434 ISpeechRecoContext *This);
16435
16436 /*** IDispatch methods ***/
16437 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16438 ISpeechRecoContext *This,
16439 UINT *pctinfo);
16440
16441 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16442 ISpeechRecoContext *This,
16443 UINT iTInfo,
16444 LCID lcid,
16445 ITypeInfo **ppTInfo);
16446
16447 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16448 ISpeechRecoContext *This,
16449 REFIID riid,
16450 LPOLESTR *rgszNames,
16451 UINT cNames,
16452 LCID lcid,
16453 DISPID *rgDispId);
16454
16455 HRESULT (STDMETHODCALLTYPE *Invoke)(
16456 ISpeechRecoContext *This,
16457 DISPID dispIdMember,
16458 REFIID riid,
16459 LCID lcid,
16460 WORD wFlags,
16461 DISPPARAMS *pDispParams,
16462 VARIANT *pVarResult,
16463 EXCEPINFO *pExcepInfo,
16464 UINT *puArgErr);
16465
16466 /*** ISpeechRecoContext methods ***/
16467 HRESULT (STDMETHODCALLTYPE *get_Recognizer)(
16468 ISpeechRecoContext *This,
16469 ISpeechRecognizer **Recognizer);
16470
16471 HRESULT (STDMETHODCALLTYPE *get_AudioInputInterferenceStatus)(
16472 ISpeechRecoContext *This,
16473 SpeechInterference *Interference);
16474
16475 HRESULT (STDMETHODCALLTYPE *get_RequestedUIType)(
16476 ISpeechRecoContext *This,
16477 BSTR *UIType);
16478
16479 HRESULT (STDMETHODCALLTYPE *putref_Voice)(
16480 ISpeechRecoContext *This,
16481 ISpeechVoice *Voice);
16482
16483 HRESULT (STDMETHODCALLTYPE *get_Voice)(
16484 ISpeechRecoContext *This,
16485 ISpeechVoice **Voice);
16486
16487 HRESULT (STDMETHODCALLTYPE *put_AllowVoiceFormatMatchingOnNextSet)(
16488 ISpeechRecoContext *This,
16489 VARIANT_BOOL Allow);
16490
16491 HRESULT (STDMETHODCALLTYPE *get_AllowVoiceFormatMatchingOnNextSet)(
16492 ISpeechRecoContext *This,
16493 VARIANT_BOOL *pAllow);
16494
16495 HRESULT (STDMETHODCALLTYPE *put_VoicePurgeEvent)(
16496 ISpeechRecoContext *This,
16497 SpeechRecoEvents EventInterest);
16498
16499 HRESULT (STDMETHODCALLTYPE *get_VoicePurgeEvent)(
16500 ISpeechRecoContext *This,
16501 SpeechRecoEvents *EventInterest);
16502
16503 HRESULT (STDMETHODCALLTYPE *put_EventInterests)(
16504 ISpeechRecoContext *This,
16505 SpeechRecoEvents EventInterest);
16506
16507 HRESULT (STDMETHODCALLTYPE *get_EventInterests)(
16508 ISpeechRecoContext *This,
16509 SpeechRecoEvents *EventInterest);
16510
16511 HRESULT (STDMETHODCALLTYPE *put_CmdMaxAlternates)(
16512 ISpeechRecoContext *This,
16513 LONG MaxAlternates);
16514
16515 HRESULT (STDMETHODCALLTYPE *get_CmdMaxAlternates)(
16516 ISpeechRecoContext *This,
16517 LONG *MaxAlternates);
16518
16519 HRESULT (STDMETHODCALLTYPE *put_State)(
16520 ISpeechRecoContext *This,
16521 SpeechRecoContextState State);
16522
16523 HRESULT (STDMETHODCALLTYPE *get_State)(
16524 ISpeechRecoContext *This,
16525 SpeechRecoContextState *State);
16526
16527 HRESULT (STDMETHODCALLTYPE *put_RetainedAudio)(
16528 ISpeechRecoContext *This,
16529 SpeechRetainedAudioOptions Option);
16530
16531 HRESULT (STDMETHODCALLTYPE *get_RetainedAudio)(
16532 ISpeechRecoContext *This,
16533 SpeechRetainedAudioOptions *Option);
16534
16535 HRESULT (STDMETHODCALLTYPE *putref_RetainedAudioFormat)(
16536 ISpeechRecoContext *This,
16537 ISpeechAudioFormat *Format);
16538
16539 HRESULT (STDMETHODCALLTYPE *get_RetainedAudioFormat)(
16540 ISpeechRecoContext *This,
16541 ISpeechAudioFormat **Format);
16542
16543 HRESULT (STDMETHODCALLTYPE *Pause)(
16544 ISpeechRecoContext *This);
16545
16546 HRESULT (STDMETHODCALLTYPE *Resume)(
16547 ISpeechRecoContext *This);
16548
16549 HRESULT (STDMETHODCALLTYPE *CreateGrammar)(
16550 ISpeechRecoContext *This,
16551 VARIANT GrammarId,
16552 ISpeechRecoGrammar **Grammar);
16553
16554 HRESULT (STDMETHODCALLTYPE *CreateResultFromMemory)(
16555 ISpeechRecoContext *This,
16556 VARIANT *ResultBlock,
16557 ISpeechRecoResult **Result);
16558
16559 HRESULT (STDMETHODCALLTYPE *Bookmark)(
16560 ISpeechRecoContext *This,
16561 SpeechBookmarkOptions Options,
16562 VARIANT StreamPos,
16563 VARIANT BookmarkId);
16564
16565 HRESULT (STDMETHODCALLTYPE *SetAdaptationData)(
16566 ISpeechRecoContext *This,
16567 BSTR AdaptationString);
16568
16569 END_INTERFACE
16570} ISpeechRecoContextVtbl;
16571
16572interface ISpeechRecoContext {
16573 CONST_VTBL ISpeechRecoContextVtbl* lpVtbl;
16574};
16575
16576#ifdef COBJMACROS
16577#ifndef WIDL_C_INLINE_WRAPPERS
16578/*** IUnknown methods ***/
16579#define ISpeechRecoContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16580#define ISpeechRecoContext_AddRef(This) (This)->lpVtbl->AddRef(This)
16581#define ISpeechRecoContext_Release(This) (This)->lpVtbl->Release(This)
16582/*** IDispatch methods ***/
16583#define ISpeechRecoContext_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16584#define ISpeechRecoContext_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16585#define ISpeechRecoContext_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16586#define ISpeechRecoContext_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16587/*** ISpeechRecoContext methods ***/
16588#define ISpeechRecoContext_get_Recognizer(This,Recognizer) (This)->lpVtbl->get_Recognizer(This,Recognizer)
16589#define ISpeechRecoContext_get_AudioInputInterferenceStatus(This,Interference) (This)->lpVtbl->get_AudioInputInterferenceStatus(This,Interference)
16590#define ISpeechRecoContext_get_RequestedUIType(This,UIType) (This)->lpVtbl->get_RequestedUIType(This,UIType)
16591#define ISpeechRecoContext_putref_Voice(This,Voice) (This)->lpVtbl->putref_Voice(This,Voice)
16592#define ISpeechRecoContext_get_Voice(This,Voice) (This)->lpVtbl->get_Voice(This,Voice)
16593#define ISpeechRecoContext_put_AllowVoiceFormatMatchingOnNextSet(This,Allow) (This)->lpVtbl->put_AllowVoiceFormatMatchingOnNextSet(This,Allow)
16594#define ISpeechRecoContext_get_AllowVoiceFormatMatchingOnNextSet(This,pAllow) (This)->lpVtbl->get_AllowVoiceFormatMatchingOnNextSet(This,pAllow)
16595#define ISpeechRecoContext_put_VoicePurgeEvent(This,EventInterest) (This)->lpVtbl->put_VoicePurgeEvent(This,EventInterest)
16596#define ISpeechRecoContext_get_VoicePurgeEvent(This,EventInterest) (This)->lpVtbl->get_VoicePurgeEvent(This,EventInterest)
16597#define ISpeechRecoContext_put_EventInterests(This,EventInterest) (This)->lpVtbl->put_EventInterests(This,EventInterest)
16598#define ISpeechRecoContext_get_EventInterests(This,EventInterest) (This)->lpVtbl->get_EventInterests(This,EventInterest)
16599#define ISpeechRecoContext_put_CmdMaxAlternates(This,MaxAlternates) (This)->lpVtbl->put_CmdMaxAlternates(This,MaxAlternates)
16600#define ISpeechRecoContext_get_CmdMaxAlternates(This,MaxAlternates) (This)->lpVtbl->get_CmdMaxAlternates(This,MaxAlternates)
16601#define ISpeechRecoContext_put_State(This,State) (This)->lpVtbl->put_State(This,State)
16602#define ISpeechRecoContext_get_State(This,State) (This)->lpVtbl->get_State(This,State)
16603#define ISpeechRecoContext_put_RetainedAudio(This,Option) (This)->lpVtbl->put_RetainedAudio(This,Option)
16604#define ISpeechRecoContext_get_RetainedAudio(This,Option) (This)->lpVtbl->get_RetainedAudio(This,Option)
16605#define ISpeechRecoContext_putref_RetainedAudioFormat(This,Format) (This)->lpVtbl->putref_RetainedAudioFormat(This,Format)
16606#define ISpeechRecoContext_get_RetainedAudioFormat(This,Format) (This)->lpVtbl->get_RetainedAudioFormat(This,Format)
16607#define ISpeechRecoContext_Pause(This) (This)->lpVtbl->Pause(This)
16608#define ISpeechRecoContext_Resume(This) (This)->lpVtbl->Resume(This)
16609#define ISpeechRecoContext_CreateGrammar(This,GrammarId,Grammar) (This)->lpVtbl->CreateGrammar(This,GrammarId,Grammar)
16610#define ISpeechRecoContext_CreateResultFromMemory(This,ResultBlock,Result) (This)->lpVtbl->CreateResultFromMemory(This,ResultBlock,Result)
16611#define ISpeechRecoContext_Bookmark(This,Options,StreamPos,BookmarkId) (This)->lpVtbl->Bookmark(This,Options,StreamPos,BookmarkId)
16612#define ISpeechRecoContext_SetAdaptationData(This,AdaptationString) (This)->lpVtbl->SetAdaptationData(This,AdaptationString)
16613#else
16614/*** IUnknown methods ***/
16615static inline HRESULT ISpeechRecoContext_QueryInterface(ISpeechRecoContext* This,REFIID riid,void **ppvObject) {
16616 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16617}
16618static inline ULONG ISpeechRecoContext_AddRef(ISpeechRecoContext* This) {
16619 return This->lpVtbl->AddRef(This);
16620}
16621static inline ULONG ISpeechRecoContext_Release(ISpeechRecoContext* This) {
16622 return This->lpVtbl->Release(This);
16623}
16624/*** IDispatch methods ***/
16625static inline HRESULT ISpeechRecoContext_GetTypeInfoCount(ISpeechRecoContext* This,UINT *pctinfo) {
16626 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16627}
16628static inline HRESULT ISpeechRecoContext_GetTypeInfo(ISpeechRecoContext* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16629 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16630}
16631static inline HRESULT ISpeechRecoContext_GetIDsOfNames(ISpeechRecoContext* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16632 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16633}
16634static inline HRESULT ISpeechRecoContext_Invoke(ISpeechRecoContext* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16635 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16636}
16637/*** ISpeechRecoContext methods ***/
16638static inline HRESULT ISpeechRecoContext_get_Recognizer(ISpeechRecoContext* This,ISpeechRecognizer **Recognizer) {
16639 return This->lpVtbl->get_Recognizer(This,Recognizer);
16640}
16641static inline HRESULT ISpeechRecoContext_get_AudioInputInterferenceStatus(ISpeechRecoContext* This,SpeechInterference *Interference) {
16642 return This->lpVtbl->get_AudioInputInterferenceStatus(This,Interference);
16643}
16644static inline HRESULT ISpeechRecoContext_get_RequestedUIType(ISpeechRecoContext* This,BSTR *UIType) {
16645 return This->lpVtbl->get_RequestedUIType(This,UIType);
16646}
16647static inline HRESULT ISpeechRecoContext_putref_Voice(ISpeechRecoContext* This,ISpeechVoice *Voice) {
16648 return This->lpVtbl->putref_Voice(This,Voice);
16649}
16650static inline HRESULT ISpeechRecoContext_get_Voice(ISpeechRecoContext* This,ISpeechVoice **Voice) {
16651 return This->lpVtbl->get_Voice(This,Voice);
16652}
16653static inline HRESULT ISpeechRecoContext_put_AllowVoiceFormatMatchingOnNextSet(ISpeechRecoContext* This,VARIANT_BOOL Allow) {
16654 return This->lpVtbl->put_AllowVoiceFormatMatchingOnNextSet(This,Allow);
16655}
16656static inline HRESULT ISpeechRecoContext_get_AllowVoiceFormatMatchingOnNextSet(ISpeechRecoContext* This,VARIANT_BOOL *pAllow) {
16657 return This->lpVtbl->get_AllowVoiceFormatMatchingOnNextSet(This,pAllow);
16658}
16659static inline HRESULT ISpeechRecoContext_put_VoicePurgeEvent(ISpeechRecoContext* This,SpeechRecoEvents EventInterest) {
16660 return This->lpVtbl->put_VoicePurgeEvent(This,EventInterest);
16661}
16662static inline HRESULT ISpeechRecoContext_get_VoicePurgeEvent(ISpeechRecoContext* This,SpeechRecoEvents *EventInterest) {
16663 return This->lpVtbl->get_VoicePurgeEvent(This,EventInterest);
16664}
16665static inline HRESULT ISpeechRecoContext_put_EventInterests(ISpeechRecoContext* This,SpeechRecoEvents EventInterest) {
16666 return This->lpVtbl->put_EventInterests(This,EventInterest);
16667}
16668static inline HRESULT ISpeechRecoContext_get_EventInterests(ISpeechRecoContext* This,SpeechRecoEvents *EventInterest) {
16669 return This->lpVtbl->get_EventInterests(This,EventInterest);
16670}
16671static inline HRESULT ISpeechRecoContext_put_CmdMaxAlternates(ISpeechRecoContext* This,LONG MaxAlternates) {
16672 return This->lpVtbl->put_CmdMaxAlternates(This,MaxAlternates);
16673}
16674static inline HRESULT ISpeechRecoContext_get_CmdMaxAlternates(ISpeechRecoContext* This,LONG *MaxAlternates) {
16675 return This->lpVtbl->get_CmdMaxAlternates(This,MaxAlternates);
16676}
16677static inline HRESULT ISpeechRecoContext_put_State(ISpeechRecoContext* This,SpeechRecoContextState State) {
16678 return This->lpVtbl->put_State(This,State);
16679}
16680static inline HRESULT ISpeechRecoContext_get_State(ISpeechRecoContext* This,SpeechRecoContextState *State) {
16681 return This->lpVtbl->get_State(This,State);
16682}
16683static inline HRESULT ISpeechRecoContext_put_RetainedAudio(ISpeechRecoContext* This,SpeechRetainedAudioOptions Option) {
16684 return This->lpVtbl->put_RetainedAudio(This,Option);
16685}
16686static inline HRESULT ISpeechRecoContext_get_RetainedAudio(ISpeechRecoContext* This,SpeechRetainedAudioOptions *Option) {
16687 return This->lpVtbl->get_RetainedAudio(This,Option);
16688}
16689static inline HRESULT ISpeechRecoContext_putref_RetainedAudioFormat(ISpeechRecoContext* This,ISpeechAudioFormat *Format) {
16690 return This->lpVtbl->putref_RetainedAudioFormat(This,Format);
16691}
16692static inline HRESULT ISpeechRecoContext_get_RetainedAudioFormat(ISpeechRecoContext* This,ISpeechAudioFormat **Format) {
16693 return This->lpVtbl->get_RetainedAudioFormat(This,Format);
16694}
16695static inline HRESULT ISpeechRecoContext_Pause(ISpeechRecoContext* This) {
16696 return This->lpVtbl->Pause(This);
16697}
16698static inline HRESULT ISpeechRecoContext_Resume(ISpeechRecoContext* This) {
16699 return This->lpVtbl->Resume(This);
16700}
16701static inline HRESULT ISpeechRecoContext_CreateGrammar(ISpeechRecoContext* This,VARIANT GrammarId,ISpeechRecoGrammar **Grammar) {
16702 return This->lpVtbl->CreateGrammar(This,GrammarId,Grammar);
16703}
16704static inline HRESULT ISpeechRecoContext_CreateResultFromMemory(ISpeechRecoContext* This,VARIANT *ResultBlock,ISpeechRecoResult **Result) {
16705 return This->lpVtbl->CreateResultFromMemory(This,ResultBlock,Result);
16706}
16707static inline HRESULT ISpeechRecoContext_Bookmark(ISpeechRecoContext* This,SpeechBookmarkOptions Options,VARIANT StreamPos,VARIANT BookmarkId) {
16708 return This->lpVtbl->Bookmark(This,Options,StreamPos,BookmarkId);
16709}
16710static inline HRESULT ISpeechRecoContext_SetAdaptationData(ISpeechRecoContext* This,BSTR AdaptationString) {
16711 return This->lpVtbl->SetAdaptationData(This,AdaptationString);
16712}
16713#endif
16714#endif
16715
16716#endif
16717
16718
16719#endif /* __ISpeechRecoContext_INTERFACE_DEFINED__ */
16720
16721/*****************************************************************************
16722 * ISpeechRecoGrammar interface
16723 */
16724#ifndef __ISpeechRecoGrammar_INTERFACE_DEFINED__
16725#define __ISpeechRecoGrammar_INTERFACE_DEFINED__
16726
16727DEFINE_GUID(IID_ISpeechRecoGrammar, 0xb6d6f79f, 0x2158, 0x4e50, 0xb5,0xbc, 0x9a,0x9c,0xcd,0x85,0x2a,0x09);
16728#if defined(__cplusplus) && !defined(CINTERFACE)
16729MIDL_INTERFACE("b6d6f79f-2158-4e50-b5bc-9a9ccd852a09")
16730ISpeechRecoGrammar : public IDispatch
16731{
16732 virtual HRESULT STDMETHODCALLTYPE get_Id(
16733 VARIANT *Id) = 0;
16734
16735 virtual HRESULT STDMETHODCALLTYPE get_RecoContext(
16736 ISpeechRecoContext **RecoContext) = 0;
16737
16738 virtual HRESULT STDMETHODCALLTYPE put_State(
16739 SpeechGrammarState State) = 0;
16740
16741 virtual HRESULT STDMETHODCALLTYPE get_State(
16742 SpeechGrammarState *State) = 0;
16743
16744 virtual HRESULT STDMETHODCALLTYPE get_Rules(
16745 ISpeechGrammarRules **Rules) = 0;
16746
16747 virtual HRESULT STDMETHODCALLTYPE Reset(
16748 SpeechLanguageId NewLanguage = 0) = 0;
16749
16750 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromFile(
16751 const BSTR FileName,
16752 SpeechLoadOption LoadOption = SLOStatic) = 0;
16753
16754 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromObject(
16755 const BSTR ClassId,
16756 const BSTR GrammarName,
16757 SpeechLoadOption LoadOption = SLOStatic) = 0;
16758
16759 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromResource(
16760 LONG hModule,
16761 VARIANT ResourceName,
16762 VARIANT ResourceType,
16763 SpeechLanguageId LanguageId,
16764 SpeechLoadOption LoadOption = SLOStatic) = 0;
16765
16766 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromMemory(
16767 VARIANT GrammarData,
16768 SpeechLoadOption LoadOption = SLOStatic) = 0;
16769
16770 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromProprietaryGrammar(
16771 const BSTR ProprietaryGuid,
16772 const BSTR ProprietaryString,
16773 VARIANT ProprietaryData,
16774 SpeechLoadOption LoadOption = SLOStatic) = 0;
16775
16776 virtual HRESULT STDMETHODCALLTYPE CmdSetRuleState(
16777 const BSTR Name,
16778 SpeechRuleState State) = 0;
16779
16780 virtual HRESULT STDMETHODCALLTYPE CmdSetRuleIdState(
16781 LONG RuleId,
16782 SpeechRuleState State) = 0;
16783
16784 virtual HRESULT STDMETHODCALLTYPE DictationLoad(
16785 const BSTR TopicName = L"",
16786 SpeechLoadOption LoadOption = SLOStatic) = 0;
16787
16788 virtual HRESULT STDMETHODCALLTYPE DictationUnload(
16789 ) = 0;
16790
16791 virtual HRESULT STDMETHODCALLTYPE DictationSetState(
16792 SpeechRuleState State) = 0;
16793
16794 virtual HRESULT STDMETHODCALLTYPE SetWordSequenceData(
16795 const BSTR Text,
16796 LONG TextLength,
16797 ISpeechTextSelectionInformation *Info) = 0;
16798
16799 virtual HRESULT STDMETHODCALLTYPE SetTextSelection(
16800 ISpeechTextSelectionInformation *Info) = 0;
16801
16802 virtual HRESULT STDMETHODCALLTYPE IsPronounceable(
16803 const BSTR Word,
16804 SpeechWordPronounceable *WordPronounceable) = 0;
16805
16806};
16807#ifdef __CRT_UUID_DECL
16808__CRT_UUID_DECL(ISpeechRecoGrammar, 0xb6d6f79f, 0x2158, 0x4e50, 0xb5,0xbc, 0x9a,0x9c,0xcd,0x85,0x2a,0x09)
16809#endif
16810#else
16811typedef struct ISpeechRecoGrammarVtbl {
16812 BEGIN_INTERFACE
16813
16814 /*** IUnknown methods ***/
16815 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16816 ISpeechRecoGrammar *This,
16817 REFIID riid,
16818 void **ppvObject);
16819
16820 ULONG (STDMETHODCALLTYPE *AddRef)(
16821 ISpeechRecoGrammar *This);
16822
16823 ULONG (STDMETHODCALLTYPE *Release)(
16824 ISpeechRecoGrammar *This);
16825
16826 /*** IDispatch methods ***/
16827 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16828 ISpeechRecoGrammar *This,
16829 UINT *pctinfo);
16830
16831 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16832 ISpeechRecoGrammar *This,
16833 UINT iTInfo,
16834 LCID lcid,
16835 ITypeInfo **ppTInfo);
16836
16837 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16838 ISpeechRecoGrammar *This,
16839 REFIID riid,
16840 LPOLESTR *rgszNames,
16841 UINT cNames,
16842 LCID lcid,
16843 DISPID *rgDispId);
16844
16845 HRESULT (STDMETHODCALLTYPE *Invoke)(
16846 ISpeechRecoGrammar *This,
16847 DISPID dispIdMember,
16848 REFIID riid,
16849 LCID lcid,
16850 WORD wFlags,
16851 DISPPARAMS *pDispParams,
16852 VARIANT *pVarResult,
16853 EXCEPINFO *pExcepInfo,
16854 UINT *puArgErr);
16855
16856 /*** ISpeechRecoGrammar methods ***/
16857 HRESULT (STDMETHODCALLTYPE *get_Id)(
16858 ISpeechRecoGrammar *This,
16859 VARIANT *Id);
16860
16861 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
16862 ISpeechRecoGrammar *This,
16863 ISpeechRecoContext **RecoContext);
16864
16865 HRESULT (STDMETHODCALLTYPE *put_State)(
16866 ISpeechRecoGrammar *This,
16867 SpeechGrammarState State);
16868
16869 HRESULT (STDMETHODCALLTYPE *get_State)(
16870 ISpeechRecoGrammar *This,
16871 SpeechGrammarState *State);
16872
16873 HRESULT (STDMETHODCALLTYPE *get_Rules)(
16874 ISpeechRecoGrammar *This,
16875 ISpeechGrammarRules **Rules);
16876
16877 HRESULT (STDMETHODCALLTYPE *Reset)(
16878 ISpeechRecoGrammar *This,
16879 SpeechLanguageId NewLanguage);
16880
16881 HRESULT (STDMETHODCALLTYPE *CmdLoadFromFile)(
16882 ISpeechRecoGrammar *This,
16883 const BSTR FileName,
16884 SpeechLoadOption LoadOption);
16885
16886 HRESULT (STDMETHODCALLTYPE *CmdLoadFromObject)(
16887 ISpeechRecoGrammar *This,
16888 const BSTR ClassId,
16889 const BSTR GrammarName,
16890 SpeechLoadOption LoadOption);
16891
16892 HRESULT (STDMETHODCALLTYPE *CmdLoadFromResource)(
16893 ISpeechRecoGrammar *This,
16894 LONG hModule,
16895 VARIANT ResourceName,
16896 VARIANT ResourceType,
16897 SpeechLanguageId LanguageId,
16898 SpeechLoadOption LoadOption);
16899
16900 HRESULT (STDMETHODCALLTYPE *CmdLoadFromMemory)(
16901 ISpeechRecoGrammar *This,
16902 VARIANT GrammarData,
16903 SpeechLoadOption LoadOption);
16904
16905 HRESULT (STDMETHODCALLTYPE *CmdLoadFromProprietaryGrammar)(
16906 ISpeechRecoGrammar *This,
16907 const BSTR ProprietaryGuid,
16908 const BSTR ProprietaryString,
16909 VARIANT ProprietaryData,
16910 SpeechLoadOption LoadOption);
16911
16912 HRESULT (STDMETHODCALLTYPE *CmdSetRuleState)(
16913 ISpeechRecoGrammar *This,
16914 const BSTR Name,
16915 SpeechRuleState State);
16916
16917 HRESULT (STDMETHODCALLTYPE *CmdSetRuleIdState)(
16918 ISpeechRecoGrammar *This,
16919 LONG RuleId,
16920 SpeechRuleState State);
16921
16922 HRESULT (STDMETHODCALLTYPE *DictationLoad)(
16923 ISpeechRecoGrammar *This,
16924 const BSTR TopicName,
16925 SpeechLoadOption LoadOption);
16926
16927 HRESULT (STDMETHODCALLTYPE *DictationUnload)(
16928 ISpeechRecoGrammar *This);
16929
16930 HRESULT (STDMETHODCALLTYPE *DictationSetState)(
16931 ISpeechRecoGrammar *This,
16932 SpeechRuleState State);
16933
16934 HRESULT (STDMETHODCALLTYPE *SetWordSequenceData)(
16935 ISpeechRecoGrammar *This,
16936 const BSTR Text,
16937 LONG TextLength,
16938 ISpeechTextSelectionInformation *Info);
16939
16940 HRESULT (STDMETHODCALLTYPE *SetTextSelection)(
16941 ISpeechRecoGrammar *This,
16942 ISpeechTextSelectionInformation *Info);
16943
16944 HRESULT (STDMETHODCALLTYPE *IsPronounceable)(
16945 ISpeechRecoGrammar *This,
16946 const BSTR Word,
16947 SpeechWordPronounceable *WordPronounceable);
16948
16949 END_INTERFACE
16950} ISpeechRecoGrammarVtbl;
16951
16952interface ISpeechRecoGrammar {
16953 CONST_VTBL ISpeechRecoGrammarVtbl* lpVtbl;
16954};
16955
16956#ifdef COBJMACROS
16957#ifndef WIDL_C_INLINE_WRAPPERS
16958/*** IUnknown methods ***/
16959#define ISpeechRecoGrammar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16960#define ISpeechRecoGrammar_AddRef(This) (This)->lpVtbl->AddRef(This)
16961#define ISpeechRecoGrammar_Release(This) (This)->lpVtbl->Release(This)
16962/*** IDispatch methods ***/
16963#define ISpeechRecoGrammar_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16964#define ISpeechRecoGrammar_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16965#define ISpeechRecoGrammar_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16966#define ISpeechRecoGrammar_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16967/*** ISpeechRecoGrammar methods ***/
16968#define ISpeechRecoGrammar_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
16969#define ISpeechRecoGrammar_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
16970#define ISpeechRecoGrammar_put_State(This,State) (This)->lpVtbl->put_State(This,State)
16971#define ISpeechRecoGrammar_get_State(This,State) (This)->lpVtbl->get_State(This,State)
16972#define ISpeechRecoGrammar_get_Rules(This,Rules) (This)->lpVtbl->get_Rules(This,Rules)
16973#define ISpeechRecoGrammar_Reset(This,NewLanguage) (This)->lpVtbl->Reset(This,NewLanguage)
16974#define ISpeechRecoGrammar_CmdLoadFromFile(This,FileName,LoadOption) (This)->lpVtbl->CmdLoadFromFile(This,FileName,LoadOption)
16975#define ISpeechRecoGrammar_CmdLoadFromObject(This,ClassId,GrammarName,LoadOption) (This)->lpVtbl->CmdLoadFromObject(This,ClassId,GrammarName,LoadOption)
16976#define ISpeechRecoGrammar_CmdLoadFromResource(This,hModule,ResourceName,ResourceType,LanguageId,LoadOption) (This)->lpVtbl->CmdLoadFromResource(This,hModule,ResourceName,ResourceType,LanguageId,LoadOption)
16977#define ISpeechRecoGrammar_CmdLoadFromMemory(This,GrammarData,LoadOption) (This)->lpVtbl->CmdLoadFromMemory(This,GrammarData,LoadOption)
16978#define ISpeechRecoGrammar_CmdLoadFromProprietaryGrammar(This,ProprietaryGuid,ProprietaryString,ProprietaryData,LoadOption) (This)->lpVtbl->CmdLoadFromProprietaryGrammar(This,ProprietaryGuid,ProprietaryString,ProprietaryData,LoadOption)
16979#define ISpeechRecoGrammar_CmdSetRuleState(This,Name,State) (This)->lpVtbl->CmdSetRuleState(This,Name,State)
16980#define ISpeechRecoGrammar_CmdSetRuleIdState(This,RuleId,State) (This)->lpVtbl->CmdSetRuleIdState(This,RuleId,State)
16981#define ISpeechRecoGrammar_DictationLoad(This,TopicName,LoadOption) (This)->lpVtbl->DictationLoad(This,TopicName,LoadOption)
16982#define ISpeechRecoGrammar_DictationUnload(This) (This)->lpVtbl->DictationUnload(This)
16983#define ISpeechRecoGrammar_DictationSetState(This,State) (This)->lpVtbl->DictationSetState(This,State)
16984#define ISpeechRecoGrammar_SetWordSequenceData(This,Text,TextLength,Info) (This)->lpVtbl->SetWordSequenceData(This,Text,TextLength,Info)
16985#define ISpeechRecoGrammar_SetTextSelection(This,Info) (This)->lpVtbl->SetTextSelection(This,Info)
16986#define ISpeechRecoGrammar_IsPronounceable(This,Word,WordPronounceable) (This)->lpVtbl->IsPronounceable(This,Word,WordPronounceable)
16987#else
16988/*** IUnknown methods ***/
16989static inline HRESULT ISpeechRecoGrammar_QueryInterface(ISpeechRecoGrammar* This,REFIID riid,void **ppvObject) {
16990 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16991}
16992static inline ULONG ISpeechRecoGrammar_AddRef(ISpeechRecoGrammar* This) {
16993 return This->lpVtbl->AddRef(This);
16994}
16995static inline ULONG ISpeechRecoGrammar_Release(ISpeechRecoGrammar* This) {
16996 return This->lpVtbl->Release(This);
16997}
16998/*** IDispatch methods ***/
16999static inline HRESULT ISpeechRecoGrammar_GetTypeInfoCount(ISpeechRecoGrammar* This,UINT *pctinfo) {
17000 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17001}
17002static inline HRESULT ISpeechRecoGrammar_GetTypeInfo(ISpeechRecoGrammar* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17003 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17004}
17005static inline HRESULT ISpeechRecoGrammar_GetIDsOfNames(ISpeechRecoGrammar* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17006 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17007}
17008static inline HRESULT ISpeechRecoGrammar_Invoke(ISpeechRecoGrammar* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17009 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17010}
17011/*** ISpeechRecoGrammar methods ***/
17012static inline HRESULT ISpeechRecoGrammar_get_Id(ISpeechRecoGrammar* This,VARIANT *Id) {
17013 return This->lpVtbl->get_Id(This,Id);
17014}
17015static inline HRESULT ISpeechRecoGrammar_get_RecoContext(ISpeechRecoGrammar* This,ISpeechRecoContext **RecoContext) {
17016 return This->lpVtbl->get_RecoContext(This,RecoContext);
17017}
17018static inline HRESULT ISpeechRecoGrammar_put_State(ISpeechRecoGrammar* This,SpeechGrammarState State) {
17019 return This->lpVtbl->put_State(This,State);
17020}
17021static inline HRESULT ISpeechRecoGrammar_get_State(ISpeechRecoGrammar* This,SpeechGrammarState *State) {
17022 return This->lpVtbl->get_State(This,State);
17023}
17024static inline HRESULT ISpeechRecoGrammar_get_Rules(ISpeechRecoGrammar* This,ISpeechGrammarRules **Rules) {
17025 return This->lpVtbl->get_Rules(This,Rules);
17026}
17027static inline HRESULT ISpeechRecoGrammar_Reset(ISpeechRecoGrammar* This,SpeechLanguageId NewLanguage) {
17028 return This->lpVtbl->Reset(This,NewLanguage);
17029}
17030static inline HRESULT ISpeechRecoGrammar_CmdLoadFromFile(ISpeechRecoGrammar* This,const BSTR FileName,SpeechLoadOption LoadOption) {
17031 return This->lpVtbl->CmdLoadFromFile(This,FileName,LoadOption);
17032}
17033static inline HRESULT ISpeechRecoGrammar_CmdLoadFromObject(ISpeechRecoGrammar* This,const BSTR ClassId,const BSTR GrammarName,SpeechLoadOption LoadOption) {
17034 return This->lpVtbl->CmdLoadFromObject(This,ClassId,GrammarName,LoadOption);
17035}
17036static inline HRESULT ISpeechRecoGrammar_CmdLoadFromResource(ISpeechRecoGrammar* This,LONG hModule,VARIANT ResourceName,VARIANT ResourceType,SpeechLanguageId LanguageId,SpeechLoadOption LoadOption) {
17037 return This->lpVtbl->CmdLoadFromResource(This,hModule,ResourceName,ResourceType,LanguageId,LoadOption);
17038}
17039static inline HRESULT ISpeechRecoGrammar_CmdLoadFromMemory(ISpeechRecoGrammar* This,VARIANT GrammarData,SpeechLoadOption LoadOption) {
17040 return This->lpVtbl->CmdLoadFromMemory(This,GrammarData,LoadOption);
17041}
17042static inline HRESULT ISpeechRecoGrammar_CmdLoadFromProprietaryGrammar(ISpeechRecoGrammar* This,const BSTR ProprietaryGuid,const BSTR ProprietaryString,VARIANT ProprietaryData,SpeechLoadOption LoadOption) {
17043 return This->lpVtbl->CmdLoadFromProprietaryGrammar(This,ProprietaryGuid,ProprietaryString,ProprietaryData,LoadOption);
17044}
17045static inline HRESULT ISpeechRecoGrammar_CmdSetRuleState(ISpeechRecoGrammar* This,const BSTR Name,SpeechRuleState State) {
17046 return This->lpVtbl->CmdSetRuleState(This,Name,State);
17047}
17048static inline HRESULT ISpeechRecoGrammar_CmdSetRuleIdState(ISpeechRecoGrammar* This,LONG RuleId,SpeechRuleState State) {
17049 return This->lpVtbl->CmdSetRuleIdState(This,RuleId,State);
17050}
17051static inline HRESULT ISpeechRecoGrammar_DictationLoad(ISpeechRecoGrammar* This,const BSTR TopicName,SpeechLoadOption LoadOption) {
17052 return This->lpVtbl->DictationLoad(This,TopicName,LoadOption);
17053}
17054static inline HRESULT ISpeechRecoGrammar_DictationUnload(ISpeechRecoGrammar* This) {
17055 return This->lpVtbl->DictationUnload(This);
17056}
17057static inline HRESULT ISpeechRecoGrammar_DictationSetState(ISpeechRecoGrammar* This,SpeechRuleState State) {
17058 return This->lpVtbl->DictationSetState(This,State);
17059}
17060static inline HRESULT ISpeechRecoGrammar_SetWordSequenceData(ISpeechRecoGrammar* This,const BSTR Text,LONG TextLength,ISpeechTextSelectionInformation *Info) {
17061 return This->lpVtbl->SetWordSequenceData(This,Text,TextLength,Info);
17062}
17063static inline HRESULT ISpeechRecoGrammar_SetTextSelection(ISpeechRecoGrammar* This,ISpeechTextSelectionInformation *Info) {
17064 return This->lpVtbl->SetTextSelection(This,Info);
17065}
17066static inline HRESULT ISpeechRecoGrammar_IsPronounceable(ISpeechRecoGrammar* This,const BSTR Word,SpeechWordPronounceable *WordPronounceable) {
17067 return This->lpVtbl->IsPronounceable(This,Word,WordPronounceable);
17068}
17069#endif
17070#endif
17071
17072#endif
17073
17074
17075#endif /* __ISpeechRecoGrammar_INTERFACE_DEFINED__ */
17076
17077/*****************************************************************************
17078 * _ISpeechRecoContextEvents dispinterface
17079 */
17080#ifndef ___ISpeechRecoContextEvents_DISPINTERFACE_DEFINED__
17081#define ___ISpeechRecoContextEvents_DISPINTERFACE_DEFINED__
17082
17083DEFINE_GUID(DIID__ISpeechRecoContextEvents, 0x7b8fcb42, 0x0e9d, 0x4f00, 0xa0,0x48, 0x7b,0x04,0xd6,0x17,0x9d,0x3d);
17084#if defined(__cplusplus) && !defined(CINTERFACE)
17085MIDL_INTERFACE("7b8fcb42-0e9d-4f00-a048-7b04d6179d3d")
17086_ISpeechRecoContextEvents : public IDispatch
17087{
17088};
17089#ifdef __CRT_UUID_DECL
17090__CRT_UUID_DECL(_ISpeechRecoContextEvents, 0x7b8fcb42, 0x0e9d, 0x4f00, 0xa0,0x48, 0x7b,0x04,0xd6,0x17,0x9d,0x3d)
17091#endif
17092#else
17093typedef struct _ISpeechRecoContextEventsVtbl {
17094 BEGIN_INTERFACE
17095
17096 /*** IUnknown methods ***/
17097 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17098 _ISpeechRecoContextEvents *This,
17099 REFIID riid,
17100 void **ppvObject);
17101
17102 ULONG (STDMETHODCALLTYPE *AddRef)(
17103 _ISpeechRecoContextEvents *This);
17104
17105 ULONG (STDMETHODCALLTYPE *Release)(
17106 _ISpeechRecoContextEvents *This);
17107
17108 /*** IDispatch methods ***/
17109 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17110 _ISpeechRecoContextEvents *This,
17111 UINT *pctinfo);
17112
17113 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17114 _ISpeechRecoContextEvents *This,
17115 UINT iTInfo,
17116 LCID lcid,
17117 ITypeInfo **ppTInfo);
17118
17119 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17120 _ISpeechRecoContextEvents *This,
17121 REFIID riid,
17122 LPOLESTR *rgszNames,
17123 UINT cNames,
17124 LCID lcid,
17125 DISPID *rgDispId);
17126
17127 HRESULT (STDMETHODCALLTYPE *Invoke)(
17128 _ISpeechRecoContextEvents *This,
17129 DISPID dispIdMember,
17130 REFIID riid,
17131 LCID lcid,
17132 WORD wFlags,
17133 DISPPARAMS *pDispParams,
17134 VARIANT *pVarResult,
17135 EXCEPINFO *pExcepInfo,
17136 UINT *puArgErr);
17137
17138 END_INTERFACE
17139} _ISpeechRecoContextEventsVtbl;
17140
17141interface _ISpeechRecoContextEvents {
17142 CONST_VTBL _ISpeechRecoContextEventsVtbl* lpVtbl;
17143};
17144
17145#ifdef COBJMACROS
17146#ifndef WIDL_C_INLINE_WRAPPERS
17147/*** IUnknown methods ***/
17148#define _ISpeechRecoContextEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17149#define _ISpeechRecoContextEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
17150#define _ISpeechRecoContextEvents_Release(This) (This)->lpVtbl->Release(This)
17151/*** IDispatch methods ***/
17152#define _ISpeechRecoContextEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17153#define _ISpeechRecoContextEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17154#define _ISpeechRecoContextEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17155#define _ISpeechRecoContextEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17156#else
17157/*** IUnknown methods ***/
17158static inline HRESULT _ISpeechRecoContextEvents_QueryInterface(_ISpeechRecoContextEvents* This,REFIID riid,void **ppvObject) {
17159 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17160}
17161static inline ULONG _ISpeechRecoContextEvents_AddRef(_ISpeechRecoContextEvents* This) {
17162 return This->lpVtbl->AddRef(This);
17163}
17164static inline ULONG _ISpeechRecoContextEvents_Release(_ISpeechRecoContextEvents* This) {
17165 return This->lpVtbl->Release(This);
17166}
17167/*** IDispatch methods ***/
17168static inline HRESULT _ISpeechRecoContextEvents_GetTypeInfoCount(_ISpeechRecoContextEvents* This,UINT *pctinfo) {
17169 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17170}
17171static inline HRESULT _ISpeechRecoContextEvents_GetTypeInfo(_ISpeechRecoContextEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17172 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17173}
17174static inline HRESULT _ISpeechRecoContextEvents_GetIDsOfNames(_ISpeechRecoContextEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17175 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17176}
17177static inline HRESULT _ISpeechRecoContextEvents_Invoke(_ISpeechRecoContextEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17178 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17179}
17180#endif
17181#endif
17182
17183#endif
17184
17185#endif /* ___ISpeechRecoContextEvents_DISPINTERFACE_DEFINED__ */
17186
17187/*****************************************************************************
17188 * ISpeechGrammarRule interface
17189 */
17190#ifndef __ISpeechGrammarRule_INTERFACE_DEFINED__
17191#define __ISpeechGrammarRule_INTERFACE_DEFINED__
17192
17193DEFINE_GUID(IID_ISpeechGrammarRule, 0xafe719cf, 0x5dd1, 0x44f2, 0x99,0x9c, 0x7a,0x39,0x9f,0x1c,0xfc,0xcc);
17194#if defined(__cplusplus) && !defined(CINTERFACE)
17195MIDL_INTERFACE("afe719cf-5dd1-44f2-999c-7a399f1cfccc")
17196ISpeechGrammarRule : public IDispatch
17197{
17198 virtual HRESULT STDMETHODCALLTYPE get_Attributes(
17199 SpeechRuleAttributes *Attributes) = 0;
17200
17201 virtual HRESULT STDMETHODCALLTYPE get_InitialState(
17202 ISpeechGrammarRuleState **State) = 0;
17203
17204 virtual HRESULT STDMETHODCALLTYPE get_Name(
17205 BSTR *Name) = 0;
17206
17207 virtual HRESULT STDMETHODCALLTYPE get_Id(
17208 LONG *Id) = 0;
17209
17210 virtual HRESULT STDMETHODCALLTYPE Clear(
17211 ) = 0;
17212
17213 virtual HRESULT STDMETHODCALLTYPE AddResource(
17214 const BSTR ResourceName,
17215 const BSTR ResourceValue) = 0;
17216
17217 virtual HRESULT STDMETHODCALLTYPE AddState(
17218 ISpeechGrammarRuleState **State) = 0;
17219
17220};
17221#ifdef __CRT_UUID_DECL
17222__CRT_UUID_DECL(ISpeechGrammarRule, 0xafe719cf, 0x5dd1, 0x44f2, 0x99,0x9c, 0x7a,0x39,0x9f,0x1c,0xfc,0xcc)
17223#endif
17224#else
17225typedef struct ISpeechGrammarRuleVtbl {
17226 BEGIN_INTERFACE
17227
17228 /*** IUnknown methods ***/
17229 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17230 ISpeechGrammarRule *This,
17231 REFIID riid,
17232 void **ppvObject);
17233
17234 ULONG (STDMETHODCALLTYPE *AddRef)(
17235 ISpeechGrammarRule *This);
17236
17237 ULONG (STDMETHODCALLTYPE *Release)(
17238 ISpeechGrammarRule *This);
17239
17240 /*** IDispatch methods ***/
17241 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17242 ISpeechGrammarRule *This,
17243 UINT *pctinfo);
17244
17245 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17246 ISpeechGrammarRule *This,
17247 UINT iTInfo,
17248 LCID lcid,
17249 ITypeInfo **ppTInfo);
17250
17251 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17252 ISpeechGrammarRule *This,
17253 REFIID riid,
17254 LPOLESTR *rgszNames,
17255 UINT cNames,
17256 LCID lcid,
17257 DISPID *rgDispId);
17258
17259 HRESULT (STDMETHODCALLTYPE *Invoke)(
17260 ISpeechGrammarRule *This,
17261 DISPID dispIdMember,
17262 REFIID riid,
17263 LCID lcid,
17264 WORD wFlags,
17265 DISPPARAMS *pDispParams,
17266 VARIANT *pVarResult,
17267 EXCEPINFO *pExcepInfo,
17268 UINT *puArgErr);
17269
17270 /*** ISpeechGrammarRule methods ***/
17271 HRESULT (STDMETHODCALLTYPE *get_Attributes)(
17272 ISpeechGrammarRule *This,
17273 SpeechRuleAttributes *Attributes);
17274
17275 HRESULT (STDMETHODCALLTYPE *get_InitialState)(
17276 ISpeechGrammarRule *This,
17277 ISpeechGrammarRuleState **State);
17278
17279 HRESULT (STDMETHODCALLTYPE *get_Name)(
17280 ISpeechGrammarRule *This,
17281 BSTR *Name);
17282
17283 HRESULT (STDMETHODCALLTYPE *get_Id)(
17284 ISpeechGrammarRule *This,
17285 LONG *Id);
17286
17287 HRESULT (STDMETHODCALLTYPE *Clear)(
17288 ISpeechGrammarRule *This);
17289
17290 HRESULT (STDMETHODCALLTYPE *AddResource)(
17291 ISpeechGrammarRule *This,
17292 const BSTR ResourceName,
17293 const BSTR ResourceValue);
17294
17295 HRESULT (STDMETHODCALLTYPE *AddState)(
17296 ISpeechGrammarRule *This,
17297 ISpeechGrammarRuleState **State);
17298
17299 END_INTERFACE
17300} ISpeechGrammarRuleVtbl;
17301
17302interface ISpeechGrammarRule {
17303 CONST_VTBL ISpeechGrammarRuleVtbl* lpVtbl;
17304};
17305
17306#ifdef COBJMACROS
17307#ifndef WIDL_C_INLINE_WRAPPERS
17308/*** IUnknown methods ***/
17309#define ISpeechGrammarRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17310#define ISpeechGrammarRule_AddRef(This) (This)->lpVtbl->AddRef(This)
17311#define ISpeechGrammarRule_Release(This) (This)->lpVtbl->Release(This)
17312/*** IDispatch methods ***/
17313#define ISpeechGrammarRule_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17314#define ISpeechGrammarRule_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17315#define ISpeechGrammarRule_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17316#define ISpeechGrammarRule_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17317/*** ISpeechGrammarRule methods ***/
17318#define ISpeechGrammarRule_get_Attributes(This,Attributes) (This)->lpVtbl->get_Attributes(This,Attributes)
17319#define ISpeechGrammarRule_get_InitialState(This,State) (This)->lpVtbl->get_InitialState(This,State)
17320#define ISpeechGrammarRule_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
17321#define ISpeechGrammarRule_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
17322#define ISpeechGrammarRule_Clear(This) (This)->lpVtbl->Clear(This)
17323#define ISpeechGrammarRule_AddResource(This,ResourceName,ResourceValue) (This)->lpVtbl->AddResource(This,ResourceName,ResourceValue)
17324#define ISpeechGrammarRule_AddState(This,State) (This)->lpVtbl->AddState(This,State)
17325#else
17326/*** IUnknown methods ***/
17327static inline HRESULT ISpeechGrammarRule_QueryInterface(ISpeechGrammarRule* This,REFIID riid,void **ppvObject) {
17328 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17329}
17330static inline ULONG ISpeechGrammarRule_AddRef(ISpeechGrammarRule* This) {
17331 return This->lpVtbl->AddRef(This);
17332}
17333static inline ULONG ISpeechGrammarRule_Release(ISpeechGrammarRule* This) {
17334 return This->lpVtbl->Release(This);
17335}
17336/*** IDispatch methods ***/
17337static inline HRESULT ISpeechGrammarRule_GetTypeInfoCount(ISpeechGrammarRule* This,UINT *pctinfo) {
17338 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17339}
17340static inline HRESULT ISpeechGrammarRule_GetTypeInfo(ISpeechGrammarRule* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17341 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17342}
17343static inline HRESULT ISpeechGrammarRule_GetIDsOfNames(ISpeechGrammarRule* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17344 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17345}
17346static inline HRESULT ISpeechGrammarRule_Invoke(ISpeechGrammarRule* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17347 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17348}
17349/*** ISpeechGrammarRule methods ***/
17350static inline HRESULT ISpeechGrammarRule_get_Attributes(ISpeechGrammarRule* This,SpeechRuleAttributes *Attributes) {
17351 return This->lpVtbl->get_Attributes(This,Attributes);
17352}
17353static inline HRESULT ISpeechGrammarRule_get_InitialState(ISpeechGrammarRule* This,ISpeechGrammarRuleState **State) {
17354 return This->lpVtbl->get_InitialState(This,State);
17355}
17356static inline HRESULT ISpeechGrammarRule_get_Name(ISpeechGrammarRule* This,BSTR *Name) {
17357 return This->lpVtbl->get_Name(This,Name);
17358}
17359static inline HRESULT ISpeechGrammarRule_get_Id(ISpeechGrammarRule* This,LONG *Id) {
17360 return This->lpVtbl->get_Id(This,Id);
17361}
17362static inline HRESULT ISpeechGrammarRule_Clear(ISpeechGrammarRule* This) {
17363 return This->lpVtbl->Clear(This);
17364}
17365static inline HRESULT ISpeechGrammarRule_AddResource(ISpeechGrammarRule* This,const BSTR ResourceName,const BSTR ResourceValue) {
17366 return This->lpVtbl->AddResource(This,ResourceName,ResourceValue);
17367}
17368static inline HRESULT ISpeechGrammarRule_AddState(ISpeechGrammarRule* This,ISpeechGrammarRuleState **State) {
17369 return This->lpVtbl->AddState(This,State);
17370}
17371#endif
17372#endif
17373
17374#endif
17375
17376
17377#endif /* __ISpeechGrammarRule_INTERFACE_DEFINED__ */
17378
17379/*****************************************************************************
17380 * ISpeechGrammarRules interface
17381 */
17382#ifndef __ISpeechGrammarRules_INTERFACE_DEFINED__
17383#define __ISpeechGrammarRules_INTERFACE_DEFINED__
17384
17385DEFINE_GUID(IID_ISpeechGrammarRules, 0x6ffa3b44, 0xfc2d, 0x40d1, 0x8a,0xfc, 0x32,0x91,0x1c,0x7f,0x1a,0xd1);
17386#if defined(__cplusplus) && !defined(CINTERFACE)
17387MIDL_INTERFACE("6ffa3b44-fc2d-40d1-8afc-32911c7f1ad1")
17388ISpeechGrammarRules : public IDispatch
17389{
17390 virtual HRESULT STDMETHODCALLTYPE get_Count(
17391 LONG *Count) = 0;
17392
17393 virtual HRESULT STDMETHODCALLTYPE FindRule(
17394 VARIANT RuleNameOrId,
17395 ISpeechGrammarRule **Rule) = 0;
17396
17397 virtual HRESULT STDMETHODCALLTYPE Item(
17398 LONG Index,
17399 ISpeechGrammarRule **Rule) = 0;
17400
17401 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
17402 IUnknown **EnumVARIANT) = 0;
17403
17404 virtual HRESULT STDMETHODCALLTYPE get_Dynamic(
17405 VARIANT_BOOL *Dynamic) = 0;
17406
17407 virtual HRESULT STDMETHODCALLTYPE Add(
17408 BSTR RuleName,
17409 SpeechRuleAttributes Attributes,
17410 LONG RuleId,
17411 ISpeechGrammarRule **Rule) = 0;
17412
17413 virtual HRESULT STDMETHODCALLTYPE Commit(
17414 ) = 0;
17415
17416 virtual HRESULT STDMETHODCALLTYPE CommitAndSave(
17417 BSTR *ErrorText,
17418 VARIANT *SaveStream) = 0;
17419
17420};
17421#ifdef __CRT_UUID_DECL
17422__CRT_UUID_DECL(ISpeechGrammarRules, 0x6ffa3b44, 0xfc2d, 0x40d1, 0x8a,0xfc, 0x32,0x91,0x1c,0x7f,0x1a,0xd1)
17423#endif
17424#else
17425typedef struct ISpeechGrammarRulesVtbl {
17426 BEGIN_INTERFACE
17427
17428 /*** IUnknown methods ***/
17429 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17430 ISpeechGrammarRules *This,
17431 REFIID riid,
17432 void **ppvObject);
17433
17434 ULONG (STDMETHODCALLTYPE *AddRef)(
17435 ISpeechGrammarRules *This);
17436
17437 ULONG (STDMETHODCALLTYPE *Release)(
17438 ISpeechGrammarRules *This);
17439
17440 /*** IDispatch methods ***/
17441 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17442 ISpeechGrammarRules *This,
17443 UINT *pctinfo);
17444
17445 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17446 ISpeechGrammarRules *This,
17447 UINT iTInfo,
17448 LCID lcid,
17449 ITypeInfo **ppTInfo);
17450
17451 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17452 ISpeechGrammarRules *This,
17453 REFIID riid,
17454 LPOLESTR *rgszNames,
17455 UINT cNames,
17456 LCID lcid,
17457 DISPID *rgDispId);
17458
17459 HRESULT (STDMETHODCALLTYPE *Invoke)(
17460 ISpeechGrammarRules *This,
17461 DISPID dispIdMember,
17462 REFIID riid,
17463 LCID lcid,
17464 WORD wFlags,
17465 DISPPARAMS *pDispParams,
17466 VARIANT *pVarResult,
17467 EXCEPINFO *pExcepInfo,
17468 UINT *puArgErr);
17469
17470 /*** ISpeechGrammarRules methods ***/
17471 HRESULT (STDMETHODCALLTYPE *get_Count)(
17472 ISpeechGrammarRules *This,
17473 LONG *Count);
17474
17475 HRESULT (STDMETHODCALLTYPE *FindRule)(
17476 ISpeechGrammarRules *This,
17477 VARIANT RuleNameOrId,
17478 ISpeechGrammarRule **Rule);
17479
17480 HRESULT (STDMETHODCALLTYPE *Item)(
17481 ISpeechGrammarRules *This,
17482 LONG Index,
17483 ISpeechGrammarRule **Rule);
17484
17485 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
17486 ISpeechGrammarRules *This,
17487 IUnknown **EnumVARIANT);
17488
17489 HRESULT (STDMETHODCALLTYPE *get_Dynamic)(
17490 ISpeechGrammarRules *This,
17491 VARIANT_BOOL *Dynamic);
17492
17493 HRESULT (STDMETHODCALLTYPE *Add)(
17494 ISpeechGrammarRules *This,
17495 BSTR RuleName,
17496 SpeechRuleAttributes Attributes,
17497 LONG RuleId,
17498 ISpeechGrammarRule **Rule);
17499
17500 HRESULT (STDMETHODCALLTYPE *Commit)(
17501 ISpeechGrammarRules *This);
17502
17503 HRESULT (STDMETHODCALLTYPE *CommitAndSave)(
17504 ISpeechGrammarRules *This,
17505 BSTR *ErrorText,
17506 VARIANT *SaveStream);
17507
17508 END_INTERFACE
17509} ISpeechGrammarRulesVtbl;
17510
17511interface ISpeechGrammarRules {
17512 CONST_VTBL ISpeechGrammarRulesVtbl* lpVtbl;
17513};
17514
17515#ifdef COBJMACROS
17516#ifndef WIDL_C_INLINE_WRAPPERS
17517/*** IUnknown methods ***/
17518#define ISpeechGrammarRules_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17519#define ISpeechGrammarRules_AddRef(This) (This)->lpVtbl->AddRef(This)
17520#define ISpeechGrammarRules_Release(This) (This)->lpVtbl->Release(This)
17521/*** IDispatch methods ***/
17522#define ISpeechGrammarRules_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17523#define ISpeechGrammarRules_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17524#define ISpeechGrammarRules_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17525#define ISpeechGrammarRules_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17526/*** ISpeechGrammarRules methods ***/
17527#define ISpeechGrammarRules_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
17528#define ISpeechGrammarRules_FindRule(This,RuleNameOrId,Rule) (This)->lpVtbl->FindRule(This,RuleNameOrId,Rule)
17529#define ISpeechGrammarRules_Item(This,Index,Rule) (This)->lpVtbl->Item(This,Index,Rule)
17530#define ISpeechGrammarRules_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
17531#define ISpeechGrammarRules_get_Dynamic(This,Dynamic) (This)->lpVtbl->get_Dynamic(This,Dynamic)
17532#define ISpeechGrammarRules_Add(This,RuleName,Attributes,RuleId,Rule) (This)->lpVtbl->Add(This,RuleName,Attributes,RuleId,Rule)
17533#define ISpeechGrammarRules_Commit(This) (This)->lpVtbl->Commit(This)
17534#define ISpeechGrammarRules_CommitAndSave(This,ErrorText,SaveStream) (This)->lpVtbl->CommitAndSave(This,ErrorText,SaveStream)
17535#else
17536/*** IUnknown methods ***/
17537static inline HRESULT ISpeechGrammarRules_QueryInterface(ISpeechGrammarRules* This,REFIID riid,void **ppvObject) {
17538 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17539}
17540static inline ULONG ISpeechGrammarRules_AddRef(ISpeechGrammarRules* This) {
17541 return This->lpVtbl->AddRef(This);
17542}
17543static inline ULONG ISpeechGrammarRules_Release(ISpeechGrammarRules* This) {
17544 return This->lpVtbl->Release(This);
17545}
17546/*** IDispatch methods ***/
17547static inline HRESULT ISpeechGrammarRules_GetTypeInfoCount(ISpeechGrammarRules* This,UINT *pctinfo) {
17548 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17549}
17550static inline HRESULT ISpeechGrammarRules_GetTypeInfo(ISpeechGrammarRules* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17551 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17552}
17553static inline HRESULT ISpeechGrammarRules_GetIDsOfNames(ISpeechGrammarRules* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17554 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17555}
17556static inline HRESULT ISpeechGrammarRules_Invoke(ISpeechGrammarRules* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17557 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17558}
17559/*** ISpeechGrammarRules methods ***/
17560static inline HRESULT ISpeechGrammarRules_get_Count(ISpeechGrammarRules* This,LONG *Count) {
17561 return This->lpVtbl->get_Count(This,Count);
17562}
17563static inline HRESULT ISpeechGrammarRules_FindRule(ISpeechGrammarRules* This,VARIANT RuleNameOrId,ISpeechGrammarRule **Rule) {
17564 return This->lpVtbl->FindRule(This,RuleNameOrId,Rule);
17565}
17566static inline HRESULT ISpeechGrammarRules_Item(ISpeechGrammarRules* This,LONG Index,ISpeechGrammarRule **Rule) {
17567 return This->lpVtbl->Item(This,Index,Rule);
17568}
17569static inline HRESULT ISpeechGrammarRules_get__NewEnum(ISpeechGrammarRules* This,IUnknown **EnumVARIANT) {
17570 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
17571}
17572static inline HRESULT ISpeechGrammarRules_get_Dynamic(ISpeechGrammarRules* This,VARIANT_BOOL *Dynamic) {
17573 return This->lpVtbl->get_Dynamic(This,Dynamic);
17574}
17575static inline HRESULT ISpeechGrammarRules_Add(ISpeechGrammarRules* This,BSTR RuleName,SpeechRuleAttributes Attributes,LONG RuleId,ISpeechGrammarRule **Rule) {
17576 return This->lpVtbl->Add(This,RuleName,Attributes,RuleId,Rule);
17577}
17578static inline HRESULT ISpeechGrammarRules_Commit(ISpeechGrammarRules* This) {
17579 return This->lpVtbl->Commit(This);
17580}
17581static inline HRESULT ISpeechGrammarRules_CommitAndSave(ISpeechGrammarRules* This,BSTR *ErrorText,VARIANT *SaveStream) {
17582 return This->lpVtbl->CommitAndSave(This,ErrorText,SaveStream);
17583}
17584#endif
17585#endif
17586
17587#endif
17588
17589
17590#endif /* __ISpeechGrammarRules_INTERFACE_DEFINED__ */
17591
17592/*****************************************************************************
17593 * ISpeechGrammarRuleState interface
17594 */
17595#ifndef __ISpeechGrammarRuleState_INTERFACE_DEFINED__
17596#define __ISpeechGrammarRuleState_INTERFACE_DEFINED__
17597
17598DEFINE_GUID(IID_ISpeechGrammarRuleState, 0xd4286f2c, 0xee67, 0x45ae, 0xb9,0x28, 0x28,0xd6,0x95,0x36,0x2e,0xda);
17599#if defined(__cplusplus) && !defined(CINTERFACE)
17600MIDL_INTERFACE("d4286f2c-ee67-45ae-b928-28d695362eda")
17601ISpeechGrammarRuleState : public IDispatch
17602{
17603 virtual HRESULT STDMETHODCALLTYPE get_Rule(
17604 ISpeechGrammarRule **Rule) = 0;
17605
17606 virtual HRESULT STDMETHODCALLTYPE get_Transitions(
17607 ISpeechGrammarRuleStateTransitions **Transitions) = 0;
17608
17609 virtual HRESULT STDMETHODCALLTYPE AddWordTransition(
17610 ISpeechGrammarRuleState *DestState,
17611 const BSTR Words,
17612 const BSTR Separators = L" ",
17613 SpeechGrammarWordType Type = SGLexical,
17614 const BSTR PropertyName = L"",
17615 LONG PropertyId = 0,
17616 VARIANT *PropertyValue = 0,
17617 float Weight = 1) = 0;
17618
17619 virtual HRESULT STDMETHODCALLTYPE AddRuleTransition(
17620 ISpeechGrammarRuleState *DestinationState,
17621 ISpeechGrammarRule *Rule,
17622 const BSTR PropertyName = L"",
17623 LONG PropertyId = 0,
17624 VARIANT *PropertyValue = 0,
17625 float Weight = 1) = 0;
17626
17627 virtual HRESULT STDMETHODCALLTYPE AddSpecialTransition(
17628 ISpeechGrammarRuleState *DestinationState,
17629 SpeechSpecialTransitionType Type,
17630 const BSTR PropertyName = L"",
17631 LONG PropertyId = 0,
17632 VARIANT *PropertyValue = 0,
17633 float Weight = 1) = 0;
17634
17635};
17636#ifdef __CRT_UUID_DECL
17637__CRT_UUID_DECL(ISpeechGrammarRuleState, 0xd4286f2c, 0xee67, 0x45ae, 0xb9,0x28, 0x28,0xd6,0x95,0x36,0x2e,0xda)
17638#endif
17639#else
17640typedef struct ISpeechGrammarRuleStateVtbl {
17641 BEGIN_INTERFACE
17642
17643 /*** IUnknown methods ***/
17644 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17645 ISpeechGrammarRuleState *This,
17646 REFIID riid,
17647 void **ppvObject);
17648
17649 ULONG (STDMETHODCALLTYPE *AddRef)(
17650 ISpeechGrammarRuleState *This);
17651
17652 ULONG (STDMETHODCALLTYPE *Release)(
17653 ISpeechGrammarRuleState *This);
17654
17655 /*** IDispatch methods ***/
17656 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17657 ISpeechGrammarRuleState *This,
17658 UINT *pctinfo);
17659
17660 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17661 ISpeechGrammarRuleState *This,
17662 UINT iTInfo,
17663 LCID lcid,
17664 ITypeInfo **ppTInfo);
17665
17666 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17667 ISpeechGrammarRuleState *This,
17668 REFIID riid,
17669 LPOLESTR *rgszNames,
17670 UINT cNames,
17671 LCID lcid,
17672 DISPID *rgDispId);
17673
17674 HRESULT (STDMETHODCALLTYPE *Invoke)(
17675 ISpeechGrammarRuleState *This,
17676 DISPID dispIdMember,
17677 REFIID riid,
17678 LCID lcid,
17679 WORD wFlags,
17680 DISPPARAMS *pDispParams,
17681 VARIANT *pVarResult,
17682 EXCEPINFO *pExcepInfo,
17683 UINT *puArgErr);
17684
17685 /*** ISpeechGrammarRuleState methods ***/
17686 HRESULT (STDMETHODCALLTYPE *get_Rule)(
17687 ISpeechGrammarRuleState *This,
17688 ISpeechGrammarRule **Rule);
17689
17690 HRESULT (STDMETHODCALLTYPE *get_Transitions)(
17691 ISpeechGrammarRuleState *This,
17692 ISpeechGrammarRuleStateTransitions **Transitions);
17693
17694 HRESULT (STDMETHODCALLTYPE *AddWordTransition)(
17695 ISpeechGrammarRuleState *This,
17696 ISpeechGrammarRuleState *DestState,
17697 const BSTR Words,
17698 const BSTR Separators,
17699 SpeechGrammarWordType Type,
17700 const BSTR PropertyName,
17701 LONG PropertyId,
17702 VARIANT *PropertyValue,
17703 float Weight);
17704
17705 HRESULT (STDMETHODCALLTYPE *AddRuleTransition)(
17706 ISpeechGrammarRuleState *This,
17707 ISpeechGrammarRuleState *DestinationState,
17708 ISpeechGrammarRule *Rule,
17709 const BSTR PropertyName,
17710 LONG PropertyId,
17711 VARIANT *PropertyValue,
17712 float Weight);
17713
17714 HRESULT (STDMETHODCALLTYPE *AddSpecialTransition)(
17715 ISpeechGrammarRuleState *This,
17716 ISpeechGrammarRuleState *DestinationState,
17717 SpeechSpecialTransitionType Type,
17718 const BSTR PropertyName,
17719 LONG PropertyId,
17720 VARIANT *PropertyValue,
17721 float Weight);
17722
17723 END_INTERFACE
17724} ISpeechGrammarRuleStateVtbl;
17725
17726interface ISpeechGrammarRuleState {
17727 CONST_VTBL ISpeechGrammarRuleStateVtbl* lpVtbl;
17728};
17729
17730#ifdef COBJMACROS
17731#ifndef WIDL_C_INLINE_WRAPPERS
17732/*** IUnknown methods ***/
17733#define ISpeechGrammarRuleState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17734#define ISpeechGrammarRuleState_AddRef(This) (This)->lpVtbl->AddRef(This)
17735#define ISpeechGrammarRuleState_Release(This) (This)->lpVtbl->Release(This)
17736/*** IDispatch methods ***/
17737#define ISpeechGrammarRuleState_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17738#define ISpeechGrammarRuleState_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17739#define ISpeechGrammarRuleState_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17740#define ISpeechGrammarRuleState_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17741/*** ISpeechGrammarRuleState methods ***/
17742#define ISpeechGrammarRuleState_get_Rule(This,Rule) (This)->lpVtbl->get_Rule(This,Rule)
17743#define ISpeechGrammarRuleState_get_Transitions(This,Transitions) (This)->lpVtbl->get_Transitions(This,Transitions)
17744#define ISpeechGrammarRuleState_AddWordTransition(This,DestState,Words,Separators,Type,PropertyName,PropertyId,PropertyValue,Weight) (This)->lpVtbl->AddWordTransition(This,DestState,Words,Separators,Type,PropertyName,PropertyId,PropertyValue,Weight)
17745#define ISpeechGrammarRuleState_AddRuleTransition(This,DestinationState,Rule,PropertyName,PropertyId,PropertyValue,Weight) (This)->lpVtbl->AddRuleTransition(This,DestinationState,Rule,PropertyName,PropertyId,PropertyValue,Weight)
17746#define ISpeechGrammarRuleState_AddSpecialTransition(This,DestinationState,Type,PropertyName,PropertyId,PropertyValue,Weight) (This)->lpVtbl->AddSpecialTransition(This,DestinationState,Type,PropertyName,PropertyId,PropertyValue,Weight)
17747#else
17748/*** IUnknown methods ***/
17749static inline HRESULT ISpeechGrammarRuleState_QueryInterface(ISpeechGrammarRuleState* This,REFIID riid,void **ppvObject) {
17750 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17751}
17752static inline ULONG ISpeechGrammarRuleState_AddRef(ISpeechGrammarRuleState* This) {
17753 return This->lpVtbl->AddRef(This);
17754}
17755static inline ULONG ISpeechGrammarRuleState_Release(ISpeechGrammarRuleState* This) {
17756 return This->lpVtbl->Release(This);
17757}
17758/*** IDispatch methods ***/
17759static inline HRESULT ISpeechGrammarRuleState_GetTypeInfoCount(ISpeechGrammarRuleState* This,UINT *pctinfo) {
17760 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17761}
17762static inline HRESULT ISpeechGrammarRuleState_GetTypeInfo(ISpeechGrammarRuleState* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17763 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17764}
17765static inline HRESULT ISpeechGrammarRuleState_GetIDsOfNames(ISpeechGrammarRuleState* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17766 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17767}
17768static inline HRESULT ISpeechGrammarRuleState_Invoke(ISpeechGrammarRuleState* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17769 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17770}
17771/*** ISpeechGrammarRuleState methods ***/
17772static inline HRESULT ISpeechGrammarRuleState_get_Rule(ISpeechGrammarRuleState* This,ISpeechGrammarRule **Rule) {
17773 return This->lpVtbl->get_Rule(This,Rule);
17774}
17775static inline HRESULT ISpeechGrammarRuleState_get_Transitions(ISpeechGrammarRuleState* This,ISpeechGrammarRuleStateTransitions **Transitions) {
17776 return This->lpVtbl->get_Transitions(This,Transitions);
17777}
17778static inline HRESULT ISpeechGrammarRuleState_AddWordTransition(ISpeechGrammarRuleState* This,ISpeechGrammarRuleState *DestState,const BSTR Words,const BSTR Separators,SpeechGrammarWordType Type,const BSTR PropertyName,LONG PropertyId,VARIANT *PropertyValue,float Weight) {
17779 return This->lpVtbl->AddWordTransition(This,DestState,Words,Separators,Type,PropertyName,PropertyId,PropertyValue,Weight);
17780}
17781static inline HRESULT ISpeechGrammarRuleState_AddRuleTransition(ISpeechGrammarRuleState* This,ISpeechGrammarRuleState *DestinationState,ISpeechGrammarRule *Rule,const BSTR PropertyName,LONG PropertyId,VARIANT *PropertyValue,float Weight) {
17782 return This->lpVtbl->AddRuleTransition(This,DestinationState,Rule,PropertyName,PropertyId,PropertyValue,Weight);
17783}
17784static inline HRESULT ISpeechGrammarRuleState_AddSpecialTransition(ISpeechGrammarRuleState* This,ISpeechGrammarRuleState *DestinationState,SpeechSpecialTransitionType Type,const BSTR PropertyName,LONG PropertyId,VARIANT *PropertyValue,float Weight) {
17785 return This->lpVtbl->AddSpecialTransition(This,DestinationState,Type,PropertyName,PropertyId,PropertyValue,Weight);
17786}
17787#endif
17788#endif
17789
17790#endif
17791
17792
17793#endif /* __ISpeechGrammarRuleState_INTERFACE_DEFINED__ */
17794
17795/*****************************************************************************
17796 * ISpeechGrammarRuleStateTransitions interface
17797 */
17798#ifndef __ISpeechGrammarRuleStateTransitions_INTERFACE_DEFINED__
17799#define __ISpeechGrammarRuleStateTransitions_INTERFACE_DEFINED__
17800
17801DEFINE_GUID(IID_ISpeechGrammarRuleStateTransitions, 0xeabce657, 0x75bc, 0x44a2, 0xaa,0x7f, 0xc5,0x64,0x76,0x74,0x29,0x63);
17802#if defined(__cplusplus) && !defined(CINTERFACE)
17803MIDL_INTERFACE("eabce657-75bc-44a2-aa7f-c56476742963")
17804ISpeechGrammarRuleStateTransitions : public IDispatch
17805{
17806 virtual HRESULT STDMETHODCALLTYPE get_Count(
17807 LONG *Count) = 0;
17808
17809 virtual HRESULT STDMETHODCALLTYPE Item(
17810 LONG Index,
17811 ISpeechGrammarRuleStateTransition **Transition) = 0;
17812
17813 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
17814 IUnknown **EnumVARIANT) = 0;
17815
17816};
17817#ifdef __CRT_UUID_DECL
17818__CRT_UUID_DECL(ISpeechGrammarRuleStateTransitions, 0xeabce657, 0x75bc, 0x44a2, 0xaa,0x7f, 0xc5,0x64,0x76,0x74,0x29,0x63)
17819#endif
17820#else
17821typedef struct ISpeechGrammarRuleStateTransitionsVtbl {
17822 BEGIN_INTERFACE
17823
17824 /*** IUnknown methods ***/
17825 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17826 ISpeechGrammarRuleStateTransitions *This,
17827 REFIID riid,
17828 void **ppvObject);
17829
17830 ULONG (STDMETHODCALLTYPE *AddRef)(
17831 ISpeechGrammarRuleStateTransitions *This);
17832
17833 ULONG (STDMETHODCALLTYPE *Release)(
17834 ISpeechGrammarRuleStateTransitions *This);
17835
17836 /*** IDispatch methods ***/
17837 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17838 ISpeechGrammarRuleStateTransitions *This,
17839 UINT *pctinfo);
17840
17841 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17842 ISpeechGrammarRuleStateTransitions *This,
17843 UINT iTInfo,
17844 LCID lcid,
17845 ITypeInfo **ppTInfo);
17846
17847 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17848 ISpeechGrammarRuleStateTransitions *This,
17849 REFIID riid,
17850 LPOLESTR *rgszNames,
17851 UINT cNames,
17852 LCID lcid,
17853 DISPID *rgDispId);
17854
17855 HRESULT (STDMETHODCALLTYPE *Invoke)(
17856 ISpeechGrammarRuleStateTransitions *This,
17857 DISPID dispIdMember,
17858 REFIID riid,
17859 LCID lcid,
17860 WORD wFlags,
17861 DISPPARAMS *pDispParams,
17862 VARIANT *pVarResult,
17863 EXCEPINFO *pExcepInfo,
17864 UINT *puArgErr);
17865
17866 /*** ISpeechGrammarRuleStateTransitions methods ***/
17867 HRESULT (STDMETHODCALLTYPE *get_Count)(
17868 ISpeechGrammarRuleStateTransitions *This,
17869 LONG *Count);
17870
17871 HRESULT (STDMETHODCALLTYPE *Item)(
17872 ISpeechGrammarRuleStateTransitions *This,
17873 LONG Index,
17874 ISpeechGrammarRuleStateTransition **Transition);
17875
17876 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
17877 ISpeechGrammarRuleStateTransitions *This,
17878 IUnknown **EnumVARIANT);
17879
17880 END_INTERFACE
17881} ISpeechGrammarRuleStateTransitionsVtbl;
17882
17883interface ISpeechGrammarRuleStateTransitions {
17884 CONST_VTBL ISpeechGrammarRuleStateTransitionsVtbl* lpVtbl;
17885};
17886
17887#ifdef COBJMACROS
17888#ifndef WIDL_C_INLINE_WRAPPERS
17889/*** IUnknown methods ***/
17890#define ISpeechGrammarRuleStateTransitions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17891#define ISpeechGrammarRuleStateTransitions_AddRef(This) (This)->lpVtbl->AddRef(This)
17892#define ISpeechGrammarRuleStateTransitions_Release(This) (This)->lpVtbl->Release(This)
17893/*** IDispatch methods ***/
17894#define ISpeechGrammarRuleStateTransitions_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17895#define ISpeechGrammarRuleStateTransitions_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17896#define ISpeechGrammarRuleStateTransitions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17897#define ISpeechGrammarRuleStateTransitions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17898/*** ISpeechGrammarRuleStateTransitions methods ***/
17899#define ISpeechGrammarRuleStateTransitions_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
17900#define ISpeechGrammarRuleStateTransitions_Item(This,Index,Transition) (This)->lpVtbl->Item(This,Index,Transition)
17901#define ISpeechGrammarRuleStateTransitions_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
17902#else
17903/*** IUnknown methods ***/
17904static inline HRESULT ISpeechGrammarRuleStateTransitions_QueryInterface(ISpeechGrammarRuleStateTransitions* This,REFIID riid,void **ppvObject) {
17905 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17906}
17907static inline ULONG ISpeechGrammarRuleStateTransitions_AddRef(ISpeechGrammarRuleStateTransitions* This) {
17908 return This->lpVtbl->AddRef(This);
17909}
17910static inline ULONG ISpeechGrammarRuleStateTransitions_Release(ISpeechGrammarRuleStateTransitions* This) {
17911 return This->lpVtbl->Release(This);
17912}
17913/*** IDispatch methods ***/
17914static inline HRESULT ISpeechGrammarRuleStateTransitions_GetTypeInfoCount(ISpeechGrammarRuleStateTransitions* This,UINT *pctinfo) {
17915 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17916}
17917static inline HRESULT ISpeechGrammarRuleStateTransitions_GetTypeInfo(ISpeechGrammarRuleStateTransitions* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17918 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17919}
17920static inline HRESULT ISpeechGrammarRuleStateTransitions_GetIDsOfNames(ISpeechGrammarRuleStateTransitions* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17921 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17922}
17923static inline HRESULT ISpeechGrammarRuleStateTransitions_Invoke(ISpeechGrammarRuleStateTransitions* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17924 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17925}
17926/*** ISpeechGrammarRuleStateTransitions methods ***/
17927static inline HRESULT ISpeechGrammarRuleStateTransitions_get_Count(ISpeechGrammarRuleStateTransitions* This,LONG *Count) {
17928 return This->lpVtbl->get_Count(This,Count);
17929}
17930static inline HRESULT ISpeechGrammarRuleStateTransitions_Item(ISpeechGrammarRuleStateTransitions* This,LONG Index,ISpeechGrammarRuleStateTransition **Transition) {
17931 return This->lpVtbl->Item(This,Index,Transition);
17932}
17933static inline HRESULT ISpeechGrammarRuleStateTransitions_get__NewEnum(ISpeechGrammarRuleStateTransitions* This,IUnknown **EnumVARIANT) {
17934 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
17935}
17936#endif
17937#endif
17938
17939#endif
17940
17941
17942#endif /* __ISpeechGrammarRuleStateTransitions_INTERFACE_DEFINED__ */
17943
17944/*****************************************************************************
17945 * ISpeechGrammarRuleStateTransition interface
17946 */
17947#ifndef __ISpeechGrammarRuleStateTransition_INTERFACE_DEFINED__
17948#define __ISpeechGrammarRuleStateTransition_INTERFACE_DEFINED__
17949
17950DEFINE_GUID(IID_ISpeechGrammarRuleStateTransition, 0xcafd1db1, 0x41d1, 0x4a06, 0x98,0x63, 0xe2,0xe8,0x1d,0xa1,0x7a,0x9a);
17951#if defined(__cplusplus) && !defined(CINTERFACE)
17952MIDL_INTERFACE("cafd1db1-41d1-4a06-9863-e2e81da17a9a")
17953ISpeechGrammarRuleStateTransition : public IDispatch
17954{
17955 virtual HRESULT STDMETHODCALLTYPE get_Type(
17956 SpeechGrammarRuleStateTransitionType *Type) = 0;
17957
17958 virtual HRESULT STDMETHODCALLTYPE get_Text(
17959 BSTR *Text) = 0;
17960
17961 virtual HRESULT STDMETHODCALLTYPE get_Rule(
17962 ISpeechGrammarRule **Rule) = 0;
17963
17964 virtual HRESULT STDMETHODCALLTYPE get_Weight(
17965 VARIANT *Weight) = 0;
17966
17967 virtual HRESULT STDMETHODCALLTYPE get_PropertyName(
17968 BSTR *PropertyName) = 0;
17969
17970 virtual HRESULT STDMETHODCALLTYPE get_PropertyId(
17971 LONG *PropertyId) = 0;
17972
17973 virtual HRESULT STDMETHODCALLTYPE get_PropertyValue(
17974 VARIANT *PropertyValue) = 0;
17975
17976 virtual HRESULT STDMETHODCALLTYPE get_NextState(
17977 ISpeechGrammarRuleState **NextState) = 0;
17978
17979};
17980#ifdef __CRT_UUID_DECL
17981__CRT_UUID_DECL(ISpeechGrammarRuleStateTransition, 0xcafd1db1, 0x41d1, 0x4a06, 0x98,0x63, 0xe2,0xe8,0x1d,0xa1,0x7a,0x9a)
17982#endif
17983#else
17984typedef struct ISpeechGrammarRuleStateTransitionVtbl {
17985 BEGIN_INTERFACE
17986
17987 /*** IUnknown methods ***/
17988 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17989 ISpeechGrammarRuleStateTransition *This,
17990 REFIID riid,
17991 void **ppvObject);
17992
17993 ULONG (STDMETHODCALLTYPE *AddRef)(
17994 ISpeechGrammarRuleStateTransition *This);
17995
17996 ULONG (STDMETHODCALLTYPE *Release)(
17997 ISpeechGrammarRuleStateTransition *This);
17998
17999 /*** IDispatch methods ***/
18000 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18001 ISpeechGrammarRuleStateTransition *This,
18002 UINT *pctinfo);
18003
18004 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18005 ISpeechGrammarRuleStateTransition *This,
18006 UINT iTInfo,
18007 LCID lcid,
18008 ITypeInfo **ppTInfo);
18009
18010 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18011 ISpeechGrammarRuleStateTransition *This,
18012 REFIID riid,
18013 LPOLESTR *rgszNames,
18014 UINT cNames,
18015 LCID lcid,
18016 DISPID *rgDispId);
18017
18018 HRESULT (STDMETHODCALLTYPE *Invoke)(
18019 ISpeechGrammarRuleStateTransition *This,
18020 DISPID dispIdMember,
18021 REFIID riid,
18022 LCID lcid,
18023 WORD wFlags,
18024 DISPPARAMS *pDispParams,
18025 VARIANT *pVarResult,
18026 EXCEPINFO *pExcepInfo,
18027 UINT *puArgErr);
18028
18029 /*** ISpeechGrammarRuleStateTransition methods ***/
18030 HRESULT (STDMETHODCALLTYPE *get_Type)(
18031 ISpeechGrammarRuleStateTransition *This,
18032 SpeechGrammarRuleStateTransitionType *Type);
18033
18034 HRESULT (STDMETHODCALLTYPE *get_Text)(
18035 ISpeechGrammarRuleStateTransition *This,
18036 BSTR *Text);
18037
18038 HRESULT (STDMETHODCALLTYPE *get_Rule)(
18039 ISpeechGrammarRuleStateTransition *This,
18040 ISpeechGrammarRule **Rule);
18041
18042 HRESULT (STDMETHODCALLTYPE *get_Weight)(
18043 ISpeechGrammarRuleStateTransition *This,
18044 VARIANT *Weight);
18045
18046 HRESULT (STDMETHODCALLTYPE *get_PropertyName)(
18047 ISpeechGrammarRuleStateTransition *This,
18048 BSTR *PropertyName);
18049
18050 HRESULT (STDMETHODCALLTYPE *get_PropertyId)(
18051 ISpeechGrammarRuleStateTransition *This,
18052 LONG *PropertyId);
18053
18054 HRESULT (STDMETHODCALLTYPE *get_PropertyValue)(
18055 ISpeechGrammarRuleStateTransition *This,
18056 VARIANT *PropertyValue);
18057
18058 HRESULT (STDMETHODCALLTYPE *get_NextState)(
18059 ISpeechGrammarRuleStateTransition *This,
18060 ISpeechGrammarRuleState **NextState);
18061
18062 END_INTERFACE
18063} ISpeechGrammarRuleStateTransitionVtbl;
18064
18065interface ISpeechGrammarRuleStateTransition {
18066 CONST_VTBL ISpeechGrammarRuleStateTransitionVtbl* lpVtbl;
18067};
18068
18069#ifdef COBJMACROS
18070#ifndef WIDL_C_INLINE_WRAPPERS
18071/*** IUnknown methods ***/
18072#define ISpeechGrammarRuleStateTransition_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18073#define ISpeechGrammarRuleStateTransition_AddRef(This) (This)->lpVtbl->AddRef(This)
18074#define ISpeechGrammarRuleStateTransition_Release(This) (This)->lpVtbl->Release(This)
18075/*** IDispatch methods ***/
18076#define ISpeechGrammarRuleStateTransition_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18077#define ISpeechGrammarRuleStateTransition_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18078#define ISpeechGrammarRuleStateTransition_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18079#define ISpeechGrammarRuleStateTransition_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18080/*** ISpeechGrammarRuleStateTransition methods ***/
18081#define ISpeechGrammarRuleStateTransition_get_Type(This,Type) (This)->lpVtbl->get_Type(This,Type)
18082#define ISpeechGrammarRuleStateTransition_get_Text(This,Text) (This)->lpVtbl->get_Text(This,Text)
18083#define ISpeechGrammarRuleStateTransition_get_Rule(This,Rule) (This)->lpVtbl->get_Rule(This,Rule)
18084#define ISpeechGrammarRuleStateTransition_get_Weight(This,Weight) (This)->lpVtbl->get_Weight(This,Weight)
18085#define ISpeechGrammarRuleStateTransition_get_PropertyName(This,PropertyName) (This)->lpVtbl->get_PropertyName(This,PropertyName)
18086#define ISpeechGrammarRuleStateTransition_get_PropertyId(This,PropertyId) (This)->lpVtbl->get_PropertyId(This,PropertyId)
18087#define ISpeechGrammarRuleStateTransition_get_PropertyValue(This,PropertyValue) (This)->lpVtbl->get_PropertyValue(This,PropertyValue)
18088#define ISpeechGrammarRuleStateTransition_get_NextState(This,NextState) (This)->lpVtbl->get_NextState(This,NextState)
18089#else
18090/*** IUnknown methods ***/
18091static inline HRESULT ISpeechGrammarRuleStateTransition_QueryInterface(ISpeechGrammarRuleStateTransition* This,REFIID riid,void **ppvObject) {
18092 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18093}
18094static inline ULONG ISpeechGrammarRuleStateTransition_AddRef(ISpeechGrammarRuleStateTransition* This) {
18095 return This->lpVtbl->AddRef(This);
18096}
18097static inline ULONG ISpeechGrammarRuleStateTransition_Release(ISpeechGrammarRuleStateTransition* This) {
18098 return This->lpVtbl->Release(This);
18099}
18100/*** IDispatch methods ***/
18101static inline HRESULT ISpeechGrammarRuleStateTransition_GetTypeInfoCount(ISpeechGrammarRuleStateTransition* This,UINT *pctinfo) {
18102 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18103}
18104static inline HRESULT ISpeechGrammarRuleStateTransition_GetTypeInfo(ISpeechGrammarRuleStateTransition* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18105 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18106}
18107static inline HRESULT ISpeechGrammarRuleStateTransition_GetIDsOfNames(ISpeechGrammarRuleStateTransition* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18108 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18109}
18110static inline HRESULT ISpeechGrammarRuleStateTransition_Invoke(ISpeechGrammarRuleStateTransition* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18111 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18112}
18113/*** ISpeechGrammarRuleStateTransition methods ***/
18114static inline HRESULT ISpeechGrammarRuleStateTransition_get_Type(ISpeechGrammarRuleStateTransition* This,SpeechGrammarRuleStateTransitionType *Type) {
18115 return This->lpVtbl->get_Type(This,Type);
18116}
18117static inline HRESULT ISpeechGrammarRuleStateTransition_get_Text(ISpeechGrammarRuleStateTransition* This,BSTR *Text) {
18118 return This->lpVtbl->get_Text(This,Text);
18119}
18120static inline HRESULT ISpeechGrammarRuleStateTransition_get_Rule(ISpeechGrammarRuleStateTransition* This,ISpeechGrammarRule **Rule) {
18121 return This->lpVtbl->get_Rule(This,Rule);
18122}
18123static inline HRESULT ISpeechGrammarRuleStateTransition_get_Weight(ISpeechGrammarRuleStateTransition* This,VARIANT *Weight) {
18124 return This->lpVtbl->get_Weight(This,Weight);
18125}
18126static inline HRESULT ISpeechGrammarRuleStateTransition_get_PropertyName(ISpeechGrammarRuleStateTransition* This,BSTR *PropertyName) {
18127 return This->lpVtbl->get_PropertyName(This,PropertyName);
18128}
18129static inline HRESULT ISpeechGrammarRuleStateTransition_get_PropertyId(ISpeechGrammarRuleStateTransition* This,LONG *PropertyId) {
18130 return This->lpVtbl->get_PropertyId(This,PropertyId);
18131}
18132static inline HRESULT ISpeechGrammarRuleStateTransition_get_PropertyValue(ISpeechGrammarRuleStateTransition* This,VARIANT *PropertyValue) {
18133 return This->lpVtbl->get_PropertyValue(This,PropertyValue);
18134}
18135static inline HRESULT ISpeechGrammarRuleStateTransition_get_NextState(ISpeechGrammarRuleStateTransition* This,ISpeechGrammarRuleState **NextState) {
18136 return This->lpVtbl->get_NextState(This,NextState);
18137}
18138#endif
18139#endif
18140
18141#endif
18142
18143
18144#endif /* __ISpeechGrammarRuleStateTransition_INTERFACE_DEFINED__ */
18145
18146/*****************************************************************************
18147 * ISpeechTextSelectionInformation interface
18148 */
18149#ifndef __ISpeechTextSelectionInformation_INTERFACE_DEFINED__
18150#define __ISpeechTextSelectionInformation_INTERFACE_DEFINED__
18151
18152DEFINE_GUID(IID_ISpeechTextSelectionInformation, 0x3b9c7e7a, 0x6eee, 0x4ded, 0x90,0x92, 0x11,0x65,0x72,0x79,0xad,0xbe);
18153#if defined(__cplusplus) && !defined(CINTERFACE)
18154MIDL_INTERFACE("3b9c7e7a-6eee-4ded-9092-11657279adbe")
18155ISpeechTextSelectionInformation : public IDispatch
18156{
18157 virtual HRESULT STDMETHODCALLTYPE put_ActiveOffset(
18158 LONG ActiveOffset) = 0;
18159
18160 virtual HRESULT STDMETHODCALLTYPE get_ActiveOffset(
18161 LONG *ActiveOffset) = 0;
18162
18163 virtual HRESULT STDMETHODCALLTYPE put_ActiveLength(
18164 LONG ActiveLength) = 0;
18165
18166 virtual HRESULT STDMETHODCALLTYPE get_ActiveLength(
18167 LONG *ActiveLength) = 0;
18168
18169 virtual HRESULT STDMETHODCALLTYPE put_SelectionOffset(
18170 LONG SelectionOffset) = 0;
18171
18172 virtual HRESULT STDMETHODCALLTYPE get_SelectionOffset(
18173 LONG *SelectionOffset) = 0;
18174
18175 virtual HRESULT STDMETHODCALLTYPE put_SelectionLength(
18176 LONG SelectionLength) = 0;
18177
18178 virtual HRESULT STDMETHODCALLTYPE get_SelectionLength(
18179 LONG *SelectionLength) = 0;
18180
18181};
18182#ifdef __CRT_UUID_DECL
18183__CRT_UUID_DECL(ISpeechTextSelectionInformation, 0x3b9c7e7a, 0x6eee, 0x4ded, 0x90,0x92, 0x11,0x65,0x72,0x79,0xad,0xbe)
18184#endif
18185#else
18186typedef struct ISpeechTextSelectionInformationVtbl {
18187 BEGIN_INTERFACE
18188
18189 /*** IUnknown methods ***/
18190 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18191 ISpeechTextSelectionInformation *This,
18192 REFIID riid,
18193 void **ppvObject);
18194
18195 ULONG (STDMETHODCALLTYPE *AddRef)(
18196 ISpeechTextSelectionInformation *This);
18197
18198 ULONG (STDMETHODCALLTYPE *Release)(
18199 ISpeechTextSelectionInformation *This);
18200
18201 /*** IDispatch methods ***/
18202 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18203 ISpeechTextSelectionInformation *This,
18204 UINT *pctinfo);
18205
18206 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18207 ISpeechTextSelectionInformation *This,
18208 UINT iTInfo,
18209 LCID lcid,
18210 ITypeInfo **ppTInfo);
18211
18212 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18213 ISpeechTextSelectionInformation *This,
18214 REFIID riid,
18215 LPOLESTR *rgszNames,
18216 UINT cNames,
18217 LCID lcid,
18218 DISPID *rgDispId);
18219
18220 HRESULT (STDMETHODCALLTYPE *Invoke)(
18221 ISpeechTextSelectionInformation *This,
18222 DISPID dispIdMember,
18223 REFIID riid,
18224 LCID lcid,
18225 WORD wFlags,
18226 DISPPARAMS *pDispParams,
18227 VARIANT *pVarResult,
18228 EXCEPINFO *pExcepInfo,
18229 UINT *puArgErr);
18230
18231 /*** ISpeechTextSelectionInformation methods ***/
18232 HRESULT (STDMETHODCALLTYPE *put_ActiveOffset)(
18233 ISpeechTextSelectionInformation *This,
18234 LONG ActiveOffset);
18235
18236 HRESULT (STDMETHODCALLTYPE *get_ActiveOffset)(
18237 ISpeechTextSelectionInformation *This,
18238 LONG *ActiveOffset);
18239
18240 HRESULT (STDMETHODCALLTYPE *put_ActiveLength)(
18241 ISpeechTextSelectionInformation *This,
18242 LONG ActiveLength);
18243
18244 HRESULT (STDMETHODCALLTYPE *get_ActiveLength)(
18245 ISpeechTextSelectionInformation *This,
18246 LONG *ActiveLength);
18247
18248 HRESULT (STDMETHODCALLTYPE *put_SelectionOffset)(
18249 ISpeechTextSelectionInformation *This,
18250 LONG SelectionOffset);
18251
18252 HRESULT (STDMETHODCALLTYPE *get_SelectionOffset)(
18253 ISpeechTextSelectionInformation *This,
18254 LONG *SelectionOffset);
18255
18256 HRESULT (STDMETHODCALLTYPE *put_SelectionLength)(
18257 ISpeechTextSelectionInformation *This,
18258 LONG SelectionLength);
18259
18260 HRESULT (STDMETHODCALLTYPE *get_SelectionLength)(
18261 ISpeechTextSelectionInformation *This,
18262 LONG *SelectionLength);
18263
18264 END_INTERFACE
18265} ISpeechTextSelectionInformationVtbl;
18266
18267interface ISpeechTextSelectionInformation {
18268 CONST_VTBL ISpeechTextSelectionInformationVtbl* lpVtbl;
18269};
18270
18271#ifdef COBJMACROS
18272#ifndef WIDL_C_INLINE_WRAPPERS
18273/*** IUnknown methods ***/
18274#define ISpeechTextSelectionInformation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18275#define ISpeechTextSelectionInformation_AddRef(This) (This)->lpVtbl->AddRef(This)
18276#define ISpeechTextSelectionInformation_Release(This) (This)->lpVtbl->Release(This)
18277/*** IDispatch methods ***/
18278#define ISpeechTextSelectionInformation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18279#define ISpeechTextSelectionInformation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18280#define ISpeechTextSelectionInformation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18281#define ISpeechTextSelectionInformation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18282/*** ISpeechTextSelectionInformation methods ***/
18283#define ISpeechTextSelectionInformation_put_ActiveOffset(This,ActiveOffset) (This)->lpVtbl->put_ActiveOffset(This,ActiveOffset)
18284#define ISpeechTextSelectionInformation_get_ActiveOffset(This,ActiveOffset) (This)->lpVtbl->get_ActiveOffset(This,ActiveOffset)
18285#define ISpeechTextSelectionInformation_put_ActiveLength(This,ActiveLength) (This)->lpVtbl->put_ActiveLength(This,ActiveLength)
18286#define ISpeechTextSelectionInformation_get_ActiveLength(This,ActiveLength) (This)->lpVtbl->get_ActiveLength(This,ActiveLength)
18287#define ISpeechTextSelectionInformation_put_SelectionOffset(This,SelectionOffset) (This)->lpVtbl->put_SelectionOffset(This,SelectionOffset)
18288#define ISpeechTextSelectionInformation_get_SelectionOffset(This,SelectionOffset) (This)->lpVtbl->get_SelectionOffset(This,SelectionOffset)
18289#define ISpeechTextSelectionInformation_put_SelectionLength(This,SelectionLength) (This)->lpVtbl->put_SelectionLength(This,SelectionLength)
18290#define ISpeechTextSelectionInformation_get_SelectionLength(This,SelectionLength) (This)->lpVtbl->get_SelectionLength(This,SelectionLength)
18291#else
18292/*** IUnknown methods ***/
18293static inline HRESULT ISpeechTextSelectionInformation_QueryInterface(ISpeechTextSelectionInformation* This,REFIID riid,void **ppvObject) {
18294 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18295}
18296static inline ULONG ISpeechTextSelectionInformation_AddRef(ISpeechTextSelectionInformation* This) {
18297 return This->lpVtbl->AddRef(This);
18298}
18299static inline ULONG ISpeechTextSelectionInformation_Release(ISpeechTextSelectionInformation* This) {
18300 return This->lpVtbl->Release(This);
18301}
18302/*** IDispatch methods ***/
18303static inline HRESULT ISpeechTextSelectionInformation_GetTypeInfoCount(ISpeechTextSelectionInformation* This,UINT *pctinfo) {
18304 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18305}
18306static inline HRESULT ISpeechTextSelectionInformation_GetTypeInfo(ISpeechTextSelectionInformation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18307 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18308}
18309static inline HRESULT ISpeechTextSelectionInformation_GetIDsOfNames(ISpeechTextSelectionInformation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18310 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18311}
18312static inline HRESULT ISpeechTextSelectionInformation_Invoke(ISpeechTextSelectionInformation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18313 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18314}
18315/*** ISpeechTextSelectionInformation methods ***/
18316static inline HRESULT ISpeechTextSelectionInformation_put_ActiveOffset(ISpeechTextSelectionInformation* This,LONG ActiveOffset) {
18317 return This->lpVtbl->put_ActiveOffset(This,ActiveOffset);
18318}
18319static inline HRESULT ISpeechTextSelectionInformation_get_ActiveOffset(ISpeechTextSelectionInformation* This,LONG *ActiveOffset) {
18320 return This->lpVtbl->get_ActiveOffset(This,ActiveOffset);
18321}
18322static inline HRESULT ISpeechTextSelectionInformation_put_ActiveLength(ISpeechTextSelectionInformation* This,LONG ActiveLength) {
18323 return This->lpVtbl->put_ActiveLength(This,ActiveLength);
18324}
18325static inline HRESULT ISpeechTextSelectionInformation_get_ActiveLength(ISpeechTextSelectionInformation* This,LONG *ActiveLength) {
18326 return This->lpVtbl->get_ActiveLength(This,ActiveLength);
18327}
18328static inline HRESULT ISpeechTextSelectionInformation_put_SelectionOffset(ISpeechTextSelectionInformation* This,LONG SelectionOffset) {
18329 return This->lpVtbl->put_SelectionOffset(This,SelectionOffset);
18330}
18331static inline HRESULT ISpeechTextSelectionInformation_get_SelectionOffset(ISpeechTextSelectionInformation* This,LONG *SelectionOffset) {
18332 return This->lpVtbl->get_SelectionOffset(This,SelectionOffset);
18333}
18334static inline HRESULT ISpeechTextSelectionInformation_put_SelectionLength(ISpeechTextSelectionInformation* This,LONG SelectionLength) {
18335 return This->lpVtbl->put_SelectionLength(This,SelectionLength);
18336}
18337static inline HRESULT ISpeechTextSelectionInformation_get_SelectionLength(ISpeechTextSelectionInformation* This,LONG *SelectionLength) {
18338 return This->lpVtbl->get_SelectionLength(This,SelectionLength);
18339}
18340#endif
18341#endif
18342
18343#endif
18344
18345
18346#endif /* __ISpeechTextSelectionInformation_INTERFACE_DEFINED__ */
18347
18348/*****************************************************************************
18349 * ISpeechRecoResult interface
18350 */
18351#ifndef __ISpeechRecoResult_INTERFACE_DEFINED__
18352#define __ISpeechRecoResult_INTERFACE_DEFINED__
18353
18354DEFINE_GUID(IID_ISpeechRecoResult, 0xed2879cf, 0xced9, 0x4ee6, 0xa5,0x34, 0xde,0x01,0x91,0xd5,0x46,0x8d);
18355#if defined(__cplusplus) && !defined(CINTERFACE)
18356MIDL_INTERFACE("ed2879cf-ced9-4ee6-a534-de0191d5468d")
18357ISpeechRecoResult : public IDispatch
18358{
18359 virtual HRESULT STDMETHODCALLTYPE get_RecoContext(
18360 ISpeechRecoContext **RecoContext) = 0;
18361
18362 virtual HRESULT STDMETHODCALLTYPE get_Times(
18363 ISpeechRecoResultTimes **Times) = 0;
18364
18365 virtual HRESULT STDMETHODCALLTYPE putref_AudioFormat(
18366 ISpeechAudioFormat *Format) = 0;
18367
18368 virtual HRESULT STDMETHODCALLTYPE get_AudioFormat(
18369 ISpeechAudioFormat **Format) = 0;
18370
18371 virtual HRESULT STDMETHODCALLTYPE get_PhraseInfo(
18372 ISpeechPhraseInfo **PhraseInfo) = 0;
18373
18374 virtual HRESULT STDMETHODCALLTYPE Alternates(
18375 LONG RequestCount,
18376 LONG StartElement,
18377 LONG Elements,
18378 ISpeechPhraseAlternates **Alternates) = 0;
18379
18380 virtual HRESULT STDMETHODCALLTYPE Audio(
18381 LONG StartElement,
18382 LONG Elements,
18383 ISpeechMemoryStream **Stream) = 0;
18384
18385 virtual HRESULT STDMETHODCALLTYPE SpeakAudio(
18386 LONG StartElement,
18387 LONG Elements,
18388 SpeechVoiceSpeakFlags Flags,
18389 LONG *StreamNumber) = 0;
18390
18391 virtual HRESULT STDMETHODCALLTYPE SaveToMemory(
18392 VARIANT *ResultBlock) = 0;
18393
18394 virtual HRESULT STDMETHODCALLTYPE DiscardResultInfo(
18395 SpeechDiscardType ValueTypes) = 0;
18396
18397};
18398#ifdef __CRT_UUID_DECL
18399__CRT_UUID_DECL(ISpeechRecoResult, 0xed2879cf, 0xced9, 0x4ee6, 0xa5,0x34, 0xde,0x01,0x91,0xd5,0x46,0x8d)
18400#endif
18401#else
18402typedef struct ISpeechRecoResultVtbl {
18403 BEGIN_INTERFACE
18404
18405 /*** IUnknown methods ***/
18406 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18407 ISpeechRecoResult *This,
18408 REFIID riid,
18409 void **ppvObject);
18410
18411 ULONG (STDMETHODCALLTYPE *AddRef)(
18412 ISpeechRecoResult *This);
18413
18414 ULONG (STDMETHODCALLTYPE *Release)(
18415 ISpeechRecoResult *This);
18416
18417 /*** IDispatch methods ***/
18418 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18419 ISpeechRecoResult *This,
18420 UINT *pctinfo);
18421
18422 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18423 ISpeechRecoResult *This,
18424 UINT iTInfo,
18425 LCID lcid,
18426 ITypeInfo **ppTInfo);
18427
18428 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18429 ISpeechRecoResult *This,
18430 REFIID riid,
18431 LPOLESTR *rgszNames,
18432 UINT cNames,
18433 LCID lcid,
18434 DISPID *rgDispId);
18435
18436 HRESULT (STDMETHODCALLTYPE *Invoke)(
18437 ISpeechRecoResult *This,
18438 DISPID dispIdMember,
18439 REFIID riid,
18440 LCID lcid,
18441 WORD wFlags,
18442 DISPPARAMS *pDispParams,
18443 VARIANT *pVarResult,
18444 EXCEPINFO *pExcepInfo,
18445 UINT *puArgErr);
18446
18447 /*** ISpeechRecoResult methods ***/
18448 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
18449 ISpeechRecoResult *This,
18450 ISpeechRecoContext **RecoContext);
18451
18452 HRESULT (STDMETHODCALLTYPE *get_Times)(
18453 ISpeechRecoResult *This,
18454 ISpeechRecoResultTimes **Times);
18455
18456 HRESULT (STDMETHODCALLTYPE *putref_AudioFormat)(
18457 ISpeechRecoResult *This,
18458 ISpeechAudioFormat *Format);
18459
18460 HRESULT (STDMETHODCALLTYPE *get_AudioFormat)(
18461 ISpeechRecoResult *This,
18462 ISpeechAudioFormat **Format);
18463
18464 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
18465 ISpeechRecoResult *This,
18466 ISpeechPhraseInfo **PhraseInfo);
18467
18468 HRESULT (STDMETHODCALLTYPE *Alternates)(
18469 ISpeechRecoResult *This,
18470 LONG RequestCount,
18471 LONG StartElement,
18472 LONG Elements,
18473 ISpeechPhraseAlternates **Alternates);
18474
18475 HRESULT (STDMETHODCALLTYPE *Audio)(
18476 ISpeechRecoResult *This,
18477 LONG StartElement,
18478 LONG Elements,
18479 ISpeechMemoryStream **Stream);
18480
18481 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
18482 ISpeechRecoResult *This,
18483 LONG StartElement,
18484 LONG Elements,
18485 SpeechVoiceSpeakFlags Flags,
18486 LONG *StreamNumber);
18487
18488 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
18489 ISpeechRecoResult *This,
18490 VARIANT *ResultBlock);
18491
18492 HRESULT (STDMETHODCALLTYPE *DiscardResultInfo)(
18493 ISpeechRecoResult *This,
18494 SpeechDiscardType ValueTypes);
18495
18496 END_INTERFACE
18497} ISpeechRecoResultVtbl;
18498
18499interface ISpeechRecoResult {
18500 CONST_VTBL ISpeechRecoResultVtbl* lpVtbl;
18501};
18502
18503#ifdef COBJMACROS
18504#ifndef WIDL_C_INLINE_WRAPPERS
18505/*** IUnknown methods ***/
18506#define ISpeechRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18507#define ISpeechRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
18508#define ISpeechRecoResult_Release(This) (This)->lpVtbl->Release(This)
18509/*** IDispatch methods ***/
18510#define ISpeechRecoResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18511#define ISpeechRecoResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18512#define ISpeechRecoResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18513#define ISpeechRecoResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18514/*** ISpeechRecoResult methods ***/
18515#define ISpeechRecoResult_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
18516#define ISpeechRecoResult_get_Times(This,Times) (This)->lpVtbl->get_Times(This,Times)
18517#define ISpeechRecoResult_putref_AudioFormat(This,Format) (This)->lpVtbl->putref_AudioFormat(This,Format)
18518#define ISpeechRecoResult_get_AudioFormat(This,Format) (This)->lpVtbl->get_AudioFormat(This,Format)
18519#define ISpeechRecoResult_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
18520#define ISpeechRecoResult_Alternates(This,RequestCount,StartElement,Elements,Alternates) (This)->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates)
18521#define ISpeechRecoResult_Audio(This,StartElement,Elements,Stream) (This)->lpVtbl->Audio(This,StartElement,Elements,Stream)
18522#define ISpeechRecoResult_SpeakAudio(This,StartElement,Elements,Flags,StreamNumber) (This)->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber)
18523#define ISpeechRecoResult_SaveToMemory(This,ResultBlock) (This)->lpVtbl->SaveToMemory(This,ResultBlock)
18524#define ISpeechRecoResult_DiscardResultInfo(This,ValueTypes) (This)->lpVtbl->DiscardResultInfo(This,ValueTypes)
18525#else
18526/*** IUnknown methods ***/
18527static inline HRESULT ISpeechRecoResult_QueryInterface(ISpeechRecoResult* This,REFIID riid,void **ppvObject) {
18528 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18529}
18530static inline ULONG ISpeechRecoResult_AddRef(ISpeechRecoResult* This) {
18531 return This->lpVtbl->AddRef(This);
18532}
18533static inline ULONG ISpeechRecoResult_Release(ISpeechRecoResult* This) {
18534 return This->lpVtbl->Release(This);
18535}
18536/*** IDispatch methods ***/
18537static inline HRESULT ISpeechRecoResult_GetTypeInfoCount(ISpeechRecoResult* This,UINT *pctinfo) {
18538 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18539}
18540static inline HRESULT ISpeechRecoResult_GetTypeInfo(ISpeechRecoResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18541 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18542}
18543static inline HRESULT ISpeechRecoResult_GetIDsOfNames(ISpeechRecoResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18544 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18545}
18546static inline HRESULT ISpeechRecoResult_Invoke(ISpeechRecoResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18547 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18548}
18549/*** ISpeechRecoResult methods ***/
18550static inline HRESULT ISpeechRecoResult_get_RecoContext(ISpeechRecoResult* This,ISpeechRecoContext **RecoContext) {
18551 return This->lpVtbl->get_RecoContext(This,RecoContext);
18552}
18553static inline HRESULT ISpeechRecoResult_get_Times(ISpeechRecoResult* This,ISpeechRecoResultTimes **Times) {
18554 return This->lpVtbl->get_Times(This,Times);
18555}
18556static inline HRESULT ISpeechRecoResult_putref_AudioFormat(ISpeechRecoResult* This,ISpeechAudioFormat *Format) {
18557 return This->lpVtbl->putref_AudioFormat(This,Format);
18558}
18559static inline HRESULT ISpeechRecoResult_get_AudioFormat(ISpeechRecoResult* This,ISpeechAudioFormat **Format) {
18560 return This->lpVtbl->get_AudioFormat(This,Format);
18561}
18562static inline HRESULT ISpeechRecoResult_get_PhraseInfo(ISpeechRecoResult* This,ISpeechPhraseInfo **PhraseInfo) {
18563 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
18564}
18565static inline HRESULT ISpeechRecoResult_Alternates(ISpeechRecoResult* This,LONG RequestCount,LONG StartElement,LONG Elements,ISpeechPhraseAlternates **Alternates) {
18566 return This->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates);
18567}
18568static inline HRESULT ISpeechRecoResult_Audio(ISpeechRecoResult* This,LONG StartElement,LONG Elements,ISpeechMemoryStream **Stream) {
18569 return This->lpVtbl->Audio(This,StartElement,Elements,Stream);
18570}
18571static inline HRESULT ISpeechRecoResult_SpeakAudio(ISpeechRecoResult* This,LONG StartElement,LONG Elements,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
18572 return This->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber);
18573}
18574static inline HRESULT ISpeechRecoResult_SaveToMemory(ISpeechRecoResult* This,VARIANT *ResultBlock) {
18575 return This->lpVtbl->SaveToMemory(This,ResultBlock);
18576}
18577static inline HRESULT ISpeechRecoResult_DiscardResultInfo(ISpeechRecoResult* This,SpeechDiscardType ValueTypes) {
18578 return This->lpVtbl->DiscardResultInfo(This,ValueTypes);
18579}
18580#endif
18581#endif
18582
18583#endif
18584
18585
18586#endif /* __ISpeechRecoResult_INTERFACE_DEFINED__ */
18587
18588/*****************************************************************************
18589 * ISpeechXMLRecoResult interface
18590 */
18591#ifndef __ISpeechXMLRecoResult_INTERFACE_DEFINED__
18592#define __ISpeechXMLRecoResult_INTERFACE_DEFINED__
18593
18594DEFINE_GUID(IID_ISpeechXMLRecoResult, 0xaaec54af, 0x8f85, 0x4924, 0x94,0x4d, 0xb7,0x9d,0x39,0xd7,0x2e,0x19);
18595#if defined(__cplusplus) && !defined(CINTERFACE)
18596MIDL_INTERFACE("aaec54af-8f85-4924-944d-b79d39d72e19")
18597ISpeechXMLRecoResult : public ISpeechRecoResult
18598{
18599 virtual HRESULT STDMETHODCALLTYPE GetXMLResult(
18600 SPXMLRESULTOPTIONS Options,
18601 BSTR *pResult) = 0;
18602
18603 virtual HRESULT STDMETHODCALLTYPE GetXMLErrorInfo(
18604 LONG *LineNumber,
18605 BSTR *ScriptLine,
18606 BSTR *Source,
18607 BSTR *Description,
18608 LONG *ResultCode,
18609 VARIANT_BOOL *IsError) = 0;
18610
18611};
18612#ifdef __CRT_UUID_DECL
18613__CRT_UUID_DECL(ISpeechXMLRecoResult, 0xaaec54af, 0x8f85, 0x4924, 0x94,0x4d, 0xb7,0x9d,0x39,0xd7,0x2e,0x19)
18614#endif
18615#else
18616typedef struct ISpeechXMLRecoResultVtbl {
18617 BEGIN_INTERFACE
18618
18619 /*** IUnknown methods ***/
18620 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18621 ISpeechXMLRecoResult *This,
18622 REFIID riid,
18623 void **ppvObject);
18624
18625 ULONG (STDMETHODCALLTYPE *AddRef)(
18626 ISpeechXMLRecoResult *This);
18627
18628 ULONG (STDMETHODCALLTYPE *Release)(
18629 ISpeechXMLRecoResult *This);
18630
18631 /*** IDispatch methods ***/
18632 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18633 ISpeechXMLRecoResult *This,
18634 UINT *pctinfo);
18635
18636 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18637 ISpeechXMLRecoResult *This,
18638 UINT iTInfo,
18639 LCID lcid,
18640 ITypeInfo **ppTInfo);
18641
18642 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18643 ISpeechXMLRecoResult *This,
18644 REFIID riid,
18645 LPOLESTR *rgszNames,
18646 UINT cNames,
18647 LCID lcid,
18648 DISPID *rgDispId);
18649
18650 HRESULT (STDMETHODCALLTYPE *Invoke)(
18651 ISpeechXMLRecoResult *This,
18652 DISPID dispIdMember,
18653 REFIID riid,
18654 LCID lcid,
18655 WORD wFlags,
18656 DISPPARAMS *pDispParams,
18657 VARIANT *pVarResult,
18658 EXCEPINFO *pExcepInfo,
18659 UINT *puArgErr);
18660
18661 /*** ISpeechRecoResult methods ***/
18662 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
18663 ISpeechXMLRecoResult *This,
18664 ISpeechRecoContext **RecoContext);
18665
18666 HRESULT (STDMETHODCALLTYPE *get_Times)(
18667 ISpeechXMLRecoResult *This,
18668 ISpeechRecoResultTimes **Times);
18669
18670 HRESULT (STDMETHODCALLTYPE *putref_AudioFormat)(
18671 ISpeechXMLRecoResult *This,
18672 ISpeechAudioFormat *Format);
18673
18674 HRESULT (STDMETHODCALLTYPE *get_AudioFormat)(
18675 ISpeechXMLRecoResult *This,
18676 ISpeechAudioFormat **Format);
18677
18678 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
18679 ISpeechXMLRecoResult *This,
18680 ISpeechPhraseInfo **PhraseInfo);
18681
18682 HRESULT (STDMETHODCALLTYPE *Alternates)(
18683 ISpeechXMLRecoResult *This,
18684 LONG RequestCount,
18685 LONG StartElement,
18686 LONG Elements,
18687 ISpeechPhraseAlternates **Alternates);
18688
18689 HRESULT (STDMETHODCALLTYPE *Audio)(
18690 ISpeechXMLRecoResult *This,
18691 LONG StartElement,
18692 LONG Elements,
18693 ISpeechMemoryStream **Stream);
18694
18695 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
18696 ISpeechXMLRecoResult *This,
18697 LONG StartElement,
18698 LONG Elements,
18699 SpeechVoiceSpeakFlags Flags,
18700 LONG *StreamNumber);
18701
18702 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
18703 ISpeechXMLRecoResult *This,
18704 VARIANT *ResultBlock);
18705
18706 HRESULT (STDMETHODCALLTYPE *DiscardResultInfo)(
18707 ISpeechXMLRecoResult *This,
18708 SpeechDiscardType ValueTypes);
18709
18710 /*** ISpeechXMLRecoResult methods ***/
18711 HRESULT (STDMETHODCALLTYPE *GetXMLResult)(
18712 ISpeechXMLRecoResult *This,
18713 SPXMLRESULTOPTIONS Options,
18714 BSTR *pResult);
18715
18716 HRESULT (STDMETHODCALLTYPE *GetXMLErrorInfo)(
18717 ISpeechXMLRecoResult *This,
18718 LONG *LineNumber,
18719 BSTR *ScriptLine,
18720 BSTR *Source,
18721 BSTR *Description,
18722 LONG *ResultCode,
18723 VARIANT_BOOL *IsError);
18724
18725 END_INTERFACE
18726} ISpeechXMLRecoResultVtbl;
18727
18728interface ISpeechXMLRecoResult {
18729 CONST_VTBL ISpeechXMLRecoResultVtbl* lpVtbl;
18730};
18731
18732#ifdef COBJMACROS
18733#ifndef WIDL_C_INLINE_WRAPPERS
18734/*** IUnknown methods ***/
18735#define ISpeechXMLRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18736#define ISpeechXMLRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
18737#define ISpeechXMLRecoResult_Release(This) (This)->lpVtbl->Release(This)
18738/*** IDispatch methods ***/
18739#define ISpeechXMLRecoResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18740#define ISpeechXMLRecoResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18741#define ISpeechXMLRecoResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18742#define ISpeechXMLRecoResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18743/*** ISpeechRecoResult methods ***/
18744#define ISpeechXMLRecoResult_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
18745#define ISpeechXMLRecoResult_get_Times(This,Times) (This)->lpVtbl->get_Times(This,Times)
18746#define ISpeechXMLRecoResult_putref_AudioFormat(This,Format) (This)->lpVtbl->putref_AudioFormat(This,Format)
18747#define ISpeechXMLRecoResult_get_AudioFormat(This,Format) (This)->lpVtbl->get_AudioFormat(This,Format)
18748#define ISpeechXMLRecoResult_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
18749#define ISpeechXMLRecoResult_Alternates(This,RequestCount,StartElement,Elements,Alternates) (This)->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates)
18750#define ISpeechXMLRecoResult_Audio(This,StartElement,Elements,Stream) (This)->lpVtbl->Audio(This,StartElement,Elements,Stream)
18751#define ISpeechXMLRecoResult_SpeakAudio(This,StartElement,Elements,Flags,StreamNumber) (This)->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber)
18752#define ISpeechXMLRecoResult_SaveToMemory(This,ResultBlock) (This)->lpVtbl->SaveToMemory(This,ResultBlock)
18753#define ISpeechXMLRecoResult_DiscardResultInfo(This,ValueTypes) (This)->lpVtbl->DiscardResultInfo(This,ValueTypes)
18754/*** ISpeechXMLRecoResult methods ***/
18755#define ISpeechXMLRecoResult_GetXMLResult(This,Options,pResult) (This)->lpVtbl->GetXMLResult(This,Options,pResult)
18756#define ISpeechXMLRecoResult_GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError) (This)->lpVtbl->GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError)
18757#else
18758/*** IUnknown methods ***/
18759static inline HRESULT ISpeechXMLRecoResult_QueryInterface(ISpeechXMLRecoResult* This,REFIID riid,void **ppvObject) {
18760 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18761}
18762static inline ULONG ISpeechXMLRecoResult_AddRef(ISpeechXMLRecoResult* This) {
18763 return This->lpVtbl->AddRef(This);
18764}
18765static inline ULONG ISpeechXMLRecoResult_Release(ISpeechXMLRecoResult* This) {
18766 return This->lpVtbl->Release(This);
18767}
18768/*** IDispatch methods ***/
18769static inline HRESULT ISpeechXMLRecoResult_GetTypeInfoCount(ISpeechXMLRecoResult* This,UINT *pctinfo) {
18770 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18771}
18772static inline HRESULT ISpeechXMLRecoResult_GetTypeInfo(ISpeechXMLRecoResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18773 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18774}
18775static inline HRESULT ISpeechXMLRecoResult_GetIDsOfNames(ISpeechXMLRecoResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18776 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18777}
18778static inline HRESULT ISpeechXMLRecoResult_Invoke(ISpeechXMLRecoResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18779 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18780}
18781/*** ISpeechRecoResult methods ***/
18782static inline HRESULT ISpeechXMLRecoResult_get_RecoContext(ISpeechXMLRecoResult* This,ISpeechRecoContext **RecoContext) {
18783 return This->lpVtbl->get_RecoContext(This,RecoContext);
18784}
18785static inline HRESULT ISpeechXMLRecoResult_get_Times(ISpeechXMLRecoResult* This,ISpeechRecoResultTimes **Times) {
18786 return This->lpVtbl->get_Times(This,Times);
18787}
18788static inline HRESULT ISpeechXMLRecoResult_putref_AudioFormat(ISpeechXMLRecoResult* This,ISpeechAudioFormat *Format) {
18789 return This->lpVtbl->putref_AudioFormat(This,Format);
18790}
18791static inline HRESULT ISpeechXMLRecoResult_get_AudioFormat(ISpeechXMLRecoResult* This,ISpeechAudioFormat **Format) {
18792 return This->lpVtbl->get_AudioFormat(This,Format);
18793}
18794static inline HRESULT ISpeechXMLRecoResult_get_PhraseInfo(ISpeechXMLRecoResult* This,ISpeechPhraseInfo **PhraseInfo) {
18795 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
18796}
18797static inline HRESULT ISpeechXMLRecoResult_Alternates(ISpeechXMLRecoResult* This,LONG RequestCount,LONG StartElement,LONG Elements,ISpeechPhraseAlternates **Alternates) {
18798 return This->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates);
18799}
18800static inline HRESULT ISpeechXMLRecoResult_Audio(ISpeechXMLRecoResult* This,LONG StartElement,LONG Elements,ISpeechMemoryStream **Stream) {
18801 return This->lpVtbl->Audio(This,StartElement,Elements,Stream);
18802}
18803static inline HRESULT ISpeechXMLRecoResult_SpeakAudio(ISpeechXMLRecoResult* This,LONG StartElement,LONG Elements,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
18804 return This->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber);
18805}
18806static inline HRESULT ISpeechXMLRecoResult_SaveToMemory(ISpeechXMLRecoResult* This,VARIANT *ResultBlock) {
18807 return This->lpVtbl->SaveToMemory(This,ResultBlock);
18808}
18809static inline HRESULT ISpeechXMLRecoResult_DiscardResultInfo(ISpeechXMLRecoResult* This,SpeechDiscardType ValueTypes) {
18810 return This->lpVtbl->DiscardResultInfo(This,ValueTypes);
18811}
18812/*** ISpeechXMLRecoResult methods ***/
18813static inline HRESULT ISpeechXMLRecoResult_GetXMLResult(ISpeechXMLRecoResult* This,SPXMLRESULTOPTIONS Options,BSTR *pResult) {
18814 return This->lpVtbl->GetXMLResult(This,Options,pResult);
18815}
18816static inline HRESULT ISpeechXMLRecoResult_GetXMLErrorInfo(ISpeechXMLRecoResult* This,LONG *LineNumber,BSTR *ScriptLine,BSTR *Source,BSTR *Description,LONG *ResultCode,VARIANT_BOOL *IsError) {
18817 return This->lpVtbl->GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError);
18818}
18819#endif
18820#endif
18821
18822#endif
18823
18824
18825#endif /* __ISpeechXMLRecoResult_INTERFACE_DEFINED__ */
18826
18827/*****************************************************************************
18828 * ISpeechRecoResult2 interface
18829 */
18830#ifndef __ISpeechRecoResult2_INTERFACE_DEFINED__
18831#define __ISpeechRecoResult2_INTERFACE_DEFINED__
18832
18833DEFINE_GUID(IID_ISpeechRecoResult2, 0x8e0a246d, 0xd3c8, 0x45de, 0x86,0x57, 0x04,0x29,0x0c,0x45,0x8c,0x3c);
18834#if defined(__cplusplus) && !defined(CINTERFACE)
18835MIDL_INTERFACE("8e0a246d-d3c8-45de-8657-04290c458c3c")
18836ISpeechRecoResult2 : public ISpeechRecoResult
18837{
18838 virtual HRESULT STDMETHODCALLTYPE SetTextFeedback(
18839 BSTR Feedback,
18840 VARIANT_BOOL WasSuccessful) = 0;
18841
18842};
18843#ifdef __CRT_UUID_DECL
18844__CRT_UUID_DECL(ISpeechRecoResult2, 0x8e0a246d, 0xd3c8, 0x45de, 0x86,0x57, 0x04,0x29,0x0c,0x45,0x8c,0x3c)
18845#endif
18846#else
18847typedef struct ISpeechRecoResult2Vtbl {
18848 BEGIN_INTERFACE
18849
18850 /*** IUnknown methods ***/
18851 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18852 ISpeechRecoResult2 *This,
18853 REFIID riid,
18854 void **ppvObject);
18855
18856 ULONG (STDMETHODCALLTYPE *AddRef)(
18857 ISpeechRecoResult2 *This);
18858
18859 ULONG (STDMETHODCALLTYPE *Release)(
18860 ISpeechRecoResult2 *This);
18861
18862 /*** IDispatch methods ***/
18863 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18864 ISpeechRecoResult2 *This,
18865 UINT *pctinfo);
18866
18867 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18868 ISpeechRecoResult2 *This,
18869 UINT iTInfo,
18870 LCID lcid,
18871 ITypeInfo **ppTInfo);
18872
18873 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18874 ISpeechRecoResult2 *This,
18875 REFIID riid,
18876 LPOLESTR *rgszNames,
18877 UINT cNames,
18878 LCID lcid,
18879 DISPID *rgDispId);
18880
18881 HRESULT (STDMETHODCALLTYPE *Invoke)(
18882 ISpeechRecoResult2 *This,
18883 DISPID dispIdMember,
18884 REFIID riid,
18885 LCID lcid,
18886 WORD wFlags,
18887 DISPPARAMS *pDispParams,
18888 VARIANT *pVarResult,
18889 EXCEPINFO *pExcepInfo,
18890 UINT *puArgErr);
18891
18892 /*** ISpeechRecoResult methods ***/
18893 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
18894 ISpeechRecoResult2 *This,
18895 ISpeechRecoContext **RecoContext);
18896
18897 HRESULT (STDMETHODCALLTYPE *get_Times)(
18898 ISpeechRecoResult2 *This,
18899 ISpeechRecoResultTimes **Times);
18900
18901 HRESULT (STDMETHODCALLTYPE *putref_AudioFormat)(
18902 ISpeechRecoResult2 *This,
18903 ISpeechAudioFormat *Format);
18904
18905 HRESULT (STDMETHODCALLTYPE *get_AudioFormat)(
18906 ISpeechRecoResult2 *This,
18907 ISpeechAudioFormat **Format);
18908
18909 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
18910 ISpeechRecoResult2 *This,
18911 ISpeechPhraseInfo **PhraseInfo);
18912
18913 HRESULT (STDMETHODCALLTYPE *Alternates)(
18914 ISpeechRecoResult2 *This,
18915 LONG RequestCount,
18916 LONG StartElement,
18917 LONG Elements,
18918 ISpeechPhraseAlternates **Alternates);
18919
18920 HRESULT (STDMETHODCALLTYPE *Audio)(
18921 ISpeechRecoResult2 *This,
18922 LONG StartElement,
18923 LONG Elements,
18924 ISpeechMemoryStream **Stream);
18925
18926 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
18927 ISpeechRecoResult2 *This,
18928 LONG StartElement,
18929 LONG Elements,
18930 SpeechVoiceSpeakFlags Flags,
18931 LONG *StreamNumber);
18932
18933 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
18934 ISpeechRecoResult2 *This,
18935 VARIANT *ResultBlock);
18936
18937 HRESULT (STDMETHODCALLTYPE *DiscardResultInfo)(
18938 ISpeechRecoResult2 *This,
18939 SpeechDiscardType ValueTypes);
18940
18941 /*** ISpeechRecoResult2 methods ***/
18942 HRESULT (STDMETHODCALLTYPE *SetTextFeedback)(
18943 ISpeechRecoResult2 *This,
18944 BSTR Feedback,
18945 VARIANT_BOOL WasSuccessful);
18946
18947 END_INTERFACE
18948} ISpeechRecoResult2Vtbl;
18949
18950interface ISpeechRecoResult2 {
18951 CONST_VTBL ISpeechRecoResult2Vtbl* lpVtbl;
18952};
18953
18954#ifdef COBJMACROS
18955#ifndef WIDL_C_INLINE_WRAPPERS
18956/*** IUnknown methods ***/
18957#define ISpeechRecoResult2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18958#define ISpeechRecoResult2_AddRef(This) (This)->lpVtbl->AddRef(This)
18959#define ISpeechRecoResult2_Release(This) (This)->lpVtbl->Release(This)
18960/*** IDispatch methods ***/
18961#define ISpeechRecoResult2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18962#define ISpeechRecoResult2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18963#define ISpeechRecoResult2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18964#define ISpeechRecoResult2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18965/*** ISpeechRecoResult methods ***/
18966#define ISpeechRecoResult2_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
18967#define ISpeechRecoResult2_get_Times(This,Times) (This)->lpVtbl->get_Times(This,Times)
18968#define ISpeechRecoResult2_putref_AudioFormat(This,Format) (This)->lpVtbl->putref_AudioFormat(This,Format)
18969#define ISpeechRecoResult2_get_AudioFormat(This,Format) (This)->lpVtbl->get_AudioFormat(This,Format)
18970#define ISpeechRecoResult2_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
18971#define ISpeechRecoResult2_Alternates(This,RequestCount,StartElement,Elements,Alternates) (This)->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates)
18972#define ISpeechRecoResult2_Audio(This,StartElement,Elements,Stream) (This)->lpVtbl->Audio(This,StartElement,Elements,Stream)
18973#define ISpeechRecoResult2_SpeakAudio(This,StartElement,Elements,Flags,StreamNumber) (This)->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber)
18974#define ISpeechRecoResult2_SaveToMemory(This,ResultBlock) (This)->lpVtbl->SaveToMemory(This,ResultBlock)
18975#define ISpeechRecoResult2_DiscardResultInfo(This,ValueTypes) (This)->lpVtbl->DiscardResultInfo(This,ValueTypes)
18976/*** ISpeechRecoResult2 methods ***/
18977#define ISpeechRecoResult2_SetTextFeedback(This,Feedback,WasSuccessful) (This)->lpVtbl->SetTextFeedback(This,Feedback,WasSuccessful)
18978#else
18979/*** IUnknown methods ***/
18980static inline HRESULT ISpeechRecoResult2_QueryInterface(ISpeechRecoResult2* This,REFIID riid,void **ppvObject) {
18981 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18982}
18983static inline ULONG ISpeechRecoResult2_AddRef(ISpeechRecoResult2* This) {
18984 return This->lpVtbl->AddRef(This);
18985}
18986static inline ULONG ISpeechRecoResult2_Release(ISpeechRecoResult2* This) {
18987 return This->lpVtbl->Release(This);
18988}
18989/*** IDispatch methods ***/
18990static inline HRESULT ISpeechRecoResult2_GetTypeInfoCount(ISpeechRecoResult2* This,UINT *pctinfo) {
18991 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18992}
18993static inline HRESULT ISpeechRecoResult2_GetTypeInfo(ISpeechRecoResult2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18994 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18995}
18996static inline HRESULT ISpeechRecoResult2_GetIDsOfNames(ISpeechRecoResult2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18997 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18998}
18999static inline HRESULT ISpeechRecoResult2_Invoke(ISpeechRecoResult2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19000 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19001}
19002/*** ISpeechRecoResult methods ***/
19003static inline HRESULT ISpeechRecoResult2_get_RecoContext(ISpeechRecoResult2* This,ISpeechRecoContext **RecoContext) {
19004 return This->lpVtbl->get_RecoContext(This,RecoContext);
19005}
19006static inline HRESULT ISpeechRecoResult2_get_Times(ISpeechRecoResult2* This,ISpeechRecoResultTimes **Times) {
19007 return This->lpVtbl->get_Times(This,Times);
19008}
19009static inline HRESULT ISpeechRecoResult2_putref_AudioFormat(ISpeechRecoResult2* This,ISpeechAudioFormat *Format) {
19010 return This->lpVtbl->putref_AudioFormat(This,Format);
19011}
19012static inline HRESULT ISpeechRecoResult2_get_AudioFormat(ISpeechRecoResult2* This,ISpeechAudioFormat **Format) {
19013 return This->lpVtbl->get_AudioFormat(This,Format);
19014}
19015static inline HRESULT ISpeechRecoResult2_get_PhraseInfo(ISpeechRecoResult2* This,ISpeechPhraseInfo **PhraseInfo) {
19016 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
19017}
19018static inline HRESULT ISpeechRecoResult2_Alternates(ISpeechRecoResult2* This,LONG RequestCount,LONG StartElement,LONG Elements,ISpeechPhraseAlternates **Alternates) {
19019 return This->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates);
19020}
19021static inline HRESULT ISpeechRecoResult2_Audio(ISpeechRecoResult2* This,LONG StartElement,LONG Elements,ISpeechMemoryStream **Stream) {
19022 return This->lpVtbl->Audio(This,StartElement,Elements,Stream);
19023}
19024static inline HRESULT ISpeechRecoResult2_SpeakAudio(ISpeechRecoResult2* This,LONG StartElement,LONG Elements,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
19025 return This->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber);
19026}
19027static inline HRESULT ISpeechRecoResult2_SaveToMemory(ISpeechRecoResult2* This,VARIANT *ResultBlock) {
19028 return This->lpVtbl->SaveToMemory(This,ResultBlock);
19029}
19030static inline HRESULT ISpeechRecoResult2_DiscardResultInfo(ISpeechRecoResult2* This,SpeechDiscardType ValueTypes) {
19031 return This->lpVtbl->DiscardResultInfo(This,ValueTypes);
19032}
19033/*** ISpeechRecoResult2 methods ***/
19034static inline HRESULT ISpeechRecoResult2_SetTextFeedback(ISpeechRecoResult2* This,BSTR Feedback,VARIANT_BOOL WasSuccessful) {
19035 return This->lpVtbl->SetTextFeedback(This,Feedback,WasSuccessful);
19036}
19037#endif
19038#endif
19039
19040#endif
19041
19042
19043#endif /* __ISpeechRecoResult2_INTERFACE_DEFINED__ */
19044
19045/*****************************************************************************
19046 * ISpeechRecoResultDispatch interface
19047 */
19048#ifndef __ISpeechRecoResultDispatch_INTERFACE_DEFINED__
19049#define __ISpeechRecoResultDispatch_INTERFACE_DEFINED__
19050
19051DEFINE_GUID(IID_ISpeechRecoResultDispatch, 0x6d60eb64, 0xaced, 0x40a6, 0xbb,0xf3, 0x4e,0x55,0x7f,0x71,0xde,0xe2);
19052#if defined(__cplusplus) && !defined(CINTERFACE)
19053MIDL_INTERFACE("6d60eb64-aced-40a6-bbf3-4e557f71dee2")
19054ISpeechRecoResultDispatch : public IDispatch
19055{
19056 virtual HRESULT STDMETHODCALLTYPE get_RecoContext(
19057 ISpeechRecoContext **RecoContext) = 0;
19058
19059 virtual HRESULT STDMETHODCALLTYPE get_Times(
19060 ISpeechRecoResultTimes **Times) = 0;
19061
19062 virtual HRESULT STDMETHODCALLTYPE putref_AudioFormat(
19063 ISpeechAudioFormat *Format) = 0;
19064
19065 virtual HRESULT STDMETHODCALLTYPE get_AudioFormat(
19066 ISpeechAudioFormat **Format) = 0;
19067
19068 virtual HRESULT STDMETHODCALLTYPE get_PhraseInfo(
19069 ISpeechPhraseInfo **PhraseInfo) = 0;
19070
19071 virtual HRESULT STDMETHODCALLTYPE Alternates(
19072 LONG RequestCount,
19073 LONG StartElement,
19074 LONG Elements,
19075 ISpeechPhraseAlternates **Alternates) = 0;
19076
19077 virtual HRESULT STDMETHODCALLTYPE Audio(
19078 LONG StartElement,
19079 LONG Elements,
19080 ISpeechMemoryStream **Stream) = 0;
19081
19082 virtual HRESULT STDMETHODCALLTYPE SpeakAudio(
19083 LONG StartElement,
19084 LONG Elements,
19085 SpeechVoiceSpeakFlags Flags,
19086 LONG *StreamNumber) = 0;
19087
19088 virtual HRESULT STDMETHODCALLTYPE SaveToMemory(
19089 VARIANT *ResultBlock) = 0;
19090
19091 virtual HRESULT STDMETHODCALLTYPE DiscardResultInfo(
19092 SpeechDiscardType ValueTypes) = 0;
19093
19094 virtual HRESULT STDMETHODCALLTYPE GetXMLResult(
19095 SPXMLRESULTOPTIONS Options,
19096 BSTR *pResult) = 0;
19097
19098 virtual HRESULT STDMETHODCALLTYPE GetXMLErrorInfo(
19099 LONG *LineNumber,
19100 BSTR *ScriptLine,
19101 BSTR *Source,
19102 BSTR *Description,
19103 HRESULT *ResultCode,
19104 VARIANT_BOOL *IsError) = 0;
19105
19106 virtual HRESULT STDMETHODCALLTYPE SetTextFeedback(
19107 BSTR Feedback,
19108 VARIANT_BOOL WasSuccessful) = 0;
19109
19110};
19111#ifdef __CRT_UUID_DECL
19112__CRT_UUID_DECL(ISpeechRecoResultDispatch, 0x6d60eb64, 0xaced, 0x40a6, 0xbb,0xf3, 0x4e,0x55,0x7f,0x71,0xde,0xe2)
19113#endif
19114#else
19115typedef struct ISpeechRecoResultDispatchVtbl {
19116 BEGIN_INTERFACE
19117
19118 /*** IUnknown methods ***/
19119 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19120 ISpeechRecoResultDispatch *This,
19121 REFIID riid,
19122 void **ppvObject);
19123
19124 ULONG (STDMETHODCALLTYPE *AddRef)(
19125 ISpeechRecoResultDispatch *This);
19126
19127 ULONG (STDMETHODCALLTYPE *Release)(
19128 ISpeechRecoResultDispatch *This);
19129
19130 /*** IDispatch methods ***/
19131 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19132 ISpeechRecoResultDispatch *This,
19133 UINT *pctinfo);
19134
19135 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19136 ISpeechRecoResultDispatch *This,
19137 UINT iTInfo,
19138 LCID lcid,
19139 ITypeInfo **ppTInfo);
19140
19141 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19142 ISpeechRecoResultDispatch *This,
19143 REFIID riid,
19144 LPOLESTR *rgszNames,
19145 UINT cNames,
19146 LCID lcid,
19147 DISPID *rgDispId);
19148
19149 HRESULT (STDMETHODCALLTYPE *Invoke)(
19150 ISpeechRecoResultDispatch *This,
19151 DISPID dispIdMember,
19152 REFIID riid,
19153 LCID lcid,
19154 WORD wFlags,
19155 DISPPARAMS *pDispParams,
19156 VARIANT *pVarResult,
19157 EXCEPINFO *pExcepInfo,
19158 UINT *puArgErr);
19159
19160 /*** ISpeechRecoResultDispatch methods ***/
19161 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
19162 ISpeechRecoResultDispatch *This,
19163 ISpeechRecoContext **RecoContext);
19164
19165 HRESULT (STDMETHODCALLTYPE *get_Times)(
19166 ISpeechRecoResultDispatch *This,
19167 ISpeechRecoResultTimes **Times);
19168
19169 HRESULT (STDMETHODCALLTYPE *putref_AudioFormat)(
19170 ISpeechRecoResultDispatch *This,
19171 ISpeechAudioFormat *Format);
19172
19173 HRESULT (STDMETHODCALLTYPE *get_AudioFormat)(
19174 ISpeechRecoResultDispatch *This,
19175 ISpeechAudioFormat **Format);
19176
19177 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
19178 ISpeechRecoResultDispatch *This,
19179 ISpeechPhraseInfo **PhraseInfo);
19180
19181 HRESULT (STDMETHODCALLTYPE *Alternates)(
19182 ISpeechRecoResultDispatch *This,
19183 LONG RequestCount,
19184 LONG StartElement,
19185 LONG Elements,
19186 ISpeechPhraseAlternates **Alternates);
19187
19188 HRESULT (STDMETHODCALLTYPE *Audio)(
19189 ISpeechRecoResultDispatch *This,
19190 LONG StartElement,
19191 LONG Elements,
19192 ISpeechMemoryStream **Stream);
19193
19194 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
19195 ISpeechRecoResultDispatch *This,
19196 LONG StartElement,
19197 LONG Elements,
19198 SpeechVoiceSpeakFlags Flags,
19199 LONG *StreamNumber);
19200
19201 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
19202 ISpeechRecoResultDispatch *This,
19203 VARIANT *ResultBlock);
19204
19205 HRESULT (STDMETHODCALLTYPE *DiscardResultInfo)(
19206 ISpeechRecoResultDispatch *This,
19207 SpeechDiscardType ValueTypes);
19208
19209 HRESULT (STDMETHODCALLTYPE *GetXMLResult)(
19210 ISpeechRecoResultDispatch *This,
19211 SPXMLRESULTOPTIONS Options,
19212 BSTR *pResult);
19213
19214 HRESULT (STDMETHODCALLTYPE *GetXMLErrorInfo)(
19215 ISpeechRecoResultDispatch *This,
19216 LONG *LineNumber,
19217 BSTR *ScriptLine,
19218 BSTR *Source,
19219 BSTR *Description,
19220 HRESULT *ResultCode,
19221 VARIANT_BOOL *IsError);
19222
19223 HRESULT (STDMETHODCALLTYPE *SetTextFeedback)(
19224 ISpeechRecoResultDispatch *This,
19225 BSTR Feedback,
19226 VARIANT_BOOL WasSuccessful);
19227
19228 END_INTERFACE
19229} ISpeechRecoResultDispatchVtbl;
19230
19231interface ISpeechRecoResultDispatch {
19232 CONST_VTBL ISpeechRecoResultDispatchVtbl* lpVtbl;
19233};
19234
19235#ifdef COBJMACROS
19236#ifndef WIDL_C_INLINE_WRAPPERS
19237/*** IUnknown methods ***/
19238#define ISpeechRecoResultDispatch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19239#define ISpeechRecoResultDispatch_AddRef(This) (This)->lpVtbl->AddRef(This)
19240#define ISpeechRecoResultDispatch_Release(This) (This)->lpVtbl->Release(This)
19241/*** IDispatch methods ***/
19242#define ISpeechRecoResultDispatch_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19243#define ISpeechRecoResultDispatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19244#define ISpeechRecoResultDispatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19245#define ISpeechRecoResultDispatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19246/*** ISpeechRecoResultDispatch methods ***/
19247#define ISpeechRecoResultDispatch_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
19248#define ISpeechRecoResultDispatch_get_Times(This,Times) (This)->lpVtbl->get_Times(This,Times)
19249#define ISpeechRecoResultDispatch_putref_AudioFormat(This,Format) (This)->lpVtbl->putref_AudioFormat(This,Format)
19250#define ISpeechRecoResultDispatch_get_AudioFormat(This,Format) (This)->lpVtbl->get_AudioFormat(This,Format)
19251#define ISpeechRecoResultDispatch_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
19252#define ISpeechRecoResultDispatch_Alternates(This,RequestCount,StartElement,Elements,Alternates) (This)->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates)
19253#define ISpeechRecoResultDispatch_Audio(This,StartElement,Elements,Stream) (This)->lpVtbl->Audio(This,StartElement,Elements,Stream)
19254#define ISpeechRecoResultDispatch_SpeakAudio(This,StartElement,Elements,Flags,StreamNumber) (This)->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber)
19255#define ISpeechRecoResultDispatch_SaveToMemory(This,ResultBlock) (This)->lpVtbl->SaveToMemory(This,ResultBlock)
19256#define ISpeechRecoResultDispatch_DiscardResultInfo(This,ValueTypes) (This)->lpVtbl->DiscardResultInfo(This,ValueTypes)
19257#define ISpeechRecoResultDispatch_GetXMLResult(This,Options,pResult) (This)->lpVtbl->GetXMLResult(This,Options,pResult)
19258#define ISpeechRecoResultDispatch_GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError) (This)->lpVtbl->GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError)
19259#define ISpeechRecoResultDispatch_SetTextFeedback(This,Feedback,WasSuccessful) (This)->lpVtbl->SetTextFeedback(This,Feedback,WasSuccessful)
19260#else
19261/*** IUnknown methods ***/
19262static inline HRESULT ISpeechRecoResultDispatch_QueryInterface(ISpeechRecoResultDispatch* This,REFIID riid,void **ppvObject) {
19263 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19264}
19265static inline ULONG ISpeechRecoResultDispatch_AddRef(ISpeechRecoResultDispatch* This) {
19266 return This->lpVtbl->AddRef(This);
19267}
19268static inline ULONG ISpeechRecoResultDispatch_Release(ISpeechRecoResultDispatch* This) {
19269 return This->lpVtbl->Release(This);
19270}
19271/*** IDispatch methods ***/
19272static inline HRESULT ISpeechRecoResultDispatch_GetTypeInfoCount(ISpeechRecoResultDispatch* This,UINT *pctinfo) {
19273 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19274}
19275static inline HRESULT ISpeechRecoResultDispatch_GetTypeInfo(ISpeechRecoResultDispatch* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19276 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19277}
19278static inline HRESULT ISpeechRecoResultDispatch_GetIDsOfNames(ISpeechRecoResultDispatch* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19279 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19280}
19281static inline HRESULT ISpeechRecoResultDispatch_Invoke(ISpeechRecoResultDispatch* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19282 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19283}
19284/*** ISpeechRecoResultDispatch methods ***/
19285static inline HRESULT ISpeechRecoResultDispatch_get_RecoContext(ISpeechRecoResultDispatch* This,ISpeechRecoContext **RecoContext) {
19286 return This->lpVtbl->get_RecoContext(This,RecoContext);
19287}
19288static inline HRESULT ISpeechRecoResultDispatch_get_Times(ISpeechRecoResultDispatch* This,ISpeechRecoResultTimes **Times) {
19289 return This->lpVtbl->get_Times(This,Times);
19290}
19291static inline HRESULT ISpeechRecoResultDispatch_putref_AudioFormat(ISpeechRecoResultDispatch* This,ISpeechAudioFormat *Format) {
19292 return This->lpVtbl->putref_AudioFormat(This,Format);
19293}
19294static inline HRESULT ISpeechRecoResultDispatch_get_AudioFormat(ISpeechRecoResultDispatch* This,ISpeechAudioFormat **Format) {
19295 return This->lpVtbl->get_AudioFormat(This,Format);
19296}
19297static inline HRESULT ISpeechRecoResultDispatch_get_PhraseInfo(ISpeechRecoResultDispatch* This,ISpeechPhraseInfo **PhraseInfo) {
19298 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
19299}
19300static inline HRESULT ISpeechRecoResultDispatch_Alternates(ISpeechRecoResultDispatch* This,LONG RequestCount,LONG StartElement,LONG Elements,ISpeechPhraseAlternates **Alternates) {
19301 return This->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates);
19302}
19303static inline HRESULT ISpeechRecoResultDispatch_Audio(ISpeechRecoResultDispatch* This,LONG StartElement,LONG Elements,ISpeechMemoryStream **Stream) {
19304 return This->lpVtbl->Audio(This,StartElement,Elements,Stream);
19305}
19306static inline HRESULT ISpeechRecoResultDispatch_SpeakAudio(ISpeechRecoResultDispatch* This,LONG StartElement,LONG Elements,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
19307 return This->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber);
19308}
19309static inline HRESULT ISpeechRecoResultDispatch_SaveToMemory(ISpeechRecoResultDispatch* This,VARIANT *ResultBlock) {
19310 return This->lpVtbl->SaveToMemory(This,ResultBlock);
19311}
19312static inline HRESULT ISpeechRecoResultDispatch_DiscardResultInfo(ISpeechRecoResultDispatch* This,SpeechDiscardType ValueTypes) {
19313 return This->lpVtbl->DiscardResultInfo(This,ValueTypes);
19314}
19315static inline HRESULT ISpeechRecoResultDispatch_GetXMLResult(ISpeechRecoResultDispatch* This,SPXMLRESULTOPTIONS Options,BSTR *pResult) {
19316 return This->lpVtbl->GetXMLResult(This,Options,pResult);
19317}
19318static inline HRESULT ISpeechRecoResultDispatch_GetXMLErrorInfo(ISpeechRecoResultDispatch* This,LONG *LineNumber,BSTR *ScriptLine,BSTR *Source,BSTR *Description,HRESULT *ResultCode,VARIANT_BOOL *IsError) {
19319 return This->lpVtbl->GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError);
19320}
19321static inline HRESULT ISpeechRecoResultDispatch_SetTextFeedback(ISpeechRecoResultDispatch* This,BSTR Feedback,VARIANT_BOOL WasSuccessful) {
19322 return This->lpVtbl->SetTextFeedback(This,Feedback,WasSuccessful);
19323}
19324#endif
19325#endif
19326
19327#endif
19328
19329
19330#endif /* __ISpeechRecoResultDispatch_INTERFACE_DEFINED__ */
19331
19332/*****************************************************************************
19333 * ISpeechPhraseInfoBuilder interface
19334 */
19335#ifndef __ISpeechPhraseInfoBuilder_INTERFACE_DEFINED__
19336#define __ISpeechPhraseInfoBuilder_INTERFACE_DEFINED__
19337
19338DEFINE_GUID(IID_ISpeechPhraseInfoBuilder, 0x3b151836, 0xdf3a, 0x4e0a, 0x84,0x6c, 0xd2,0xad,0xc9,0x33,0x43,0x33);
19339#if defined(__cplusplus) && !defined(CINTERFACE)
19340MIDL_INTERFACE("3b151836-df3a-4e0a-846c-d2adc9334333")
19341ISpeechPhraseInfoBuilder : public IDispatch
19342{
19343 virtual HRESULT STDMETHODCALLTYPE RestorePhraseFromMemory(
19344 VARIANT *PhraseInMemory,
19345 ISpeechPhraseInfo **PhraseInfo) = 0;
19346
19347};
19348#ifdef __CRT_UUID_DECL
19349__CRT_UUID_DECL(ISpeechPhraseInfoBuilder, 0x3b151836, 0xdf3a, 0x4e0a, 0x84,0x6c, 0xd2,0xad,0xc9,0x33,0x43,0x33)
19350#endif
19351#else
19352typedef struct ISpeechPhraseInfoBuilderVtbl {
19353 BEGIN_INTERFACE
19354
19355 /*** IUnknown methods ***/
19356 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19357 ISpeechPhraseInfoBuilder *This,
19358 REFIID riid,
19359 void **ppvObject);
19360
19361 ULONG (STDMETHODCALLTYPE *AddRef)(
19362 ISpeechPhraseInfoBuilder *This);
19363
19364 ULONG (STDMETHODCALLTYPE *Release)(
19365 ISpeechPhraseInfoBuilder *This);
19366
19367 /*** IDispatch methods ***/
19368 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19369 ISpeechPhraseInfoBuilder *This,
19370 UINT *pctinfo);
19371
19372 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19373 ISpeechPhraseInfoBuilder *This,
19374 UINT iTInfo,
19375 LCID lcid,
19376 ITypeInfo **ppTInfo);
19377
19378 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19379 ISpeechPhraseInfoBuilder *This,
19380 REFIID riid,
19381 LPOLESTR *rgszNames,
19382 UINT cNames,
19383 LCID lcid,
19384 DISPID *rgDispId);
19385
19386 HRESULT (STDMETHODCALLTYPE *Invoke)(
19387 ISpeechPhraseInfoBuilder *This,
19388 DISPID dispIdMember,
19389 REFIID riid,
19390 LCID lcid,
19391 WORD wFlags,
19392 DISPPARAMS *pDispParams,
19393 VARIANT *pVarResult,
19394 EXCEPINFO *pExcepInfo,
19395 UINT *puArgErr);
19396
19397 /*** ISpeechPhraseInfoBuilder methods ***/
19398 HRESULT (STDMETHODCALLTYPE *RestorePhraseFromMemory)(
19399 ISpeechPhraseInfoBuilder *This,
19400 VARIANT *PhraseInMemory,
19401 ISpeechPhraseInfo **PhraseInfo);
19402
19403 END_INTERFACE
19404} ISpeechPhraseInfoBuilderVtbl;
19405
19406interface ISpeechPhraseInfoBuilder {
19407 CONST_VTBL ISpeechPhraseInfoBuilderVtbl* lpVtbl;
19408};
19409
19410#ifdef COBJMACROS
19411#ifndef WIDL_C_INLINE_WRAPPERS
19412/*** IUnknown methods ***/
19413#define ISpeechPhraseInfoBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19414#define ISpeechPhraseInfoBuilder_AddRef(This) (This)->lpVtbl->AddRef(This)
19415#define ISpeechPhraseInfoBuilder_Release(This) (This)->lpVtbl->Release(This)
19416/*** IDispatch methods ***/
19417#define ISpeechPhraseInfoBuilder_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19418#define ISpeechPhraseInfoBuilder_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19419#define ISpeechPhraseInfoBuilder_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19420#define ISpeechPhraseInfoBuilder_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19421/*** ISpeechPhraseInfoBuilder methods ***/
19422#define ISpeechPhraseInfoBuilder_RestorePhraseFromMemory(This,PhraseInMemory,PhraseInfo) (This)->lpVtbl->RestorePhraseFromMemory(This,PhraseInMemory,PhraseInfo)
19423#else
19424/*** IUnknown methods ***/
19425static inline HRESULT ISpeechPhraseInfoBuilder_QueryInterface(ISpeechPhraseInfoBuilder* This,REFIID riid,void **ppvObject) {
19426 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19427}
19428static inline ULONG ISpeechPhraseInfoBuilder_AddRef(ISpeechPhraseInfoBuilder* This) {
19429 return This->lpVtbl->AddRef(This);
19430}
19431static inline ULONG ISpeechPhraseInfoBuilder_Release(ISpeechPhraseInfoBuilder* This) {
19432 return This->lpVtbl->Release(This);
19433}
19434/*** IDispatch methods ***/
19435static inline HRESULT ISpeechPhraseInfoBuilder_GetTypeInfoCount(ISpeechPhraseInfoBuilder* This,UINT *pctinfo) {
19436 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19437}
19438static inline HRESULT ISpeechPhraseInfoBuilder_GetTypeInfo(ISpeechPhraseInfoBuilder* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19439 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19440}
19441static inline HRESULT ISpeechPhraseInfoBuilder_GetIDsOfNames(ISpeechPhraseInfoBuilder* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19442 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19443}
19444static inline HRESULT ISpeechPhraseInfoBuilder_Invoke(ISpeechPhraseInfoBuilder* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19445 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19446}
19447/*** ISpeechPhraseInfoBuilder methods ***/
19448static inline HRESULT ISpeechPhraseInfoBuilder_RestorePhraseFromMemory(ISpeechPhraseInfoBuilder* This,VARIANT *PhraseInMemory,ISpeechPhraseInfo **PhraseInfo) {
19449 return This->lpVtbl->RestorePhraseFromMemory(This,PhraseInMemory,PhraseInfo);
19450}
19451#endif
19452#endif
19453
19454#endif
19455
19456
19457#endif /* __ISpeechPhraseInfoBuilder_INTERFACE_DEFINED__ */
19458
19459/*****************************************************************************
19460 * ISpeechRecoResultTimes interface
19461 */
19462#ifndef __ISpeechRecoResultTimes_INTERFACE_DEFINED__
19463#define __ISpeechRecoResultTimes_INTERFACE_DEFINED__
19464
19465DEFINE_GUID(IID_ISpeechRecoResultTimes, 0x62b3b8fb, 0xf6e7, 0x41be, 0xbd,0xcb, 0x05,0x6b,0x1c,0x29,0xef,0xc0);
19466#if defined(__cplusplus) && !defined(CINTERFACE)
19467MIDL_INTERFACE("62b3b8fb-f6e7-41be-bdcb-056b1c29efc0")
19468ISpeechRecoResultTimes : public IDispatch
19469{
19470 virtual HRESULT STDMETHODCALLTYPE get_StreamTime(
19471 VARIANT *Time) = 0;
19472
19473 virtual HRESULT STDMETHODCALLTYPE get_Length(
19474 VARIANT *Length) = 0;
19475
19476 virtual HRESULT STDMETHODCALLTYPE get_TickCount(
19477 LONG *TickCount) = 0;
19478
19479 virtual HRESULT STDMETHODCALLTYPE get_OffsetFromStart(
19480 VARIANT *OffsetFromStart) = 0;
19481
19482};
19483#ifdef __CRT_UUID_DECL
19484__CRT_UUID_DECL(ISpeechRecoResultTimes, 0x62b3b8fb, 0xf6e7, 0x41be, 0xbd,0xcb, 0x05,0x6b,0x1c,0x29,0xef,0xc0)
19485#endif
19486#else
19487typedef struct ISpeechRecoResultTimesVtbl {
19488 BEGIN_INTERFACE
19489
19490 /*** IUnknown methods ***/
19491 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19492 ISpeechRecoResultTimes *This,
19493 REFIID riid,
19494 void **ppvObject);
19495
19496 ULONG (STDMETHODCALLTYPE *AddRef)(
19497 ISpeechRecoResultTimes *This);
19498
19499 ULONG (STDMETHODCALLTYPE *Release)(
19500 ISpeechRecoResultTimes *This);
19501
19502 /*** IDispatch methods ***/
19503 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19504 ISpeechRecoResultTimes *This,
19505 UINT *pctinfo);
19506
19507 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19508 ISpeechRecoResultTimes *This,
19509 UINT iTInfo,
19510 LCID lcid,
19511 ITypeInfo **ppTInfo);
19512
19513 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19514 ISpeechRecoResultTimes *This,
19515 REFIID riid,
19516 LPOLESTR *rgszNames,
19517 UINT cNames,
19518 LCID lcid,
19519 DISPID *rgDispId);
19520
19521 HRESULT (STDMETHODCALLTYPE *Invoke)(
19522 ISpeechRecoResultTimes *This,
19523 DISPID dispIdMember,
19524 REFIID riid,
19525 LCID lcid,
19526 WORD wFlags,
19527 DISPPARAMS *pDispParams,
19528 VARIANT *pVarResult,
19529 EXCEPINFO *pExcepInfo,
19530 UINT *puArgErr);
19531
19532 /*** ISpeechRecoResultTimes methods ***/
19533 HRESULT (STDMETHODCALLTYPE *get_StreamTime)(
19534 ISpeechRecoResultTimes *This,
19535 VARIANT *Time);
19536
19537 HRESULT (STDMETHODCALLTYPE *get_Length)(
19538 ISpeechRecoResultTimes *This,
19539 VARIANT *Length);
19540
19541 HRESULT (STDMETHODCALLTYPE *get_TickCount)(
19542 ISpeechRecoResultTimes *This,
19543 LONG *TickCount);
19544
19545 HRESULT (STDMETHODCALLTYPE *get_OffsetFromStart)(
19546 ISpeechRecoResultTimes *This,
19547 VARIANT *OffsetFromStart);
19548
19549 END_INTERFACE
19550} ISpeechRecoResultTimesVtbl;
19551
19552interface ISpeechRecoResultTimes {
19553 CONST_VTBL ISpeechRecoResultTimesVtbl* lpVtbl;
19554};
19555
19556#ifdef COBJMACROS
19557#ifndef WIDL_C_INLINE_WRAPPERS
19558/*** IUnknown methods ***/
19559#define ISpeechRecoResultTimes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19560#define ISpeechRecoResultTimes_AddRef(This) (This)->lpVtbl->AddRef(This)
19561#define ISpeechRecoResultTimes_Release(This) (This)->lpVtbl->Release(This)
19562/*** IDispatch methods ***/
19563#define ISpeechRecoResultTimes_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19564#define ISpeechRecoResultTimes_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19565#define ISpeechRecoResultTimes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19566#define ISpeechRecoResultTimes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19567/*** ISpeechRecoResultTimes methods ***/
19568#define ISpeechRecoResultTimes_get_StreamTime(This,Time) (This)->lpVtbl->get_StreamTime(This,Time)
19569#define ISpeechRecoResultTimes_get_Length(This,Length) (This)->lpVtbl->get_Length(This,Length)
19570#define ISpeechRecoResultTimes_get_TickCount(This,TickCount) (This)->lpVtbl->get_TickCount(This,TickCount)
19571#define ISpeechRecoResultTimes_get_OffsetFromStart(This,OffsetFromStart) (This)->lpVtbl->get_OffsetFromStart(This,OffsetFromStart)
19572#else
19573/*** IUnknown methods ***/
19574static inline HRESULT ISpeechRecoResultTimes_QueryInterface(ISpeechRecoResultTimes* This,REFIID riid,void **ppvObject) {
19575 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19576}
19577static inline ULONG ISpeechRecoResultTimes_AddRef(ISpeechRecoResultTimes* This) {
19578 return This->lpVtbl->AddRef(This);
19579}
19580static inline ULONG ISpeechRecoResultTimes_Release(ISpeechRecoResultTimes* This) {
19581 return This->lpVtbl->Release(This);
19582}
19583/*** IDispatch methods ***/
19584static inline HRESULT ISpeechRecoResultTimes_GetTypeInfoCount(ISpeechRecoResultTimes* This,UINT *pctinfo) {
19585 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19586}
19587static inline HRESULT ISpeechRecoResultTimes_GetTypeInfo(ISpeechRecoResultTimes* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19588 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19589}
19590static inline HRESULT ISpeechRecoResultTimes_GetIDsOfNames(ISpeechRecoResultTimes* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19591 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19592}
19593static inline HRESULT ISpeechRecoResultTimes_Invoke(ISpeechRecoResultTimes* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19594 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19595}
19596/*** ISpeechRecoResultTimes methods ***/
19597static inline HRESULT ISpeechRecoResultTimes_get_StreamTime(ISpeechRecoResultTimes* This,VARIANT *Time) {
19598 return This->lpVtbl->get_StreamTime(This,Time);
19599}
19600static inline HRESULT ISpeechRecoResultTimes_get_Length(ISpeechRecoResultTimes* This,VARIANT *Length) {
19601 return This->lpVtbl->get_Length(This,Length);
19602}
19603static inline HRESULT ISpeechRecoResultTimes_get_TickCount(ISpeechRecoResultTimes* This,LONG *TickCount) {
19604 return This->lpVtbl->get_TickCount(This,TickCount);
19605}
19606static inline HRESULT ISpeechRecoResultTimes_get_OffsetFromStart(ISpeechRecoResultTimes* This,VARIANT *OffsetFromStart) {
19607 return This->lpVtbl->get_OffsetFromStart(This,OffsetFromStart);
19608}
19609#endif
19610#endif
19611
19612#endif
19613
19614
19615#endif /* __ISpeechRecoResultTimes_INTERFACE_DEFINED__ */
19616
19617/*****************************************************************************
19618 * ISpeechPhraseAlternate interface
19619 */
19620#ifndef __ISpeechPhraseAlternate_INTERFACE_DEFINED__
19621#define __ISpeechPhraseAlternate_INTERFACE_DEFINED__
19622
19623DEFINE_GUID(IID_ISpeechPhraseAlternate, 0x27864a2a, 0x2b9f, 0x4cb8, 0x92,0xd3, 0x0d,0x27,0x22,0xfd,0x1e,0x73);
19624#if defined(__cplusplus) && !defined(CINTERFACE)
19625MIDL_INTERFACE("27864a2a-2b9f-4cb8-92d3-0d2722fd1e73")
19626ISpeechPhraseAlternate : public IDispatch
19627{
19628 virtual HRESULT STDMETHODCALLTYPE get_RecoResult(
19629 ISpeechRecoResult **RecoResult) = 0;
19630
19631 virtual HRESULT STDMETHODCALLTYPE get_StartElementInResult(
19632 LONG *StartElement) = 0;
19633
19634 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElementsInResult(
19635 LONG *NumberOfElements) = 0;
19636
19637 virtual HRESULT STDMETHODCALLTYPE get_PhraseInfo(
19638 ISpeechPhraseInfo **PhraseInfo) = 0;
19639
19640 virtual HRESULT STDMETHODCALLTYPE Commit(
19641 ) = 0;
19642
19643};
19644#ifdef __CRT_UUID_DECL
19645__CRT_UUID_DECL(ISpeechPhraseAlternate, 0x27864a2a, 0x2b9f, 0x4cb8, 0x92,0xd3, 0x0d,0x27,0x22,0xfd,0x1e,0x73)
19646#endif
19647#else
19648typedef struct ISpeechPhraseAlternateVtbl {
19649 BEGIN_INTERFACE
19650
19651 /*** IUnknown methods ***/
19652 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19653 ISpeechPhraseAlternate *This,
19654 REFIID riid,
19655 void **ppvObject);
19656
19657 ULONG (STDMETHODCALLTYPE *AddRef)(
19658 ISpeechPhraseAlternate *This);
19659
19660 ULONG (STDMETHODCALLTYPE *Release)(
19661 ISpeechPhraseAlternate *This);
19662
19663 /*** IDispatch methods ***/
19664 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19665 ISpeechPhraseAlternate *This,
19666 UINT *pctinfo);
19667
19668 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19669 ISpeechPhraseAlternate *This,
19670 UINT iTInfo,
19671 LCID lcid,
19672 ITypeInfo **ppTInfo);
19673
19674 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19675 ISpeechPhraseAlternate *This,
19676 REFIID riid,
19677 LPOLESTR *rgszNames,
19678 UINT cNames,
19679 LCID lcid,
19680 DISPID *rgDispId);
19681
19682 HRESULT (STDMETHODCALLTYPE *Invoke)(
19683 ISpeechPhraseAlternate *This,
19684 DISPID dispIdMember,
19685 REFIID riid,
19686 LCID lcid,
19687 WORD wFlags,
19688 DISPPARAMS *pDispParams,
19689 VARIANT *pVarResult,
19690 EXCEPINFO *pExcepInfo,
19691 UINT *puArgErr);
19692
19693 /*** ISpeechPhraseAlternate methods ***/
19694 HRESULT (STDMETHODCALLTYPE *get_RecoResult)(
19695 ISpeechPhraseAlternate *This,
19696 ISpeechRecoResult **RecoResult);
19697
19698 HRESULT (STDMETHODCALLTYPE *get_StartElementInResult)(
19699 ISpeechPhraseAlternate *This,
19700 LONG *StartElement);
19701
19702 HRESULT (STDMETHODCALLTYPE *get_NumberOfElementsInResult)(
19703 ISpeechPhraseAlternate *This,
19704 LONG *NumberOfElements);
19705
19706 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
19707 ISpeechPhraseAlternate *This,
19708 ISpeechPhraseInfo **PhraseInfo);
19709
19710 HRESULT (STDMETHODCALLTYPE *Commit)(
19711 ISpeechPhraseAlternate *This);
19712
19713 END_INTERFACE
19714} ISpeechPhraseAlternateVtbl;
19715
19716interface ISpeechPhraseAlternate {
19717 CONST_VTBL ISpeechPhraseAlternateVtbl* lpVtbl;
19718};
19719
19720#ifdef COBJMACROS
19721#ifndef WIDL_C_INLINE_WRAPPERS
19722/*** IUnknown methods ***/
19723#define ISpeechPhraseAlternate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19724#define ISpeechPhraseAlternate_AddRef(This) (This)->lpVtbl->AddRef(This)
19725#define ISpeechPhraseAlternate_Release(This) (This)->lpVtbl->Release(This)
19726/*** IDispatch methods ***/
19727#define ISpeechPhraseAlternate_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19728#define ISpeechPhraseAlternate_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19729#define ISpeechPhraseAlternate_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19730#define ISpeechPhraseAlternate_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19731/*** ISpeechPhraseAlternate methods ***/
19732#define ISpeechPhraseAlternate_get_RecoResult(This,RecoResult) (This)->lpVtbl->get_RecoResult(This,RecoResult)
19733#define ISpeechPhraseAlternate_get_StartElementInResult(This,StartElement) (This)->lpVtbl->get_StartElementInResult(This,StartElement)
19734#define ISpeechPhraseAlternate_get_NumberOfElementsInResult(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElementsInResult(This,NumberOfElements)
19735#define ISpeechPhraseAlternate_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
19736#define ISpeechPhraseAlternate_Commit(This) (This)->lpVtbl->Commit(This)
19737#else
19738/*** IUnknown methods ***/
19739static inline HRESULT ISpeechPhraseAlternate_QueryInterface(ISpeechPhraseAlternate* This,REFIID riid,void **ppvObject) {
19740 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19741}
19742static inline ULONG ISpeechPhraseAlternate_AddRef(ISpeechPhraseAlternate* This) {
19743 return This->lpVtbl->AddRef(This);
19744}
19745static inline ULONG ISpeechPhraseAlternate_Release(ISpeechPhraseAlternate* This) {
19746 return This->lpVtbl->Release(This);
19747}
19748/*** IDispatch methods ***/
19749static inline HRESULT ISpeechPhraseAlternate_GetTypeInfoCount(ISpeechPhraseAlternate* This,UINT *pctinfo) {
19750 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19751}
19752static inline HRESULT ISpeechPhraseAlternate_GetTypeInfo(ISpeechPhraseAlternate* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19753 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19754}
19755static inline HRESULT ISpeechPhraseAlternate_GetIDsOfNames(ISpeechPhraseAlternate* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19756 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19757}
19758static inline HRESULT ISpeechPhraseAlternate_Invoke(ISpeechPhraseAlternate* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19759 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19760}
19761/*** ISpeechPhraseAlternate methods ***/
19762static inline HRESULT ISpeechPhraseAlternate_get_RecoResult(ISpeechPhraseAlternate* This,ISpeechRecoResult **RecoResult) {
19763 return This->lpVtbl->get_RecoResult(This,RecoResult);
19764}
19765static inline HRESULT ISpeechPhraseAlternate_get_StartElementInResult(ISpeechPhraseAlternate* This,LONG *StartElement) {
19766 return This->lpVtbl->get_StartElementInResult(This,StartElement);
19767}
19768static inline HRESULT ISpeechPhraseAlternate_get_NumberOfElementsInResult(ISpeechPhraseAlternate* This,LONG *NumberOfElements) {
19769 return This->lpVtbl->get_NumberOfElementsInResult(This,NumberOfElements);
19770}
19771static inline HRESULT ISpeechPhraseAlternate_get_PhraseInfo(ISpeechPhraseAlternate* This,ISpeechPhraseInfo **PhraseInfo) {
19772 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
19773}
19774static inline HRESULT ISpeechPhraseAlternate_Commit(ISpeechPhraseAlternate* This) {
19775 return This->lpVtbl->Commit(This);
19776}
19777#endif
19778#endif
19779
19780#endif
19781
19782
19783#endif /* __ISpeechPhraseAlternate_INTERFACE_DEFINED__ */
19784
19785/*****************************************************************************
19786 * ISpeechPhraseAlternates interface
19787 */
19788#ifndef __ISpeechPhraseAlternates_INTERFACE_DEFINED__
19789#define __ISpeechPhraseAlternates_INTERFACE_DEFINED__
19790
19791DEFINE_GUID(IID_ISpeechPhraseAlternates, 0xb238b6d5, 0xf276, 0x4c3d, 0xa6,0xc1, 0x29,0x74,0x80,0x1c,0x3c,0xc2);
19792#if defined(__cplusplus) && !defined(CINTERFACE)
19793MIDL_INTERFACE("b238b6d5-f276-4c3d-a6c1-2974801c3cc2")
19794ISpeechPhraseAlternates : public IDispatch
19795{
19796 virtual HRESULT STDMETHODCALLTYPE get_Count(
19797 LONG *Count) = 0;
19798
19799 virtual HRESULT STDMETHODCALLTYPE Item(
19800 LONG Index,
19801 ISpeechPhraseAlternate **PhraseAlternate) = 0;
19802
19803 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
19804 IUnknown **EnumVARIANT) = 0;
19805
19806};
19807#ifdef __CRT_UUID_DECL
19808__CRT_UUID_DECL(ISpeechPhraseAlternates, 0xb238b6d5, 0xf276, 0x4c3d, 0xa6,0xc1, 0x29,0x74,0x80,0x1c,0x3c,0xc2)
19809#endif
19810#else
19811typedef struct ISpeechPhraseAlternatesVtbl {
19812 BEGIN_INTERFACE
19813
19814 /*** IUnknown methods ***/
19815 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19816 ISpeechPhraseAlternates *This,
19817 REFIID riid,
19818 void **ppvObject);
19819
19820 ULONG (STDMETHODCALLTYPE *AddRef)(
19821 ISpeechPhraseAlternates *This);
19822
19823 ULONG (STDMETHODCALLTYPE *Release)(
19824 ISpeechPhraseAlternates *This);
19825
19826 /*** IDispatch methods ***/
19827 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19828 ISpeechPhraseAlternates *This,
19829 UINT *pctinfo);
19830
19831 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19832 ISpeechPhraseAlternates *This,
19833 UINT iTInfo,
19834 LCID lcid,
19835 ITypeInfo **ppTInfo);
19836
19837 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19838 ISpeechPhraseAlternates *This,
19839 REFIID riid,
19840 LPOLESTR *rgszNames,
19841 UINT cNames,
19842 LCID lcid,
19843 DISPID *rgDispId);
19844
19845 HRESULT (STDMETHODCALLTYPE *Invoke)(
19846 ISpeechPhraseAlternates *This,
19847 DISPID dispIdMember,
19848 REFIID riid,
19849 LCID lcid,
19850 WORD wFlags,
19851 DISPPARAMS *pDispParams,
19852 VARIANT *pVarResult,
19853 EXCEPINFO *pExcepInfo,
19854 UINT *puArgErr);
19855
19856 /*** ISpeechPhraseAlternates methods ***/
19857 HRESULT (STDMETHODCALLTYPE *get_Count)(
19858 ISpeechPhraseAlternates *This,
19859 LONG *Count);
19860
19861 HRESULT (STDMETHODCALLTYPE *Item)(
19862 ISpeechPhraseAlternates *This,
19863 LONG Index,
19864 ISpeechPhraseAlternate **PhraseAlternate);
19865
19866 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
19867 ISpeechPhraseAlternates *This,
19868 IUnknown **EnumVARIANT);
19869
19870 END_INTERFACE
19871} ISpeechPhraseAlternatesVtbl;
19872
19873interface ISpeechPhraseAlternates {
19874 CONST_VTBL ISpeechPhraseAlternatesVtbl* lpVtbl;
19875};
19876
19877#ifdef COBJMACROS
19878#ifndef WIDL_C_INLINE_WRAPPERS
19879/*** IUnknown methods ***/
19880#define ISpeechPhraseAlternates_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19881#define ISpeechPhraseAlternates_AddRef(This) (This)->lpVtbl->AddRef(This)
19882#define ISpeechPhraseAlternates_Release(This) (This)->lpVtbl->Release(This)
19883/*** IDispatch methods ***/
19884#define ISpeechPhraseAlternates_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19885#define ISpeechPhraseAlternates_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19886#define ISpeechPhraseAlternates_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19887#define ISpeechPhraseAlternates_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19888/*** ISpeechPhraseAlternates methods ***/
19889#define ISpeechPhraseAlternates_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
19890#define ISpeechPhraseAlternates_Item(This,Index,PhraseAlternate) (This)->lpVtbl->Item(This,Index,PhraseAlternate)
19891#define ISpeechPhraseAlternates_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
19892#else
19893/*** IUnknown methods ***/
19894static inline HRESULT ISpeechPhraseAlternates_QueryInterface(ISpeechPhraseAlternates* This,REFIID riid,void **ppvObject) {
19895 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19896}
19897static inline ULONG ISpeechPhraseAlternates_AddRef(ISpeechPhraseAlternates* This) {
19898 return This->lpVtbl->AddRef(This);
19899}
19900static inline ULONG ISpeechPhraseAlternates_Release(ISpeechPhraseAlternates* This) {
19901 return This->lpVtbl->Release(This);
19902}
19903/*** IDispatch methods ***/
19904static inline HRESULT ISpeechPhraseAlternates_GetTypeInfoCount(ISpeechPhraseAlternates* This,UINT *pctinfo) {
19905 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19906}
19907static inline HRESULT ISpeechPhraseAlternates_GetTypeInfo(ISpeechPhraseAlternates* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19908 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19909}
19910static inline HRESULT ISpeechPhraseAlternates_GetIDsOfNames(ISpeechPhraseAlternates* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19911 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19912}
19913static inline HRESULT ISpeechPhraseAlternates_Invoke(ISpeechPhraseAlternates* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19914 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19915}
19916/*** ISpeechPhraseAlternates methods ***/
19917static inline HRESULT ISpeechPhraseAlternates_get_Count(ISpeechPhraseAlternates* This,LONG *Count) {
19918 return This->lpVtbl->get_Count(This,Count);
19919}
19920static inline HRESULT ISpeechPhraseAlternates_Item(ISpeechPhraseAlternates* This,LONG Index,ISpeechPhraseAlternate **PhraseAlternate) {
19921 return This->lpVtbl->Item(This,Index,PhraseAlternate);
19922}
19923static inline HRESULT ISpeechPhraseAlternates_get__NewEnum(ISpeechPhraseAlternates* This,IUnknown **EnumVARIANT) {
19924 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
19925}
19926#endif
19927#endif
19928
19929#endif
19930
19931
19932#endif /* __ISpeechPhraseAlternates_INTERFACE_DEFINED__ */
19933
19934/*****************************************************************************
19935 * ISpeechPhraseInfo interface
19936 */
19937#ifndef __ISpeechPhraseInfo_INTERFACE_DEFINED__
19938#define __ISpeechPhraseInfo_INTERFACE_DEFINED__
19939
19940DEFINE_GUID(IID_ISpeechPhraseInfo, 0x961559cf, 0x4e67, 0x4662, 0x8b,0xf0, 0xd9,0x3f,0x1f,0xcd,0x61,0xb3);
19941#if defined(__cplusplus) && !defined(CINTERFACE)
19942MIDL_INTERFACE("961559cf-4e67-4662-8bf0-d93f1fcd61b3")
19943ISpeechPhraseInfo : public IDispatch
19944{
19945 virtual HRESULT STDMETHODCALLTYPE get_LanguageId(
19946 LONG *LanguageId) = 0;
19947
19948 virtual HRESULT STDMETHODCALLTYPE get_GrammarId(
19949 VARIANT *GrammarId) = 0;
19950
19951 virtual HRESULT STDMETHODCALLTYPE get_StartTime(
19952 VARIANT *StartTime) = 0;
19953
19954 virtual HRESULT STDMETHODCALLTYPE get_AudioStreamPosition(
19955 VARIANT *AudioStreamPosition) = 0;
19956
19957 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeBytes(
19958 LONG *pAudioSizeBytes) = 0;
19959
19960 virtual HRESULT STDMETHODCALLTYPE get_RetainedSizeBytes(
19961 LONG *RetainedSizeBytes) = 0;
19962
19963 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeTime(
19964 LONG *AudioSizeTime) = 0;
19965
19966 virtual HRESULT STDMETHODCALLTYPE get_Rule(
19967 ISpeechPhraseRule **Rule) = 0;
19968
19969 virtual HRESULT STDMETHODCALLTYPE get_Properties(
19970 ISpeechPhraseProperties **Properties) = 0;
19971
19972 virtual HRESULT STDMETHODCALLTYPE get_Elements(
19973 ISpeechPhraseElements **Elements) = 0;
19974
19975 virtual HRESULT STDMETHODCALLTYPE get_Replacements(
19976 ISpeechPhraseReplacements **Replacements) = 0;
19977
19978 virtual HRESULT STDMETHODCALLTYPE get_EngineId(
19979 BSTR *EngineIdGuid) = 0;
19980
19981 virtual HRESULT STDMETHODCALLTYPE get_EnginePrivateData(
19982 VARIANT *PrivateData) = 0;
19983
19984 virtual HRESULT STDMETHODCALLTYPE SaveToMemory(
19985 VARIANT *PhraseBlock) = 0;
19986
19987 virtual HRESULT STDMETHODCALLTYPE GetText(
19988 LONG StartElement,
19989 LONG Elements,
19990 VARIANT_BOOL UseReplacements,
19991 BSTR *Text) = 0;
19992
19993 virtual HRESULT STDMETHODCALLTYPE GetDisplayAttributes(
19994 LONG StartElement,
19995 LONG Elements,
19996 VARIANT_BOOL UseReplacements,
19997 SpeechDisplayAttributes *DisplayAttributes) = 0;
19998
19999};
20000#ifdef __CRT_UUID_DECL
20001__CRT_UUID_DECL(ISpeechPhraseInfo, 0x961559cf, 0x4e67, 0x4662, 0x8b,0xf0, 0xd9,0x3f,0x1f,0xcd,0x61,0xb3)
20002#endif
20003#else
20004typedef struct ISpeechPhraseInfoVtbl {
20005 BEGIN_INTERFACE
20006
20007 /*** IUnknown methods ***/
20008 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20009 ISpeechPhraseInfo *This,
20010 REFIID riid,
20011 void **ppvObject);
20012
20013 ULONG (STDMETHODCALLTYPE *AddRef)(
20014 ISpeechPhraseInfo *This);
20015
20016 ULONG (STDMETHODCALLTYPE *Release)(
20017 ISpeechPhraseInfo *This);
20018
20019 /*** IDispatch methods ***/
20020 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20021 ISpeechPhraseInfo *This,
20022 UINT *pctinfo);
20023
20024 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20025 ISpeechPhraseInfo *This,
20026 UINT iTInfo,
20027 LCID lcid,
20028 ITypeInfo **ppTInfo);
20029
20030 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20031 ISpeechPhraseInfo *This,
20032 REFIID riid,
20033 LPOLESTR *rgszNames,
20034 UINT cNames,
20035 LCID lcid,
20036 DISPID *rgDispId);
20037
20038 HRESULT (STDMETHODCALLTYPE *Invoke)(
20039 ISpeechPhraseInfo *This,
20040 DISPID dispIdMember,
20041 REFIID riid,
20042 LCID lcid,
20043 WORD wFlags,
20044 DISPPARAMS *pDispParams,
20045 VARIANT *pVarResult,
20046 EXCEPINFO *pExcepInfo,
20047 UINT *puArgErr);
20048
20049 /*** ISpeechPhraseInfo methods ***/
20050 HRESULT (STDMETHODCALLTYPE *get_LanguageId)(
20051 ISpeechPhraseInfo *This,
20052 LONG *LanguageId);
20053
20054 HRESULT (STDMETHODCALLTYPE *get_GrammarId)(
20055 ISpeechPhraseInfo *This,
20056 VARIANT *GrammarId);
20057
20058 HRESULT (STDMETHODCALLTYPE *get_StartTime)(
20059 ISpeechPhraseInfo *This,
20060 VARIANT *StartTime);
20061
20062 HRESULT (STDMETHODCALLTYPE *get_AudioStreamPosition)(
20063 ISpeechPhraseInfo *This,
20064 VARIANT *AudioStreamPosition);
20065
20066 HRESULT (STDMETHODCALLTYPE *get_AudioSizeBytes)(
20067 ISpeechPhraseInfo *This,
20068 LONG *pAudioSizeBytes);
20069
20070 HRESULT (STDMETHODCALLTYPE *get_RetainedSizeBytes)(
20071 ISpeechPhraseInfo *This,
20072 LONG *RetainedSizeBytes);
20073
20074 HRESULT (STDMETHODCALLTYPE *get_AudioSizeTime)(
20075 ISpeechPhraseInfo *This,
20076 LONG *AudioSizeTime);
20077
20078 HRESULT (STDMETHODCALLTYPE *get_Rule)(
20079 ISpeechPhraseInfo *This,
20080 ISpeechPhraseRule **Rule);
20081
20082 HRESULT (STDMETHODCALLTYPE *get_Properties)(
20083 ISpeechPhraseInfo *This,
20084 ISpeechPhraseProperties **Properties);
20085
20086 HRESULT (STDMETHODCALLTYPE *get_Elements)(
20087 ISpeechPhraseInfo *This,
20088 ISpeechPhraseElements **Elements);
20089
20090 HRESULT (STDMETHODCALLTYPE *get_Replacements)(
20091 ISpeechPhraseInfo *This,
20092 ISpeechPhraseReplacements **Replacements);
20093
20094 HRESULT (STDMETHODCALLTYPE *get_EngineId)(
20095 ISpeechPhraseInfo *This,
20096 BSTR *EngineIdGuid);
20097
20098 HRESULT (STDMETHODCALLTYPE *get_EnginePrivateData)(
20099 ISpeechPhraseInfo *This,
20100 VARIANT *PrivateData);
20101
20102 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
20103 ISpeechPhraseInfo *This,
20104 VARIANT *PhraseBlock);
20105
20106 HRESULT (STDMETHODCALLTYPE *GetText)(
20107 ISpeechPhraseInfo *This,
20108 LONG StartElement,
20109 LONG Elements,
20110 VARIANT_BOOL UseReplacements,
20111 BSTR *Text);
20112
20113 HRESULT (STDMETHODCALLTYPE *GetDisplayAttributes)(
20114 ISpeechPhraseInfo *This,
20115 LONG StartElement,
20116 LONG Elements,
20117 VARIANT_BOOL UseReplacements,
20118 SpeechDisplayAttributes *DisplayAttributes);
20119
20120 END_INTERFACE
20121} ISpeechPhraseInfoVtbl;
20122
20123interface ISpeechPhraseInfo {
20124 CONST_VTBL ISpeechPhraseInfoVtbl* lpVtbl;
20125};
20126
20127#ifdef COBJMACROS
20128#ifndef WIDL_C_INLINE_WRAPPERS
20129/*** IUnknown methods ***/
20130#define ISpeechPhraseInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20131#define ISpeechPhraseInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
20132#define ISpeechPhraseInfo_Release(This) (This)->lpVtbl->Release(This)
20133/*** IDispatch methods ***/
20134#define ISpeechPhraseInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20135#define ISpeechPhraseInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20136#define ISpeechPhraseInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20137#define ISpeechPhraseInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20138/*** ISpeechPhraseInfo methods ***/
20139#define ISpeechPhraseInfo_get_LanguageId(This,LanguageId) (This)->lpVtbl->get_LanguageId(This,LanguageId)
20140#define ISpeechPhraseInfo_get_GrammarId(This,GrammarId) (This)->lpVtbl->get_GrammarId(This,GrammarId)
20141#define ISpeechPhraseInfo_get_StartTime(This,StartTime) (This)->lpVtbl->get_StartTime(This,StartTime)
20142#define ISpeechPhraseInfo_get_AudioStreamPosition(This,AudioStreamPosition) (This)->lpVtbl->get_AudioStreamPosition(This,AudioStreamPosition)
20143#define ISpeechPhraseInfo_get_AudioSizeBytes(This,pAudioSizeBytes) (This)->lpVtbl->get_AudioSizeBytes(This,pAudioSizeBytes)
20144#define ISpeechPhraseInfo_get_RetainedSizeBytes(This,RetainedSizeBytes) (This)->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes)
20145#define ISpeechPhraseInfo_get_AudioSizeTime(This,AudioSizeTime) (This)->lpVtbl->get_AudioSizeTime(This,AudioSizeTime)
20146#define ISpeechPhraseInfo_get_Rule(This,Rule) (This)->lpVtbl->get_Rule(This,Rule)
20147#define ISpeechPhraseInfo_get_Properties(This,Properties) (This)->lpVtbl->get_Properties(This,Properties)
20148#define ISpeechPhraseInfo_get_Elements(This,Elements) (This)->lpVtbl->get_Elements(This,Elements)
20149#define ISpeechPhraseInfo_get_Replacements(This,Replacements) (This)->lpVtbl->get_Replacements(This,Replacements)
20150#define ISpeechPhraseInfo_get_EngineId(This,EngineIdGuid) (This)->lpVtbl->get_EngineId(This,EngineIdGuid)
20151#define ISpeechPhraseInfo_get_EnginePrivateData(This,PrivateData) (This)->lpVtbl->get_EnginePrivateData(This,PrivateData)
20152#define ISpeechPhraseInfo_SaveToMemory(This,PhraseBlock) (This)->lpVtbl->SaveToMemory(This,PhraseBlock)
20153#define ISpeechPhraseInfo_GetText(This,StartElement,Elements,UseReplacements,Text) (This)->lpVtbl->GetText(This,StartElement,Elements,UseReplacements,Text)
20154#define ISpeechPhraseInfo_GetDisplayAttributes(This,StartElement,Elements,UseReplacements,DisplayAttributes) (This)->lpVtbl->GetDisplayAttributes(This,StartElement,Elements,UseReplacements,DisplayAttributes)
20155#else
20156/*** IUnknown methods ***/
20157static inline HRESULT ISpeechPhraseInfo_QueryInterface(ISpeechPhraseInfo* This,REFIID riid,void **ppvObject) {
20158 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20159}
20160static inline ULONG ISpeechPhraseInfo_AddRef(ISpeechPhraseInfo* This) {
20161 return This->lpVtbl->AddRef(This);
20162}
20163static inline ULONG ISpeechPhraseInfo_Release(ISpeechPhraseInfo* This) {
20164 return This->lpVtbl->Release(This);
20165}
20166/*** IDispatch methods ***/
20167static inline HRESULT ISpeechPhraseInfo_GetTypeInfoCount(ISpeechPhraseInfo* This,UINT *pctinfo) {
20168 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20169}
20170static inline HRESULT ISpeechPhraseInfo_GetTypeInfo(ISpeechPhraseInfo* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20171 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20172}
20173static inline HRESULT ISpeechPhraseInfo_GetIDsOfNames(ISpeechPhraseInfo* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20174 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20175}
20176static inline HRESULT ISpeechPhraseInfo_Invoke(ISpeechPhraseInfo* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20177 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20178}
20179/*** ISpeechPhraseInfo methods ***/
20180static inline HRESULT ISpeechPhraseInfo_get_LanguageId(ISpeechPhraseInfo* This,LONG *LanguageId) {
20181 return This->lpVtbl->get_LanguageId(This,LanguageId);
20182}
20183static inline HRESULT ISpeechPhraseInfo_get_GrammarId(ISpeechPhraseInfo* This,VARIANT *GrammarId) {
20184 return This->lpVtbl->get_GrammarId(This,GrammarId);
20185}
20186static inline HRESULT ISpeechPhraseInfo_get_StartTime(ISpeechPhraseInfo* This,VARIANT *StartTime) {
20187 return This->lpVtbl->get_StartTime(This,StartTime);
20188}
20189static inline HRESULT ISpeechPhraseInfo_get_AudioStreamPosition(ISpeechPhraseInfo* This,VARIANT *AudioStreamPosition) {
20190 return This->lpVtbl->get_AudioStreamPosition(This,AudioStreamPosition);
20191}
20192static inline HRESULT ISpeechPhraseInfo_get_AudioSizeBytes(ISpeechPhraseInfo* This,LONG *pAudioSizeBytes) {
20193 return This->lpVtbl->get_AudioSizeBytes(This,pAudioSizeBytes);
20194}
20195static inline HRESULT ISpeechPhraseInfo_get_RetainedSizeBytes(ISpeechPhraseInfo* This,LONG *RetainedSizeBytes) {
20196 return This->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes);
20197}
20198static inline HRESULT ISpeechPhraseInfo_get_AudioSizeTime(ISpeechPhraseInfo* This,LONG *AudioSizeTime) {
20199 return This->lpVtbl->get_AudioSizeTime(This,AudioSizeTime);
20200}
20201static inline HRESULT ISpeechPhraseInfo_get_Rule(ISpeechPhraseInfo* This,ISpeechPhraseRule **Rule) {
20202 return This->lpVtbl->get_Rule(This,Rule);
20203}
20204static inline HRESULT ISpeechPhraseInfo_get_Properties(ISpeechPhraseInfo* This,ISpeechPhraseProperties **Properties) {
20205 return This->lpVtbl->get_Properties(This,Properties);
20206}
20207static inline HRESULT ISpeechPhraseInfo_get_Elements(ISpeechPhraseInfo* This,ISpeechPhraseElements **Elements) {
20208 return This->lpVtbl->get_Elements(This,Elements);
20209}
20210static inline HRESULT ISpeechPhraseInfo_get_Replacements(ISpeechPhraseInfo* This,ISpeechPhraseReplacements **Replacements) {
20211 return This->lpVtbl->get_Replacements(This,Replacements);
20212}
20213static inline HRESULT ISpeechPhraseInfo_get_EngineId(ISpeechPhraseInfo* This,BSTR *EngineIdGuid) {
20214 return This->lpVtbl->get_EngineId(This,EngineIdGuid);
20215}
20216static inline HRESULT ISpeechPhraseInfo_get_EnginePrivateData(ISpeechPhraseInfo* This,VARIANT *PrivateData) {
20217 return This->lpVtbl->get_EnginePrivateData(This,PrivateData);
20218}
20219static inline HRESULT ISpeechPhraseInfo_SaveToMemory(ISpeechPhraseInfo* This,VARIANT *PhraseBlock) {
20220 return This->lpVtbl->SaveToMemory(This,PhraseBlock);
20221}
20222static inline HRESULT ISpeechPhraseInfo_GetText(ISpeechPhraseInfo* This,LONG StartElement,LONG Elements,VARIANT_BOOL UseReplacements,BSTR *Text) {
20223 return This->lpVtbl->GetText(This,StartElement,Elements,UseReplacements,Text);
20224}
20225static inline HRESULT ISpeechPhraseInfo_GetDisplayAttributes(ISpeechPhraseInfo* This,LONG StartElement,LONG Elements,VARIANT_BOOL UseReplacements,SpeechDisplayAttributes *DisplayAttributes) {
20226 return This->lpVtbl->GetDisplayAttributes(This,StartElement,Elements,UseReplacements,DisplayAttributes);
20227}
20228#endif
20229#endif
20230
20231#endif
20232
20233
20234#endif /* __ISpeechPhraseInfo_INTERFACE_DEFINED__ */
20235
20236/*****************************************************************************
20237 * ISpeechPhraseElement interface
20238 */
20239#ifndef __ISpeechPhraseElement_INTERFACE_DEFINED__
20240#define __ISpeechPhraseElement_INTERFACE_DEFINED__
20241
20242DEFINE_GUID(IID_ISpeechPhraseElement, 0xe6176f96, 0xe373, 0x4801, 0xb2,0x23, 0x3b,0x62,0xc0,0x68,0xc0,0xb4);
20243#if defined(__cplusplus) && !defined(CINTERFACE)
20244MIDL_INTERFACE("e6176f96-e373-4801-b223-3b62c068c0b4")
20245ISpeechPhraseElement : public IDispatch
20246{
20247 virtual HRESULT STDMETHODCALLTYPE get_AudioTimeOffset(
20248 LONG *AudioTimeOffset) = 0;
20249
20250 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeTime(
20251 LONG *AudioSizeTime) = 0;
20252
20253 virtual HRESULT STDMETHODCALLTYPE get_AudioStreamOffset(
20254 LONG *AudioStreamOffset) = 0;
20255
20256 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeBytes(
20257 LONG *AudioSizeBytes) = 0;
20258
20259 virtual HRESULT STDMETHODCALLTYPE get_RetainedStreamOffset(
20260 LONG *RetainedStreamOffset) = 0;
20261
20262 virtual HRESULT STDMETHODCALLTYPE get_RetainedSizeBytes(
20263 LONG *RetainedSizeBytes) = 0;
20264
20265 virtual HRESULT STDMETHODCALLTYPE get_DisplayText(
20266 BSTR *DisplayText) = 0;
20267
20268 virtual HRESULT STDMETHODCALLTYPE get_LexicalForm(
20269 BSTR *LexicalForm) = 0;
20270
20271 virtual HRESULT STDMETHODCALLTYPE get_Pronunciation(
20272 VARIANT *Pronunciation) = 0;
20273
20274 virtual HRESULT STDMETHODCALLTYPE get_DisplayAttributes(
20275 SpeechDisplayAttributes *DisplayAttributes) = 0;
20276
20277 virtual HRESULT STDMETHODCALLTYPE get_RequiredConfidence(
20278 SpeechEngineConfidence *RequiredConfidence) = 0;
20279
20280 virtual HRESULT STDMETHODCALLTYPE get_ActualConfidence(
20281 SpeechEngineConfidence *ActualConfidence) = 0;
20282
20283 virtual HRESULT STDMETHODCALLTYPE get_EngineConfidence(
20284 float *EngineConfidence) = 0;
20285
20286};
20287#ifdef __CRT_UUID_DECL
20288__CRT_UUID_DECL(ISpeechPhraseElement, 0xe6176f96, 0xe373, 0x4801, 0xb2,0x23, 0x3b,0x62,0xc0,0x68,0xc0,0xb4)
20289#endif
20290#else
20291typedef struct ISpeechPhraseElementVtbl {
20292 BEGIN_INTERFACE
20293
20294 /*** IUnknown methods ***/
20295 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20296 ISpeechPhraseElement *This,
20297 REFIID riid,
20298 void **ppvObject);
20299
20300 ULONG (STDMETHODCALLTYPE *AddRef)(
20301 ISpeechPhraseElement *This);
20302
20303 ULONG (STDMETHODCALLTYPE *Release)(
20304 ISpeechPhraseElement *This);
20305
20306 /*** IDispatch methods ***/
20307 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20308 ISpeechPhraseElement *This,
20309 UINT *pctinfo);
20310
20311 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20312 ISpeechPhraseElement *This,
20313 UINT iTInfo,
20314 LCID lcid,
20315 ITypeInfo **ppTInfo);
20316
20317 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20318 ISpeechPhraseElement *This,
20319 REFIID riid,
20320 LPOLESTR *rgszNames,
20321 UINT cNames,
20322 LCID lcid,
20323 DISPID *rgDispId);
20324
20325 HRESULT (STDMETHODCALLTYPE *Invoke)(
20326 ISpeechPhraseElement *This,
20327 DISPID dispIdMember,
20328 REFIID riid,
20329 LCID lcid,
20330 WORD wFlags,
20331 DISPPARAMS *pDispParams,
20332 VARIANT *pVarResult,
20333 EXCEPINFO *pExcepInfo,
20334 UINT *puArgErr);
20335
20336 /*** ISpeechPhraseElement methods ***/
20337 HRESULT (STDMETHODCALLTYPE *get_AudioTimeOffset)(
20338 ISpeechPhraseElement *This,
20339 LONG *AudioTimeOffset);
20340
20341 HRESULT (STDMETHODCALLTYPE *get_AudioSizeTime)(
20342 ISpeechPhraseElement *This,
20343 LONG *AudioSizeTime);
20344
20345 HRESULT (STDMETHODCALLTYPE *get_AudioStreamOffset)(
20346 ISpeechPhraseElement *This,
20347 LONG *AudioStreamOffset);
20348
20349 HRESULT (STDMETHODCALLTYPE *get_AudioSizeBytes)(
20350 ISpeechPhraseElement *This,
20351 LONG *AudioSizeBytes);
20352
20353 HRESULT (STDMETHODCALLTYPE *get_RetainedStreamOffset)(
20354 ISpeechPhraseElement *This,
20355 LONG *RetainedStreamOffset);
20356
20357 HRESULT (STDMETHODCALLTYPE *get_RetainedSizeBytes)(
20358 ISpeechPhraseElement *This,
20359 LONG *RetainedSizeBytes);
20360
20361 HRESULT (STDMETHODCALLTYPE *get_DisplayText)(
20362 ISpeechPhraseElement *This,
20363 BSTR *DisplayText);
20364
20365 HRESULT (STDMETHODCALLTYPE *get_LexicalForm)(
20366 ISpeechPhraseElement *This,
20367 BSTR *LexicalForm);
20368
20369 HRESULT (STDMETHODCALLTYPE *get_Pronunciation)(
20370 ISpeechPhraseElement *This,
20371 VARIANT *Pronunciation);
20372
20373 HRESULT (STDMETHODCALLTYPE *get_DisplayAttributes)(
20374 ISpeechPhraseElement *This,
20375 SpeechDisplayAttributes *DisplayAttributes);
20376
20377 HRESULT (STDMETHODCALLTYPE *get_RequiredConfidence)(
20378 ISpeechPhraseElement *This,
20379 SpeechEngineConfidence *RequiredConfidence);
20380
20381 HRESULT (STDMETHODCALLTYPE *get_ActualConfidence)(
20382 ISpeechPhraseElement *This,
20383 SpeechEngineConfidence *ActualConfidence);
20384
20385 HRESULT (STDMETHODCALLTYPE *get_EngineConfidence)(
20386 ISpeechPhraseElement *This,
20387 float *EngineConfidence);
20388
20389 END_INTERFACE
20390} ISpeechPhraseElementVtbl;
20391
20392interface ISpeechPhraseElement {
20393 CONST_VTBL ISpeechPhraseElementVtbl* lpVtbl;
20394};
20395
20396#ifdef COBJMACROS
20397#ifndef WIDL_C_INLINE_WRAPPERS
20398/*** IUnknown methods ***/
20399#define ISpeechPhraseElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20400#define ISpeechPhraseElement_AddRef(This) (This)->lpVtbl->AddRef(This)
20401#define ISpeechPhraseElement_Release(This) (This)->lpVtbl->Release(This)
20402/*** IDispatch methods ***/
20403#define ISpeechPhraseElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20404#define ISpeechPhraseElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20405#define ISpeechPhraseElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20406#define ISpeechPhraseElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20407/*** ISpeechPhraseElement methods ***/
20408#define ISpeechPhraseElement_get_AudioTimeOffset(This,AudioTimeOffset) (This)->lpVtbl->get_AudioTimeOffset(This,AudioTimeOffset)
20409#define ISpeechPhraseElement_get_AudioSizeTime(This,AudioSizeTime) (This)->lpVtbl->get_AudioSizeTime(This,AudioSizeTime)
20410#define ISpeechPhraseElement_get_AudioStreamOffset(This,AudioStreamOffset) (This)->lpVtbl->get_AudioStreamOffset(This,AudioStreamOffset)
20411#define ISpeechPhraseElement_get_AudioSizeBytes(This,AudioSizeBytes) (This)->lpVtbl->get_AudioSizeBytes(This,AudioSizeBytes)
20412#define ISpeechPhraseElement_get_RetainedStreamOffset(This,RetainedStreamOffset) (This)->lpVtbl->get_RetainedStreamOffset(This,RetainedStreamOffset)
20413#define ISpeechPhraseElement_get_RetainedSizeBytes(This,RetainedSizeBytes) (This)->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes)
20414#define ISpeechPhraseElement_get_DisplayText(This,DisplayText) (This)->lpVtbl->get_DisplayText(This,DisplayText)
20415#define ISpeechPhraseElement_get_LexicalForm(This,LexicalForm) (This)->lpVtbl->get_LexicalForm(This,LexicalForm)
20416#define ISpeechPhraseElement_get_Pronunciation(This,Pronunciation) (This)->lpVtbl->get_Pronunciation(This,Pronunciation)
20417#define ISpeechPhraseElement_get_DisplayAttributes(This,DisplayAttributes) (This)->lpVtbl->get_DisplayAttributes(This,DisplayAttributes)
20418#define ISpeechPhraseElement_get_RequiredConfidence(This,RequiredConfidence) (This)->lpVtbl->get_RequiredConfidence(This,RequiredConfidence)
20419#define ISpeechPhraseElement_get_ActualConfidence(This,ActualConfidence) (This)->lpVtbl->get_ActualConfidence(This,ActualConfidence)
20420#define ISpeechPhraseElement_get_EngineConfidence(This,EngineConfidence) (This)->lpVtbl->get_EngineConfidence(This,EngineConfidence)
20421#else
20422/*** IUnknown methods ***/
20423static inline HRESULT ISpeechPhraseElement_QueryInterface(ISpeechPhraseElement* This,REFIID riid,void **ppvObject) {
20424 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20425}
20426static inline ULONG ISpeechPhraseElement_AddRef(ISpeechPhraseElement* This) {
20427 return This->lpVtbl->AddRef(This);
20428}
20429static inline ULONG ISpeechPhraseElement_Release(ISpeechPhraseElement* This) {
20430 return This->lpVtbl->Release(This);
20431}
20432/*** IDispatch methods ***/
20433static inline HRESULT ISpeechPhraseElement_GetTypeInfoCount(ISpeechPhraseElement* This,UINT *pctinfo) {
20434 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20435}
20436static inline HRESULT ISpeechPhraseElement_GetTypeInfo(ISpeechPhraseElement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20437 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20438}
20439static inline HRESULT ISpeechPhraseElement_GetIDsOfNames(ISpeechPhraseElement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20440 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20441}
20442static inline HRESULT ISpeechPhraseElement_Invoke(ISpeechPhraseElement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20443 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20444}
20445/*** ISpeechPhraseElement methods ***/
20446static inline HRESULT ISpeechPhraseElement_get_AudioTimeOffset(ISpeechPhraseElement* This,LONG *AudioTimeOffset) {
20447 return This->lpVtbl->get_AudioTimeOffset(This,AudioTimeOffset);
20448}
20449static inline HRESULT ISpeechPhraseElement_get_AudioSizeTime(ISpeechPhraseElement* This,LONG *AudioSizeTime) {
20450 return This->lpVtbl->get_AudioSizeTime(This,AudioSizeTime);
20451}
20452static inline HRESULT ISpeechPhraseElement_get_AudioStreamOffset(ISpeechPhraseElement* This,LONG *AudioStreamOffset) {
20453 return This->lpVtbl->get_AudioStreamOffset(This,AudioStreamOffset);
20454}
20455static inline HRESULT ISpeechPhraseElement_get_AudioSizeBytes(ISpeechPhraseElement* This,LONG *AudioSizeBytes) {
20456 return This->lpVtbl->get_AudioSizeBytes(This,AudioSizeBytes);
20457}
20458static inline HRESULT ISpeechPhraseElement_get_RetainedStreamOffset(ISpeechPhraseElement* This,LONG *RetainedStreamOffset) {
20459 return This->lpVtbl->get_RetainedStreamOffset(This,RetainedStreamOffset);
20460}
20461static inline HRESULT ISpeechPhraseElement_get_RetainedSizeBytes(ISpeechPhraseElement* This,LONG *RetainedSizeBytes) {
20462 return This->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes);
20463}
20464static inline HRESULT ISpeechPhraseElement_get_DisplayText(ISpeechPhraseElement* This,BSTR *DisplayText) {
20465 return This->lpVtbl->get_DisplayText(This,DisplayText);
20466}
20467static inline HRESULT ISpeechPhraseElement_get_LexicalForm(ISpeechPhraseElement* This,BSTR *LexicalForm) {
20468 return This->lpVtbl->get_LexicalForm(This,LexicalForm);
20469}
20470static inline HRESULT ISpeechPhraseElement_get_Pronunciation(ISpeechPhraseElement* This,VARIANT *Pronunciation) {
20471 return This->lpVtbl->get_Pronunciation(This,Pronunciation);
20472}
20473static inline HRESULT ISpeechPhraseElement_get_DisplayAttributes(ISpeechPhraseElement* This,SpeechDisplayAttributes *DisplayAttributes) {
20474 return This->lpVtbl->get_DisplayAttributes(This,DisplayAttributes);
20475}
20476static inline HRESULT ISpeechPhraseElement_get_RequiredConfidence(ISpeechPhraseElement* This,SpeechEngineConfidence *RequiredConfidence) {
20477 return This->lpVtbl->get_RequiredConfidence(This,RequiredConfidence);
20478}
20479static inline HRESULT ISpeechPhraseElement_get_ActualConfidence(ISpeechPhraseElement* This,SpeechEngineConfidence *ActualConfidence) {
20480 return This->lpVtbl->get_ActualConfidence(This,ActualConfidence);
20481}
20482static inline HRESULT ISpeechPhraseElement_get_EngineConfidence(ISpeechPhraseElement* This,float *EngineConfidence) {
20483 return This->lpVtbl->get_EngineConfidence(This,EngineConfidence);
20484}
20485#endif
20486#endif
20487
20488#endif
20489
20490
20491#endif /* __ISpeechPhraseElement_INTERFACE_DEFINED__ */
20492
20493/*****************************************************************************
20494 * ISpeechPhraseElements interface
20495 */
20496#ifndef __ISpeechPhraseElements_INTERFACE_DEFINED__
20497#define __ISpeechPhraseElements_INTERFACE_DEFINED__
20498
20499DEFINE_GUID(IID_ISpeechPhraseElements, 0x0626b328, 0x3478, 0x467d, 0xa0,0xb3, 0xd0,0x85,0x3b,0x93,0xdd,0xa3);
20500#if defined(__cplusplus) && !defined(CINTERFACE)
20501MIDL_INTERFACE("0626b328-3478-467d-a0b3-d0853b93dda3")
20502ISpeechPhraseElements : public IDispatch
20503{
20504 virtual HRESULT STDMETHODCALLTYPE get_Count(
20505 LONG *Count) = 0;
20506
20507 virtual HRESULT STDMETHODCALLTYPE Item(
20508 LONG Index,
20509 ISpeechPhraseElement **Element) = 0;
20510
20511 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
20512 IUnknown **EnumVARIANT) = 0;
20513
20514};
20515#ifdef __CRT_UUID_DECL
20516__CRT_UUID_DECL(ISpeechPhraseElements, 0x0626b328, 0x3478, 0x467d, 0xa0,0xb3, 0xd0,0x85,0x3b,0x93,0xdd,0xa3)
20517#endif
20518#else
20519typedef struct ISpeechPhraseElementsVtbl {
20520 BEGIN_INTERFACE
20521
20522 /*** IUnknown methods ***/
20523 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20524 ISpeechPhraseElements *This,
20525 REFIID riid,
20526 void **ppvObject);
20527
20528 ULONG (STDMETHODCALLTYPE *AddRef)(
20529 ISpeechPhraseElements *This);
20530
20531 ULONG (STDMETHODCALLTYPE *Release)(
20532 ISpeechPhraseElements *This);
20533
20534 /*** IDispatch methods ***/
20535 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20536 ISpeechPhraseElements *This,
20537 UINT *pctinfo);
20538
20539 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20540 ISpeechPhraseElements *This,
20541 UINT iTInfo,
20542 LCID lcid,
20543 ITypeInfo **ppTInfo);
20544
20545 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20546 ISpeechPhraseElements *This,
20547 REFIID riid,
20548 LPOLESTR *rgszNames,
20549 UINT cNames,
20550 LCID lcid,
20551 DISPID *rgDispId);
20552
20553 HRESULT (STDMETHODCALLTYPE *Invoke)(
20554 ISpeechPhraseElements *This,
20555 DISPID dispIdMember,
20556 REFIID riid,
20557 LCID lcid,
20558 WORD wFlags,
20559 DISPPARAMS *pDispParams,
20560 VARIANT *pVarResult,
20561 EXCEPINFO *pExcepInfo,
20562 UINT *puArgErr);
20563
20564 /*** ISpeechPhraseElements methods ***/
20565 HRESULT (STDMETHODCALLTYPE *get_Count)(
20566 ISpeechPhraseElements *This,
20567 LONG *Count);
20568
20569 HRESULT (STDMETHODCALLTYPE *Item)(
20570 ISpeechPhraseElements *This,
20571 LONG Index,
20572 ISpeechPhraseElement **Element);
20573
20574 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
20575 ISpeechPhraseElements *This,
20576 IUnknown **EnumVARIANT);
20577
20578 END_INTERFACE
20579} ISpeechPhraseElementsVtbl;
20580
20581interface ISpeechPhraseElements {
20582 CONST_VTBL ISpeechPhraseElementsVtbl* lpVtbl;
20583};
20584
20585#ifdef COBJMACROS
20586#ifndef WIDL_C_INLINE_WRAPPERS
20587/*** IUnknown methods ***/
20588#define ISpeechPhraseElements_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20589#define ISpeechPhraseElements_AddRef(This) (This)->lpVtbl->AddRef(This)
20590#define ISpeechPhraseElements_Release(This) (This)->lpVtbl->Release(This)
20591/*** IDispatch methods ***/
20592#define ISpeechPhraseElements_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20593#define ISpeechPhraseElements_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20594#define ISpeechPhraseElements_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20595#define ISpeechPhraseElements_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20596/*** ISpeechPhraseElements methods ***/
20597#define ISpeechPhraseElements_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
20598#define ISpeechPhraseElements_Item(This,Index,Element) (This)->lpVtbl->Item(This,Index,Element)
20599#define ISpeechPhraseElements_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
20600#else
20601/*** IUnknown methods ***/
20602static inline HRESULT ISpeechPhraseElements_QueryInterface(ISpeechPhraseElements* This,REFIID riid,void **ppvObject) {
20603 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20604}
20605static inline ULONG ISpeechPhraseElements_AddRef(ISpeechPhraseElements* This) {
20606 return This->lpVtbl->AddRef(This);
20607}
20608static inline ULONG ISpeechPhraseElements_Release(ISpeechPhraseElements* This) {
20609 return This->lpVtbl->Release(This);
20610}
20611/*** IDispatch methods ***/
20612static inline HRESULT ISpeechPhraseElements_GetTypeInfoCount(ISpeechPhraseElements* This,UINT *pctinfo) {
20613 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20614}
20615static inline HRESULT ISpeechPhraseElements_GetTypeInfo(ISpeechPhraseElements* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20616 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20617}
20618static inline HRESULT ISpeechPhraseElements_GetIDsOfNames(ISpeechPhraseElements* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20619 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20620}
20621static inline HRESULT ISpeechPhraseElements_Invoke(ISpeechPhraseElements* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20622 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20623}
20624/*** ISpeechPhraseElements methods ***/
20625static inline HRESULT ISpeechPhraseElements_get_Count(ISpeechPhraseElements* This,LONG *Count) {
20626 return This->lpVtbl->get_Count(This,Count);
20627}
20628static inline HRESULT ISpeechPhraseElements_Item(ISpeechPhraseElements* This,LONG Index,ISpeechPhraseElement **Element) {
20629 return This->lpVtbl->Item(This,Index,Element);
20630}
20631static inline HRESULT ISpeechPhraseElements_get__NewEnum(ISpeechPhraseElements* This,IUnknown **EnumVARIANT) {
20632 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
20633}
20634#endif
20635#endif
20636
20637#endif
20638
20639
20640#endif /* __ISpeechPhraseElements_INTERFACE_DEFINED__ */
20641
20642/*****************************************************************************
20643 * ISpeechPhraseReplacement interface
20644 */
20645#ifndef __ISpeechPhraseReplacement_INTERFACE_DEFINED__
20646#define __ISpeechPhraseReplacement_INTERFACE_DEFINED__
20647
20648DEFINE_GUID(IID_ISpeechPhraseReplacement, 0x2890a410, 0x53a7, 0x4fb5, 0x94,0xec, 0x06,0xd4,0x99,0x8e,0x3d,0x02);
20649#if defined(__cplusplus) && !defined(CINTERFACE)
20650MIDL_INTERFACE("2890a410-53a7-4fb5-94ec-06d4998e3d02")
20651ISpeechPhraseReplacement : public IDispatch
20652{
20653 virtual HRESULT STDMETHODCALLTYPE get_DisplayAttributes(
20654 SpeechDisplayAttributes *DisplayAttributes) = 0;
20655
20656 virtual HRESULT STDMETHODCALLTYPE get_Text(
20657 BSTR *Text) = 0;
20658
20659 virtual HRESULT STDMETHODCALLTYPE get_FirstElement(
20660 LONG *FirstElement) = 0;
20661
20662 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElements(
20663 LONG *NumberOfElements) = 0;
20664
20665};
20666#ifdef __CRT_UUID_DECL
20667__CRT_UUID_DECL(ISpeechPhraseReplacement, 0x2890a410, 0x53a7, 0x4fb5, 0x94,0xec, 0x06,0xd4,0x99,0x8e,0x3d,0x02)
20668#endif
20669#else
20670typedef struct ISpeechPhraseReplacementVtbl {
20671 BEGIN_INTERFACE
20672
20673 /*** IUnknown methods ***/
20674 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20675 ISpeechPhraseReplacement *This,
20676 REFIID riid,
20677 void **ppvObject);
20678
20679 ULONG (STDMETHODCALLTYPE *AddRef)(
20680 ISpeechPhraseReplacement *This);
20681
20682 ULONG (STDMETHODCALLTYPE *Release)(
20683 ISpeechPhraseReplacement *This);
20684
20685 /*** IDispatch methods ***/
20686 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20687 ISpeechPhraseReplacement *This,
20688 UINT *pctinfo);
20689
20690 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20691 ISpeechPhraseReplacement *This,
20692 UINT iTInfo,
20693 LCID lcid,
20694 ITypeInfo **ppTInfo);
20695
20696 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20697 ISpeechPhraseReplacement *This,
20698 REFIID riid,
20699 LPOLESTR *rgszNames,
20700 UINT cNames,
20701 LCID lcid,
20702 DISPID *rgDispId);
20703
20704 HRESULT (STDMETHODCALLTYPE *Invoke)(
20705 ISpeechPhraseReplacement *This,
20706 DISPID dispIdMember,
20707 REFIID riid,
20708 LCID lcid,
20709 WORD wFlags,
20710 DISPPARAMS *pDispParams,
20711 VARIANT *pVarResult,
20712 EXCEPINFO *pExcepInfo,
20713 UINT *puArgErr);
20714
20715 /*** ISpeechPhraseReplacement methods ***/
20716 HRESULT (STDMETHODCALLTYPE *get_DisplayAttributes)(
20717 ISpeechPhraseReplacement *This,
20718 SpeechDisplayAttributes *DisplayAttributes);
20719
20720 HRESULT (STDMETHODCALLTYPE *get_Text)(
20721 ISpeechPhraseReplacement *This,
20722 BSTR *Text);
20723
20724 HRESULT (STDMETHODCALLTYPE *get_FirstElement)(
20725 ISpeechPhraseReplacement *This,
20726 LONG *FirstElement);
20727
20728 HRESULT (STDMETHODCALLTYPE *get_NumberOfElements)(
20729 ISpeechPhraseReplacement *This,
20730 LONG *NumberOfElements);
20731
20732 END_INTERFACE
20733} ISpeechPhraseReplacementVtbl;
20734
20735interface ISpeechPhraseReplacement {
20736 CONST_VTBL ISpeechPhraseReplacementVtbl* lpVtbl;
20737};
20738
20739#ifdef COBJMACROS
20740#ifndef WIDL_C_INLINE_WRAPPERS
20741/*** IUnknown methods ***/
20742#define ISpeechPhraseReplacement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20743#define ISpeechPhraseReplacement_AddRef(This) (This)->lpVtbl->AddRef(This)
20744#define ISpeechPhraseReplacement_Release(This) (This)->lpVtbl->Release(This)
20745/*** IDispatch methods ***/
20746#define ISpeechPhraseReplacement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20747#define ISpeechPhraseReplacement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20748#define ISpeechPhraseReplacement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20749#define ISpeechPhraseReplacement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20750/*** ISpeechPhraseReplacement methods ***/
20751#define ISpeechPhraseReplacement_get_DisplayAttributes(This,DisplayAttributes) (This)->lpVtbl->get_DisplayAttributes(This,DisplayAttributes)
20752#define ISpeechPhraseReplacement_get_Text(This,Text) (This)->lpVtbl->get_Text(This,Text)
20753#define ISpeechPhraseReplacement_get_FirstElement(This,FirstElement) (This)->lpVtbl->get_FirstElement(This,FirstElement)
20754#define ISpeechPhraseReplacement_get_NumberOfElements(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElements(This,NumberOfElements)
20755#else
20756/*** IUnknown methods ***/
20757static inline HRESULT ISpeechPhraseReplacement_QueryInterface(ISpeechPhraseReplacement* This,REFIID riid,void **ppvObject) {
20758 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20759}
20760static inline ULONG ISpeechPhraseReplacement_AddRef(ISpeechPhraseReplacement* This) {
20761 return This->lpVtbl->AddRef(This);
20762}
20763static inline ULONG ISpeechPhraseReplacement_Release(ISpeechPhraseReplacement* This) {
20764 return This->lpVtbl->Release(This);
20765}
20766/*** IDispatch methods ***/
20767static inline HRESULT ISpeechPhraseReplacement_GetTypeInfoCount(ISpeechPhraseReplacement* This,UINT *pctinfo) {
20768 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20769}
20770static inline HRESULT ISpeechPhraseReplacement_GetTypeInfo(ISpeechPhraseReplacement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20771 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20772}
20773static inline HRESULT ISpeechPhraseReplacement_GetIDsOfNames(ISpeechPhraseReplacement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20774 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20775}
20776static inline HRESULT ISpeechPhraseReplacement_Invoke(ISpeechPhraseReplacement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20777 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20778}
20779/*** ISpeechPhraseReplacement methods ***/
20780static inline HRESULT ISpeechPhraseReplacement_get_DisplayAttributes(ISpeechPhraseReplacement* This,SpeechDisplayAttributes *DisplayAttributes) {
20781 return This->lpVtbl->get_DisplayAttributes(This,DisplayAttributes);
20782}
20783static inline HRESULT ISpeechPhraseReplacement_get_Text(ISpeechPhraseReplacement* This,BSTR *Text) {
20784 return This->lpVtbl->get_Text(This,Text);
20785}
20786static inline HRESULT ISpeechPhraseReplacement_get_FirstElement(ISpeechPhraseReplacement* This,LONG *FirstElement) {
20787 return This->lpVtbl->get_FirstElement(This,FirstElement);
20788}
20789static inline HRESULT ISpeechPhraseReplacement_get_NumberOfElements(ISpeechPhraseReplacement* This,LONG *NumberOfElements) {
20790 return This->lpVtbl->get_NumberOfElements(This,NumberOfElements);
20791}
20792#endif
20793#endif
20794
20795#endif
20796
20797
20798#endif /* __ISpeechPhraseReplacement_INTERFACE_DEFINED__ */
20799
20800/*****************************************************************************
20801 * ISpeechPhraseReplacements interface
20802 */
20803#ifndef __ISpeechPhraseReplacements_INTERFACE_DEFINED__
20804#define __ISpeechPhraseReplacements_INTERFACE_DEFINED__
20805
20806DEFINE_GUID(IID_ISpeechPhraseReplacements, 0x38bc662f, 0x2257, 0x4525, 0x95,0x9e, 0x20,0x69,0xd2,0x59,0x6c,0x05);
20807#if defined(__cplusplus) && !defined(CINTERFACE)
20808MIDL_INTERFACE("38bc662f-2257-4525-959e-2069d2596c05")
20809ISpeechPhraseReplacements : public IDispatch
20810{
20811 virtual HRESULT STDMETHODCALLTYPE get_Count(
20812 LONG *Count) = 0;
20813
20814 virtual HRESULT STDMETHODCALLTYPE Item(
20815 LONG Index,
20816 ISpeechPhraseReplacement **Reps) = 0;
20817
20818 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
20819 IUnknown **EnumVARIANT) = 0;
20820
20821};
20822#ifdef __CRT_UUID_DECL
20823__CRT_UUID_DECL(ISpeechPhraseReplacements, 0x38bc662f, 0x2257, 0x4525, 0x95,0x9e, 0x20,0x69,0xd2,0x59,0x6c,0x05)
20824#endif
20825#else
20826typedef struct ISpeechPhraseReplacementsVtbl {
20827 BEGIN_INTERFACE
20828
20829 /*** IUnknown methods ***/
20830 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20831 ISpeechPhraseReplacements *This,
20832 REFIID riid,
20833 void **ppvObject);
20834
20835 ULONG (STDMETHODCALLTYPE *AddRef)(
20836 ISpeechPhraseReplacements *This);
20837
20838 ULONG (STDMETHODCALLTYPE *Release)(
20839 ISpeechPhraseReplacements *This);
20840
20841 /*** IDispatch methods ***/
20842 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20843 ISpeechPhraseReplacements *This,
20844 UINT *pctinfo);
20845
20846 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20847 ISpeechPhraseReplacements *This,
20848 UINT iTInfo,
20849 LCID lcid,
20850 ITypeInfo **ppTInfo);
20851
20852 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20853 ISpeechPhraseReplacements *This,
20854 REFIID riid,
20855 LPOLESTR *rgszNames,
20856 UINT cNames,
20857 LCID lcid,
20858 DISPID *rgDispId);
20859
20860 HRESULT (STDMETHODCALLTYPE *Invoke)(
20861 ISpeechPhraseReplacements *This,
20862 DISPID dispIdMember,
20863 REFIID riid,
20864 LCID lcid,
20865 WORD wFlags,
20866 DISPPARAMS *pDispParams,
20867 VARIANT *pVarResult,
20868 EXCEPINFO *pExcepInfo,
20869 UINT *puArgErr);
20870
20871 /*** ISpeechPhraseReplacements methods ***/
20872 HRESULT (STDMETHODCALLTYPE *get_Count)(
20873 ISpeechPhraseReplacements *This,
20874 LONG *Count);
20875
20876 HRESULT (STDMETHODCALLTYPE *Item)(
20877 ISpeechPhraseReplacements *This,
20878 LONG Index,
20879 ISpeechPhraseReplacement **Reps);
20880
20881 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
20882 ISpeechPhraseReplacements *This,
20883 IUnknown **EnumVARIANT);
20884
20885 END_INTERFACE
20886} ISpeechPhraseReplacementsVtbl;
20887
20888interface ISpeechPhraseReplacements {
20889 CONST_VTBL ISpeechPhraseReplacementsVtbl* lpVtbl;
20890};
20891
20892#ifdef COBJMACROS
20893#ifndef WIDL_C_INLINE_WRAPPERS
20894/*** IUnknown methods ***/
20895#define ISpeechPhraseReplacements_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20896#define ISpeechPhraseReplacements_AddRef(This) (This)->lpVtbl->AddRef(This)
20897#define ISpeechPhraseReplacements_Release(This) (This)->lpVtbl->Release(This)
20898/*** IDispatch methods ***/
20899#define ISpeechPhraseReplacements_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20900#define ISpeechPhraseReplacements_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20901#define ISpeechPhraseReplacements_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20902#define ISpeechPhraseReplacements_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20903/*** ISpeechPhraseReplacements methods ***/
20904#define ISpeechPhraseReplacements_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
20905#define ISpeechPhraseReplacements_Item(This,Index,Reps) (This)->lpVtbl->Item(This,Index,Reps)
20906#define ISpeechPhraseReplacements_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
20907#else
20908/*** IUnknown methods ***/
20909static inline HRESULT ISpeechPhraseReplacements_QueryInterface(ISpeechPhraseReplacements* This,REFIID riid,void **ppvObject) {
20910 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20911}
20912static inline ULONG ISpeechPhraseReplacements_AddRef(ISpeechPhraseReplacements* This) {
20913 return This->lpVtbl->AddRef(This);
20914}
20915static inline ULONG ISpeechPhraseReplacements_Release(ISpeechPhraseReplacements* This) {
20916 return This->lpVtbl->Release(This);
20917}
20918/*** IDispatch methods ***/
20919static inline HRESULT ISpeechPhraseReplacements_GetTypeInfoCount(ISpeechPhraseReplacements* This,UINT *pctinfo) {
20920 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20921}
20922static inline HRESULT ISpeechPhraseReplacements_GetTypeInfo(ISpeechPhraseReplacements* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20923 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20924}
20925static inline HRESULT ISpeechPhraseReplacements_GetIDsOfNames(ISpeechPhraseReplacements* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20926 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20927}
20928static inline HRESULT ISpeechPhraseReplacements_Invoke(ISpeechPhraseReplacements* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20929 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20930}
20931/*** ISpeechPhraseReplacements methods ***/
20932static inline HRESULT ISpeechPhraseReplacements_get_Count(ISpeechPhraseReplacements* This,LONG *Count) {
20933 return This->lpVtbl->get_Count(This,Count);
20934}
20935static inline HRESULT ISpeechPhraseReplacements_Item(ISpeechPhraseReplacements* This,LONG Index,ISpeechPhraseReplacement **Reps) {
20936 return This->lpVtbl->Item(This,Index,Reps);
20937}
20938static inline HRESULT ISpeechPhraseReplacements_get__NewEnum(ISpeechPhraseReplacements* This,IUnknown **EnumVARIANT) {
20939 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
20940}
20941#endif
20942#endif
20943
20944#endif
20945
20946
20947#endif /* __ISpeechPhraseReplacements_INTERFACE_DEFINED__ */
20948
20949/*****************************************************************************
20950 * ISpeechPhraseProperty interface
20951 */
20952#ifndef __ISpeechPhraseProperty_INTERFACE_DEFINED__
20953#define __ISpeechPhraseProperty_INTERFACE_DEFINED__
20954
20955DEFINE_GUID(IID_ISpeechPhraseProperty, 0xce563d48, 0x961e, 0x4732, 0xa2,0xe1, 0x37,0x8a,0x42,0xb4,0x30,0xbe);
20956#if defined(__cplusplus) && !defined(CINTERFACE)
20957MIDL_INTERFACE("ce563d48-961e-4732-a2e1-378a42b430be")
20958ISpeechPhraseProperty : public IDispatch
20959{
20960 virtual HRESULT STDMETHODCALLTYPE get_Name(
20961 BSTR *Name) = 0;
20962
20963 virtual HRESULT STDMETHODCALLTYPE get_Id(
20964 LONG *Id) = 0;
20965
20966 virtual HRESULT STDMETHODCALLTYPE get_Value(
20967 VARIANT *Value) = 0;
20968
20969 virtual HRESULT STDMETHODCALLTYPE get_FirstElement(
20970 LONG *FirstElement) = 0;
20971
20972 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElements(
20973 LONG *NumberOfElements) = 0;
20974
20975 virtual HRESULT STDMETHODCALLTYPE get_EngineConfidence(
20976 float *Confidence) = 0;
20977
20978 virtual HRESULT STDMETHODCALLTYPE get_Confidence(
20979 SpeechEngineConfidence *Confidence) = 0;
20980
20981 virtual HRESULT STDMETHODCALLTYPE get_Parent(
20982 ISpeechPhraseProperty **ParentProperty) = 0;
20983
20984 virtual HRESULT STDMETHODCALLTYPE get_Children(
20985 ISpeechPhraseProperties **Children) = 0;
20986
20987};
20988#ifdef __CRT_UUID_DECL
20989__CRT_UUID_DECL(ISpeechPhraseProperty, 0xce563d48, 0x961e, 0x4732, 0xa2,0xe1, 0x37,0x8a,0x42,0xb4,0x30,0xbe)
20990#endif
20991#else
20992typedef struct ISpeechPhrasePropertyVtbl {
20993 BEGIN_INTERFACE
20994
20995 /*** IUnknown methods ***/
20996 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20997 ISpeechPhraseProperty *This,
20998 REFIID riid,
20999 void **ppvObject);
21000
21001 ULONG (STDMETHODCALLTYPE *AddRef)(
21002 ISpeechPhraseProperty *This);
21003
21004 ULONG (STDMETHODCALLTYPE *Release)(
21005 ISpeechPhraseProperty *This);
21006
21007 /*** IDispatch methods ***/
21008 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21009 ISpeechPhraseProperty *This,
21010 UINT *pctinfo);
21011
21012 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21013 ISpeechPhraseProperty *This,
21014 UINT iTInfo,
21015 LCID lcid,
21016 ITypeInfo **ppTInfo);
21017
21018 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21019 ISpeechPhraseProperty *This,
21020 REFIID riid,
21021 LPOLESTR *rgszNames,
21022 UINT cNames,
21023 LCID lcid,
21024 DISPID *rgDispId);
21025
21026 HRESULT (STDMETHODCALLTYPE *Invoke)(
21027 ISpeechPhraseProperty *This,
21028 DISPID dispIdMember,
21029 REFIID riid,
21030 LCID lcid,
21031 WORD wFlags,
21032 DISPPARAMS *pDispParams,
21033 VARIANT *pVarResult,
21034 EXCEPINFO *pExcepInfo,
21035 UINT *puArgErr);
21036
21037 /*** ISpeechPhraseProperty methods ***/
21038 HRESULT (STDMETHODCALLTYPE *get_Name)(
21039 ISpeechPhraseProperty *This,
21040 BSTR *Name);
21041
21042 HRESULT (STDMETHODCALLTYPE *get_Id)(
21043 ISpeechPhraseProperty *This,
21044 LONG *Id);
21045
21046 HRESULT (STDMETHODCALLTYPE *get_Value)(
21047 ISpeechPhraseProperty *This,
21048 VARIANT *Value);
21049
21050 HRESULT (STDMETHODCALLTYPE *get_FirstElement)(
21051 ISpeechPhraseProperty *This,
21052 LONG *FirstElement);
21053
21054 HRESULT (STDMETHODCALLTYPE *get_NumberOfElements)(
21055 ISpeechPhraseProperty *This,
21056 LONG *NumberOfElements);
21057
21058 HRESULT (STDMETHODCALLTYPE *get_EngineConfidence)(
21059 ISpeechPhraseProperty *This,
21060 float *Confidence);
21061
21062 HRESULT (STDMETHODCALLTYPE *get_Confidence)(
21063 ISpeechPhraseProperty *This,
21064 SpeechEngineConfidence *Confidence);
21065
21066 HRESULT (STDMETHODCALLTYPE *get_Parent)(
21067 ISpeechPhraseProperty *This,
21068 ISpeechPhraseProperty **ParentProperty);
21069
21070 HRESULT (STDMETHODCALLTYPE *get_Children)(
21071 ISpeechPhraseProperty *This,
21072 ISpeechPhraseProperties **Children);
21073
21074 END_INTERFACE
21075} ISpeechPhrasePropertyVtbl;
21076
21077interface ISpeechPhraseProperty {
21078 CONST_VTBL ISpeechPhrasePropertyVtbl* lpVtbl;
21079};
21080
21081#ifdef COBJMACROS
21082#ifndef WIDL_C_INLINE_WRAPPERS
21083/*** IUnknown methods ***/
21084#define ISpeechPhraseProperty_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21085#define ISpeechPhraseProperty_AddRef(This) (This)->lpVtbl->AddRef(This)
21086#define ISpeechPhraseProperty_Release(This) (This)->lpVtbl->Release(This)
21087/*** IDispatch methods ***/
21088#define ISpeechPhraseProperty_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21089#define ISpeechPhraseProperty_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21090#define ISpeechPhraseProperty_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21091#define ISpeechPhraseProperty_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21092/*** ISpeechPhraseProperty methods ***/
21093#define ISpeechPhraseProperty_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
21094#define ISpeechPhraseProperty_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
21095#define ISpeechPhraseProperty_get_Value(This,Value) (This)->lpVtbl->get_Value(This,Value)
21096#define ISpeechPhraseProperty_get_FirstElement(This,FirstElement) (This)->lpVtbl->get_FirstElement(This,FirstElement)
21097#define ISpeechPhraseProperty_get_NumberOfElements(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElements(This,NumberOfElements)
21098#define ISpeechPhraseProperty_get_EngineConfidence(This,Confidence) (This)->lpVtbl->get_EngineConfidence(This,Confidence)
21099#define ISpeechPhraseProperty_get_Confidence(This,Confidence) (This)->lpVtbl->get_Confidence(This,Confidence)
21100#define ISpeechPhraseProperty_get_Parent(This,ParentProperty) (This)->lpVtbl->get_Parent(This,ParentProperty)
21101#define ISpeechPhraseProperty_get_Children(This,Children) (This)->lpVtbl->get_Children(This,Children)
21102#else
21103/*** IUnknown methods ***/
21104static inline HRESULT ISpeechPhraseProperty_QueryInterface(ISpeechPhraseProperty* This,REFIID riid,void **ppvObject) {
21105 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21106}
21107static inline ULONG ISpeechPhraseProperty_AddRef(ISpeechPhraseProperty* This) {
21108 return This->lpVtbl->AddRef(This);
21109}
21110static inline ULONG ISpeechPhraseProperty_Release(ISpeechPhraseProperty* This) {
21111 return This->lpVtbl->Release(This);
21112}
21113/*** IDispatch methods ***/
21114static inline HRESULT ISpeechPhraseProperty_GetTypeInfoCount(ISpeechPhraseProperty* This,UINT *pctinfo) {
21115 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21116}
21117static inline HRESULT ISpeechPhraseProperty_GetTypeInfo(ISpeechPhraseProperty* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21118 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21119}
21120static inline HRESULT ISpeechPhraseProperty_GetIDsOfNames(ISpeechPhraseProperty* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21121 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21122}
21123static inline HRESULT ISpeechPhraseProperty_Invoke(ISpeechPhraseProperty* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21124 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21125}
21126/*** ISpeechPhraseProperty methods ***/
21127static inline HRESULT ISpeechPhraseProperty_get_Name(ISpeechPhraseProperty* This,BSTR *Name) {
21128 return This->lpVtbl->get_Name(This,Name);
21129}
21130static inline HRESULT ISpeechPhraseProperty_get_Id(ISpeechPhraseProperty* This,LONG *Id) {
21131 return This->lpVtbl->get_Id(This,Id);
21132}
21133static inline HRESULT ISpeechPhraseProperty_get_Value(ISpeechPhraseProperty* This,VARIANT *Value) {
21134 return This->lpVtbl->get_Value(This,Value);
21135}
21136static inline HRESULT ISpeechPhraseProperty_get_FirstElement(ISpeechPhraseProperty* This,LONG *FirstElement) {
21137 return This->lpVtbl->get_FirstElement(This,FirstElement);
21138}
21139static inline HRESULT ISpeechPhraseProperty_get_NumberOfElements(ISpeechPhraseProperty* This,LONG *NumberOfElements) {
21140 return This->lpVtbl->get_NumberOfElements(This,NumberOfElements);
21141}
21142static inline HRESULT ISpeechPhraseProperty_get_EngineConfidence(ISpeechPhraseProperty* This,float *Confidence) {
21143 return This->lpVtbl->get_EngineConfidence(This,Confidence);
21144}
21145static inline HRESULT ISpeechPhraseProperty_get_Confidence(ISpeechPhraseProperty* This,SpeechEngineConfidence *Confidence) {
21146 return This->lpVtbl->get_Confidence(This,Confidence);
21147}
21148static inline HRESULT ISpeechPhraseProperty_get_Parent(ISpeechPhraseProperty* This,ISpeechPhraseProperty **ParentProperty) {
21149 return This->lpVtbl->get_Parent(This,ParentProperty);
21150}
21151static inline HRESULT ISpeechPhraseProperty_get_Children(ISpeechPhraseProperty* This,ISpeechPhraseProperties **Children) {
21152 return This->lpVtbl->get_Children(This,Children);
21153}
21154#endif
21155#endif
21156
21157#endif
21158
21159
21160#endif /* __ISpeechPhraseProperty_INTERFACE_DEFINED__ */
21161
21162/*****************************************************************************
21163 * ISpeechPhraseProperties interface
21164 */
21165#ifndef __ISpeechPhraseProperties_INTERFACE_DEFINED__
21166#define __ISpeechPhraseProperties_INTERFACE_DEFINED__
21167
21168DEFINE_GUID(IID_ISpeechPhraseProperties, 0x08166b47, 0x102e, 0x4b23, 0xa5,0x99, 0xbd,0xb9,0x8d,0xbf,0xd1,0xf4);
21169#if defined(__cplusplus) && !defined(CINTERFACE)
21170MIDL_INTERFACE("08166b47-102e-4b23-a599-bdb98dbfd1f4")
21171ISpeechPhraseProperties : public IDispatch
21172{
21173 virtual HRESULT STDMETHODCALLTYPE get_Count(
21174 LONG *Count) = 0;
21175
21176 virtual HRESULT STDMETHODCALLTYPE Item(
21177 LONG Index,
21178 ISpeechPhraseProperty **Property) = 0;
21179
21180 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
21181 IUnknown **EnumVARIANT) = 0;
21182
21183};
21184#ifdef __CRT_UUID_DECL
21185__CRT_UUID_DECL(ISpeechPhraseProperties, 0x08166b47, 0x102e, 0x4b23, 0xa5,0x99, 0xbd,0xb9,0x8d,0xbf,0xd1,0xf4)
21186#endif
21187#else
21188typedef struct ISpeechPhrasePropertiesVtbl {
21189 BEGIN_INTERFACE
21190
21191 /*** IUnknown methods ***/
21192 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21193 ISpeechPhraseProperties *This,
21194 REFIID riid,
21195 void **ppvObject);
21196
21197 ULONG (STDMETHODCALLTYPE *AddRef)(
21198 ISpeechPhraseProperties *This);
21199
21200 ULONG (STDMETHODCALLTYPE *Release)(
21201 ISpeechPhraseProperties *This);
21202
21203 /*** IDispatch methods ***/
21204 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21205 ISpeechPhraseProperties *This,
21206 UINT *pctinfo);
21207
21208 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21209 ISpeechPhraseProperties *This,
21210 UINT iTInfo,
21211 LCID lcid,
21212 ITypeInfo **ppTInfo);
21213
21214 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21215 ISpeechPhraseProperties *This,
21216 REFIID riid,
21217 LPOLESTR *rgszNames,
21218 UINT cNames,
21219 LCID lcid,
21220 DISPID *rgDispId);
21221
21222 HRESULT (STDMETHODCALLTYPE *Invoke)(
21223 ISpeechPhraseProperties *This,
21224 DISPID dispIdMember,
21225 REFIID riid,
21226 LCID lcid,
21227 WORD wFlags,
21228 DISPPARAMS *pDispParams,
21229 VARIANT *pVarResult,
21230 EXCEPINFO *pExcepInfo,
21231 UINT *puArgErr);
21232
21233 /*** ISpeechPhraseProperties methods ***/
21234 HRESULT (STDMETHODCALLTYPE *get_Count)(
21235 ISpeechPhraseProperties *This,
21236 LONG *Count);
21237
21238 HRESULT (STDMETHODCALLTYPE *Item)(
21239 ISpeechPhraseProperties *This,
21240 LONG Index,
21241 ISpeechPhraseProperty **Property);
21242
21243 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
21244 ISpeechPhraseProperties *This,
21245 IUnknown **EnumVARIANT);
21246
21247 END_INTERFACE
21248} ISpeechPhrasePropertiesVtbl;
21249
21250interface ISpeechPhraseProperties {
21251 CONST_VTBL ISpeechPhrasePropertiesVtbl* lpVtbl;
21252};
21253
21254#ifdef COBJMACROS
21255#ifndef WIDL_C_INLINE_WRAPPERS
21256/*** IUnknown methods ***/
21257#define ISpeechPhraseProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21258#define ISpeechPhraseProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
21259#define ISpeechPhraseProperties_Release(This) (This)->lpVtbl->Release(This)
21260/*** IDispatch methods ***/
21261#define ISpeechPhraseProperties_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21262#define ISpeechPhraseProperties_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21263#define ISpeechPhraseProperties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21264#define ISpeechPhraseProperties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21265/*** ISpeechPhraseProperties methods ***/
21266#define ISpeechPhraseProperties_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
21267#define ISpeechPhraseProperties_Item(This,Index,Property) (This)->lpVtbl->Item(This,Index,Property)
21268#define ISpeechPhraseProperties_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
21269#else
21270/*** IUnknown methods ***/
21271static inline HRESULT ISpeechPhraseProperties_QueryInterface(ISpeechPhraseProperties* This,REFIID riid,void **ppvObject) {
21272 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21273}
21274static inline ULONG ISpeechPhraseProperties_AddRef(ISpeechPhraseProperties* This) {
21275 return This->lpVtbl->AddRef(This);
21276}
21277static inline ULONG ISpeechPhraseProperties_Release(ISpeechPhraseProperties* This) {
21278 return This->lpVtbl->Release(This);
21279}
21280/*** IDispatch methods ***/
21281static inline HRESULT ISpeechPhraseProperties_GetTypeInfoCount(ISpeechPhraseProperties* This,UINT *pctinfo) {
21282 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21283}
21284static inline HRESULT ISpeechPhraseProperties_GetTypeInfo(ISpeechPhraseProperties* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21285 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21286}
21287static inline HRESULT ISpeechPhraseProperties_GetIDsOfNames(ISpeechPhraseProperties* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21288 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21289}
21290static inline HRESULT ISpeechPhraseProperties_Invoke(ISpeechPhraseProperties* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21291 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21292}
21293/*** ISpeechPhraseProperties methods ***/
21294static inline HRESULT ISpeechPhraseProperties_get_Count(ISpeechPhraseProperties* This,LONG *Count) {
21295 return This->lpVtbl->get_Count(This,Count);
21296}
21297static inline HRESULT ISpeechPhraseProperties_Item(ISpeechPhraseProperties* This,LONG Index,ISpeechPhraseProperty **Property) {
21298 return This->lpVtbl->Item(This,Index,Property);
21299}
21300static inline HRESULT ISpeechPhraseProperties_get__NewEnum(ISpeechPhraseProperties* This,IUnknown **EnumVARIANT) {
21301 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
21302}
21303#endif
21304#endif
21305
21306#endif
21307
21308
21309#endif /* __ISpeechPhraseProperties_INTERFACE_DEFINED__ */
21310
21311/*****************************************************************************
21312 * ISpeechPhraseRule interface
21313 */
21314#ifndef __ISpeechPhraseRule_INTERFACE_DEFINED__
21315#define __ISpeechPhraseRule_INTERFACE_DEFINED__
21316
21317DEFINE_GUID(IID_ISpeechPhraseRule, 0xa7bfe112, 0xa4a0, 0x48d9, 0xb6,0x02, 0xc3,0x13,0x84,0x3f,0x69,0x64);
21318#if defined(__cplusplus) && !defined(CINTERFACE)
21319MIDL_INTERFACE("a7bfe112-a4a0-48d9-b602-c313843f6964")
21320ISpeechPhraseRule : public IDispatch
21321{
21322 virtual HRESULT STDMETHODCALLTYPE get_Name(
21323 BSTR *Name) = 0;
21324
21325 virtual HRESULT STDMETHODCALLTYPE get_Id(
21326 LONG *Id) = 0;
21327
21328 virtual HRESULT STDMETHODCALLTYPE get_FirstElement(
21329 LONG *FirstElement) = 0;
21330
21331 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElements(
21332 LONG *NumberOfElements) = 0;
21333
21334 virtual HRESULT STDMETHODCALLTYPE get_Parent(
21335 ISpeechPhraseRule **Parent) = 0;
21336
21337 virtual HRESULT STDMETHODCALLTYPE get_Children(
21338 ISpeechPhraseRules **Children) = 0;
21339
21340 virtual HRESULT STDMETHODCALLTYPE get_Confidence(
21341 SpeechEngineConfidence *ActualConfidence) = 0;
21342
21343 virtual HRESULT STDMETHODCALLTYPE get_EngineConfidence(
21344 float *EngineConfidence) = 0;
21345
21346};
21347#ifdef __CRT_UUID_DECL
21348__CRT_UUID_DECL(ISpeechPhraseRule, 0xa7bfe112, 0xa4a0, 0x48d9, 0xb6,0x02, 0xc3,0x13,0x84,0x3f,0x69,0x64)
21349#endif
21350#else
21351typedef struct ISpeechPhraseRuleVtbl {
21352 BEGIN_INTERFACE
21353
21354 /*** IUnknown methods ***/
21355 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21356 ISpeechPhraseRule *This,
21357 REFIID riid,
21358 void **ppvObject);
21359
21360 ULONG (STDMETHODCALLTYPE *AddRef)(
21361 ISpeechPhraseRule *This);
21362
21363 ULONG (STDMETHODCALLTYPE *Release)(
21364 ISpeechPhraseRule *This);
21365
21366 /*** IDispatch methods ***/
21367 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21368 ISpeechPhraseRule *This,
21369 UINT *pctinfo);
21370
21371 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21372 ISpeechPhraseRule *This,
21373 UINT iTInfo,
21374 LCID lcid,
21375 ITypeInfo **ppTInfo);
21376
21377 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21378 ISpeechPhraseRule *This,
21379 REFIID riid,
21380 LPOLESTR *rgszNames,
21381 UINT cNames,
21382 LCID lcid,
21383 DISPID *rgDispId);
21384
21385 HRESULT (STDMETHODCALLTYPE *Invoke)(
21386 ISpeechPhraseRule *This,
21387 DISPID dispIdMember,
21388 REFIID riid,
21389 LCID lcid,
21390 WORD wFlags,
21391 DISPPARAMS *pDispParams,
21392 VARIANT *pVarResult,
21393 EXCEPINFO *pExcepInfo,
21394 UINT *puArgErr);
21395
21396 /*** ISpeechPhraseRule methods ***/
21397 HRESULT (STDMETHODCALLTYPE *get_Name)(
21398 ISpeechPhraseRule *This,
21399 BSTR *Name);
21400
21401 HRESULT (STDMETHODCALLTYPE *get_Id)(
21402 ISpeechPhraseRule *This,
21403 LONG *Id);
21404
21405 HRESULT (STDMETHODCALLTYPE *get_FirstElement)(
21406 ISpeechPhraseRule *This,
21407 LONG *FirstElement);
21408
21409 HRESULT (STDMETHODCALLTYPE *get_NumberOfElements)(
21410 ISpeechPhraseRule *This,
21411 LONG *NumberOfElements);
21412
21413 HRESULT (STDMETHODCALLTYPE *get_Parent)(
21414 ISpeechPhraseRule *This,
21415 ISpeechPhraseRule **Parent);
21416
21417 HRESULT (STDMETHODCALLTYPE *get_Children)(
21418 ISpeechPhraseRule *This,
21419 ISpeechPhraseRules **Children);
21420
21421 HRESULT (STDMETHODCALLTYPE *get_Confidence)(
21422 ISpeechPhraseRule *This,
21423 SpeechEngineConfidence *ActualConfidence);
21424
21425 HRESULT (STDMETHODCALLTYPE *get_EngineConfidence)(
21426 ISpeechPhraseRule *This,
21427 float *EngineConfidence);
21428
21429 END_INTERFACE
21430} ISpeechPhraseRuleVtbl;
21431
21432interface ISpeechPhraseRule {
21433 CONST_VTBL ISpeechPhraseRuleVtbl* lpVtbl;
21434};
21435
21436#ifdef COBJMACROS
21437#ifndef WIDL_C_INLINE_WRAPPERS
21438/*** IUnknown methods ***/
21439#define ISpeechPhraseRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21440#define ISpeechPhraseRule_AddRef(This) (This)->lpVtbl->AddRef(This)
21441#define ISpeechPhraseRule_Release(This) (This)->lpVtbl->Release(This)
21442/*** IDispatch methods ***/
21443#define ISpeechPhraseRule_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21444#define ISpeechPhraseRule_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21445#define ISpeechPhraseRule_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21446#define ISpeechPhraseRule_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21447/*** ISpeechPhraseRule methods ***/
21448#define ISpeechPhraseRule_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
21449#define ISpeechPhraseRule_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
21450#define ISpeechPhraseRule_get_FirstElement(This,FirstElement) (This)->lpVtbl->get_FirstElement(This,FirstElement)
21451#define ISpeechPhraseRule_get_NumberOfElements(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElements(This,NumberOfElements)
21452#define ISpeechPhraseRule_get_Parent(This,Parent) (This)->lpVtbl->get_Parent(This,Parent)
21453#define ISpeechPhraseRule_get_Children(This,Children) (This)->lpVtbl->get_Children(This,Children)
21454#define ISpeechPhraseRule_get_Confidence(This,ActualConfidence) (This)->lpVtbl->get_Confidence(This,ActualConfidence)
21455#define ISpeechPhraseRule_get_EngineConfidence(This,EngineConfidence) (This)->lpVtbl->get_EngineConfidence(This,EngineConfidence)
21456#else
21457/*** IUnknown methods ***/
21458static inline HRESULT ISpeechPhraseRule_QueryInterface(ISpeechPhraseRule* This,REFIID riid,void **ppvObject) {
21459 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21460}
21461static inline ULONG ISpeechPhraseRule_AddRef(ISpeechPhraseRule* This) {
21462 return This->lpVtbl->AddRef(This);
21463}
21464static inline ULONG ISpeechPhraseRule_Release(ISpeechPhraseRule* This) {
21465 return This->lpVtbl->Release(This);
21466}
21467/*** IDispatch methods ***/
21468static inline HRESULT ISpeechPhraseRule_GetTypeInfoCount(ISpeechPhraseRule* This,UINT *pctinfo) {
21469 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21470}
21471static inline HRESULT ISpeechPhraseRule_GetTypeInfo(ISpeechPhraseRule* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21472 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21473}
21474static inline HRESULT ISpeechPhraseRule_GetIDsOfNames(ISpeechPhraseRule* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21475 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21476}
21477static inline HRESULT ISpeechPhraseRule_Invoke(ISpeechPhraseRule* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21478 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21479}
21480/*** ISpeechPhraseRule methods ***/
21481static inline HRESULT ISpeechPhraseRule_get_Name(ISpeechPhraseRule* This,BSTR *Name) {
21482 return This->lpVtbl->get_Name(This,Name);
21483}
21484static inline HRESULT ISpeechPhraseRule_get_Id(ISpeechPhraseRule* This,LONG *Id) {
21485 return This->lpVtbl->get_Id(This,Id);
21486}
21487static inline HRESULT ISpeechPhraseRule_get_FirstElement(ISpeechPhraseRule* This,LONG *FirstElement) {
21488 return This->lpVtbl->get_FirstElement(This,FirstElement);
21489}
21490static inline HRESULT ISpeechPhraseRule_get_NumberOfElements(ISpeechPhraseRule* This,LONG *NumberOfElements) {
21491 return This->lpVtbl->get_NumberOfElements(This,NumberOfElements);
21492}
21493static inline HRESULT ISpeechPhraseRule_get_Parent(ISpeechPhraseRule* This,ISpeechPhraseRule **Parent) {
21494 return This->lpVtbl->get_Parent(This,Parent);
21495}
21496static inline HRESULT ISpeechPhraseRule_get_Children(ISpeechPhraseRule* This,ISpeechPhraseRules **Children) {
21497 return This->lpVtbl->get_Children(This,Children);
21498}
21499static inline HRESULT ISpeechPhraseRule_get_Confidence(ISpeechPhraseRule* This,SpeechEngineConfidence *ActualConfidence) {
21500 return This->lpVtbl->get_Confidence(This,ActualConfidence);
21501}
21502static inline HRESULT ISpeechPhraseRule_get_EngineConfidence(ISpeechPhraseRule* This,float *EngineConfidence) {
21503 return This->lpVtbl->get_EngineConfidence(This,EngineConfidence);
21504}
21505#endif
21506#endif
21507
21508#endif
21509
21510
21511#endif /* __ISpeechPhraseRule_INTERFACE_DEFINED__ */
21512
21513/*****************************************************************************
21514 * ISpeechPhraseRules interface
21515 */
21516#ifndef __ISpeechPhraseRules_INTERFACE_DEFINED__
21517#define __ISpeechPhraseRules_INTERFACE_DEFINED__
21518
21519DEFINE_GUID(IID_ISpeechPhraseRules, 0x9047d593, 0x01dd, 0x4b72, 0x81,0xa3, 0xe4,0xa0,0xca,0x69,0xf4,0x07);
21520#if defined(__cplusplus) && !defined(CINTERFACE)
21521MIDL_INTERFACE("9047d593-01dd-4b72-81a3-e4a0ca69f407")
21522ISpeechPhraseRules : public IDispatch
21523{
21524 virtual HRESULT STDMETHODCALLTYPE get_Count(
21525 LONG *Count) = 0;
21526
21527 virtual HRESULT STDMETHODCALLTYPE Item(
21528 LONG Index,
21529 ISpeechPhraseRule **Rule) = 0;
21530
21531 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
21532 IUnknown **EnumVARIANT) = 0;
21533
21534};
21535#ifdef __CRT_UUID_DECL
21536__CRT_UUID_DECL(ISpeechPhraseRules, 0x9047d593, 0x01dd, 0x4b72, 0x81,0xa3, 0xe4,0xa0,0xca,0x69,0xf4,0x07)
21537#endif
21538#else
21539typedef struct ISpeechPhraseRulesVtbl {
21540 BEGIN_INTERFACE
21541
21542 /*** IUnknown methods ***/
21543 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21544 ISpeechPhraseRules *This,
21545 REFIID riid,
21546 void **ppvObject);
21547
21548 ULONG (STDMETHODCALLTYPE *AddRef)(
21549 ISpeechPhraseRules *This);
21550
21551 ULONG (STDMETHODCALLTYPE *Release)(
21552 ISpeechPhraseRules *This);
21553
21554 /*** IDispatch methods ***/
21555 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21556 ISpeechPhraseRules *This,
21557 UINT *pctinfo);
21558
21559 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21560 ISpeechPhraseRules *This,
21561 UINT iTInfo,
21562 LCID lcid,
21563 ITypeInfo **ppTInfo);
21564
21565 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21566 ISpeechPhraseRules *This,
21567 REFIID riid,
21568 LPOLESTR *rgszNames,
21569 UINT cNames,
21570 LCID lcid,
21571 DISPID *rgDispId);
21572
21573 HRESULT (STDMETHODCALLTYPE *Invoke)(
21574 ISpeechPhraseRules *This,
21575 DISPID dispIdMember,
21576 REFIID riid,
21577 LCID lcid,
21578 WORD wFlags,
21579 DISPPARAMS *pDispParams,
21580 VARIANT *pVarResult,
21581 EXCEPINFO *pExcepInfo,
21582 UINT *puArgErr);
21583
21584 /*** ISpeechPhraseRules methods ***/
21585 HRESULT (STDMETHODCALLTYPE *get_Count)(
21586 ISpeechPhraseRules *This,
21587 LONG *Count);
21588
21589 HRESULT (STDMETHODCALLTYPE *Item)(
21590 ISpeechPhraseRules *This,
21591 LONG Index,
21592 ISpeechPhraseRule **Rule);
21593
21594 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
21595 ISpeechPhraseRules *This,
21596 IUnknown **EnumVARIANT);
21597
21598 END_INTERFACE
21599} ISpeechPhraseRulesVtbl;
21600
21601interface ISpeechPhraseRules {
21602 CONST_VTBL ISpeechPhraseRulesVtbl* lpVtbl;
21603};
21604
21605#ifdef COBJMACROS
21606#ifndef WIDL_C_INLINE_WRAPPERS
21607/*** IUnknown methods ***/
21608#define ISpeechPhraseRules_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21609#define ISpeechPhraseRules_AddRef(This) (This)->lpVtbl->AddRef(This)
21610#define ISpeechPhraseRules_Release(This) (This)->lpVtbl->Release(This)
21611/*** IDispatch methods ***/
21612#define ISpeechPhraseRules_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21613#define ISpeechPhraseRules_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21614#define ISpeechPhraseRules_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21615#define ISpeechPhraseRules_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21616/*** ISpeechPhraseRules methods ***/
21617#define ISpeechPhraseRules_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
21618#define ISpeechPhraseRules_Item(This,Index,Rule) (This)->lpVtbl->Item(This,Index,Rule)
21619#define ISpeechPhraseRules_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
21620#else
21621/*** IUnknown methods ***/
21622static inline HRESULT ISpeechPhraseRules_QueryInterface(ISpeechPhraseRules* This,REFIID riid,void **ppvObject) {
21623 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21624}
21625static inline ULONG ISpeechPhraseRules_AddRef(ISpeechPhraseRules* This) {
21626 return This->lpVtbl->AddRef(This);
21627}
21628static inline ULONG ISpeechPhraseRules_Release(ISpeechPhraseRules* This) {
21629 return This->lpVtbl->Release(This);
21630}
21631/*** IDispatch methods ***/
21632static inline HRESULT ISpeechPhraseRules_GetTypeInfoCount(ISpeechPhraseRules* This,UINT *pctinfo) {
21633 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21634}
21635static inline HRESULT ISpeechPhraseRules_GetTypeInfo(ISpeechPhraseRules* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21636 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21637}
21638static inline HRESULT ISpeechPhraseRules_GetIDsOfNames(ISpeechPhraseRules* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21639 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21640}
21641static inline HRESULT ISpeechPhraseRules_Invoke(ISpeechPhraseRules* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21642 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21643}
21644/*** ISpeechPhraseRules methods ***/
21645static inline HRESULT ISpeechPhraseRules_get_Count(ISpeechPhraseRules* This,LONG *Count) {
21646 return This->lpVtbl->get_Count(This,Count);
21647}
21648static inline HRESULT ISpeechPhraseRules_Item(ISpeechPhraseRules* This,LONG Index,ISpeechPhraseRule **Rule) {
21649 return This->lpVtbl->Item(This,Index,Rule);
21650}
21651static inline HRESULT ISpeechPhraseRules_get__NewEnum(ISpeechPhraseRules* This,IUnknown **EnumVARIANT) {
21652 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
21653}
21654#endif
21655#endif
21656
21657#endif
21658
21659
21660#endif /* __ISpeechPhraseRules_INTERFACE_DEFINED__ */
21661
21662/*****************************************************************************
21663 * ISpeechLexiconWords interface
21664 */
21665#ifndef __ISpeechLexiconWords_INTERFACE_DEFINED__
21666#define __ISpeechLexiconWords_INTERFACE_DEFINED__
21667
21668DEFINE_GUID(IID_ISpeechLexiconWords, 0x8d199862, 0x415e, 0x47d5, 0xac,0x4f, 0xfa,0xa6,0x08,0xb4,0x24,0xe6);
21669#if defined(__cplusplus) && !defined(CINTERFACE)
21670MIDL_INTERFACE("8d199862-415e-47d5-ac4f-faa608b424e6")
21671ISpeechLexiconWords : public IDispatch
21672{
21673 virtual HRESULT STDMETHODCALLTYPE get_Count(
21674 LONG *Count) = 0;
21675
21676 virtual HRESULT STDMETHODCALLTYPE Item(
21677 LONG Index,
21678 ISpeechLexiconWord **Word) = 0;
21679
21680 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
21681 IUnknown **EnumVARIANT) = 0;
21682
21683};
21684#ifdef __CRT_UUID_DECL
21685__CRT_UUID_DECL(ISpeechLexiconWords, 0x8d199862, 0x415e, 0x47d5, 0xac,0x4f, 0xfa,0xa6,0x08,0xb4,0x24,0xe6)
21686#endif
21687#else
21688typedef struct ISpeechLexiconWordsVtbl {
21689 BEGIN_INTERFACE
21690
21691 /*** IUnknown methods ***/
21692 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21693 ISpeechLexiconWords *This,
21694 REFIID riid,
21695 void **ppvObject);
21696
21697 ULONG (STDMETHODCALLTYPE *AddRef)(
21698 ISpeechLexiconWords *This);
21699
21700 ULONG (STDMETHODCALLTYPE *Release)(
21701 ISpeechLexiconWords *This);
21702
21703 /*** IDispatch methods ***/
21704 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21705 ISpeechLexiconWords *This,
21706 UINT *pctinfo);
21707
21708 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21709 ISpeechLexiconWords *This,
21710 UINT iTInfo,
21711 LCID lcid,
21712 ITypeInfo **ppTInfo);
21713
21714 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21715 ISpeechLexiconWords *This,
21716 REFIID riid,
21717 LPOLESTR *rgszNames,
21718 UINT cNames,
21719 LCID lcid,
21720 DISPID *rgDispId);
21721
21722 HRESULT (STDMETHODCALLTYPE *Invoke)(
21723 ISpeechLexiconWords *This,
21724 DISPID dispIdMember,
21725 REFIID riid,
21726 LCID lcid,
21727 WORD wFlags,
21728 DISPPARAMS *pDispParams,
21729 VARIANT *pVarResult,
21730 EXCEPINFO *pExcepInfo,
21731 UINT *puArgErr);
21732
21733 /*** ISpeechLexiconWords methods ***/
21734 HRESULT (STDMETHODCALLTYPE *get_Count)(
21735 ISpeechLexiconWords *This,
21736 LONG *Count);
21737
21738 HRESULT (STDMETHODCALLTYPE *Item)(
21739 ISpeechLexiconWords *This,
21740 LONG Index,
21741 ISpeechLexiconWord **Word);
21742
21743 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
21744 ISpeechLexiconWords *This,
21745 IUnknown **EnumVARIANT);
21746
21747 END_INTERFACE
21748} ISpeechLexiconWordsVtbl;
21749
21750interface ISpeechLexiconWords {
21751 CONST_VTBL ISpeechLexiconWordsVtbl* lpVtbl;
21752};
21753
21754#ifdef COBJMACROS
21755#ifndef WIDL_C_INLINE_WRAPPERS
21756/*** IUnknown methods ***/
21757#define ISpeechLexiconWords_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21758#define ISpeechLexiconWords_AddRef(This) (This)->lpVtbl->AddRef(This)
21759#define ISpeechLexiconWords_Release(This) (This)->lpVtbl->Release(This)
21760/*** IDispatch methods ***/
21761#define ISpeechLexiconWords_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21762#define ISpeechLexiconWords_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21763#define ISpeechLexiconWords_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21764#define ISpeechLexiconWords_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21765/*** ISpeechLexiconWords methods ***/
21766#define ISpeechLexiconWords_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
21767#define ISpeechLexiconWords_Item(This,Index,Word) (This)->lpVtbl->Item(This,Index,Word)
21768#define ISpeechLexiconWords_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
21769#else
21770/*** IUnknown methods ***/
21771static inline HRESULT ISpeechLexiconWords_QueryInterface(ISpeechLexiconWords* This,REFIID riid,void **ppvObject) {
21772 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21773}
21774static inline ULONG ISpeechLexiconWords_AddRef(ISpeechLexiconWords* This) {
21775 return This->lpVtbl->AddRef(This);
21776}
21777static inline ULONG ISpeechLexiconWords_Release(ISpeechLexiconWords* This) {
21778 return This->lpVtbl->Release(This);
21779}
21780/*** IDispatch methods ***/
21781static inline HRESULT ISpeechLexiconWords_GetTypeInfoCount(ISpeechLexiconWords* This,UINT *pctinfo) {
21782 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21783}
21784static inline HRESULT ISpeechLexiconWords_GetTypeInfo(ISpeechLexiconWords* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21785 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21786}
21787static inline HRESULT ISpeechLexiconWords_GetIDsOfNames(ISpeechLexiconWords* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21788 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21789}
21790static inline HRESULT ISpeechLexiconWords_Invoke(ISpeechLexiconWords* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21791 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21792}
21793/*** ISpeechLexiconWords methods ***/
21794static inline HRESULT ISpeechLexiconWords_get_Count(ISpeechLexiconWords* This,LONG *Count) {
21795 return This->lpVtbl->get_Count(This,Count);
21796}
21797static inline HRESULT ISpeechLexiconWords_Item(ISpeechLexiconWords* This,LONG Index,ISpeechLexiconWord **Word) {
21798 return This->lpVtbl->Item(This,Index,Word);
21799}
21800static inline HRESULT ISpeechLexiconWords_get__NewEnum(ISpeechLexiconWords* This,IUnknown **EnumVARIANT) {
21801 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
21802}
21803#endif
21804#endif
21805
21806#endif
21807
21808
21809#endif /* __ISpeechLexiconWords_INTERFACE_DEFINED__ */
21810
21811/*****************************************************************************
21812 * ISpeechLexicon interface
21813 */
21814#ifndef __ISpeechLexicon_INTERFACE_DEFINED__
21815#define __ISpeechLexicon_INTERFACE_DEFINED__
21816
21817DEFINE_GUID(IID_ISpeechLexicon, 0x3da7627a, 0xc7ae, 0x4b23, 0x87,0x08, 0x63,0x8c,0x50,0x36,0x2c,0x25);
21818#if defined(__cplusplus) && !defined(CINTERFACE)
21819MIDL_INTERFACE("3da7627a-c7ae-4b23-8708-638c50362c25")
21820ISpeechLexicon : public IDispatch
21821{
21822 virtual HRESULT STDMETHODCALLTYPE get_GenerationId(
21823 LONG *GenerationId) = 0;
21824
21825 virtual HRESULT STDMETHODCALLTYPE GetWords(
21826 SpeechLexiconType Flags,
21827 LONG *GenerationID,
21828 ISpeechLexiconWords **Words) = 0;
21829
21830 virtual HRESULT STDMETHODCALLTYPE AddPronunciation(
21831 BSTR bstrWord,
21832 SpeechLanguageId LangId,
21833 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
21834 BSTR bstrPronunciation = L"") = 0;
21835
21836 virtual HRESULT STDMETHODCALLTYPE AddPronunciationByPhoneIds(
21837 BSTR bstrWord,
21838 SpeechLanguageId LangId,
21839 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
21840 VARIANT *PhoneIds = 0) = 0;
21841
21842 virtual HRESULT STDMETHODCALLTYPE RemovePronunciation(
21843 BSTR bstrWord,
21844 SpeechLanguageId LangId,
21845 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
21846 BSTR bstrPronunciation = L"") = 0;
21847
21848 virtual HRESULT STDMETHODCALLTYPE RemovePronunciationByPhoneIds(
21849 BSTR bstrWord,
21850 SpeechLanguageId LangId,
21851 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
21852 VARIANT *PhoneIds = 0) = 0;
21853
21854 virtual HRESULT STDMETHODCALLTYPE GetPronunciations(
21855 BSTR bstrWord,
21856 SpeechLanguageId LangId,
21857 SpeechLexiconType TypeFlags,
21858 ISpeechLexiconPronunciations **ppPronunciations) = 0;
21859
21860 virtual HRESULT STDMETHODCALLTYPE GetGenerationChange(
21861 LONG *GenerationID,
21862 ISpeechLexiconWords **ppWords) = 0;
21863
21864};
21865#ifdef __CRT_UUID_DECL
21866__CRT_UUID_DECL(ISpeechLexicon, 0x3da7627a, 0xc7ae, 0x4b23, 0x87,0x08, 0x63,0x8c,0x50,0x36,0x2c,0x25)
21867#endif
21868#else
21869typedef struct ISpeechLexiconVtbl {
21870 BEGIN_INTERFACE
21871
21872 /*** IUnknown methods ***/
21873 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21874 ISpeechLexicon *This,
21875 REFIID riid,
21876 void **ppvObject);
21877
21878 ULONG (STDMETHODCALLTYPE *AddRef)(
21879 ISpeechLexicon *This);
21880
21881 ULONG (STDMETHODCALLTYPE *Release)(
21882 ISpeechLexicon *This);
21883
21884 /*** IDispatch methods ***/
21885 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21886 ISpeechLexicon *This,
21887 UINT *pctinfo);
21888
21889 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21890 ISpeechLexicon *This,
21891 UINT iTInfo,
21892 LCID lcid,
21893 ITypeInfo **ppTInfo);
21894
21895 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21896 ISpeechLexicon *This,
21897 REFIID riid,
21898 LPOLESTR *rgszNames,
21899 UINT cNames,
21900 LCID lcid,
21901 DISPID *rgDispId);
21902
21903 HRESULT (STDMETHODCALLTYPE *Invoke)(
21904 ISpeechLexicon *This,
21905 DISPID dispIdMember,
21906 REFIID riid,
21907 LCID lcid,
21908 WORD wFlags,
21909 DISPPARAMS *pDispParams,
21910 VARIANT *pVarResult,
21911 EXCEPINFO *pExcepInfo,
21912 UINT *puArgErr);
21913
21914 /*** ISpeechLexicon methods ***/
21915 HRESULT (STDMETHODCALLTYPE *get_GenerationId)(
21916 ISpeechLexicon *This,
21917 LONG *GenerationId);
21918
21919 HRESULT (STDMETHODCALLTYPE *GetWords)(
21920 ISpeechLexicon *This,
21921 SpeechLexiconType Flags,
21922 LONG *GenerationID,
21923 ISpeechLexiconWords **Words);
21924
21925 HRESULT (STDMETHODCALLTYPE *AddPronunciation)(
21926 ISpeechLexicon *This,
21927 BSTR bstrWord,
21928 SpeechLanguageId LangId,
21929 SpeechPartOfSpeech PartOfSpeech,
21930 BSTR bstrPronunciation);
21931
21932 HRESULT (STDMETHODCALLTYPE *AddPronunciationByPhoneIds)(
21933 ISpeechLexicon *This,
21934 BSTR bstrWord,
21935 SpeechLanguageId LangId,
21936 SpeechPartOfSpeech PartOfSpeech,
21937 VARIANT *PhoneIds);
21938
21939 HRESULT (STDMETHODCALLTYPE *RemovePronunciation)(
21940 ISpeechLexicon *This,
21941 BSTR bstrWord,
21942 SpeechLanguageId LangId,
21943 SpeechPartOfSpeech PartOfSpeech,
21944 BSTR bstrPronunciation);
21945
21946 HRESULT (STDMETHODCALLTYPE *RemovePronunciationByPhoneIds)(
21947 ISpeechLexicon *This,
21948 BSTR bstrWord,
21949 SpeechLanguageId LangId,
21950 SpeechPartOfSpeech PartOfSpeech,
21951 VARIANT *PhoneIds);
21952
21953 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
21954 ISpeechLexicon *This,
21955 BSTR bstrWord,
21956 SpeechLanguageId LangId,
21957 SpeechLexiconType TypeFlags,
21958 ISpeechLexiconPronunciations **ppPronunciations);
21959
21960 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
21961 ISpeechLexicon *This,
21962 LONG *GenerationID,
21963 ISpeechLexiconWords **ppWords);
21964
21965 END_INTERFACE
21966} ISpeechLexiconVtbl;
21967
21968interface ISpeechLexicon {
21969 CONST_VTBL ISpeechLexiconVtbl* lpVtbl;
21970};
21971
21972#ifdef COBJMACROS
21973#ifndef WIDL_C_INLINE_WRAPPERS
21974/*** IUnknown methods ***/
21975#define ISpeechLexicon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21976#define ISpeechLexicon_AddRef(This) (This)->lpVtbl->AddRef(This)
21977#define ISpeechLexicon_Release(This) (This)->lpVtbl->Release(This)
21978/*** IDispatch methods ***/
21979#define ISpeechLexicon_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21980#define ISpeechLexicon_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21981#define ISpeechLexicon_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21982#define ISpeechLexicon_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21983/*** ISpeechLexicon methods ***/
21984#define ISpeechLexicon_get_GenerationId(This,GenerationId) (This)->lpVtbl->get_GenerationId(This,GenerationId)
21985#define ISpeechLexicon_GetWords(This,Flags,GenerationID,Words) (This)->lpVtbl->GetWords(This,Flags,GenerationID,Words)
21986#define ISpeechLexicon_AddPronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation) (This)->lpVtbl->AddPronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation)
21987#define ISpeechLexicon_AddPronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds) (This)->lpVtbl->AddPronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds)
21988#define ISpeechLexicon_RemovePronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation) (This)->lpVtbl->RemovePronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation)
21989#define ISpeechLexicon_RemovePronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds) (This)->lpVtbl->RemovePronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds)
21990#define ISpeechLexicon_GetPronunciations(This,bstrWord,LangId,TypeFlags,ppPronunciations) (This)->lpVtbl->GetPronunciations(This,bstrWord,LangId,TypeFlags,ppPronunciations)
21991#define ISpeechLexicon_GetGenerationChange(This,GenerationID,ppWords) (This)->lpVtbl->GetGenerationChange(This,GenerationID,ppWords)
21992#else
21993/*** IUnknown methods ***/
21994static inline HRESULT ISpeechLexicon_QueryInterface(ISpeechLexicon* This,REFIID riid,void **ppvObject) {
21995 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21996}
21997static inline ULONG ISpeechLexicon_AddRef(ISpeechLexicon* This) {
21998 return This->lpVtbl->AddRef(This);
21999}
22000static inline ULONG ISpeechLexicon_Release(ISpeechLexicon* This) {
22001 return This->lpVtbl->Release(This);
22002}
22003/*** IDispatch methods ***/
22004static inline HRESULT ISpeechLexicon_GetTypeInfoCount(ISpeechLexicon* This,UINT *pctinfo) {
22005 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22006}
22007static inline HRESULT ISpeechLexicon_GetTypeInfo(ISpeechLexicon* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22008 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22009}
22010static inline HRESULT ISpeechLexicon_GetIDsOfNames(ISpeechLexicon* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22011 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22012}
22013static inline HRESULT ISpeechLexicon_Invoke(ISpeechLexicon* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22014 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22015}
22016/*** ISpeechLexicon methods ***/
22017static inline HRESULT ISpeechLexicon_get_GenerationId(ISpeechLexicon* This,LONG *GenerationId) {
22018 return This->lpVtbl->get_GenerationId(This,GenerationId);
22019}
22020static inline HRESULT ISpeechLexicon_GetWords(ISpeechLexicon* This,SpeechLexiconType Flags,LONG *GenerationID,ISpeechLexiconWords **Words) {
22021 return This->lpVtbl->GetWords(This,Flags,GenerationID,Words);
22022}
22023static inline HRESULT ISpeechLexicon_AddPronunciation(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,BSTR bstrPronunciation) {
22024 return This->lpVtbl->AddPronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation);
22025}
22026static inline HRESULT ISpeechLexicon_AddPronunciationByPhoneIds(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,VARIANT *PhoneIds) {
22027 return This->lpVtbl->AddPronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds);
22028}
22029static inline HRESULT ISpeechLexicon_RemovePronunciation(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,BSTR bstrPronunciation) {
22030 return This->lpVtbl->RemovePronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation);
22031}
22032static inline HRESULT ISpeechLexicon_RemovePronunciationByPhoneIds(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,VARIANT *PhoneIds) {
22033 return This->lpVtbl->RemovePronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds);
22034}
22035static inline HRESULT ISpeechLexicon_GetPronunciations(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechLexiconType TypeFlags,ISpeechLexiconPronunciations **ppPronunciations) {
22036 return This->lpVtbl->GetPronunciations(This,bstrWord,LangId,TypeFlags,ppPronunciations);
22037}
22038static inline HRESULT ISpeechLexicon_GetGenerationChange(ISpeechLexicon* This,LONG *GenerationID,ISpeechLexiconWords **ppWords) {
22039 return This->lpVtbl->GetGenerationChange(This,GenerationID,ppWords);
22040}
22041#endif
22042#endif
22043
22044#endif
22045
22046
22047#endif /* __ISpeechLexicon_INTERFACE_DEFINED__ */
22048
22049/*****************************************************************************
22050 * ISpeechLexiconWord interface
22051 */
22052#ifndef __ISpeechLexiconWord_INTERFACE_DEFINED__
22053#define __ISpeechLexiconWord_INTERFACE_DEFINED__
22054
22055DEFINE_GUID(IID_ISpeechLexiconWord, 0x4e5b933c, 0xc9be, 0x48ed, 0x88,0x42, 0x1e,0xe5,0x1b,0xb1,0xd4,0xff);
22056#if defined(__cplusplus) && !defined(CINTERFACE)
22057MIDL_INTERFACE("4e5b933c-c9be-48ed-8842-1ee51bb1d4ff")
22058ISpeechLexiconWord : public IDispatch
22059{
22060 virtual HRESULT STDMETHODCALLTYPE get_LangId(
22061 SpeechLanguageId *LangId) = 0;
22062
22063 virtual HRESULT STDMETHODCALLTYPE get_Type(
22064 SpeechWordType *WordType) = 0;
22065
22066 virtual HRESULT STDMETHODCALLTYPE get_Word(
22067 BSTR *Word) = 0;
22068
22069 virtual HRESULT STDMETHODCALLTYPE get_Pronunciations(
22070 ISpeechLexiconPronunciations **Pronunciations) = 0;
22071
22072};
22073#ifdef __CRT_UUID_DECL
22074__CRT_UUID_DECL(ISpeechLexiconWord, 0x4e5b933c, 0xc9be, 0x48ed, 0x88,0x42, 0x1e,0xe5,0x1b,0xb1,0xd4,0xff)
22075#endif
22076#else
22077typedef struct ISpeechLexiconWordVtbl {
22078 BEGIN_INTERFACE
22079
22080 /*** IUnknown methods ***/
22081 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22082 ISpeechLexiconWord *This,
22083 REFIID riid,
22084 void **ppvObject);
22085
22086 ULONG (STDMETHODCALLTYPE *AddRef)(
22087 ISpeechLexiconWord *This);
22088
22089 ULONG (STDMETHODCALLTYPE *Release)(
22090 ISpeechLexiconWord *This);
22091
22092 /*** IDispatch methods ***/
22093 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22094 ISpeechLexiconWord *This,
22095 UINT *pctinfo);
22096
22097 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22098 ISpeechLexiconWord *This,
22099 UINT iTInfo,
22100 LCID lcid,
22101 ITypeInfo **ppTInfo);
22102
22103 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22104 ISpeechLexiconWord *This,
22105 REFIID riid,
22106 LPOLESTR *rgszNames,
22107 UINT cNames,
22108 LCID lcid,
22109 DISPID *rgDispId);
22110
22111 HRESULT (STDMETHODCALLTYPE *Invoke)(
22112 ISpeechLexiconWord *This,
22113 DISPID dispIdMember,
22114 REFIID riid,
22115 LCID lcid,
22116 WORD wFlags,
22117 DISPPARAMS *pDispParams,
22118 VARIANT *pVarResult,
22119 EXCEPINFO *pExcepInfo,
22120 UINT *puArgErr);
22121
22122 /*** ISpeechLexiconWord methods ***/
22123 HRESULT (STDMETHODCALLTYPE *get_LangId)(
22124 ISpeechLexiconWord *This,
22125 SpeechLanguageId *LangId);
22126
22127 HRESULT (STDMETHODCALLTYPE *get_Type)(
22128 ISpeechLexiconWord *This,
22129 SpeechWordType *WordType);
22130
22131 HRESULT (STDMETHODCALLTYPE *get_Word)(
22132 ISpeechLexiconWord *This,
22133 BSTR *Word);
22134
22135 HRESULT (STDMETHODCALLTYPE *get_Pronunciations)(
22136 ISpeechLexiconWord *This,
22137 ISpeechLexiconPronunciations **Pronunciations);
22138
22139 END_INTERFACE
22140} ISpeechLexiconWordVtbl;
22141
22142interface ISpeechLexiconWord {
22143 CONST_VTBL ISpeechLexiconWordVtbl* lpVtbl;
22144};
22145
22146#ifdef COBJMACROS
22147#ifndef WIDL_C_INLINE_WRAPPERS
22148/*** IUnknown methods ***/
22149#define ISpeechLexiconWord_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22150#define ISpeechLexiconWord_AddRef(This) (This)->lpVtbl->AddRef(This)
22151#define ISpeechLexiconWord_Release(This) (This)->lpVtbl->Release(This)
22152/*** IDispatch methods ***/
22153#define ISpeechLexiconWord_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22154#define ISpeechLexiconWord_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22155#define ISpeechLexiconWord_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22156#define ISpeechLexiconWord_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22157/*** ISpeechLexiconWord methods ***/
22158#define ISpeechLexiconWord_get_LangId(This,LangId) (This)->lpVtbl->get_LangId(This,LangId)
22159#define ISpeechLexiconWord_get_Type(This,WordType) (This)->lpVtbl->get_Type(This,WordType)
22160#define ISpeechLexiconWord_get_Word(This,Word) (This)->lpVtbl->get_Word(This,Word)
22161#define ISpeechLexiconWord_get_Pronunciations(This,Pronunciations) (This)->lpVtbl->get_Pronunciations(This,Pronunciations)
22162#else
22163/*** IUnknown methods ***/
22164static inline HRESULT ISpeechLexiconWord_QueryInterface(ISpeechLexiconWord* This,REFIID riid,void **ppvObject) {
22165 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22166}
22167static inline ULONG ISpeechLexiconWord_AddRef(ISpeechLexiconWord* This) {
22168 return This->lpVtbl->AddRef(This);
22169}
22170static inline ULONG ISpeechLexiconWord_Release(ISpeechLexiconWord* This) {
22171 return This->lpVtbl->Release(This);
22172}
22173/*** IDispatch methods ***/
22174static inline HRESULT ISpeechLexiconWord_GetTypeInfoCount(ISpeechLexiconWord* This,UINT *pctinfo) {
22175 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22176}
22177static inline HRESULT ISpeechLexiconWord_GetTypeInfo(ISpeechLexiconWord* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22178 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22179}
22180static inline HRESULT ISpeechLexiconWord_GetIDsOfNames(ISpeechLexiconWord* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22181 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22182}
22183static inline HRESULT ISpeechLexiconWord_Invoke(ISpeechLexiconWord* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22184 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22185}
22186/*** ISpeechLexiconWord methods ***/
22187static inline HRESULT ISpeechLexiconWord_get_LangId(ISpeechLexiconWord* This,SpeechLanguageId *LangId) {
22188 return This->lpVtbl->get_LangId(This,LangId);
22189}
22190static inline HRESULT ISpeechLexiconWord_get_Type(ISpeechLexiconWord* This,SpeechWordType *WordType) {
22191 return This->lpVtbl->get_Type(This,WordType);
22192}
22193static inline HRESULT ISpeechLexiconWord_get_Word(ISpeechLexiconWord* This,BSTR *Word) {
22194 return This->lpVtbl->get_Word(This,Word);
22195}
22196static inline HRESULT ISpeechLexiconWord_get_Pronunciations(ISpeechLexiconWord* This,ISpeechLexiconPronunciations **Pronunciations) {
22197 return This->lpVtbl->get_Pronunciations(This,Pronunciations);
22198}
22199#endif
22200#endif
22201
22202#endif
22203
22204
22205#endif /* __ISpeechLexiconWord_INTERFACE_DEFINED__ */
22206
22207/*****************************************************************************
22208 * ISpeechLexiconPronunciations interface
22209 */
22210#ifndef __ISpeechLexiconPronunciations_INTERFACE_DEFINED__
22211#define __ISpeechLexiconPronunciations_INTERFACE_DEFINED__
22212
22213DEFINE_GUID(IID_ISpeechLexiconPronunciations, 0x72829128, 0x5682, 0x4704, 0xa0,0xd4, 0x3e,0x2b,0xb6,0xf2,0xea,0xd3);
22214#if defined(__cplusplus) && !defined(CINTERFACE)
22215MIDL_INTERFACE("72829128-5682-4704-a0d4-3e2bb6f2ead3")
22216ISpeechLexiconPronunciations : public IDispatch
22217{
22218 virtual HRESULT STDMETHODCALLTYPE get_Count(
22219 LONG *Count) = 0;
22220
22221 virtual HRESULT STDMETHODCALLTYPE Item(
22222 LONG Index,
22223 ISpeechLexiconPronunciation **Pronunciation) = 0;
22224
22225 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
22226 IUnknown **EnumVARIANT) = 0;
22227
22228};
22229#ifdef __CRT_UUID_DECL
22230__CRT_UUID_DECL(ISpeechLexiconPronunciations, 0x72829128, 0x5682, 0x4704, 0xa0,0xd4, 0x3e,0x2b,0xb6,0xf2,0xea,0xd3)
22231#endif
22232#else
22233typedef struct ISpeechLexiconPronunciationsVtbl {
22234 BEGIN_INTERFACE
22235
22236 /*** IUnknown methods ***/
22237 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22238 ISpeechLexiconPronunciations *This,
22239 REFIID riid,
22240 void **ppvObject);
22241
22242 ULONG (STDMETHODCALLTYPE *AddRef)(
22243 ISpeechLexiconPronunciations *This);
22244
22245 ULONG (STDMETHODCALLTYPE *Release)(
22246 ISpeechLexiconPronunciations *This);
22247
22248 /*** IDispatch methods ***/
22249 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22250 ISpeechLexiconPronunciations *This,
22251 UINT *pctinfo);
22252
22253 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22254 ISpeechLexiconPronunciations *This,
22255 UINT iTInfo,
22256 LCID lcid,
22257 ITypeInfo **ppTInfo);
22258
22259 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22260 ISpeechLexiconPronunciations *This,
22261 REFIID riid,
22262 LPOLESTR *rgszNames,
22263 UINT cNames,
22264 LCID lcid,
22265 DISPID *rgDispId);
22266
22267 HRESULT (STDMETHODCALLTYPE *Invoke)(
22268 ISpeechLexiconPronunciations *This,
22269 DISPID dispIdMember,
22270 REFIID riid,
22271 LCID lcid,
22272 WORD wFlags,
22273 DISPPARAMS *pDispParams,
22274 VARIANT *pVarResult,
22275 EXCEPINFO *pExcepInfo,
22276 UINT *puArgErr);
22277
22278 /*** ISpeechLexiconPronunciations methods ***/
22279 HRESULT (STDMETHODCALLTYPE *get_Count)(
22280 ISpeechLexiconPronunciations *This,
22281 LONG *Count);
22282
22283 HRESULT (STDMETHODCALLTYPE *Item)(
22284 ISpeechLexiconPronunciations *This,
22285 LONG Index,
22286 ISpeechLexiconPronunciation **Pronunciation);
22287
22288 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
22289 ISpeechLexiconPronunciations *This,
22290 IUnknown **EnumVARIANT);
22291
22292 END_INTERFACE
22293} ISpeechLexiconPronunciationsVtbl;
22294
22295interface ISpeechLexiconPronunciations {
22296 CONST_VTBL ISpeechLexiconPronunciationsVtbl* lpVtbl;
22297};
22298
22299#ifdef COBJMACROS
22300#ifndef WIDL_C_INLINE_WRAPPERS
22301/*** IUnknown methods ***/
22302#define ISpeechLexiconPronunciations_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22303#define ISpeechLexiconPronunciations_AddRef(This) (This)->lpVtbl->AddRef(This)
22304#define ISpeechLexiconPronunciations_Release(This) (This)->lpVtbl->Release(This)
22305/*** IDispatch methods ***/
22306#define ISpeechLexiconPronunciations_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22307#define ISpeechLexiconPronunciations_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22308#define ISpeechLexiconPronunciations_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22309#define ISpeechLexiconPronunciations_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22310/*** ISpeechLexiconPronunciations methods ***/
22311#define ISpeechLexiconPronunciations_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
22312#define ISpeechLexiconPronunciations_Item(This,Index,Pronunciation) (This)->lpVtbl->Item(This,Index,Pronunciation)
22313#define ISpeechLexiconPronunciations_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
22314#else
22315/*** IUnknown methods ***/
22316static inline HRESULT ISpeechLexiconPronunciations_QueryInterface(ISpeechLexiconPronunciations* This,REFIID riid,void **ppvObject) {
22317 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22318}
22319static inline ULONG ISpeechLexiconPronunciations_AddRef(ISpeechLexiconPronunciations* This) {
22320 return This->lpVtbl->AddRef(This);
22321}
22322static inline ULONG ISpeechLexiconPronunciations_Release(ISpeechLexiconPronunciations* This) {
22323 return This->lpVtbl->Release(This);
22324}
22325/*** IDispatch methods ***/
22326static inline HRESULT ISpeechLexiconPronunciations_GetTypeInfoCount(ISpeechLexiconPronunciations* This,UINT *pctinfo) {
22327 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22328}
22329static inline HRESULT ISpeechLexiconPronunciations_GetTypeInfo(ISpeechLexiconPronunciations* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22330 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22331}
22332static inline HRESULT ISpeechLexiconPronunciations_GetIDsOfNames(ISpeechLexiconPronunciations* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22333 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22334}
22335static inline HRESULT ISpeechLexiconPronunciations_Invoke(ISpeechLexiconPronunciations* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22336 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22337}
22338/*** ISpeechLexiconPronunciations methods ***/
22339static inline HRESULT ISpeechLexiconPronunciations_get_Count(ISpeechLexiconPronunciations* This,LONG *Count) {
22340 return This->lpVtbl->get_Count(This,Count);
22341}
22342static inline HRESULT ISpeechLexiconPronunciations_Item(ISpeechLexiconPronunciations* This,LONG Index,ISpeechLexiconPronunciation **Pronunciation) {
22343 return This->lpVtbl->Item(This,Index,Pronunciation);
22344}
22345static inline HRESULT ISpeechLexiconPronunciations_get__NewEnum(ISpeechLexiconPronunciations* This,IUnknown **EnumVARIANT) {
22346 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
22347}
22348#endif
22349#endif
22350
22351#endif
22352
22353
22354#endif /* __ISpeechLexiconPronunciations_INTERFACE_DEFINED__ */
22355
22356/*****************************************************************************
22357 * ISpeechLexiconPronunciation interface
22358 */
22359#ifndef __ISpeechLexiconPronunciation_INTERFACE_DEFINED__
22360#define __ISpeechLexiconPronunciation_INTERFACE_DEFINED__
22361
22362DEFINE_GUID(IID_ISpeechLexiconPronunciation, 0x95252c5d, 0x9e43, 0x4f4a, 0x98,0x99, 0x48,0xee,0x73,0x35,0x2f,0x9f);
22363#if defined(__cplusplus) && !defined(CINTERFACE)
22364MIDL_INTERFACE("95252c5d-9e43-4f4a-9899-48ee73352f9f")
22365ISpeechLexiconPronunciation : public IDispatch
22366{
22367 virtual HRESULT STDMETHODCALLTYPE get_Type(
22368 SpeechLexiconType *LexiconType) = 0;
22369
22370 virtual HRESULT STDMETHODCALLTYPE get_LangId(
22371 SpeechLanguageId *LangId) = 0;
22372
22373 virtual HRESULT STDMETHODCALLTYPE get_PartOfSpeech(
22374 SpeechPartOfSpeech *PartOfSpeech) = 0;
22375
22376 virtual HRESULT STDMETHODCALLTYPE get_PhoneIds(
22377 VARIANT *PhoneIds) = 0;
22378
22379 virtual HRESULT STDMETHODCALLTYPE get_Symbolic(
22380 BSTR *Symbolic) = 0;
22381
22382};
22383#ifdef __CRT_UUID_DECL
22384__CRT_UUID_DECL(ISpeechLexiconPronunciation, 0x95252c5d, 0x9e43, 0x4f4a, 0x98,0x99, 0x48,0xee,0x73,0x35,0x2f,0x9f)
22385#endif
22386#else
22387typedef struct ISpeechLexiconPronunciationVtbl {
22388 BEGIN_INTERFACE
22389
22390 /*** IUnknown methods ***/
22391 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22392 ISpeechLexiconPronunciation *This,
22393 REFIID riid,
22394 void **ppvObject);
22395
22396 ULONG (STDMETHODCALLTYPE *AddRef)(
22397 ISpeechLexiconPronunciation *This);
22398
22399 ULONG (STDMETHODCALLTYPE *Release)(
22400 ISpeechLexiconPronunciation *This);
22401
22402 /*** IDispatch methods ***/
22403 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22404 ISpeechLexiconPronunciation *This,
22405 UINT *pctinfo);
22406
22407 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22408 ISpeechLexiconPronunciation *This,
22409 UINT iTInfo,
22410 LCID lcid,
22411 ITypeInfo **ppTInfo);
22412
22413 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22414 ISpeechLexiconPronunciation *This,
22415 REFIID riid,
22416 LPOLESTR *rgszNames,
22417 UINT cNames,
22418 LCID lcid,
22419 DISPID *rgDispId);
22420
22421 HRESULT (STDMETHODCALLTYPE *Invoke)(
22422 ISpeechLexiconPronunciation *This,
22423 DISPID dispIdMember,
22424 REFIID riid,
22425 LCID lcid,
22426 WORD wFlags,
22427 DISPPARAMS *pDispParams,
22428 VARIANT *pVarResult,
22429 EXCEPINFO *pExcepInfo,
22430 UINT *puArgErr);
22431
22432 /*** ISpeechLexiconPronunciation methods ***/
22433 HRESULT (STDMETHODCALLTYPE *get_Type)(
22434 ISpeechLexiconPronunciation *This,
22435 SpeechLexiconType *LexiconType);
22436
22437 HRESULT (STDMETHODCALLTYPE *get_LangId)(
22438 ISpeechLexiconPronunciation *This,
22439 SpeechLanguageId *LangId);
22440
22441 HRESULT (STDMETHODCALLTYPE *get_PartOfSpeech)(
22442 ISpeechLexiconPronunciation *This,
22443 SpeechPartOfSpeech *PartOfSpeech);
22444
22445 HRESULT (STDMETHODCALLTYPE *get_PhoneIds)(
22446 ISpeechLexiconPronunciation *This,
22447 VARIANT *PhoneIds);
22448
22449 HRESULT (STDMETHODCALLTYPE *get_Symbolic)(
22450 ISpeechLexiconPronunciation *This,
22451 BSTR *Symbolic);
22452
22453 END_INTERFACE
22454} ISpeechLexiconPronunciationVtbl;
22455
22456interface ISpeechLexiconPronunciation {
22457 CONST_VTBL ISpeechLexiconPronunciationVtbl* lpVtbl;
22458};
22459
22460#ifdef COBJMACROS
22461#ifndef WIDL_C_INLINE_WRAPPERS
22462/*** IUnknown methods ***/
22463#define ISpeechLexiconPronunciation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22464#define ISpeechLexiconPronunciation_AddRef(This) (This)->lpVtbl->AddRef(This)
22465#define ISpeechLexiconPronunciation_Release(This) (This)->lpVtbl->Release(This)
22466/*** IDispatch methods ***/
22467#define ISpeechLexiconPronunciation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22468#define ISpeechLexiconPronunciation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22469#define ISpeechLexiconPronunciation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22470#define ISpeechLexiconPronunciation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22471/*** ISpeechLexiconPronunciation methods ***/
22472#define ISpeechLexiconPronunciation_get_Type(This,LexiconType) (This)->lpVtbl->get_Type(This,LexiconType)
22473#define ISpeechLexiconPronunciation_get_LangId(This,LangId) (This)->lpVtbl->get_LangId(This,LangId)
22474#define ISpeechLexiconPronunciation_get_PartOfSpeech(This,PartOfSpeech) (This)->lpVtbl->get_PartOfSpeech(This,PartOfSpeech)
22475#define ISpeechLexiconPronunciation_get_PhoneIds(This,PhoneIds) (This)->lpVtbl->get_PhoneIds(This,PhoneIds)
22476#define ISpeechLexiconPronunciation_get_Symbolic(This,Symbolic) (This)->lpVtbl->get_Symbolic(This,Symbolic)
22477#else
22478/*** IUnknown methods ***/
22479static inline HRESULT ISpeechLexiconPronunciation_QueryInterface(ISpeechLexiconPronunciation* This,REFIID riid,void **ppvObject) {
22480 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22481}
22482static inline ULONG ISpeechLexiconPronunciation_AddRef(ISpeechLexiconPronunciation* This) {
22483 return This->lpVtbl->AddRef(This);
22484}
22485static inline ULONG ISpeechLexiconPronunciation_Release(ISpeechLexiconPronunciation* This) {
22486 return This->lpVtbl->Release(This);
22487}
22488/*** IDispatch methods ***/
22489static inline HRESULT ISpeechLexiconPronunciation_GetTypeInfoCount(ISpeechLexiconPronunciation* This,UINT *pctinfo) {
22490 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22491}
22492static inline HRESULT ISpeechLexiconPronunciation_GetTypeInfo(ISpeechLexiconPronunciation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22493 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22494}
22495static inline HRESULT ISpeechLexiconPronunciation_GetIDsOfNames(ISpeechLexiconPronunciation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22496 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22497}
22498static inline HRESULT ISpeechLexiconPronunciation_Invoke(ISpeechLexiconPronunciation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22499 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22500}
22501/*** ISpeechLexiconPronunciation methods ***/
22502static inline HRESULT ISpeechLexiconPronunciation_get_Type(ISpeechLexiconPronunciation* This,SpeechLexiconType *LexiconType) {
22503 return This->lpVtbl->get_Type(This,LexiconType);
22504}
22505static inline HRESULT ISpeechLexiconPronunciation_get_LangId(ISpeechLexiconPronunciation* This,SpeechLanguageId *LangId) {
22506 return This->lpVtbl->get_LangId(This,LangId);
22507}
22508static inline HRESULT ISpeechLexiconPronunciation_get_PartOfSpeech(ISpeechLexiconPronunciation* This,SpeechPartOfSpeech *PartOfSpeech) {
22509 return This->lpVtbl->get_PartOfSpeech(This,PartOfSpeech);
22510}
22511static inline HRESULT ISpeechLexiconPronunciation_get_PhoneIds(ISpeechLexiconPronunciation* This,VARIANT *PhoneIds) {
22512 return This->lpVtbl->get_PhoneIds(This,PhoneIds);
22513}
22514static inline HRESULT ISpeechLexiconPronunciation_get_Symbolic(ISpeechLexiconPronunciation* This,BSTR *Symbolic) {
22515 return This->lpVtbl->get_Symbolic(This,Symbolic);
22516}
22517#endif
22518#endif
22519
22520#endif
22521
22522
22523#endif /* __ISpeechLexiconPronunciation_INTERFACE_DEFINED__ */
22524
22525/*****************************************************************************
22526 * ISpeechPhoneConverter interface
22527 */
22528#ifndef __ISpeechPhoneConverter_INTERFACE_DEFINED__
22529#define __ISpeechPhoneConverter_INTERFACE_DEFINED__
22530
22531DEFINE_GUID(IID_ISpeechPhoneConverter, 0xc3e4f353, 0x433f, 0x43d6, 0x89,0xa1, 0x6a,0x62,0xa7,0x05,0x4c,0x3d);
22532#if defined(__cplusplus) && !defined(CINTERFACE)
22533MIDL_INTERFACE("c3e4f353-433f-43d6-89a1-6a62a7054c3d")
22534ISpeechPhoneConverter : public IDispatch
22535{
22536 virtual HRESULT STDMETHODCALLTYPE get_LanguageId(
22537 SpeechLanguageId *LanguageId) = 0;
22538
22539 virtual HRESULT STDMETHODCALLTYPE put_LanguageId(
22540 SpeechLanguageId LanguageId) = 0;
22541
22542 virtual HRESULT STDMETHODCALLTYPE PhoneToId(
22543 const BSTR Phonemes,
22544 VARIANT *IdArray) = 0;
22545
22546 virtual HRESULT STDMETHODCALLTYPE IdToPhone(
22547 const VARIANT IdArray,
22548 BSTR *Phonemes) = 0;
22549
22550};
22551#ifdef __CRT_UUID_DECL
22552__CRT_UUID_DECL(ISpeechPhoneConverter, 0xc3e4f353, 0x433f, 0x43d6, 0x89,0xa1, 0x6a,0x62,0xa7,0x05,0x4c,0x3d)
22553#endif
22554#else
22555typedef struct ISpeechPhoneConverterVtbl {
22556 BEGIN_INTERFACE
22557
22558 /*** IUnknown methods ***/
22559 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22560 ISpeechPhoneConverter *This,
22561 REFIID riid,
22562 void **ppvObject);
22563
22564 ULONG (STDMETHODCALLTYPE *AddRef)(
22565 ISpeechPhoneConverter *This);
22566
22567 ULONG (STDMETHODCALLTYPE *Release)(
22568 ISpeechPhoneConverter *This);
22569
22570 /*** IDispatch methods ***/
22571 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22572 ISpeechPhoneConverter *This,
22573 UINT *pctinfo);
22574
22575 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22576 ISpeechPhoneConverter *This,
22577 UINT iTInfo,
22578 LCID lcid,
22579 ITypeInfo **ppTInfo);
22580
22581 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22582 ISpeechPhoneConverter *This,
22583 REFIID riid,
22584 LPOLESTR *rgszNames,
22585 UINT cNames,
22586 LCID lcid,
22587 DISPID *rgDispId);
22588
22589 HRESULT (STDMETHODCALLTYPE *Invoke)(
22590 ISpeechPhoneConverter *This,
22591 DISPID dispIdMember,
22592 REFIID riid,
22593 LCID lcid,
22594 WORD wFlags,
22595 DISPPARAMS *pDispParams,
22596 VARIANT *pVarResult,
22597 EXCEPINFO *pExcepInfo,
22598 UINT *puArgErr);
22599
22600 /*** ISpeechPhoneConverter methods ***/
22601 HRESULT (STDMETHODCALLTYPE *get_LanguageId)(
22602 ISpeechPhoneConverter *This,
22603 SpeechLanguageId *LanguageId);
22604
22605 HRESULT (STDMETHODCALLTYPE *put_LanguageId)(
22606 ISpeechPhoneConverter *This,
22607 SpeechLanguageId LanguageId);
22608
22609 HRESULT (STDMETHODCALLTYPE *PhoneToId)(
22610 ISpeechPhoneConverter *This,
22611 const BSTR Phonemes,
22612 VARIANT *IdArray);
22613
22614 HRESULT (STDMETHODCALLTYPE *IdToPhone)(
22615 ISpeechPhoneConverter *This,
22616 const VARIANT IdArray,
22617 BSTR *Phonemes);
22618
22619 END_INTERFACE
22620} ISpeechPhoneConverterVtbl;
22621
22622interface ISpeechPhoneConverter {
22623 CONST_VTBL ISpeechPhoneConverterVtbl* lpVtbl;
22624};
22625
22626#ifdef COBJMACROS
22627#ifndef WIDL_C_INLINE_WRAPPERS
22628/*** IUnknown methods ***/
22629#define ISpeechPhoneConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22630#define ISpeechPhoneConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
22631#define ISpeechPhoneConverter_Release(This) (This)->lpVtbl->Release(This)
22632/*** IDispatch methods ***/
22633#define ISpeechPhoneConverter_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22634#define ISpeechPhoneConverter_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22635#define ISpeechPhoneConverter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22636#define ISpeechPhoneConverter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22637/*** ISpeechPhoneConverter methods ***/
22638#define ISpeechPhoneConverter_get_LanguageId(This,LanguageId) (This)->lpVtbl->get_LanguageId(This,LanguageId)
22639#define ISpeechPhoneConverter_put_LanguageId(This,LanguageId) (This)->lpVtbl->put_LanguageId(This,LanguageId)
22640#define ISpeechPhoneConverter_PhoneToId(This,Phonemes,IdArray) (This)->lpVtbl->PhoneToId(This,Phonemes,IdArray)
22641#define ISpeechPhoneConverter_IdToPhone(This,IdArray,Phonemes) (This)->lpVtbl->IdToPhone(This,IdArray,Phonemes)
22642#else
22643/*** IUnknown methods ***/
22644static inline HRESULT ISpeechPhoneConverter_QueryInterface(ISpeechPhoneConverter* This,REFIID riid,void **ppvObject) {
22645 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22646}
22647static inline ULONG ISpeechPhoneConverter_AddRef(ISpeechPhoneConverter* This) {
22648 return This->lpVtbl->AddRef(This);
22649}
22650static inline ULONG ISpeechPhoneConverter_Release(ISpeechPhoneConverter* This) {
22651 return This->lpVtbl->Release(This);
22652}
22653/*** IDispatch methods ***/
22654static inline HRESULT ISpeechPhoneConverter_GetTypeInfoCount(ISpeechPhoneConverter* This,UINT *pctinfo) {
22655 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22656}
22657static inline HRESULT ISpeechPhoneConverter_GetTypeInfo(ISpeechPhoneConverter* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22658 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22659}
22660static inline HRESULT ISpeechPhoneConverter_GetIDsOfNames(ISpeechPhoneConverter* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22661 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22662}
22663static inline HRESULT ISpeechPhoneConverter_Invoke(ISpeechPhoneConverter* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22664 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22665}
22666/*** ISpeechPhoneConverter methods ***/
22667static inline HRESULT ISpeechPhoneConverter_get_LanguageId(ISpeechPhoneConverter* This,SpeechLanguageId *LanguageId) {
22668 return This->lpVtbl->get_LanguageId(This,LanguageId);
22669}
22670static inline HRESULT ISpeechPhoneConverter_put_LanguageId(ISpeechPhoneConverter* This,SpeechLanguageId LanguageId) {
22671 return This->lpVtbl->put_LanguageId(This,LanguageId);
22672}
22673static inline HRESULT ISpeechPhoneConverter_PhoneToId(ISpeechPhoneConverter* This,const BSTR Phonemes,VARIANT *IdArray) {
22674 return This->lpVtbl->PhoneToId(This,Phonemes,IdArray);
22675}
22676static inline HRESULT ISpeechPhoneConverter_IdToPhone(ISpeechPhoneConverter* This,const VARIANT IdArray,BSTR *Phonemes) {
22677 return This->lpVtbl->IdToPhone(This,IdArray,Phonemes);
22678}
22679#endif
22680#endif
22681
22682#endif
22683
22684
22685#endif /* __ISpeechPhoneConverter_INTERFACE_DEFINED__ */
22686
22687/*****************************************************************************
22688 * SpNotifyTranslator coclass
22689 */
22690
22691DEFINE_GUID(CLSID_SpNotifyTranslator, 0xe2ae5372, 0x5d40, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
22692
22693#ifdef __cplusplus
22694class DECLSPEC_UUID("e2ae5372-5d40-11d2-960e-00c04f8ee628") SpNotifyTranslator;
22695#ifdef __CRT_UUID_DECL
22696__CRT_UUID_DECL(SpNotifyTranslator, 0xe2ae5372, 0x5d40, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
22697#endif
22698#endif
22699
22700/*****************************************************************************
22701 * SpObjectTokenCategory coclass
22702 */
22703
22704DEFINE_GUID(CLSID_SpObjectTokenCategory, 0xa910187f, 0x0c7a, 0x45ac, 0x92,0xcc, 0x59,0xed,0xaf,0xb7,0x7b,0x53);
22705
22706#ifdef __cplusplus
22707class DECLSPEC_UUID("a910187f-0c7a-45ac-92cc-59edafb77b53") SpObjectTokenCategory;
22708#ifdef __CRT_UUID_DECL
22709__CRT_UUID_DECL(SpObjectTokenCategory, 0xa910187f, 0x0c7a, 0x45ac, 0x92,0xcc, 0x59,0xed,0xaf,0xb7,0x7b,0x53)
22710#endif
22711#endif
22712
22713/*****************************************************************************
22714 * SpObjectToken coclass
22715 */
22716
22717DEFINE_GUID(CLSID_SpObjectToken, 0xef411752, 0x3736, 0x4cb4, 0x9c,0x8c, 0x8e,0xf4,0xcc,0xb5,0x8e,0xfe);
22718
22719#ifdef __cplusplus
22720class DECLSPEC_UUID("ef411752-3736-4cb4-9c8c-8ef4ccb58efe") SpObjectToken;
22721#ifdef __CRT_UUID_DECL
22722__CRT_UUID_DECL(SpObjectToken, 0xef411752, 0x3736, 0x4cb4, 0x9c,0x8c, 0x8e,0xf4,0xcc,0xb5,0x8e,0xfe)
22723#endif
22724#endif
22725
22726/*****************************************************************************
22727 * SpResourceManager coclass
22728 */
22729
22730DEFINE_GUID(CLSID_SpResourceManager, 0x96749373, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96);
22731
22732#ifdef __cplusplus
22733class DECLSPEC_UUID("96749373-3391-11d2-9ee3-00c04f797396") SpResourceManager;
22734#ifdef __CRT_UUID_DECL
22735__CRT_UUID_DECL(SpResourceManager, 0x96749373, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96)
22736#endif
22737#endif
22738
22739/*****************************************************************************
22740 * SpStreamFormatConverter coclass
22741 */
22742
22743DEFINE_GUID(CLSID_SpStreamFormatConverter, 0x7013943a, 0xe2ec, 0x11d2, 0xa0,0x86, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5);
22744
22745#ifdef __cplusplus
22746class DECLSPEC_UUID("7013943a-e2ec-11d2-a086-00c04f8ef9b5") SpStreamFormatConverter;
22747#ifdef __CRT_UUID_DECL
22748__CRT_UUID_DECL(SpStreamFormatConverter, 0x7013943a, 0xe2ec, 0x11d2, 0xa0,0x86, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5)
22749#endif
22750#endif
22751
22752/*****************************************************************************
22753 * SpMMAudioEnum coclass
22754 */
22755
22756DEFINE_GUID(CLSID_SpMMAudioEnum, 0xab1890a0, 0xe91f, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
22757
22758#ifdef __cplusplus
22759class DECLSPEC_UUID("ab1890a0-e91f-11d2-bb91-00c04f8ee6c0") SpMMAudioEnum;
22760#ifdef __CRT_UUID_DECL
22761__CRT_UUID_DECL(SpMMAudioEnum, 0xab1890a0, 0xe91f, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
22762#endif
22763#endif
22764
22765/*****************************************************************************
22766 * SpMMAudioIn coclass
22767 */
22768
22769DEFINE_GUID(CLSID_SpMMAudioIn, 0xcf3d2e50, 0x53f2, 0x11d2, 0x96,0x0c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
22770
22771#ifdef __cplusplus
22772class DECLSPEC_UUID("cf3d2e50-53f2-11d2-960c-00c04f8ee628") SpMMAudioIn;
22773#ifdef __CRT_UUID_DECL
22774__CRT_UUID_DECL(SpMMAudioIn, 0xcf3d2e50, 0x53f2, 0x11d2, 0x96,0x0c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
22775#endif
22776#endif
22777
22778/*****************************************************************************
22779 * SpMMAudioOut coclass
22780 */
22781
22782DEFINE_GUID(CLSID_SpMMAudioOut, 0xa8c680eb, 0x3d32, 0x11d2, 0x9e,0xe7, 0x00,0xc0,0x4f,0x79,0x73,0x96);
22783
22784#ifdef __cplusplus
22785class DECLSPEC_UUID("a8c680eb-3d32-11d2-9ee7-00c04f797396") SpMMAudioOut;
22786#ifdef __CRT_UUID_DECL
22787__CRT_UUID_DECL(SpMMAudioOut, 0xa8c680eb, 0x3d32, 0x11d2, 0x9e,0xe7, 0x00,0xc0,0x4f,0x79,0x73,0x96)
22788#endif
22789#endif
22790
22791/*****************************************************************************
22792 * SpStream coclass
22793 */
22794
22795DEFINE_GUID(CLSID_SpStream, 0x715d9c59, 0x4442, 0x11d2, 0x96,0x05, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
22796
22797#ifdef __cplusplus
22798class DECLSPEC_UUID("715d9c59-4442-11d2-9605-00c04f8ee628") SpStream;
22799#ifdef __CRT_UUID_DECL
22800__CRT_UUID_DECL(SpStream, 0x715d9c59, 0x4442, 0x11d2, 0x96,0x05, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
22801#endif
22802#endif
22803
22804/*****************************************************************************
22805 * SpVoice coclass
22806 */
22807
22808DEFINE_GUID(CLSID_SpVoice, 0x96749377, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96);
22809
22810#ifdef __cplusplus
22811class DECLSPEC_UUID("96749377-3391-11d2-9ee3-00c04f797396") SpVoice;
22812#ifdef __CRT_UUID_DECL
22813__CRT_UUID_DECL(SpVoice, 0x96749377, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96)
22814#endif
22815#endif
22816
22817/*****************************************************************************
22818 * SpSharedRecoContext coclass
22819 */
22820
22821DEFINE_GUID(CLSID_SpSharedRecoContext, 0x47206204, 0x5eca, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
22822
22823#ifdef __cplusplus
22824class DECLSPEC_UUID("47206204-5eca-11d2-960f-00c04f8ee628") SpSharedRecoContext;
22825#ifdef __CRT_UUID_DECL
22826__CRT_UUID_DECL(SpSharedRecoContext, 0x47206204, 0x5eca, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
22827#endif
22828#endif
22829
22830/*****************************************************************************
22831 * SpInprocRecognizer coclass
22832 */
22833
22834DEFINE_GUID(CLSID_SpInprocRecognizer, 0x41b89b6b, 0x9399, 0x11d2, 0x96,0x23, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
22835
22836#ifdef __cplusplus
22837class DECLSPEC_UUID("41b89b6b-9399-11d2-9623-00c04f8ee628") SpInprocRecognizer;
22838#ifdef __CRT_UUID_DECL
22839__CRT_UUID_DECL(SpInprocRecognizer, 0x41b89b6b, 0x9399, 0x11d2, 0x96,0x23, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
22840#endif
22841#endif
22842
22843/*****************************************************************************
22844 * SpSharedRecognizer coclass
22845 */
22846
22847DEFINE_GUID(CLSID_SpSharedRecognizer, 0x3bee4890, 0x4fe9, 0x4a37, 0x8c,0x1e, 0x5e,0x7e,0x12,0x79,0x1c,0x1f);
22848
22849#ifdef __cplusplus
22850class DECLSPEC_UUID("3bee4890-4fe9-4a37-8c1e-5e7e12791c1f") SpSharedRecognizer;
22851#ifdef __CRT_UUID_DECL
22852__CRT_UUID_DECL(SpSharedRecognizer, 0x3bee4890, 0x4fe9, 0x4a37, 0x8c,0x1e, 0x5e,0x7e,0x12,0x79,0x1c,0x1f)
22853#endif
22854#endif
22855
22856/*****************************************************************************
22857 * SpLexicon coclass
22858 */
22859
22860DEFINE_GUID(CLSID_SpLexicon, 0x0655e396, 0x25d0, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c);
22861
22862#ifdef __cplusplus
22863class DECLSPEC_UUID("0655e396-25d0-11d3-9c26-00c04f8ef87c") SpLexicon;
22864#ifdef __CRT_UUID_DECL
22865__CRT_UUID_DECL(SpLexicon, 0x0655e396, 0x25d0, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c)
22866#endif
22867#endif
22868
22869/*****************************************************************************
22870 * SpUnCompressedLexicon coclass
22871 */
22872
22873DEFINE_GUID(CLSID_SpUnCompressedLexicon, 0xc9e37c15, 0xdf92, 0x4727, 0x85,0xd6, 0x72,0xe5,0xee,0xb6,0x99,0x5a);
22874
22875#ifdef __cplusplus
22876class DECLSPEC_UUID("c9e37c15-df92-4727-85d6-72e5eeb6995a") SpUnCompressedLexicon;
22877#ifdef __CRT_UUID_DECL
22878__CRT_UUID_DECL(SpUnCompressedLexicon, 0xc9e37c15, 0xdf92, 0x4727, 0x85,0xd6, 0x72,0xe5,0xee,0xb6,0x99,0x5a)
22879#endif
22880#endif
22881
22882/*****************************************************************************
22883 * SpCompressedLexicon coclass
22884 */
22885
22886DEFINE_GUID(CLSID_SpCompressedLexicon, 0x90903716, 0x2f42, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c);
22887
22888#ifdef __cplusplus
22889class DECLSPEC_UUID("90903716-2f42-11d3-9c26-00c04f8ef87c") SpCompressedLexicon;
22890#ifdef __CRT_UUID_DECL
22891__CRT_UUID_DECL(SpCompressedLexicon, 0x90903716, 0x2f42, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c)
22892#endif
22893#endif
22894
22895/*****************************************************************************
22896 * SpShortcut coclass
22897 */
22898
22899DEFINE_GUID(CLSID_SpShortcut, 0x0d722f1a, 0x9fcf, 0x4e62, 0x96,0xd8, 0x6d,0xf8,0xf0,0x1a,0x26,0xaa);
22900
22901#ifdef __cplusplus
22902class DECLSPEC_UUID("0d722f1a-9fcf-4e62-96d8-6df8f01a26aa") SpShortcut;
22903#ifdef __CRT_UUID_DECL
22904__CRT_UUID_DECL(SpShortcut, 0x0d722f1a, 0x9fcf, 0x4e62, 0x96,0xd8, 0x6d,0xf8,0xf0,0x1a,0x26,0xaa)
22905#endif
22906#endif
22907
22908/*****************************************************************************
22909 * SpPhoneConverter coclass
22910 */
22911
22912DEFINE_GUID(CLSID_SpPhoneConverter, 0x9185f743, 0x1143, 0x4c28, 0x86,0xb5, 0xbf,0xf1,0x4f,0x20,0xe5,0xc8);
22913
22914#ifdef __cplusplus
22915class DECLSPEC_UUID("9185f743-1143-4c28-86b5-bff14f20e5c8") SpPhoneConverter;
22916#ifdef __CRT_UUID_DECL
22917__CRT_UUID_DECL(SpPhoneConverter, 0x9185f743, 0x1143, 0x4c28, 0x86,0xb5, 0xbf,0xf1,0x4f,0x20,0xe5,0xc8)
22918#endif
22919#endif
22920
22921/*****************************************************************************
22922 * SpPhoneticAlphabetConverter coclass
22923 */
22924
22925DEFINE_GUID(CLSID_SpPhoneticAlphabetConverter, 0x4f414126, 0xdfe3, 0x4629, 0x99,0xee, 0x79,0x79,0x78,0x31,0x7e,0xad);
22926
22927#ifdef __cplusplus
22928class DECLSPEC_UUID("4f414126-dfe3-4629-99ee-797978317ead") SpPhoneticAlphabetConverter;
22929#ifdef __CRT_UUID_DECL
22930__CRT_UUID_DECL(SpPhoneticAlphabetConverter, 0x4f414126, 0xdfe3, 0x4629, 0x99,0xee, 0x79,0x79,0x78,0x31,0x7e,0xad)
22931#endif
22932#endif
22933
22934/*****************************************************************************
22935 * SpNullPhoneConverter coclass
22936 */
22937
22938DEFINE_GUID(CLSID_SpNullPhoneConverter, 0x455f24e9, 0x7396, 0x4a16, 0x97,0x15, 0x7c,0x0f,0xdb,0xe3,0xef,0xe3);
22939
22940#ifdef __cplusplus
22941class DECLSPEC_UUID("455f24e9-7396-4a16-9715-7c0fdbe3efe3") SpNullPhoneConverter;
22942#ifdef __CRT_UUID_DECL
22943__CRT_UUID_DECL(SpNullPhoneConverter, 0x455f24e9, 0x7396, 0x4a16, 0x97,0x15, 0x7c,0x0f,0xdb,0xe3,0xef,0xe3)
22944#endif
22945#endif
22946
22947/*****************************************************************************
22948 * SpTextSelectionInformation coclass
22949 */
22950
22951DEFINE_GUID(CLSID_SpTextSelectionInformation, 0x0f92030a, 0xcbfd, 0x4ab8, 0xa1,0x64, 0xff,0x59,0x85,0x54,0x7f,0xf6);
22952
22953#ifdef __cplusplus
22954class DECLSPEC_UUID("0f92030a-cbfd-4ab8-a164-ff5985547ff6") SpTextSelectionInformation;
22955#ifdef __CRT_UUID_DECL
22956__CRT_UUID_DECL(SpTextSelectionInformation, 0x0f92030a, 0xcbfd, 0x4ab8, 0xa1,0x64, 0xff,0x59,0x85,0x54,0x7f,0xf6)
22957#endif
22958#endif
22959
22960/*****************************************************************************
22961 * SpPhraseInfoBuilder coclass
22962 */
22963
22964DEFINE_GUID(CLSID_SpPhraseInfoBuilder, 0xc23fc28d, 0xc55f, 0x4720, 0x8b,0x32, 0x91,0xf7,0x3c,0x2b,0xd5,0xd1);
22965
22966#ifdef __cplusplus
22967class DECLSPEC_UUID("c23fc28d-c55f-4720-8b32-91f73c2bd5d1") SpPhraseInfoBuilder;
22968#ifdef __CRT_UUID_DECL
22969__CRT_UUID_DECL(SpPhraseInfoBuilder, 0xc23fc28d, 0xc55f, 0x4720, 0x8b,0x32, 0x91,0xf7,0x3c,0x2b,0xd5,0xd1)
22970#endif
22971#endif
22972
22973/*****************************************************************************
22974 * SpAudioFormat coclass
22975 */
22976
22977DEFINE_GUID(CLSID_SpAudioFormat, 0x9ef96870, 0xe160, 0x4792, 0x82,0x0d, 0x48,0xcf,0x06,0x49,0xe4,0xec);
22978
22979#ifdef __cplusplus
22980class DECLSPEC_UUID("9ef96870-e160-4792-820d-48cf0649e4ec") SpAudioFormat;
22981#ifdef __CRT_UUID_DECL
22982__CRT_UUID_DECL(SpAudioFormat, 0x9ef96870, 0xe160, 0x4792, 0x82,0x0d, 0x48,0xcf,0x06,0x49,0xe4,0xec)
22983#endif
22984#endif
22985
22986/*****************************************************************************
22987 * SpWaveFormatEx coclass
22988 */
22989
22990DEFINE_GUID(CLSID_SpWaveFormatEx, 0xc79a574c, 0x63be, 0x44b9, 0x80,0x1f, 0x28,0x3f,0x87,0xf8,0x98,0xbe);
22991
22992#ifdef __cplusplus
22993class DECLSPEC_UUID("c79a574c-63be-44b9-801f-283f87f898be") SpWaveFormatEx;
22994#ifdef __CRT_UUID_DECL
22995__CRT_UUID_DECL(SpWaveFormatEx, 0xc79a574c, 0x63be, 0x44b9, 0x80,0x1f, 0x28,0x3f,0x87,0xf8,0x98,0xbe)
22996#endif
22997#endif
22998
22999/*****************************************************************************
23000 * SpInProcRecoContext coclass
23001 */
23002
23003DEFINE_GUID(CLSID_SpInProcRecoContext, 0x73ad6842, 0xace0, 0x45e8, 0xa4,0xdd, 0x87,0x95,0x88,0x1a,0x2c,0x2a);
23004
23005#ifdef __cplusplus
23006class DECLSPEC_UUID("73ad6842-ace0-45e8-a4dd-8795881a2c2a") SpInProcRecoContext;
23007#ifdef __CRT_UUID_DECL
23008__CRT_UUID_DECL(SpInProcRecoContext, 0x73ad6842, 0xace0, 0x45e8, 0xa4,0xdd, 0x87,0x95,0x88,0x1a,0x2c,0x2a)
23009#endif
23010#endif
23011
23012/*****************************************************************************
23013 * SpCustomStream coclass
23014 */
23015
23016DEFINE_GUID(CLSID_SpCustomStream, 0x8dbef13f, 0x1948, 0x4aa8, 0x8c,0xf0, 0x04,0x8e,0xeb,0xed,0x95,0xd8);
23017
23018#ifdef __cplusplus
23019class DECLSPEC_UUID("8dbef13f-1948-4aa8-8cf0-048eebed95d8") SpCustomStream;
23020#ifdef __CRT_UUID_DECL
23021__CRT_UUID_DECL(SpCustomStream, 0x8dbef13f, 0x1948, 0x4aa8, 0x8c,0xf0, 0x04,0x8e,0xeb,0xed,0x95,0xd8)
23022#endif
23023#endif
23024
23025/*****************************************************************************
23026 * SpFileStream coclass
23027 */
23028
23029DEFINE_GUID(CLSID_SpFileStream, 0x947812b3, 0x2ae1, 0x4644, 0xba,0x86, 0x9e,0x90,0xde,0xd7,0xec,0x91);
23030
23031#ifdef __cplusplus
23032class DECLSPEC_UUID("947812b3-2ae1-4644-ba86-9e90ded7ec91") SpFileStream;
23033#ifdef __CRT_UUID_DECL
23034__CRT_UUID_DECL(SpFileStream, 0x947812b3, 0x2ae1, 0x4644, 0xba,0x86, 0x9e,0x90,0xde,0xd7,0xec,0x91)
23035#endif
23036#endif
23037
23038/*****************************************************************************
23039 * SpMemoryStream coclass
23040 */
23041
23042DEFINE_GUID(CLSID_SpMemoryStream, 0x5fb7ef7d, 0xdff4, 0x468a, 0xb6,0xb7, 0x2f,0xcb,0xd1,0x88,0xf9,0x94);
23043
23044#ifdef __cplusplus
23045class DECLSPEC_UUID("5fb7ef7d-dff4-468a-b6b7-2fcbd188f994") SpMemoryStream;
23046#ifdef __CRT_UUID_DECL
23047__CRT_UUID_DECL(SpMemoryStream, 0x5fb7ef7d, 0xdff4, 0x468a, 0xb6,0xb7, 0x2f,0xcb,0xd1,0x88,0xf9,0x94)
23048#endif
23049#endif
23050
23051#ifndef __ISpXMLRecoResult_FWD_DEFINED__
23052#define __ISpXMLRecoResult_FWD_DEFINED__
23053typedef interface ISpXMLRecoResult ISpXMLRecoResult;
23054#ifdef __cplusplus
23055interface ISpXMLRecoResult;
23056#endif /* __cplusplus */
23057#endif
23058
23059#ifndef __ISpRecoGrammar2_FWD_DEFINED__
23060#define __ISpRecoGrammar2_FWD_DEFINED__
23061typedef interface ISpRecoGrammar2 ISpRecoGrammar2;
23062#ifdef __cplusplus
23063interface ISpRecoGrammar2;
23064#endif /* __cplusplus */
23065#endif
23066
23067#ifndef __ISpeechResourceLoader_FWD_DEFINED__
23068#define __ISpeechResourceLoader_FWD_DEFINED__
23069typedef interface ISpeechResourceLoader ISpeechResourceLoader;
23070#ifdef __cplusplus
23071interface ISpeechResourceLoader;
23072#endif /* __cplusplus */
23073#endif
23074
23075#endif /* __SpeechLib_LIBRARY_DEFINED__ */
23076/* Begin additional prototypes for all interfaces */
23077
23078ULONG __RPC_USER HWND_UserSize (ULONG *, ULONG, HWND *);
23079unsigned char * __RPC_USER HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
23080unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
23081void __RPC_USER HWND_UserFree (ULONG *, HWND *);
23082ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *);
23083unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
23084unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
23085void __RPC_USER BSTR_UserFree (ULONG *, BSTR *);
23086ULONG __RPC_USER VARIANT_UserSize (ULONG *, ULONG, VARIANT *);
23087unsigned char * __RPC_USER VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *);
23088unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
23089void __RPC_USER VARIANT_UserFree (ULONG *, VARIANT *);
23090
23091/* End additional prototypes */
23092
23093#ifdef __cplusplus
23094}
23095#endif
23096
23097#endif /* __sapi53_h__ */