master
1/*** Autogenerated by WIDL 10.4 from include/sapi54.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 __sapi54_h__
17#define __sapi54_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 __ISpRecoCategory_FWD_DEFINED__
374#define __ISpRecoCategory_FWD_DEFINED__
375typedef interface ISpRecoCategory ISpRecoCategory;
376#ifdef __cplusplus
377interface ISpRecoCategory;
378#endif /* __cplusplus */
379#endif
380
381#ifndef __ISpRecognizer3_FWD_DEFINED__
382#define __ISpRecognizer3_FWD_DEFINED__
383typedef interface ISpRecognizer3 ISpRecognizer3;
384#ifdef __cplusplus
385interface ISpRecognizer3;
386#endif /* __cplusplus */
387#endif
388
389#ifndef __ISpEnginePronunciation_FWD_DEFINED__
390#define __ISpEnginePronunciation_FWD_DEFINED__
391typedef interface ISpEnginePronunciation ISpEnginePronunciation;
392#ifdef __cplusplus
393interface ISpEnginePronunciation;
394#endif /* __cplusplus */
395#endif
396
397#ifndef __ISpDisplayAlternates_FWD_DEFINED__
398#define __ISpDisplayAlternates_FWD_DEFINED__
399typedef interface ISpDisplayAlternates ISpDisplayAlternates;
400#ifdef __cplusplus
401interface ISpDisplayAlternates;
402#endif /* __cplusplus */
403#endif
404
405#ifndef __ISpeechDataKey_FWD_DEFINED__
406#define __ISpeechDataKey_FWD_DEFINED__
407typedef interface ISpeechDataKey ISpeechDataKey;
408#ifdef __cplusplus
409interface ISpeechDataKey;
410#endif /* __cplusplus */
411#endif
412
413#ifndef __ISpeechObjectToken_FWD_DEFINED__
414#define __ISpeechObjectToken_FWD_DEFINED__
415typedef interface ISpeechObjectToken ISpeechObjectToken;
416#ifdef __cplusplus
417interface ISpeechObjectToken;
418#endif /* __cplusplus */
419#endif
420
421#ifndef __ISpeechObjectTokens_FWD_DEFINED__
422#define __ISpeechObjectTokens_FWD_DEFINED__
423typedef interface ISpeechObjectTokens ISpeechObjectTokens;
424#ifdef __cplusplus
425interface ISpeechObjectTokens;
426#endif /* __cplusplus */
427#endif
428
429#ifndef __ISpeechObjectTokenCategory_FWD_DEFINED__
430#define __ISpeechObjectTokenCategory_FWD_DEFINED__
431typedef interface ISpeechObjectTokenCategory ISpeechObjectTokenCategory;
432#ifdef __cplusplus
433interface ISpeechObjectTokenCategory;
434#endif /* __cplusplus */
435#endif
436
437#ifndef __ISpeechAudioFormat_FWD_DEFINED__
438#define __ISpeechAudioFormat_FWD_DEFINED__
439typedef interface ISpeechAudioFormat ISpeechAudioFormat;
440#ifdef __cplusplus
441interface ISpeechAudioFormat;
442#endif /* __cplusplus */
443#endif
444
445#ifndef __ISpeechBaseStream_FWD_DEFINED__
446#define __ISpeechBaseStream_FWD_DEFINED__
447typedef interface ISpeechBaseStream ISpeechBaseStream;
448#ifdef __cplusplus
449interface ISpeechBaseStream;
450#endif /* __cplusplus */
451#endif
452
453#ifndef __ISpeechAudio_FWD_DEFINED__
454#define __ISpeechAudio_FWD_DEFINED__
455typedef interface ISpeechAudio ISpeechAudio;
456#ifdef __cplusplus
457interface ISpeechAudio;
458#endif /* __cplusplus */
459#endif
460
461#ifndef __ISpeechMMSysAudio_FWD_DEFINED__
462#define __ISpeechMMSysAudio_FWD_DEFINED__
463typedef interface ISpeechMMSysAudio ISpeechMMSysAudio;
464#ifdef __cplusplus
465interface ISpeechMMSysAudio;
466#endif /* __cplusplus */
467#endif
468
469#ifndef __ISpeechFileStream_FWD_DEFINED__
470#define __ISpeechFileStream_FWD_DEFINED__
471typedef interface ISpeechFileStream ISpeechFileStream;
472#ifdef __cplusplus
473interface ISpeechFileStream;
474#endif /* __cplusplus */
475#endif
476
477#ifndef __ISpeechCustomStream_FWD_DEFINED__
478#define __ISpeechCustomStream_FWD_DEFINED__
479typedef interface ISpeechCustomStream ISpeechCustomStream;
480#ifdef __cplusplus
481interface ISpeechCustomStream;
482#endif /* __cplusplus */
483#endif
484
485#ifndef __ISpeechMemoryStream_FWD_DEFINED__
486#define __ISpeechMemoryStream_FWD_DEFINED__
487typedef interface ISpeechMemoryStream ISpeechMemoryStream;
488#ifdef __cplusplus
489interface ISpeechMemoryStream;
490#endif /* __cplusplus */
491#endif
492
493#ifndef __ISpeechAudioStatus_FWD_DEFINED__
494#define __ISpeechAudioStatus_FWD_DEFINED__
495typedef interface ISpeechAudioStatus ISpeechAudioStatus;
496#ifdef __cplusplus
497interface ISpeechAudioStatus;
498#endif /* __cplusplus */
499#endif
500
501#ifndef __ISpeechAudioBufferInfo_FWD_DEFINED__
502#define __ISpeechAudioBufferInfo_FWD_DEFINED__
503typedef interface ISpeechAudioBufferInfo ISpeechAudioBufferInfo;
504#ifdef __cplusplus
505interface ISpeechAudioBufferInfo;
506#endif /* __cplusplus */
507#endif
508
509#ifndef __ISpeechWaveFormatEx_FWD_DEFINED__
510#define __ISpeechWaveFormatEx_FWD_DEFINED__
511typedef interface ISpeechWaveFormatEx ISpeechWaveFormatEx;
512#ifdef __cplusplus
513interface ISpeechWaveFormatEx;
514#endif /* __cplusplus */
515#endif
516
517#ifndef __ISpeechVoice_FWD_DEFINED__
518#define __ISpeechVoice_FWD_DEFINED__
519typedef interface ISpeechVoice ISpeechVoice;
520#ifdef __cplusplus
521interface ISpeechVoice;
522#endif /* __cplusplus */
523#endif
524
525#ifndef __ISpeechVoiceStatus_FWD_DEFINED__
526#define __ISpeechVoiceStatus_FWD_DEFINED__
527typedef interface ISpeechVoiceStatus ISpeechVoiceStatus;
528#ifdef __cplusplus
529interface ISpeechVoiceStatus;
530#endif /* __cplusplus */
531#endif
532
533#ifndef ___ISpeechVoiceEvents_FWD_DEFINED__
534#define ___ISpeechVoiceEvents_FWD_DEFINED__
535typedef interface _ISpeechVoiceEvents _ISpeechVoiceEvents;
536#ifdef __cplusplus
537interface _ISpeechVoiceEvents;
538#endif /* __cplusplus */
539#endif
540
541#ifndef __ISpeechRecognizer_FWD_DEFINED__
542#define __ISpeechRecognizer_FWD_DEFINED__
543typedef interface ISpeechRecognizer ISpeechRecognizer;
544#ifdef __cplusplus
545interface ISpeechRecognizer;
546#endif /* __cplusplus */
547#endif
548
549#ifndef __ISpeechRecognizerStatus_FWD_DEFINED__
550#define __ISpeechRecognizerStatus_FWD_DEFINED__
551typedef interface ISpeechRecognizerStatus ISpeechRecognizerStatus;
552#ifdef __cplusplus
553interface ISpeechRecognizerStatus;
554#endif /* __cplusplus */
555#endif
556
557#ifndef __ISpeechRecoContext_FWD_DEFINED__
558#define __ISpeechRecoContext_FWD_DEFINED__
559typedef interface ISpeechRecoContext ISpeechRecoContext;
560#ifdef __cplusplus
561interface ISpeechRecoContext;
562#endif /* __cplusplus */
563#endif
564
565#ifndef __ISpeechRecoGrammar_FWD_DEFINED__
566#define __ISpeechRecoGrammar_FWD_DEFINED__
567typedef interface ISpeechRecoGrammar ISpeechRecoGrammar;
568#ifdef __cplusplus
569interface ISpeechRecoGrammar;
570#endif /* __cplusplus */
571#endif
572
573#ifndef ___ISpeechRecoContextEvents_FWD_DEFINED__
574#define ___ISpeechRecoContextEvents_FWD_DEFINED__
575typedef interface _ISpeechRecoContextEvents _ISpeechRecoContextEvents;
576#ifdef __cplusplus
577interface _ISpeechRecoContextEvents;
578#endif /* __cplusplus */
579#endif
580
581#ifndef __ISpeechGrammarRule_FWD_DEFINED__
582#define __ISpeechGrammarRule_FWD_DEFINED__
583typedef interface ISpeechGrammarRule ISpeechGrammarRule;
584#ifdef __cplusplus
585interface ISpeechGrammarRule;
586#endif /* __cplusplus */
587#endif
588
589#ifndef __ISpeechGrammarRules_FWD_DEFINED__
590#define __ISpeechGrammarRules_FWD_DEFINED__
591typedef interface ISpeechGrammarRules ISpeechGrammarRules;
592#ifdef __cplusplus
593interface ISpeechGrammarRules;
594#endif /* __cplusplus */
595#endif
596
597#ifndef __ISpeechGrammarRuleState_FWD_DEFINED__
598#define __ISpeechGrammarRuleState_FWD_DEFINED__
599typedef interface ISpeechGrammarRuleState ISpeechGrammarRuleState;
600#ifdef __cplusplus
601interface ISpeechGrammarRuleState;
602#endif /* __cplusplus */
603#endif
604
605#ifndef __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
606#define __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
607typedef interface ISpeechGrammarRuleStateTransitions ISpeechGrammarRuleStateTransitions;
608#ifdef __cplusplus
609interface ISpeechGrammarRuleStateTransitions;
610#endif /* __cplusplus */
611#endif
612
613#ifndef __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
614#define __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
615typedef interface ISpeechGrammarRuleStateTransition ISpeechGrammarRuleStateTransition;
616#ifdef __cplusplus
617interface ISpeechGrammarRuleStateTransition;
618#endif /* __cplusplus */
619#endif
620
621#ifndef __ISpeechTextSelectionInformation_FWD_DEFINED__
622#define __ISpeechTextSelectionInformation_FWD_DEFINED__
623typedef interface ISpeechTextSelectionInformation ISpeechTextSelectionInformation;
624#ifdef __cplusplus
625interface ISpeechTextSelectionInformation;
626#endif /* __cplusplus */
627#endif
628
629#ifndef __ISpeechRecoResult_FWD_DEFINED__
630#define __ISpeechRecoResult_FWD_DEFINED__
631typedef interface ISpeechRecoResult ISpeechRecoResult;
632#ifdef __cplusplus
633interface ISpeechRecoResult;
634#endif /* __cplusplus */
635#endif
636
637#ifndef __ISpeechXMLRecoResult_FWD_DEFINED__
638#define __ISpeechXMLRecoResult_FWD_DEFINED__
639typedef interface ISpeechXMLRecoResult ISpeechXMLRecoResult;
640#ifdef __cplusplus
641interface ISpeechXMLRecoResult;
642#endif /* __cplusplus */
643#endif
644
645#ifndef __ISpeechRecoResult2_FWD_DEFINED__
646#define __ISpeechRecoResult2_FWD_DEFINED__
647typedef interface ISpeechRecoResult2 ISpeechRecoResult2;
648#ifdef __cplusplus
649interface ISpeechRecoResult2;
650#endif /* __cplusplus */
651#endif
652
653#ifndef __ISpeechRecoResultDispatch_FWD_DEFINED__
654#define __ISpeechRecoResultDispatch_FWD_DEFINED__
655typedef interface ISpeechRecoResultDispatch ISpeechRecoResultDispatch;
656#ifdef __cplusplus
657interface ISpeechRecoResultDispatch;
658#endif /* __cplusplus */
659#endif
660
661#ifndef __ISpeechPhraseInfoBuilder_FWD_DEFINED__
662#define __ISpeechPhraseInfoBuilder_FWD_DEFINED__
663typedef interface ISpeechPhraseInfoBuilder ISpeechPhraseInfoBuilder;
664#ifdef __cplusplus
665interface ISpeechPhraseInfoBuilder;
666#endif /* __cplusplus */
667#endif
668
669#ifndef __ISpeechRecoResultTimes_FWD_DEFINED__
670#define __ISpeechRecoResultTimes_FWD_DEFINED__
671typedef interface ISpeechRecoResultTimes ISpeechRecoResultTimes;
672#ifdef __cplusplus
673interface ISpeechRecoResultTimes;
674#endif /* __cplusplus */
675#endif
676
677#ifndef __ISpeechPhraseAlternate_FWD_DEFINED__
678#define __ISpeechPhraseAlternate_FWD_DEFINED__
679typedef interface ISpeechPhraseAlternate ISpeechPhraseAlternate;
680#ifdef __cplusplus
681interface ISpeechPhraseAlternate;
682#endif /* __cplusplus */
683#endif
684
685#ifndef __ISpeechPhraseAlternates_FWD_DEFINED__
686#define __ISpeechPhraseAlternates_FWD_DEFINED__
687typedef interface ISpeechPhraseAlternates ISpeechPhraseAlternates;
688#ifdef __cplusplus
689interface ISpeechPhraseAlternates;
690#endif /* __cplusplus */
691#endif
692
693#ifndef __ISpeechPhraseInfo_FWD_DEFINED__
694#define __ISpeechPhraseInfo_FWD_DEFINED__
695typedef interface ISpeechPhraseInfo ISpeechPhraseInfo;
696#ifdef __cplusplus
697interface ISpeechPhraseInfo;
698#endif /* __cplusplus */
699#endif
700
701#ifndef __ISpeechPhraseElement_FWD_DEFINED__
702#define __ISpeechPhraseElement_FWD_DEFINED__
703typedef interface ISpeechPhraseElement ISpeechPhraseElement;
704#ifdef __cplusplus
705interface ISpeechPhraseElement;
706#endif /* __cplusplus */
707#endif
708
709#ifndef __ISpeechPhraseElements_FWD_DEFINED__
710#define __ISpeechPhraseElements_FWD_DEFINED__
711typedef interface ISpeechPhraseElements ISpeechPhraseElements;
712#ifdef __cplusplus
713interface ISpeechPhraseElements;
714#endif /* __cplusplus */
715#endif
716
717#ifndef __ISpeechPhraseReplacement_FWD_DEFINED__
718#define __ISpeechPhraseReplacement_FWD_DEFINED__
719typedef interface ISpeechPhraseReplacement ISpeechPhraseReplacement;
720#ifdef __cplusplus
721interface ISpeechPhraseReplacement;
722#endif /* __cplusplus */
723#endif
724
725#ifndef __ISpeechPhraseReplacements_FWD_DEFINED__
726#define __ISpeechPhraseReplacements_FWD_DEFINED__
727typedef interface ISpeechPhraseReplacements ISpeechPhraseReplacements;
728#ifdef __cplusplus
729interface ISpeechPhraseReplacements;
730#endif /* __cplusplus */
731#endif
732
733#ifndef __ISpeechPhraseProperty_FWD_DEFINED__
734#define __ISpeechPhraseProperty_FWD_DEFINED__
735typedef interface ISpeechPhraseProperty ISpeechPhraseProperty;
736#ifdef __cplusplus
737interface ISpeechPhraseProperty;
738#endif /* __cplusplus */
739#endif
740
741#ifndef __ISpeechPhraseProperties_FWD_DEFINED__
742#define __ISpeechPhraseProperties_FWD_DEFINED__
743typedef interface ISpeechPhraseProperties ISpeechPhraseProperties;
744#ifdef __cplusplus
745interface ISpeechPhraseProperties;
746#endif /* __cplusplus */
747#endif
748
749#ifndef __ISpeechPhraseRule_FWD_DEFINED__
750#define __ISpeechPhraseRule_FWD_DEFINED__
751typedef interface ISpeechPhraseRule ISpeechPhraseRule;
752#ifdef __cplusplus
753interface ISpeechPhraseRule;
754#endif /* __cplusplus */
755#endif
756
757#ifndef __ISpeechPhraseRules_FWD_DEFINED__
758#define __ISpeechPhraseRules_FWD_DEFINED__
759typedef interface ISpeechPhraseRules ISpeechPhraseRules;
760#ifdef __cplusplus
761interface ISpeechPhraseRules;
762#endif /* __cplusplus */
763#endif
764
765#ifndef __ISpeechLexiconWords_FWD_DEFINED__
766#define __ISpeechLexiconWords_FWD_DEFINED__
767typedef interface ISpeechLexiconWords ISpeechLexiconWords;
768#ifdef __cplusplus
769interface ISpeechLexiconWords;
770#endif /* __cplusplus */
771#endif
772
773#ifndef __ISpeechLexicon_FWD_DEFINED__
774#define __ISpeechLexicon_FWD_DEFINED__
775typedef interface ISpeechLexicon ISpeechLexicon;
776#ifdef __cplusplus
777interface ISpeechLexicon;
778#endif /* __cplusplus */
779#endif
780
781#ifndef __ISpeechLexiconWord_FWD_DEFINED__
782#define __ISpeechLexiconWord_FWD_DEFINED__
783typedef interface ISpeechLexiconWord ISpeechLexiconWord;
784#ifdef __cplusplus
785interface ISpeechLexiconWord;
786#endif /* __cplusplus */
787#endif
788
789#ifndef __ISpeechLexiconPronunciations_FWD_DEFINED__
790#define __ISpeechLexiconPronunciations_FWD_DEFINED__
791typedef interface ISpeechLexiconPronunciations ISpeechLexiconPronunciations;
792#ifdef __cplusplus
793interface ISpeechLexiconPronunciations;
794#endif /* __cplusplus */
795#endif
796
797#ifndef __ISpeechLexiconPronunciation_FWD_DEFINED__
798#define __ISpeechLexiconPronunciation_FWD_DEFINED__
799typedef interface ISpeechLexiconPronunciation ISpeechLexiconPronunciation;
800#ifdef __cplusplus
801interface ISpeechLexiconPronunciation;
802#endif /* __cplusplus */
803#endif
804
805#ifndef __ISpeechPhoneConverter_FWD_DEFINED__
806#define __ISpeechPhoneConverter_FWD_DEFINED__
807typedef interface ISpeechPhoneConverter ISpeechPhoneConverter;
808#ifdef __cplusplus
809interface ISpeechPhoneConverter;
810#endif /* __cplusplus */
811#endif
812
813#ifndef __SpNotifyTranslator_FWD_DEFINED__
814#define __SpNotifyTranslator_FWD_DEFINED__
815#ifdef __cplusplus
816typedef class SpNotifyTranslator SpNotifyTranslator;
817#else
818typedef struct SpNotifyTranslator SpNotifyTranslator;
819#endif /* defined __cplusplus */
820#endif /* defined __SpNotifyTranslator_FWD_DEFINED__ */
821
822#ifndef __SpObjectTokenCategory_FWD_DEFINED__
823#define __SpObjectTokenCategory_FWD_DEFINED__
824#ifdef __cplusplus
825typedef class SpObjectTokenCategory SpObjectTokenCategory;
826#else
827typedef struct SpObjectTokenCategory SpObjectTokenCategory;
828#endif /* defined __cplusplus */
829#endif /* defined __SpObjectTokenCategory_FWD_DEFINED__ */
830
831#ifndef __SpObjectToken_FWD_DEFINED__
832#define __SpObjectToken_FWD_DEFINED__
833#ifdef __cplusplus
834typedef class SpObjectToken SpObjectToken;
835#else
836typedef struct SpObjectToken SpObjectToken;
837#endif /* defined __cplusplus */
838#endif /* defined __SpObjectToken_FWD_DEFINED__ */
839
840#ifndef __SpResourceManager_FWD_DEFINED__
841#define __SpResourceManager_FWD_DEFINED__
842#ifdef __cplusplus
843typedef class SpResourceManager SpResourceManager;
844#else
845typedef struct SpResourceManager SpResourceManager;
846#endif /* defined __cplusplus */
847#endif /* defined __SpResourceManager_FWD_DEFINED__ */
848
849#ifndef __SpStreamFormatConverter_FWD_DEFINED__
850#define __SpStreamFormatConverter_FWD_DEFINED__
851#ifdef __cplusplus
852typedef class SpStreamFormatConverter SpStreamFormatConverter;
853#else
854typedef struct SpStreamFormatConverter SpStreamFormatConverter;
855#endif /* defined __cplusplus */
856#endif /* defined __SpStreamFormatConverter_FWD_DEFINED__ */
857
858#ifndef __SpMMAudioEnum_FWD_DEFINED__
859#define __SpMMAudioEnum_FWD_DEFINED__
860#ifdef __cplusplus
861typedef class SpMMAudioEnum SpMMAudioEnum;
862#else
863typedef struct SpMMAudioEnum SpMMAudioEnum;
864#endif /* defined __cplusplus */
865#endif /* defined __SpMMAudioEnum_FWD_DEFINED__ */
866
867#ifndef __SpMMAudioIn_FWD_DEFINED__
868#define __SpMMAudioIn_FWD_DEFINED__
869#ifdef __cplusplus
870typedef class SpMMAudioIn SpMMAudioIn;
871#else
872typedef struct SpMMAudioIn SpMMAudioIn;
873#endif /* defined __cplusplus */
874#endif /* defined __SpMMAudioIn_FWD_DEFINED__ */
875
876#ifndef __SpMMAudioOut_FWD_DEFINED__
877#define __SpMMAudioOut_FWD_DEFINED__
878#ifdef __cplusplus
879typedef class SpMMAudioOut SpMMAudioOut;
880#else
881typedef struct SpMMAudioOut SpMMAudioOut;
882#endif /* defined __cplusplus */
883#endif /* defined __SpMMAudioOut_FWD_DEFINED__ */
884
885#ifndef __SpStream_FWD_DEFINED__
886#define __SpStream_FWD_DEFINED__
887#ifdef __cplusplus
888typedef class SpStream SpStream;
889#else
890typedef struct SpStream SpStream;
891#endif /* defined __cplusplus */
892#endif /* defined __SpStream_FWD_DEFINED__ */
893
894#ifndef __SpVoice_FWD_DEFINED__
895#define __SpVoice_FWD_DEFINED__
896#ifdef __cplusplus
897typedef class SpVoice SpVoice;
898#else
899typedef struct SpVoice SpVoice;
900#endif /* defined __cplusplus */
901#endif /* defined __SpVoice_FWD_DEFINED__ */
902
903#ifndef __SpSharedRecoContext_FWD_DEFINED__
904#define __SpSharedRecoContext_FWD_DEFINED__
905#ifdef __cplusplus
906typedef class SpSharedRecoContext SpSharedRecoContext;
907#else
908typedef struct SpSharedRecoContext SpSharedRecoContext;
909#endif /* defined __cplusplus */
910#endif /* defined __SpSharedRecoContext_FWD_DEFINED__ */
911
912#ifndef __SpInprocRecognizer_FWD_DEFINED__
913#define __SpInprocRecognizer_FWD_DEFINED__
914#ifdef __cplusplus
915typedef class SpInprocRecognizer SpInprocRecognizer;
916#else
917typedef struct SpInprocRecognizer SpInprocRecognizer;
918#endif /* defined __cplusplus */
919#endif /* defined __SpInprocRecognizer_FWD_DEFINED__ */
920
921#ifndef __SpSharedRecognizer_FWD_DEFINED__
922#define __SpSharedRecognizer_FWD_DEFINED__
923#ifdef __cplusplus
924typedef class SpSharedRecognizer SpSharedRecognizer;
925#else
926typedef struct SpSharedRecognizer SpSharedRecognizer;
927#endif /* defined __cplusplus */
928#endif /* defined __SpSharedRecognizer_FWD_DEFINED__ */
929
930#ifndef __SpLexicon_FWD_DEFINED__
931#define __SpLexicon_FWD_DEFINED__
932#ifdef __cplusplus
933typedef class SpLexicon SpLexicon;
934#else
935typedef struct SpLexicon SpLexicon;
936#endif /* defined __cplusplus */
937#endif /* defined __SpLexicon_FWD_DEFINED__ */
938
939#ifndef __SpUnCompressedLexicon_FWD_DEFINED__
940#define __SpUnCompressedLexicon_FWD_DEFINED__
941#ifdef __cplusplus
942typedef class SpUnCompressedLexicon SpUnCompressedLexicon;
943#else
944typedef struct SpUnCompressedLexicon SpUnCompressedLexicon;
945#endif /* defined __cplusplus */
946#endif /* defined __SpUnCompressedLexicon_FWD_DEFINED__ */
947
948#ifndef __SpCompressedLexicon_FWD_DEFINED__
949#define __SpCompressedLexicon_FWD_DEFINED__
950#ifdef __cplusplus
951typedef class SpCompressedLexicon SpCompressedLexicon;
952#else
953typedef struct SpCompressedLexicon SpCompressedLexicon;
954#endif /* defined __cplusplus */
955#endif /* defined __SpCompressedLexicon_FWD_DEFINED__ */
956
957#ifndef __SpShortcut_FWD_DEFINED__
958#define __SpShortcut_FWD_DEFINED__
959#ifdef __cplusplus
960typedef class SpShortcut SpShortcut;
961#else
962typedef struct SpShortcut SpShortcut;
963#endif /* defined __cplusplus */
964#endif /* defined __SpShortcut_FWD_DEFINED__ */
965
966#ifndef __SpPhoneConverter_FWD_DEFINED__
967#define __SpPhoneConverter_FWD_DEFINED__
968#ifdef __cplusplus
969typedef class SpPhoneConverter SpPhoneConverter;
970#else
971typedef struct SpPhoneConverter SpPhoneConverter;
972#endif /* defined __cplusplus */
973#endif /* defined __SpPhoneConverter_FWD_DEFINED__ */
974
975#ifndef __SpPhoneticAlphabetConverter_FWD_DEFINED__
976#define __SpPhoneticAlphabetConverter_FWD_DEFINED__
977#ifdef __cplusplus
978typedef class SpPhoneticAlphabetConverter SpPhoneticAlphabetConverter;
979#else
980typedef struct SpPhoneticAlphabetConverter SpPhoneticAlphabetConverter;
981#endif /* defined __cplusplus */
982#endif /* defined __SpPhoneticAlphabetConverter_FWD_DEFINED__ */
983
984#ifndef __SpNullPhoneConverter_FWD_DEFINED__
985#define __SpNullPhoneConverter_FWD_DEFINED__
986#ifdef __cplusplus
987typedef class SpNullPhoneConverter SpNullPhoneConverter;
988#else
989typedef struct SpNullPhoneConverter SpNullPhoneConverter;
990#endif /* defined __cplusplus */
991#endif /* defined __SpNullPhoneConverter_FWD_DEFINED__ */
992
993#ifndef __SpTextSelectionInformation_FWD_DEFINED__
994#define __SpTextSelectionInformation_FWD_DEFINED__
995#ifdef __cplusplus
996typedef class SpTextSelectionInformation SpTextSelectionInformation;
997#else
998typedef struct SpTextSelectionInformation SpTextSelectionInformation;
999#endif /* defined __cplusplus */
1000#endif /* defined __SpTextSelectionInformation_FWD_DEFINED__ */
1001
1002#ifndef __SpPhraseInfoBuilder_FWD_DEFINED__
1003#define __SpPhraseInfoBuilder_FWD_DEFINED__
1004#ifdef __cplusplus
1005typedef class SpPhraseInfoBuilder SpPhraseInfoBuilder;
1006#else
1007typedef struct SpPhraseInfoBuilder SpPhraseInfoBuilder;
1008#endif /* defined __cplusplus */
1009#endif /* defined __SpPhraseInfoBuilder_FWD_DEFINED__ */
1010
1011#ifndef __SpAudioFormat_FWD_DEFINED__
1012#define __SpAudioFormat_FWD_DEFINED__
1013#ifdef __cplusplus
1014typedef class SpAudioFormat SpAudioFormat;
1015#else
1016typedef struct SpAudioFormat SpAudioFormat;
1017#endif /* defined __cplusplus */
1018#endif /* defined __SpAudioFormat_FWD_DEFINED__ */
1019
1020#ifndef __SpWaveFormatEx_FWD_DEFINED__
1021#define __SpWaveFormatEx_FWD_DEFINED__
1022#ifdef __cplusplus
1023typedef class SpWaveFormatEx SpWaveFormatEx;
1024#else
1025typedef struct SpWaveFormatEx SpWaveFormatEx;
1026#endif /* defined __cplusplus */
1027#endif /* defined __SpWaveFormatEx_FWD_DEFINED__ */
1028
1029#ifndef __SpInProcRecoContext_FWD_DEFINED__
1030#define __SpInProcRecoContext_FWD_DEFINED__
1031#ifdef __cplusplus
1032typedef class SpInProcRecoContext SpInProcRecoContext;
1033#else
1034typedef struct SpInProcRecoContext SpInProcRecoContext;
1035#endif /* defined __cplusplus */
1036#endif /* defined __SpInProcRecoContext_FWD_DEFINED__ */
1037
1038#ifndef __SpCustomStream_FWD_DEFINED__
1039#define __SpCustomStream_FWD_DEFINED__
1040#ifdef __cplusplus
1041typedef class SpCustomStream SpCustomStream;
1042#else
1043typedef struct SpCustomStream SpCustomStream;
1044#endif /* defined __cplusplus */
1045#endif /* defined __SpCustomStream_FWD_DEFINED__ */
1046
1047#ifndef __SpFileStream_FWD_DEFINED__
1048#define __SpFileStream_FWD_DEFINED__
1049#ifdef __cplusplus
1050typedef class SpFileStream SpFileStream;
1051#else
1052typedef struct SpFileStream SpFileStream;
1053#endif /* defined __cplusplus */
1054#endif /* defined __SpFileStream_FWD_DEFINED__ */
1055
1056#ifndef __SpMemoryStream_FWD_DEFINED__
1057#define __SpMemoryStream_FWD_DEFINED__
1058#ifdef __cplusplus
1059typedef class SpMemoryStream SpMemoryStream;
1060#else
1061typedef struct SpMemoryStream SpMemoryStream;
1062#endif /* defined __cplusplus */
1063#endif /* defined __SpMemoryStream_FWD_DEFINED__ */
1064
1065/* Headers for imported files */
1066
1067#include <oaidl.h>
1068#include <ocidl.h>
1069
1070#ifdef __cplusplus
1071extern "C" {
1072#endif
1073
1074#ifndef _SAPI_VER
1075#error "you have to include <sapi.h> header before this."
1076#endif
1077#if 0
1078typedef struct WAVEFORMATEX {
1079 WORD wFormatTag;
1080 WORD nChannels;
1081 DWORD nSamplesPerSec;
1082 DWORD nAvgBytesPerSec;
1083 WORD nBlockAlign;
1084 WORD wBitsPerSample;
1085 WORD cbSize;
1086} WAVEFORMATEX;
1087#endif
1088#ifndef __ISpNotifySource_FWD_DEFINED__
1089#define __ISpNotifySource_FWD_DEFINED__
1090typedef interface ISpNotifySource ISpNotifySource;
1091#ifdef __cplusplus
1092interface ISpNotifySource;
1093#endif /* __cplusplus */
1094#endif
1095
1096#ifndef __ISpNotifySink_FWD_DEFINED__
1097#define __ISpNotifySink_FWD_DEFINED__
1098typedef interface ISpNotifySink ISpNotifySink;
1099#ifdef __cplusplus
1100interface ISpNotifySink;
1101#endif /* __cplusplus */
1102#endif
1103
1104#ifndef __ISpNotifyTranslator_FWD_DEFINED__
1105#define __ISpNotifyTranslator_FWD_DEFINED__
1106typedef interface ISpNotifyTranslator ISpNotifyTranslator;
1107#ifdef __cplusplus
1108interface ISpNotifyTranslator;
1109#endif /* __cplusplus */
1110#endif
1111
1112#ifndef __ISpDataKey_FWD_DEFINED__
1113#define __ISpDataKey_FWD_DEFINED__
1114typedef interface ISpDataKey ISpDataKey;
1115#ifdef __cplusplus
1116interface ISpDataKey;
1117#endif /* __cplusplus */
1118#endif
1119
1120#ifndef __ISpObjectTokenCategory_FWD_DEFINED__
1121#define __ISpObjectTokenCategory_FWD_DEFINED__
1122typedef interface ISpObjectTokenCategory ISpObjectTokenCategory;
1123#ifdef __cplusplus
1124interface ISpObjectTokenCategory;
1125#endif /* __cplusplus */
1126#endif
1127
1128#ifndef __ISpObjectToken_FWD_DEFINED__
1129#define __ISpObjectToken_FWD_DEFINED__
1130typedef interface ISpObjectToken ISpObjectToken;
1131#ifdef __cplusplus
1132interface ISpObjectToken;
1133#endif /* __cplusplus */
1134#endif
1135
1136#ifndef __IEnumSpObjectTokens_FWD_DEFINED__
1137#define __IEnumSpObjectTokens_FWD_DEFINED__
1138typedef interface IEnumSpObjectTokens IEnumSpObjectTokens;
1139#ifdef __cplusplus
1140interface IEnumSpObjectTokens;
1141#endif /* __cplusplus */
1142#endif
1143
1144#ifndef __ISpObjectWithToken_FWD_DEFINED__
1145#define __ISpObjectWithToken_FWD_DEFINED__
1146typedef interface ISpObjectWithToken ISpObjectWithToken;
1147#ifdef __cplusplus
1148interface ISpObjectWithToken;
1149#endif /* __cplusplus */
1150#endif
1151
1152#ifndef __ISpResourceManager_FWD_DEFINED__
1153#define __ISpResourceManager_FWD_DEFINED__
1154typedef interface ISpResourceManager ISpResourceManager;
1155#ifdef __cplusplus
1156interface ISpResourceManager;
1157#endif /* __cplusplus */
1158#endif
1159
1160#ifndef __ISpEventSource_FWD_DEFINED__
1161#define __ISpEventSource_FWD_DEFINED__
1162typedef interface ISpEventSource ISpEventSource;
1163#ifdef __cplusplus
1164interface ISpEventSource;
1165#endif /* __cplusplus */
1166#endif
1167
1168#ifndef __ISpEventSink_FWD_DEFINED__
1169#define __ISpEventSink_FWD_DEFINED__
1170typedef interface ISpEventSink ISpEventSink;
1171#ifdef __cplusplus
1172interface ISpEventSink;
1173#endif /* __cplusplus */
1174#endif
1175
1176#ifndef __ISpStreamFormat_FWD_DEFINED__
1177#define __ISpStreamFormat_FWD_DEFINED__
1178typedef interface ISpStreamFormat ISpStreamFormat;
1179#ifdef __cplusplus
1180interface ISpStreamFormat;
1181#endif /* __cplusplus */
1182#endif
1183
1184#ifndef __ISpStream_FWD_DEFINED__
1185#define __ISpStream_FWD_DEFINED__
1186typedef interface ISpStream ISpStream;
1187#ifdef __cplusplus
1188interface ISpStream;
1189#endif /* __cplusplus */
1190#endif
1191
1192#ifndef __ISpStreamFormatConverter_FWD_DEFINED__
1193#define __ISpStreamFormatConverter_FWD_DEFINED__
1194typedef interface ISpStreamFormatConverter ISpStreamFormatConverter;
1195#ifdef __cplusplus
1196interface ISpStreamFormatConverter;
1197#endif /* __cplusplus */
1198#endif
1199
1200#ifndef __ISpAudio_FWD_DEFINED__
1201#define __ISpAudio_FWD_DEFINED__
1202typedef interface ISpAudio ISpAudio;
1203#ifdef __cplusplus
1204interface ISpAudio;
1205#endif /* __cplusplus */
1206#endif
1207
1208#ifndef __ISpMMSysAudio_FWD_DEFINED__
1209#define __ISpMMSysAudio_FWD_DEFINED__
1210typedef interface ISpMMSysAudio ISpMMSysAudio;
1211#ifdef __cplusplus
1212interface ISpMMSysAudio;
1213#endif /* __cplusplus */
1214#endif
1215
1216#ifndef __ISpTranscript_FWD_DEFINED__
1217#define __ISpTranscript_FWD_DEFINED__
1218typedef interface ISpTranscript ISpTranscript;
1219#ifdef __cplusplus
1220interface ISpTranscript;
1221#endif /* __cplusplus */
1222#endif
1223
1224#ifndef __ISpVoice_FWD_DEFINED__
1225#define __ISpVoice_FWD_DEFINED__
1226typedef interface ISpVoice ISpVoice;
1227#ifdef __cplusplus
1228interface ISpVoice;
1229#endif /* __cplusplus */
1230#endif
1231
1232#ifndef __ISpRecoResult_FWD_DEFINED__
1233#define __ISpRecoResult_FWD_DEFINED__
1234typedef interface ISpRecoResult ISpRecoResult;
1235#ifdef __cplusplus
1236interface ISpRecoResult;
1237#endif /* __cplusplus */
1238#endif
1239
1240#ifndef __ISpRecoContext_FWD_DEFINED__
1241#define __ISpRecoContext_FWD_DEFINED__
1242typedef interface ISpRecoContext ISpRecoContext;
1243#ifdef __cplusplus
1244interface ISpRecoContext;
1245#endif /* __cplusplus */
1246#endif
1247
1248#ifndef __ISpRecognizer_FWD_DEFINED__
1249#define __ISpRecognizer_FWD_DEFINED__
1250typedef interface ISpRecognizer ISpRecognizer;
1251#ifdef __cplusplus
1252interface ISpRecognizer;
1253#endif /* __cplusplus */
1254#endif
1255
1256#ifndef __ISpProperties_FWD_DEFINED__
1257#define __ISpProperties_FWD_DEFINED__
1258typedef interface ISpProperties ISpProperties;
1259#ifdef __cplusplus
1260interface ISpProperties;
1261#endif /* __cplusplus */
1262#endif
1263
1264#ifndef __ISpLexicon_FWD_DEFINED__
1265#define __ISpLexicon_FWD_DEFINED__
1266typedef interface ISpLexicon ISpLexicon;
1267#ifdef __cplusplus
1268interface ISpLexicon;
1269#endif /* __cplusplus */
1270#endif
1271
1272#ifndef __ISpPhoneConverter_FWD_DEFINED__
1273#define __ISpPhoneConverter_FWD_DEFINED__
1274typedef interface ISpPhoneConverter ISpPhoneConverter;
1275#ifdef __cplusplus
1276interface ISpPhoneConverter;
1277#endif /* __cplusplus */
1278#endif
1279
1280#ifndef __ISpPhrase_FWD_DEFINED__
1281#define __ISpPhrase_FWD_DEFINED__
1282typedef interface ISpPhrase ISpPhrase;
1283#ifdef __cplusplus
1284interface ISpPhrase;
1285#endif /* __cplusplus */
1286#endif
1287
1288#ifndef __ISpRecoContext2_FWD_DEFINED__
1289#define __ISpRecoContext2_FWD_DEFINED__
1290typedef interface ISpRecoContext2 ISpRecoContext2;
1291#ifdef __cplusplus
1292interface ISpRecoContext2;
1293#endif /* __cplusplus */
1294#endif
1295
1296#ifndef __ISpRecognizer2_FWD_DEFINED__
1297#define __ISpRecognizer2_FWD_DEFINED__
1298typedef interface ISpRecognizer2 ISpRecognizer2;
1299#ifdef __cplusplus
1300interface ISpRecognizer2;
1301#endif /* __cplusplus */
1302#endif
1303
1304#ifndef __ISpShortcut_FWD_DEFINED__
1305#define __ISpShortcut_FWD_DEFINED__
1306typedef interface ISpShortcut ISpShortcut;
1307#ifdef __cplusplus
1308interface ISpShortcut;
1309#endif /* __cplusplus */
1310#endif
1311
1312#ifndef __ISpPhoneticAlphabetConverter_FWD_DEFINED__
1313#define __ISpPhoneticAlphabetConverter_FWD_DEFINED__
1314typedef interface ISpPhoneticAlphabetConverter ISpPhoneticAlphabetConverter;
1315#ifdef __cplusplus
1316interface ISpPhoneticAlphabetConverter;
1317#endif /* __cplusplus */
1318#endif
1319
1320#ifndef __ISpPhoneticAlphabetSelection_FWD_DEFINED__
1321#define __ISpPhoneticAlphabetSelection_FWD_DEFINED__
1322typedef interface ISpPhoneticAlphabetSelection ISpPhoneticAlphabetSelection;
1323#ifdef __cplusplus
1324interface ISpPhoneticAlphabetSelection;
1325#endif /* __cplusplus */
1326#endif
1327
1328#ifndef __ISpRecoGrammar2_FWD_DEFINED__
1329#define __ISpRecoGrammar2_FWD_DEFINED__
1330typedef interface ISpRecoGrammar2 ISpRecoGrammar2;
1331#ifdef __cplusplus
1332interface ISpRecoGrammar2;
1333#endif /* __cplusplus */
1334#endif
1335
1336#ifndef __ISpeechResourceLoader_FWD_DEFINED__
1337#define __ISpeechResourceLoader_FWD_DEFINED__
1338typedef interface ISpeechResourceLoader ISpeechResourceLoader;
1339#ifdef __cplusplus
1340interface ISpeechResourceLoader;
1341#endif /* __cplusplus */
1342#endif
1343
1344#ifndef __ISpRecognizer3_FWD_DEFINED__
1345#define __ISpRecognizer3_FWD_DEFINED__
1346typedef interface ISpRecognizer3 ISpRecognizer3;
1347#ifdef __cplusplus
1348interface ISpRecognizer3;
1349#endif /* __cplusplus */
1350#endif
1351
1352typedef enum SPDATAKEYLOCATION {
1353 SPDKL_DefaultLocation = 0,
1354 SPDKL_CurrentUser = 1,
1355 SPDKL_LocalMachine = 2,
1356 SPDKL_CurrentConfig = 5
1357} SPDATAKEYLOCATION;
1358typedef enum SPSTREAMFORMAT {
1359 SPSF_Default = -1,
1360 SPSF_NoAssignedFormat = 0,
1361 SPSF_Text = 1,
1362 SPSF_NonStandardFormat = 2,
1363 SPSF_ExtendedAudioFormat = 3,
1364 SPSF_8kHz8BitMono = 4,
1365 SPSF_8kHz8BitStereo = 5,
1366 SPSF_8kHz16BitMono = 6,
1367 SPSF_8kHz16BitStereo = 7,
1368 SPSF_11kHz8BitMono = 8,
1369 SPSF_11kHz8BitStereo = 9,
1370 SPSF_11kHz16BitMono = 10,
1371 SPSF_11kHz16BitStereo = 11,
1372 SPSF_12kHz8BitMono = 12,
1373 SPSF_12kHz8BitStereo = 13,
1374 SPSF_12kHz16BitMono = 14,
1375 SPSF_12kHz16BitStereo = 15,
1376 SPSF_16kHz8BitMono = 16,
1377 SPSF_16kHz8BitStereo = 17,
1378 SPSF_16kHz16BitMono = 18,
1379 SPSF_16kHz16BitStereo = 19,
1380 SPSF_22kHz8BitMono = 20,
1381 SPSF_22kHz8BitStereo = 21,
1382 SPSF_22kHz16BitMono = 22,
1383 SPSF_22kHz16BitStereo = 23,
1384 SPSF_24kHz8BitMono = 24,
1385 SPSF_24kHz8BitStereo = 25,
1386 SPSF_24kHz16BitMono = 26,
1387 SPSF_24kHz16BitStereo = 27,
1388 SPSF_32kHz8BitMono = 28,
1389 SPSF_32kHz8BitStereo = 29,
1390 SPSF_32kHz16BitMono = 30,
1391 SPSF_32kHz16BitStereo = 31,
1392 SPSF_44kHz8BitMono = 32,
1393 SPSF_44kHz8BitStereo = 33,
1394 SPSF_44kHz16BitMono = 34,
1395 SPSF_44kHz16BitStereo = 35,
1396 SPSF_48kHz8BitMono = 36,
1397 SPSF_48kHz8BitStereo = 37,
1398 SPSF_48kHz16BitMono = 38,
1399 SPSF_48kHz16BitStereo = 39,
1400 SPSF_TrueSpeech_8kHz1BitMono = 40,
1401 SPSF_CCITT_ALaw_8kHzMono = 41,
1402 SPSF_CCITT_ALaw_8kHzStereo = 42,
1403 SPSF_CCITT_ALaw_11kHzMono = 43,
1404 SPSF_CCITT_ALaw_11kHzStereo = 44,
1405 SPSF_CCITT_ALaw_22kHzMono = 45,
1406 SPSF_CCITT_ALaw_22kHzStereo = 46,
1407 SPSF_CCITT_ALaw_44kHzMono = 47,
1408 SPSF_CCITT_ALaw_44kHzStereo = 48,
1409 SPSF_CCITT_uLaw_8kHzMono = 49,
1410 SPSF_CCITT_uLaw_8kHzStereo = 50,
1411 SPSF_CCITT_uLaw_11kHzMono = 51,
1412 SPSF_CCITT_uLaw_11kHzStereo = 52,
1413 SPSF_CCITT_uLaw_22kHzMono = 53,
1414 SPSF_CCITT_uLaw_22kHzStereo = 54,
1415 SPSF_CCITT_uLaw_44kHzMono = 55,
1416 SPSF_CCITT_uLaw_44kHzStereo = 56,
1417 SPSF_ADPCM_8kHzMono = 57,
1418 SPSF_ADPCM_8kHzStereo = 58,
1419 SPSF_ADPCM_11kHzMono = 59,
1420 SPSF_ADPCM_11kHzStereo = 60,
1421 SPSF_ADPCM_22kHzMono = 61,
1422 SPSF_ADPCM_22kHzStereo = 62,
1423 SPSF_ADPCM_44kHzMono = 63,
1424 SPSF_ADPCM_44kHzStereo = 64,
1425 SPSF_GSM610_8kHzMono = 65,
1426 SPSF_GSM610_11kHzMono = 66,
1427 SPSF_GSM610_22kHzMono = 67,
1428 SPSF_GSM610_44kHzMono = 68,
1429 SPSF_NUM_FORMATS = 69
1430} SPSTREAMFORMAT;
1431typedef enum SPEVENTLPARAMTYPE {
1432 SPET_LPARAM_IS_UNDEFINED = 0,
1433 SPET_LPARAM_IS_TOKEN = 1,
1434 SPET_LPARAM_IS_OBJECT = 2,
1435 SPET_LPARAM_IS_POINTER = 3,
1436 SPET_LPARAM_IS_STRING = 4
1437} SPEVENTLPARAMTYPE;
1438typedef enum SPEVENTENUM {
1439 SPEI_UNDEFINED = 0,
1440 SPEI_START_INPUT_STREAM = 1,
1441 SPEI_END_INPUT_STREAM = 2,
1442 SPEI_VOICE_CHANGE = 3,
1443 SPEI_TTS_BOOKMARK = 4,
1444 SPEI_WORD_BOUNDARY = 5,
1445 SPEI_PHONEME = 6,
1446 SPEI_SENTENCE_BOUNDARY = 7,
1447 SPEI_VISEME = 8,
1448 SPEI_TTS_AUDIO_LEVEL = 9,
1449 SPEI_TTS_PRIVATE = 15,
1450 SPEI_MIN_TTS = 1,
1451 SPEI_MAX_TTS = 15,
1452 SPEI_END_SR_STREAM = 34,
1453 SPEI_SOUND_START = 35,
1454 SPEI_SOUND_END = 36,
1455 SPEI_PHRASE_START = 37,
1456 SPEI_RECOGNITION = 38,
1457 SPEI_HYPOTHESIS = 39,
1458 SPEI_SR_BOOKMARK = 40,
1459 SPEI_PROPERTY_NUM_CHANGE = 41,
1460 SPEI_PROPERTY_STRING_CHANGE = 42,
1461 SPEI_FALSE_RECOGNITION = 43,
1462 SPEI_INTERFERENCE = 44,
1463 SPEI_REQUEST_UI = 45,
1464 SPEI_RECO_STATE_CHANGE = 46,
1465 SPEI_ADAPTATION = 47,
1466 SPEI_START_SR_STREAM = 48,
1467 SPEI_RECO_OTHER_CONTEXT = 49,
1468 SPEI_SR_AUDIO_LEVEL = 50,
1469 SPEI_SR_RETAINEDAUDIO = 51,
1470 SPEI_SR_PRIVATE = 52,
1471 SPEI_ACTIVE_CATEGORY_CHANGED = 53,
1472 SPEI_RESERVED5 = 54,
1473 SPEI_RESERVED6 = 55,
1474 SPEI_MIN_SR = 34,
1475 SPEI_MAX_SR = 55,
1476 SPEI_RESERVED1 = 30,
1477 SPEI_RESERVED2 = 33,
1478 SPEI_RESERVED3 = 63
1479} SPEVENTENUM;
1480typedef enum SPINTERFERENCE {
1481 SPINTERFERENCE_NONE = 0,
1482 SPINTERFERENCE_NOISE = 1,
1483 SPINTERFERENCE_NOSIGNAL = 2,
1484 SPINTERFERENCE_TOOLOUD = 3,
1485 SPINTERFERENCE_TOOQUIET = 4,
1486 SPINTERFERENCE_TOOFAST = 5,
1487 SPINTERFERENCE_TOOSLOW = 6,
1488 SPINTERFERENCE_LATENCY_WARNING = 7,
1489 SPINTERFERENCE_LATENCY_TRUNCATE_BEGIN = 8,
1490 SPINTERFERENCE_LATENCY_TRUNCATE_END = 9
1491} SPINTERFERENCE;
1492typedef enum SPENDSRSTREAMFLAGS {
1493 SPESF_NONE = 0,
1494 SPESF_STREAM_RELEASED = 1,
1495 SPESF_EMULATED = 2
1496} SPENDSRSTREAMFLAGS;
1497typedef enum SPVFEATURE {
1498 SPVFEATURE_STRESSED = 1,
1499 SPVFEATURE_EMPHASIS = 2
1500} SPVFEATURE;
1501typedef enum SPVISEMES {
1502 SP_VISEME_0 = 0,
1503 SP_VISEME_1 = 1,
1504 SP_VISEME_2 = 2,
1505 SP_VISEME_3 = 3,
1506 SP_VISEME_4 = 4,
1507 SP_VISEME_5 = 5,
1508 SP_VISEME_6 = 6,
1509 SP_VISEME_7 = 7,
1510 SP_VISEME_8 = 8,
1511 SP_VISEME_9 = 9,
1512 SP_VISEME_10 = 10,
1513 SP_VISEME_11 = 11,
1514 SP_VISEME_12 = 12,
1515 SP_VISEME_13 = 13,
1516 SP_VISEME_14 = 14,
1517 SP_VISEME_15 = 15,
1518 SP_VISEME_16 = 16,
1519 SP_VISEME_17 = 17,
1520 SP_VISEME_18 = 18,
1521 SP_VISEME_19 = 19,
1522 SP_VISEME_20 = 20,
1523 SP_VISEME_21 = 21
1524} SPVISEMES;
1525typedef enum SPFILEMODE {
1526 SPFM_OPEN_READONLY = 0,
1527 SPFM_OPEN_READWRITE = 1,
1528 SPFM_CREATE = 2,
1529 SPFM_CREATE_ALWAYS = 3,
1530 SPFM_NUM_MODES = 4
1531} SPFILEMODE;
1532typedef enum _SPAUDIOSTATE {
1533 SPAS_CLOSED = 0,
1534 SPAS_STOP = 1,
1535 SPAS_PAUSE = 2,
1536 SPAS_RUN = 3
1537} SPAUDIOSTATE;
1538typedef enum SPDISPLYATTRIBUTES {
1539 SPAF_ONE_TRAILING_SPACE = 0x2,
1540 SPAF_TWO_TRAILING_SPACES = 0x4,
1541 SPAF_CONSUME_LEADING_SPACES = 0x8,
1542 SPAF_BUFFER_POSITION = 0x10,
1543 SPAF_ALL = 0x1f,
1544 SPAF_USER_SPECIFIED = 0x80
1545} SPDISPLAYATTRIBUTES;
1546typedef enum SPPHRASEPROPERTYUNIONTYPE {
1547 SPPPUT_UNUSED = 0,
1548 SPPPUT_ARRAY_INDEX = 1
1549} SPPHRASEPROPERTYUNIONTYPE;
1550typedef enum SPSEMANTICFORMAT {
1551 SPSMF_SAPI_PROPERTIES = 0,
1552 SPSMF_SRGS_SEMANTICINTERPRETATION_MS = 1,
1553 SPSMF_SRGS_SAPIPROPERTIES = 2,
1554 SPSMF_UPS = 4,
1555 SPSMF_SRGS_SEMANTICINTERPRETATION_W3C = 8
1556} SPSEMANTICFORMAT;
1557typedef enum SPRECOEVENTFLAGS {
1558 SPREF_AutoPause = 0x1,
1559 SPREF_Emulated = 0x2,
1560 SPREF_SMLTimeout = 0x4,
1561 SPREF_ExtendableParse = 0x8,
1562 SPREF_ReSent = 0x10,
1563 SPREF_Hypothesis = 0x20,
1564 SPREF_FalseRecognition = 0x40
1565} SPRECOEVENTFLAGS;
1566typedef enum SPPARTOFSPEECH {
1567 SPPS_NotOverriden = -1,
1568 SPPS_Unknown = 0,
1569 SPPS_Noun = 0x1000,
1570 SPPS_Verb = 0x2000,
1571 SPPS_Modifier = 0x3000,
1572 SPPS_Function = 0x4000,
1573 SPPS_Interjection = 0x5000,
1574 SPPS_Noncontent = 0x6000,
1575 SPPS_LMA = 0x7000,
1576 SPPS_SuppressWord = 0xf000
1577} SPPARTOFSPEECH;
1578typedef enum SPLEXICONTYPE {
1579 eLEXTYPE_USER = 0x1,
1580 eLEXTYPE_APP = 0x2,
1581 eLEXTYPE_VENDORLEXICON = 0x4,
1582 eLEXTYPE_LETTERTOSOUND = 0x8,
1583 eLEXTYPE_MORPHOLOGY = 0x10,
1584 eLEXTYPE_RESERVED4 = 0x20,
1585 eLEXTYPE_USER_SHORTCUT = 0x40,
1586 eLEXTYPE_RESERVED6 = 0x80,
1587 eLEXTYPE_RESERVED7 = 0x100,
1588 eLEXTYPE_RESERVED8 = 0x200,
1589 eLEXTYPE_RESERVED9 = 0x400,
1590 eLEXTYPE_RESERVED10 = 0x800,
1591 eLEXTYPE_PRIVATE1 = 0x1000,
1592 eLEXTYPE_PRIVATE2 = 0x2000,
1593 eLEXTYPE_PRIVATE3 = 0x4000,
1594 eLEXTYPE_PRIVATE4 = 0x8000,
1595 eLEXTYPE_PRIVATE5 = 0x10000,
1596 eLEXTYPE_PRIVATE6 = 0x20000,
1597 eLEXTYPE_PRIVATE7 = 0x40000,
1598 eLEXTYPE_PRIVATE8 = 0x80000,
1599 eLEXTYPE_PRIVATE9 = 0x100000,
1600 eLEXTYPE_PRIVATE10 = 0x200000,
1601 eLEXTYPE_PRIVATE11 = 0x400000,
1602 eLEXTYPE_PRIVATE12 = 0x800000,
1603 eLEXTYPE_PRIVATE13 = 0x1000000,
1604 eLEXTYPE_PRIVATE14 = 0x2000000,
1605 eLEXTYPE_PRIVATE15 = 0x4000000,
1606 eLEXTYPE_PRIVATE16 = 0x8000000,
1607 eLEXTYPE_PRIVATE17 = 0x10000000,
1608 eLEXTYPE_PRIVATE18 = 0x20000000,
1609 eLEXTYPE_PRIVATE19 = 0x40000000,
1610 eLEXTYPE_PRIVATE20 = 0x80000000u
1611} SPLEXICONTYPE;
1612typedef enum SPWORDTYPE {
1613 eWORDTYPE_ADDED = 1,
1614 eWORDTYPE_DELETED = 2
1615} SPWORDTYPE;
1616typedef enum SPPRONUNCIATIONFLAGS {
1617 ePRONFLAG_USED = 1
1618} SPPRONUNCIATIONFLAGS;
1619typedef enum SPSHORTCUTTYPE {
1620 SPSHT_NotOverriden = -1,
1621 SPSHT_Unknown = 0,
1622 SPSHT_EMAIL = 0x1000,
1623 SPSHT_OTHER = 0x2000,
1624 SPPS_RESERVED1 = 0x3000,
1625 SPPS_RESERVED2 = 0x4000,
1626 SPPS_RESERVED3 = 0x5000,
1627 SPPS_RESERVED4 = 0xf000
1628} SPSHORTCUTTYPE;
1629typedef enum SPVALUETYPE {
1630 SPDF_PROPERTY = 0x1,
1631 SPDF_REPLACEMENT = 0x2,
1632 SPDF_RULE = 0x4,
1633 SPDF_DISPLAYTEXT = 0x8,
1634 SPDF_LEXICALFORM = 0x10,
1635 SPDF_PRONUNCIATION = 0x20,
1636 SPDF_AUDIO = 0x40,
1637 SPDF_ALTERNATES = 0x80,
1638 SPDF_ALL = 0xff
1639} SPVALUETYPE;
1640typedef enum SPPHRASERNG {
1641 SPPR_ALL_ELEMENTS = -1
1642} SPPHRASERNG;
1643typedef enum SPVACTIONS {
1644 SPVA_Speak = 0,
1645 SPVA_Silence = 1,
1646 SPVA_Pronounce = 2,
1647 SPVA_Bookmark = 3,
1648 SPVA_SpellOut = 4,
1649 SPVA_Section = 5,
1650 SPVA_ParseUnknownTag = 6
1651} SPVACTIONS;
1652typedef enum SPRUNSTATE {
1653 SPRS_DONE = 1,
1654 SPRS_IS_SPEAKING = 2
1655} SPRUNSTATE;
1656typedef enum SPVLIMITS {
1657 SPMIN_VOLUME = 0,
1658 SPMAX_VOLUME = 100,
1659 SPMIN_RATE = -10,
1660 SPMAX_RATE = 10
1661} SPVLIMITS;
1662typedef enum SPVPRIORITY {
1663 SPVPRI_NORMAL = 0,
1664 SPVPRI_ALERT = 1,
1665 SPVPRI_OVER = 2
1666} SPVPRIORITY;
1667EXTERN_C const GUID SPDFID_Text;
1668EXTERN_C const GUID SPDFID_WaveFormatEx;
1669
1670#define SP_LOW_CONFIDENCE (-1)
1671
1672#define SP_NORMAL_CONFIDENCE (0)
1673
1674#define SP_HIGH_CONFIDENCE (+1)
1675
1676#define DEFAULT_WEIGHT (1)
1677
1678#define SP_MAX_WORD_LENGTH (128)
1679
1680#define SP_MAX_PRON_LENGTH (384)
1681
1682#define SP_EMULATE_RESULT (0x40000000)
1683
1684
1685#ifdef __cplusplus
1686interface ISpNotifyCallback {
1687 virtual HRESULT STDMETHODCALLTYPE NotifyCallback(WPARAM wParam, LPARAM lParam) = 0;
1688};
1689#else
1690typedef void *ISpNotifyCallback;
1691#endif
1692#if 0
1693typedef void *SPNOTIFYCALLBACK;
1694#else
1695typedef void __stdcall SPNOTIFYCALLBACK(WPARAM wParam, LPARAM lParam);
1696#endif
1697/*****************************************************************************
1698 * ISpNotifySource interface
1699 */
1700#ifndef __ISpNotifySource_INTERFACE_DEFINED__
1701#define __ISpNotifySource_INTERFACE_DEFINED__
1702
1703DEFINE_GUID(IID_ISpNotifySource, 0x5eff4aef, 0x8487, 0x11d2, 0x96,0x1c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
1704#if defined(__cplusplus) && !defined(CINTERFACE)
1705MIDL_INTERFACE("5eff4aef-8487-11d2-961c-00c04f8ee628")
1706ISpNotifySource : public IUnknown
1707{
1708 virtual HRESULT STDMETHODCALLTYPE SetNotifySink(
1709 ISpNotifySink *pNotifySink) = 0;
1710
1711 virtual HRESULT STDMETHODCALLTYPE SetNotifyWindowMessage(
1712 HWND hWnd,
1713 UINT Msg,
1714 WPARAM wParam,
1715 LPARAM lParam) = 0;
1716
1717 virtual HRESULT STDMETHODCALLTYPE SetNotifyCallbackFunction(
1718 SPNOTIFYCALLBACK *pfnCallback,
1719 WPARAM wParam,
1720 LPARAM lParam) = 0;
1721
1722 virtual HRESULT STDMETHODCALLTYPE SetNotifyCallbackInterface(
1723 ISpNotifyCallback *pSpCallback,
1724 WPARAM wParam,
1725 LPARAM lParam) = 0;
1726
1727 virtual HRESULT STDMETHODCALLTYPE SetNotifyWin32Event(
1728 ) = 0;
1729
1730 virtual HRESULT STDMETHODCALLTYPE WaitForNotifyEvent(
1731 DWORD dwMilliseconds) = 0;
1732
1733 virtual HANDLE STDMETHODCALLTYPE GetNotifyEventHandle(
1734 ) = 0;
1735
1736};
1737#ifdef __CRT_UUID_DECL
1738__CRT_UUID_DECL(ISpNotifySource, 0x5eff4aef, 0x8487, 0x11d2, 0x96,0x1c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
1739#endif
1740#else
1741typedef struct ISpNotifySourceVtbl {
1742 BEGIN_INTERFACE
1743
1744 /*** IUnknown methods ***/
1745 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1746 ISpNotifySource *This,
1747 REFIID riid,
1748 void **ppvObject);
1749
1750 ULONG (STDMETHODCALLTYPE *AddRef)(
1751 ISpNotifySource *This);
1752
1753 ULONG (STDMETHODCALLTYPE *Release)(
1754 ISpNotifySource *This);
1755
1756 /*** ISpNotifySource methods ***/
1757 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
1758 ISpNotifySource *This,
1759 ISpNotifySink *pNotifySink);
1760
1761 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
1762 ISpNotifySource *This,
1763 HWND hWnd,
1764 UINT Msg,
1765 WPARAM wParam,
1766 LPARAM lParam);
1767
1768 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
1769 ISpNotifySource *This,
1770 SPNOTIFYCALLBACK *pfnCallback,
1771 WPARAM wParam,
1772 LPARAM lParam);
1773
1774 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
1775 ISpNotifySource *This,
1776 ISpNotifyCallback *pSpCallback,
1777 WPARAM wParam,
1778 LPARAM lParam);
1779
1780 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
1781 ISpNotifySource *This);
1782
1783 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
1784 ISpNotifySource *This,
1785 DWORD dwMilliseconds);
1786
1787 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
1788 ISpNotifySource *This);
1789
1790 END_INTERFACE
1791} ISpNotifySourceVtbl;
1792
1793interface ISpNotifySource {
1794 CONST_VTBL ISpNotifySourceVtbl* lpVtbl;
1795};
1796
1797#ifdef COBJMACROS
1798#ifndef WIDL_C_INLINE_WRAPPERS
1799/*** IUnknown methods ***/
1800#define ISpNotifySource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1801#define ISpNotifySource_AddRef(This) (This)->lpVtbl->AddRef(This)
1802#define ISpNotifySource_Release(This) (This)->lpVtbl->Release(This)
1803/*** ISpNotifySource methods ***/
1804#define ISpNotifySource_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
1805#define ISpNotifySource_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
1806#define ISpNotifySource_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
1807#define ISpNotifySource_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
1808#define ISpNotifySource_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
1809#define ISpNotifySource_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
1810#define ISpNotifySource_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
1811#else
1812/*** IUnknown methods ***/
1813static inline HRESULT ISpNotifySource_QueryInterface(ISpNotifySource* This,REFIID riid,void **ppvObject) {
1814 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1815}
1816static inline ULONG ISpNotifySource_AddRef(ISpNotifySource* This) {
1817 return This->lpVtbl->AddRef(This);
1818}
1819static inline ULONG ISpNotifySource_Release(ISpNotifySource* This) {
1820 return This->lpVtbl->Release(This);
1821}
1822/*** ISpNotifySource methods ***/
1823static inline HRESULT ISpNotifySource_SetNotifySink(ISpNotifySource* This,ISpNotifySink *pNotifySink) {
1824 return This->lpVtbl->SetNotifySink(This,pNotifySink);
1825}
1826static inline HRESULT ISpNotifySource_SetNotifyWindowMessage(ISpNotifySource* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
1827 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
1828}
1829static inline HRESULT ISpNotifySource_SetNotifyCallbackFunction(ISpNotifySource* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
1830 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
1831}
1832static inline HRESULT ISpNotifySource_SetNotifyCallbackInterface(ISpNotifySource* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
1833 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
1834}
1835static inline HRESULT ISpNotifySource_SetNotifyWin32Event(ISpNotifySource* This) {
1836 return This->lpVtbl->SetNotifyWin32Event(This);
1837}
1838static inline HRESULT ISpNotifySource_WaitForNotifyEvent(ISpNotifySource* This,DWORD dwMilliseconds) {
1839 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
1840}
1841static inline HANDLE ISpNotifySource_GetNotifyEventHandle(ISpNotifySource* This) {
1842 return This->lpVtbl->GetNotifyEventHandle(This);
1843}
1844#endif
1845#endif
1846
1847#endif
1848
1849
1850#endif /* __ISpNotifySource_INTERFACE_DEFINED__ */
1851
1852/*****************************************************************************
1853 * ISpNotifySink interface
1854 */
1855#ifndef __ISpNotifySink_INTERFACE_DEFINED__
1856#define __ISpNotifySink_INTERFACE_DEFINED__
1857
1858DEFINE_GUID(IID_ISpNotifySink, 0x259684dc, 0x37c3, 0x11d2, 0x96,0x03, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
1859#if defined(__cplusplus) && !defined(CINTERFACE)
1860MIDL_INTERFACE("259684dc-37c3-11d2-9603-00c04f8ee628")
1861ISpNotifySink : public IUnknown
1862{
1863 virtual HRESULT STDMETHODCALLTYPE Notify(
1864 ) = 0;
1865
1866};
1867#ifdef __CRT_UUID_DECL
1868__CRT_UUID_DECL(ISpNotifySink, 0x259684dc, 0x37c3, 0x11d2, 0x96,0x03, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
1869#endif
1870#else
1871typedef struct ISpNotifySinkVtbl {
1872 BEGIN_INTERFACE
1873
1874 /*** IUnknown methods ***/
1875 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1876 ISpNotifySink *This,
1877 REFIID riid,
1878 void **ppvObject);
1879
1880 ULONG (STDMETHODCALLTYPE *AddRef)(
1881 ISpNotifySink *This);
1882
1883 ULONG (STDMETHODCALLTYPE *Release)(
1884 ISpNotifySink *This);
1885
1886 /*** ISpNotifySink methods ***/
1887 HRESULT (STDMETHODCALLTYPE *Notify)(
1888 ISpNotifySink *This);
1889
1890 END_INTERFACE
1891} ISpNotifySinkVtbl;
1892
1893interface ISpNotifySink {
1894 CONST_VTBL ISpNotifySinkVtbl* lpVtbl;
1895};
1896
1897#ifdef COBJMACROS
1898#ifndef WIDL_C_INLINE_WRAPPERS
1899/*** IUnknown methods ***/
1900#define ISpNotifySink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1901#define ISpNotifySink_AddRef(This) (This)->lpVtbl->AddRef(This)
1902#define ISpNotifySink_Release(This) (This)->lpVtbl->Release(This)
1903/*** ISpNotifySink methods ***/
1904#define ISpNotifySink_Notify(This) (This)->lpVtbl->Notify(This)
1905#else
1906/*** IUnknown methods ***/
1907static inline HRESULT ISpNotifySink_QueryInterface(ISpNotifySink* This,REFIID riid,void **ppvObject) {
1908 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1909}
1910static inline ULONG ISpNotifySink_AddRef(ISpNotifySink* This) {
1911 return This->lpVtbl->AddRef(This);
1912}
1913static inline ULONG ISpNotifySink_Release(ISpNotifySink* This) {
1914 return This->lpVtbl->Release(This);
1915}
1916/*** ISpNotifySink methods ***/
1917static inline HRESULT ISpNotifySink_Notify(ISpNotifySink* This) {
1918 return This->lpVtbl->Notify(This);
1919}
1920#endif
1921#endif
1922
1923#endif
1924
1925
1926#endif /* __ISpNotifySink_INTERFACE_DEFINED__ */
1927
1928/*****************************************************************************
1929 * ISpNotifyTranslator interface
1930 */
1931#ifndef __ISpNotifyTranslator_INTERFACE_DEFINED__
1932#define __ISpNotifyTranslator_INTERFACE_DEFINED__
1933
1934DEFINE_GUID(IID_ISpNotifyTranslator, 0xaca16614, 0x5d3d, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
1935#if defined(__cplusplus) && !defined(CINTERFACE)
1936MIDL_INTERFACE("aca16614-5d3d-11d2-960e-00c04f8ee628")
1937ISpNotifyTranslator : public ISpNotifySink
1938{
1939 virtual HRESULT STDMETHODCALLTYPE InitWindowMessage(
1940 HWND hWnd,
1941 UINT Msg,
1942 WPARAM wParam,
1943 LPARAM lParam) = 0;
1944
1945 virtual HRESULT STDMETHODCALLTYPE InitCallback(
1946 SPNOTIFYCALLBACK *pfnCallback,
1947 WPARAM wParam,
1948 LPARAM lParam) = 0;
1949
1950 virtual HRESULT STDMETHODCALLTYPE InitSpNotifyCallback(
1951 ISpNotifyCallback *pSpCallback,
1952 WPARAM wParam,
1953 LPARAM lParam) = 0;
1954
1955 virtual HRESULT STDMETHODCALLTYPE InitWin32Event(
1956 HANDLE hEvent,
1957 WINBOOL fCloseHandleOnRelease) = 0;
1958
1959 virtual HRESULT STDMETHODCALLTYPE Wait(
1960 DWORD dwMilliseconds) = 0;
1961
1962 virtual HANDLE STDMETHODCALLTYPE GetEventHandle(
1963 ) = 0;
1964
1965};
1966#ifdef __CRT_UUID_DECL
1967__CRT_UUID_DECL(ISpNotifyTranslator, 0xaca16614, 0x5d3d, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
1968#endif
1969#else
1970typedef struct ISpNotifyTranslatorVtbl {
1971 BEGIN_INTERFACE
1972
1973 /*** IUnknown methods ***/
1974 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1975 ISpNotifyTranslator *This,
1976 REFIID riid,
1977 void **ppvObject);
1978
1979 ULONG (STDMETHODCALLTYPE *AddRef)(
1980 ISpNotifyTranslator *This);
1981
1982 ULONG (STDMETHODCALLTYPE *Release)(
1983 ISpNotifyTranslator *This);
1984
1985 /*** ISpNotifySink methods ***/
1986 HRESULT (STDMETHODCALLTYPE *Notify)(
1987 ISpNotifyTranslator *This);
1988
1989 /*** ISpNotifyTranslator methods ***/
1990 HRESULT (STDMETHODCALLTYPE *InitWindowMessage)(
1991 ISpNotifyTranslator *This,
1992 HWND hWnd,
1993 UINT Msg,
1994 WPARAM wParam,
1995 LPARAM lParam);
1996
1997 HRESULT (STDMETHODCALLTYPE *InitCallback)(
1998 ISpNotifyTranslator *This,
1999 SPNOTIFYCALLBACK *pfnCallback,
2000 WPARAM wParam,
2001 LPARAM lParam);
2002
2003 HRESULT (STDMETHODCALLTYPE *InitSpNotifyCallback)(
2004 ISpNotifyTranslator *This,
2005 ISpNotifyCallback *pSpCallback,
2006 WPARAM wParam,
2007 LPARAM lParam);
2008
2009 HRESULT (STDMETHODCALLTYPE *InitWin32Event)(
2010 ISpNotifyTranslator *This,
2011 HANDLE hEvent,
2012 WINBOOL fCloseHandleOnRelease);
2013
2014 HRESULT (STDMETHODCALLTYPE *Wait)(
2015 ISpNotifyTranslator *This,
2016 DWORD dwMilliseconds);
2017
2018 HANDLE (STDMETHODCALLTYPE *GetEventHandle)(
2019 ISpNotifyTranslator *This);
2020
2021 END_INTERFACE
2022} ISpNotifyTranslatorVtbl;
2023
2024interface ISpNotifyTranslator {
2025 CONST_VTBL ISpNotifyTranslatorVtbl* lpVtbl;
2026};
2027
2028#ifdef COBJMACROS
2029#ifndef WIDL_C_INLINE_WRAPPERS
2030/*** IUnknown methods ***/
2031#define ISpNotifyTranslator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2032#define ISpNotifyTranslator_AddRef(This) (This)->lpVtbl->AddRef(This)
2033#define ISpNotifyTranslator_Release(This) (This)->lpVtbl->Release(This)
2034/*** ISpNotifySink methods ***/
2035#define ISpNotifyTranslator_Notify(This) (This)->lpVtbl->Notify(This)
2036/*** ISpNotifyTranslator methods ***/
2037#define ISpNotifyTranslator_InitWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->InitWindowMessage(This,hWnd,Msg,wParam,lParam)
2038#define ISpNotifyTranslator_InitCallback(This,pfnCallback,wParam,lParam) (This)->lpVtbl->InitCallback(This,pfnCallback,wParam,lParam)
2039#define ISpNotifyTranslator_InitSpNotifyCallback(This,pSpCallback,wParam,lParam) (This)->lpVtbl->InitSpNotifyCallback(This,pSpCallback,wParam,lParam)
2040#define ISpNotifyTranslator_InitWin32Event(This,hEvent,fCloseHandleOnRelease) (This)->lpVtbl->InitWin32Event(This,hEvent,fCloseHandleOnRelease)
2041#define ISpNotifyTranslator_Wait(This,dwMilliseconds) (This)->lpVtbl->Wait(This,dwMilliseconds)
2042#define ISpNotifyTranslator_GetEventHandle(This) (This)->lpVtbl->GetEventHandle(This)
2043#else
2044/*** IUnknown methods ***/
2045static inline HRESULT ISpNotifyTranslator_QueryInterface(ISpNotifyTranslator* This,REFIID riid,void **ppvObject) {
2046 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2047}
2048static inline ULONG ISpNotifyTranslator_AddRef(ISpNotifyTranslator* This) {
2049 return This->lpVtbl->AddRef(This);
2050}
2051static inline ULONG ISpNotifyTranslator_Release(ISpNotifyTranslator* This) {
2052 return This->lpVtbl->Release(This);
2053}
2054/*** ISpNotifySink methods ***/
2055static inline HRESULT ISpNotifyTranslator_Notify(ISpNotifyTranslator* This) {
2056 return This->lpVtbl->Notify(This);
2057}
2058/*** ISpNotifyTranslator methods ***/
2059static inline HRESULT ISpNotifyTranslator_InitWindowMessage(ISpNotifyTranslator* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
2060 return This->lpVtbl->InitWindowMessage(This,hWnd,Msg,wParam,lParam);
2061}
2062static inline HRESULT ISpNotifyTranslator_InitCallback(ISpNotifyTranslator* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
2063 return This->lpVtbl->InitCallback(This,pfnCallback,wParam,lParam);
2064}
2065static inline HRESULT ISpNotifyTranslator_InitSpNotifyCallback(ISpNotifyTranslator* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
2066 return This->lpVtbl->InitSpNotifyCallback(This,pSpCallback,wParam,lParam);
2067}
2068static inline HRESULT ISpNotifyTranslator_InitWin32Event(ISpNotifyTranslator* This,HANDLE hEvent,WINBOOL fCloseHandleOnRelease) {
2069 return This->lpVtbl->InitWin32Event(This,hEvent,fCloseHandleOnRelease);
2070}
2071static inline HRESULT ISpNotifyTranslator_Wait(ISpNotifyTranslator* This,DWORD dwMilliseconds) {
2072 return This->lpVtbl->Wait(This,dwMilliseconds);
2073}
2074static inline HANDLE ISpNotifyTranslator_GetEventHandle(ISpNotifyTranslator* This) {
2075 return This->lpVtbl->GetEventHandle(This);
2076}
2077#endif
2078#endif
2079
2080#endif
2081
2082
2083#endif /* __ISpNotifyTranslator_INTERFACE_DEFINED__ */
2084
2085/*****************************************************************************
2086 * ISpDataKey interface
2087 */
2088#ifndef __ISpDataKey_INTERFACE_DEFINED__
2089#define __ISpDataKey_INTERFACE_DEFINED__
2090
2091DEFINE_GUID(IID_ISpDataKey, 0x14056581, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
2092#if defined(__cplusplus) && !defined(CINTERFACE)
2093MIDL_INTERFACE("14056581-e16c-11d2-bb90-00c04f8ee6c0")
2094ISpDataKey : public IUnknown
2095{
2096 virtual HRESULT STDMETHODCALLTYPE SetData(
2097 LPCWSTR pszValueName,
2098 ULONG cbData,
2099 const BYTE *pData) = 0;
2100
2101 virtual HRESULT STDMETHODCALLTYPE GetData(
2102 LPCWSTR pszValueName,
2103 ULONG *pcbData,
2104 BYTE *pData) = 0;
2105
2106 virtual HRESULT STDMETHODCALLTYPE SetStringValue(
2107 LPCWSTR pszValueName,
2108 LPCWSTR pszValue) = 0;
2109
2110 virtual HRESULT STDMETHODCALLTYPE GetStringValue(
2111 LPCWSTR pszValueName,
2112 LPWSTR *ppszValue) = 0;
2113
2114 virtual HRESULT STDMETHODCALLTYPE SetDWORD(
2115 LPCWSTR pszValueName,
2116 DWORD dwValue) = 0;
2117
2118 virtual HRESULT STDMETHODCALLTYPE GetDWORD(
2119 LPCWSTR pszValueName,
2120 DWORD *pdwValue) = 0;
2121
2122 virtual HRESULT STDMETHODCALLTYPE OpenKey(
2123 LPCWSTR pszSubKeyName,
2124 ISpDataKey **ppSubKey) = 0;
2125
2126 virtual HRESULT STDMETHODCALLTYPE CreateKey(
2127 LPCWSTR pszSubKey,
2128 ISpDataKey **ppSubKey) = 0;
2129
2130 virtual HRESULT STDMETHODCALLTYPE DeleteKey(
2131 LPCWSTR pszSubKey) = 0;
2132
2133 virtual HRESULT STDMETHODCALLTYPE DeleteValue(
2134 LPCWSTR pszValueName) = 0;
2135
2136 virtual HRESULT STDMETHODCALLTYPE EnumKeys(
2137 ULONG Index,
2138 LPWSTR *ppszSubKeyName) = 0;
2139
2140 virtual HRESULT STDMETHODCALLTYPE EnumValues(
2141 ULONG Index,
2142 LPWSTR *ppszValueName) = 0;
2143
2144};
2145#ifdef __CRT_UUID_DECL
2146__CRT_UUID_DECL(ISpDataKey, 0x14056581, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
2147#endif
2148#else
2149typedef struct ISpDataKeyVtbl {
2150 BEGIN_INTERFACE
2151
2152 /*** IUnknown methods ***/
2153 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2154 ISpDataKey *This,
2155 REFIID riid,
2156 void **ppvObject);
2157
2158 ULONG (STDMETHODCALLTYPE *AddRef)(
2159 ISpDataKey *This);
2160
2161 ULONG (STDMETHODCALLTYPE *Release)(
2162 ISpDataKey *This);
2163
2164 /*** ISpDataKey methods ***/
2165 HRESULT (STDMETHODCALLTYPE *SetData)(
2166 ISpDataKey *This,
2167 LPCWSTR pszValueName,
2168 ULONG cbData,
2169 const BYTE *pData);
2170
2171 HRESULT (STDMETHODCALLTYPE *GetData)(
2172 ISpDataKey *This,
2173 LPCWSTR pszValueName,
2174 ULONG *pcbData,
2175 BYTE *pData);
2176
2177 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
2178 ISpDataKey *This,
2179 LPCWSTR pszValueName,
2180 LPCWSTR pszValue);
2181
2182 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2183 ISpDataKey *This,
2184 LPCWSTR pszValueName,
2185 LPWSTR *ppszValue);
2186
2187 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
2188 ISpDataKey *This,
2189 LPCWSTR pszValueName,
2190 DWORD dwValue);
2191
2192 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
2193 ISpDataKey *This,
2194 LPCWSTR pszValueName,
2195 DWORD *pdwValue);
2196
2197 HRESULT (STDMETHODCALLTYPE *OpenKey)(
2198 ISpDataKey *This,
2199 LPCWSTR pszSubKeyName,
2200 ISpDataKey **ppSubKey);
2201
2202 HRESULT (STDMETHODCALLTYPE *CreateKey)(
2203 ISpDataKey *This,
2204 LPCWSTR pszSubKey,
2205 ISpDataKey **ppSubKey);
2206
2207 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
2208 ISpDataKey *This,
2209 LPCWSTR pszSubKey);
2210
2211 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
2212 ISpDataKey *This,
2213 LPCWSTR pszValueName);
2214
2215 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
2216 ISpDataKey *This,
2217 ULONG Index,
2218 LPWSTR *ppszSubKeyName);
2219
2220 HRESULT (STDMETHODCALLTYPE *EnumValues)(
2221 ISpDataKey *This,
2222 ULONG Index,
2223 LPWSTR *ppszValueName);
2224
2225 END_INTERFACE
2226} ISpDataKeyVtbl;
2227
2228interface ISpDataKey {
2229 CONST_VTBL ISpDataKeyVtbl* lpVtbl;
2230};
2231
2232#ifdef COBJMACROS
2233#ifndef WIDL_C_INLINE_WRAPPERS
2234/*** IUnknown methods ***/
2235#define ISpDataKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2236#define ISpDataKey_AddRef(This) (This)->lpVtbl->AddRef(This)
2237#define ISpDataKey_Release(This) (This)->lpVtbl->Release(This)
2238/*** ISpDataKey methods ***/
2239#define ISpDataKey_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
2240#define ISpDataKey_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
2241#define ISpDataKey_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
2242#define ISpDataKey_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
2243#define ISpDataKey_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
2244#define ISpDataKey_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
2245#define ISpDataKey_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
2246#define ISpDataKey_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
2247#define ISpDataKey_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
2248#define ISpDataKey_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
2249#define ISpDataKey_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
2250#define ISpDataKey_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
2251#else
2252/*** IUnknown methods ***/
2253static inline HRESULT ISpDataKey_QueryInterface(ISpDataKey* This,REFIID riid,void **ppvObject) {
2254 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2255}
2256static inline ULONG ISpDataKey_AddRef(ISpDataKey* This) {
2257 return This->lpVtbl->AddRef(This);
2258}
2259static inline ULONG ISpDataKey_Release(ISpDataKey* This) {
2260 return This->lpVtbl->Release(This);
2261}
2262/*** ISpDataKey methods ***/
2263static inline HRESULT ISpDataKey_SetData(ISpDataKey* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
2264 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
2265}
2266static inline HRESULT ISpDataKey_GetData(ISpDataKey* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
2267 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
2268}
2269static inline HRESULT ISpDataKey_SetStringValue(ISpDataKey* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
2270 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
2271}
2272static inline HRESULT ISpDataKey_GetStringValue(ISpDataKey* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
2273 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
2274}
2275static inline HRESULT ISpDataKey_SetDWORD(ISpDataKey* This,LPCWSTR pszValueName,DWORD dwValue) {
2276 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
2277}
2278static inline HRESULT ISpDataKey_GetDWORD(ISpDataKey* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2279 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2280}
2281static inline HRESULT ISpDataKey_OpenKey(ISpDataKey* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2282 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2283}
2284static inline HRESULT ISpDataKey_CreateKey(ISpDataKey* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2285 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2286}
2287static inline HRESULT ISpDataKey_DeleteKey(ISpDataKey* This,LPCWSTR pszSubKey) {
2288 return This->lpVtbl->DeleteKey(This,pszSubKey);
2289}
2290static inline HRESULT ISpDataKey_DeleteValue(ISpDataKey* This,LPCWSTR pszValueName) {
2291 return This->lpVtbl->DeleteValue(This,pszValueName);
2292}
2293static inline HRESULT ISpDataKey_EnumKeys(ISpDataKey* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2294 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2295}
2296static inline HRESULT ISpDataKey_EnumValues(ISpDataKey* This,ULONG Index,LPWSTR *ppszValueName) {
2297 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2298}
2299#endif
2300#endif
2301
2302#endif
2303
2304
2305#endif /* __ISpDataKey_INTERFACE_DEFINED__ */
2306
2307/*****************************************************************************
2308 * ISpObjectWithToken interface
2309 */
2310#ifndef __ISpObjectWithToken_INTERFACE_DEFINED__
2311#define __ISpObjectWithToken_INTERFACE_DEFINED__
2312
2313DEFINE_GUID(IID_ISpObjectWithToken, 0x5b559f40, 0xe952, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
2314#if defined(__cplusplus) && !defined(CINTERFACE)
2315MIDL_INTERFACE("5b559f40-e952-11d2-bb91-00c04f8ee6c0")
2316ISpObjectWithToken : public IUnknown
2317{
2318 virtual HRESULT STDMETHODCALLTYPE SetObjectToken(
2319 ISpObjectToken *pToken) = 0;
2320
2321 virtual HRESULT STDMETHODCALLTYPE GetObjectToken(
2322 ISpObjectToken **ppToken) = 0;
2323
2324};
2325#ifdef __CRT_UUID_DECL
2326__CRT_UUID_DECL(ISpObjectWithToken, 0x5b559f40, 0xe952, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
2327#endif
2328#else
2329typedef struct ISpObjectWithTokenVtbl {
2330 BEGIN_INTERFACE
2331
2332 /*** IUnknown methods ***/
2333 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2334 ISpObjectWithToken *This,
2335 REFIID riid,
2336 void **ppvObject);
2337
2338 ULONG (STDMETHODCALLTYPE *AddRef)(
2339 ISpObjectWithToken *This);
2340
2341 ULONG (STDMETHODCALLTYPE *Release)(
2342 ISpObjectWithToken *This);
2343
2344 /*** ISpObjectWithToken methods ***/
2345 HRESULT (STDMETHODCALLTYPE *SetObjectToken)(
2346 ISpObjectWithToken *This,
2347 ISpObjectToken *pToken);
2348
2349 HRESULT (STDMETHODCALLTYPE *GetObjectToken)(
2350 ISpObjectWithToken *This,
2351 ISpObjectToken **ppToken);
2352
2353 END_INTERFACE
2354} ISpObjectWithTokenVtbl;
2355
2356interface ISpObjectWithToken {
2357 CONST_VTBL ISpObjectWithTokenVtbl* lpVtbl;
2358};
2359
2360#ifdef COBJMACROS
2361#ifndef WIDL_C_INLINE_WRAPPERS
2362/*** IUnknown methods ***/
2363#define ISpObjectWithToken_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2364#define ISpObjectWithToken_AddRef(This) (This)->lpVtbl->AddRef(This)
2365#define ISpObjectWithToken_Release(This) (This)->lpVtbl->Release(This)
2366/*** ISpObjectWithToken methods ***/
2367#define ISpObjectWithToken_SetObjectToken(This,pToken) (This)->lpVtbl->SetObjectToken(This,pToken)
2368#define ISpObjectWithToken_GetObjectToken(This,ppToken) (This)->lpVtbl->GetObjectToken(This,ppToken)
2369#else
2370/*** IUnknown methods ***/
2371static inline HRESULT ISpObjectWithToken_QueryInterface(ISpObjectWithToken* This,REFIID riid,void **ppvObject) {
2372 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2373}
2374static inline ULONG ISpObjectWithToken_AddRef(ISpObjectWithToken* This) {
2375 return This->lpVtbl->AddRef(This);
2376}
2377static inline ULONG ISpObjectWithToken_Release(ISpObjectWithToken* This) {
2378 return This->lpVtbl->Release(This);
2379}
2380/*** ISpObjectWithToken methods ***/
2381static inline HRESULT ISpObjectWithToken_SetObjectToken(ISpObjectWithToken* This,ISpObjectToken *pToken) {
2382 return This->lpVtbl->SetObjectToken(This,pToken);
2383}
2384static inline HRESULT ISpObjectWithToken_GetObjectToken(ISpObjectWithToken* This,ISpObjectToken **ppToken) {
2385 return This->lpVtbl->GetObjectToken(This,ppToken);
2386}
2387#endif
2388#endif
2389
2390#endif
2391
2392
2393#endif /* __ISpObjectWithToken_INTERFACE_DEFINED__ */
2394
2395/*****************************************************************************
2396 * IEnumSpObjectTokens interface
2397 */
2398#ifndef __IEnumSpObjectTokens_INTERFACE_DEFINED__
2399#define __IEnumSpObjectTokens_INTERFACE_DEFINED__
2400
2401DEFINE_GUID(IID_IEnumSpObjectTokens, 0x06b64f9e, 0x7fda, 0x11d2, 0xb4,0xf2, 0x00,0xc0,0x4f,0x79,0x73,0x96);
2402#if defined(__cplusplus) && !defined(CINTERFACE)
2403MIDL_INTERFACE("06b64f9e-7fda-11d2-b4f2-00c04f797396")
2404IEnumSpObjectTokens : public IUnknown
2405{
2406 virtual HRESULT STDMETHODCALLTYPE Next(
2407 ULONG celt,
2408 ISpObjectToken **pelt,
2409 ULONG *pceltFetched) = 0;
2410
2411 virtual HRESULT STDMETHODCALLTYPE Skip(
2412 ULONG celt) = 0;
2413
2414 virtual HRESULT STDMETHODCALLTYPE Reset(
2415 ) = 0;
2416
2417 virtual HRESULT STDMETHODCALLTYPE Clone(
2418 IEnumSpObjectTokens **ppEnum) = 0;
2419
2420 virtual HRESULT STDMETHODCALLTYPE Item(
2421 ULONG Index,
2422 ISpObjectToken **ppToken) = 0;
2423
2424 virtual HRESULT STDMETHODCALLTYPE GetCount(
2425 ULONG *pCount) = 0;
2426
2427};
2428#ifdef __CRT_UUID_DECL
2429__CRT_UUID_DECL(IEnumSpObjectTokens, 0x06b64f9e, 0x7fda, 0x11d2, 0xb4,0xf2, 0x00,0xc0,0x4f,0x79,0x73,0x96)
2430#endif
2431#else
2432typedef struct IEnumSpObjectTokensVtbl {
2433 BEGIN_INTERFACE
2434
2435 /*** IUnknown methods ***/
2436 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2437 IEnumSpObjectTokens *This,
2438 REFIID riid,
2439 void **ppvObject);
2440
2441 ULONG (STDMETHODCALLTYPE *AddRef)(
2442 IEnumSpObjectTokens *This);
2443
2444 ULONG (STDMETHODCALLTYPE *Release)(
2445 IEnumSpObjectTokens *This);
2446
2447 /*** IEnumSpObjectTokens methods ***/
2448 HRESULT (STDMETHODCALLTYPE *Next)(
2449 IEnumSpObjectTokens *This,
2450 ULONG celt,
2451 ISpObjectToken **pelt,
2452 ULONG *pceltFetched);
2453
2454 HRESULT (STDMETHODCALLTYPE *Skip)(
2455 IEnumSpObjectTokens *This,
2456 ULONG celt);
2457
2458 HRESULT (STDMETHODCALLTYPE *Reset)(
2459 IEnumSpObjectTokens *This);
2460
2461 HRESULT (STDMETHODCALLTYPE *Clone)(
2462 IEnumSpObjectTokens *This,
2463 IEnumSpObjectTokens **ppEnum);
2464
2465 HRESULT (STDMETHODCALLTYPE *Item)(
2466 IEnumSpObjectTokens *This,
2467 ULONG Index,
2468 ISpObjectToken **ppToken);
2469
2470 HRESULT (STDMETHODCALLTYPE *GetCount)(
2471 IEnumSpObjectTokens *This,
2472 ULONG *pCount);
2473
2474 END_INTERFACE
2475} IEnumSpObjectTokensVtbl;
2476
2477interface IEnumSpObjectTokens {
2478 CONST_VTBL IEnumSpObjectTokensVtbl* lpVtbl;
2479};
2480
2481#ifdef COBJMACROS
2482#ifndef WIDL_C_INLINE_WRAPPERS
2483/*** IUnknown methods ***/
2484#define IEnumSpObjectTokens_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2485#define IEnumSpObjectTokens_AddRef(This) (This)->lpVtbl->AddRef(This)
2486#define IEnumSpObjectTokens_Release(This) (This)->lpVtbl->Release(This)
2487/*** IEnumSpObjectTokens methods ***/
2488#define IEnumSpObjectTokens_Next(This,celt,pelt,pceltFetched) (This)->lpVtbl->Next(This,celt,pelt,pceltFetched)
2489#define IEnumSpObjectTokens_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
2490#define IEnumSpObjectTokens_Reset(This) (This)->lpVtbl->Reset(This)
2491#define IEnumSpObjectTokens_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
2492#define IEnumSpObjectTokens_Item(This,Index,ppToken) (This)->lpVtbl->Item(This,Index,ppToken)
2493#define IEnumSpObjectTokens_GetCount(This,pCount) (This)->lpVtbl->GetCount(This,pCount)
2494#else
2495/*** IUnknown methods ***/
2496static inline HRESULT IEnumSpObjectTokens_QueryInterface(IEnumSpObjectTokens* This,REFIID riid,void **ppvObject) {
2497 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2498}
2499static inline ULONG IEnumSpObjectTokens_AddRef(IEnumSpObjectTokens* This) {
2500 return This->lpVtbl->AddRef(This);
2501}
2502static inline ULONG IEnumSpObjectTokens_Release(IEnumSpObjectTokens* This) {
2503 return This->lpVtbl->Release(This);
2504}
2505/*** IEnumSpObjectTokens methods ***/
2506static inline HRESULT IEnumSpObjectTokens_Next(IEnumSpObjectTokens* This,ULONG celt,ISpObjectToken **pelt,ULONG *pceltFetched) {
2507 return This->lpVtbl->Next(This,celt,pelt,pceltFetched);
2508}
2509static inline HRESULT IEnumSpObjectTokens_Skip(IEnumSpObjectTokens* This,ULONG celt) {
2510 return This->lpVtbl->Skip(This,celt);
2511}
2512static inline HRESULT IEnumSpObjectTokens_Reset(IEnumSpObjectTokens* This) {
2513 return This->lpVtbl->Reset(This);
2514}
2515static inline HRESULT IEnumSpObjectTokens_Clone(IEnumSpObjectTokens* This,IEnumSpObjectTokens **ppEnum) {
2516 return This->lpVtbl->Clone(This,ppEnum);
2517}
2518static inline HRESULT IEnumSpObjectTokens_Item(IEnumSpObjectTokens* This,ULONG Index,ISpObjectToken **ppToken) {
2519 return This->lpVtbl->Item(This,Index,ppToken);
2520}
2521static inline HRESULT IEnumSpObjectTokens_GetCount(IEnumSpObjectTokens* This,ULONG *pCount) {
2522 return This->lpVtbl->GetCount(This,pCount);
2523}
2524#endif
2525#endif
2526
2527#endif
2528
2529
2530#endif /* __IEnumSpObjectTokens_INTERFACE_DEFINED__ */
2531
2532/*****************************************************************************
2533 * ISpRegDataKey interface
2534 */
2535#ifndef __ISpRegDataKey_INTERFACE_DEFINED__
2536#define __ISpRegDataKey_INTERFACE_DEFINED__
2537
2538DEFINE_GUID(IID_ISpRegDataKey, 0x92a66e2b, 0xc830, 0x4149, 0x83,0xdf, 0x6f,0xc2,0xba,0x1e,0x7a,0x5b);
2539#if defined(__cplusplus) && !defined(CINTERFACE)
2540MIDL_INTERFACE("92a66e2b-c830-4149-83df-6fc2ba1e7a5b")
2541ISpRegDataKey : public ISpDataKey
2542{
2543 virtual HRESULT STDMETHODCALLTYPE SetKey(
2544 HKEY hkey,
2545 WINBOOL fReadOnly) = 0;
2546
2547};
2548#ifdef __CRT_UUID_DECL
2549__CRT_UUID_DECL(ISpRegDataKey, 0x92a66e2b, 0xc830, 0x4149, 0x83,0xdf, 0x6f,0xc2,0xba,0x1e,0x7a,0x5b)
2550#endif
2551#else
2552typedef struct ISpRegDataKeyVtbl {
2553 BEGIN_INTERFACE
2554
2555 /*** IUnknown methods ***/
2556 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2557 ISpRegDataKey *This,
2558 REFIID riid,
2559 void **ppvObject);
2560
2561 ULONG (STDMETHODCALLTYPE *AddRef)(
2562 ISpRegDataKey *This);
2563
2564 ULONG (STDMETHODCALLTYPE *Release)(
2565 ISpRegDataKey *This);
2566
2567 /*** ISpDataKey methods ***/
2568 HRESULT (STDMETHODCALLTYPE *SetData)(
2569 ISpRegDataKey *This,
2570 LPCWSTR pszValueName,
2571 ULONG cbData,
2572 const BYTE *pData);
2573
2574 HRESULT (STDMETHODCALLTYPE *GetData)(
2575 ISpRegDataKey *This,
2576 LPCWSTR pszValueName,
2577 ULONG *pcbData,
2578 BYTE *pData);
2579
2580 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
2581 ISpRegDataKey *This,
2582 LPCWSTR pszValueName,
2583 LPCWSTR pszValue);
2584
2585 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2586 ISpRegDataKey *This,
2587 LPCWSTR pszValueName,
2588 LPWSTR *ppszValue);
2589
2590 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
2591 ISpRegDataKey *This,
2592 LPCWSTR pszValueName,
2593 DWORD dwValue);
2594
2595 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
2596 ISpRegDataKey *This,
2597 LPCWSTR pszValueName,
2598 DWORD *pdwValue);
2599
2600 HRESULT (STDMETHODCALLTYPE *OpenKey)(
2601 ISpRegDataKey *This,
2602 LPCWSTR pszSubKeyName,
2603 ISpDataKey **ppSubKey);
2604
2605 HRESULT (STDMETHODCALLTYPE *CreateKey)(
2606 ISpRegDataKey *This,
2607 LPCWSTR pszSubKey,
2608 ISpDataKey **ppSubKey);
2609
2610 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
2611 ISpRegDataKey *This,
2612 LPCWSTR pszSubKey);
2613
2614 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
2615 ISpRegDataKey *This,
2616 LPCWSTR pszValueName);
2617
2618 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
2619 ISpRegDataKey *This,
2620 ULONG Index,
2621 LPWSTR *ppszSubKeyName);
2622
2623 HRESULT (STDMETHODCALLTYPE *EnumValues)(
2624 ISpRegDataKey *This,
2625 ULONG Index,
2626 LPWSTR *ppszValueName);
2627
2628 /*** ISpRegDataKey methods ***/
2629 HRESULT (STDMETHODCALLTYPE *SetKey)(
2630 ISpRegDataKey *This,
2631 HKEY hkey,
2632 WINBOOL fReadOnly);
2633
2634 END_INTERFACE
2635} ISpRegDataKeyVtbl;
2636
2637interface ISpRegDataKey {
2638 CONST_VTBL ISpRegDataKeyVtbl* lpVtbl;
2639};
2640
2641#ifdef COBJMACROS
2642#ifndef WIDL_C_INLINE_WRAPPERS
2643/*** IUnknown methods ***/
2644#define ISpRegDataKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2645#define ISpRegDataKey_AddRef(This) (This)->lpVtbl->AddRef(This)
2646#define ISpRegDataKey_Release(This) (This)->lpVtbl->Release(This)
2647/*** ISpDataKey methods ***/
2648#define ISpRegDataKey_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
2649#define ISpRegDataKey_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
2650#define ISpRegDataKey_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
2651#define ISpRegDataKey_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
2652#define ISpRegDataKey_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
2653#define ISpRegDataKey_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
2654#define ISpRegDataKey_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
2655#define ISpRegDataKey_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
2656#define ISpRegDataKey_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
2657#define ISpRegDataKey_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
2658#define ISpRegDataKey_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
2659#define ISpRegDataKey_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
2660/*** ISpRegDataKey methods ***/
2661#define ISpRegDataKey_SetKey(This,hkey,fReadOnly) (This)->lpVtbl->SetKey(This,hkey,fReadOnly)
2662#else
2663/*** IUnknown methods ***/
2664static inline HRESULT ISpRegDataKey_QueryInterface(ISpRegDataKey* This,REFIID riid,void **ppvObject) {
2665 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2666}
2667static inline ULONG ISpRegDataKey_AddRef(ISpRegDataKey* This) {
2668 return This->lpVtbl->AddRef(This);
2669}
2670static inline ULONG ISpRegDataKey_Release(ISpRegDataKey* This) {
2671 return This->lpVtbl->Release(This);
2672}
2673/*** ISpDataKey methods ***/
2674static inline HRESULT ISpRegDataKey_SetData(ISpRegDataKey* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
2675 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
2676}
2677static inline HRESULT ISpRegDataKey_GetData(ISpRegDataKey* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
2678 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
2679}
2680static inline HRESULT ISpRegDataKey_SetStringValue(ISpRegDataKey* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
2681 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
2682}
2683static inline HRESULT ISpRegDataKey_GetStringValue(ISpRegDataKey* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
2684 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
2685}
2686static inline HRESULT ISpRegDataKey_SetDWORD(ISpRegDataKey* This,LPCWSTR pszValueName,DWORD dwValue) {
2687 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
2688}
2689static inline HRESULT ISpRegDataKey_GetDWORD(ISpRegDataKey* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2690 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2691}
2692static inline HRESULT ISpRegDataKey_OpenKey(ISpRegDataKey* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2693 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2694}
2695static inline HRESULT ISpRegDataKey_CreateKey(ISpRegDataKey* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2696 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2697}
2698static inline HRESULT ISpRegDataKey_DeleteKey(ISpRegDataKey* This,LPCWSTR pszSubKey) {
2699 return This->lpVtbl->DeleteKey(This,pszSubKey);
2700}
2701static inline HRESULT ISpRegDataKey_DeleteValue(ISpRegDataKey* This,LPCWSTR pszValueName) {
2702 return This->lpVtbl->DeleteValue(This,pszValueName);
2703}
2704static inline HRESULT ISpRegDataKey_EnumKeys(ISpRegDataKey* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2705 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2706}
2707static inline HRESULT ISpRegDataKey_EnumValues(ISpRegDataKey* This,ULONG Index,LPWSTR *ppszValueName) {
2708 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2709}
2710/*** ISpRegDataKey methods ***/
2711static inline HRESULT ISpRegDataKey_SetKey(ISpRegDataKey* This,HKEY hkey,WINBOOL fReadOnly) {
2712 return This->lpVtbl->SetKey(This,hkey,fReadOnly);
2713}
2714#endif
2715#endif
2716
2717#endif
2718
2719
2720#endif /* __ISpRegDataKey_INTERFACE_DEFINED__ */
2721
2722/*****************************************************************************
2723 * ISpObjectTokenCategory interface
2724 */
2725#ifndef __ISpObjectTokenCategory_INTERFACE_DEFINED__
2726#define __ISpObjectTokenCategory_INTERFACE_DEFINED__
2727
2728DEFINE_GUID(IID_ISpObjectTokenCategory, 0x2d3d3845, 0x39af, 0x4850, 0xbb,0xf9, 0x40,0xb4,0x97,0x80,0x01,0x1d);
2729#if defined(__cplusplus) && !defined(CINTERFACE)
2730MIDL_INTERFACE("2d3d3845-39af-4850-bbf9-40b49780011d")
2731ISpObjectTokenCategory : public ISpDataKey
2732{
2733 virtual HRESULT STDMETHODCALLTYPE SetId(
2734 LPCWSTR pszCategoryId,
2735 WINBOOL fCreateIfNotExist) = 0;
2736
2737 virtual HRESULT STDMETHODCALLTYPE GetId(
2738 LPWSTR *ppszCoMemCategoryId) = 0;
2739
2740 virtual HRESULT STDMETHODCALLTYPE GetDataKey(
2741 SPDATAKEYLOCATION spdkl,
2742 ISpDataKey **ppDataKey) = 0;
2743
2744 virtual HRESULT STDMETHODCALLTYPE EnumTokens(
2745 LPCWSTR pzsReqAttribs,
2746 LPCWSTR pszOptAttribs,
2747 IEnumSpObjectTokens **ppEnum) = 0;
2748
2749 virtual HRESULT STDMETHODCALLTYPE SetDefaultTokenId(
2750 LPCWSTR pszTokenId) = 0;
2751
2752 virtual HRESULT STDMETHODCALLTYPE GetDefaultTokenId(
2753 LPWSTR *ppszCoMemTokenId) = 0;
2754
2755};
2756#ifdef __CRT_UUID_DECL
2757__CRT_UUID_DECL(ISpObjectTokenCategory, 0x2d3d3845, 0x39af, 0x4850, 0xbb,0xf9, 0x40,0xb4,0x97,0x80,0x01,0x1d)
2758#endif
2759#else
2760typedef struct ISpObjectTokenCategoryVtbl {
2761 BEGIN_INTERFACE
2762
2763 /*** IUnknown methods ***/
2764 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2765 ISpObjectTokenCategory *This,
2766 REFIID riid,
2767 void **ppvObject);
2768
2769 ULONG (STDMETHODCALLTYPE *AddRef)(
2770 ISpObjectTokenCategory *This);
2771
2772 ULONG (STDMETHODCALLTYPE *Release)(
2773 ISpObjectTokenCategory *This);
2774
2775 /*** ISpDataKey methods ***/
2776 HRESULT (STDMETHODCALLTYPE *SetData)(
2777 ISpObjectTokenCategory *This,
2778 LPCWSTR pszValueName,
2779 ULONG cbData,
2780 const BYTE *pData);
2781
2782 HRESULT (STDMETHODCALLTYPE *GetData)(
2783 ISpObjectTokenCategory *This,
2784 LPCWSTR pszValueName,
2785 ULONG *pcbData,
2786 BYTE *pData);
2787
2788 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
2789 ISpObjectTokenCategory *This,
2790 LPCWSTR pszValueName,
2791 LPCWSTR pszValue);
2792
2793 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2794 ISpObjectTokenCategory *This,
2795 LPCWSTR pszValueName,
2796 LPWSTR *ppszValue);
2797
2798 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
2799 ISpObjectTokenCategory *This,
2800 LPCWSTR pszValueName,
2801 DWORD dwValue);
2802
2803 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
2804 ISpObjectTokenCategory *This,
2805 LPCWSTR pszValueName,
2806 DWORD *pdwValue);
2807
2808 HRESULT (STDMETHODCALLTYPE *OpenKey)(
2809 ISpObjectTokenCategory *This,
2810 LPCWSTR pszSubKeyName,
2811 ISpDataKey **ppSubKey);
2812
2813 HRESULT (STDMETHODCALLTYPE *CreateKey)(
2814 ISpObjectTokenCategory *This,
2815 LPCWSTR pszSubKey,
2816 ISpDataKey **ppSubKey);
2817
2818 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
2819 ISpObjectTokenCategory *This,
2820 LPCWSTR pszSubKey);
2821
2822 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
2823 ISpObjectTokenCategory *This,
2824 LPCWSTR pszValueName);
2825
2826 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
2827 ISpObjectTokenCategory *This,
2828 ULONG Index,
2829 LPWSTR *ppszSubKeyName);
2830
2831 HRESULT (STDMETHODCALLTYPE *EnumValues)(
2832 ISpObjectTokenCategory *This,
2833 ULONG Index,
2834 LPWSTR *ppszValueName);
2835
2836 /*** ISpObjectTokenCategory methods ***/
2837 HRESULT (STDMETHODCALLTYPE *SetId)(
2838 ISpObjectTokenCategory *This,
2839 LPCWSTR pszCategoryId,
2840 WINBOOL fCreateIfNotExist);
2841
2842 HRESULT (STDMETHODCALLTYPE *GetId)(
2843 ISpObjectTokenCategory *This,
2844 LPWSTR *ppszCoMemCategoryId);
2845
2846 HRESULT (STDMETHODCALLTYPE *GetDataKey)(
2847 ISpObjectTokenCategory *This,
2848 SPDATAKEYLOCATION spdkl,
2849 ISpDataKey **ppDataKey);
2850
2851 HRESULT (STDMETHODCALLTYPE *EnumTokens)(
2852 ISpObjectTokenCategory *This,
2853 LPCWSTR pzsReqAttribs,
2854 LPCWSTR pszOptAttribs,
2855 IEnumSpObjectTokens **ppEnum);
2856
2857 HRESULT (STDMETHODCALLTYPE *SetDefaultTokenId)(
2858 ISpObjectTokenCategory *This,
2859 LPCWSTR pszTokenId);
2860
2861 HRESULT (STDMETHODCALLTYPE *GetDefaultTokenId)(
2862 ISpObjectTokenCategory *This,
2863 LPWSTR *ppszCoMemTokenId);
2864
2865 END_INTERFACE
2866} ISpObjectTokenCategoryVtbl;
2867
2868interface ISpObjectTokenCategory {
2869 CONST_VTBL ISpObjectTokenCategoryVtbl* lpVtbl;
2870};
2871
2872#ifdef COBJMACROS
2873#ifndef WIDL_C_INLINE_WRAPPERS
2874/*** IUnknown methods ***/
2875#define ISpObjectTokenCategory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2876#define ISpObjectTokenCategory_AddRef(This) (This)->lpVtbl->AddRef(This)
2877#define ISpObjectTokenCategory_Release(This) (This)->lpVtbl->Release(This)
2878/*** ISpDataKey methods ***/
2879#define ISpObjectTokenCategory_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
2880#define ISpObjectTokenCategory_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
2881#define ISpObjectTokenCategory_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
2882#define ISpObjectTokenCategory_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
2883#define ISpObjectTokenCategory_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
2884#define ISpObjectTokenCategory_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
2885#define ISpObjectTokenCategory_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
2886#define ISpObjectTokenCategory_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
2887#define ISpObjectTokenCategory_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
2888#define ISpObjectTokenCategory_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
2889#define ISpObjectTokenCategory_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
2890#define ISpObjectTokenCategory_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
2891/*** ISpObjectTokenCategory methods ***/
2892#define ISpObjectTokenCategory_SetId(This,pszCategoryId,fCreateIfNotExist) (This)->lpVtbl->SetId(This,pszCategoryId,fCreateIfNotExist)
2893#define ISpObjectTokenCategory_GetId(This,ppszCoMemCategoryId) (This)->lpVtbl->GetId(This,ppszCoMemCategoryId)
2894#define ISpObjectTokenCategory_GetDataKey(This,spdkl,ppDataKey) (This)->lpVtbl->GetDataKey(This,spdkl,ppDataKey)
2895#define ISpObjectTokenCategory_EnumTokens(This,pzsReqAttribs,pszOptAttribs,ppEnum) (This)->lpVtbl->EnumTokens(This,pzsReqAttribs,pszOptAttribs,ppEnum)
2896#define ISpObjectTokenCategory_SetDefaultTokenId(This,pszTokenId) (This)->lpVtbl->SetDefaultTokenId(This,pszTokenId)
2897#define ISpObjectTokenCategory_GetDefaultTokenId(This,ppszCoMemTokenId) (This)->lpVtbl->GetDefaultTokenId(This,ppszCoMemTokenId)
2898#else
2899/*** IUnknown methods ***/
2900static inline HRESULT ISpObjectTokenCategory_QueryInterface(ISpObjectTokenCategory* This,REFIID riid,void **ppvObject) {
2901 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2902}
2903static inline ULONG ISpObjectTokenCategory_AddRef(ISpObjectTokenCategory* This) {
2904 return This->lpVtbl->AddRef(This);
2905}
2906static inline ULONG ISpObjectTokenCategory_Release(ISpObjectTokenCategory* This) {
2907 return This->lpVtbl->Release(This);
2908}
2909/*** ISpDataKey methods ***/
2910static inline HRESULT ISpObjectTokenCategory_SetData(ISpObjectTokenCategory* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
2911 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
2912}
2913static inline HRESULT ISpObjectTokenCategory_GetData(ISpObjectTokenCategory* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
2914 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
2915}
2916static inline HRESULT ISpObjectTokenCategory_SetStringValue(ISpObjectTokenCategory* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
2917 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
2918}
2919static inline HRESULT ISpObjectTokenCategory_GetStringValue(ISpObjectTokenCategory* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
2920 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
2921}
2922static inline HRESULT ISpObjectTokenCategory_SetDWORD(ISpObjectTokenCategory* This,LPCWSTR pszValueName,DWORD dwValue) {
2923 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
2924}
2925static inline HRESULT ISpObjectTokenCategory_GetDWORD(ISpObjectTokenCategory* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2926 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2927}
2928static inline HRESULT ISpObjectTokenCategory_OpenKey(ISpObjectTokenCategory* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2929 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2930}
2931static inline HRESULT ISpObjectTokenCategory_CreateKey(ISpObjectTokenCategory* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2932 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2933}
2934static inline HRESULT ISpObjectTokenCategory_DeleteKey(ISpObjectTokenCategory* This,LPCWSTR pszSubKey) {
2935 return This->lpVtbl->DeleteKey(This,pszSubKey);
2936}
2937static inline HRESULT ISpObjectTokenCategory_DeleteValue(ISpObjectTokenCategory* This,LPCWSTR pszValueName) {
2938 return This->lpVtbl->DeleteValue(This,pszValueName);
2939}
2940static inline HRESULT ISpObjectTokenCategory_EnumKeys(ISpObjectTokenCategory* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2941 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2942}
2943static inline HRESULT ISpObjectTokenCategory_EnumValues(ISpObjectTokenCategory* This,ULONG Index,LPWSTR *ppszValueName) {
2944 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2945}
2946/*** ISpObjectTokenCategory methods ***/
2947static inline HRESULT ISpObjectTokenCategory_SetId(ISpObjectTokenCategory* This,LPCWSTR pszCategoryId,WINBOOL fCreateIfNotExist) {
2948 return This->lpVtbl->SetId(This,pszCategoryId,fCreateIfNotExist);
2949}
2950static inline HRESULT ISpObjectTokenCategory_GetId(ISpObjectTokenCategory* This,LPWSTR *ppszCoMemCategoryId) {
2951 return This->lpVtbl->GetId(This,ppszCoMemCategoryId);
2952}
2953static inline HRESULT ISpObjectTokenCategory_GetDataKey(ISpObjectTokenCategory* This,SPDATAKEYLOCATION spdkl,ISpDataKey **ppDataKey) {
2954 return This->lpVtbl->GetDataKey(This,spdkl,ppDataKey);
2955}
2956static inline HRESULT ISpObjectTokenCategory_EnumTokens(ISpObjectTokenCategory* This,LPCWSTR pzsReqAttribs,LPCWSTR pszOptAttribs,IEnumSpObjectTokens **ppEnum) {
2957 return This->lpVtbl->EnumTokens(This,pzsReqAttribs,pszOptAttribs,ppEnum);
2958}
2959static inline HRESULT ISpObjectTokenCategory_SetDefaultTokenId(ISpObjectTokenCategory* This,LPCWSTR pszTokenId) {
2960 return This->lpVtbl->SetDefaultTokenId(This,pszTokenId);
2961}
2962static inline HRESULT ISpObjectTokenCategory_GetDefaultTokenId(ISpObjectTokenCategory* This,LPWSTR *ppszCoMemTokenId) {
2963 return This->lpVtbl->GetDefaultTokenId(This,ppszCoMemTokenId);
2964}
2965#endif
2966#endif
2967
2968#endif
2969
2970
2971#endif /* __ISpObjectTokenCategory_INTERFACE_DEFINED__ */
2972
2973/*****************************************************************************
2974 * ISpObjectToken interface
2975 */
2976#ifndef __ISpObjectToken_INTERFACE_DEFINED__
2977#define __ISpObjectToken_INTERFACE_DEFINED__
2978
2979DEFINE_GUID(IID_ISpObjectToken, 0x14056589, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
2980#if defined(__cplusplus) && !defined(CINTERFACE)
2981MIDL_INTERFACE("14056589-e16c-11d2-bb90-00c04f8ee6c0")
2982ISpObjectToken : public ISpDataKey
2983{
2984 virtual HRESULT STDMETHODCALLTYPE SetId(
2985 LPCWSTR pszCategoryId,
2986 LPCWSTR pszTokenId,
2987 WINBOOL fCreateIfNotExist) = 0;
2988
2989 virtual HRESULT STDMETHODCALLTYPE GetId(
2990 LPWSTR *ppszCoMemTokenId) = 0;
2991
2992 virtual HRESULT STDMETHODCALLTYPE GetCategory(
2993 ISpObjectTokenCategory **ppTokenCategory) = 0;
2994
2995 virtual HRESULT STDMETHODCALLTYPE CreateInstance(
2996 IUnknown *pUnkOuter,
2997 DWORD dwClsContext,
2998 REFIID riid,
2999 void **ppvObject) = 0;
3000
3001 virtual HRESULT STDMETHODCALLTYPE GetStorageFileName(
3002 REFCLSID clsidCaller,
3003 LPCWSTR pszValueName,
3004 LPCWSTR pszFileNameSpecifier,
3005 ULONG nFolder,
3006 LPWSTR *ppszFilePath) = 0;
3007
3008 virtual HRESULT STDMETHODCALLTYPE RemoveStorageFileName(
3009 REFCLSID clsidCaller,
3010 LPCWSTR pszKeyName,
3011 WINBOOL fDeleteFile) = 0;
3012
3013 virtual HRESULT STDMETHODCALLTYPE Remove(
3014 const CLSID *pclsidCaller) = 0;
3015
3016 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
3017 LPCWSTR pszTypeOfUI,
3018 void *pvExtraData,
3019 ULONG cbExtraData,
3020 IUnknown *punkObject,
3021 WINBOOL *pfSupported) = 0;
3022
3023 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
3024 HWND hwndParent,
3025 LPCWSTR pszTitle,
3026 LPCWSTR pszTypeOfUI,
3027 void *pvExtraData,
3028 ULONG cbExtraData,
3029 IUnknown *punkObject) = 0;
3030
3031 virtual HRESULT STDMETHODCALLTYPE MatchesAttributes(
3032 LPCWSTR pszAttributes,
3033 WINBOOL *pfMatches) = 0;
3034
3035};
3036#ifdef __CRT_UUID_DECL
3037__CRT_UUID_DECL(ISpObjectToken, 0x14056589, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
3038#endif
3039#else
3040typedef struct ISpObjectTokenVtbl {
3041 BEGIN_INTERFACE
3042
3043 /*** IUnknown methods ***/
3044 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3045 ISpObjectToken *This,
3046 REFIID riid,
3047 void **ppvObject);
3048
3049 ULONG (STDMETHODCALLTYPE *AddRef)(
3050 ISpObjectToken *This);
3051
3052 ULONG (STDMETHODCALLTYPE *Release)(
3053 ISpObjectToken *This);
3054
3055 /*** ISpDataKey methods ***/
3056 HRESULT (STDMETHODCALLTYPE *SetData)(
3057 ISpObjectToken *This,
3058 LPCWSTR pszValueName,
3059 ULONG cbData,
3060 const BYTE *pData);
3061
3062 HRESULT (STDMETHODCALLTYPE *GetData)(
3063 ISpObjectToken *This,
3064 LPCWSTR pszValueName,
3065 ULONG *pcbData,
3066 BYTE *pData);
3067
3068 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
3069 ISpObjectToken *This,
3070 LPCWSTR pszValueName,
3071 LPCWSTR pszValue);
3072
3073 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
3074 ISpObjectToken *This,
3075 LPCWSTR pszValueName,
3076 LPWSTR *ppszValue);
3077
3078 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
3079 ISpObjectToken *This,
3080 LPCWSTR pszValueName,
3081 DWORD dwValue);
3082
3083 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
3084 ISpObjectToken *This,
3085 LPCWSTR pszValueName,
3086 DWORD *pdwValue);
3087
3088 HRESULT (STDMETHODCALLTYPE *OpenKey)(
3089 ISpObjectToken *This,
3090 LPCWSTR pszSubKeyName,
3091 ISpDataKey **ppSubKey);
3092
3093 HRESULT (STDMETHODCALLTYPE *CreateKey)(
3094 ISpObjectToken *This,
3095 LPCWSTR pszSubKey,
3096 ISpDataKey **ppSubKey);
3097
3098 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
3099 ISpObjectToken *This,
3100 LPCWSTR pszSubKey);
3101
3102 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
3103 ISpObjectToken *This,
3104 LPCWSTR pszValueName);
3105
3106 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
3107 ISpObjectToken *This,
3108 ULONG Index,
3109 LPWSTR *ppszSubKeyName);
3110
3111 HRESULT (STDMETHODCALLTYPE *EnumValues)(
3112 ISpObjectToken *This,
3113 ULONG Index,
3114 LPWSTR *ppszValueName);
3115
3116 /*** ISpObjectToken methods ***/
3117 HRESULT (STDMETHODCALLTYPE *SetId)(
3118 ISpObjectToken *This,
3119 LPCWSTR pszCategoryId,
3120 LPCWSTR pszTokenId,
3121 WINBOOL fCreateIfNotExist);
3122
3123 HRESULT (STDMETHODCALLTYPE *GetId)(
3124 ISpObjectToken *This,
3125 LPWSTR *ppszCoMemTokenId);
3126
3127 HRESULT (STDMETHODCALLTYPE *GetCategory)(
3128 ISpObjectToken *This,
3129 ISpObjectTokenCategory **ppTokenCategory);
3130
3131 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
3132 ISpObjectToken *This,
3133 IUnknown *pUnkOuter,
3134 DWORD dwClsContext,
3135 REFIID riid,
3136 void **ppvObject);
3137
3138 HRESULT (STDMETHODCALLTYPE *GetStorageFileName)(
3139 ISpObjectToken *This,
3140 REFCLSID clsidCaller,
3141 LPCWSTR pszValueName,
3142 LPCWSTR pszFileNameSpecifier,
3143 ULONG nFolder,
3144 LPWSTR *ppszFilePath);
3145
3146 HRESULT (STDMETHODCALLTYPE *RemoveStorageFileName)(
3147 ISpObjectToken *This,
3148 REFCLSID clsidCaller,
3149 LPCWSTR pszKeyName,
3150 WINBOOL fDeleteFile);
3151
3152 HRESULT (STDMETHODCALLTYPE *Remove)(
3153 ISpObjectToken *This,
3154 const CLSID *pclsidCaller);
3155
3156 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
3157 ISpObjectToken *This,
3158 LPCWSTR pszTypeOfUI,
3159 void *pvExtraData,
3160 ULONG cbExtraData,
3161 IUnknown *punkObject,
3162 WINBOOL *pfSupported);
3163
3164 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
3165 ISpObjectToken *This,
3166 HWND hwndParent,
3167 LPCWSTR pszTitle,
3168 LPCWSTR pszTypeOfUI,
3169 void *pvExtraData,
3170 ULONG cbExtraData,
3171 IUnknown *punkObject);
3172
3173 HRESULT (STDMETHODCALLTYPE *MatchesAttributes)(
3174 ISpObjectToken *This,
3175 LPCWSTR pszAttributes,
3176 WINBOOL *pfMatches);
3177
3178 END_INTERFACE
3179} ISpObjectTokenVtbl;
3180
3181interface ISpObjectToken {
3182 CONST_VTBL ISpObjectTokenVtbl* lpVtbl;
3183};
3184
3185#ifdef COBJMACROS
3186#ifndef WIDL_C_INLINE_WRAPPERS
3187/*** IUnknown methods ***/
3188#define ISpObjectToken_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3189#define ISpObjectToken_AddRef(This) (This)->lpVtbl->AddRef(This)
3190#define ISpObjectToken_Release(This) (This)->lpVtbl->Release(This)
3191/*** ISpDataKey methods ***/
3192#define ISpObjectToken_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
3193#define ISpObjectToken_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
3194#define ISpObjectToken_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
3195#define ISpObjectToken_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
3196#define ISpObjectToken_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
3197#define ISpObjectToken_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
3198#define ISpObjectToken_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
3199#define ISpObjectToken_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
3200#define ISpObjectToken_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
3201#define ISpObjectToken_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
3202#define ISpObjectToken_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
3203#define ISpObjectToken_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
3204/*** ISpObjectToken methods ***/
3205#define ISpObjectToken_SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist) (This)->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist)
3206#define ISpObjectToken_GetId(This,ppszCoMemTokenId) (This)->lpVtbl->GetId(This,ppszCoMemTokenId)
3207#define ISpObjectToken_GetCategory(This,ppTokenCategory) (This)->lpVtbl->GetCategory(This,ppTokenCategory)
3208#define ISpObjectToken_CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject)
3209#define ISpObjectToken_GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath) (This)->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath)
3210#define ISpObjectToken_RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile) (This)->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile)
3211#define ISpObjectToken_Remove(This,pclsidCaller) (This)->lpVtbl->Remove(This,pclsidCaller)
3212#define ISpObjectToken_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported)
3213#define ISpObjectToken_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject)
3214#define ISpObjectToken_MatchesAttributes(This,pszAttributes,pfMatches) (This)->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches)
3215#else
3216/*** IUnknown methods ***/
3217static inline HRESULT ISpObjectToken_QueryInterface(ISpObjectToken* This,REFIID riid,void **ppvObject) {
3218 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3219}
3220static inline ULONG ISpObjectToken_AddRef(ISpObjectToken* This) {
3221 return This->lpVtbl->AddRef(This);
3222}
3223static inline ULONG ISpObjectToken_Release(ISpObjectToken* This) {
3224 return This->lpVtbl->Release(This);
3225}
3226/*** ISpDataKey methods ***/
3227static inline HRESULT ISpObjectToken_SetData(ISpObjectToken* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
3228 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
3229}
3230static inline HRESULT ISpObjectToken_GetData(ISpObjectToken* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
3231 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
3232}
3233static inline HRESULT ISpObjectToken_SetStringValue(ISpObjectToken* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
3234 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
3235}
3236static inline HRESULT ISpObjectToken_GetStringValue(ISpObjectToken* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
3237 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
3238}
3239static inline HRESULT ISpObjectToken_SetDWORD(ISpObjectToken* This,LPCWSTR pszValueName,DWORD dwValue) {
3240 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
3241}
3242static inline HRESULT ISpObjectToken_GetDWORD(ISpObjectToken* This,LPCWSTR pszValueName,DWORD *pdwValue) {
3243 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
3244}
3245static inline HRESULT ISpObjectToken_OpenKey(ISpObjectToken* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
3246 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
3247}
3248static inline HRESULT ISpObjectToken_CreateKey(ISpObjectToken* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
3249 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
3250}
3251static inline HRESULT ISpObjectToken_DeleteKey(ISpObjectToken* This,LPCWSTR pszSubKey) {
3252 return This->lpVtbl->DeleteKey(This,pszSubKey);
3253}
3254static inline HRESULT ISpObjectToken_DeleteValue(ISpObjectToken* This,LPCWSTR pszValueName) {
3255 return This->lpVtbl->DeleteValue(This,pszValueName);
3256}
3257static inline HRESULT ISpObjectToken_EnumKeys(ISpObjectToken* This,ULONG Index,LPWSTR *ppszSubKeyName) {
3258 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
3259}
3260static inline HRESULT ISpObjectToken_EnumValues(ISpObjectToken* This,ULONG Index,LPWSTR *ppszValueName) {
3261 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
3262}
3263/*** ISpObjectToken methods ***/
3264static inline HRESULT ISpObjectToken_SetId(ISpObjectToken* This,LPCWSTR pszCategoryId,LPCWSTR pszTokenId,WINBOOL fCreateIfNotExist) {
3265 return This->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist);
3266}
3267static inline HRESULT ISpObjectToken_GetId(ISpObjectToken* This,LPWSTR *ppszCoMemTokenId) {
3268 return This->lpVtbl->GetId(This,ppszCoMemTokenId);
3269}
3270static inline HRESULT ISpObjectToken_GetCategory(ISpObjectToken* This,ISpObjectTokenCategory **ppTokenCategory) {
3271 return This->lpVtbl->GetCategory(This,ppTokenCategory);
3272}
3273static inline HRESULT ISpObjectToken_CreateInstance(ISpObjectToken* This,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,void **ppvObject) {
3274 return This->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject);
3275}
3276static inline HRESULT ISpObjectToken_GetStorageFileName(ISpObjectToken* This,REFCLSID clsidCaller,LPCWSTR pszValueName,LPCWSTR pszFileNameSpecifier,ULONG nFolder,LPWSTR *ppszFilePath) {
3277 return This->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath);
3278}
3279static inline HRESULT ISpObjectToken_RemoveStorageFileName(ISpObjectToken* This,REFCLSID clsidCaller,LPCWSTR pszKeyName,WINBOOL fDeleteFile) {
3280 return This->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile);
3281}
3282static inline HRESULT ISpObjectToken_Remove(ISpObjectToken* This,const CLSID *pclsidCaller) {
3283 return This->lpVtbl->Remove(This,pclsidCaller);
3284}
3285static inline HRESULT ISpObjectToken_IsUISupported(ISpObjectToken* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject,WINBOOL *pfSupported) {
3286 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported);
3287}
3288static inline HRESULT ISpObjectToken_DisplayUI(ISpObjectToken* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject) {
3289 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject);
3290}
3291static inline HRESULT ISpObjectToken_MatchesAttributes(ISpObjectToken* This,LPCWSTR pszAttributes,WINBOOL *pfMatches) {
3292 return This->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches);
3293}
3294#endif
3295#endif
3296
3297#endif
3298
3299
3300#endif /* __ISpObjectToken_INTERFACE_DEFINED__ */
3301
3302/*****************************************************************************
3303 * ISpObjectTokenInit interface
3304 */
3305#ifndef __ISpObjectTokenInit_INTERFACE_DEFINED__
3306#define __ISpObjectTokenInit_INTERFACE_DEFINED__
3307
3308DEFINE_GUID(IID_ISpObjectTokenInit, 0xb8aab0cf, 0x346f, 0x49d8, 0x94,0x99, 0xc8,0xb0,0x3f,0x16,0x1d,0x51);
3309#if defined(__cplusplus) && !defined(CINTERFACE)
3310MIDL_INTERFACE("b8aab0cf-346f-49d8-9499-c8b03f161d51")
3311ISpObjectTokenInit : public ISpObjectToken
3312{
3313 virtual HRESULT STDMETHODCALLTYPE InitFromDataKey(
3314 LPCWSTR pszCategoryId,
3315 LPCWSTR pszTokenId,
3316 ISpDataKey *pDataKey) = 0;
3317
3318};
3319#ifdef __CRT_UUID_DECL
3320__CRT_UUID_DECL(ISpObjectTokenInit, 0xb8aab0cf, 0x346f, 0x49d8, 0x94,0x99, 0xc8,0xb0,0x3f,0x16,0x1d,0x51)
3321#endif
3322#else
3323typedef struct ISpObjectTokenInitVtbl {
3324 BEGIN_INTERFACE
3325
3326 /*** IUnknown methods ***/
3327 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3328 ISpObjectTokenInit *This,
3329 REFIID riid,
3330 void **ppvObject);
3331
3332 ULONG (STDMETHODCALLTYPE *AddRef)(
3333 ISpObjectTokenInit *This);
3334
3335 ULONG (STDMETHODCALLTYPE *Release)(
3336 ISpObjectTokenInit *This);
3337
3338 /*** ISpDataKey methods ***/
3339 HRESULT (STDMETHODCALLTYPE *SetData)(
3340 ISpObjectTokenInit *This,
3341 LPCWSTR pszValueName,
3342 ULONG cbData,
3343 const BYTE *pData);
3344
3345 HRESULT (STDMETHODCALLTYPE *GetData)(
3346 ISpObjectTokenInit *This,
3347 LPCWSTR pszValueName,
3348 ULONG *pcbData,
3349 BYTE *pData);
3350
3351 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
3352 ISpObjectTokenInit *This,
3353 LPCWSTR pszValueName,
3354 LPCWSTR pszValue);
3355
3356 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
3357 ISpObjectTokenInit *This,
3358 LPCWSTR pszValueName,
3359 LPWSTR *ppszValue);
3360
3361 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
3362 ISpObjectTokenInit *This,
3363 LPCWSTR pszValueName,
3364 DWORD dwValue);
3365
3366 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
3367 ISpObjectTokenInit *This,
3368 LPCWSTR pszValueName,
3369 DWORD *pdwValue);
3370
3371 HRESULT (STDMETHODCALLTYPE *OpenKey)(
3372 ISpObjectTokenInit *This,
3373 LPCWSTR pszSubKeyName,
3374 ISpDataKey **ppSubKey);
3375
3376 HRESULT (STDMETHODCALLTYPE *CreateKey)(
3377 ISpObjectTokenInit *This,
3378 LPCWSTR pszSubKey,
3379 ISpDataKey **ppSubKey);
3380
3381 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
3382 ISpObjectTokenInit *This,
3383 LPCWSTR pszSubKey);
3384
3385 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
3386 ISpObjectTokenInit *This,
3387 LPCWSTR pszValueName);
3388
3389 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
3390 ISpObjectTokenInit *This,
3391 ULONG Index,
3392 LPWSTR *ppszSubKeyName);
3393
3394 HRESULT (STDMETHODCALLTYPE *EnumValues)(
3395 ISpObjectTokenInit *This,
3396 ULONG Index,
3397 LPWSTR *ppszValueName);
3398
3399 /*** ISpObjectToken methods ***/
3400 HRESULT (STDMETHODCALLTYPE *SetId)(
3401 ISpObjectTokenInit *This,
3402 LPCWSTR pszCategoryId,
3403 LPCWSTR pszTokenId,
3404 WINBOOL fCreateIfNotExist);
3405
3406 HRESULT (STDMETHODCALLTYPE *GetId)(
3407 ISpObjectTokenInit *This,
3408 LPWSTR *ppszCoMemTokenId);
3409
3410 HRESULT (STDMETHODCALLTYPE *GetCategory)(
3411 ISpObjectTokenInit *This,
3412 ISpObjectTokenCategory **ppTokenCategory);
3413
3414 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
3415 ISpObjectTokenInit *This,
3416 IUnknown *pUnkOuter,
3417 DWORD dwClsContext,
3418 REFIID riid,
3419 void **ppvObject);
3420
3421 HRESULT (STDMETHODCALLTYPE *GetStorageFileName)(
3422 ISpObjectTokenInit *This,
3423 REFCLSID clsidCaller,
3424 LPCWSTR pszValueName,
3425 LPCWSTR pszFileNameSpecifier,
3426 ULONG nFolder,
3427 LPWSTR *ppszFilePath);
3428
3429 HRESULT (STDMETHODCALLTYPE *RemoveStorageFileName)(
3430 ISpObjectTokenInit *This,
3431 REFCLSID clsidCaller,
3432 LPCWSTR pszKeyName,
3433 WINBOOL fDeleteFile);
3434
3435 HRESULT (STDMETHODCALLTYPE *Remove)(
3436 ISpObjectTokenInit *This,
3437 const CLSID *pclsidCaller);
3438
3439 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
3440 ISpObjectTokenInit *This,
3441 LPCWSTR pszTypeOfUI,
3442 void *pvExtraData,
3443 ULONG cbExtraData,
3444 IUnknown *punkObject,
3445 WINBOOL *pfSupported);
3446
3447 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
3448 ISpObjectTokenInit *This,
3449 HWND hwndParent,
3450 LPCWSTR pszTitle,
3451 LPCWSTR pszTypeOfUI,
3452 void *pvExtraData,
3453 ULONG cbExtraData,
3454 IUnknown *punkObject);
3455
3456 HRESULT (STDMETHODCALLTYPE *MatchesAttributes)(
3457 ISpObjectTokenInit *This,
3458 LPCWSTR pszAttributes,
3459 WINBOOL *pfMatches);
3460
3461 /*** ISpObjectTokenInit methods ***/
3462 HRESULT (STDMETHODCALLTYPE *InitFromDataKey)(
3463 ISpObjectTokenInit *This,
3464 LPCWSTR pszCategoryId,
3465 LPCWSTR pszTokenId,
3466 ISpDataKey *pDataKey);
3467
3468 END_INTERFACE
3469} ISpObjectTokenInitVtbl;
3470
3471interface ISpObjectTokenInit {
3472 CONST_VTBL ISpObjectTokenInitVtbl* lpVtbl;
3473};
3474
3475#ifdef COBJMACROS
3476#ifndef WIDL_C_INLINE_WRAPPERS
3477/*** IUnknown methods ***/
3478#define ISpObjectTokenInit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3479#define ISpObjectTokenInit_AddRef(This) (This)->lpVtbl->AddRef(This)
3480#define ISpObjectTokenInit_Release(This) (This)->lpVtbl->Release(This)
3481/*** ISpDataKey methods ***/
3482#define ISpObjectTokenInit_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
3483#define ISpObjectTokenInit_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
3484#define ISpObjectTokenInit_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
3485#define ISpObjectTokenInit_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
3486#define ISpObjectTokenInit_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
3487#define ISpObjectTokenInit_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
3488#define ISpObjectTokenInit_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
3489#define ISpObjectTokenInit_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
3490#define ISpObjectTokenInit_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
3491#define ISpObjectTokenInit_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
3492#define ISpObjectTokenInit_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
3493#define ISpObjectTokenInit_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
3494/*** ISpObjectToken methods ***/
3495#define ISpObjectTokenInit_SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist) (This)->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist)
3496#define ISpObjectTokenInit_GetId(This,ppszCoMemTokenId) (This)->lpVtbl->GetId(This,ppszCoMemTokenId)
3497#define ISpObjectTokenInit_GetCategory(This,ppTokenCategory) (This)->lpVtbl->GetCategory(This,ppTokenCategory)
3498#define ISpObjectTokenInit_CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject)
3499#define ISpObjectTokenInit_GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath) (This)->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath)
3500#define ISpObjectTokenInit_RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile) (This)->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile)
3501#define ISpObjectTokenInit_Remove(This,pclsidCaller) (This)->lpVtbl->Remove(This,pclsidCaller)
3502#define ISpObjectTokenInit_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported)
3503#define ISpObjectTokenInit_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject)
3504#define ISpObjectTokenInit_MatchesAttributes(This,pszAttributes,pfMatches) (This)->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches)
3505/*** ISpObjectTokenInit methods ***/
3506#define ISpObjectTokenInit_InitFromDataKey(This,pszCategoryId,pszTokenId,pDataKey) (This)->lpVtbl->InitFromDataKey(This,pszCategoryId,pszTokenId,pDataKey)
3507#else
3508/*** IUnknown methods ***/
3509static inline HRESULT ISpObjectTokenInit_QueryInterface(ISpObjectTokenInit* This,REFIID riid,void **ppvObject) {
3510 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3511}
3512static inline ULONG ISpObjectTokenInit_AddRef(ISpObjectTokenInit* This) {
3513 return This->lpVtbl->AddRef(This);
3514}
3515static inline ULONG ISpObjectTokenInit_Release(ISpObjectTokenInit* This) {
3516 return This->lpVtbl->Release(This);
3517}
3518/*** ISpDataKey methods ***/
3519static inline HRESULT ISpObjectTokenInit_SetData(ISpObjectTokenInit* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
3520 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
3521}
3522static inline HRESULT ISpObjectTokenInit_GetData(ISpObjectTokenInit* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
3523 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
3524}
3525static inline HRESULT ISpObjectTokenInit_SetStringValue(ISpObjectTokenInit* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
3526 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
3527}
3528static inline HRESULT ISpObjectTokenInit_GetStringValue(ISpObjectTokenInit* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
3529 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
3530}
3531static inline HRESULT ISpObjectTokenInit_SetDWORD(ISpObjectTokenInit* This,LPCWSTR pszValueName,DWORD dwValue) {
3532 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
3533}
3534static inline HRESULT ISpObjectTokenInit_GetDWORD(ISpObjectTokenInit* This,LPCWSTR pszValueName,DWORD *pdwValue) {
3535 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
3536}
3537static inline HRESULT ISpObjectTokenInit_OpenKey(ISpObjectTokenInit* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
3538 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
3539}
3540static inline HRESULT ISpObjectTokenInit_CreateKey(ISpObjectTokenInit* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
3541 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
3542}
3543static inline HRESULT ISpObjectTokenInit_DeleteKey(ISpObjectTokenInit* This,LPCWSTR pszSubKey) {
3544 return This->lpVtbl->DeleteKey(This,pszSubKey);
3545}
3546static inline HRESULT ISpObjectTokenInit_DeleteValue(ISpObjectTokenInit* This,LPCWSTR pszValueName) {
3547 return This->lpVtbl->DeleteValue(This,pszValueName);
3548}
3549static inline HRESULT ISpObjectTokenInit_EnumKeys(ISpObjectTokenInit* This,ULONG Index,LPWSTR *ppszSubKeyName) {
3550 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
3551}
3552static inline HRESULT ISpObjectTokenInit_EnumValues(ISpObjectTokenInit* This,ULONG Index,LPWSTR *ppszValueName) {
3553 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
3554}
3555/*** ISpObjectToken methods ***/
3556static inline HRESULT ISpObjectTokenInit_SetId(ISpObjectTokenInit* This,LPCWSTR pszCategoryId,LPCWSTR pszTokenId,WINBOOL fCreateIfNotExist) {
3557 return This->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist);
3558}
3559static inline HRESULT ISpObjectTokenInit_GetId(ISpObjectTokenInit* This,LPWSTR *ppszCoMemTokenId) {
3560 return This->lpVtbl->GetId(This,ppszCoMemTokenId);
3561}
3562static inline HRESULT ISpObjectTokenInit_GetCategory(ISpObjectTokenInit* This,ISpObjectTokenCategory **ppTokenCategory) {
3563 return This->lpVtbl->GetCategory(This,ppTokenCategory);
3564}
3565static inline HRESULT ISpObjectTokenInit_CreateInstance(ISpObjectTokenInit* This,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,void **ppvObject) {
3566 return This->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject);
3567}
3568static inline HRESULT ISpObjectTokenInit_GetStorageFileName(ISpObjectTokenInit* This,REFCLSID clsidCaller,LPCWSTR pszValueName,LPCWSTR pszFileNameSpecifier,ULONG nFolder,LPWSTR *ppszFilePath) {
3569 return This->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath);
3570}
3571static inline HRESULT ISpObjectTokenInit_RemoveStorageFileName(ISpObjectTokenInit* This,REFCLSID clsidCaller,LPCWSTR pszKeyName,WINBOOL fDeleteFile) {
3572 return This->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile);
3573}
3574static inline HRESULT ISpObjectTokenInit_Remove(ISpObjectTokenInit* This,const CLSID *pclsidCaller) {
3575 return This->lpVtbl->Remove(This,pclsidCaller);
3576}
3577static inline HRESULT ISpObjectTokenInit_IsUISupported(ISpObjectTokenInit* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject,WINBOOL *pfSupported) {
3578 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported);
3579}
3580static inline HRESULT ISpObjectTokenInit_DisplayUI(ISpObjectTokenInit* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject) {
3581 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject);
3582}
3583static inline HRESULT ISpObjectTokenInit_MatchesAttributes(ISpObjectTokenInit* This,LPCWSTR pszAttributes,WINBOOL *pfMatches) {
3584 return This->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches);
3585}
3586/*** ISpObjectTokenInit methods ***/
3587static inline HRESULT ISpObjectTokenInit_InitFromDataKey(ISpObjectTokenInit* This,LPCWSTR pszCategoryId,LPCWSTR pszTokenId,ISpDataKey *pDataKey) {
3588 return This->lpVtbl->InitFromDataKey(This,pszCategoryId,pszTokenId,pDataKey);
3589}
3590#endif
3591#endif
3592
3593#endif
3594
3595
3596#endif /* __ISpObjectTokenInit_INTERFACE_DEFINED__ */
3597
3598/*****************************************************************************
3599 * ISpResourceManager interface
3600 */
3601#ifndef __ISpResourceManager_INTERFACE_DEFINED__
3602#define __ISpResourceManager_INTERFACE_DEFINED__
3603
3604DEFINE_GUID(IID_ISpResourceManager, 0x93384e18, 0x5014, 0x43d5, 0xad,0xbb, 0xa7,0x8e,0x05,0x59,0x26,0xbd);
3605#if defined(__cplusplus) && !defined(CINTERFACE)
3606MIDL_INTERFACE("93384e18-5014-43d5-adbb-a78e055926bd")
3607ISpResourceManager : public IServiceProvider
3608{
3609 virtual HRESULT STDMETHODCALLTYPE SetObject(
3610 REFGUID guidServiceId,
3611 IUnknown *pUnkObject) = 0;
3612
3613 virtual HRESULT STDMETHODCALLTYPE GetObject(
3614 REFGUID guidServiceId,
3615 REFCLSID ObjectCLSID,
3616 REFIID ObjectIID,
3617 WINBOOL fReleaseWhenLastExternalRefReleased,
3618 void **ppObject) = 0;
3619
3620};
3621#ifdef __CRT_UUID_DECL
3622__CRT_UUID_DECL(ISpResourceManager, 0x93384e18, 0x5014, 0x43d5, 0xad,0xbb, 0xa7,0x8e,0x05,0x59,0x26,0xbd)
3623#endif
3624#else
3625typedef struct ISpResourceManagerVtbl {
3626 BEGIN_INTERFACE
3627
3628 /*** IUnknown methods ***/
3629 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3630 ISpResourceManager *This,
3631 REFIID riid,
3632 void **ppvObject);
3633
3634 ULONG (STDMETHODCALLTYPE *AddRef)(
3635 ISpResourceManager *This);
3636
3637 ULONG (STDMETHODCALLTYPE *Release)(
3638 ISpResourceManager *This);
3639
3640 /*** IServiceProvider methods ***/
3641 HRESULT (STDMETHODCALLTYPE *QueryService)(
3642 ISpResourceManager *This,
3643 REFGUID guidService,
3644 REFIID riid,
3645 void **ppvObject);
3646
3647 /*** ISpResourceManager methods ***/
3648 HRESULT (STDMETHODCALLTYPE *SetObject)(
3649 ISpResourceManager *This,
3650 REFGUID guidServiceId,
3651 IUnknown *pUnkObject);
3652
3653 HRESULT (STDMETHODCALLTYPE *GetObject)(
3654 ISpResourceManager *This,
3655 REFGUID guidServiceId,
3656 REFCLSID ObjectCLSID,
3657 REFIID ObjectIID,
3658 WINBOOL fReleaseWhenLastExternalRefReleased,
3659 void **ppObject);
3660
3661 END_INTERFACE
3662} ISpResourceManagerVtbl;
3663
3664interface ISpResourceManager {
3665 CONST_VTBL ISpResourceManagerVtbl* lpVtbl;
3666};
3667
3668#ifdef COBJMACROS
3669#ifndef WIDL_C_INLINE_WRAPPERS
3670/*** IUnknown methods ***/
3671#define ISpResourceManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3672#define ISpResourceManager_AddRef(This) (This)->lpVtbl->AddRef(This)
3673#define ISpResourceManager_Release(This) (This)->lpVtbl->Release(This)
3674/*** IServiceProvider methods ***/
3675#define ISpResourceManager_QueryService(This,guidService,riid,ppvObject) (This)->lpVtbl->QueryService(This,guidService,riid,ppvObject)
3676/*** ISpResourceManager methods ***/
3677#define ISpResourceManager_SetObject(This,guidServiceId,pUnkObject) (This)->lpVtbl->SetObject(This,guidServiceId,pUnkObject)
3678#define ISpResourceManager_GetObject(This,guidServiceId,ObjectCLSID,ObjectIID,fReleaseWhenLastExternalRefReleased,ppObject) (This)->lpVtbl->GetObject(This,guidServiceId,ObjectCLSID,ObjectIID,fReleaseWhenLastExternalRefReleased,ppObject)
3679#else
3680/*** IUnknown methods ***/
3681static inline HRESULT ISpResourceManager_QueryInterface(ISpResourceManager* This,REFIID riid,void **ppvObject) {
3682 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3683}
3684static inline ULONG ISpResourceManager_AddRef(ISpResourceManager* This) {
3685 return This->lpVtbl->AddRef(This);
3686}
3687static inline ULONG ISpResourceManager_Release(ISpResourceManager* This) {
3688 return This->lpVtbl->Release(This);
3689}
3690/*** IServiceProvider methods ***/
3691static inline HRESULT ISpResourceManager_QueryService(ISpResourceManager* This,REFGUID guidService,REFIID riid,void **ppvObject) {
3692 return This->lpVtbl->QueryService(This,guidService,riid,ppvObject);
3693}
3694/*** ISpResourceManager methods ***/
3695static inline HRESULT ISpResourceManager_SetObject(ISpResourceManager* This,REFGUID guidServiceId,IUnknown *pUnkObject) {
3696 return This->lpVtbl->SetObject(This,guidServiceId,pUnkObject);
3697}
3698static inline HRESULT ISpResourceManager_GetObject(ISpResourceManager* This,REFGUID guidServiceId,REFCLSID ObjectCLSID,REFIID ObjectIID,WINBOOL fReleaseWhenLastExternalRefReleased,void **ppObject) {
3699 return This->lpVtbl->GetObject(This,guidServiceId,ObjectCLSID,ObjectIID,fReleaseWhenLastExternalRefReleased,ppObject);
3700}
3701#endif
3702#endif
3703
3704#endif
3705
3706
3707#endif /* __ISpResourceManager_INTERFACE_DEFINED__ */
3708
3709#if 0
3710typedef struct SPEVENT {
3711 WORD eEventId;
3712 WORD elParamType;
3713 ULONG ulStreamNum;
3714 ULONGLONG ullAudioStreamOffset;
3715 WPARAM wParam;
3716 LPARAM lParam;
3717} SPEVENT;
3718typedef struct SPSERIALIZEDEVENT {
3719 WORD eEventId;
3720 WORD elParamType;
3721 ULONG ulStreamNum;
3722 ULONGLONG ullAudioStreamOffset;
3723 ULONG SerializedwParam;
3724 LONG SerializedlParam;
3725} SPSERIALIZEDEVENT;
3726typedef struct SPSERIALIZEDEVENT64 {
3727 WORD eEventId;
3728 WORD elParamType;
3729 ULONG ulStreamNum;
3730 ULONGLONG ullAudioStreamOffset;
3731 ULONGLONG SerializedwParam;
3732 LONGLONG SerializedlParam;
3733} SPSERIALIZEDEVENT64;
3734#else
3735typedef struct SPEVENT {
3736 SPEVENTENUM eEventId : 16;
3737 SPEVENTLPARAMTYPE elParamType : 16;
3738 ULONG ulStreamNum;
3739 ULONGLONG ullAudioStreamOffset;
3740 WPARAM wParam;
3741 LPARAM lParam;
3742} SPEVENT;
3743
3744typedef struct SPSERIALIZEDEVENT {
3745 SPEVENTENUM eEventId : 16;
3746 SPEVENTLPARAMTYPE elParamType : 16;
3747 ULONG ulStreamNum;
3748 ULONGLONG ullAudioStreamOffset;
3749 ULONG SerializedwParam;
3750 LONG SerializedlParam;
3751} SPSERIALIZEDEVENT;
3752
3753typedef struct SPSERIALIZEDEVENT64 {
3754 SPEVENTENUM eEventId : 16;
3755 SPEVENTLPARAMTYPE elParamType : 16;
3756 ULONG ulStreamNum;
3757 ULONGLONG ullAudioStreamOffset;
3758 ULONGLONG SerializedwParam;
3759 LONGLONG SerializedlParam;
3760} SPSERIALIZEDEVENT64;
3761#endif
3762#if 0
3763typedef struct SPEVENTEX {
3764 WORD eEventId;
3765 WORD elParamType;
3766 ULONG ulStreamNum;
3767 ULONGLONG ullAudioStreamOffset;
3768 WPARAM wParam;
3769 LPARAM lParam;
3770 ULONGLONG ullAudioTimeOffset;
3771} SPEVENTEX;
3772#else
3773typedef struct SPEVENTEX {
3774 SPEVENTENUM eEventId : 16;
3775 SPEVENTLPARAMTYPE elParamType : 16;
3776 ULONG ulStreamNum;
3777 ULONGLONG ullAudioStreamOffset;
3778 WPARAM wParam;
3779 LPARAM lParam;
3780 ULONGLONG ullAudioTimeOffset;
3781} SPEVENTEX;
3782#endif
3783typedef struct SPEVENTSOURCEINFO {
3784 ULONGLONG ullEventInterest;
3785 ULONGLONG ullQueuedInterest;
3786 ULONG ulCount;
3787} SPEVENTSOURCEINFO;
3788/*****************************************************************************
3789 * ISpEventSource interface
3790 */
3791#ifndef __ISpEventSource_INTERFACE_DEFINED__
3792#define __ISpEventSource_INTERFACE_DEFINED__
3793
3794DEFINE_GUID(IID_ISpEventSource, 0xbe7a9cce, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
3795#if defined(__cplusplus) && !defined(CINTERFACE)
3796MIDL_INTERFACE("be7a9cce-5f9e-11d2-960f-00c04f8ee628")
3797ISpEventSource : public ISpNotifySource
3798{
3799 virtual HRESULT STDMETHODCALLTYPE SetInterest(
3800 ULONGLONG ullEventInterest,
3801 ULONGLONG ullQueuedInterest) = 0;
3802
3803 virtual HRESULT STDMETHODCALLTYPE GetEvents(
3804 ULONG ulCount,
3805 SPEVENT *pEventArray,
3806 ULONG *pulFetched) = 0;
3807
3808 virtual HRESULT STDMETHODCALLTYPE GetInfo(
3809 SPEVENTSOURCEINFO *pInfo) = 0;
3810
3811};
3812#ifdef __CRT_UUID_DECL
3813__CRT_UUID_DECL(ISpEventSource, 0xbe7a9cce, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
3814#endif
3815#else
3816typedef struct ISpEventSourceVtbl {
3817 BEGIN_INTERFACE
3818
3819 /*** IUnknown methods ***/
3820 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3821 ISpEventSource *This,
3822 REFIID riid,
3823 void **ppvObject);
3824
3825 ULONG (STDMETHODCALLTYPE *AddRef)(
3826 ISpEventSource *This);
3827
3828 ULONG (STDMETHODCALLTYPE *Release)(
3829 ISpEventSource *This);
3830
3831 /*** ISpNotifySource methods ***/
3832 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
3833 ISpEventSource *This,
3834 ISpNotifySink *pNotifySink);
3835
3836 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
3837 ISpEventSource *This,
3838 HWND hWnd,
3839 UINT Msg,
3840 WPARAM wParam,
3841 LPARAM lParam);
3842
3843 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
3844 ISpEventSource *This,
3845 SPNOTIFYCALLBACK *pfnCallback,
3846 WPARAM wParam,
3847 LPARAM lParam);
3848
3849 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
3850 ISpEventSource *This,
3851 ISpNotifyCallback *pSpCallback,
3852 WPARAM wParam,
3853 LPARAM lParam);
3854
3855 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
3856 ISpEventSource *This);
3857
3858 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
3859 ISpEventSource *This,
3860 DWORD dwMilliseconds);
3861
3862 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
3863 ISpEventSource *This);
3864
3865 /*** ISpEventSource methods ***/
3866 HRESULT (STDMETHODCALLTYPE *SetInterest)(
3867 ISpEventSource *This,
3868 ULONGLONG ullEventInterest,
3869 ULONGLONG ullQueuedInterest);
3870
3871 HRESULT (STDMETHODCALLTYPE *GetEvents)(
3872 ISpEventSource *This,
3873 ULONG ulCount,
3874 SPEVENT *pEventArray,
3875 ULONG *pulFetched);
3876
3877 HRESULT (STDMETHODCALLTYPE *GetInfo)(
3878 ISpEventSource *This,
3879 SPEVENTSOURCEINFO *pInfo);
3880
3881 END_INTERFACE
3882} ISpEventSourceVtbl;
3883
3884interface ISpEventSource {
3885 CONST_VTBL ISpEventSourceVtbl* lpVtbl;
3886};
3887
3888#ifdef COBJMACROS
3889#ifndef WIDL_C_INLINE_WRAPPERS
3890/*** IUnknown methods ***/
3891#define ISpEventSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3892#define ISpEventSource_AddRef(This) (This)->lpVtbl->AddRef(This)
3893#define ISpEventSource_Release(This) (This)->lpVtbl->Release(This)
3894/*** ISpNotifySource methods ***/
3895#define ISpEventSource_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
3896#define ISpEventSource_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
3897#define ISpEventSource_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
3898#define ISpEventSource_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
3899#define ISpEventSource_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
3900#define ISpEventSource_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
3901#define ISpEventSource_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
3902/*** ISpEventSource methods ***/
3903#define ISpEventSource_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
3904#define ISpEventSource_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
3905#define ISpEventSource_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
3906#else
3907/*** IUnknown methods ***/
3908static inline HRESULT ISpEventSource_QueryInterface(ISpEventSource* This,REFIID riid,void **ppvObject) {
3909 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3910}
3911static inline ULONG ISpEventSource_AddRef(ISpEventSource* This) {
3912 return This->lpVtbl->AddRef(This);
3913}
3914static inline ULONG ISpEventSource_Release(ISpEventSource* This) {
3915 return This->lpVtbl->Release(This);
3916}
3917/*** ISpNotifySource methods ***/
3918static inline HRESULT ISpEventSource_SetNotifySink(ISpEventSource* This,ISpNotifySink *pNotifySink) {
3919 return This->lpVtbl->SetNotifySink(This,pNotifySink);
3920}
3921static inline HRESULT ISpEventSource_SetNotifyWindowMessage(ISpEventSource* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
3922 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
3923}
3924static inline HRESULT ISpEventSource_SetNotifyCallbackFunction(ISpEventSource* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
3925 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
3926}
3927static inline HRESULT ISpEventSource_SetNotifyCallbackInterface(ISpEventSource* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
3928 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
3929}
3930static inline HRESULT ISpEventSource_SetNotifyWin32Event(ISpEventSource* This) {
3931 return This->lpVtbl->SetNotifyWin32Event(This);
3932}
3933static inline HRESULT ISpEventSource_WaitForNotifyEvent(ISpEventSource* This,DWORD dwMilliseconds) {
3934 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
3935}
3936static inline HANDLE ISpEventSource_GetNotifyEventHandle(ISpEventSource* This) {
3937 return This->lpVtbl->GetNotifyEventHandle(This);
3938}
3939/*** ISpEventSource methods ***/
3940static inline HRESULT ISpEventSource_SetInterest(ISpEventSource* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
3941 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
3942}
3943static inline HRESULT ISpEventSource_GetEvents(ISpEventSource* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
3944 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
3945}
3946static inline HRESULT ISpEventSource_GetInfo(ISpEventSource* This,SPEVENTSOURCEINFO *pInfo) {
3947 return This->lpVtbl->GetInfo(This,pInfo);
3948}
3949#endif
3950#endif
3951
3952#endif
3953
3954
3955#endif /* __ISpEventSource_INTERFACE_DEFINED__ */
3956
3957/*****************************************************************************
3958 * ISpEventSource2 interface
3959 */
3960#ifndef __ISpEventSource2_INTERFACE_DEFINED__
3961#define __ISpEventSource2_INTERFACE_DEFINED__
3962
3963DEFINE_GUID(IID_ISpEventSource2, 0x2373a435, 0x6a4b, 0x429e, 0xa6,0xac, 0xd4,0x23,0x1a,0x61,0x97,0x5b);
3964#if defined(__cplusplus) && !defined(CINTERFACE)
3965MIDL_INTERFACE("2373a435-6a4b-429e-a6ac-d4231a61975b")
3966ISpEventSource2 : public ISpEventSource
3967{
3968 virtual HRESULT STDMETHODCALLTYPE GetEventsEx(
3969 ULONG ulCount,
3970 SPEVENTEX *pEventArray,
3971 ULONG *pulFetched) = 0;
3972
3973};
3974#ifdef __CRT_UUID_DECL
3975__CRT_UUID_DECL(ISpEventSource2, 0x2373a435, 0x6a4b, 0x429e, 0xa6,0xac, 0xd4,0x23,0x1a,0x61,0x97,0x5b)
3976#endif
3977#else
3978typedef struct ISpEventSource2Vtbl {
3979 BEGIN_INTERFACE
3980
3981 /*** IUnknown methods ***/
3982 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3983 ISpEventSource2 *This,
3984 REFIID riid,
3985 void **ppvObject);
3986
3987 ULONG (STDMETHODCALLTYPE *AddRef)(
3988 ISpEventSource2 *This);
3989
3990 ULONG (STDMETHODCALLTYPE *Release)(
3991 ISpEventSource2 *This);
3992
3993 /*** ISpNotifySource methods ***/
3994 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
3995 ISpEventSource2 *This,
3996 ISpNotifySink *pNotifySink);
3997
3998 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
3999 ISpEventSource2 *This,
4000 HWND hWnd,
4001 UINT Msg,
4002 WPARAM wParam,
4003 LPARAM lParam);
4004
4005 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
4006 ISpEventSource2 *This,
4007 SPNOTIFYCALLBACK *pfnCallback,
4008 WPARAM wParam,
4009 LPARAM lParam);
4010
4011 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
4012 ISpEventSource2 *This,
4013 ISpNotifyCallback *pSpCallback,
4014 WPARAM wParam,
4015 LPARAM lParam);
4016
4017 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
4018 ISpEventSource2 *This);
4019
4020 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
4021 ISpEventSource2 *This,
4022 DWORD dwMilliseconds);
4023
4024 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
4025 ISpEventSource2 *This);
4026
4027 /*** ISpEventSource methods ***/
4028 HRESULT (STDMETHODCALLTYPE *SetInterest)(
4029 ISpEventSource2 *This,
4030 ULONGLONG ullEventInterest,
4031 ULONGLONG ullQueuedInterest);
4032
4033 HRESULT (STDMETHODCALLTYPE *GetEvents)(
4034 ISpEventSource2 *This,
4035 ULONG ulCount,
4036 SPEVENT *pEventArray,
4037 ULONG *pulFetched);
4038
4039 HRESULT (STDMETHODCALLTYPE *GetInfo)(
4040 ISpEventSource2 *This,
4041 SPEVENTSOURCEINFO *pInfo);
4042
4043 /*** ISpEventSource2 methods ***/
4044 HRESULT (STDMETHODCALLTYPE *GetEventsEx)(
4045 ISpEventSource2 *This,
4046 ULONG ulCount,
4047 SPEVENTEX *pEventArray,
4048 ULONG *pulFetched);
4049
4050 END_INTERFACE
4051} ISpEventSource2Vtbl;
4052
4053interface ISpEventSource2 {
4054 CONST_VTBL ISpEventSource2Vtbl* lpVtbl;
4055};
4056
4057#ifdef COBJMACROS
4058#ifndef WIDL_C_INLINE_WRAPPERS
4059/*** IUnknown methods ***/
4060#define ISpEventSource2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4061#define ISpEventSource2_AddRef(This) (This)->lpVtbl->AddRef(This)
4062#define ISpEventSource2_Release(This) (This)->lpVtbl->Release(This)
4063/*** ISpNotifySource methods ***/
4064#define ISpEventSource2_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
4065#define ISpEventSource2_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
4066#define ISpEventSource2_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
4067#define ISpEventSource2_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
4068#define ISpEventSource2_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
4069#define ISpEventSource2_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
4070#define ISpEventSource2_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
4071/*** ISpEventSource methods ***/
4072#define ISpEventSource2_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
4073#define ISpEventSource2_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
4074#define ISpEventSource2_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
4075/*** ISpEventSource2 methods ***/
4076#define ISpEventSource2_GetEventsEx(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEventsEx(This,ulCount,pEventArray,pulFetched)
4077#else
4078/*** IUnknown methods ***/
4079static inline HRESULT ISpEventSource2_QueryInterface(ISpEventSource2* This,REFIID riid,void **ppvObject) {
4080 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4081}
4082static inline ULONG ISpEventSource2_AddRef(ISpEventSource2* This) {
4083 return This->lpVtbl->AddRef(This);
4084}
4085static inline ULONG ISpEventSource2_Release(ISpEventSource2* This) {
4086 return This->lpVtbl->Release(This);
4087}
4088/*** ISpNotifySource methods ***/
4089static inline HRESULT ISpEventSource2_SetNotifySink(ISpEventSource2* This,ISpNotifySink *pNotifySink) {
4090 return This->lpVtbl->SetNotifySink(This,pNotifySink);
4091}
4092static inline HRESULT ISpEventSource2_SetNotifyWindowMessage(ISpEventSource2* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
4093 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
4094}
4095static inline HRESULT ISpEventSource2_SetNotifyCallbackFunction(ISpEventSource2* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
4096 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
4097}
4098static inline HRESULT ISpEventSource2_SetNotifyCallbackInterface(ISpEventSource2* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
4099 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
4100}
4101static inline HRESULT ISpEventSource2_SetNotifyWin32Event(ISpEventSource2* This) {
4102 return This->lpVtbl->SetNotifyWin32Event(This);
4103}
4104static inline HRESULT ISpEventSource2_WaitForNotifyEvent(ISpEventSource2* This,DWORD dwMilliseconds) {
4105 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
4106}
4107static inline HANDLE ISpEventSource2_GetNotifyEventHandle(ISpEventSource2* This) {
4108 return This->lpVtbl->GetNotifyEventHandle(This);
4109}
4110/*** ISpEventSource methods ***/
4111static inline HRESULT ISpEventSource2_SetInterest(ISpEventSource2* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
4112 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
4113}
4114static inline HRESULT ISpEventSource2_GetEvents(ISpEventSource2* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
4115 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
4116}
4117static inline HRESULT ISpEventSource2_GetInfo(ISpEventSource2* This,SPEVENTSOURCEINFO *pInfo) {
4118 return This->lpVtbl->GetInfo(This,pInfo);
4119}
4120/*** ISpEventSource2 methods ***/
4121static inline HRESULT ISpEventSource2_GetEventsEx(ISpEventSource2* This,ULONG ulCount,SPEVENTEX *pEventArray,ULONG *pulFetched) {
4122 return This->lpVtbl->GetEventsEx(This,ulCount,pEventArray,pulFetched);
4123}
4124#endif
4125#endif
4126
4127#endif
4128
4129
4130#endif /* __ISpEventSource2_INTERFACE_DEFINED__ */
4131
4132/*****************************************************************************
4133 * ISpEventSink interface
4134 */
4135#ifndef __ISpEventSink_INTERFACE_DEFINED__
4136#define __ISpEventSink_INTERFACE_DEFINED__
4137
4138DEFINE_GUID(IID_ISpEventSink, 0xbe7a9cc9, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
4139#if defined(__cplusplus) && !defined(CINTERFACE)
4140MIDL_INTERFACE("be7a9cc9-5f9e-11d2-960f-00c04f8ee628")
4141ISpEventSink : public IUnknown
4142{
4143 virtual HRESULT STDMETHODCALLTYPE AddEvents(
4144 const SPEVENT *pEventArray,
4145 ULONG ulCount) = 0;
4146
4147 virtual HRESULT STDMETHODCALLTYPE GetEventInterest(
4148 ULONGLONG *pullEventInterest) = 0;
4149
4150};
4151#ifdef __CRT_UUID_DECL
4152__CRT_UUID_DECL(ISpEventSink, 0xbe7a9cc9, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
4153#endif
4154#else
4155typedef struct ISpEventSinkVtbl {
4156 BEGIN_INTERFACE
4157
4158 /*** IUnknown methods ***/
4159 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4160 ISpEventSink *This,
4161 REFIID riid,
4162 void **ppvObject);
4163
4164 ULONG (STDMETHODCALLTYPE *AddRef)(
4165 ISpEventSink *This);
4166
4167 ULONG (STDMETHODCALLTYPE *Release)(
4168 ISpEventSink *This);
4169
4170 /*** ISpEventSink methods ***/
4171 HRESULT (STDMETHODCALLTYPE *AddEvents)(
4172 ISpEventSink *This,
4173 const SPEVENT *pEventArray,
4174 ULONG ulCount);
4175
4176 HRESULT (STDMETHODCALLTYPE *GetEventInterest)(
4177 ISpEventSink *This,
4178 ULONGLONG *pullEventInterest);
4179
4180 END_INTERFACE
4181} ISpEventSinkVtbl;
4182
4183interface ISpEventSink {
4184 CONST_VTBL ISpEventSinkVtbl* lpVtbl;
4185};
4186
4187#ifdef COBJMACROS
4188#ifndef WIDL_C_INLINE_WRAPPERS
4189/*** IUnknown methods ***/
4190#define ISpEventSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4191#define ISpEventSink_AddRef(This) (This)->lpVtbl->AddRef(This)
4192#define ISpEventSink_Release(This) (This)->lpVtbl->Release(This)
4193/*** ISpEventSink methods ***/
4194#define ISpEventSink_AddEvents(This,pEventArray,ulCount) (This)->lpVtbl->AddEvents(This,pEventArray,ulCount)
4195#define ISpEventSink_GetEventInterest(This,pullEventInterest) (This)->lpVtbl->GetEventInterest(This,pullEventInterest)
4196#else
4197/*** IUnknown methods ***/
4198static inline HRESULT ISpEventSink_QueryInterface(ISpEventSink* This,REFIID riid,void **ppvObject) {
4199 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4200}
4201static inline ULONG ISpEventSink_AddRef(ISpEventSink* This) {
4202 return This->lpVtbl->AddRef(This);
4203}
4204static inline ULONG ISpEventSink_Release(ISpEventSink* This) {
4205 return This->lpVtbl->Release(This);
4206}
4207/*** ISpEventSink methods ***/
4208static inline HRESULT ISpEventSink_AddEvents(ISpEventSink* This,const SPEVENT *pEventArray,ULONG ulCount) {
4209 return This->lpVtbl->AddEvents(This,pEventArray,ulCount);
4210}
4211static inline HRESULT ISpEventSink_GetEventInterest(ISpEventSink* This,ULONGLONG *pullEventInterest) {
4212 return This->lpVtbl->GetEventInterest(This,pullEventInterest);
4213}
4214#endif
4215#endif
4216
4217#endif
4218
4219
4220#endif /* __ISpEventSink_INTERFACE_DEFINED__ */
4221
4222/*****************************************************************************
4223 * ISpStreamFormat interface
4224 */
4225#ifndef __ISpStreamFormat_INTERFACE_DEFINED__
4226#define __ISpStreamFormat_INTERFACE_DEFINED__
4227
4228DEFINE_GUID(IID_ISpStreamFormat, 0xbed530be, 0x2606, 0x4f4d, 0xa1,0xc0, 0x54,0xc5,0xcd,0xa5,0x56,0x6f);
4229#if defined(__cplusplus) && !defined(CINTERFACE)
4230MIDL_INTERFACE("bed530be-2606-4f4d-a1c0-54c5cda5566f")
4231ISpStreamFormat : public IStream
4232{
4233 virtual HRESULT STDMETHODCALLTYPE GetFormat(
4234 GUID *pguidFormatId,
4235 WAVEFORMATEX **ppCoMemWaveFormatEx) = 0;
4236
4237};
4238#ifdef __CRT_UUID_DECL
4239__CRT_UUID_DECL(ISpStreamFormat, 0xbed530be, 0x2606, 0x4f4d, 0xa1,0xc0, 0x54,0xc5,0xcd,0xa5,0x56,0x6f)
4240#endif
4241#else
4242typedef struct ISpStreamFormatVtbl {
4243 BEGIN_INTERFACE
4244
4245 /*** IUnknown methods ***/
4246 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4247 ISpStreamFormat *This,
4248 REFIID riid,
4249 void **ppvObject);
4250
4251 ULONG (STDMETHODCALLTYPE *AddRef)(
4252 ISpStreamFormat *This);
4253
4254 ULONG (STDMETHODCALLTYPE *Release)(
4255 ISpStreamFormat *This);
4256
4257 /*** ISequentialStream methods ***/
4258 HRESULT (STDMETHODCALLTYPE *Read)(
4259 ISpStreamFormat *This,
4260 void *pv,
4261 ULONG cb,
4262 ULONG *pcbRead);
4263
4264 HRESULT (STDMETHODCALLTYPE *Write)(
4265 ISpStreamFormat *This,
4266 const void *pv,
4267 ULONG cb,
4268 ULONG *pcbWritten);
4269
4270 /*** IStream methods ***/
4271 HRESULT (STDMETHODCALLTYPE *Seek)(
4272 ISpStreamFormat *This,
4273 LARGE_INTEGER dlibMove,
4274 DWORD dwOrigin,
4275 ULARGE_INTEGER *plibNewPosition);
4276
4277 HRESULT (STDMETHODCALLTYPE *SetSize)(
4278 ISpStreamFormat *This,
4279 ULARGE_INTEGER libNewSize);
4280
4281 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4282 ISpStreamFormat *This,
4283 IStream *pstm,
4284 ULARGE_INTEGER cb,
4285 ULARGE_INTEGER *pcbRead,
4286 ULARGE_INTEGER *pcbWritten);
4287
4288 HRESULT (STDMETHODCALLTYPE *Commit)(
4289 ISpStreamFormat *This,
4290 DWORD grfCommitFlags);
4291
4292 HRESULT (STDMETHODCALLTYPE *Revert)(
4293 ISpStreamFormat *This);
4294
4295 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4296 ISpStreamFormat *This,
4297 ULARGE_INTEGER libOffset,
4298 ULARGE_INTEGER cb,
4299 DWORD dwLockType);
4300
4301 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4302 ISpStreamFormat *This,
4303 ULARGE_INTEGER libOffset,
4304 ULARGE_INTEGER cb,
4305 DWORD dwLockType);
4306
4307 HRESULT (STDMETHODCALLTYPE *Stat)(
4308 ISpStreamFormat *This,
4309 STATSTG *pstatstg,
4310 DWORD grfStatFlag);
4311
4312 HRESULT (STDMETHODCALLTYPE *Clone)(
4313 ISpStreamFormat *This,
4314 IStream **ppstm);
4315
4316 /*** ISpStreamFormat methods ***/
4317 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4318 ISpStreamFormat *This,
4319 GUID *pguidFormatId,
4320 WAVEFORMATEX **ppCoMemWaveFormatEx);
4321
4322 END_INTERFACE
4323} ISpStreamFormatVtbl;
4324
4325interface ISpStreamFormat {
4326 CONST_VTBL ISpStreamFormatVtbl* lpVtbl;
4327};
4328
4329#ifdef COBJMACROS
4330#ifndef WIDL_C_INLINE_WRAPPERS
4331/*** IUnknown methods ***/
4332#define ISpStreamFormat_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4333#define ISpStreamFormat_AddRef(This) (This)->lpVtbl->AddRef(This)
4334#define ISpStreamFormat_Release(This) (This)->lpVtbl->Release(This)
4335/*** ISequentialStream methods ***/
4336#define ISpStreamFormat_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4337#define ISpStreamFormat_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4338/*** IStream methods ***/
4339#define ISpStreamFormat_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4340#define ISpStreamFormat_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4341#define ISpStreamFormat_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4342#define ISpStreamFormat_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4343#define ISpStreamFormat_Revert(This) (This)->lpVtbl->Revert(This)
4344#define ISpStreamFormat_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4345#define ISpStreamFormat_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4346#define ISpStreamFormat_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4347#define ISpStreamFormat_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4348/*** ISpStreamFormat methods ***/
4349#define ISpStreamFormat_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4350#else
4351/*** IUnknown methods ***/
4352static inline HRESULT ISpStreamFormat_QueryInterface(ISpStreamFormat* This,REFIID riid,void **ppvObject) {
4353 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4354}
4355static inline ULONG ISpStreamFormat_AddRef(ISpStreamFormat* This) {
4356 return This->lpVtbl->AddRef(This);
4357}
4358static inline ULONG ISpStreamFormat_Release(ISpStreamFormat* This) {
4359 return This->lpVtbl->Release(This);
4360}
4361/*** ISequentialStream methods ***/
4362static inline HRESULT ISpStreamFormat_Read(ISpStreamFormat* This,void *pv,ULONG cb,ULONG *pcbRead) {
4363 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4364}
4365static inline HRESULT ISpStreamFormat_Write(ISpStreamFormat* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4366 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
4367}
4368/*** IStream methods ***/
4369static inline HRESULT ISpStreamFormat_Seek(ISpStreamFormat* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
4370 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
4371}
4372static inline HRESULT ISpStreamFormat_SetSize(ISpStreamFormat* This,ULARGE_INTEGER libNewSize) {
4373 return This->lpVtbl->SetSize(This,libNewSize);
4374}
4375static inline HRESULT ISpStreamFormat_CopyTo(ISpStreamFormat* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
4376 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
4377}
4378static inline HRESULT ISpStreamFormat_Commit(ISpStreamFormat* This,DWORD grfCommitFlags) {
4379 return This->lpVtbl->Commit(This,grfCommitFlags);
4380}
4381static inline HRESULT ISpStreamFormat_Revert(ISpStreamFormat* This) {
4382 return This->lpVtbl->Revert(This);
4383}
4384static inline HRESULT ISpStreamFormat_LockRegion(ISpStreamFormat* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4385 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
4386}
4387static inline HRESULT ISpStreamFormat_UnlockRegion(ISpStreamFormat* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4388 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
4389}
4390static inline HRESULT ISpStreamFormat_Stat(ISpStreamFormat* This,STATSTG *pstatstg,DWORD grfStatFlag) {
4391 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
4392}
4393static inline HRESULT ISpStreamFormat_Clone(ISpStreamFormat* This,IStream **ppstm) {
4394 return This->lpVtbl->Clone(This,ppstm);
4395}
4396/*** ISpStreamFormat methods ***/
4397static inline HRESULT ISpStreamFormat_GetFormat(ISpStreamFormat* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4398 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
4399}
4400#endif
4401#endif
4402
4403#endif
4404
4405
4406#endif /* __ISpStreamFormat_INTERFACE_DEFINED__ */
4407
4408/*****************************************************************************
4409 * ISpStream interface
4410 */
4411#ifndef __ISpStream_INTERFACE_DEFINED__
4412#define __ISpStream_INTERFACE_DEFINED__
4413
4414DEFINE_GUID(IID_ISpStream, 0x12e3cca9, 0x7518, 0x44c5, 0xa5,0xe7, 0xba,0x5a,0x79,0xcb,0x92,0x9e);
4415#if defined(__cplusplus) && !defined(CINTERFACE)
4416MIDL_INTERFACE("12e3cca9-7518-44c5-a5e7-ba5a79cb929e")
4417ISpStream : public ISpStreamFormat
4418{
4419 virtual HRESULT STDMETHODCALLTYPE SetBaseStream(
4420 IStream *pStream,
4421 REFGUID rguidFormat,
4422 const WAVEFORMATEX *pWaveFormatEx) = 0;
4423
4424 virtual HRESULT STDMETHODCALLTYPE GetBaseStream(
4425 IStream **ppStream) = 0;
4426
4427 virtual HRESULT STDMETHODCALLTYPE BindToFile(
4428 LPCWSTR pszFileName,
4429 SPFILEMODE eMode,
4430 const GUID *pFormatId,
4431 const WAVEFORMATEX *pWaveFormatEx,
4432 ULONGLONG ullEventInterest) = 0;
4433
4434 virtual HRESULT STDMETHODCALLTYPE Close(
4435 ) = 0;
4436
4437};
4438#ifdef __CRT_UUID_DECL
4439__CRT_UUID_DECL(ISpStream, 0x12e3cca9, 0x7518, 0x44c5, 0xa5,0xe7, 0xba,0x5a,0x79,0xcb,0x92,0x9e)
4440#endif
4441#else
4442typedef struct ISpStreamVtbl {
4443 BEGIN_INTERFACE
4444
4445 /*** IUnknown methods ***/
4446 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4447 ISpStream *This,
4448 REFIID riid,
4449 void **ppvObject);
4450
4451 ULONG (STDMETHODCALLTYPE *AddRef)(
4452 ISpStream *This);
4453
4454 ULONG (STDMETHODCALLTYPE *Release)(
4455 ISpStream *This);
4456
4457 /*** ISequentialStream methods ***/
4458 HRESULT (STDMETHODCALLTYPE *Read)(
4459 ISpStream *This,
4460 void *pv,
4461 ULONG cb,
4462 ULONG *pcbRead);
4463
4464 HRESULT (STDMETHODCALLTYPE *Write)(
4465 ISpStream *This,
4466 const void *pv,
4467 ULONG cb,
4468 ULONG *pcbWritten);
4469
4470 /*** IStream methods ***/
4471 HRESULT (STDMETHODCALLTYPE *Seek)(
4472 ISpStream *This,
4473 LARGE_INTEGER dlibMove,
4474 DWORD dwOrigin,
4475 ULARGE_INTEGER *plibNewPosition);
4476
4477 HRESULT (STDMETHODCALLTYPE *SetSize)(
4478 ISpStream *This,
4479 ULARGE_INTEGER libNewSize);
4480
4481 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4482 ISpStream *This,
4483 IStream *pstm,
4484 ULARGE_INTEGER cb,
4485 ULARGE_INTEGER *pcbRead,
4486 ULARGE_INTEGER *pcbWritten);
4487
4488 HRESULT (STDMETHODCALLTYPE *Commit)(
4489 ISpStream *This,
4490 DWORD grfCommitFlags);
4491
4492 HRESULT (STDMETHODCALLTYPE *Revert)(
4493 ISpStream *This);
4494
4495 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4496 ISpStream *This,
4497 ULARGE_INTEGER libOffset,
4498 ULARGE_INTEGER cb,
4499 DWORD dwLockType);
4500
4501 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4502 ISpStream *This,
4503 ULARGE_INTEGER libOffset,
4504 ULARGE_INTEGER cb,
4505 DWORD dwLockType);
4506
4507 HRESULT (STDMETHODCALLTYPE *Stat)(
4508 ISpStream *This,
4509 STATSTG *pstatstg,
4510 DWORD grfStatFlag);
4511
4512 HRESULT (STDMETHODCALLTYPE *Clone)(
4513 ISpStream *This,
4514 IStream **ppstm);
4515
4516 /*** ISpStreamFormat methods ***/
4517 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4518 ISpStream *This,
4519 GUID *pguidFormatId,
4520 WAVEFORMATEX **ppCoMemWaveFormatEx);
4521
4522 /*** ISpStream methods ***/
4523 HRESULT (STDMETHODCALLTYPE *SetBaseStream)(
4524 ISpStream *This,
4525 IStream *pStream,
4526 REFGUID rguidFormat,
4527 const WAVEFORMATEX *pWaveFormatEx);
4528
4529 HRESULT (STDMETHODCALLTYPE *GetBaseStream)(
4530 ISpStream *This,
4531 IStream **ppStream);
4532
4533 HRESULT (STDMETHODCALLTYPE *BindToFile)(
4534 ISpStream *This,
4535 LPCWSTR pszFileName,
4536 SPFILEMODE eMode,
4537 const GUID *pFormatId,
4538 const WAVEFORMATEX *pWaveFormatEx,
4539 ULONGLONG ullEventInterest);
4540
4541 HRESULT (STDMETHODCALLTYPE *Close)(
4542 ISpStream *This);
4543
4544 END_INTERFACE
4545} ISpStreamVtbl;
4546
4547interface ISpStream {
4548 CONST_VTBL ISpStreamVtbl* lpVtbl;
4549};
4550
4551#ifdef COBJMACROS
4552#ifndef WIDL_C_INLINE_WRAPPERS
4553/*** IUnknown methods ***/
4554#define ISpStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4555#define ISpStream_AddRef(This) (This)->lpVtbl->AddRef(This)
4556#define ISpStream_Release(This) (This)->lpVtbl->Release(This)
4557/*** ISequentialStream methods ***/
4558#define ISpStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4559#define ISpStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4560/*** IStream methods ***/
4561#define ISpStream_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4562#define ISpStream_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4563#define ISpStream_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4564#define ISpStream_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4565#define ISpStream_Revert(This) (This)->lpVtbl->Revert(This)
4566#define ISpStream_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4567#define ISpStream_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4568#define ISpStream_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4569#define ISpStream_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4570/*** ISpStreamFormat methods ***/
4571#define ISpStream_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4572/*** ISpStream methods ***/
4573#define ISpStream_SetBaseStream(This,pStream,rguidFormat,pWaveFormatEx) (This)->lpVtbl->SetBaseStream(This,pStream,rguidFormat,pWaveFormatEx)
4574#define ISpStream_GetBaseStream(This,ppStream) (This)->lpVtbl->GetBaseStream(This,ppStream)
4575#define ISpStream_BindToFile(This,pszFileName,eMode,pFormatId,pWaveFormatEx,ullEventInterest) (This)->lpVtbl->BindToFile(This,pszFileName,eMode,pFormatId,pWaveFormatEx,ullEventInterest)
4576#define ISpStream_Close(This) (This)->lpVtbl->Close(This)
4577#else
4578/*** IUnknown methods ***/
4579static inline HRESULT ISpStream_QueryInterface(ISpStream* This,REFIID riid,void **ppvObject) {
4580 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4581}
4582static inline ULONG ISpStream_AddRef(ISpStream* This) {
4583 return This->lpVtbl->AddRef(This);
4584}
4585static inline ULONG ISpStream_Release(ISpStream* This) {
4586 return This->lpVtbl->Release(This);
4587}
4588/*** ISequentialStream methods ***/
4589static inline HRESULT ISpStream_Read(ISpStream* This,void *pv,ULONG cb,ULONG *pcbRead) {
4590 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4591}
4592static inline HRESULT ISpStream_Write(ISpStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4593 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
4594}
4595/*** IStream methods ***/
4596static inline HRESULT ISpStream_Seek(ISpStream* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
4597 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
4598}
4599static inline HRESULT ISpStream_SetSize(ISpStream* This,ULARGE_INTEGER libNewSize) {
4600 return This->lpVtbl->SetSize(This,libNewSize);
4601}
4602static inline HRESULT ISpStream_CopyTo(ISpStream* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
4603 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
4604}
4605static inline HRESULT ISpStream_Commit(ISpStream* This,DWORD grfCommitFlags) {
4606 return This->lpVtbl->Commit(This,grfCommitFlags);
4607}
4608static inline HRESULT ISpStream_Revert(ISpStream* This) {
4609 return This->lpVtbl->Revert(This);
4610}
4611static inline HRESULT ISpStream_LockRegion(ISpStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4612 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
4613}
4614static inline HRESULT ISpStream_UnlockRegion(ISpStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4615 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
4616}
4617static inline HRESULT ISpStream_Stat(ISpStream* This,STATSTG *pstatstg,DWORD grfStatFlag) {
4618 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
4619}
4620static inline HRESULT ISpStream_Clone(ISpStream* This,IStream **ppstm) {
4621 return This->lpVtbl->Clone(This,ppstm);
4622}
4623/*** ISpStreamFormat methods ***/
4624static inline HRESULT ISpStream_GetFormat(ISpStream* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4625 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
4626}
4627/*** ISpStream methods ***/
4628static inline HRESULT ISpStream_SetBaseStream(ISpStream* This,IStream *pStream,REFGUID rguidFormat,const WAVEFORMATEX *pWaveFormatEx) {
4629 return This->lpVtbl->SetBaseStream(This,pStream,rguidFormat,pWaveFormatEx);
4630}
4631static inline HRESULT ISpStream_GetBaseStream(ISpStream* This,IStream **ppStream) {
4632 return This->lpVtbl->GetBaseStream(This,ppStream);
4633}
4634static inline HRESULT ISpStream_BindToFile(ISpStream* This,LPCWSTR pszFileName,SPFILEMODE eMode,const GUID *pFormatId,const WAVEFORMATEX *pWaveFormatEx,ULONGLONG ullEventInterest) {
4635 return This->lpVtbl->BindToFile(This,pszFileName,eMode,pFormatId,pWaveFormatEx,ullEventInterest);
4636}
4637static inline HRESULT ISpStream_Close(ISpStream* This) {
4638 return This->lpVtbl->Close(This);
4639}
4640#endif
4641#endif
4642
4643#endif
4644
4645
4646#endif /* __ISpStream_INTERFACE_DEFINED__ */
4647
4648/*****************************************************************************
4649 * ISpStreamFormatConverter interface
4650 */
4651#ifndef __ISpStreamFormatConverter_INTERFACE_DEFINED__
4652#define __ISpStreamFormatConverter_INTERFACE_DEFINED__
4653
4654DEFINE_GUID(IID_ISpStreamFormatConverter, 0x678a932c, 0xea71, 0x4446, 0x9b,0x41, 0x78,0xfd,0xa6,0x28,0x0a,0x29);
4655#if defined(__cplusplus) && !defined(CINTERFACE)
4656MIDL_INTERFACE("678a932c-ea71-4446-9b41-78fda6280a29")
4657ISpStreamFormatConverter : public ISpStreamFormat
4658{
4659 virtual HRESULT STDMETHODCALLTYPE SetBaseStream(
4660 ISpStreamFormat *pStream,
4661 WINBOOL fSetFormatToBaseStreamFormat,
4662 WINBOOL fWriteToBaseStream) = 0;
4663
4664 virtual HRESULT STDMETHODCALLTYPE GetBaseStream(
4665 ISpStreamFormat **ppStream) = 0;
4666
4667 virtual HRESULT STDMETHODCALLTYPE SetFormat(
4668 REFGUID rguidFormatIdOfConvertedStream,
4669 const WAVEFORMATEX *pWaveFormatExOfConvertedStream) = 0;
4670
4671 virtual HRESULT STDMETHODCALLTYPE ResetSeekPosition(
4672 ) = 0;
4673
4674 virtual HRESULT STDMETHODCALLTYPE ScaleConvertedToBaseOffset(
4675 ULONGLONG ullOffsetConvertedStream,
4676 ULONGLONG *pullOffsetBaseStream) = 0;
4677
4678 virtual HRESULT STDMETHODCALLTYPE ScaleBaseToConvertedOffset(
4679 ULONGLONG ullOffsetBaseStream,
4680 ULONGLONG *pullOffsetConvertedStream) = 0;
4681
4682};
4683#ifdef __CRT_UUID_DECL
4684__CRT_UUID_DECL(ISpStreamFormatConverter, 0x678a932c, 0xea71, 0x4446, 0x9b,0x41, 0x78,0xfd,0xa6,0x28,0x0a,0x29)
4685#endif
4686#else
4687typedef struct ISpStreamFormatConverterVtbl {
4688 BEGIN_INTERFACE
4689
4690 /*** IUnknown methods ***/
4691 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4692 ISpStreamFormatConverter *This,
4693 REFIID riid,
4694 void **ppvObject);
4695
4696 ULONG (STDMETHODCALLTYPE *AddRef)(
4697 ISpStreamFormatConverter *This);
4698
4699 ULONG (STDMETHODCALLTYPE *Release)(
4700 ISpStreamFormatConverter *This);
4701
4702 /*** ISequentialStream methods ***/
4703 HRESULT (STDMETHODCALLTYPE *Read)(
4704 ISpStreamFormatConverter *This,
4705 void *pv,
4706 ULONG cb,
4707 ULONG *pcbRead);
4708
4709 HRESULT (STDMETHODCALLTYPE *Write)(
4710 ISpStreamFormatConverter *This,
4711 const void *pv,
4712 ULONG cb,
4713 ULONG *pcbWritten);
4714
4715 /*** IStream methods ***/
4716 HRESULT (STDMETHODCALLTYPE *Seek)(
4717 ISpStreamFormatConverter *This,
4718 LARGE_INTEGER dlibMove,
4719 DWORD dwOrigin,
4720 ULARGE_INTEGER *plibNewPosition);
4721
4722 HRESULT (STDMETHODCALLTYPE *SetSize)(
4723 ISpStreamFormatConverter *This,
4724 ULARGE_INTEGER libNewSize);
4725
4726 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4727 ISpStreamFormatConverter *This,
4728 IStream *pstm,
4729 ULARGE_INTEGER cb,
4730 ULARGE_INTEGER *pcbRead,
4731 ULARGE_INTEGER *pcbWritten);
4732
4733 HRESULT (STDMETHODCALLTYPE *Commit)(
4734 ISpStreamFormatConverter *This,
4735 DWORD grfCommitFlags);
4736
4737 HRESULT (STDMETHODCALLTYPE *Revert)(
4738 ISpStreamFormatConverter *This);
4739
4740 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4741 ISpStreamFormatConverter *This,
4742 ULARGE_INTEGER libOffset,
4743 ULARGE_INTEGER cb,
4744 DWORD dwLockType);
4745
4746 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4747 ISpStreamFormatConverter *This,
4748 ULARGE_INTEGER libOffset,
4749 ULARGE_INTEGER cb,
4750 DWORD dwLockType);
4751
4752 HRESULT (STDMETHODCALLTYPE *Stat)(
4753 ISpStreamFormatConverter *This,
4754 STATSTG *pstatstg,
4755 DWORD grfStatFlag);
4756
4757 HRESULT (STDMETHODCALLTYPE *Clone)(
4758 ISpStreamFormatConverter *This,
4759 IStream **ppstm);
4760
4761 /*** ISpStreamFormat methods ***/
4762 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4763 ISpStreamFormatConverter *This,
4764 GUID *pguidFormatId,
4765 WAVEFORMATEX **ppCoMemWaveFormatEx);
4766
4767 /*** ISpStreamFormatConverter methods ***/
4768 HRESULT (STDMETHODCALLTYPE *SetBaseStream)(
4769 ISpStreamFormatConverter *This,
4770 ISpStreamFormat *pStream,
4771 WINBOOL fSetFormatToBaseStreamFormat,
4772 WINBOOL fWriteToBaseStream);
4773
4774 HRESULT (STDMETHODCALLTYPE *GetBaseStream)(
4775 ISpStreamFormatConverter *This,
4776 ISpStreamFormat **ppStream);
4777
4778 HRESULT (STDMETHODCALLTYPE *SetFormat)(
4779 ISpStreamFormatConverter *This,
4780 REFGUID rguidFormatIdOfConvertedStream,
4781 const WAVEFORMATEX *pWaveFormatExOfConvertedStream);
4782
4783 HRESULT (STDMETHODCALLTYPE *ResetSeekPosition)(
4784 ISpStreamFormatConverter *This);
4785
4786 HRESULT (STDMETHODCALLTYPE *ScaleConvertedToBaseOffset)(
4787 ISpStreamFormatConverter *This,
4788 ULONGLONG ullOffsetConvertedStream,
4789 ULONGLONG *pullOffsetBaseStream);
4790
4791 HRESULT (STDMETHODCALLTYPE *ScaleBaseToConvertedOffset)(
4792 ISpStreamFormatConverter *This,
4793 ULONGLONG ullOffsetBaseStream,
4794 ULONGLONG *pullOffsetConvertedStream);
4795
4796 END_INTERFACE
4797} ISpStreamFormatConverterVtbl;
4798
4799interface ISpStreamFormatConverter {
4800 CONST_VTBL ISpStreamFormatConverterVtbl* lpVtbl;
4801};
4802
4803#ifdef COBJMACROS
4804#ifndef WIDL_C_INLINE_WRAPPERS
4805/*** IUnknown methods ***/
4806#define ISpStreamFormatConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4807#define ISpStreamFormatConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
4808#define ISpStreamFormatConverter_Release(This) (This)->lpVtbl->Release(This)
4809/*** ISequentialStream methods ***/
4810#define ISpStreamFormatConverter_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4811#define ISpStreamFormatConverter_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4812/*** IStream methods ***/
4813#define ISpStreamFormatConverter_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4814#define ISpStreamFormatConverter_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4815#define ISpStreamFormatConverter_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4816#define ISpStreamFormatConverter_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4817#define ISpStreamFormatConverter_Revert(This) (This)->lpVtbl->Revert(This)
4818#define ISpStreamFormatConverter_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4819#define ISpStreamFormatConverter_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4820#define ISpStreamFormatConverter_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4821#define ISpStreamFormatConverter_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4822/*** ISpStreamFormat methods ***/
4823#define ISpStreamFormatConverter_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4824/*** ISpStreamFormatConverter methods ***/
4825#define ISpStreamFormatConverter_SetBaseStream(This,pStream,fSetFormatToBaseStreamFormat,fWriteToBaseStream) (This)->lpVtbl->SetBaseStream(This,pStream,fSetFormatToBaseStreamFormat,fWriteToBaseStream)
4826#define ISpStreamFormatConverter_GetBaseStream(This,ppStream) (This)->lpVtbl->GetBaseStream(This,ppStream)
4827#define ISpStreamFormatConverter_SetFormat(This,rguidFormatIdOfConvertedStream,pWaveFormatExOfConvertedStream) (This)->lpVtbl->SetFormat(This,rguidFormatIdOfConvertedStream,pWaveFormatExOfConvertedStream)
4828#define ISpStreamFormatConverter_ResetSeekPosition(This) (This)->lpVtbl->ResetSeekPosition(This)
4829#define ISpStreamFormatConverter_ScaleConvertedToBaseOffset(This,ullOffsetConvertedStream,pullOffsetBaseStream) (This)->lpVtbl->ScaleConvertedToBaseOffset(This,ullOffsetConvertedStream,pullOffsetBaseStream)
4830#define ISpStreamFormatConverter_ScaleBaseToConvertedOffset(This,ullOffsetBaseStream,pullOffsetConvertedStream) (This)->lpVtbl->ScaleBaseToConvertedOffset(This,ullOffsetBaseStream,pullOffsetConvertedStream)
4831#else
4832/*** IUnknown methods ***/
4833static inline HRESULT ISpStreamFormatConverter_QueryInterface(ISpStreamFormatConverter* This,REFIID riid,void **ppvObject) {
4834 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4835}
4836static inline ULONG ISpStreamFormatConverter_AddRef(ISpStreamFormatConverter* This) {
4837 return This->lpVtbl->AddRef(This);
4838}
4839static inline ULONG ISpStreamFormatConverter_Release(ISpStreamFormatConverter* This) {
4840 return This->lpVtbl->Release(This);
4841}
4842/*** ISequentialStream methods ***/
4843static inline HRESULT ISpStreamFormatConverter_Read(ISpStreamFormatConverter* This,void *pv,ULONG cb,ULONG *pcbRead) {
4844 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4845}
4846static inline HRESULT ISpStreamFormatConverter_Write(ISpStreamFormatConverter* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4847 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
4848}
4849/*** IStream methods ***/
4850static inline HRESULT ISpStreamFormatConverter_Seek(ISpStreamFormatConverter* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
4851 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
4852}
4853static inline HRESULT ISpStreamFormatConverter_SetSize(ISpStreamFormatConverter* This,ULARGE_INTEGER libNewSize) {
4854 return This->lpVtbl->SetSize(This,libNewSize);
4855}
4856static inline HRESULT ISpStreamFormatConverter_CopyTo(ISpStreamFormatConverter* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
4857 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
4858}
4859static inline HRESULT ISpStreamFormatConverter_Commit(ISpStreamFormatConverter* This,DWORD grfCommitFlags) {
4860 return This->lpVtbl->Commit(This,grfCommitFlags);
4861}
4862static inline HRESULT ISpStreamFormatConverter_Revert(ISpStreamFormatConverter* This) {
4863 return This->lpVtbl->Revert(This);
4864}
4865static inline HRESULT ISpStreamFormatConverter_LockRegion(ISpStreamFormatConverter* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4866 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
4867}
4868static inline HRESULT ISpStreamFormatConverter_UnlockRegion(ISpStreamFormatConverter* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4869 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
4870}
4871static inline HRESULT ISpStreamFormatConverter_Stat(ISpStreamFormatConverter* This,STATSTG *pstatstg,DWORD grfStatFlag) {
4872 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
4873}
4874static inline HRESULT ISpStreamFormatConverter_Clone(ISpStreamFormatConverter* This,IStream **ppstm) {
4875 return This->lpVtbl->Clone(This,ppstm);
4876}
4877/*** ISpStreamFormat methods ***/
4878static inline HRESULT ISpStreamFormatConverter_GetFormat(ISpStreamFormatConverter* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4879 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
4880}
4881/*** ISpStreamFormatConverter methods ***/
4882static inline HRESULT ISpStreamFormatConverter_SetBaseStream(ISpStreamFormatConverter* This,ISpStreamFormat *pStream,WINBOOL fSetFormatToBaseStreamFormat,WINBOOL fWriteToBaseStream) {
4883 return This->lpVtbl->SetBaseStream(This,pStream,fSetFormatToBaseStreamFormat,fWriteToBaseStream);
4884}
4885static inline HRESULT ISpStreamFormatConverter_GetBaseStream(ISpStreamFormatConverter* This,ISpStreamFormat **ppStream) {
4886 return This->lpVtbl->GetBaseStream(This,ppStream);
4887}
4888static inline HRESULT ISpStreamFormatConverter_SetFormat(ISpStreamFormatConverter* This,REFGUID rguidFormatIdOfConvertedStream,const WAVEFORMATEX *pWaveFormatExOfConvertedStream) {
4889 return This->lpVtbl->SetFormat(This,rguidFormatIdOfConvertedStream,pWaveFormatExOfConvertedStream);
4890}
4891static inline HRESULT ISpStreamFormatConverter_ResetSeekPosition(ISpStreamFormatConverter* This) {
4892 return This->lpVtbl->ResetSeekPosition(This);
4893}
4894static inline HRESULT ISpStreamFormatConverter_ScaleConvertedToBaseOffset(ISpStreamFormatConverter* This,ULONGLONG ullOffsetConvertedStream,ULONGLONG *pullOffsetBaseStream) {
4895 return This->lpVtbl->ScaleConvertedToBaseOffset(This,ullOffsetConvertedStream,pullOffsetBaseStream);
4896}
4897static inline HRESULT ISpStreamFormatConverter_ScaleBaseToConvertedOffset(ISpStreamFormatConverter* This,ULONGLONG ullOffsetBaseStream,ULONGLONG *pullOffsetConvertedStream) {
4898 return This->lpVtbl->ScaleBaseToConvertedOffset(This,ullOffsetBaseStream,pullOffsetConvertedStream);
4899}
4900#endif
4901#endif
4902
4903#endif
4904
4905
4906#endif /* __ISpStreamFormatConverter_INTERFACE_DEFINED__ */
4907
4908typedef struct SPAUDIOSTATUS {
4909 LONG cbFreeBuffSpace;
4910 ULONG cbNonBlockingIO;
4911 SPAUDIOSTATE State;
4912 ULONGLONG CurSeekPos;
4913 ULONGLONG CurDevicePos;
4914 DWORD dwAudioLevel;
4915 DWORD dwReserved2;
4916} SPAUDIOSTATUS;
4917typedef struct SPAUDIOBUFFERINFO {
4918 ULONG ulMsMinNotification;
4919 ULONG ulMsBufferSize;
4920 ULONG ulMsEventBias;
4921} SPAUDIOBUFFERINFO;
4922/*****************************************************************************
4923 * ISpAudio interface
4924 */
4925#ifndef __ISpAudio_INTERFACE_DEFINED__
4926#define __ISpAudio_INTERFACE_DEFINED__
4927
4928DEFINE_GUID(IID_ISpAudio, 0xc05c768f, 0xfae8, 0x4ec2, 0x8e,0x07, 0x33,0x83,0x21,0xc1,0x24,0x52);
4929#if defined(__cplusplus) && !defined(CINTERFACE)
4930MIDL_INTERFACE("c05c768f-fae8-4ec2-8e07-338321c12452")
4931ISpAudio : public ISpStreamFormat
4932{
4933 virtual HRESULT STDMETHODCALLTYPE SetState(
4934 SPAUDIOSTATE NewState,
4935 ULONGLONG ullReserved) = 0;
4936
4937 virtual HRESULT STDMETHODCALLTYPE SetFormat(
4938 REFGUID rguidFmtId,
4939 const WAVEFORMATEX *pWaveFormatEx) = 0;
4940
4941 virtual HRESULT STDMETHODCALLTYPE GetStatus(
4942 SPAUDIOSTATUS *pStatus) = 0;
4943
4944 virtual HRESULT STDMETHODCALLTYPE SetBufferInfo(
4945 const SPAUDIOBUFFERINFO *pBuffInfo) = 0;
4946
4947 virtual HRESULT STDMETHODCALLTYPE GetBufferInfo(
4948 SPAUDIOBUFFERINFO *pBuffInfo) = 0;
4949
4950 virtual HRESULT STDMETHODCALLTYPE GetDefaultFormat(
4951 GUID *pFormatId,
4952 WAVEFORMATEX **ppCoMemWaveFormatEx) = 0;
4953
4954 virtual HANDLE STDMETHODCALLTYPE EventHandle(
4955 ) = 0;
4956
4957 virtual HRESULT STDMETHODCALLTYPE GetVolumeLevel(
4958 ULONG *pLevel) = 0;
4959
4960 virtual HRESULT STDMETHODCALLTYPE SetVolumeLevel(
4961 ULONG Level) = 0;
4962
4963 virtual HRESULT STDMETHODCALLTYPE GetBufferNotifySize(
4964 ULONG *pcbSize) = 0;
4965
4966 virtual HRESULT STDMETHODCALLTYPE SetBufferNotifySize(
4967 ULONG cbSize) = 0;
4968
4969};
4970#ifdef __CRT_UUID_DECL
4971__CRT_UUID_DECL(ISpAudio, 0xc05c768f, 0xfae8, 0x4ec2, 0x8e,0x07, 0x33,0x83,0x21,0xc1,0x24,0x52)
4972#endif
4973#else
4974typedef struct ISpAudioVtbl {
4975 BEGIN_INTERFACE
4976
4977 /*** IUnknown methods ***/
4978 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4979 ISpAudio *This,
4980 REFIID riid,
4981 void **ppvObject);
4982
4983 ULONG (STDMETHODCALLTYPE *AddRef)(
4984 ISpAudio *This);
4985
4986 ULONG (STDMETHODCALLTYPE *Release)(
4987 ISpAudio *This);
4988
4989 /*** ISequentialStream methods ***/
4990 HRESULT (STDMETHODCALLTYPE *Read)(
4991 ISpAudio *This,
4992 void *pv,
4993 ULONG cb,
4994 ULONG *pcbRead);
4995
4996 HRESULT (STDMETHODCALLTYPE *Write)(
4997 ISpAudio *This,
4998 const void *pv,
4999 ULONG cb,
5000 ULONG *pcbWritten);
5001
5002 /*** IStream methods ***/
5003 HRESULT (STDMETHODCALLTYPE *Seek)(
5004 ISpAudio *This,
5005 LARGE_INTEGER dlibMove,
5006 DWORD dwOrigin,
5007 ULARGE_INTEGER *plibNewPosition);
5008
5009 HRESULT (STDMETHODCALLTYPE *SetSize)(
5010 ISpAudio *This,
5011 ULARGE_INTEGER libNewSize);
5012
5013 HRESULT (STDMETHODCALLTYPE *CopyTo)(
5014 ISpAudio *This,
5015 IStream *pstm,
5016 ULARGE_INTEGER cb,
5017 ULARGE_INTEGER *pcbRead,
5018 ULARGE_INTEGER *pcbWritten);
5019
5020 HRESULT (STDMETHODCALLTYPE *Commit)(
5021 ISpAudio *This,
5022 DWORD grfCommitFlags);
5023
5024 HRESULT (STDMETHODCALLTYPE *Revert)(
5025 ISpAudio *This);
5026
5027 HRESULT (STDMETHODCALLTYPE *LockRegion)(
5028 ISpAudio *This,
5029 ULARGE_INTEGER libOffset,
5030 ULARGE_INTEGER cb,
5031 DWORD dwLockType);
5032
5033 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
5034 ISpAudio *This,
5035 ULARGE_INTEGER libOffset,
5036 ULARGE_INTEGER cb,
5037 DWORD dwLockType);
5038
5039 HRESULT (STDMETHODCALLTYPE *Stat)(
5040 ISpAudio *This,
5041 STATSTG *pstatstg,
5042 DWORD grfStatFlag);
5043
5044 HRESULT (STDMETHODCALLTYPE *Clone)(
5045 ISpAudio *This,
5046 IStream **ppstm);
5047
5048 /*** ISpStreamFormat methods ***/
5049 HRESULT (STDMETHODCALLTYPE *GetFormat)(
5050 ISpAudio *This,
5051 GUID *pguidFormatId,
5052 WAVEFORMATEX **ppCoMemWaveFormatEx);
5053
5054 /*** ISpAudio methods ***/
5055 HRESULT (STDMETHODCALLTYPE *SetState)(
5056 ISpAudio *This,
5057 SPAUDIOSTATE NewState,
5058 ULONGLONG ullReserved);
5059
5060 HRESULT (STDMETHODCALLTYPE *SetFormat)(
5061 ISpAudio *This,
5062 REFGUID rguidFmtId,
5063 const WAVEFORMATEX *pWaveFormatEx);
5064
5065 HRESULT (STDMETHODCALLTYPE *GetStatus)(
5066 ISpAudio *This,
5067 SPAUDIOSTATUS *pStatus);
5068
5069 HRESULT (STDMETHODCALLTYPE *SetBufferInfo)(
5070 ISpAudio *This,
5071 const SPAUDIOBUFFERINFO *pBuffInfo);
5072
5073 HRESULT (STDMETHODCALLTYPE *GetBufferInfo)(
5074 ISpAudio *This,
5075 SPAUDIOBUFFERINFO *pBuffInfo);
5076
5077 HRESULT (STDMETHODCALLTYPE *GetDefaultFormat)(
5078 ISpAudio *This,
5079 GUID *pFormatId,
5080 WAVEFORMATEX **ppCoMemWaveFormatEx);
5081
5082 HANDLE (STDMETHODCALLTYPE *EventHandle)(
5083 ISpAudio *This);
5084
5085 HRESULT (STDMETHODCALLTYPE *GetVolumeLevel)(
5086 ISpAudio *This,
5087 ULONG *pLevel);
5088
5089 HRESULT (STDMETHODCALLTYPE *SetVolumeLevel)(
5090 ISpAudio *This,
5091 ULONG Level);
5092
5093 HRESULT (STDMETHODCALLTYPE *GetBufferNotifySize)(
5094 ISpAudio *This,
5095 ULONG *pcbSize);
5096
5097 HRESULT (STDMETHODCALLTYPE *SetBufferNotifySize)(
5098 ISpAudio *This,
5099 ULONG cbSize);
5100
5101 END_INTERFACE
5102} ISpAudioVtbl;
5103
5104interface ISpAudio {
5105 CONST_VTBL ISpAudioVtbl* lpVtbl;
5106};
5107
5108#ifdef COBJMACROS
5109#ifndef WIDL_C_INLINE_WRAPPERS
5110/*** IUnknown methods ***/
5111#define ISpAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5112#define ISpAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
5113#define ISpAudio_Release(This) (This)->lpVtbl->Release(This)
5114/*** ISequentialStream methods ***/
5115#define ISpAudio_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
5116#define ISpAudio_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
5117/*** IStream methods ***/
5118#define ISpAudio_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
5119#define ISpAudio_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
5120#define ISpAudio_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
5121#define ISpAudio_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
5122#define ISpAudio_Revert(This) (This)->lpVtbl->Revert(This)
5123#define ISpAudio_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
5124#define ISpAudio_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
5125#define ISpAudio_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
5126#define ISpAudio_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
5127/*** ISpStreamFormat methods ***/
5128#define ISpAudio_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
5129/*** ISpAudio methods ***/
5130#define ISpAudio_SetState(This,NewState,ullReserved) (This)->lpVtbl->SetState(This,NewState,ullReserved)
5131#define ISpAudio_SetFormat(This,rguidFmtId,pWaveFormatEx) (This)->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx)
5132#define ISpAudio_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
5133#define ISpAudio_SetBufferInfo(This,pBuffInfo) (This)->lpVtbl->SetBufferInfo(This,pBuffInfo)
5134#define ISpAudio_GetBufferInfo(This,pBuffInfo) (This)->lpVtbl->GetBufferInfo(This,pBuffInfo)
5135#define ISpAudio_GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx)
5136#define ISpAudio_EventHandle(This) (This)->lpVtbl->EventHandle(This)
5137#define ISpAudio_GetVolumeLevel(This,pLevel) (This)->lpVtbl->GetVolumeLevel(This,pLevel)
5138#define ISpAudio_SetVolumeLevel(This,Level) (This)->lpVtbl->SetVolumeLevel(This,Level)
5139#define ISpAudio_GetBufferNotifySize(This,pcbSize) (This)->lpVtbl->GetBufferNotifySize(This,pcbSize)
5140#define ISpAudio_SetBufferNotifySize(This,cbSize) (This)->lpVtbl->SetBufferNotifySize(This,cbSize)
5141#else
5142/*** IUnknown methods ***/
5143static inline HRESULT ISpAudio_QueryInterface(ISpAudio* This,REFIID riid,void **ppvObject) {
5144 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5145}
5146static inline ULONG ISpAudio_AddRef(ISpAudio* This) {
5147 return This->lpVtbl->AddRef(This);
5148}
5149static inline ULONG ISpAudio_Release(ISpAudio* This) {
5150 return This->lpVtbl->Release(This);
5151}
5152/*** ISequentialStream methods ***/
5153static inline HRESULT ISpAudio_Read(ISpAudio* This,void *pv,ULONG cb,ULONG *pcbRead) {
5154 return This->lpVtbl->Read(This,pv,cb,pcbRead);
5155}
5156static inline HRESULT ISpAudio_Write(ISpAudio* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
5157 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
5158}
5159/*** IStream methods ***/
5160static inline HRESULT ISpAudio_Seek(ISpAudio* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
5161 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
5162}
5163static inline HRESULT ISpAudio_SetSize(ISpAudio* This,ULARGE_INTEGER libNewSize) {
5164 return This->lpVtbl->SetSize(This,libNewSize);
5165}
5166static inline HRESULT ISpAudio_CopyTo(ISpAudio* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
5167 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
5168}
5169static inline HRESULT ISpAudio_Commit(ISpAudio* This,DWORD grfCommitFlags) {
5170 return This->lpVtbl->Commit(This,grfCommitFlags);
5171}
5172static inline HRESULT ISpAudio_Revert(ISpAudio* This) {
5173 return This->lpVtbl->Revert(This);
5174}
5175static inline HRESULT ISpAudio_LockRegion(ISpAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5176 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
5177}
5178static inline HRESULT ISpAudio_UnlockRegion(ISpAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5179 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
5180}
5181static inline HRESULT ISpAudio_Stat(ISpAudio* This,STATSTG *pstatstg,DWORD grfStatFlag) {
5182 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
5183}
5184static inline HRESULT ISpAudio_Clone(ISpAudio* This,IStream **ppstm) {
5185 return This->lpVtbl->Clone(This,ppstm);
5186}
5187/*** ISpStreamFormat methods ***/
5188static inline HRESULT ISpAudio_GetFormat(ISpAudio* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5189 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
5190}
5191/*** ISpAudio methods ***/
5192static inline HRESULT ISpAudio_SetState(ISpAudio* This,SPAUDIOSTATE NewState,ULONGLONG ullReserved) {
5193 return This->lpVtbl->SetState(This,NewState,ullReserved);
5194}
5195static inline HRESULT ISpAudio_SetFormat(ISpAudio* This,REFGUID rguidFmtId,const WAVEFORMATEX *pWaveFormatEx) {
5196 return This->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx);
5197}
5198static inline HRESULT ISpAudio_GetStatus(ISpAudio* This,SPAUDIOSTATUS *pStatus) {
5199 return This->lpVtbl->GetStatus(This,pStatus);
5200}
5201static inline HRESULT ISpAudio_SetBufferInfo(ISpAudio* This,const SPAUDIOBUFFERINFO *pBuffInfo) {
5202 return This->lpVtbl->SetBufferInfo(This,pBuffInfo);
5203}
5204static inline HRESULT ISpAudio_GetBufferInfo(ISpAudio* This,SPAUDIOBUFFERINFO *pBuffInfo) {
5205 return This->lpVtbl->GetBufferInfo(This,pBuffInfo);
5206}
5207static inline HRESULT ISpAudio_GetDefaultFormat(ISpAudio* This,GUID *pFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5208 return This->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx);
5209}
5210static inline HANDLE ISpAudio_EventHandle(ISpAudio* This) {
5211 return This->lpVtbl->EventHandle(This);
5212}
5213static inline HRESULT ISpAudio_GetVolumeLevel(ISpAudio* This,ULONG *pLevel) {
5214 return This->lpVtbl->GetVolumeLevel(This,pLevel);
5215}
5216static inline HRESULT ISpAudio_SetVolumeLevel(ISpAudio* This,ULONG Level) {
5217 return This->lpVtbl->SetVolumeLevel(This,Level);
5218}
5219static inline HRESULT ISpAudio_GetBufferNotifySize(ISpAudio* This,ULONG *pcbSize) {
5220 return This->lpVtbl->GetBufferNotifySize(This,pcbSize);
5221}
5222static inline HRESULT ISpAudio_SetBufferNotifySize(ISpAudio* This,ULONG cbSize) {
5223 return This->lpVtbl->SetBufferNotifySize(This,cbSize);
5224}
5225#endif
5226#endif
5227
5228#endif
5229
5230
5231#endif /* __ISpAudio_INTERFACE_DEFINED__ */
5232
5233/*****************************************************************************
5234 * ISpMMSysAudio interface
5235 */
5236#ifndef __ISpMMSysAudio_INTERFACE_DEFINED__
5237#define __ISpMMSysAudio_INTERFACE_DEFINED__
5238
5239DEFINE_GUID(IID_ISpMMSysAudio, 0x15806f6e, 0x1d70, 0x4b48, 0x98,0xe6, 0x3b,0x1a,0x00,0x75,0x09,0xab);
5240#if defined(__cplusplus) && !defined(CINTERFACE)
5241MIDL_INTERFACE("15806f6e-1d70-4b48-98e6-3b1a007509ab")
5242ISpMMSysAudio : public ISpAudio
5243{
5244 virtual HRESULT STDMETHODCALLTYPE GetDeviceId(
5245 UINT *puDeviceId) = 0;
5246
5247 virtual HRESULT STDMETHODCALLTYPE SetDeviceId(
5248 UINT uDeviceId) = 0;
5249
5250 virtual HRESULT STDMETHODCALLTYPE GetMMHandle(
5251 void **pHandle) = 0;
5252
5253 virtual HRESULT STDMETHODCALLTYPE GetLineId(
5254 UINT *puLineId) = 0;
5255
5256 virtual HRESULT STDMETHODCALLTYPE SetLineId(
5257 UINT uLineId) = 0;
5258
5259};
5260#ifdef __CRT_UUID_DECL
5261__CRT_UUID_DECL(ISpMMSysAudio, 0x15806f6e, 0x1d70, 0x4b48, 0x98,0xe6, 0x3b,0x1a,0x00,0x75,0x09,0xab)
5262#endif
5263#else
5264typedef struct ISpMMSysAudioVtbl {
5265 BEGIN_INTERFACE
5266
5267 /*** IUnknown methods ***/
5268 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5269 ISpMMSysAudio *This,
5270 REFIID riid,
5271 void **ppvObject);
5272
5273 ULONG (STDMETHODCALLTYPE *AddRef)(
5274 ISpMMSysAudio *This);
5275
5276 ULONG (STDMETHODCALLTYPE *Release)(
5277 ISpMMSysAudio *This);
5278
5279 /*** ISequentialStream methods ***/
5280 HRESULT (STDMETHODCALLTYPE *Read)(
5281 ISpMMSysAudio *This,
5282 void *pv,
5283 ULONG cb,
5284 ULONG *pcbRead);
5285
5286 HRESULT (STDMETHODCALLTYPE *Write)(
5287 ISpMMSysAudio *This,
5288 const void *pv,
5289 ULONG cb,
5290 ULONG *pcbWritten);
5291
5292 /*** IStream methods ***/
5293 HRESULT (STDMETHODCALLTYPE *Seek)(
5294 ISpMMSysAudio *This,
5295 LARGE_INTEGER dlibMove,
5296 DWORD dwOrigin,
5297 ULARGE_INTEGER *plibNewPosition);
5298
5299 HRESULT (STDMETHODCALLTYPE *SetSize)(
5300 ISpMMSysAudio *This,
5301 ULARGE_INTEGER libNewSize);
5302
5303 HRESULT (STDMETHODCALLTYPE *CopyTo)(
5304 ISpMMSysAudio *This,
5305 IStream *pstm,
5306 ULARGE_INTEGER cb,
5307 ULARGE_INTEGER *pcbRead,
5308 ULARGE_INTEGER *pcbWritten);
5309
5310 HRESULT (STDMETHODCALLTYPE *Commit)(
5311 ISpMMSysAudio *This,
5312 DWORD grfCommitFlags);
5313
5314 HRESULT (STDMETHODCALLTYPE *Revert)(
5315 ISpMMSysAudio *This);
5316
5317 HRESULT (STDMETHODCALLTYPE *LockRegion)(
5318 ISpMMSysAudio *This,
5319 ULARGE_INTEGER libOffset,
5320 ULARGE_INTEGER cb,
5321 DWORD dwLockType);
5322
5323 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
5324 ISpMMSysAudio *This,
5325 ULARGE_INTEGER libOffset,
5326 ULARGE_INTEGER cb,
5327 DWORD dwLockType);
5328
5329 HRESULT (STDMETHODCALLTYPE *Stat)(
5330 ISpMMSysAudio *This,
5331 STATSTG *pstatstg,
5332 DWORD grfStatFlag);
5333
5334 HRESULT (STDMETHODCALLTYPE *Clone)(
5335 ISpMMSysAudio *This,
5336 IStream **ppstm);
5337
5338 /*** ISpStreamFormat methods ***/
5339 HRESULT (STDMETHODCALLTYPE *GetFormat)(
5340 ISpMMSysAudio *This,
5341 GUID *pguidFormatId,
5342 WAVEFORMATEX **ppCoMemWaveFormatEx);
5343
5344 /*** ISpAudio methods ***/
5345 HRESULT (STDMETHODCALLTYPE *SetState)(
5346 ISpMMSysAudio *This,
5347 SPAUDIOSTATE NewState,
5348 ULONGLONG ullReserved);
5349
5350 HRESULT (STDMETHODCALLTYPE *SetFormat)(
5351 ISpMMSysAudio *This,
5352 REFGUID rguidFmtId,
5353 const WAVEFORMATEX *pWaveFormatEx);
5354
5355 HRESULT (STDMETHODCALLTYPE *GetStatus)(
5356 ISpMMSysAudio *This,
5357 SPAUDIOSTATUS *pStatus);
5358
5359 HRESULT (STDMETHODCALLTYPE *SetBufferInfo)(
5360 ISpMMSysAudio *This,
5361 const SPAUDIOBUFFERINFO *pBuffInfo);
5362
5363 HRESULT (STDMETHODCALLTYPE *GetBufferInfo)(
5364 ISpMMSysAudio *This,
5365 SPAUDIOBUFFERINFO *pBuffInfo);
5366
5367 HRESULT (STDMETHODCALLTYPE *GetDefaultFormat)(
5368 ISpMMSysAudio *This,
5369 GUID *pFormatId,
5370 WAVEFORMATEX **ppCoMemWaveFormatEx);
5371
5372 HANDLE (STDMETHODCALLTYPE *EventHandle)(
5373 ISpMMSysAudio *This);
5374
5375 HRESULT (STDMETHODCALLTYPE *GetVolumeLevel)(
5376 ISpMMSysAudio *This,
5377 ULONG *pLevel);
5378
5379 HRESULT (STDMETHODCALLTYPE *SetVolumeLevel)(
5380 ISpMMSysAudio *This,
5381 ULONG Level);
5382
5383 HRESULT (STDMETHODCALLTYPE *GetBufferNotifySize)(
5384 ISpMMSysAudio *This,
5385 ULONG *pcbSize);
5386
5387 HRESULT (STDMETHODCALLTYPE *SetBufferNotifySize)(
5388 ISpMMSysAudio *This,
5389 ULONG cbSize);
5390
5391 /*** ISpMMSysAudio methods ***/
5392 HRESULT (STDMETHODCALLTYPE *GetDeviceId)(
5393 ISpMMSysAudio *This,
5394 UINT *puDeviceId);
5395
5396 HRESULT (STDMETHODCALLTYPE *SetDeviceId)(
5397 ISpMMSysAudio *This,
5398 UINT uDeviceId);
5399
5400 HRESULT (STDMETHODCALLTYPE *GetMMHandle)(
5401 ISpMMSysAudio *This,
5402 void **pHandle);
5403
5404 HRESULT (STDMETHODCALLTYPE *GetLineId)(
5405 ISpMMSysAudio *This,
5406 UINT *puLineId);
5407
5408 HRESULT (STDMETHODCALLTYPE *SetLineId)(
5409 ISpMMSysAudio *This,
5410 UINT uLineId);
5411
5412 END_INTERFACE
5413} ISpMMSysAudioVtbl;
5414
5415interface ISpMMSysAudio {
5416 CONST_VTBL ISpMMSysAudioVtbl* lpVtbl;
5417};
5418
5419#ifdef COBJMACROS
5420#ifndef WIDL_C_INLINE_WRAPPERS
5421/*** IUnknown methods ***/
5422#define ISpMMSysAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5423#define ISpMMSysAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
5424#define ISpMMSysAudio_Release(This) (This)->lpVtbl->Release(This)
5425/*** ISequentialStream methods ***/
5426#define ISpMMSysAudio_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
5427#define ISpMMSysAudio_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
5428/*** IStream methods ***/
5429#define ISpMMSysAudio_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
5430#define ISpMMSysAudio_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
5431#define ISpMMSysAudio_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
5432#define ISpMMSysAudio_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
5433#define ISpMMSysAudio_Revert(This) (This)->lpVtbl->Revert(This)
5434#define ISpMMSysAudio_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
5435#define ISpMMSysAudio_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
5436#define ISpMMSysAudio_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
5437#define ISpMMSysAudio_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
5438/*** ISpStreamFormat methods ***/
5439#define ISpMMSysAudio_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
5440/*** ISpAudio methods ***/
5441#define ISpMMSysAudio_SetState(This,NewState,ullReserved) (This)->lpVtbl->SetState(This,NewState,ullReserved)
5442#define ISpMMSysAudio_SetFormat(This,rguidFmtId,pWaveFormatEx) (This)->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx)
5443#define ISpMMSysAudio_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
5444#define ISpMMSysAudio_SetBufferInfo(This,pBuffInfo) (This)->lpVtbl->SetBufferInfo(This,pBuffInfo)
5445#define ISpMMSysAudio_GetBufferInfo(This,pBuffInfo) (This)->lpVtbl->GetBufferInfo(This,pBuffInfo)
5446#define ISpMMSysAudio_GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx)
5447#define ISpMMSysAudio_EventHandle(This) (This)->lpVtbl->EventHandle(This)
5448#define ISpMMSysAudio_GetVolumeLevel(This,pLevel) (This)->lpVtbl->GetVolumeLevel(This,pLevel)
5449#define ISpMMSysAudio_SetVolumeLevel(This,Level) (This)->lpVtbl->SetVolumeLevel(This,Level)
5450#define ISpMMSysAudio_GetBufferNotifySize(This,pcbSize) (This)->lpVtbl->GetBufferNotifySize(This,pcbSize)
5451#define ISpMMSysAudio_SetBufferNotifySize(This,cbSize) (This)->lpVtbl->SetBufferNotifySize(This,cbSize)
5452/*** ISpMMSysAudio methods ***/
5453#define ISpMMSysAudio_GetDeviceId(This,puDeviceId) (This)->lpVtbl->GetDeviceId(This,puDeviceId)
5454#define ISpMMSysAudio_SetDeviceId(This,uDeviceId) (This)->lpVtbl->SetDeviceId(This,uDeviceId)
5455#define ISpMMSysAudio_GetMMHandle(This,pHandle) (This)->lpVtbl->GetMMHandle(This,pHandle)
5456#define ISpMMSysAudio_GetLineId(This,puLineId) (This)->lpVtbl->GetLineId(This,puLineId)
5457#define ISpMMSysAudio_SetLineId(This,uLineId) (This)->lpVtbl->SetLineId(This,uLineId)
5458#else
5459/*** IUnknown methods ***/
5460static inline HRESULT ISpMMSysAudio_QueryInterface(ISpMMSysAudio* This,REFIID riid,void **ppvObject) {
5461 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5462}
5463static inline ULONG ISpMMSysAudio_AddRef(ISpMMSysAudio* This) {
5464 return This->lpVtbl->AddRef(This);
5465}
5466static inline ULONG ISpMMSysAudio_Release(ISpMMSysAudio* This) {
5467 return This->lpVtbl->Release(This);
5468}
5469/*** ISequentialStream methods ***/
5470static inline HRESULT ISpMMSysAudio_Read(ISpMMSysAudio* This,void *pv,ULONG cb,ULONG *pcbRead) {
5471 return This->lpVtbl->Read(This,pv,cb,pcbRead);
5472}
5473static inline HRESULT ISpMMSysAudio_Write(ISpMMSysAudio* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
5474 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
5475}
5476/*** IStream methods ***/
5477static inline HRESULT ISpMMSysAudio_Seek(ISpMMSysAudio* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
5478 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
5479}
5480static inline HRESULT ISpMMSysAudio_SetSize(ISpMMSysAudio* This,ULARGE_INTEGER libNewSize) {
5481 return This->lpVtbl->SetSize(This,libNewSize);
5482}
5483static inline HRESULT ISpMMSysAudio_CopyTo(ISpMMSysAudio* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
5484 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
5485}
5486static inline HRESULT ISpMMSysAudio_Commit(ISpMMSysAudio* This,DWORD grfCommitFlags) {
5487 return This->lpVtbl->Commit(This,grfCommitFlags);
5488}
5489static inline HRESULT ISpMMSysAudio_Revert(ISpMMSysAudio* This) {
5490 return This->lpVtbl->Revert(This);
5491}
5492static inline HRESULT ISpMMSysAudio_LockRegion(ISpMMSysAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5493 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
5494}
5495static inline HRESULT ISpMMSysAudio_UnlockRegion(ISpMMSysAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5496 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
5497}
5498static inline HRESULT ISpMMSysAudio_Stat(ISpMMSysAudio* This,STATSTG *pstatstg,DWORD grfStatFlag) {
5499 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
5500}
5501static inline HRESULT ISpMMSysAudio_Clone(ISpMMSysAudio* This,IStream **ppstm) {
5502 return This->lpVtbl->Clone(This,ppstm);
5503}
5504/*** ISpStreamFormat methods ***/
5505static inline HRESULT ISpMMSysAudio_GetFormat(ISpMMSysAudio* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5506 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
5507}
5508/*** ISpAudio methods ***/
5509static inline HRESULT ISpMMSysAudio_SetState(ISpMMSysAudio* This,SPAUDIOSTATE NewState,ULONGLONG ullReserved) {
5510 return This->lpVtbl->SetState(This,NewState,ullReserved);
5511}
5512static inline HRESULT ISpMMSysAudio_SetFormat(ISpMMSysAudio* This,REFGUID rguidFmtId,const WAVEFORMATEX *pWaveFormatEx) {
5513 return This->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx);
5514}
5515static inline HRESULT ISpMMSysAudio_GetStatus(ISpMMSysAudio* This,SPAUDIOSTATUS *pStatus) {
5516 return This->lpVtbl->GetStatus(This,pStatus);
5517}
5518static inline HRESULT ISpMMSysAudio_SetBufferInfo(ISpMMSysAudio* This,const SPAUDIOBUFFERINFO *pBuffInfo) {
5519 return This->lpVtbl->SetBufferInfo(This,pBuffInfo);
5520}
5521static inline HRESULT ISpMMSysAudio_GetBufferInfo(ISpMMSysAudio* This,SPAUDIOBUFFERINFO *pBuffInfo) {
5522 return This->lpVtbl->GetBufferInfo(This,pBuffInfo);
5523}
5524static inline HRESULT ISpMMSysAudio_GetDefaultFormat(ISpMMSysAudio* This,GUID *pFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5525 return This->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx);
5526}
5527static inline HANDLE ISpMMSysAudio_EventHandle(ISpMMSysAudio* This) {
5528 return This->lpVtbl->EventHandle(This);
5529}
5530static inline HRESULT ISpMMSysAudio_GetVolumeLevel(ISpMMSysAudio* This,ULONG *pLevel) {
5531 return This->lpVtbl->GetVolumeLevel(This,pLevel);
5532}
5533static inline HRESULT ISpMMSysAudio_SetVolumeLevel(ISpMMSysAudio* This,ULONG Level) {
5534 return This->lpVtbl->SetVolumeLevel(This,Level);
5535}
5536static inline HRESULT ISpMMSysAudio_GetBufferNotifySize(ISpMMSysAudio* This,ULONG *pcbSize) {
5537 return This->lpVtbl->GetBufferNotifySize(This,pcbSize);
5538}
5539static inline HRESULT ISpMMSysAudio_SetBufferNotifySize(ISpMMSysAudio* This,ULONG cbSize) {
5540 return This->lpVtbl->SetBufferNotifySize(This,cbSize);
5541}
5542/*** ISpMMSysAudio methods ***/
5543static inline HRESULT ISpMMSysAudio_GetDeviceId(ISpMMSysAudio* This,UINT *puDeviceId) {
5544 return This->lpVtbl->GetDeviceId(This,puDeviceId);
5545}
5546static inline HRESULT ISpMMSysAudio_SetDeviceId(ISpMMSysAudio* This,UINT uDeviceId) {
5547 return This->lpVtbl->SetDeviceId(This,uDeviceId);
5548}
5549static inline HRESULT ISpMMSysAudio_GetMMHandle(ISpMMSysAudio* This,void **pHandle) {
5550 return This->lpVtbl->GetMMHandle(This,pHandle);
5551}
5552static inline HRESULT ISpMMSysAudio_GetLineId(ISpMMSysAudio* This,UINT *puLineId) {
5553 return This->lpVtbl->GetLineId(This,puLineId);
5554}
5555static inline HRESULT ISpMMSysAudio_SetLineId(ISpMMSysAudio* This,UINT uLineId) {
5556 return This->lpVtbl->SetLineId(This,uLineId);
5557}
5558#endif
5559#endif
5560
5561#endif
5562
5563
5564#endif /* __ISpMMSysAudio_INTERFACE_DEFINED__ */
5565
5566/*****************************************************************************
5567 * ISpTranscript interface
5568 */
5569#ifndef __ISpTranscript_INTERFACE_DEFINED__
5570#define __ISpTranscript_INTERFACE_DEFINED__
5571
5572DEFINE_GUID(IID_ISpTranscript, 0x10f63bce, 0x201a, 0x11d3, 0xac,0x70, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
5573#if defined(__cplusplus) && !defined(CINTERFACE)
5574MIDL_INTERFACE("10f63bce-201a-11d3-ac70-00c04f8ee6c0")
5575ISpTranscript : public IUnknown
5576{
5577 virtual HRESULT STDMETHODCALLTYPE GetTranscript(
5578 LPWSTR *ppszTranscript) = 0;
5579
5580 virtual HRESULT STDMETHODCALLTYPE AppendTranscript(
5581 LPCWSTR pszTranscript) = 0;
5582
5583};
5584#ifdef __CRT_UUID_DECL
5585__CRT_UUID_DECL(ISpTranscript, 0x10f63bce, 0x201a, 0x11d3, 0xac,0x70, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
5586#endif
5587#else
5588typedef struct ISpTranscriptVtbl {
5589 BEGIN_INTERFACE
5590
5591 /*** IUnknown methods ***/
5592 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5593 ISpTranscript *This,
5594 REFIID riid,
5595 void **ppvObject);
5596
5597 ULONG (STDMETHODCALLTYPE *AddRef)(
5598 ISpTranscript *This);
5599
5600 ULONG (STDMETHODCALLTYPE *Release)(
5601 ISpTranscript *This);
5602
5603 /*** ISpTranscript methods ***/
5604 HRESULT (STDMETHODCALLTYPE *GetTranscript)(
5605 ISpTranscript *This,
5606 LPWSTR *ppszTranscript);
5607
5608 HRESULT (STDMETHODCALLTYPE *AppendTranscript)(
5609 ISpTranscript *This,
5610 LPCWSTR pszTranscript);
5611
5612 END_INTERFACE
5613} ISpTranscriptVtbl;
5614
5615interface ISpTranscript {
5616 CONST_VTBL ISpTranscriptVtbl* lpVtbl;
5617};
5618
5619#ifdef COBJMACROS
5620#ifndef WIDL_C_INLINE_WRAPPERS
5621/*** IUnknown methods ***/
5622#define ISpTranscript_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5623#define ISpTranscript_AddRef(This) (This)->lpVtbl->AddRef(This)
5624#define ISpTranscript_Release(This) (This)->lpVtbl->Release(This)
5625/*** ISpTranscript methods ***/
5626#define ISpTranscript_GetTranscript(This,ppszTranscript) (This)->lpVtbl->GetTranscript(This,ppszTranscript)
5627#define ISpTranscript_AppendTranscript(This,pszTranscript) (This)->lpVtbl->AppendTranscript(This,pszTranscript)
5628#else
5629/*** IUnknown methods ***/
5630static inline HRESULT ISpTranscript_QueryInterface(ISpTranscript* This,REFIID riid,void **ppvObject) {
5631 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5632}
5633static inline ULONG ISpTranscript_AddRef(ISpTranscript* This) {
5634 return This->lpVtbl->AddRef(This);
5635}
5636static inline ULONG ISpTranscript_Release(ISpTranscript* This) {
5637 return This->lpVtbl->Release(This);
5638}
5639/*** ISpTranscript methods ***/
5640static inline HRESULT ISpTranscript_GetTranscript(ISpTranscript* This,LPWSTR *ppszTranscript) {
5641 return This->lpVtbl->GetTranscript(This,ppszTranscript);
5642}
5643static inline HRESULT ISpTranscript_AppendTranscript(ISpTranscript* This,LPCWSTR pszTranscript) {
5644 return This->lpVtbl->AppendTranscript(This,pszTranscript);
5645}
5646#endif
5647#endif
5648
5649#endif
5650
5651
5652#endif /* __ISpTranscript_INTERFACE_DEFINED__ */
5653
5654typedef WCHAR SPPHONEID;
5655typedef LPWSTR PSPPHONEID;
5656typedef LPCWSTR PCSPPHONEID;
5657typedef struct SPPHRASEELEMENT {
5658 ULONG ulAudioTimeOffset;
5659 ULONG ulAudioSizeTime;
5660 ULONG ulAudioStreamOffset;
5661 ULONG ulAudioSizeBytes;
5662 ULONG ulRetainedStreamOffset;
5663 ULONG ulRetainedSizeBytes;
5664 LPCWSTR pszDisplayText;
5665 LPCWSTR pszLexicalForm;
5666 const SPPHONEID *pszPronunciation;
5667 BYTE bDisplayAttributes;
5668 signed char RequiredConfidence;
5669 signed char ActualConfidence;
5670 BYTE Reserved;
5671 float SREngineConfidence;
5672} SPPHRASEELEMENT;
5673typedef struct SPPHRASERULE SPPHRASERULE;
5674typedef struct SPPHRASEPROPERTY SPPHRASEPROPERTY;
5675struct SPPHRASERULE {
5676 LPCWSTR pszName;
5677 ULONG ulId;
5678 ULONG ulFirstElement;
5679 ULONG ulCountOfElements;
5680 const SPPHRASERULE *pNextSibling;
5681 const SPPHRASERULE *pFirstChild;
5682 float SREngineConfidence;
5683 signed char Confidence;
5684};
5685struct SPPHRASEPROPERTY {
5686 LPCWSTR pszName;
5687 __C89_NAMELESS union {
5688 ULONG ulId;
5689 __C89_NAMELESS struct {
5690 byte bType;
5691 byte bReserved;
5692 unsigned short usArrayIndex;
5693 } __C89_NAMELESSSTRUCTNAME;
5694 } __C89_NAMELESSUNIONNAME;
5695 LPCWSTR pszValue;
5696 VARIANT vValue;
5697 ULONG ulFirstElement;
5698 ULONG ulCountOfElements;
5699 const SPPHRASEPROPERTY *pNextSibling;
5700 const SPPHRASEPROPERTY *pFirstChild;
5701 float SREngineConfidence;
5702 signed char Confidence;
5703};
5704typedef struct SPPHRASEREPLACEMENT {
5705 BYTE bDisplayAttributes;
5706 LPCWSTR pszReplacementText;
5707 ULONG ulFirstElement;
5708 ULONG ulCountOfElements;
5709} SPPHRASEREPLACEMENT;
5710typedef struct SPSEMANTICERRORINFO {
5711 ULONG ulLineNumber;
5712 LPWSTR pszScriptLine;
5713 LPWSTR pszSource;
5714 LPWSTR pszDescription;
5715 HRESULT hrResultCode;
5716} SPSEMANTICERRORINFO;
5717typedef struct SPPHRASE_50 {
5718 ULONG cbSize;
5719 WORD LangID;
5720 WORD wHomophoneGroupId;
5721 ULONGLONG ullGrammarID;
5722 ULONGLONG ftStartTime;
5723 ULONGLONG ullAudioStreamPosition;
5724 ULONG ulAudioSizeBytes;
5725 ULONG ulRetainedSizeBytes;
5726 ULONG ulAudioSizeTime;
5727 SPPHRASERULE Rule;
5728 const SPPHRASEPROPERTY *pProperties;
5729 const SPPHRASEELEMENT *pElements;
5730 ULONG cReplacements;
5731 const SPPHRASEREPLACEMENT *pReplacements;
5732 GUID SREngineID;
5733 ULONG ulSREnginePrivateDataSize;
5734 const BYTE *pSREnginePrivateData;
5735} SPPHRASE_50;
5736#define SP_SPPHRASESIZE_500 sizeof (SPPHRASE_50)
5737#ifdef __cplusplus
5738typedef struct SPPHRASE_53 : public SPPHRASE_50 {
5739 LPWSTR pSML;
5740 SPSEMANTICERRORINFO* pSemanticErrorInfo;
5741} SPPHRASE_53;
5742#else
5743typedef struct SPPHRASE_53 {
5744 ULONG cbSize;
5745 WORD LangID;
5746 WORD wHomophoneGroupId;
5747 ULONGLONG ullGrammarID;
5748 ULONGLONG ftStartTime;
5749 ULONGLONG ullAudioStreamPosition;
5750 ULONG ulAudioSizeBytes;
5751 ULONG ulRetainedSizeBytes;
5752 ULONG ulAudioSizeTime;
5753 SPPHRASERULE Rule;
5754 const SPPHRASEPROPERTY *pProperties;
5755 const SPPHRASEELEMENT *pElements;
5756 ULONG cReplacements;
5757 const SPPHRASEREPLACEMENT *pReplacements;
5758 GUID SREngineID;
5759 ULONG ulSREnginePrivateDataSize;
5760 const BYTE *pSREnginePrivateData;
5761 LPWSTR pSML;
5762 SPSEMANTICERRORINFO *pSemanticErrorInfo;
5763} SPPHRASE_53;
5764#endif
5765#define SP_SPPHRASESIZE_530 sizeof (SPPHRASE_53)
5766#ifdef __cplusplus
5767typedef struct SPPHRASE : public SPPHRASE_53 {
5768 SPSEMANTICFORMAT SemanticTagFormat;
5769} SPPHRASE;
5770#else
5771typedef struct SPPHRASE {
5772 ULONG cbSize;
5773 WORD LangID;
5774 WORD wHomophoneGroupId;
5775 ULONGLONG ullGrammarID;
5776 ULONGLONG ftStartTime;
5777 ULONGLONG ullAudioStreamPosition;
5778 ULONG ulAudioSizeBytes;
5779 ULONG ulRetainedSizeBytes;
5780 ULONG ulAudioSizeTime;
5781 SPPHRASERULE Rule;
5782 const SPPHRASEPROPERTY *pProperties;
5783 const SPPHRASEELEMENT *pElements;
5784 ULONG cReplacements;
5785 const SPPHRASEREPLACEMENT *pReplacements;
5786 GUID SREngineID;
5787 ULONG ulSREnginePrivateDataSize;
5788 const BYTE *pSREnginePrivateData;
5789 LPWSTR pSML;
5790 SPSEMANTICERRORINFO *pSemanticErrorInfo;
5791 SPSEMANTICFORMAT SemanticTagFormat;
5792} SPPHRASE;
5793#endif
5794typedef struct SPSERIALIZEDPHRASE {
5795 ULONG ulSerializedSize;
5796} SPSERIALIZEDPHRASE;
5797typedef struct SPRULE {
5798 LPCWSTR pszRuleName;
5799 ULONG ulRuleId;
5800 DWORD dwAttributes;
5801} SPRULE;
5802typedef struct SPBINARYGRAMMAR {
5803 ULONG ulTotalSerializedSize;
5804} SPBINARYGRAMMAR;
5805#if 0
5806typedef void *SPSTATEHANDLE;
5807#else
5808DECLARE_HANDLE(SPSTATEHANDLE);
5809#endif
5810typedef struct SPWORDPRONUNCIATION {
5811 struct SPWORDPRONUNCIATION *pNextWordPronunciation;
5812 SPLEXICONTYPE eLexiconType;
5813 WORD LangID;
5814 WORD wPronunciationFlags;
5815 SPPARTOFSPEECH ePartOfSpeech;
5816 SPPHONEID szPronunciation[1];
5817} SPWORDPRONUNCIATION;
5818typedef struct SPWORDPRONUNCIATIONLIST {
5819 ULONG ulSize;
5820 BYTE *pvBuffer;
5821 SPWORDPRONUNCIATION *pFirstWordPronunciation;
5822} SPWORDPRONUNCIATIONLIST;
5823typedef struct SPWORD {
5824 struct SPWORD *pNextWord;
5825 WORD LangID;
5826 WORD wReserved;
5827 SPWORDTYPE eWordType;
5828 LPWSTR pszWord;
5829 SPWORDPRONUNCIATION *pFirstWordPronunciation;
5830} SPWORD;
5831typedef struct SPWORDLIST {
5832 ULONG ulSize;
5833 BYTE *pvBuffer;
5834 SPWORD *pFirstWord;
5835} SPWORDLIST;
5836/*****************************************************************************
5837 * ISpLexicon interface
5838 */
5839#ifndef __ISpLexicon_INTERFACE_DEFINED__
5840#define __ISpLexicon_INTERFACE_DEFINED__
5841
5842DEFINE_GUID(IID_ISpLexicon, 0xda41a7c2, 0x5383, 0x4db2, 0x91,0x6b, 0x6c,0x17,0x19,0xe3,0xdb,0x58);
5843#if defined(__cplusplus) && !defined(CINTERFACE)
5844MIDL_INTERFACE("da41a7c2-5383-4db2-916b-6c1719e3db58")
5845ISpLexicon : public IUnknown
5846{
5847 virtual HRESULT STDMETHODCALLTYPE GetPronunciations(
5848 LPCWSTR pszWord,
5849 WORD LangID,
5850 DWORD dwFlags,
5851 SPWORDPRONUNCIATIONLIST *pWordPronunciationList) = 0;
5852
5853 virtual HRESULT STDMETHODCALLTYPE AddPronunciation(
5854 LPCWSTR pszWord,
5855 WORD LangID,
5856 SPPARTOFSPEECH ePartOfSpeech,
5857 PCSPPHONEID pszPronunciation) = 0;
5858
5859 virtual HRESULT STDMETHODCALLTYPE RemovePronunciation(
5860 LPCWSTR pszWord,
5861 WORD LangID,
5862 SPPARTOFSPEECH ePartOfSpeech,
5863 PCSPPHONEID pszPronunciation) = 0;
5864
5865 virtual HRESULT STDMETHODCALLTYPE GetGeneration(
5866 DWORD *pdwGeneration) = 0;
5867
5868 virtual HRESULT STDMETHODCALLTYPE GetGenerationChange(
5869 DWORD dwFlags,
5870 DWORD *pdwGeneration,
5871 SPWORDLIST *pWordList) = 0;
5872
5873 virtual HRESULT STDMETHODCALLTYPE GetWords(
5874 DWORD dwFlags,
5875 DWORD *pdwGeneration,
5876 DWORD *pdwCookie,
5877 SPWORDLIST *pWordList) = 0;
5878
5879};
5880#ifdef __CRT_UUID_DECL
5881__CRT_UUID_DECL(ISpLexicon, 0xda41a7c2, 0x5383, 0x4db2, 0x91,0x6b, 0x6c,0x17,0x19,0xe3,0xdb,0x58)
5882#endif
5883#else
5884typedef struct ISpLexiconVtbl {
5885 BEGIN_INTERFACE
5886
5887 /*** IUnknown methods ***/
5888 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5889 ISpLexicon *This,
5890 REFIID riid,
5891 void **ppvObject);
5892
5893 ULONG (STDMETHODCALLTYPE *AddRef)(
5894 ISpLexicon *This);
5895
5896 ULONG (STDMETHODCALLTYPE *Release)(
5897 ISpLexicon *This);
5898
5899 /*** ISpLexicon methods ***/
5900 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
5901 ISpLexicon *This,
5902 LPCWSTR pszWord,
5903 WORD LangID,
5904 DWORD dwFlags,
5905 SPWORDPRONUNCIATIONLIST *pWordPronunciationList);
5906
5907 HRESULT (STDMETHODCALLTYPE *AddPronunciation)(
5908 ISpLexicon *This,
5909 LPCWSTR pszWord,
5910 WORD LangID,
5911 SPPARTOFSPEECH ePartOfSpeech,
5912 PCSPPHONEID pszPronunciation);
5913
5914 HRESULT (STDMETHODCALLTYPE *RemovePronunciation)(
5915 ISpLexicon *This,
5916 LPCWSTR pszWord,
5917 WORD LangID,
5918 SPPARTOFSPEECH ePartOfSpeech,
5919 PCSPPHONEID pszPronunciation);
5920
5921 HRESULT (STDMETHODCALLTYPE *GetGeneration)(
5922 ISpLexicon *This,
5923 DWORD *pdwGeneration);
5924
5925 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
5926 ISpLexicon *This,
5927 DWORD dwFlags,
5928 DWORD *pdwGeneration,
5929 SPWORDLIST *pWordList);
5930
5931 HRESULT (STDMETHODCALLTYPE *GetWords)(
5932 ISpLexicon *This,
5933 DWORD dwFlags,
5934 DWORD *pdwGeneration,
5935 DWORD *pdwCookie,
5936 SPWORDLIST *pWordList);
5937
5938 END_INTERFACE
5939} ISpLexiconVtbl;
5940
5941interface ISpLexicon {
5942 CONST_VTBL ISpLexiconVtbl* lpVtbl;
5943};
5944
5945#ifdef COBJMACROS
5946#ifndef WIDL_C_INLINE_WRAPPERS
5947/*** IUnknown methods ***/
5948#define ISpLexicon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5949#define ISpLexicon_AddRef(This) (This)->lpVtbl->AddRef(This)
5950#define ISpLexicon_Release(This) (This)->lpVtbl->Release(This)
5951/*** ISpLexicon methods ***/
5952#define ISpLexicon_GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList) (This)->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList)
5953#define ISpLexicon_AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
5954#define ISpLexicon_RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
5955#define ISpLexicon_GetGeneration(This,pdwGeneration) (This)->lpVtbl->GetGeneration(This,pdwGeneration)
5956#define ISpLexicon_GetGenerationChange(This,dwFlags,pdwGeneration,pWordList) (This)->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList)
5957#define ISpLexicon_GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList) (This)->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList)
5958#else
5959/*** IUnknown methods ***/
5960static inline HRESULT ISpLexicon_QueryInterface(ISpLexicon* This,REFIID riid,void **ppvObject) {
5961 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5962}
5963static inline ULONG ISpLexicon_AddRef(ISpLexicon* This) {
5964 return This->lpVtbl->AddRef(This);
5965}
5966static inline ULONG ISpLexicon_Release(ISpLexicon* This) {
5967 return This->lpVtbl->Release(This);
5968}
5969/*** ISpLexicon methods ***/
5970static inline HRESULT ISpLexicon_GetPronunciations(ISpLexicon* This,LPCWSTR pszWord,WORD LangID,DWORD dwFlags,SPWORDPRONUNCIATIONLIST *pWordPronunciationList) {
5971 return This->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList);
5972}
5973static inline HRESULT ISpLexicon_AddPronunciation(ISpLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
5974 return This->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
5975}
5976static inline HRESULT ISpLexicon_RemovePronunciation(ISpLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
5977 return This->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
5978}
5979static inline HRESULT ISpLexicon_GetGeneration(ISpLexicon* This,DWORD *pdwGeneration) {
5980 return This->lpVtbl->GetGeneration(This,pdwGeneration);
5981}
5982static inline HRESULT ISpLexicon_GetGenerationChange(ISpLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,SPWORDLIST *pWordList) {
5983 return This->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList);
5984}
5985static inline HRESULT ISpLexicon_GetWords(ISpLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,DWORD *pdwCookie,SPWORDLIST *pWordList) {
5986 return This->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList);
5987}
5988#endif
5989#endif
5990
5991#endif
5992
5993
5994#endif /* __ISpLexicon_INTERFACE_DEFINED__ */
5995
5996/*****************************************************************************
5997 * ISpContainerLexicon interface
5998 */
5999#ifndef __ISpContainerLexicon_INTERFACE_DEFINED__
6000#define __ISpContainerLexicon_INTERFACE_DEFINED__
6001
6002DEFINE_GUID(IID_ISpContainerLexicon, 0x8565572f, 0xc094, 0x41cc, 0xb5,0x6e, 0x10,0xbd,0x9c,0x3f,0xf0,0x44);
6003#if defined(__cplusplus) && !defined(CINTERFACE)
6004MIDL_INTERFACE("8565572f-c094-41cc-b56e-10bd9c3ff044")
6005ISpContainerLexicon : public ISpLexicon
6006{
6007 virtual HRESULT STDMETHODCALLTYPE AddLexicon(
6008 ISpLexicon *pAddLexicon,
6009 DWORD dwFlags) = 0;
6010
6011};
6012#ifdef __CRT_UUID_DECL
6013__CRT_UUID_DECL(ISpContainerLexicon, 0x8565572f, 0xc094, 0x41cc, 0xb5,0x6e, 0x10,0xbd,0x9c,0x3f,0xf0,0x44)
6014#endif
6015#else
6016typedef struct ISpContainerLexiconVtbl {
6017 BEGIN_INTERFACE
6018
6019 /*** IUnknown methods ***/
6020 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6021 ISpContainerLexicon *This,
6022 REFIID riid,
6023 void **ppvObject);
6024
6025 ULONG (STDMETHODCALLTYPE *AddRef)(
6026 ISpContainerLexicon *This);
6027
6028 ULONG (STDMETHODCALLTYPE *Release)(
6029 ISpContainerLexicon *This);
6030
6031 /*** ISpLexicon methods ***/
6032 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
6033 ISpContainerLexicon *This,
6034 LPCWSTR pszWord,
6035 WORD LangID,
6036 DWORD dwFlags,
6037 SPWORDPRONUNCIATIONLIST *pWordPronunciationList);
6038
6039 HRESULT (STDMETHODCALLTYPE *AddPronunciation)(
6040 ISpContainerLexicon *This,
6041 LPCWSTR pszWord,
6042 WORD LangID,
6043 SPPARTOFSPEECH ePartOfSpeech,
6044 PCSPPHONEID pszPronunciation);
6045
6046 HRESULT (STDMETHODCALLTYPE *RemovePronunciation)(
6047 ISpContainerLexicon *This,
6048 LPCWSTR pszWord,
6049 WORD LangID,
6050 SPPARTOFSPEECH ePartOfSpeech,
6051 PCSPPHONEID pszPronunciation);
6052
6053 HRESULT (STDMETHODCALLTYPE *GetGeneration)(
6054 ISpContainerLexicon *This,
6055 DWORD *pdwGeneration);
6056
6057 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
6058 ISpContainerLexicon *This,
6059 DWORD dwFlags,
6060 DWORD *pdwGeneration,
6061 SPWORDLIST *pWordList);
6062
6063 HRESULT (STDMETHODCALLTYPE *GetWords)(
6064 ISpContainerLexicon *This,
6065 DWORD dwFlags,
6066 DWORD *pdwGeneration,
6067 DWORD *pdwCookie,
6068 SPWORDLIST *pWordList);
6069
6070 /*** ISpContainerLexicon methods ***/
6071 HRESULT (STDMETHODCALLTYPE *AddLexicon)(
6072 ISpContainerLexicon *This,
6073 ISpLexicon *pAddLexicon,
6074 DWORD dwFlags);
6075
6076 END_INTERFACE
6077} ISpContainerLexiconVtbl;
6078
6079interface ISpContainerLexicon {
6080 CONST_VTBL ISpContainerLexiconVtbl* lpVtbl;
6081};
6082
6083#ifdef COBJMACROS
6084#ifndef WIDL_C_INLINE_WRAPPERS
6085/*** IUnknown methods ***/
6086#define ISpContainerLexicon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6087#define ISpContainerLexicon_AddRef(This) (This)->lpVtbl->AddRef(This)
6088#define ISpContainerLexicon_Release(This) (This)->lpVtbl->Release(This)
6089/*** ISpLexicon methods ***/
6090#define ISpContainerLexicon_GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList) (This)->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList)
6091#define ISpContainerLexicon_AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
6092#define ISpContainerLexicon_RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
6093#define ISpContainerLexicon_GetGeneration(This,pdwGeneration) (This)->lpVtbl->GetGeneration(This,pdwGeneration)
6094#define ISpContainerLexicon_GetGenerationChange(This,dwFlags,pdwGeneration,pWordList) (This)->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList)
6095#define ISpContainerLexicon_GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList) (This)->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList)
6096/*** ISpContainerLexicon methods ***/
6097#define ISpContainerLexicon_AddLexicon(This,pAddLexicon,dwFlags) (This)->lpVtbl->AddLexicon(This,pAddLexicon,dwFlags)
6098#else
6099/*** IUnknown methods ***/
6100static inline HRESULT ISpContainerLexicon_QueryInterface(ISpContainerLexicon* This,REFIID riid,void **ppvObject) {
6101 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6102}
6103static inline ULONG ISpContainerLexicon_AddRef(ISpContainerLexicon* This) {
6104 return This->lpVtbl->AddRef(This);
6105}
6106static inline ULONG ISpContainerLexicon_Release(ISpContainerLexicon* This) {
6107 return This->lpVtbl->Release(This);
6108}
6109/*** ISpLexicon methods ***/
6110static inline HRESULT ISpContainerLexicon_GetPronunciations(ISpContainerLexicon* This,LPCWSTR pszWord,WORD LangID,DWORD dwFlags,SPWORDPRONUNCIATIONLIST *pWordPronunciationList) {
6111 return This->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList);
6112}
6113static inline HRESULT ISpContainerLexicon_AddPronunciation(ISpContainerLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
6114 return This->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
6115}
6116static inline HRESULT ISpContainerLexicon_RemovePronunciation(ISpContainerLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
6117 return This->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
6118}
6119static inline HRESULT ISpContainerLexicon_GetGeneration(ISpContainerLexicon* This,DWORD *pdwGeneration) {
6120 return This->lpVtbl->GetGeneration(This,pdwGeneration);
6121}
6122static inline HRESULT ISpContainerLexicon_GetGenerationChange(ISpContainerLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,SPWORDLIST *pWordList) {
6123 return This->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList);
6124}
6125static inline HRESULT ISpContainerLexicon_GetWords(ISpContainerLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,DWORD *pdwCookie,SPWORDLIST *pWordList) {
6126 return This->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList);
6127}
6128/*** ISpContainerLexicon methods ***/
6129static inline HRESULT ISpContainerLexicon_AddLexicon(ISpContainerLexicon* This,ISpLexicon *pAddLexicon,DWORD dwFlags) {
6130 return This->lpVtbl->AddLexicon(This,pAddLexicon,dwFlags);
6131}
6132#endif
6133#endif
6134
6135#endif
6136
6137
6138#endif /* __ISpContainerLexicon_INTERFACE_DEFINED__ */
6139
6140typedef struct SPSHORTCUTPAIR {
6141 struct SPSHORTCUTPAIR *pNextSHORTCUTPAIR;
6142 WORD LangID;
6143 SPSHORTCUTTYPE shType;
6144 LPWSTR pszDisplay;
6145 LPWSTR pszSpoken;
6146} SPSHORTCUTPAIR;
6147typedef struct SPSHORTCUTPAIRLIST {
6148 ULONG ulSize;
6149 BYTE *pvBuffer;
6150 SPSHORTCUTPAIR *pFirstShortcutPair;
6151} SPSHORTCUTPAIRLIST;
6152/*****************************************************************************
6153 * ISpShortcut interface
6154 */
6155#ifndef __ISpShortcut_INTERFACE_DEFINED__
6156#define __ISpShortcut_INTERFACE_DEFINED__
6157
6158DEFINE_GUID(IID_ISpShortcut, 0x3df681e2, 0xea56, 0x11d9, 0x8b,0xde, 0xf6,0x6b,0xad,0x1e,0x3f,0x3a);
6159#if defined(__cplusplus) && !defined(CINTERFACE)
6160MIDL_INTERFACE("3df681e2-ea56-11d9-8bde-f66bad1e3f3a")
6161ISpShortcut : public IUnknown
6162{
6163 virtual HRESULT STDMETHODCALLTYPE AddShortcut(
6164 LPCWSTR pszDisplay,
6165 WORD LangID,
6166 LPCWSTR pszSpoken,
6167 SPSHORTCUTTYPE shType) = 0;
6168
6169 virtual HRESULT STDMETHODCALLTYPE RemoveShortcut(
6170 LPCWSTR pszDisplay,
6171 WORD LangID,
6172 LPCWSTR pszSpoken,
6173 SPSHORTCUTTYPE shType) = 0;
6174
6175 virtual HRESULT STDMETHODCALLTYPE GetShortcuts(
6176 WORD LangID,
6177 SPSHORTCUTPAIRLIST *pShortcutpairList) = 0;
6178
6179 virtual HRESULT STDMETHODCALLTYPE GetGeneration(
6180 DWORD *pdwGeneration) = 0;
6181
6182 virtual HRESULT STDMETHODCALLTYPE GetWordsFromGenerationChange(
6183 DWORD *pdwGeneration,
6184 SPWORDLIST *pWordList) = 0;
6185
6186 virtual HRESULT STDMETHODCALLTYPE GetWords(
6187 DWORD *pdwGeneration,
6188 DWORD *pdwCookie,
6189 SPWORDLIST *pWordList) = 0;
6190
6191 virtual HRESULT STDMETHODCALLTYPE GetShortcutsForGeneration(
6192 DWORD *pdwGeneration,
6193 DWORD *pdwCookie,
6194 SPSHORTCUTPAIRLIST *pShortcutpairList) = 0;
6195
6196 virtual HRESULT STDMETHODCALLTYPE GetGenerationChange(
6197 DWORD *pdwGeneration,
6198 SPSHORTCUTPAIRLIST *pShortcutpairList) = 0;
6199
6200};
6201#ifdef __CRT_UUID_DECL
6202__CRT_UUID_DECL(ISpShortcut, 0x3df681e2, 0xea56, 0x11d9, 0x8b,0xde, 0xf6,0x6b,0xad,0x1e,0x3f,0x3a)
6203#endif
6204#else
6205typedef struct ISpShortcutVtbl {
6206 BEGIN_INTERFACE
6207
6208 /*** IUnknown methods ***/
6209 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6210 ISpShortcut *This,
6211 REFIID riid,
6212 void **ppvObject);
6213
6214 ULONG (STDMETHODCALLTYPE *AddRef)(
6215 ISpShortcut *This);
6216
6217 ULONG (STDMETHODCALLTYPE *Release)(
6218 ISpShortcut *This);
6219
6220 /*** ISpShortcut methods ***/
6221 HRESULT (STDMETHODCALLTYPE *AddShortcut)(
6222 ISpShortcut *This,
6223 LPCWSTR pszDisplay,
6224 WORD LangID,
6225 LPCWSTR pszSpoken,
6226 SPSHORTCUTTYPE shType);
6227
6228 HRESULT (STDMETHODCALLTYPE *RemoveShortcut)(
6229 ISpShortcut *This,
6230 LPCWSTR pszDisplay,
6231 WORD LangID,
6232 LPCWSTR pszSpoken,
6233 SPSHORTCUTTYPE shType);
6234
6235 HRESULT (STDMETHODCALLTYPE *GetShortcuts)(
6236 ISpShortcut *This,
6237 WORD LangID,
6238 SPSHORTCUTPAIRLIST *pShortcutpairList);
6239
6240 HRESULT (STDMETHODCALLTYPE *GetGeneration)(
6241 ISpShortcut *This,
6242 DWORD *pdwGeneration);
6243
6244 HRESULT (STDMETHODCALLTYPE *GetWordsFromGenerationChange)(
6245 ISpShortcut *This,
6246 DWORD *pdwGeneration,
6247 SPWORDLIST *pWordList);
6248
6249 HRESULT (STDMETHODCALLTYPE *GetWords)(
6250 ISpShortcut *This,
6251 DWORD *pdwGeneration,
6252 DWORD *pdwCookie,
6253 SPWORDLIST *pWordList);
6254
6255 HRESULT (STDMETHODCALLTYPE *GetShortcutsForGeneration)(
6256 ISpShortcut *This,
6257 DWORD *pdwGeneration,
6258 DWORD *pdwCookie,
6259 SPSHORTCUTPAIRLIST *pShortcutpairList);
6260
6261 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
6262 ISpShortcut *This,
6263 DWORD *pdwGeneration,
6264 SPSHORTCUTPAIRLIST *pShortcutpairList);
6265
6266 END_INTERFACE
6267} ISpShortcutVtbl;
6268
6269interface ISpShortcut {
6270 CONST_VTBL ISpShortcutVtbl* lpVtbl;
6271};
6272
6273#ifdef COBJMACROS
6274#ifndef WIDL_C_INLINE_WRAPPERS
6275/*** IUnknown methods ***/
6276#define ISpShortcut_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6277#define ISpShortcut_AddRef(This) (This)->lpVtbl->AddRef(This)
6278#define ISpShortcut_Release(This) (This)->lpVtbl->Release(This)
6279/*** ISpShortcut methods ***/
6280#define ISpShortcut_AddShortcut(This,pszDisplay,LangID,pszSpoken,shType) (This)->lpVtbl->AddShortcut(This,pszDisplay,LangID,pszSpoken,shType)
6281#define ISpShortcut_RemoveShortcut(This,pszDisplay,LangID,pszSpoken,shType) (This)->lpVtbl->RemoveShortcut(This,pszDisplay,LangID,pszSpoken,shType)
6282#define ISpShortcut_GetShortcuts(This,LangID,pShortcutpairList) (This)->lpVtbl->GetShortcuts(This,LangID,pShortcutpairList)
6283#define ISpShortcut_GetGeneration(This,pdwGeneration) (This)->lpVtbl->GetGeneration(This,pdwGeneration)
6284#define ISpShortcut_GetWordsFromGenerationChange(This,pdwGeneration,pWordList) (This)->lpVtbl->GetWordsFromGenerationChange(This,pdwGeneration,pWordList)
6285#define ISpShortcut_GetWords(This,pdwGeneration,pdwCookie,pWordList) (This)->lpVtbl->GetWords(This,pdwGeneration,pdwCookie,pWordList)
6286#define ISpShortcut_GetShortcutsForGeneration(This,pdwGeneration,pdwCookie,pShortcutpairList) (This)->lpVtbl->GetShortcutsForGeneration(This,pdwGeneration,pdwCookie,pShortcutpairList)
6287#define ISpShortcut_GetGenerationChange(This,pdwGeneration,pShortcutpairList) (This)->lpVtbl->GetGenerationChange(This,pdwGeneration,pShortcutpairList)
6288#else
6289/*** IUnknown methods ***/
6290static inline HRESULT ISpShortcut_QueryInterface(ISpShortcut* This,REFIID riid,void **ppvObject) {
6291 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6292}
6293static inline ULONG ISpShortcut_AddRef(ISpShortcut* This) {
6294 return This->lpVtbl->AddRef(This);
6295}
6296static inline ULONG ISpShortcut_Release(ISpShortcut* This) {
6297 return This->lpVtbl->Release(This);
6298}
6299/*** ISpShortcut methods ***/
6300static inline HRESULT ISpShortcut_AddShortcut(ISpShortcut* This,LPCWSTR pszDisplay,WORD LangID,LPCWSTR pszSpoken,SPSHORTCUTTYPE shType) {
6301 return This->lpVtbl->AddShortcut(This,pszDisplay,LangID,pszSpoken,shType);
6302}
6303static inline HRESULT ISpShortcut_RemoveShortcut(ISpShortcut* This,LPCWSTR pszDisplay,WORD LangID,LPCWSTR pszSpoken,SPSHORTCUTTYPE shType) {
6304 return This->lpVtbl->RemoveShortcut(This,pszDisplay,LangID,pszSpoken,shType);
6305}
6306static inline HRESULT ISpShortcut_GetShortcuts(ISpShortcut* This,WORD LangID,SPSHORTCUTPAIRLIST *pShortcutpairList) {
6307 return This->lpVtbl->GetShortcuts(This,LangID,pShortcutpairList);
6308}
6309static inline HRESULT ISpShortcut_GetGeneration(ISpShortcut* This,DWORD *pdwGeneration) {
6310 return This->lpVtbl->GetGeneration(This,pdwGeneration);
6311}
6312static inline HRESULT ISpShortcut_GetWordsFromGenerationChange(ISpShortcut* This,DWORD *pdwGeneration,SPWORDLIST *pWordList) {
6313 return This->lpVtbl->GetWordsFromGenerationChange(This,pdwGeneration,pWordList);
6314}
6315static inline HRESULT ISpShortcut_GetWords(ISpShortcut* This,DWORD *pdwGeneration,DWORD *pdwCookie,SPWORDLIST *pWordList) {
6316 return This->lpVtbl->GetWords(This,pdwGeneration,pdwCookie,pWordList);
6317}
6318static inline HRESULT ISpShortcut_GetShortcutsForGeneration(ISpShortcut* This,DWORD *pdwGeneration,DWORD *pdwCookie,SPSHORTCUTPAIRLIST *pShortcutpairList) {
6319 return This->lpVtbl->GetShortcutsForGeneration(This,pdwGeneration,pdwCookie,pShortcutpairList);
6320}
6321static inline HRESULT ISpShortcut_GetGenerationChange(ISpShortcut* This,DWORD *pdwGeneration,SPSHORTCUTPAIRLIST *pShortcutpairList) {
6322 return This->lpVtbl->GetGenerationChange(This,pdwGeneration,pShortcutpairList);
6323}
6324#endif
6325#endif
6326
6327#endif
6328
6329
6330#endif /* __ISpShortcut_INTERFACE_DEFINED__ */
6331
6332/*****************************************************************************
6333 * ISpPhoneConverter interface
6334 */
6335#ifndef __ISpPhoneConverter_INTERFACE_DEFINED__
6336#define __ISpPhoneConverter_INTERFACE_DEFINED__
6337
6338DEFINE_GUID(IID_ISpPhoneConverter, 0x8445c581, 0x0cac, 0x4a38, 0xab,0xfe, 0x9b,0x2c,0xe2,0x82,0x64,0x55);
6339#if defined(__cplusplus) && !defined(CINTERFACE)
6340MIDL_INTERFACE("8445c581-0cac-4a38-abfe-9b2ce2826455")
6341ISpPhoneConverter : public ISpObjectWithToken
6342{
6343 virtual HRESULT STDMETHODCALLTYPE PhoneToId(
6344 LPCWSTR pszPhone,
6345 SPPHONEID *pId) = 0;
6346
6347 virtual HRESULT STDMETHODCALLTYPE IdToPhone(
6348 PCSPPHONEID pId,
6349 WCHAR *pszPhone) = 0;
6350
6351};
6352#ifdef __CRT_UUID_DECL
6353__CRT_UUID_DECL(ISpPhoneConverter, 0x8445c581, 0x0cac, 0x4a38, 0xab,0xfe, 0x9b,0x2c,0xe2,0x82,0x64,0x55)
6354#endif
6355#else
6356typedef struct ISpPhoneConverterVtbl {
6357 BEGIN_INTERFACE
6358
6359 /*** IUnknown methods ***/
6360 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6361 ISpPhoneConverter *This,
6362 REFIID riid,
6363 void **ppvObject);
6364
6365 ULONG (STDMETHODCALLTYPE *AddRef)(
6366 ISpPhoneConverter *This);
6367
6368 ULONG (STDMETHODCALLTYPE *Release)(
6369 ISpPhoneConverter *This);
6370
6371 /*** ISpObjectWithToken methods ***/
6372 HRESULT (STDMETHODCALLTYPE *SetObjectToken)(
6373 ISpPhoneConverter *This,
6374 ISpObjectToken *pToken);
6375
6376 HRESULT (STDMETHODCALLTYPE *GetObjectToken)(
6377 ISpPhoneConverter *This,
6378 ISpObjectToken **ppToken);
6379
6380 /*** ISpPhoneConverter methods ***/
6381 HRESULT (STDMETHODCALLTYPE *PhoneToId)(
6382 ISpPhoneConverter *This,
6383 LPCWSTR pszPhone,
6384 SPPHONEID *pId);
6385
6386 HRESULT (STDMETHODCALLTYPE *IdToPhone)(
6387 ISpPhoneConverter *This,
6388 PCSPPHONEID pId,
6389 WCHAR *pszPhone);
6390
6391 END_INTERFACE
6392} ISpPhoneConverterVtbl;
6393
6394interface ISpPhoneConverter {
6395 CONST_VTBL ISpPhoneConverterVtbl* lpVtbl;
6396};
6397
6398#ifdef COBJMACROS
6399#ifndef WIDL_C_INLINE_WRAPPERS
6400/*** IUnknown methods ***/
6401#define ISpPhoneConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6402#define ISpPhoneConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
6403#define ISpPhoneConverter_Release(This) (This)->lpVtbl->Release(This)
6404/*** ISpObjectWithToken methods ***/
6405#define ISpPhoneConverter_SetObjectToken(This,pToken) (This)->lpVtbl->SetObjectToken(This,pToken)
6406#define ISpPhoneConverter_GetObjectToken(This,ppToken) (This)->lpVtbl->GetObjectToken(This,ppToken)
6407/*** ISpPhoneConverter methods ***/
6408#define ISpPhoneConverter_PhoneToId(This,pszPhone,pId) (This)->lpVtbl->PhoneToId(This,pszPhone,pId)
6409#define ISpPhoneConverter_IdToPhone(This,pId,pszPhone) (This)->lpVtbl->IdToPhone(This,pId,pszPhone)
6410#else
6411/*** IUnknown methods ***/
6412static inline HRESULT ISpPhoneConverter_QueryInterface(ISpPhoneConverter* This,REFIID riid,void **ppvObject) {
6413 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6414}
6415static inline ULONG ISpPhoneConverter_AddRef(ISpPhoneConverter* This) {
6416 return This->lpVtbl->AddRef(This);
6417}
6418static inline ULONG ISpPhoneConverter_Release(ISpPhoneConverter* This) {
6419 return This->lpVtbl->Release(This);
6420}
6421/*** ISpObjectWithToken methods ***/
6422static inline HRESULT ISpPhoneConverter_SetObjectToken(ISpPhoneConverter* This,ISpObjectToken *pToken) {
6423 return This->lpVtbl->SetObjectToken(This,pToken);
6424}
6425static inline HRESULT ISpPhoneConverter_GetObjectToken(ISpPhoneConverter* This,ISpObjectToken **ppToken) {
6426 return This->lpVtbl->GetObjectToken(This,ppToken);
6427}
6428/*** ISpPhoneConverter methods ***/
6429static inline HRESULT ISpPhoneConverter_PhoneToId(ISpPhoneConverter* This,LPCWSTR pszPhone,SPPHONEID *pId) {
6430 return This->lpVtbl->PhoneToId(This,pszPhone,pId);
6431}
6432static inline HRESULT ISpPhoneConverter_IdToPhone(ISpPhoneConverter* This,PCSPPHONEID pId,WCHAR *pszPhone) {
6433 return This->lpVtbl->IdToPhone(This,pId,pszPhone);
6434}
6435#endif
6436#endif
6437
6438#endif
6439
6440
6441#endif /* __ISpPhoneConverter_INTERFACE_DEFINED__ */
6442
6443/*****************************************************************************
6444 * ISpPhoneticAlphabetConverter interface
6445 */
6446#ifndef __ISpPhoneticAlphabetConverter_INTERFACE_DEFINED__
6447#define __ISpPhoneticAlphabetConverter_INTERFACE_DEFINED__
6448
6449DEFINE_GUID(IID_ISpPhoneticAlphabetConverter, 0x133adcd4, 0x19b4, 0x4020, 0x9f,0xdc, 0x84,0x2e,0x78,0x25,0x3b,0x17);
6450#if defined(__cplusplus) && !defined(CINTERFACE)
6451MIDL_INTERFACE("133adcd4-19b4-4020-9fdc-842e78253b17")
6452ISpPhoneticAlphabetConverter : public IUnknown
6453{
6454 virtual HRESULT STDMETHODCALLTYPE GetLangId(
6455 WORD *pLangID) = 0;
6456
6457 virtual HRESULT STDMETHODCALLTYPE SetLangId(
6458 WORD LangID) = 0;
6459
6460 virtual HRESULT STDMETHODCALLTYPE SAPI2UPS(
6461 const SPPHONEID *pszSAPIId,
6462 SPPHONEID *pszUPSId,
6463 DWORD cMaxLength) = 0;
6464
6465 virtual HRESULT STDMETHODCALLTYPE UPS2SAPI(
6466 const SPPHONEID *pszUPSId,
6467 SPPHONEID *pszSAPIId,
6468 DWORD cMaxLength) = 0;
6469
6470 virtual HRESULT STDMETHODCALLTYPE GetMaxConvertLength(
6471 DWORD cSrcLength,
6472 WINBOOL bSAPI2UPS,
6473 DWORD *pcMaxDestLength) = 0;
6474
6475};
6476#ifdef __CRT_UUID_DECL
6477__CRT_UUID_DECL(ISpPhoneticAlphabetConverter, 0x133adcd4, 0x19b4, 0x4020, 0x9f,0xdc, 0x84,0x2e,0x78,0x25,0x3b,0x17)
6478#endif
6479#else
6480typedef struct ISpPhoneticAlphabetConverterVtbl {
6481 BEGIN_INTERFACE
6482
6483 /*** IUnknown methods ***/
6484 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6485 ISpPhoneticAlphabetConverter *This,
6486 REFIID riid,
6487 void **ppvObject);
6488
6489 ULONG (STDMETHODCALLTYPE *AddRef)(
6490 ISpPhoneticAlphabetConverter *This);
6491
6492 ULONG (STDMETHODCALLTYPE *Release)(
6493 ISpPhoneticAlphabetConverter *This);
6494
6495 /*** ISpPhoneticAlphabetConverter methods ***/
6496 HRESULT (STDMETHODCALLTYPE *GetLangId)(
6497 ISpPhoneticAlphabetConverter *This,
6498 WORD *pLangID);
6499
6500 HRESULT (STDMETHODCALLTYPE *SetLangId)(
6501 ISpPhoneticAlphabetConverter *This,
6502 WORD LangID);
6503
6504 HRESULT (STDMETHODCALLTYPE *SAPI2UPS)(
6505 ISpPhoneticAlphabetConverter *This,
6506 const SPPHONEID *pszSAPIId,
6507 SPPHONEID *pszUPSId,
6508 DWORD cMaxLength);
6509
6510 HRESULT (STDMETHODCALLTYPE *UPS2SAPI)(
6511 ISpPhoneticAlphabetConverter *This,
6512 const SPPHONEID *pszUPSId,
6513 SPPHONEID *pszSAPIId,
6514 DWORD cMaxLength);
6515
6516 HRESULT (STDMETHODCALLTYPE *GetMaxConvertLength)(
6517 ISpPhoneticAlphabetConverter *This,
6518 DWORD cSrcLength,
6519 WINBOOL bSAPI2UPS,
6520 DWORD *pcMaxDestLength);
6521
6522 END_INTERFACE
6523} ISpPhoneticAlphabetConverterVtbl;
6524
6525interface ISpPhoneticAlphabetConverter {
6526 CONST_VTBL ISpPhoneticAlphabetConverterVtbl* lpVtbl;
6527};
6528
6529#ifdef COBJMACROS
6530#ifndef WIDL_C_INLINE_WRAPPERS
6531/*** IUnknown methods ***/
6532#define ISpPhoneticAlphabetConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6533#define ISpPhoneticAlphabetConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
6534#define ISpPhoneticAlphabetConverter_Release(This) (This)->lpVtbl->Release(This)
6535/*** ISpPhoneticAlphabetConverter methods ***/
6536#define ISpPhoneticAlphabetConverter_GetLangId(This,pLangID) (This)->lpVtbl->GetLangId(This,pLangID)
6537#define ISpPhoneticAlphabetConverter_SetLangId(This,LangID) (This)->lpVtbl->SetLangId(This,LangID)
6538#define ISpPhoneticAlphabetConverter_SAPI2UPS(This,pszSAPIId,pszUPSId,cMaxLength) (This)->lpVtbl->SAPI2UPS(This,pszSAPIId,pszUPSId,cMaxLength)
6539#define ISpPhoneticAlphabetConverter_UPS2SAPI(This,pszUPSId,pszSAPIId,cMaxLength) (This)->lpVtbl->UPS2SAPI(This,pszUPSId,pszSAPIId,cMaxLength)
6540#define ISpPhoneticAlphabetConverter_GetMaxConvertLength(This,cSrcLength,bSAPI2UPS,pcMaxDestLength) (This)->lpVtbl->GetMaxConvertLength(This,cSrcLength,bSAPI2UPS,pcMaxDestLength)
6541#else
6542/*** IUnknown methods ***/
6543static inline HRESULT ISpPhoneticAlphabetConverter_QueryInterface(ISpPhoneticAlphabetConverter* This,REFIID riid,void **ppvObject) {
6544 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6545}
6546static inline ULONG ISpPhoneticAlphabetConverter_AddRef(ISpPhoneticAlphabetConverter* This) {
6547 return This->lpVtbl->AddRef(This);
6548}
6549static inline ULONG ISpPhoneticAlphabetConverter_Release(ISpPhoneticAlphabetConverter* This) {
6550 return This->lpVtbl->Release(This);
6551}
6552/*** ISpPhoneticAlphabetConverter methods ***/
6553static inline HRESULT ISpPhoneticAlphabetConverter_GetLangId(ISpPhoneticAlphabetConverter* This,WORD *pLangID) {
6554 return This->lpVtbl->GetLangId(This,pLangID);
6555}
6556static inline HRESULT ISpPhoneticAlphabetConverter_SetLangId(ISpPhoneticAlphabetConverter* This,WORD LangID) {
6557 return This->lpVtbl->SetLangId(This,LangID);
6558}
6559static inline HRESULT ISpPhoneticAlphabetConverter_SAPI2UPS(ISpPhoneticAlphabetConverter* This,const SPPHONEID *pszSAPIId,SPPHONEID *pszUPSId,DWORD cMaxLength) {
6560 return This->lpVtbl->SAPI2UPS(This,pszSAPIId,pszUPSId,cMaxLength);
6561}
6562static inline HRESULT ISpPhoneticAlphabetConverter_UPS2SAPI(ISpPhoneticAlphabetConverter* This,const SPPHONEID *pszUPSId,SPPHONEID *pszSAPIId,DWORD cMaxLength) {
6563 return This->lpVtbl->UPS2SAPI(This,pszUPSId,pszSAPIId,cMaxLength);
6564}
6565static inline HRESULT ISpPhoneticAlphabetConverter_GetMaxConvertLength(ISpPhoneticAlphabetConverter* This,DWORD cSrcLength,WINBOOL bSAPI2UPS,DWORD *pcMaxDestLength) {
6566 return This->lpVtbl->GetMaxConvertLength(This,cSrcLength,bSAPI2UPS,pcMaxDestLength);
6567}
6568#endif
6569#endif
6570
6571#endif
6572
6573
6574#endif /* __ISpPhoneticAlphabetConverter_INTERFACE_DEFINED__ */
6575
6576/*****************************************************************************
6577 * ISpPhoneticAlphabetSelection interface
6578 */
6579#ifndef __ISpPhoneticAlphabetSelection_INTERFACE_DEFINED__
6580#define __ISpPhoneticAlphabetSelection_INTERFACE_DEFINED__
6581
6582DEFINE_GUID(IID_ISpPhoneticAlphabetSelection, 0xb2745efd, 0x42ce, 0x48ca, 0x81,0xf1, 0xa9,0x6e,0x02,0x53,0x8a,0x90);
6583#if defined(__cplusplus) && !defined(CINTERFACE)
6584MIDL_INTERFACE("b2745efd-42ce-48ca-81f1-a96e02538a90")
6585ISpPhoneticAlphabetSelection : public IUnknown
6586{
6587 virtual HRESULT STDMETHODCALLTYPE IsAlphabetUPS(
6588 WINBOOL *pfIsUPS) = 0;
6589
6590 virtual HRESULT STDMETHODCALLTYPE SetAlphabetToUPS(
6591 WINBOOL fForceUPS) = 0;
6592
6593};
6594#ifdef __CRT_UUID_DECL
6595__CRT_UUID_DECL(ISpPhoneticAlphabetSelection, 0xb2745efd, 0x42ce, 0x48ca, 0x81,0xf1, 0xa9,0x6e,0x02,0x53,0x8a,0x90)
6596#endif
6597#else
6598typedef struct ISpPhoneticAlphabetSelectionVtbl {
6599 BEGIN_INTERFACE
6600
6601 /*** IUnknown methods ***/
6602 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6603 ISpPhoneticAlphabetSelection *This,
6604 REFIID riid,
6605 void **ppvObject);
6606
6607 ULONG (STDMETHODCALLTYPE *AddRef)(
6608 ISpPhoneticAlphabetSelection *This);
6609
6610 ULONG (STDMETHODCALLTYPE *Release)(
6611 ISpPhoneticAlphabetSelection *This);
6612
6613 /*** ISpPhoneticAlphabetSelection methods ***/
6614 HRESULT (STDMETHODCALLTYPE *IsAlphabetUPS)(
6615 ISpPhoneticAlphabetSelection *This,
6616 WINBOOL *pfIsUPS);
6617
6618 HRESULT (STDMETHODCALLTYPE *SetAlphabetToUPS)(
6619 ISpPhoneticAlphabetSelection *This,
6620 WINBOOL fForceUPS);
6621
6622 END_INTERFACE
6623} ISpPhoneticAlphabetSelectionVtbl;
6624
6625interface ISpPhoneticAlphabetSelection {
6626 CONST_VTBL ISpPhoneticAlphabetSelectionVtbl* lpVtbl;
6627};
6628
6629#ifdef COBJMACROS
6630#ifndef WIDL_C_INLINE_WRAPPERS
6631/*** IUnknown methods ***/
6632#define ISpPhoneticAlphabetSelection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6633#define ISpPhoneticAlphabetSelection_AddRef(This) (This)->lpVtbl->AddRef(This)
6634#define ISpPhoneticAlphabetSelection_Release(This) (This)->lpVtbl->Release(This)
6635/*** ISpPhoneticAlphabetSelection methods ***/
6636#define ISpPhoneticAlphabetSelection_IsAlphabetUPS(This,pfIsUPS) (This)->lpVtbl->IsAlphabetUPS(This,pfIsUPS)
6637#define ISpPhoneticAlphabetSelection_SetAlphabetToUPS(This,fForceUPS) (This)->lpVtbl->SetAlphabetToUPS(This,fForceUPS)
6638#else
6639/*** IUnknown methods ***/
6640static inline HRESULT ISpPhoneticAlphabetSelection_QueryInterface(ISpPhoneticAlphabetSelection* This,REFIID riid,void **ppvObject) {
6641 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6642}
6643static inline ULONG ISpPhoneticAlphabetSelection_AddRef(ISpPhoneticAlphabetSelection* This) {
6644 return This->lpVtbl->AddRef(This);
6645}
6646static inline ULONG ISpPhoneticAlphabetSelection_Release(ISpPhoneticAlphabetSelection* This) {
6647 return This->lpVtbl->Release(This);
6648}
6649/*** ISpPhoneticAlphabetSelection methods ***/
6650static inline HRESULT ISpPhoneticAlphabetSelection_IsAlphabetUPS(ISpPhoneticAlphabetSelection* This,WINBOOL *pfIsUPS) {
6651 return This->lpVtbl->IsAlphabetUPS(This,pfIsUPS);
6652}
6653static inline HRESULT ISpPhoneticAlphabetSelection_SetAlphabetToUPS(ISpPhoneticAlphabetSelection* This,WINBOOL fForceUPS) {
6654 return This->lpVtbl->SetAlphabetToUPS(This,fForceUPS);
6655}
6656#endif
6657#endif
6658
6659#endif
6660
6661
6662#endif /* __ISpPhoneticAlphabetSelection_INTERFACE_DEFINED__ */
6663
6664typedef struct SPVPITCH {
6665 LONG MiddleAdj;
6666 LONG RangeAdj;
6667} SPVPITCH;
6668typedef struct SPVCONTEXT {
6669 LPCWSTR pCategory;
6670 LPCWSTR pBefore;
6671 LPCWSTR pAfter;
6672} SPVCONTEXT;
6673typedef struct SPVSTATE {
6674 SPVACTIONS eAction;
6675 WORD LangID;
6676 WORD wReserved;
6677 LONG EmphAdj;
6678 LONG RateAdj;
6679 ULONG Volume;
6680 SPVPITCH PitchAdj;
6681 ULONG SilenceMSecs;
6682 SPPHONEID *pPhoneIds;
6683 SPPARTOFSPEECH ePartOfSpeech;
6684 SPVCONTEXT Context;
6685} SPVSTATE;
6686typedef struct SPVOICESTATUS {
6687 ULONG ulCurrentStream;
6688 ULONG ulLastStreamQueued;
6689 HRESULT hrLastResult;
6690 DWORD dwRunningState;
6691 ULONG ulInputWordPos;
6692 ULONG ulInputWordLen;
6693 ULONG ulInputSentPos;
6694 ULONG ulInputSentLen;
6695 LONG lBookmarkId;
6696 SPPHONEID PhonemeId;
6697 SPVISEMES VisemeId;
6698 DWORD dwReserved1;
6699 DWORD dwReserved2;
6700} SPVOICESTATUS;
6701typedef enum SPEAKFLAGS {
6702 SPF_DEFAULT = 0,
6703 SPF_ASYNC = 1,
6704 SPF_PURGEBEFORESPEAK = 2,
6705 SPF_IS_FILENAME = 4,
6706 SPF_IS_XML = 8,
6707 SPF_IS_NOT_XML = 0x10,
6708 SPF_PERSIST_XML = 0x20,
6709 SPF_NLP_SPEAK_PUNC = 0x40,
6710 SPF_PARSE_SAPI = 0x80,
6711 SPF_PARSE_SSML = 0x100,
6712 SPF_PARSE_AUTODETECT = 0,
6713 SPF_NLP_MASK = SPF_NLP_SPEAK_PUNC,
6714 SPF_PARSE_MASK = SPF_PARSE_SAPI | SPF_PARSE_SSML,
6715 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,
6716 SPF_UNUSED_FLAGS = ~SPF_VOICE_MASK
6717} SPEAKFLAGS;
6718/*****************************************************************************
6719 * ISpVoice interface
6720 */
6721#ifndef __ISpVoice_INTERFACE_DEFINED__
6722#define __ISpVoice_INTERFACE_DEFINED__
6723
6724DEFINE_GUID(IID_ISpVoice, 0x6c44df74, 0x72b9, 0x4992, 0xa1,0xec, 0xef,0x99,0x6e,0x04,0x22,0xd4);
6725#if defined(__cplusplus) && !defined(CINTERFACE)
6726MIDL_INTERFACE("6c44df74-72b9-4992-a1ec-ef996e0422d4")
6727ISpVoice : public ISpEventSource
6728{
6729 virtual HRESULT STDMETHODCALLTYPE SetOutput(
6730 IUnknown *pUnkOutput,
6731 WINBOOL fAllowFormatChanges) = 0;
6732
6733 virtual HRESULT STDMETHODCALLTYPE GetOutputObjectToken(
6734 ISpObjectToken **ppObjectToken) = 0;
6735
6736 virtual HRESULT STDMETHODCALLTYPE GetOutputStream(
6737 ISpStreamFormat **ppStream) = 0;
6738
6739 virtual HRESULT STDMETHODCALLTYPE Pause(
6740 ) = 0;
6741
6742 virtual HRESULT STDMETHODCALLTYPE Resume(
6743 ) = 0;
6744
6745 virtual HRESULT STDMETHODCALLTYPE SetVoice(
6746 ISpObjectToken *pToken) = 0;
6747
6748 virtual HRESULT STDMETHODCALLTYPE GetVoice(
6749 ISpObjectToken **ppToken) = 0;
6750
6751 virtual HRESULT STDMETHODCALLTYPE Speak(
6752 LPCWSTR pwcs,
6753 DWORD dwFlags,
6754 ULONG *pulStreamNumber) = 0;
6755
6756 virtual HRESULT STDMETHODCALLTYPE SpeakStream(
6757 IStream *pStream,
6758 DWORD dwFlags,
6759 ULONG *pulStreamNumber) = 0;
6760
6761 virtual HRESULT STDMETHODCALLTYPE GetStatus(
6762 SPVOICESTATUS *pStatus,
6763 LPWSTR *ppszLastBookmark) = 0;
6764
6765 virtual HRESULT STDMETHODCALLTYPE Skip(
6766 LPCWSTR pItemType,
6767 LONG lNumItems,
6768 ULONG *pulNumSkipped) = 0;
6769
6770 virtual HRESULT STDMETHODCALLTYPE SetPriority(
6771 SPVPRIORITY ePriority) = 0;
6772
6773 virtual HRESULT STDMETHODCALLTYPE GetPriority(
6774 SPVPRIORITY *pePriority) = 0;
6775
6776 virtual HRESULT STDMETHODCALLTYPE SetAlertBoundary(
6777 SPEVENTENUM eBoundary) = 0;
6778
6779 virtual HRESULT STDMETHODCALLTYPE GetAlertBoundary(
6780 SPEVENTENUM *peBoundary) = 0;
6781
6782 virtual HRESULT STDMETHODCALLTYPE SetRate(
6783 LONG RateAdjust) = 0;
6784
6785 virtual HRESULT STDMETHODCALLTYPE GetRate(
6786 LONG *pRateAdjust) = 0;
6787
6788 virtual HRESULT STDMETHODCALLTYPE SetVolume(
6789 USHORT usVolume) = 0;
6790
6791 virtual HRESULT STDMETHODCALLTYPE GetVolume(
6792 USHORT *pusVolume) = 0;
6793
6794 virtual HRESULT STDMETHODCALLTYPE WaitUntilDone(
6795 ULONG msTimeout) = 0;
6796
6797 virtual HRESULT STDMETHODCALLTYPE SetSyncSpeakTimeout(
6798 ULONG msTimeout) = 0;
6799
6800 virtual HRESULT STDMETHODCALLTYPE GetSyncSpeakTimeout(
6801 ULONG *pmsTimeout) = 0;
6802
6803 virtual HANDLE STDMETHODCALLTYPE SpeakCompleteEvent(
6804 ) = 0;
6805
6806 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
6807 LPCWSTR pszTypeOfUI,
6808 void *pvExtraData,
6809 ULONG cbExtraData,
6810 WINBOOL *pfSupported) = 0;
6811
6812 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
6813 HWND hwndParent,
6814 LPCWSTR pszTitle,
6815 LPCWSTR pszTypeOfUI,
6816 void *pvExtraData,
6817 ULONG cbExtraData) = 0;
6818
6819};
6820#ifdef __CRT_UUID_DECL
6821__CRT_UUID_DECL(ISpVoice, 0x6c44df74, 0x72b9, 0x4992, 0xa1,0xec, 0xef,0x99,0x6e,0x04,0x22,0xd4)
6822#endif
6823#else
6824typedef struct ISpVoiceVtbl {
6825 BEGIN_INTERFACE
6826
6827 /*** IUnknown methods ***/
6828 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6829 ISpVoice *This,
6830 REFIID riid,
6831 void **ppvObject);
6832
6833 ULONG (STDMETHODCALLTYPE *AddRef)(
6834 ISpVoice *This);
6835
6836 ULONG (STDMETHODCALLTYPE *Release)(
6837 ISpVoice *This);
6838
6839 /*** ISpNotifySource methods ***/
6840 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
6841 ISpVoice *This,
6842 ISpNotifySink *pNotifySink);
6843
6844 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
6845 ISpVoice *This,
6846 HWND hWnd,
6847 UINT Msg,
6848 WPARAM wParam,
6849 LPARAM lParam);
6850
6851 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
6852 ISpVoice *This,
6853 SPNOTIFYCALLBACK *pfnCallback,
6854 WPARAM wParam,
6855 LPARAM lParam);
6856
6857 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
6858 ISpVoice *This,
6859 ISpNotifyCallback *pSpCallback,
6860 WPARAM wParam,
6861 LPARAM lParam);
6862
6863 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
6864 ISpVoice *This);
6865
6866 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
6867 ISpVoice *This,
6868 DWORD dwMilliseconds);
6869
6870 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
6871 ISpVoice *This);
6872
6873 /*** ISpEventSource methods ***/
6874 HRESULT (STDMETHODCALLTYPE *SetInterest)(
6875 ISpVoice *This,
6876 ULONGLONG ullEventInterest,
6877 ULONGLONG ullQueuedInterest);
6878
6879 HRESULT (STDMETHODCALLTYPE *GetEvents)(
6880 ISpVoice *This,
6881 ULONG ulCount,
6882 SPEVENT *pEventArray,
6883 ULONG *pulFetched);
6884
6885 HRESULT (STDMETHODCALLTYPE *GetInfo)(
6886 ISpVoice *This,
6887 SPEVENTSOURCEINFO *pInfo);
6888
6889 /*** ISpVoice methods ***/
6890 HRESULT (STDMETHODCALLTYPE *SetOutput)(
6891 ISpVoice *This,
6892 IUnknown *pUnkOutput,
6893 WINBOOL fAllowFormatChanges);
6894
6895 HRESULT (STDMETHODCALLTYPE *GetOutputObjectToken)(
6896 ISpVoice *This,
6897 ISpObjectToken **ppObjectToken);
6898
6899 HRESULT (STDMETHODCALLTYPE *GetOutputStream)(
6900 ISpVoice *This,
6901 ISpStreamFormat **ppStream);
6902
6903 HRESULT (STDMETHODCALLTYPE *Pause)(
6904 ISpVoice *This);
6905
6906 HRESULT (STDMETHODCALLTYPE *Resume)(
6907 ISpVoice *This);
6908
6909 HRESULT (STDMETHODCALLTYPE *SetVoice)(
6910 ISpVoice *This,
6911 ISpObjectToken *pToken);
6912
6913 HRESULT (STDMETHODCALLTYPE *GetVoice)(
6914 ISpVoice *This,
6915 ISpObjectToken **ppToken);
6916
6917 HRESULT (STDMETHODCALLTYPE *Speak)(
6918 ISpVoice *This,
6919 LPCWSTR pwcs,
6920 DWORD dwFlags,
6921 ULONG *pulStreamNumber);
6922
6923 HRESULT (STDMETHODCALLTYPE *SpeakStream)(
6924 ISpVoice *This,
6925 IStream *pStream,
6926 DWORD dwFlags,
6927 ULONG *pulStreamNumber);
6928
6929 HRESULT (STDMETHODCALLTYPE *GetStatus)(
6930 ISpVoice *This,
6931 SPVOICESTATUS *pStatus,
6932 LPWSTR *ppszLastBookmark);
6933
6934 HRESULT (STDMETHODCALLTYPE *Skip)(
6935 ISpVoice *This,
6936 LPCWSTR pItemType,
6937 LONG lNumItems,
6938 ULONG *pulNumSkipped);
6939
6940 HRESULT (STDMETHODCALLTYPE *SetPriority)(
6941 ISpVoice *This,
6942 SPVPRIORITY ePriority);
6943
6944 HRESULT (STDMETHODCALLTYPE *GetPriority)(
6945 ISpVoice *This,
6946 SPVPRIORITY *pePriority);
6947
6948 HRESULT (STDMETHODCALLTYPE *SetAlertBoundary)(
6949 ISpVoice *This,
6950 SPEVENTENUM eBoundary);
6951
6952 HRESULT (STDMETHODCALLTYPE *GetAlertBoundary)(
6953 ISpVoice *This,
6954 SPEVENTENUM *peBoundary);
6955
6956 HRESULT (STDMETHODCALLTYPE *SetRate)(
6957 ISpVoice *This,
6958 LONG RateAdjust);
6959
6960 HRESULT (STDMETHODCALLTYPE *GetRate)(
6961 ISpVoice *This,
6962 LONG *pRateAdjust);
6963
6964 HRESULT (STDMETHODCALLTYPE *SetVolume)(
6965 ISpVoice *This,
6966 USHORT usVolume);
6967
6968 HRESULT (STDMETHODCALLTYPE *GetVolume)(
6969 ISpVoice *This,
6970 USHORT *pusVolume);
6971
6972 HRESULT (STDMETHODCALLTYPE *WaitUntilDone)(
6973 ISpVoice *This,
6974 ULONG msTimeout);
6975
6976 HRESULT (STDMETHODCALLTYPE *SetSyncSpeakTimeout)(
6977 ISpVoice *This,
6978 ULONG msTimeout);
6979
6980 HRESULT (STDMETHODCALLTYPE *GetSyncSpeakTimeout)(
6981 ISpVoice *This,
6982 ULONG *pmsTimeout);
6983
6984 HANDLE (STDMETHODCALLTYPE *SpeakCompleteEvent)(
6985 ISpVoice *This);
6986
6987 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
6988 ISpVoice *This,
6989 LPCWSTR pszTypeOfUI,
6990 void *pvExtraData,
6991 ULONG cbExtraData,
6992 WINBOOL *pfSupported);
6993
6994 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
6995 ISpVoice *This,
6996 HWND hwndParent,
6997 LPCWSTR pszTitle,
6998 LPCWSTR pszTypeOfUI,
6999 void *pvExtraData,
7000 ULONG cbExtraData);
7001
7002 END_INTERFACE
7003} ISpVoiceVtbl;
7004
7005interface ISpVoice {
7006 CONST_VTBL ISpVoiceVtbl* lpVtbl;
7007};
7008
7009#ifdef COBJMACROS
7010#ifndef WIDL_C_INLINE_WRAPPERS
7011/*** IUnknown methods ***/
7012#define ISpVoice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7013#define ISpVoice_AddRef(This) (This)->lpVtbl->AddRef(This)
7014#define ISpVoice_Release(This) (This)->lpVtbl->Release(This)
7015/*** ISpNotifySource methods ***/
7016#define ISpVoice_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
7017#define ISpVoice_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
7018#define ISpVoice_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
7019#define ISpVoice_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
7020#define ISpVoice_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
7021#define ISpVoice_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
7022#define ISpVoice_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
7023/*** ISpEventSource methods ***/
7024#define ISpVoice_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
7025#define ISpVoice_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
7026#define ISpVoice_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
7027/*** ISpVoice methods ***/
7028#define ISpVoice_SetOutput(This,pUnkOutput,fAllowFormatChanges) (This)->lpVtbl->SetOutput(This,pUnkOutput,fAllowFormatChanges)
7029#define ISpVoice_GetOutputObjectToken(This,ppObjectToken) (This)->lpVtbl->GetOutputObjectToken(This,ppObjectToken)
7030#define ISpVoice_GetOutputStream(This,ppStream) (This)->lpVtbl->GetOutputStream(This,ppStream)
7031#define ISpVoice_Pause(This) (This)->lpVtbl->Pause(This)
7032#define ISpVoice_Resume(This) (This)->lpVtbl->Resume(This)
7033#define ISpVoice_SetVoice(This,pToken) (This)->lpVtbl->SetVoice(This,pToken)
7034#define ISpVoice_GetVoice(This,ppToken) (This)->lpVtbl->GetVoice(This,ppToken)
7035#define ISpVoice_Speak(This,pwcs,dwFlags,pulStreamNumber) (This)->lpVtbl->Speak(This,pwcs,dwFlags,pulStreamNumber)
7036#define ISpVoice_SpeakStream(This,pStream,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakStream(This,pStream,dwFlags,pulStreamNumber)
7037#define ISpVoice_GetStatus(This,pStatus,ppszLastBookmark) (This)->lpVtbl->GetStatus(This,pStatus,ppszLastBookmark)
7038#define ISpVoice_Skip(This,pItemType,lNumItems,pulNumSkipped) (This)->lpVtbl->Skip(This,pItemType,lNumItems,pulNumSkipped)
7039#define ISpVoice_SetPriority(This,ePriority) (This)->lpVtbl->SetPriority(This,ePriority)
7040#define ISpVoice_GetPriority(This,pePriority) (This)->lpVtbl->GetPriority(This,pePriority)
7041#define ISpVoice_SetAlertBoundary(This,eBoundary) (This)->lpVtbl->SetAlertBoundary(This,eBoundary)
7042#define ISpVoice_GetAlertBoundary(This,peBoundary) (This)->lpVtbl->GetAlertBoundary(This,peBoundary)
7043#define ISpVoice_SetRate(This,RateAdjust) (This)->lpVtbl->SetRate(This,RateAdjust)
7044#define ISpVoice_GetRate(This,pRateAdjust) (This)->lpVtbl->GetRate(This,pRateAdjust)
7045#define ISpVoice_SetVolume(This,usVolume) (This)->lpVtbl->SetVolume(This,usVolume)
7046#define ISpVoice_GetVolume(This,pusVolume) (This)->lpVtbl->GetVolume(This,pusVolume)
7047#define ISpVoice_WaitUntilDone(This,msTimeout) (This)->lpVtbl->WaitUntilDone(This,msTimeout)
7048#define ISpVoice_SetSyncSpeakTimeout(This,msTimeout) (This)->lpVtbl->SetSyncSpeakTimeout(This,msTimeout)
7049#define ISpVoice_GetSyncSpeakTimeout(This,pmsTimeout) (This)->lpVtbl->GetSyncSpeakTimeout(This,pmsTimeout)
7050#define ISpVoice_SpeakCompleteEvent(This) (This)->lpVtbl->SpeakCompleteEvent(This)
7051#define ISpVoice_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported)
7052#define ISpVoice_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData)
7053#else
7054/*** IUnknown methods ***/
7055static inline HRESULT ISpVoice_QueryInterface(ISpVoice* This,REFIID riid,void **ppvObject) {
7056 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7057}
7058static inline ULONG ISpVoice_AddRef(ISpVoice* This) {
7059 return This->lpVtbl->AddRef(This);
7060}
7061static inline ULONG ISpVoice_Release(ISpVoice* This) {
7062 return This->lpVtbl->Release(This);
7063}
7064/*** ISpNotifySource methods ***/
7065static inline HRESULT ISpVoice_SetNotifySink(ISpVoice* This,ISpNotifySink *pNotifySink) {
7066 return This->lpVtbl->SetNotifySink(This,pNotifySink);
7067}
7068static inline HRESULT ISpVoice_SetNotifyWindowMessage(ISpVoice* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
7069 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
7070}
7071static inline HRESULT ISpVoice_SetNotifyCallbackFunction(ISpVoice* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
7072 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
7073}
7074static inline HRESULT ISpVoice_SetNotifyCallbackInterface(ISpVoice* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
7075 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
7076}
7077static inline HRESULT ISpVoice_SetNotifyWin32Event(ISpVoice* This) {
7078 return This->lpVtbl->SetNotifyWin32Event(This);
7079}
7080static inline HRESULT ISpVoice_WaitForNotifyEvent(ISpVoice* This,DWORD dwMilliseconds) {
7081 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
7082}
7083static inline HANDLE ISpVoice_GetNotifyEventHandle(ISpVoice* This) {
7084 return This->lpVtbl->GetNotifyEventHandle(This);
7085}
7086/*** ISpEventSource methods ***/
7087static inline HRESULT ISpVoice_SetInterest(ISpVoice* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
7088 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
7089}
7090static inline HRESULT ISpVoice_GetEvents(ISpVoice* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
7091 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
7092}
7093static inline HRESULT ISpVoice_GetInfo(ISpVoice* This,SPEVENTSOURCEINFO *pInfo) {
7094 return This->lpVtbl->GetInfo(This,pInfo);
7095}
7096/*** ISpVoice methods ***/
7097static inline HRESULT ISpVoice_SetOutput(ISpVoice* This,IUnknown *pUnkOutput,WINBOOL fAllowFormatChanges) {
7098 return This->lpVtbl->SetOutput(This,pUnkOutput,fAllowFormatChanges);
7099}
7100static inline HRESULT ISpVoice_GetOutputObjectToken(ISpVoice* This,ISpObjectToken **ppObjectToken) {
7101 return This->lpVtbl->GetOutputObjectToken(This,ppObjectToken);
7102}
7103static inline HRESULT ISpVoice_GetOutputStream(ISpVoice* This,ISpStreamFormat **ppStream) {
7104 return This->lpVtbl->GetOutputStream(This,ppStream);
7105}
7106static inline HRESULT ISpVoice_Pause(ISpVoice* This) {
7107 return This->lpVtbl->Pause(This);
7108}
7109static inline HRESULT ISpVoice_Resume(ISpVoice* This) {
7110 return This->lpVtbl->Resume(This);
7111}
7112static inline HRESULT ISpVoice_SetVoice(ISpVoice* This,ISpObjectToken *pToken) {
7113 return This->lpVtbl->SetVoice(This,pToken);
7114}
7115static inline HRESULT ISpVoice_GetVoice(ISpVoice* This,ISpObjectToken **ppToken) {
7116 return This->lpVtbl->GetVoice(This,ppToken);
7117}
7118static inline HRESULT ISpVoice_Speak(ISpVoice* This,LPCWSTR pwcs,DWORD dwFlags,ULONG *pulStreamNumber) {
7119 return This->lpVtbl->Speak(This,pwcs,dwFlags,pulStreamNumber);
7120}
7121static inline HRESULT ISpVoice_SpeakStream(ISpVoice* This,IStream *pStream,DWORD dwFlags,ULONG *pulStreamNumber) {
7122 return This->lpVtbl->SpeakStream(This,pStream,dwFlags,pulStreamNumber);
7123}
7124static inline HRESULT ISpVoice_GetStatus(ISpVoice* This,SPVOICESTATUS *pStatus,LPWSTR *ppszLastBookmark) {
7125 return This->lpVtbl->GetStatus(This,pStatus,ppszLastBookmark);
7126}
7127static inline HRESULT ISpVoice_Skip(ISpVoice* This,LPCWSTR pItemType,LONG lNumItems,ULONG *pulNumSkipped) {
7128 return This->lpVtbl->Skip(This,pItemType,lNumItems,pulNumSkipped);
7129}
7130static inline HRESULT ISpVoice_SetPriority(ISpVoice* This,SPVPRIORITY ePriority) {
7131 return This->lpVtbl->SetPriority(This,ePriority);
7132}
7133static inline HRESULT ISpVoice_GetPriority(ISpVoice* This,SPVPRIORITY *pePriority) {
7134 return This->lpVtbl->GetPriority(This,pePriority);
7135}
7136static inline HRESULT ISpVoice_SetAlertBoundary(ISpVoice* This,SPEVENTENUM eBoundary) {
7137 return This->lpVtbl->SetAlertBoundary(This,eBoundary);
7138}
7139static inline HRESULT ISpVoice_GetAlertBoundary(ISpVoice* This,SPEVENTENUM *peBoundary) {
7140 return This->lpVtbl->GetAlertBoundary(This,peBoundary);
7141}
7142static inline HRESULT ISpVoice_SetRate(ISpVoice* This,LONG RateAdjust) {
7143 return This->lpVtbl->SetRate(This,RateAdjust);
7144}
7145static inline HRESULT ISpVoice_GetRate(ISpVoice* This,LONG *pRateAdjust) {
7146 return This->lpVtbl->GetRate(This,pRateAdjust);
7147}
7148static inline HRESULT ISpVoice_SetVolume(ISpVoice* This,USHORT usVolume) {
7149 return This->lpVtbl->SetVolume(This,usVolume);
7150}
7151static inline HRESULT ISpVoice_GetVolume(ISpVoice* This,USHORT *pusVolume) {
7152 return This->lpVtbl->GetVolume(This,pusVolume);
7153}
7154static inline HRESULT ISpVoice_WaitUntilDone(ISpVoice* This,ULONG msTimeout) {
7155 return This->lpVtbl->WaitUntilDone(This,msTimeout);
7156}
7157static inline HRESULT ISpVoice_SetSyncSpeakTimeout(ISpVoice* This,ULONG msTimeout) {
7158 return This->lpVtbl->SetSyncSpeakTimeout(This,msTimeout);
7159}
7160static inline HRESULT ISpVoice_GetSyncSpeakTimeout(ISpVoice* This,ULONG *pmsTimeout) {
7161 return This->lpVtbl->GetSyncSpeakTimeout(This,pmsTimeout);
7162}
7163static inline HANDLE ISpVoice_SpeakCompleteEvent(ISpVoice* This) {
7164 return This->lpVtbl->SpeakCompleteEvent(This);
7165}
7166static inline HRESULT ISpVoice_IsUISupported(ISpVoice* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,WINBOOL *pfSupported) {
7167 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported);
7168}
7169static inline HRESULT ISpVoice_DisplayUI(ISpVoice* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData) {
7170 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData);
7171}
7172#endif
7173#endif
7174
7175#endif
7176
7177
7178#endif /* __ISpVoice_INTERFACE_DEFINED__ */
7179
7180/*****************************************************************************
7181 * ISpPhrase interface
7182 */
7183#ifndef __ISpPhrase_INTERFACE_DEFINED__
7184#define __ISpPhrase_INTERFACE_DEFINED__
7185
7186DEFINE_GUID(IID_ISpPhrase, 0x1a5c0354, 0xb621, 0x4b5a, 0x87,0x91, 0xd3,0x06,0xed,0x37,0x9e,0x53);
7187#if defined(__cplusplus) && !defined(CINTERFACE)
7188MIDL_INTERFACE("1a5c0354-b621-4b5a-8791-d306ed379e53")
7189ISpPhrase : public IUnknown
7190{
7191 virtual HRESULT STDMETHODCALLTYPE GetPhrase(
7192 SPPHRASE **ppCoMemPhrase) = 0;
7193
7194 virtual HRESULT STDMETHODCALLTYPE GetSerializedPhrase(
7195 SPSERIALIZEDPHRASE **ppCoMemPhrase) = 0;
7196
7197 virtual HRESULT STDMETHODCALLTYPE GetText(
7198 ULONG ulStart,
7199 ULONG ulCount,
7200 WINBOOL fUseTextReplacements,
7201 LPWSTR *ppszCoMemText,
7202 BYTE *pbDisplayAttributes) = 0;
7203
7204 virtual HRESULT STDMETHODCALLTYPE Discard(
7205 DWORD dwValueTypes) = 0;
7206
7207};
7208#ifdef __CRT_UUID_DECL
7209__CRT_UUID_DECL(ISpPhrase, 0x1a5c0354, 0xb621, 0x4b5a, 0x87,0x91, 0xd3,0x06,0xed,0x37,0x9e,0x53)
7210#endif
7211#else
7212typedef struct ISpPhraseVtbl {
7213 BEGIN_INTERFACE
7214
7215 /*** IUnknown methods ***/
7216 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7217 ISpPhrase *This,
7218 REFIID riid,
7219 void **ppvObject);
7220
7221 ULONG (STDMETHODCALLTYPE *AddRef)(
7222 ISpPhrase *This);
7223
7224 ULONG (STDMETHODCALLTYPE *Release)(
7225 ISpPhrase *This);
7226
7227 /*** ISpPhrase methods ***/
7228 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7229 ISpPhrase *This,
7230 SPPHRASE **ppCoMemPhrase);
7231
7232 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7233 ISpPhrase *This,
7234 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7235
7236 HRESULT (STDMETHODCALLTYPE *GetText)(
7237 ISpPhrase *This,
7238 ULONG ulStart,
7239 ULONG ulCount,
7240 WINBOOL fUseTextReplacements,
7241 LPWSTR *ppszCoMemText,
7242 BYTE *pbDisplayAttributes);
7243
7244 HRESULT (STDMETHODCALLTYPE *Discard)(
7245 ISpPhrase *This,
7246 DWORD dwValueTypes);
7247
7248 END_INTERFACE
7249} ISpPhraseVtbl;
7250
7251interface ISpPhrase {
7252 CONST_VTBL ISpPhraseVtbl* lpVtbl;
7253};
7254
7255#ifdef COBJMACROS
7256#ifndef WIDL_C_INLINE_WRAPPERS
7257/*** IUnknown methods ***/
7258#define ISpPhrase_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7259#define ISpPhrase_AddRef(This) (This)->lpVtbl->AddRef(This)
7260#define ISpPhrase_Release(This) (This)->lpVtbl->Release(This)
7261/*** ISpPhrase methods ***/
7262#define ISpPhrase_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7263#define ISpPhrase_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7264#define ISpPhrase_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7265#define ISpPhrase_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7266#else
7267/*** IUnknown methods ***/
7268static inline HRESULT ISpPhrase_QueryInterface(ISpPhrase* This,REFIID riid,void **ppvObject) {
7269 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7270}
7271static inline ULONG ISpPhrase_AddRef(ISpPhrase* This) {
7272 return This->lpVtbl->AddRef(This);
7273}
7274static inline ULONG ISpPhrase_Release(ISpPhrase* This) {
7275 return This->lpVtbl->Release(This);
7276}
7277/*** ISpPhrase methods ***/
7278static inline HRESULT ISpPhrase_GetPhrase(ISpPhrase* This,SPPHRASE **ppCoMemPhrase) {
7279 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7280}
7281static inline HRESULT ISpPhrase_GetSerializedPhrase(ISpPhrase* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7282 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7283}
7284static inline HRESULT ISpPhrase_GetText(ISpPhrase* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7285 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7286}
7287static inline HRESULT ISpPhrase_Discard(ISpPhrase* This,DWORD dwValueTypes) {
7288 return This->lpVtbl->Discard(This,dwValueTypes);
7289}
7290#endif
7291#endif
7292
7293#endif
7294
7295
7296#endif /* __ISpPhrase_INTERFACE_DEFINED__ */
7297
7298/*****************************************************************************
7299 * ISpPhraseAlt interface
7300 */
7301#ifndef __ISpPhraseAlt_INTERFACE_DEFINED__
7302#define __ISpPhraseAlt_INTERFACE_DEFINED__
7303
7304DEFINE_GUID(IID_ISpPhraseAlt, 0x8fcebc98, 0x4e49, 0x4067, 0x9c,0x6c, 0xd8,0x6a,0x0e,0x09,0x2e,0x3d);
7305#if defined(__cplusplus) && !defined(CINTERFACE)
7306MIDL_INTERFACE("8fcebc98-4e49-4067-9c6c-d86a0e092e3d")
7307ISpPhraseAlt : public ISpPhrase
7308{
7309 virtual HRESULT STDMETHODCALLTYPE GetAltInfo(
7310 ISpPhrase **ppParent,
7311 ULONG *pulStartElementInParent,
7312 ULONG *pcElementsInParent,
7313 ULONG *pcElementsInAlt) = 0;
7314
7315 virtual HRESULT STDMETHODCALLTYPE Commit(
7316 ) = 0;
7317
7318};
7319#ifdef __CRT_UUID_DECL
7320__CRT_UUID_DECL(ISpPhraseAlt, 0x8fcebc98, 0x4e49, 0x4067, 0x9c,0x6c, 0xd8,0x6a,0x0e,0x09,0x2e,0x3d)
7321#endif
7322#else
7323typedef struct ISpPhraseAltVtbl {
7324 BEGIN_INTERFACE
7325
7326 /*** IUnknown methods ***/
7327 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7328 ISpPhraseAlt *This,
7329 REFIID riid,
7330 void **ppvObject);
7331
7332 ULONG (STDMETHODCALLTYPE *AddRef)(
7333 ISpPhraseAlt *This);
7334
7335 ULONG (STDMETHODCALLTYPE *Release)(
7336 ISpPhraseAlt *This);
7337
7338 /*** ISpPhrase methods ***/
7339 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7340 ISpPhraseAlt *This,
7341 SPPHRASE **ppCoMemPhrase);
7342
7343 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7344 ISpPhraseAlt *This,
7345 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7346
7347 HRESULT (STDMETHODCALLTYPE *GetText)(
7348 ISpPhraseAlt *This,
7349 ULONG ulStart,
7350 ULONG ulCount,
7351 WINBOOL fUseTextReplacements,
7352 LPWSTR *ppszCoMemText,
7353 BYTE *pbDisplayAttributes);
7354
7355 HRESULT (STDMETHODCALLTYPE *Discard)(
7356 ISpPhraseAlt *This,
7357 DWORD dwValueTypes);
7358
7359 /*** ISpPhraseAlt methods ***/
7360 HRESULT (STDMETHODCALLTYPE *GetAltInfo)(
7361 ISpPhraseAlt *This,
7362 ISpPhrase **ppParent,
7363 ULONG *pulStartElementInParent,
7364 ULONG *pcElementsInParent,
7365 ULONG *pcElementsInAlt);
7366
7367 HRESULT (STDMETHODCALLTYPE *Commit)(
7368 ISpPhraseAlt *This);
7369
7370 END_INTERFACE
7371} ISpPhraseAltVtbl;
7372
7373interface ISpPhraseAlt {
7374 CONST_VTBL ISpPhraseAltVtbl* lpVtbl;
7375};
7376
7377#ifdef COBJMACROS
7378#ifndef WIDL_C_INLINE_WRAPPERS
7379/*** IUnknown methods ***/
7380#define ISpPhraseAlt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7381#define ISpPhraseAlt_AddRef(This) (This)->lpVtbl->AddRef(This)
7382#define ISpPhraseAlt_Release(This) (This)->lpVtbl->Release(This)
7383/*** ISpPhrase methods ***/
7384#define ISpPhraseAlt_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7385#define ISpPhraseAlt_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7386#define ISpPhraseAlt_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7387#define ISpPhraseAlt_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7388/*** ISpPhraseAlt methods ***/
7389#define ISpPhraseAlt_GetAltInfo(This,ppParent,pulStartElementInParent,pcElementsInParent,pcElementsInAlt) (This)->lpVtbl->GetAltInfo(This,ppParent,pulStartElementInParent,pcElementsInParent,pcElementsInAlt)
7390#define ISpPhraseAlt_Commit(This) (This)->lpVtbl->Commit(This)
7391#else
7392/*** IUnknown methods ***/
7393static inline HRESULT ISpPhraseAlt_QueryInterface(ISpPhraseAlt* This,REFIID riid,void **ppvObject) {
7394 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7395}
7396static inline ULONG ISpPhraseAlt_AddRef(ISpPhraseAlt* This) {
7397 return This->lpVtbl->AddRef(This);
7398}
7399static inline ULONG ISpPhraseAlt_Release(ISpPhraseAlt* This) {
7400 return This->lpVtbl->Release(This);
7401}
7402/*** ISpPhrase methods ***/
7403static inline HRESULT ISpPhraseAlt_GetPhrase(ISpPhraseAlt* This,SPPHRASE **ppCoMemPhrase) {
7404 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7405}
7406static inline HRESULT ISpPhraseAlt_GetSerializedPhrase(ISpPhraseAlt* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7407 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7408}
7409static inline HRESULT ISpPhraseAlt_GetText(ISpPhraseAlt* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7410 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7411}
7412static inline HRESULT ISpPhraseAlt_Discard(ISpPhraseAlt* This,DWORD dwValueTypes) {
7413 return This->lpVtbl->Discard(This,dwValueTypes);
7414}
7415/*** ISpPhraseAlt methods ***/
7416static inline HRESULT ISpPhraseAlt_GetAltInfo(ISpPhraseAlt* This,ISpPhrase **ppParent,ULONG *pulStartElementInParent,ULONG *pcElementsInParent,ULONG *pcElementsInAlt) {
7417 return This->lpVtbl->GetAltInfo(This,ppParent,pulStartElementInParent,pcElementsInParent,pcElementsInAlt);
7418}
7419static inline HRESULT ISpPhraseAlt_Commit(ISpPhraseAlt* This) {
7420 return This->lpVtbl->Commit(This);
7421}
7422#endif
7423#endif
7424
7425#endif
7426
7427
7428#endif /* __ISpPhraseAlt_INTERFACE_DEFINED__ */
7429
7430typedef enum SPXMLRESULTOPTIONS {
7431 SPXRO_SML = 0,
7432 SPXRO_Alternates_SML = 1
7433} SPXMLRESULTOPTIONS;
7434/*****************************************************************************
7435 * ISpPhrase2 interface
7436 */
7437#ifndef __ISpPhrase2_INTERFACE_DEFINED__
7438#define __ISpPhrase2_INTERFACE_DEFINED__
7439
7440DEFINE_GUID(IID_ISpPhrase2, 0xf264da52, 0xe457, 0x4696, 0xb8,0x56, 0xa7,0x37,0xb7,0x17,0xaf,0x79);
7441#if defined(__cplusplus) && !defined(CINTERFACE)
7442MIDL_INTERFACE("f264da52-e457-4696-b856-a737b717af79")
7443ISpPhrase2 : public ISpPhrase
7444{
7445 virtual HRESULT STDMETHODCALLTYPE GetXMLResult(
7446 LPWSTR *ppszCoMemXMLResult,
7447 SPXMLRESULTOPTIONS Options) = 0;
7448
7449 virtual HRESULT STDMETHODCALLTYPE GetXMLErrorInfo(
7450 SPSEMANTICERRORINFO *pSemanticErrorInfo) = 0;
7451
7452 virtual HRESULT STDMETHODCALLTYPE GetAudio(
7453 ULONG ulStartElement,
7454 ULONG cElements,
7455 ISpStreamFormat **ppStream) = 0;
7456
7457};
7458#ifdef __CRT_UUID_DECL
7459__CRT_UUID_DECL(ISpPhrase2, 0xf264da52, 0xe457, 0x4696, 0xb8,0x56, 0xa7,0x37,0xb7,0x17,0xaf,0x79)
7460#endif
7461#else
7462typedef struct ISpPhrase2Vtbl {
7463 BEGIN_INTERFACE
7464
7465 /*** IUnknown methods ***/
7466 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7467 ISpPhrase2 *This,
7468 REFIID riid,
7469 void **ppvObject);
7470
7471 ULONG (STDMETHODCALLTYPE *AddRef)(
7472 ISpPhrase2 *This);
7473
7474 ULONG (STDMETHODCALLTYPE *Release)(
7475 ISpPhrase2 *This);
7476
7477 /*** ISpPhrase methods ***/
7478 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7479 ISpPhrase2 *This,
7480 SPPHRASE **ppCoMemPhrase);
7481
7482 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7483 ISpPhrase2 *This,
7484 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7485
7486 HRESULT (STDMETHODCALLTYPE *GetText)(
7487 ISpPhrase2 *This,
7488 ULONG ulStart,
7489 ULONG ulCount,
7490 WINBOOL fUseTextReplacements,
7491 LPWSTR *ppszCoMemText,
7492 BYTE *pbDisplayAttributes);
7493
7494 HRESULT (STDMETHODCALLTYPE *Discard)(
7495 ISpPhrase2 *This,
7496 DWORD dwValueTypes);
7497
7498 /*** ISpPhrase2 methods ***/
7499 HRESULT (STDMETHODCALLTYPE *GetXMLResult)(
7500 ISpPhrase2 *This,
7501 LPWSTR *ppszCoMemXMLResult,
7502 SPXMLRESULTOPTIONS Options);
7503
7504 HRESULT (STDMETHODCALLTYPE *GetXMLErrorInfo)(
7505 ISpPhrase2 *This,
7506 SPSEMANTICERRORINFO *pSemanticErrorInfo);
7507
7508 HRESULT (STDMETHODCALLTYPE *GetAudio)(
7509 ISpPhrase2 *This,
7510 ULONG ulStartElement,
7511 ULONG cElements,
7512 ISpStreamFormat **ppStream);
7513
7514 END_INTERFACE
7515} ISpPhrase2Vtbl;
7516
7517interface ISpPhrase2 {
7518 CONST_VTBL ISpPhrase2Vtbl* lpVtbl;
7519};
7520
7521#ifdef COBJMACROS
7522#ifndef WIDL_C_INLINE_WRAPPERS
7523/*** IUnknown methods ***/
7524#define ISpPhrase2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7525#define ISpPhrase2_AddRef(This) (This)->lpVtbl->AddRef(This)
7526#define ISpPhrase2_Release(This) (This)->lpVtbl->Release(This)
7527/*** ISpPhrase methods ***/
7528#define ISpPhrase2_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7529#define ISpPhrase2_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7530#define ISpPhrase2_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7531#define ISpPhrase2_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7532/*** ISpPhrase2 methods ***/
7533#define ISpPhrase2_GetXMLResult(This,ppszCoMemXMLResult,Options) (This)->lpVtbl->GetXMLResult(This,ppszCoMemXMLResult,Options)
7534#define ISpPhrase2_GetXMLErrorInfo(This,pSemanticErrorInfo) (This)->lpVtbl->GetXMLErrorInfo(This,pSemanticErrorInfo)
7535#define ISpPhrase2_GetAudio(This,ulStartElement,cElements,ppStream) (This)->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream)
7536#else
7537/*** IUnknown methods ***/
7538static inline HRESULT ISpPhrase2_QueryInterface(ISpPhrase2* This,REFIID riid,void **ppvObject) {
7539 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7540}
7541static inline ULONG ISpPhrase2_AddRef(ISpPhrase2* This) {
7542 return This->lpVtbl->AddRef(This);
7543}
7544static inline ULONG ISpPhrase2_Release(ISpPhrase2* This) {
7545 return This->lpVtbl->Release(This);
7546}
7547/*** ISpPhrase methods ***/
7548static inline HRESULT ISpPhrase2_GetPhrase(ISpPhrase2* This,SPPHRASE **ppCoMemPhrase) {
7549 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7550}
7551static inline HRESULT ISpPhrase2_GetSerializedPhrase(ISpPhrase2* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7552 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7553}
7554static inline HRESULT ISpPhrase2_GetText(ISpPhrase2* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7555 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7556}
7557static inline HRESULT ISpPhrase2_Discard(ISpPhrase2* This,DWORD dwValueTypes) {
7558 return This->lpVtbl->Discard(This,dwValueTypes);
7559}
7560/*** ISpPhrase2 methods ***/
7561static inline HRESULT ISpPhrase2_GetXMLResult(ISpPhrase2* This,LPWSTR *ppszCoMemXMLResult,SPXMLRESULTOPTIONS Options) {
7562 return This->lpVtbl->GetXMLResult(This,ppszCoMemXMLResult,Options);
7563}
7564static inline HRESULT ISpPhrase2_GetXMLErrorInfo(ISpPhrase2* This,SPSEMANTICERRORINFO *pSemanticErrorInfo) {
7565 return This->lpVtbl->GetXMLErrorInfo(This,pSemanticErrorInfo);
7566}
7567static inline HRESULT ISpPhrase2_GetAudio(ISpPhrase2* This,ULONG ulStartElement,ULONG cElements,ISpStreamFormat **ppStream) {
7568 return This->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream);
7569}
7570#endif
7571#endif
7572
7573#endif
7574
7575
7576#endif /* __ISpPhrase2_INTERFACE_DEFINED__ */
7577
7578typedef struct SPRECORESULTTIMES {
7579 FILETIME ftStreamTime;
7580 ULONGLONG ullLength;
7581 DWORD dwTickCount;
7582 ULONGLONG ullStart;
7583} SPRECORESULTTIMES;
7584typedef struct SPSERIALIZEDRESULT {
7585 ULONG ulSerializedSize;
7586} SPSERIALIZEDRESULT;
7587/*****************************************************************************
7588 * ISpRecoResult interface
7589 */
7590#ifndef __ISpRecoResult_INTERFACE_DEFINED__
7591#define __ISpRecoResult_INTERFACE_DEFINED__
7592
7593DEFINE_GUID(IID_ISpRecoResult, 0x20b053be, 0xe235, 0x43cd, 0x9a,0x2a, 0x8d,0x17,0xa4,0x8b,0x78,0x42);
7594#if defined(__cplusplus) && !defined(CINTERFACE)
7595MIDL_INTERFACE("20b053be-e235-43cd-9a2a-8d17a48b7842")
7596ISpRecoResult : public ISpPhrase
7597{
7598 virtual HRESULT STDMETHODCALLTYPE GetResultTimes(
7599 SPRECORESULTTIMES *pTimes) = 0;
7600
7601 virtual HRESULT STDMETHODCALLTYPE GetAlternates(
7602 ULONG ulStartElement,
7603 ULONG cElements,
7604 ULONG ulRequestCount,
7605 ISpPhraseAlt **ppPhrases,
7606 ULONG *pcPhrasesReturned) = 0;
7607
7608 virtual HRESULT STDMETHODCALLTYPE GetAudio(
7609 ULONG ulStartElement,
7610 ULONG cElements,
7611 ISpStreamFormat **ppStream) = 0;
7612
7613 virtual HRESULT STDMETHODCALLTYPE SpeakAudio(
7614 ULONG ulStartElement,
7615 ULONG cElements,
7616 DWORD dwFlags,
7617 ULONG *pulStreamNumber) = 0;
7618
7619 virtual HRESULT STDMETHODCALLTYPE Serialize(
7620 SPSERIALIZEDRESULT **ppCoMemSerializedResult) = 0;
7621
7622 virtual HRESULT STDMETHODCALLTYPE ScaleAudio(
7623 const GUID *pAudioFormatId,
7624 const WAVEFORMATEX *pWaveFormatEx) = 0;
7625
7626 virtual HRESULT STDMETHODCALLTYPE GetRecoContext(
7627 ISpRecoContext **ppRecoContext) = 0;
7628
7629};
7630#ifdef __CRT_UUID_DECL
7631__CRT_UUID_DECL(ISpRecoResult, 0x20b053be, 0xe235, 0x43cd, 0x9a,0x2a, 0x8d,0x17,0xa4,0x8b,0x78,0x42)
7632#endif
7633#else
7634typedef struct ISpRecoResultVtbl {
7635 BEGIN_INTERFACE
7636
7637 /*** IUnknown methods ***/
7638 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7639 ISpRecoResult *This,
7640 REFIID riid,
7641 void **ppvObject);
7642
7643 ULONG (STDMETHODCALLTYPE *AddRef)(
7644 ISpRecoResult *This);
7645
7646 ULONG (STDMETHODCALLTYPE *Release)(
7647 ISpRecoResult *This);
7648
7649 /*** ISpPhrase methods ***/
7650 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7651 ISpRecoResult *This,
7652 SPPHRASE **ppCoMemPhrase);
7653
7654 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7655 ISpRecoResult *This,
7656 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7657
7658 HRESULT (STDMETHODCALLTYPE *GetText)(
7659 ISpRecoResult *This,
7660 ULONG ulStart,
7661 ULONG ulCount,
7662 WINBOOL fUseTextReplacements,
7663 LPWSTR *ppszCoMemText,
7664 BYTE *pbDisplayAttributes);
7665
7666 HRESULT (STDMETHODCALLTYPE *Discard)(
7667 ISpRecoResult *This,
7668 DWORD dwValueTypes);
7669
7670 /*** ISpRecoResult methods ***/
7671 HRESULT (STDMETHODCALLTYPE *GetResultTimes)(
7672 ISpRecoResult *This,
7673 SPRECORESULTTIMES *pTimes);
7674
7675 HRESULT (STDMETHODCALLTYPE *GetAlternates)(
7676 ISpRecoResult *This,
7677 ULONG ulStartElement,
7678 ULONG cElements,
7679 ULONG ulRequestCount,
7680 ISpPhraseAlt **ppPhrases,
7681 ULONG *pcPhrasesReturned);
7682
7683 HRESULT (STDMETHODCALLTYPE *GetAudio)(
7684 ISpRecoResult *This,
7685 ULONG ulStartElement,
7686 ULONG cElements,
7687 ISpStreamFormat **ppStream);
7688
7689 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
7690 ISpRecoResult *This,
7691 ULONG ulStartElement,
7692 ULONG cElements,
7693 DWORD dwFlags,
7694 ULONG *pulStreamNumber);
7695
7696 HRESULT (STDMETHODCALLTYPE *Serialize)(
7697 ISpRecoResult *This,
7698 SPSERIALIZEDRESULT **ppCoMemSerializedResult);
7699
7700 HRESULT (STDMETHODCALLTYPE *ScaleAudio)(
7701 ISpRecoResult *This,
7702 const GUID *pAudioFormatId,
7703 const WAVEFORMATEX *pWaveFormatEx);
7704
7705 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
7706 ISpRecoResult *This,
7707 ISpRecoContext **ppRecoContext);
7708
7709 END_INTERFACE
7710} ISpRecoResultVtbl;
7711
7712interface ISpRecoResult {
7713 CONST_VTBL ISpRecoResultVtbl* lpVtbl;
7714};
7715
7716#ifdef COBJMACROS
7717#ifndef WIDL_C_INLINE_WRAPPERS
7718/*** IUnknown methods ***/
7719#define ISpRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7720#define ISpRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
7721#define ISpRecoResult_Release(This) (This)->lpVtbl->Release(This)
7722/*** ISpPhrase methods ***/
7723#define ISpRecoResult_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7724#define ISpRecoResult_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7725#define ISpRecoResult_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7726#define ISpRecoResult_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7727/*** ISpRecoResult methods ***/
7728#define ISpRecoResult_GetResultTimes(This,pTimes) (This)->lpVtbl->GetResultTimes(This,pTimes)
7729#define ISpRecoResult_GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned) (This)->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned)
7730#define ISpRecoResult_GetAudio(This,ulStartElement,cElements,ppStream) (This)->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream)
7731#define ISpRecoResult_SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber)
7732#define ISpRecoResult_Serialize(This,ppCoMemSerializedResult) (This)->lpVtbl->Serialize(This,ppCoMemSerializedResult)
7733#define ISpRecoResult_ScaleAudio(This,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx)
7734#define ISpRecoResult_GetRecoContext(This,ppRecoContext) (This)->lpVtbl->GetRecoContext(This,ppRecoContext)
7735#else
7736/*** IUnknown methods ***/
7737static inline HRESULT ISpRecoResult_QueryInterface(ISpRecoResult* This,REFIID riid,void **ppvObject) {
7738 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7739}
7740static inline ULONG ISpRecoResult_AddRef(ISpRecoResult* This) {
7741 return This->lpVtbl->AddRef(This);
7742}
7743static inline ULONG ISpRecoResult_Release(ISpRecoResult* This) {
7744 return This->lpVtbl->Release(This);
7745}
7746/*** ISpPhrase methods ***/
7747static inline HRESULT ISpRecoResult_GetPhrase(ISpRecoResult* This,SPPHRASE **ppCoMemPhrase) {
7748 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7749}
7750static inline HRESULT ISpRecoResult_GetSerializedPhrase(ISpRecoResult* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7751 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7752}
7753static inline HRESULT ISpRecoResult_GetText(ISpRecoResult* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7754 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7755}
7756static inline HRESULT ISpRecoResult_Discard(ISpRecoResult* This,DWORD dwValueTypes) {
7757 return This->lpVtbl->Discard(This,dwValueTypes);
7758}
7759/*** ISpRecoResult methods ***/
7760static inline HRESULT ISpRecoResult_GetResultTimes(ISpRecoResult* This,SPRECORESULTTIMES *pTimes) {
7761 return This->lpVtbl->GetResultTimes(This,pTimes);
7762}
7763static inline HRESULT ISpRecoResult_GetAlternates(ISpRecoResult* This,ULONG ulStartElement,ULONG cElements,ULONG ulRequestCount,ISpPhraseAlt **ppPhrases,ULONG *pcPhrasesReturned) {
7764 return This->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned);
7765}
7766static inline HRESULT ISpRecoResult_GetAudio(ISpRecoResult* This,ULONG ulStartElement,ULONG cElements,ISpStreamFormat **ppStream) {
7767 return This->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream);
7768}
7769static inline HRESULT ISpRecoResult_SpeakAudio(ISpRecoResult* This,ULONG ulStartElement,ULONG cElements,DWORD dwFlags,ULONG *pulStreamNumber) {
7770 return This->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber);
7771}
7772static inline HRESULT ISpRecoResult_Serialize(ISpRecoResult* This,SPSERIALIZEDRESULT **ppCoMemSerializedResult) {
7773 return This->lpVtbl->Serialize(This,ppCoMemSerializedResult);
7774}
7775static inline HRESULT ISpRecoResult_ScaleAudio(ISpRecoResult* This,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
7776 return This->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx);
7777}
7778static inline HRESULT ISpRecoResult_GetRecoContext(ISpRecoResult* This,ISpRecoContext **ppRecoContext) {
7779 return This->lpVtbl->GetRecoContext(This,ppRecoContext);
7780}
7781#endif
7782#endif
7783
7784#endif
7785
7786
7787#endif /* __ISpRecoResult_INTERFACE_DEFINED__ */
7788
7789typedef enum SPCOMMITFLAGS {
7790 SPCF_NONE = 0,
7791 SPCF_ADD_TO_USER_LEXICON = 1 << 0,
7792 SPCF_DEFINITE_CORRECTION = 1 << 1
7793} SPCOMMITFLAGS;
7794/*****************************************************************************
7795 * ISpRecoResult2 interface
7796 */
7797#ifndef __ISpRecoResult2_INTERFACE_DEFINED__
7798#define __ISpRecoResult2_INTERFACE_DEFINED__
7799
7800DEFINE_GUID(IID_ISpRecoResult2, 0x27cac6c4, 0x88f2, 0x41f2, 0x88,0x17, 0x0c,0x95,0xe5,0x9f,0x1e,0x6e);
7801#if defined(__cplusplus) && !defined(CINTERFACE)
7802MIDL_INTERFACE("27cac6c4-88f2-41f2-8817-0c95e59f1e6e")
7803ISpRecoResult2 : public ISpRecoResult
7804{
7805 virtual HRESULT STDMETHODCALLTYPE CommitAlternate(
7806 ISpPhraseAlt *pPhraseAlt,
7807 ISpRecoResult **ppNewResult) = 0;
7808
7809 virtual HRESULT STDMETHODCALLTYPE CommitText(
7810 ULONG ulStartElement,
7811 ULONG cElements,
7812 LPCWSTR pszCorrectedData,
7813 DWORD eCommitFlags) = 0;
7814
7815 virtual HRESULT STDMETHODCALLTYPE SetTextFeedback(
7816 LPCWSTR pszFeedback,
7817 WINBOOL fSuccessful) = 0;
7818
7819};
7820#ifdef __CRT_UUID_DECL
7821__CRT_UUID_DECL(ISpRecoResult2, 0x27cac6c4, 0x88f2, 0x41f2, 0x88,0x17, 0x0c,0x95,0xe5,0x9f,0x1e,0x6e)
7822#endif
7823#else
7824typedef struct ISpRecoResult2Vtbl {
7825 BEGIN_INTERFACE
7826
7827 /*** IUnknown methods ***/
7828 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7829 ISpRecoResult2 *This,
7830 REFIID riid,
7831 void **ppvObject);
7832
7833 ULONG (STDMETHODCALLTYPE *AddRef)(
7834 ISpRecoResult2 *This);
7835
7836 ULONG (STDMETHODCALLTYPE *Release)(
7837 ISpRecoResult2 *This);
7838
7839 /*** ISpPhrase methods ***/
7840 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
7841 ISpRecoResult2 *This,
7842 SPPHRASE **ppCoMemPhrase);
7843
7844 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
7845 ISpRecoResult2 *This,
7846 SPSERIALIZEDPHRASE **ppCoMemPhrase);
7847
7848 HRESULT (STDMETHODCALLTYPE *GetText)(
7849 ISpRecoResult2 *This,
7850 ULONG ulStart,
7851 ULONG ulCount,
7852 WINBOOL fUseTextReplacements,
7853 LPWSTR *ppszCoMemText,
7854 BYTE *pbDisplayAttributes);
7855
7856 HRESULT (STDMETHODCALLTYPE *Discard)(
7857 ISpRecoResult2 *This,
7858 DWORD dwValueTypes);
7859
7860 /*** ISpRecoResult methods ***/
7861 HRESULT (STDMETHODCALLTYPE *GetResultTimes)(
7862 ISpRecoResult2 *This,
7863 SPRECORESULTTIMES *pTimes);
7864
7865 HRESULT (STDMETHODCALLTYPE *GetAlternates)(
7866 ISpRecoResult2 *This,
7867 ULONG ulStartElement,
7868 ULONG cElements,
7869 ULONG ulRequestCount,
7870 ISpPhraseAlt **ppPhrases,
7871 ULONG *pcPhrasesReturned);
7872
7873 HRESULT (STDMETHODCALLTYPE *GetAudio)(
7874 ISpRecoResult2 *This,
7875 ULONG ulStartElement,
7876 ULONG cElements,
7877 ISpStreamFormat **ppStream);
7878
7879 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
7880 ISpRecoResult2 *This,
7881 ULONG ulStartElement,
7882 ULONG cElements,
7883 DWORD dwFlags,
7884 ULONG *pulStreamNumber);
7885
7886 HRESULT (STDMETHODCALLTYPE *Serialize)(
7887 ISpRecoResult2 *This,
7888 SPSERIALIZEDRESULT **ppCoMemSerializedResult);
7889
7890 HRESULT (STDMETHODCALLTYPE *ScaleAudio)(
7891 ISpRecoResult2 *This,
7892 const GUID *pAudioFormatId,
7893 const WAVEFORMATEX *pWaveFormatEx);
7894
7895 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
7896 ISpRecoResult2 *This,
7897 ISpRecoContext **ppRecoContext);
7898
7899 /*** ISpRecoResult2 methods ***/
7900 HRESULT (STDMETHODCALLTYPE *CommitAlternate)(
7901 ISpRecoResult2 *This,
7902 ISpPhraseAlt *pPhraseAlt,
7903 ISpRecoResult **ppNewResult);
7904
7905 HRESULT (STDMETHODCALLTYPE *CommitText)(
7906 ISpRecoResult2 *This,
7907 ULONG ulStartElement,
7908 ULONG cElements,
7909 LPCWSTR pszCorrectedData,
7910 DWORD eCommitFlags);
7911
7912 HRESULT (STDMETHODCALLTYPE *SetTextFeedback)(
7913 ISpRecoResult2 *This,
7914 LPCWSTR pszFeedback,
7915 WINBOOL fSuccessful);
7916
7917 END_INTERFACE
7918} ISpRecoResult2Vtbl;
7919
7920interface ISpRecoResult2 {
7921 CONST_VTBL ISpRecoResult2Vtbl* lpVtbl;
7922};
7923
7924#ifdef COBJMACROS
7925#ifndef WIDL_C_INLINE_WRAPPERS
7926/*** IUnknown methods ***/
7927#define ISpRecoResult2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7928#define ISpRecoResult2_AddRef(This) (This)->lpVtbl->AddRef(This)
7929#define ISpRecoResult2_Release(This) (This)->lpVtbl->Release(This)
7930/*** ISpPhrase methods ***/
7931#define ISpRecoResult2_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
7932#define ISpRecoResult2_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
7933#define ISpRecoResult2_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
7934#define ISpRecoResult2_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
7935/*** ISpRecoResult methods ***/
7936#define ISpRecoResult2_GetResultTimes(This,pTimes) (This)->lpVtbl->GetResultTimes(This,pTimes)
7937#define ISpRecoResult2_GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned) (This)->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned)
7938#define ISpRecoResult2_GetAudio(This,ulStartElement,cElements,ppStream) (This)->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream)
7939#define ISpRecoResult2_SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber)
7940#define ISpRecoResult2_Serialize(This,ppCoMemSerializedResult) (This)->lpVtbl->Serialize(This,ppCoMemSerializedResult)
7941#define ISpRecoResult2_ScaleAudio(This,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx)
7942#define ISpRecoResult2_GetRecoContext(This,ppRecoContext) (This)->lpVtbl->GetRecoContext(This,ppRecoContext)
7943/*** ISpRecoResult2 methods ***/
7944#define ISpRecoResult2_CommitAlternate(This,pPhraseAlt,ppNewResult) (This)->lpVtbl->CommitAlternate(This,pPhraseAlt,ppNewResult)
7945#define ISpRecoResult2_CommitText(This,ulStartElement,cElements,pszCorrectedData,eCommitFlags) (This)->lpVtbl->CommitText(This,ulStartElement,cElements,pszCorrectedData,eCommitFlags)
7946#define ISpRecoResult2_SetTextFeedback(This,pszFeedback,fSuccessful) (This)->lpVtbl->SetTextFeedback(This,pszFeedback,fSuccessful)
7947#else
7948/*** IUnknown methods ***/
7949static inline HRESULT ISpRecoResult2_QueryInterface(ISpRecoResult2* This,REFIID riid,void **ppvObject) {
7950 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7951}
7952static inline ULONG ISpRecoResult2_AddRef(ISpRecoResult2* This) {
7953 return This->lpVtbl->AddRef(This);
7954}
7955static inline ULONG ISpRecoResult2_Release(ISpRecoResult2* This) {
7956 return This->lpVtbl->Release(This);
7957}
7958/*** ISpPhrase methods ***/
7959static inline HRESULT ISpRecoResult2_GetPhrase(ISpRecoResult2* This,SPPHRASE **ppCoMemPhrase) {
7960 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
7961}
7962static inline HRESULT ISpRecoResult2_GetSerializedPhrase(ISpRecoResult2* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
7963 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
7964}
7965static inline HRESULT ISpRecoResult2_GetText(ISpRecoResult2* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
7966 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
7967}
7968static inline HRESULT ISpRecoResult2_Discard(ISpRecoResult2* This,DWORD dwValueTypes) {
7969 return This->lpVtbl->Discard(This,dwValueTypes);
7970}
7971/*** ISpRecoResult methods ***/
7972static inline HRESULT ISpRecoResult2_GetResultTimes(ISpRecoResult2* This,SPRECORESULTTIMES *pTimes) {
7973 return This->lpVtbl->GetResultTimes(This,pTimes);
7974}
7975static inline HRESULT ISpRecoResult2_GetAlternates(ISpRecoResult2* This,ULONG ulStartElement,ULONG cElements,ULONG ulRequestCount,ISpPhraseAlt **ppPhrases,ULONG *pcPhrasesReturned) {
7976 return This->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned);
7977}
7978static inline HRESULT ISpRecoResult2_GetAudio(ISpRecoResult2* This,ULONG ulStartElement,ULONG cElements,ISpStreamFormat **ppStream) {
7979 return This->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream);
7980}
7981static inline HRESULT ISpRecoResult2_SpeakAudio(ISpRecoResult2* This,ULONG ulStartElement,ULONG cElements,DWORD dwFlags,ULONG *pulStreamNumber) {
7982 return This->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber);
7983}
7984static inline HRESULT ISpRecoResult2_Serialize(ISpRecoResult2* This,SPSERIALIZEDRESULT **ppCoMemSerializedResult) {
7985 return This->lpVtbl->Serialize(This,ppCoMemSerializedResult);
7986}
7987static inline HRESULT ISpRecoResult2_ScaleAudio(ISpRecoResult2* This,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
7988 return This->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx);
7989}
7990static inline HRESULT ISpRecoResult2_GetRecoContext(ISpRecoResult2* This,ISpRecoContext **ppRecoContext) {
7991 return This->lpVtbl->GetRecoContext(This,ppRecoContext);
7992}
7993/*** ISpRecoResult2 methods ***/
7994static inline HRESULT ISpRecoResult2_CommitAlternate(ISpRecoResult2* This,ISpPhraseAlt *pPhraseAlt,ISpRecoResult **ppNewResult) {
7995 return This->lpVtbl->CommitAlternate(This,pPhraseAlt,ppNewResult);
7996}
7997static inline HRESULT ISpRecoResult2_CommitText(ISpRecoResult2* This,ULONG ulStartElement,ULONG cElements,LPCWSTR pszCorrectedData,DWORD eCommitFlags) {
7998 return This->lpVtbl->CommitText(This,ulStartElement,cElements,pszCorrectedData,eCommitFlags);
7999}
8000static inline HRESULT ISpRecoResult2_SetTextFeedback(ISpRecoResult2* This,LPCWSTR pszFeedback,WINBOOL fSuccessful) {
8001 return This->lpVtbl->SetTextFeedback(This,pszFeedback,fSuccessful);
8002}
8003#endif
8004#endif
8005
8006#endif
8007
8008
8009#endif /* __ISpRecoResult2_INTERFACE_DEFINED__ */
8010
8011/*****************************************************************************
8012 * ISpXMLRecoResult interface
8013 */
8014#ifndef __ISpXMLRecoResult_INTERFACE_DEFINED__
8015#define __ISpXMLRecoResult_INTERFACE_DEFINED__
8016
8017DEFINE_GUID(IID_ISpXMLRecoResult, 0xae39362b, 0x45a8, 0x4074, 0x9b,0x9e, 0xcc,0xf4,0x9a,0xa2,0xd0,0xb6);
8018#if defined(__cplusplus) && !defined(CINTERFACE)
8019MIDL_INTERFACE("ae39362b-45a8-4074-9b9e-ccf49aa2d0b6")
8020ISpXMLRecoResult : public ISpRecoResult
8021{
8022 virtual HRESULT STDMETHODCALLTYPE GetXMLResult(
8023 LPWSTR *ppszCoMemXMLResult,
8024 SPXMLRESULTOPTIONS Options) = 0;
8025
8026 virtual HRESULT STDMETHODCALLTYPE GetXMLErrorInfo(
8027 SPSEMANTICERRORINFO *pSemanticErrorInfo) = 0;
8028
8029};
8030#ifdef __CRT_UUID_DECL
8031__CRT_UUID_DECL(ISpXMLRecoResult, 0xae39362b, 0x45a8, 0x4074, 0x9b,0x9e, 0xcc,0xf4,0x9a,0xa2,0xd0,0xb6)
8032#endif
8033#else
8034typedef struct ISpXMLRecoResultVtbl {
8035 BEGIN_INTERFACE
8036
8037 /*** IUnknown methods ***/
8038 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8039 ISpXMLRecoResult *This,
8040 REFIID riid,
8041 void **ppvObject);
8042
8043 ULONG (STDMETHODCALLTYPE *AddRef)(
8044 ISpXMLRecoResult *This);
8045
8046 ULONG (STDMETHODCALLTYPE *Release)(
8047 ISpXMLRecoResult *This);
8048
8049 /*** ISpPhrase methods ***/
8050 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
8051 ISpXMLRecoResult *This,
8052 SPPHRASE **ppCoMemPhrase);
8053
8054 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
8055 ISpXMLRecoResult *This,
8056 SPSERIALIZEDPHRASE **ppCoMemPhrase);
8057
8058 HRESULT (STDMETHODCALLTYPE *GetText)(
8059 ISpXMLRecoResult *This,
8060 ULONG ulStart,
8061 ULONG ulCount,
8062 WINBOOL fUseTextReplacements,
8063 LPWSTR *ppszCoMemText,
8064 BYTE *pbDisplayAttributes);
8065
8066 HRESULT (STDMETHODCALLTYPE *Discard)(
8067 ISpXMLRecoResult *This,
8068 DWORD dwValueTypes);
8069
8070 /*** ISpRecoResult methods ***/
8071 HRESULT (STDMETHODCALLTYPE *GetResultTimes)(
8072 ISpXMLRecoResult *This,
8073 SPRECORESULTTIMES *pTimes);
8074
8075 HRESULT (STDMETHODCALLTYPE *GetAlternates)(
8076 ISpXMLRecoResult *This,
8077 ULONG ulStartElement,
8078 ULONG cElements,
8079 ULONG ulRequestCount,
8080 ISpPhraseAlt **ppPhrases,
8081 ULONG *pcPhrasesReturned);
8082
8083 HRESULT (STDMETHODCALLTYPE *GetAudio)(
8084 ISpXMLRecoResult *This,
8085 ULONG ulStartElement,
8086 ULONG cElements,
8087 ISpStreamFormat **ppStream);
8088
8089 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
8090 ISpXMLRecoResult *This,
8091 ULONG ulStartElement,
8092 ULONG cElements,
8093 DWORD dwFlags,
8094 ULONG *pulStreamNumber);
8095
8096 HRESULT (STDMETHODCALLTYPE *Serialize)(
8097 ISpXMLRecoResult *This,
8098 SPSERIALIZEDRESULT **ppCoMemSerializedResult);
8099
8100 HRESULT (STDMETHODCALLTYPE *ScaleAudio)(
8101 ISpXMLRecoResult *This,
8102 const GUID *pAudioFormatId,
8103 const WAVEFORMATEX *pWaveFormatEx);
8104
8105 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
8106 ISpXMLRecoResult *This,
8107 ISpRecoContext **ppRecoContext);
8108
8109 /*** ISpXMLRecoResult methods ***/
8110 HRESULT (STDMETHODCALLTYPE *GetXMLResult)(
8111 ISpXMLRecoResult *This,
8112 LPWSTR *ppszCoMemXMLResult,
8113 SPXMLRESULTOPTIONS Options);
8114
8115 HRESULT (STDMETHODCALLTYPE *GetXMLErrorInfo)(
8116 ISpXMLRecoResult *This,
8117 SPSEMANTICERRORINFO *pSemanticErrorInfo);
8118
8119 END_INTERFACE
8120} ISpXMLRecoResultVtbl;
8121
8122interface ISpXMLRecoResult {
8123 CONST_VTBL ISpXMLRecoResultVtbl* lpVtbl;
8124};
8125
8126#ifdef COBJMACROS
8127#ifndef WIDL_C_INLINE_WRAPPERS
8128/*** IUnknown methods ***/
8129#define ISpXMLRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8130#define ISpXMLRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
8131#define ISpXMLRecoResult_Release(This) (This)->lpVtbl->Release(This)
8132/*** ISpPhrase methods ***/
8133#define ISpXMLRecoResult_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
8134#define ISpXMLRecoResult_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
8135#define ISpXMLRecoResult_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
8136#define ISpXMLRecoResult_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
8137/*** ISpRecoResult methods ***/
8138#define ISpXMLRecoResult_GetResultTimes(This,pTimes) (This)->lpVtbl->GetResultTimes(This,pTimes)
8139#define ISpXMLRecoResult_GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned) (This)->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned)
8140#define ISpXMLRecoResult_GetAudio(This,ulStartElement,cElements,ppStream) (This)->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream)
8141#define ISpXMLRecoResult_SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber)
8142#define ISpXMLRecoResult_Serialize(This,ppCoMemSerializedResult) (This)->lpVtbl->Serialize(This,ppCoMemSerializedResult)
8143#define ISpXMLRecoResult_ScaleAudio(This,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx)
8144#define ISpXMLRecoResult_GetRecoContext(This,ppRecoContext) (This)->lpVtbl->GetRecoContext(This,ppRecoContext)
8145/*** ISpXMLRecoResult methods ***/
8146#define ISpXMLRecoResult_GetXMLResult(This,ppszCoMemXMLResult,Options) (This)->lpVtbl->GetXMLResult(This,ppszCoMemXMLResult,Options)
8147#define ISpXMLRecoResult_GetXMLErrorInfo(This,pSemanticErrorInfo) (This)->lpVtbl->GetXMLErrorInfo(This,pSemanticErrorInfo)
8148#else
8149/*** IUnknown methods ***/
8150static inline HRESULT ISpXMLRecoResult_QueryInterface(ISpXMLRecoResult* This,REFIID riid,void **ppvObject) {
8151 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8152}
8153static inline ULONG ISpXMLRecoResult_AddRef(ISpXMLRecoResult* This) {
8154 return This->lpVtbl->AddRef(This);
8155}
8156static inline ULONG ISpXMLRecoResult_Release(ISpXMLRecoResult* This) {
8157 return This->lpVtbl->Release(This);
8158}
8159/*** ISpPhrase methods ***/
8160static inline HRESULT ISpXMLRecoResult_GetPhrase(ISpXMLRecoResult* This,SPPHRASE **ppCoMemPhrase) {
8161 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
8162}
8163static inline HRESULT ISpXMLRecoResult_GetSerializedPhrase(ISpXMLRecoResult* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
8164 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
8165}
8166static inline HRESULT ISpXMLRecoResult_GetText(ISpXMLRecoResult* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
8167 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
8168}
8169static inline HRESULT ISpXMLRecoResult_Discard(ISpXMLRecoResult* This,DWORD dwValueTypes) {
8170 return This->lpVtbl->Discard(This,dwValueTypes);
8171}
8172/*** ISpRecoResult methods ***/
8173static inline HRESULT ISpXMLRecoResult_GetResultTimes(ISpXMLRecoResult* This,SPRECORESULTTIMES *pTimes) {
8174 return This->lpVtbl->GetResultTimes(This,pTimes);
8175}
8176static inline HRESULT ISpXMLRecoResult_GetAlternates(ISpXMLRecoResult* This,ULONG ulStartElement,ULONG cElements,ULONG ulRequestCount,ISpPhraseAlt **ppPhrases,ULONG *pcPhrasesReturned) {
8177 return This->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned);
8178}
8179static inline HRESULT ISpXMLRecoResult_GetAudio(ISpXMLRecoResult* This,ULONG ulStartElement,ULONG cElements,ISpStreamFormat **ppStream) {
8180 return This->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream);
8181}
8182static inline HRESULT ISpXMLRecoResult_SpeakAudio(ISpXMLRecoResult* This,ULONG ulStartElement,ULONG cElements,DWORD dwFlags,ULONG *pulStreamNumber) {
8183 return This->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber);
8184}
8185static inline HRESULT ISpXMLRecoResult_Serialize(ISpXMLRecoResult* This,SPSERIALIZEDRESULT **ppCoMemSerializedResult) {
8186 return This->lpVtbl->Serialize(This,ppCoMemSerializedResult);
8187}
8188static inline HRESULT ISpXMLRecoResult_ScaleAudio(ISpXMLRecoResult* This,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
8189 return This->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx);
8190}
8191static inline HRESULT ISpXMLRecoResult_GetRecoContext(ISpXMLRecoResult* This,ISpRecoContext **ppRecoContext) {
8192 return This->lpVtbl->GetRecoContext(This,ppRecoContext);
8193}
8194/*** ISpXMLRecoResult methods ***/
8195static inline HRESULT ISpXMLRecoResult_GetXMLResult(ISpXMLRecoResult* This,LPWSTR *ppszCoMemXMLResult,SPXMLRESULTOPTIONS Options) {
8196 return This->lpVtbl->GetXMLResult(This,ppszCoMemXMLResult,Options);
8197}
8198static inline HRESULT ISpXMLRecoResult_GetXMLErrorInfo(ISpXMLRecoResult* This,SPSEMANTICERRORINFO *pSemanticErrorInfo) {
8199 return This->lpVtbl->GetXMLErrorInfo(This,pSemanticErrorInfo);
8200}
8201#endif
8202#endif
8203
8204#endif
8205
8206
8207#endif /* __ISpXMLRecoResult_INTERFACE_DEFINED__ */
8208
8209typedef struct tagSPTEXTSELECTIONINFO {
8210 ULONG ulStartActiveOffset;
8211 ULONG cchActiveChars;
8212 ULONG ulStartSelection;
8213 ULONG cchSelection;
8214} SPTEXTSELECTIONINFO;
8215typedef enum SPWORDPRONOUNCEABLE {
8216 SPWP_UNKNOWN_WORD_UNPRONOUNCEABLE = 0,
8217 SPWP_UNKNOWN_WORD_PRONOUNCEABLE = 1,
8218 SPWP_KNOWN_WORD_PRONOUNCEABLE = 2
8219} SPWORDPRONOUNCEABLE;
8220typedef enum SPGRAMMARSTATE {
8221 SPGS_DISABLED = 0,
8222 SPGS_ENABLED = 1,
8223 SPGS_EXCLUSIVE = 3
8224} SPGRAMMARSTATE;
8225typedef enum SPCONTEXTSTATE {
8226 SPCS_DISABLED = 0,
8227 SPCS_ENABLED = 1
8228} SPCONTEXTSTATE;
8229typedef enum SPRULESTATE {
8230 SPRS_INACTIVE = 0,
8231 SPRS_ACTIVE = 1,
8232 SPRS_ACTIVE_WITH_AUTO_PAUSE = 3,
8233 SPRS_ACTIVE_USER_DELIMITED = 4
8234} SPRULESTATE;
8235#define SP_STREAMPOS_ASAP (0)
8236
8237#define SP_STREAMPOS_REALTIME (-1)
8238
8239#define SPRULETRANS_TEXTBUFFER (SPSTATEHANDLE) (-1)
8240#define SPRULETRANS_WILDCARD (SPSTATEHANDLE) (-2)
8241#define SPRULETRANS_DICTATION (SPSTATEHANDLE) (-3)
8242typedef enum SPGRAMMARWORDTYPE {
8243 SPWT_DISPLAY = 0,
8244 SPWT_LEXICAL = 1,
8245 SPWT_PRONUNCIATION = 2,
8246 SPWT_LEXICAL_NO_SPECIAL_CHARS = 3
8247} SPGRAMMARWORDTYPE;
8248typedef struct tagSPPROPERTYINFO {
8249 LPCWSTR pszName;
8250 ULONG ulId;
8251 LPCWSTR pszValue;
8252 VARIANT vValue;
8253} SPPROPERTYINFO;
8254typedef enum SPCFGRULEATTRIBUTES {
8255 SPRAF_TopLevel = 0x1,
8256 SPRAF_Active = 0x2,
8257 SPRAF_Export = 0x4,
8258 SPRAF_Import = 0x8,
8259 SPRAF_Interpreter = 0x10,
8260 SPRAF_Dynamic = 0x20,
8261 SPRAF_Root = 0x40,
8262 SPRAF_AutoPause = 0x10000,
8263 SPRAF_UserDelimited = 0x20000
8264} SPCFGRULEATTRIBUTES;
8265/*****************************************************************************
8266 * ISpGrammarBuilder interface
8267 */
8268#ifndef __ISpGrammarBuilder_INTERFACE_DEFINED__
8269#define __ISpGrammarBuilder_INTERFACE_DEFINED__
8270
8271DEFINE_GUID(IID_ISpGrammarBuilder, 0x8137828f, 0x591a, 0x4a42, 0xbe,0x58, 0x49,0xea,0x7e,0xba,0xac,0x68);
8272#if defined(__cplusplus) && !defined(CINTERFACE)
8273MIDL_INTERFACE("8137828f-591a-4a42-be58-49ea7ebaac68")
8274ISpGrammarBuilder : public IUnknown
8275{
8276 virtual HRESULT STDMETHODCALLTYPE ResetGrammar(
8277 WORD NewLanguage) = 0;
8278
8279 virtual HRESULT STDMETHODCALLTYPE GetRule(
8280 LPCWSTR pszRuleName,
8281 DWORD dwRuleId,
8282 DWORD dwAttributes,
8283 WINBOOL fCreateIfNotExist,
8284 SPSTATEHANDLE *phInitialState) = 0;
8285
8286 virtual HRESULT STDMETHODCALLTYPE ClearRule(
8287 SPSTATEHANDLE hState) = 0;
8288
8289 virtual HRESULT STDMETHODCALLTYPE CreateNewState(
8290 SPSTATEHANDLE hState,
8291 SPSTATEHANDLE *phState) = 0;
8292
8293 virtual HRESULT STDMETHODCALLTYPE AddWordTransition(
8294 SPSTATEHANDLE hFromState,
8295 SPSTATEHANDLE hToState,
8296 LPCWSTR psz,
8297 LPCWSTR pszSeparators,
8298 SPGRAMMARWORDTYPE eWordType,
8299 float Weight,
8300 const SPPROPERTYINFO *pPropInfo) = 0;
8301
8302 virtual HRESULT STDMETHODCALLTYPE AddRuleTransition(
8303 SPSTATEHANDLE hFromState,
8304 SPSTATEHANDLE hToState,
8305 SPSTATEHANDLE hRule,
8306 float Weight,
8307 const SPPROPERTYINFO *pPropInfo) = 0;
8308
8309 virtual HRESULT STDMETHODCALLTYPE AddResource(
8310 SPSTATEHANDLE hRuleState,
8311 LPCWSTR pszResourceName,
8312 LPCWSTR pszResourceValue) = 0;
8313
8314 virtual HRESULT STDMETHODCALLTYPE Commit(
8315 DWORD dwReserved) = 0;
8316
8317};
8318#ifdef __CRT_UUID_DECL
8319__CRT_UUID_DECL(ISpGrammarBuilder, 0x8137828f, 0x591a, 0x4a42, 0xbe,0x58, 0x49,0xea,0x7e,0xba,0xac,0x68)
8320#endif
8321#else
8322typedef struct ISpGrammarBuilderVtbl {
8323 BEGIN_INTERFACE
8324
8325 /*** IUnknown methods ***/
8326 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8327 ISpGrammarBuilder *This,
8328 REFIID riid,
8329 void **ppvObject);
8330
8331 ULONG (STDMETHODCALLTYPE *AddRef)(
8332 ISpGrammarBuilder *This);
8333
8334 ULONG (STDMETHODCALLTYPE *Release)(
8335 ISpGrammarBuilder *This);
8336
8337 /*** ISpGrammarBuilder methods ***/
8338 HRESULT (STDMETHODCALLTYPE *ResetGrammar)(
8339 ISpGrammarBuilder *This,
8340 WORD NewLanguage);
8341
8342 HRESULT (STDMETHODCALLTYPE *GetRule)(
8343 ISpGrammarBuilder *This,
8344 LPCWSTR pszRuleName,
8345 DWORD dwRuleId,
8346 DWORD dwAttributes,
8347 WINBOOL fCreateIfNotExist,
8348 SPSTATEHANDLE *phInitialState);
8349
8350 HRESULT (STDMETHODCALLTYPE *ClearRule)(
8351 ISpGrammarBuilder *This,
8352 SPSTATEHANDLE hState);
8353
8354 HRESULT (STDMETHODCALLTYPE *CreateNewState)(
8355 ISpGrammarBuilder *This,
8356 SPSTATEHANDLE hState,
8357 SPSTATEHANDLE *phState);
8358
8359 HRESULT (STDMETHODCALLTYPE *AddWordTransition)(
8360 ISpGrammarBuilder *This,
8361 SPSTATEHANDLE hFromState,
8362 SPSTATEHANDLE hToState,
8363 LPCWSTR psz,
8364 LPCWSTR pszSeparators,
8365 SPGRAMMARWORDTYPE eWordType,
8366 float Weight,
8367 const SPPROPERTYINFO *pPropInfo);
8368
8369 HRESULT (STDMETHODCALLTYPE *AddRuleTransition)(
8370 ISpGrammarBuilder *This,
8371 SPSTATEHANDLE hFromState,
8372 SPSTATEHANDLE hToState,
8373 SPSTATEHANDLE hRule,
8374 float Weight,
8375 const SPPROPERTYINFO *pPropInfo);
8376
8377 HRESULT (STDMETHODCALLTYPE *AddResource)(
8378 ISpGrammarBuilder *This,
8379 SPSTATEHANDLE hRuleState,
8380 LPCWSTR pszResourceName,
8381 LPCWSTR pszResourceValue);
8382
8383 HRESULT (STDMETHODCALLTYPE *Commit)(
8384 ISpGrammarBuilder *This,
8385 DWORD dwReserved);
8386
8387 END_INTERFACE
8388} ISpGrammarBuilderVtbl;
8389
8390interface ISpGrammarBuilder {
8391 CONST_VTBL ISpGrammarBuilderVtbl* lpVtbl;
8392};
8393
8394#ifdef COBJMACROS
8395#ifndef WIDL_C_INLINE_WRAPPERS
8396/*** IUnknown methods ***/
8397#define ISpGrammarBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8398#define ISpGrammarBuilder_AddRef(This) (This)->lpVtbl->AddRef(This)
8399#define ISpGrammarBuilder_Release(This) (This)->lpVtbl->Release(This)
8400/*** ISpGrammarBuilder methods ***/
8401#define ISpGrammarBuilder_ResetGrammar(This,NewLanguage) (This)->lpVtbl->ResetGrammar(This,NewLanguage)
8402#define ISpGrammarBuilder_GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState) (This)->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState)
8403#define ISpGrammarBuilder_ClearRule(This,hState) (This)->lpVtbl->ClearRule(This,hState)
8404#define ISpGrammarBuilder_CreateNewState(This,hState,phState) (This)->lpVtbl->CreateNewState(This,hState,phState)
8405#define ISpGrammarBuilder_AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo) (This)->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo)
8406#define ISpGrammarBuilder_AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo) (This)->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo)
8407#define ISpGrammarBuilder_AddResource(This,hRuleState,pszResourceName,pszResourceValue) (This)->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue)
8408#define ISpGrammarBuilder_Commit(This,dwReserved) (This)->lpVtbl->Commit(This,dwReserved)
8409#else
8410/*** IUnknown methods ***/
8411static inline HRESULT ISpGrammarBuilder_QueryInterface(ISpGrammarBuilder* This,REFIID riid,void **ppvObject) {
8412 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8413}
8414static inline ULONG ISpGrammarBuilder_AddRef(ISpGrammarBuilder* This) {
8415 return This->lpVtbl->AddRef(This);
8416}
8417static inline ULONG ISpGrammarBuilder_Release(ISpGrammarBuilder* This) {
8418 return This->lpVtbl->Release(This);
8419}
8420/*** ISpGrammarBuilder methods ***/
8421static inline HRESULT ISpGrammarBuilder_ResetGrammar(ISpGrammarBuilder* This,WORD NewLanguage) {
8422 return This->lpVtbl->ResetGrammar(This,NewLanguage);
8423}
8424static inline HRESULT ISpGrammarBuilder_GetRule(ISpGrammarBuilder* This,LPCWSTR pszRuleName,DWORD dwRuleId,DWORD dwAttributes,WINBOOL fCreateIfNotExist,SPSTATEHANDLE *phInitialState) {
8425 return This->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState);
8426}
8427static inline HRESULT ISpGrammarBuilder_ClearRule(ISpGrammarBuilder* This,SPSTATEHANDLE hState) {
8428 return This->lpVtbl->ClearRule(This,hState);
8429}
8430static inline HRESULT ISpGrammarBuilder_CreateNewState(ISpGrammarBuilder* This,SPSTATEHANDLE hState,SPSTATEHANDLE *phState) {
8431 return This->lpVtbl->CreateNewState(This,hState,phState);
8432}
8433static inline HRESULT ISpGrammarBuilder_AddWordTransition(ISpGrammarBuilder* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,LPCWSTR psz,LPCWSTR pszSeparators,SPGRAMMARWORDTYPE eWordType,float Weight,const SPPROPERTYINFO *pPropInfo) {
8434 return This->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo);
8435}
8436static inline HRESULT ISpGrammarBuilder_AddRuleTransition(ISpGrammarBuilder* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,SPSTATEHANDLE hRule,float Weight,const SPPROPERTYINFO *pPropInfo) {
8437 return This->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo);
8438}
8439static inline HRESULT ISpGrammarBuilder_AddResource(ISpGrammarBuilder* This,SPSTATEHANDLE hRuleState,LPCWSTR pszResourceName,LPCWSTR pszResourceValue) {
8440 return This->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue);
8441}
8442static inline HRESULT ISpGrammarBuilder_Commit(ISpGrammarBuilder* This,DWORD dwReserved) {
8443 return This->lpVtbl->Commit(This,dwReserved);
8444}
8445#endif
8446#endif
8447
8448#endif
8449
8450
8451#endif /* __ISpGrammarBuilder_INTERFACE_DEFINED__ */
8452
8453typedef enum SPLOADOPTIONS {
8454 SPLO_STATIC = 0,
8455 SPLO_DYNAMIC = 1
8456} SPLOADOPTIONS;
8457/*****************************************************************************
8458 * ISpRecoGrammar interface
8459 */
8460#ifndef __ISpRecoGrammar_INTERFACE_DEFINED__
8461#define __ISpRecoGrammar_INTERFACE_DEFINED__
8462
8463DEFINE_GUID(IID_ISpRecoGrammar, 0x2177db29, 0x7f45, 0x47d0, 0x85,0x54, 0x06,0x7e,0x91,0xc8,0x05,0x02);
8464#if defined(__cplusplus) && !defined(CINTERFACE)
8465MIDL_INTERFACE("2177db29-7f45-47d0-8554-067e91c80502")
8466ISpRecoGrammar : public ISpGrammarBuilder
8467{
8468 virtual HRESULT STDMETHODCALLTYPE GetGrammarId(
8469 ULONGLONG *pullGrammarId) = 0;
8470
8471 virtual HRESULT STDMETHODCALLTYPE GetRecoContext(
8472 ISpRecoContext **ppRecoCtxt) = 0;
8473
8474 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromFile(
8475 LPCWSTR pszFileName,
8476 SPLOADOPTIONS Options) = 0;
8477
8478 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromObject(
8479 REFCLSID rcid,
8480 LPCWSTR pszGrammarName,
8481 SPLOADOPTIONS Options) = 0;
8482
8483 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromResource(
8484 HMODULE hModule,
8485 LPCWSTR pszResourceName,
8486 LPCWSTR pszResourceType,
8487 WORD wLanguage,
8488 SPLOADOPTIONS Options) = 0;
8489
8490 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromMemory(
8491 const SPBINARYGRAMMAR *pGrammar,
8492 SPLOADOPTIONS Options) = 0;
8493
8494 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromProprietaryGrammar(
8495 REFGUID rguidParam,
8496 LPCWSTR pszStringParam,
8497 const void *pvDataPrarm,
8498 ULONG cbDataSize,
8499 SPLOADOPTIONS Options) = 0;
8500
8501 virtual HRESULT STDMETHODCALLTYPE SetRuleState(
8502 LPCWSTR pszName,
8503 void *pReserved,
8504 SPRULESTATE NewState) = 0;
8505
8506 virtual HRESULT STDMETHODCALLTYPE SetRuleIdState(
8507 ULONG ulRuleId,
8508 SPRULESTATE NewState) = 0;
8509
8510 virtual HRESULT STDMETHODCALLTYPE LoadDictation(
8511 LPCWSTR pszTopicName,
8512 SPLOADOPTIONS Options) = 0;
8513
8514 virtual HRESULT STDMETHODCALLTYPE UnloadDictation(
8515 ) = 0;
8516
8517 virtual HRESULT STDMETHODCALLTYPE SetDictationState(
8518 SPRULESTATE NewState) = 0;
8519
8520 virtual HRESULT STDMETHODCALLTYPE SetWordSequenceData(
8521 const WCHAR *pText,
8522 ULONG cchText,
8523 const SPTEXTSELECTIONINFO *pInfo) = 0;
8524
8525 virtual HRESULT STDMETHODCALLTYPE SetTextSelection(
8526 const SPTEXTSELECTIONINFO *pInfo) = 0;
8527
8528 virtual HRESULT STDMETHODCALLTYPE IsPronounceable(
8529 LPCWSTR pszWord,
8530 SPWORDPRONOUNCEABLE *pWordPronounceable) = 0;
8531
8532 virtual HRESULT STDMETHODCALLTYPE SetGrammarState(
8533 SPGRAMMARSTATE eGrammarState) = 0;
8534
8535 virtual HRESULT STDMETHODCALLTYPE SaveCmd(
8536 IStream *pStream,
8537 LPWSTR *ppszCoMemErrorText) = 0;
8538
8539 virtual HRESULT STDMETHODCALLTYPE GetGrammarState(
8540 SPGRAMMARSTATE *peGrammarState) = 0;
8541
8542};
8543#ifdef __CRT_UUID_DECL
8544__CRT_UUID_DECL(ISpRecoGrammar, 0x2177db29, 0x7f45, 0x47d0, 0x85,0x54, 0x06,0x7e,0x91,0xc8,0x05,0x02)
8545#endif
8546#else
8547typedef struct ISpRecoGrammarVtbl {
8548 BEGIN_INTERFACE
8549
8550 /*** IUnknown methods ***/
8551 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8552 ISpRecoGrammar *This,
8553 REFIID riid,
8554 void **ppvObject);
8555
8556 ULONG (STDMETHODCALLTYPE *AddRef)(
8557 ISpRecoGrammar *This);
8558
8559 ULONG (STDMETHODCALLTYPE *Release)(
8560 ISpRecoGrammar *This);
8561
8562 /*** ISpGrammarBuilder methods ***/
8563 HRESULT (STDMETHODCALLTYPE *ResetGrammar)(
8564 ISpRecoGrammar *This,
8565 WORD NewLanguage);
8566
8567 HRESULT (STDMETHODCALLTYPE *GetRule)(
8568 ISpRecoGrammar *This,
8569 LPCWSTR pszRuleName,
8570 DWORD dwRuleId,
8571 DWORD dwAttributes,
8572 WINBOOL fCreateIfNotExist,
8573 SPSTATEHANDLE *phInitialState);
8574
8575 HRESULT (STDMETHODCALLTYPE *ClearRule)(
8576 ISpRecoGrammar *This,
8577 SPSTATEHANDLE hState);
8578
8579 HRESULT (STDMETHODCALLTYPE *CreateNewState)(
8580 ISpRecoGrammar *This,
8581 SPSTATEHANDLE hState,
8582 SPSTATEHANDLE *phState);
8583
8584 HRESULT (STDMETHODCALLTYPE *AddWordTransition)(
8585 ISpRecoGrammar *This,
8586 SPSTATEHANDLE hFromState,
8587 SPSTATEHANDLE hToState,
8588 LPCWSTR psz,
8589 LPCWSTR pszSeparators,
8590 SPGRAMMARWORDTYPE eWordType,
8591 float Weight,
8592 const SPPROPERTYINFO *pPropInfo);
8593
8594 HRESULT (STDMETHODCALLTYPE *AddRuleTransition)(
8595 ISpRecoGrammar *This,
8596 SPSTATEHANDLE hFromState,
8597 SPSTATEHANDLE hToState,
8598 SPSTATEHANDLE hRule,
8599 float Weight,
8600 const SPPROPERTYINFO *pPropInfo);
8601
8602 HRESULT (STDMETHODCALLTYPE *AddResource)(
8603 ISpRecoGrammar *This,
8604 SPSTATEHANDLE hRuleState,
8605 LPCWSTR pszResourceName,
8606 LPCWSTR pszResourceValue);
8607
8608 HRESULT (STDMETHODCALLTYPE *Commit)(
8609 ISpRecoGrammar *This,
8610 DWORD dwReserved);
8611
8612 /*** ISpRecoGrammar methods ***/
8613 HRESULT (STDMETHODCALLTYPE *GetGrammarId)(
8614 ISpRecoGrammar *This,
8615 ULONGLONG *pullGrammarId);
8616
8617 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
8618 ISpRecoGrammar *This,
8619 ISpRecoContext **ppRecoCtxt);
8620
8621 HRESULT (STDMETHODCALLTYPE *LoadCmdFromFile)(
8622 ISpRecoGrammar *This,
8623 LPCWSTR pszFileName,
8624 SPLOADOPTIONS Options);
8625
8626 HRESULT (STDMETHODCALLTYPE *LoadCmdFromObject)(
8627 ISpRecoGrammar *This,
8628 REFCLSID rcid,
8629 LPCWSTR pszGrammarName,
8630 SPLOADOPTIONS Options);
8631
8632 HRESULT (STDMETHODCALLTYPE *LoadCmdFromResource)(
8633 ISpRecoGrammar *This,
8634 HMODULE hModule,
8635 LPCWSTR pszResourceName,
8636 LPCWSTR pszResourceType,
8637 WORD wLanguage,
8638 SPLOADOPTIONS Options);
8639
8640 HRESULT (STDMETHODCALLTYPE *LoadCmdFromMemory)(
8641 ISpRecoGrammar *This,
8642 const SPBINARYGRAMMAR *pGrammar,
8643 SPLOADOPTIONS Options);
8644
8645 HRESULT (STDMETHODCALLTYPE *LoadCmdFromProprietaryGrammar)(
8646 ISpRecoGrammar *This,
8647 REFGUID rguidParam,
8648 LPCWSTR pszStringParam,
8649 const void *pvDataPrarm,
8650 ULONG cbDataSize,
8651 SPLOADOPTIONS Options);
8652
8653 HRESULT (STDMETHODCALLTYPE *SetRuleState)(
8654 ISpRecoGrammar *This,
8655 LPCWSTR pszName,
8656 void *pReserved,
8657 SPRULESTATE NewState);
8658
8659 HRESULT (STDMETHODCALLTYPE *SetRuleIdState)(
8660 ISpRecoGrammar *This,
8661 ULONG ulRuleId,
8662 SPRULESTATE NewState);
8663
8664 HRESULT (STDMETHODCALLTYPE *LoadDictation)(
8665 ISpRecoGrammar *This,
8666 LPCWSTR pszTopicName,
8667 SPLOADOPTIONS Options);
8668
8669 HRESULT (STDMETHODCALLTYPE *UnloadDictation)(
8670 ISpRecoGrammar *This);
8671
8672 HRESULT (STDMETHODCALLTYPE *SetDictationState)(
8673 ISpRecoGrammar *This,
8674 SPRULESTATE NewState);
8675
8676 HRESULT (STDMETHODCALLTYPE *SetWordSequenceData)(
8677 ISpRecoGrammar *This,
8678 const WCHAR *pText,
8679 ULONG cchText,
8680 const SPTEXTSELECTIONINFO *pInfo);
8681
8682 HRESULT (STDMETHODCALLTYPE *SetTextSelection)(
8683 ISpRecoGrammar *This,
8684 const SPTEXTSELECTIONINFO *pInfo);
8685
8686 HRESULT (STDMETHODCALLTYPE *IsPronounceable)(
8687 ISpRecoGrammar *This,
8688 LPCWSTR pszWord,
8689 SPWORDPRONOUNCEABLE *pWordPronounceable);
8690
8691 HRESULT (STDMETHODCALLTYPE *SetGrammarState)(
8692 ISpRecoGrammar *This,
8693 SPGRAMMARSTATE eGrammarState);
8694
8695 HRESULT (STDMETHODCALLTYPE *SaveCmd)(
8696 ISpRecoGrammar *This,
8697 IStream *pStream,
8698 LPWSTR *ppszCoMemErrorText);
8699
8700 HRESULT (STDMETHODCALLTYPE *GetGrammarState)(
8701 ISpRecoGrammar *This,
8702 SPGRAMMARSTATE *peGrammarState);
8703
8704 END_INTERFACE
8705} ISpRecoGrammarVtbl;
8706
8707interface ISpRecoGrammar {
8708 CONST_VTBL ISpRecoGrammarVtbl* lpVtbl;
8709};
8710
8711#ifdef COBJMACROS
8712#ifndef WIDL_C_INLINE_WRAPPERS
8713/*** IUnknown methods ***/
8714#define ISpRecoGrammar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8715#define ISpRecoGrammar_AddRef(This) (This)->lpVtbl->AddRef(This)
8716#define ISpRecoGrammar_Release(This) (This)->lpVtbl->Release(This)
8717/*** ISpGrammarBuilder methods ***/
8718#define ISpRecoGrammar_ResetGrammar(This,NewLanguage) (This)->lpVtbl->ResetGrammar(This,NewLanguage)
8719#define ISpRecoGrammar_GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState) (This)->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState)
8720#define ISpRecoGrammar_ClearRule(This,hState) (This)->lpVtbl->ClearRule(This,hState)
8721#define ISpRecoGrammar_CreateNewState(This,hState,phState) (This)->lpVtbl->CreateNewState(This,hState,phState)
8722#define ISpRecoGrammar_AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo) (This)->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo)
8723#define ISpRecoGrammar_AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo) (This)->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo)
8724#define ISpRecoGrammar_AddResource(This,hRuleState,pszResourceName,pszResourceValue) (This)->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue)
8725#define ISpRecoGrammar_Commit(This,dwReserved) (This)->lpVtbl->Commit(This,dwReserved)
8726/*** ISpRecoGrammar methods ***/
8727#define ISpRecoGrammar_GetGrammarId(This,pullGrammarId) (This)->lpVtbl->GetGrammarId(This,pullGrammarId)
8728#define ISpRecoGrammar_GetRecoContext(This,ppRecoCtxt) (This)->lpVtbl->GetRecoContext(This,ppRecoCtxt)
8729#define ISpRecoGrammar_LoadCmdFromFile(This,pszFileName,Options) (This)->lpVtbl->LoadCmdFromFile(This,pszFileName,Options)
8730#define ISpRecoGrammar_LoadCmdFromObject(This,rcid,pszGrammarName,Options) (This)->lpVtbl->LoadCmdFromObject(This,rcid,pszGrammarName,Options)
8731#define ISpRecoGrammar_LoadCmdFromResource(This,hModule,pszResourceName,pszResourceType,wLanguage,Options) (This)->lpVtbl->LoadCmdFromResource(This,hModule,pszResourceName,pszResourceType,wLanguage,Options)
8732#define ISpRecoGrammar_LoadCmdFromMemory(This,pGrammar,Options) (This)->lpVtbl->LoadCmdFromMemory(This,pGrammar,Options)
8733#define ISpRecoGrammar_LoadCmdFromProprietaryGrammar(This,rguidParam,pszStringParam,pvDataPrarm,cbDataSize,Options) (This)->lpVtbl->LoadCmdFromProprietaryGrammar(This,rguidParam,pszStringParam,pvDataPrarm,cbDataSize,Options)
8734#define ISpRecoGrammar_SetRuleState(This,pszName,pReserved,NewState) (This)->lpVtbl->SetRuleState(This,pszName,pReserved,NewState)
8735#define ISpRecoGrammar_SetRuleIdState(This,ulRuleId,NewState) (This)->lpVtbl->SetRuleIdState(This,ulRuleId,NewState)
8736#define ISpRecoGrammar_LoadDictation(This,pszTopicName,Options) (This)->lpVtbl->LoadDictation(This,pszTopicName,Options)
8737#define ISpRecoGrammar_UnloadDictation(This) (This)->lpVtbl->UnloadDictation(This)
8738#define ISpRecoGrammar_SetDictationState(This,NewState) (This)->lpVtbl->SetDictationState(This,NewState)
8739#define ISpRecoGrammar_SetWordSequenceData(This,pText,cchText,pInfo) (This)->lpVtbl->SetWordSequenceData(This,pText,cchText,pInfo)
8740#define ISpRecoGrammar_SetTextSelection(This,pInfo) (This)->lpVtbl->SetTextSelection(This,pInfo)
8741#define ISpRecoGrammar_IsPronounceable(This,pszWord,pWordPronounceable) (This)->lpVtbl->IsPronounceable(This,pszWord,pWordPronounceable)
8742#define ISpRecoGrammar_SetGrammarState(This,eGrammarState) (This)->lpVtbl->SetGrammarState(This,eGrammarState)
8743#define ISpRecoGrammar_SaveCmd(This,pStream,ppszCoMemErrorText) (This)->lpVtbl->SaveCmd(This,pStream,ppszCoMemErrorText)
8744#define ISpRecoGrammar_GetGrammarState(This,peGrammarState) (This)->lpVtbl->GetGrammarState(This,peGrammarState)
8745#else
8746/*** IUnknown methods ***/
8747static inline HRESULT ISpRecoGrammar_QueryInterface(ISpRecoGrammar* This,REFIID riid,void **ppvObject) {
8748 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8749}
8750static inline ULONG ISpRecoGrammar_AddRef(ISpRecoGrammar* This) {
8751 return This->lpVtbl->AddRef(This);
8752}
8753static inline ULONG ISpRecoGrammar_Release(ISpRecoGrammar* This) {
8754 return This->lpVtbl->Release(This);
8755}
8756/*** ISpGrammarBuilder methods ***/
8757static inline HRESULT ISpRecoGrammar_ResetGrammar(ISpRecoGrammar* This,WORD NewLanguage) {
8758 return This->lpVtbl->ResetGrammar(This,NewLanguage);
8759}
8760static inline HRESULT ISpRecoGrammar_GetRule(ISpRecoGrammar* This,LPCWSTR pszRuleName,DWORD dwRuleId,DWORD dwAttributes,WINBOOL fCreateIfNotExist,SPSTATEHANDLE *phInitialState) {
8761 return This->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState);
8762}
8763static inline HRESULT ISpRecoGrammar_ClearRule(ISpRecoGrammar* This,SPSTATEHANDLE hState) {
8764 return This->lpVtbl->ClearRule(This,hState);
8765}
8766static inline HRESULT ISpRecoGrammar_CreateNewState(ISpRecoGrammar* This,SPSTATEHANDLE hState,SPSTATEHANDLE *phState) {
8767 return This->lpVtbl->CreateNewState(This,hState,phState);
8768}
8769static inline HRESULT ISpRecoGrammar_AddWordTransition(ISpRecoGrammar* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,LPCWSTR psz,LPCWSTR pszSeparators,SPGRAMMARWORDTYPE eWordType,float Weight,const SPPROPERTYINFO *pPropInfo) {
8770 return This->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo);
8771}
8772static inline HRESULT ISpRecoGrammar_AddRuleTransition(ISpRecoGrammar* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,SPSTATEHANDLE hRule,float Weight,const SPPROPERTYINFO *pPropInfo) {
8773 return This->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo);
8774}
8775static inline HRESULT ISpRecoGrammar_AddResource(ISpRecoGrammar* This,SPSTATEHANDLE hRuleState,LPCWSTR pszResourceName,LPCWSTR pszResourceValue) {
8776 return This->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue);
8777}
8778static inline HRESULT ISpRecoGrammar_Commit(ISpRecoGrammar* This,DWORD dwReserved) {
8779 return This->lpVtbl->Commit(This,dwReserved);
8780}
8781/*** ISpRecoGrammar methods ***/
8782static inline HRESULT ISpRecoGrammar_GetGrammarId(ISpRecoGrammar* This,ULONGLONG *pullGrammarId) {
8783 return This->lpVtbl->GetGrammarId(This,pullGrammarId);
8784}
8785static inline HRESULT ISpRecoGrammar_GetRecoContext(ISpRecoGrammar* This,ISpRecoContext **ppRecoCtxt) {
8786 return This->lpVtbl->GetRecoContext(This,ppRecoCtxt);
8787}
8788static inline HRESULT ISpRecoGrammar_LoadCmdFromFile(ISpRecoGrammar* This,LPCWSTR pszFileName,SPLOADOPTIONS Options) {
8789 return This->lpVtbl->LoadCmdFromFile(This,pszFileName,Options);
8790}
8791static inline HRESULT ISpRecoGrammar_LoadCmdFromObject(ISpRecoGrammar* This,REFCLSID rcid,LPCWSTR pszGrammarName,SPLOADOPTIONS Options) {
8792 return This->lpVtbl->LoadCmdFromObject(This,rcid,pszGrammarName,Options);
8793}
8794static inline HRESULT ISpRecoGrammar_LoadCmdFromResource(ISpRecoGrammar* This,HMODULE hModule,LPCWSTR pszResourceName,LPCWSTR pszResourceType,WORD wLanguage,SPLOADOPTIONS Options) {
8795 return This->lpVtbl->LoadCmdFromResource(This,hModule,pszResourceName,pszResourceType,wLanguage,Options);
8796}
8797static inline HRESULT ISpRecoGrammar_LoadCmdFromMemory(ISpRecoGrammar* This,const SPBINARYGRAMMAR *pGrammar,SPLOADOPTIONS Options) {
8798 return This->lpVtbl->LoadCmdFromMemory(This,pGrammar,Options);
8799}
8800static inline HRESULT ISpRecoGrammar_LoadCmdFromProprietaryGrammar(ISpRecoGrammar* This,REFGUID rguidParam,LPCWSTR pszStringParam,const void *pvDataPrarm,ULONG cbDataSize,SPLOADOPTIONS Options) {
8801 return This->lpVtbl->LoadCmdFromProprietaryGrammar(This,rguidParam,pszStringParam,pvDataPrarm,cbDataSize,Options);
8802}
8803static inline HRESULT ISpRecoGrammar_SetRuleState(ISpRecoGrammar* This,LPCWSTR pszName,void *pReserved,SPRULESTATE NewState) {
8804 return This->lpVtbl->SetRuleState(This,pszName,pReserved,NewState);
8805}
8806static inline HRESULT ISpRecoGrammar_SetRuleIdState(ISpRecoGrammar* This,ULONG ulRuleId,SPRULESTATE NewState) {
8807 return This->lpVtbl->SetRuleIdState(This,ulRuleId,NewState);
8808}
8809static inline HRESULT ISpRecoGrammar_LoadDictation(ISpRecoGrammar* This,LPCWSTR pszTopicName,SPLOADOPTIONS Options) {
8810 return This->lpVtbl->LoadDictation(This,pszTopicName,Options);
8811}
8812static inline HRESULT ISpRecoGrammar_UnloadDictation(ISpRecoGrammar* This) {
8813 return This->lpVtbl->UnloadDictation(This);
8814}
8815static inline HRESULT ISpRecoGrammar_SetDictationState(ISpRecoGrammar* This,SPRULESTATE NewState) {
8816 return This->lpVtbl->SetDictationState(This,NewState);
8817}
8818static inline HRESULT ISpRecoGrammar_SetWordSequenceData(ISpRecoGrammar* This,const WCHAR *pText,ULONG cchText,const SPTEXTSELECTIONINFO *pInfo) {
8819 return This->lpVtbl->SetWordSequenceData(This,pText,cchText,pInfo);
8820}
8821static inline HRESULT ISpRecoGrammar_SetTextSelection(ISpRecoGrammar* This,const SPTEXTSELECTIONINFO *pInfo) {
8822 return This->lpVtbl->SetTextSelection(This,pInfo);
8823}
8824static inline HRESULT ISpRecoGrammar_IsPronounceable(ISpRecoGrammar* This,LPCWSTR pszWord,SPWORDPRONOUNCEABLE *pWordPronounceable) {
8825 return This->lpVtbl->IsPronounceable(This,pszWord,pWordPronounceable);
8826}
8827static inline HRESULT ISpRecoGrammar_SetGrammarState(ISpRecoGrammar* This,SPGRAMMARSTATE eGrammarState) {
8828 return This->lpVtbl->SetGrammarState(This,eGrammarState);
8829}
8830static inline HRESULT ISpRecoGrammar_SaveCmd(ISpRecoGrammar* This,IStream *pStream,LPWSTR *ppszCoMemErrorText) {
8831 return This->lpVtbl->SaveCmd(This,pStream,ppszCoMemErrorText);
8832}
8833static inline HRESULT ISpRecoGrammar_GetGrammarState(ISpRecoGrammar* This,SPGRAMMARSTATE *peGrammarState) {
8834 return This->lpVtbl->GetGrammarState(This,peGrammarState);
8835}
8836#endif
8837#endif
8838
8839#endif
8840
8841
8842#endif /* __ISpRecoGrammar_INTERFACE_DEFINED__ */
8843
8844typedef enum SPMATCHINGMODE {
8845 AllWords = 0,
8846 Subsequence = 1,
8847 OrderedSubset = 3,
8848 SubsequenceContentRequired = 5,
8849 OrderedSubsetContentRequired = 7
8850} SPMATCHINGMODE;
8851typedef enum PHONETICALPHABET {
8852 PA_Ipa = 0,
8853 PA_Ups = 1,
8854 PA_Sapi = 2
8855} PHONETICALPHABET;
8856/*****************************************************************************
8857 * ISpGrammarBuilder2 interface
8858 */
8859#ifndef __ISpGrammarBuilder2_INTERFACE_DEFINED__
8860#define __ISpGrammarBuilder2_INTERFACE_DEFINED__
8861
8862DEFINE_GUID(IID_ISpGrammarBuilder2, 0x8ab10026, 0x20cc, 0x4b20, 0x8c,0x22, 0xa4,0x9c,0x9b,0xa7,0x8f,0x60);
8863#if defined(__cplusplus) && !defined(CINTERFACE)
8864MIDL_INTERFACE("8ab10026-20cc-4b20-8c22-a49c9ba78f60")
8865ISpGrammarBuilder2 : public IUnknown
8866{
8867 virtual HRESULT STDMETHODCALLTYPE AddTextSubset(
8868 SPSTATEHANDLE hFromState,
8869 SPSTATEHANDLE hToState,
8870 LPCWSTR psz,
8871 SPMATCHINGMODE eMatchMode) = 0;
8872
8873 virtual HRESULT STDMETHODCALLTYPE SetPhoneticAlphabet(
8874 PHONETICALPHABET phoneticALphabet) = 0;
8875
8876};
8877#ifdef __CRT_UUID_DECL
8878__CRT_UUID_DECL(ISpGrammarBuilder2, 0x8ab10026, 0x20cc, 0x4b20, 0x8c,0x22, 0xa4,0x9c,0x9b,0xa7,0x8f,0x60)
8879#endif
8880#else
8881typedef struct ISpGrammarBuilder2Vtbl {
8882 BEGIN_INTERFACE
8883
8884 /*** IUnknown methods ***/
8885 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8886 ISpGrammarBuilder2 *This,
8887 REFIID riid,
8888 void **ppvObject);
8889
8890 ULONG (STDMETHODCALLTYPE *AddRef)(
8891 ISpGrammarBuilder2 *This);
8892
8893 ULONG (STDMETHODCALLTYPE *Release)(
8894 ISpGrammarBuilder2 *This);
8895
8896 /*** ISpGrammarBuilder2 methods ***/
8897 HRESULT (STDMETHODCALLTYPE *AddTextSubset)(
8898 ISpGrammarBuilder2 *This,
8899 SPSTATEHANDLE hFromState,
8900 SPSTATEHANDLE hToState,
8901 LPCWSTR psz,
8902 SPMATCHINGMODE eMatchMode);
8903
8904 HRESULT (STDMETHODCALLTYPE *SetPhoneticAlphabet)(
8905 ISpGrammarBuilder2 *This,
8906 PHONETICALPHABET phoneticALphabet);
8907
8908 END_INTERFACE
8909} ISpGrammarBuilder2Vtbl;
8910
8911interface ISpGrammarBuilder2 {
8912 CONST_VTBL ISpGrammarBuilder2Vtbl* lpVtbl;
8913};
8914
8915#ifdef COBJMACROS
8916#ifndef WIDL_C_INLINE_WRAPPERS
8917/*** IUnknown methods ***/
8918#define ISpGrammarBuilder2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8919#define ISpGrammarBuilder2_AddRef(This) (This)->lpVtbl->AddRef(This)
8920#define ISpGrammarBuilder2_Release(This) (This)->lpVtbl->Release(This)
8921/*** ISpGrammarBuilder2 methods ***/
8922#define ISpGrammarBuilder2_AddTextSubset(This,hFromState,hToState,psz,eMatchMode) (This)->lpVtbl->AddTextSubset(This,hFromState,hToState,psz,eMatchMode)
8923#define ISpGrammarBuilder2_SetPhoneticAlphabet(This,phoneticALphabet) (This)->lpVtbl->SetPhoneticAlphabet(This,phoneticALphabet)
8924#else
8925/*** IUnknown methods ***/
8926static inline HRESULT ISpGrammarBuilder2_QueryInterface(ISpGrammarBuilder2* This,REFIID riid,void **ppvObject) {
8927 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8928}
8929static inline ULONG ISpGrammarBuilder2_AddRef(ISpGrammarBuilder2* This) {
8930 return This->lpVtbl->AddRef(This);
8931}
8932static inline ULONG ISpGrammarBuilder2_Release(ISpGrammarBuilder2* This) {
8933 return This->lpVtbl->Release(This);
8934}
8935/*** ISpGrammarBuilder2 methods ***/
8936static inline HRESULT ISpGrammarBuilder2_AddTextSubset(ISpGrammarBuilder2* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,LPCWSTR psz,SPMATCHINGMODE eMatchMode) {
8937 return This->lpVtbl->AddTextSubset(This,hFromState,hToState,psz,eMatchMode);
8938}
8939static inline HRESULT ISpGrammarBuilder2_SetPhoneticAlphabet(ISpGrammarBuilder2* This,PHONETICALPHABET phoneticALphabet) {
8940 return This->lpVtbl->SetPhoneticAlphabet(This,phoneticALphabet);
8941}
8942#endif
8943#endif
8944
8945#endif
8946
8947
8948#endif /* __ISpGrammarBuilder2_INTERFACE_DEFINED__ */
8949
8950#define SPRP_NORMAL 0
8951/*****************************************************************************
8952 * ISpRecoGrammar2 interface
8953 */
8954#ifndef __ISpRecoGrammar2_INTERFACE_DEFINED__
8955#define __ISpRecoGrammar2_INTERFACE_DEFINED__
8956
8957DEFINE_GUID(IID_ISpRecoGrammar2, 0x4b37bc9e, 0x9ed6, 0x44a3, 0x93,0xd3, 0x18,0xf0,0x22,0xb7,0x9e,0xc3);
8958#if defined(__cplusplus) && !defined(CINTERFACE)
8959MIDL_INTERFACE("4b37bc9e-9ed6-44a3-93d3-18f022b79ec3")
8960ISpRecoGrammar2 : public IUnknown
8961{
8962 virtual HRESULT STDMETHODCALLTYPE GetRules(
8963 SPRULE **ppCoMemRules,
8964 UINT *puNumRules) = 0;
8965
8966 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromFile2(
8967 LPCWSTR pszFileName,
8968 SPLOADOPTIONS Options,
8969 LPCWSTR pszSharingUri,
8970 LPCWSTR pszBaseUri) = 0;
8971
8972 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromMemory2(
8973 const SPBINARYGRAMMAR *pGrammar,
8974 SPLOADOPTIONS Options,
8975 LPCWSTR pszSharingUri,
8976 LPCWSTR pszBaseUri) = 0;
8977
8978 virtual HRESULT STDMETHODCALLTYPE SetRulePriority(
8979 LPCWSTR pszRuleName,
8980 ULONG ulRuleId,
8981 int nRulePriority) = 0;
8982
8983 virtual HRESULT STDMETHODCALLTYPE SetRuleWeight(
8984 LPCWSTR pszRuleName,
8985 ULONG ulRuleId,
8986 float flWeight) = 0;
8987
8988 virtual HRESULT STDMETHODCALLTYPE SetDictationWeight(
8989 float flWeight) = 0;
8990
8991 virtual HRESULT STDMETHODCALLTYPE SetGrammarLoader(
8992 ISpeechResourceLoader *pLoader) = 0;
8993
8994 virtual HRESULT STDMETHODCALLTYPE SetSMLSecurityManager(
8995 IInternetSecurityManager *pSMLSecurityManager) = 0;
8996
8997};
8998#ifdef __CRT_UUID_DECL
8999__CRT_UUID_DECL(ISpRecoGrammar2, 0x4b37bc9e, 0x9ed6, 0x44a3, 0x93,0xd3, 0x18,0xf0,0x22,0xb7,0x9e,0xc3)
9000#endif
9001#else
9002typedef struct ISpRecoGrammar2Vtbl {
9003 BEGIN_INTERFACE
9004
9005 /*** IUnknown methods ***/
9006 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9007 ISpRecoGrammar2 *This,
9008 REFIID riid,
9009 void **ppvObject);
9010
9011 ULONG (STDMETHODCALLTYPE *AddRef)(
9012 ISpRecoGrammar2 *This);
9013
9014 ULONG (STDMETHODCALLTYPE *Release)(
9015 ISpRecoGrammar2 *This);
9016
9017 /*** ISpRecoGrammar2 methods ***/
9018 HRESULT (STDMETHODCALLTYPE *GetRules)(
9019 ISpRecoGrammar2 *This,
9020 SPRULE **ppCoMemRules,
9021 UINT *puNumRules);
9022
9023 HRESULT (STDMETHODCALLTYPE *LoadCmdFromFile2)(
9024 ISpRecoGrammar2 *This,
9025 LPCWSTR pszFileName,
9026 SPLOADOPTIONS Options,
9027 LPCWSTR pszSharingUri,
9028 LPCWSTR pszBaseUri);
9029
9030 HRESULT (STDMETHODCALLTYPE *LoadCmdFromMemory2)(
9031 ISpRecoGrammar2 *This,
9032 const SPBINARYGRAMMAR *pGrammar,
9033 SPLOADOPTIONS Options,
9034 LPCWSTR pszSharingUri,
9035 LPCWSTR pszBaseUri);
9036
9037 HRESULT (STDMETHODCALLTYPE *SetRulePriority)(
9038 ISpRecoGrammar2 *This,
9039 LPCWSTR pszRuleName,
9040 ULONG ulRuleId,
9041 int nRulePriority);
9042
9043 HRESULT (STDMETHODCALLTYPE *SetRuleWeight)(
9044 ISpRecoGrammar2 *This,
9045 LPCWSTR pszRuleName,
9046 ULONG ulRuleId,
9047 float flWeight);
9048
9049 HRESULT (STDMETHODCALLTYPE *SetDictationWeight)(
9050 ISpRecoGrammar2 *This,
9051 float flWeight);
9052
9053 HRESULT (STDMETHODCALLTYPE *SetGrammarLoader)(
9054 ISpRecoGrammar2 *This,
9055 ISpeechResourceLoader *pLoader);
9056
9057 HRESULT (STDMETHODCALLTYPE *SetSMLSecurityManager)(
9058 ISpRecoGrammar2 *This,
9059 IInternetSecurityManager *pSMLSecurityManager);
9060
9061 END_INTERFACE
9062} ISpRecoGrammar2Vtbl;
9063
9064interface ISpRecoGrammar2 {
9065 CONST_VTBL ISpRecoGrammar2Vtbl* lpVtbl;
9066};
9067
9068#ifdef COBJMACROS
9069#ifndef WIDL_C_INLINE_WRAPPERS
9070/*** IUnknown methods ***/
9071#define ISpRecoGrammar2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9072#define ISpRecoGrammar2_AddRef(This) (This)->lpVtbl->AddRef(This)
9073#define ISpRecoGrammar2_Release(This) (This)->lpVtbl->Release(This)
9074/*** ISpRecoGrammar2 methods ***/
9075#define ISpRecoGrammar2_GetRules(This,ppCoMemRules,puNumRules) (This)->lpVtbl->GetRules(This,ppCoMemRules,puNumRules)
9076#define ISpRecoGrammar2_LoadCmdFromFile2(This,pszFileName,Options,pszSharingUri,pszBaseUri) (This)->lpVtbl->LoadCmdFromFile2(This,pszFileName,Options,pszSharingUri,pszBaseUri)
9077#define ISpRecoGrammar2_LoadCmdFromMemory2(This,pGrammar,Options,pszSharingUri,pszBaseUri) (This)->lpVtbl->LoadCmdFromMemory2(This,pGrammar,Options,pszSharingUri,pszBaseUri)
9078#define ISpRecoGrammar2_SetRulePriority(This,pszRuleName,ulRuleId,nRulePriority) (This)->lpVtbl->SetRulePriority(This,pszRuleName,ulRuleId,nRulePriority)
9079#define ISpRecoGrammar2_SetRuleWeight(This,pszRuleName,ulRuleId,flWeight) (This)->lpVtbl->SetRuleWeight(This,pszRuleName,ulRuleId,flWeight)
9080#define ISpRecoGrammar2_SetDictationWeight(This,flWeight) (This)->lpVtbl->SetDictationWeight(This,flWeight)
9081#define ISpRecoGrammar2_SetGrammarLoader(This,pLoader) (This)->lpVtbl->SetGrammarLoader(This,pLoader)
9082#define ISpRecoGrammar2_SetSMLSecurityManager(This,pSMLSecurityManager) (This)->lpVtbl->SetSMLSecurityManager(This,pSMLSecurityManager)
9083#else
9084/*** IUnknown methods ***/
9085static inline HRESULT ISpRecoGrammar2_QueryInterface(ISpRecoGrammar2* This,REFIID riid,void **ppvObject) {
9086 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9087}
9088static inline ULONG ISpRecoGrammar2_AddRef(ISpRecoGrammar2* This) {
9089 return This->lpVtbl->AddRef(This);
9090}
9091static inline ULONG ISpRecoGrammar2_Release(ISpRecoGrammar2* This) {
9092 return This->lpVtbl->Release(This);
9093}
9094/*** ISpRecoGrammar2 methods ***/
9095static inline HRESULT ISpRecoGrammar2_GetRules(ISpRecoGrammar2* This,SPRULE **ppCoMemRules,UINT *puNumRules) {
9096 return This->lpVtbl->GetRules(This,ppCoMemRules,puNumRules);
9097}
9098static inline HRESULT ISpRecoGrammar2_LoadCmdFromFile2(ISpRecoGrammar2* This,LPCWSTR pszFileName,SPLOADOPTIONS Options,LPCWSTR pszSharingUri,LPCWSTR pszBaseUri) {
9099 return This->lpVtbl->LoadCmdFromFile2(This,pszFileName,Options,pszSharingUri,pszBaseUri);
9100}
9101static inline HRESULT ISpRecoGrammar2_LoadCmdFromMemory2(ISpRecoGrammar2* This,const SPBINARYGRAMMAR *pGrammar,SPLOADOPTIONS Options,LPCWSTR pszSharingUri,LPCWSTR pszBaseUri) {
9102 return This->lpVtbl->LoadCmdFromMemory2(This,pGrammar,Options,pszSharingUri,pszBaseUri);
9103}
9104static inline HRESULT ISpRecoGrammar2_SetRulePriority(ISpRecoGrammar2* This,LPCWSTR pszRuleName,ULONG ulRuleId,int nRulePriority) {
9105 return This->lpVtbl->SetRulePriority(This,pszRuleName,ulRuleId,nRulePriority);
9106}
9107static inline HRESULT ISpRecoGrammar2_SetRuleWeight(ISpRecoGrammar2* This,LPCWSTR pszRuleName,ULONG ulRuleId,float flWeight) {
9108 return This->lpVtbl->SetRuleWeight(This,pszRuleName,ulRuleId,flWeight);
9109}
9110static inline HRESULT ISpRecoGrammar2_SetDictationWeight(ISpRecoGrammar2* This,float flWeight) {
9111 return This->lpVtbl->SetDictationWeight(This,flWeight);
9112}
9113static inline HRESULT ISpRecoGrammar2_SetGrammarLoader(ISpRecoGrammar2* This,ISpeechResourceLoader *pLoader) {
9114 return This->lpVtbl->SetGrammarLoader(This,pLoader);
9115}
9116static inline HRESULT ISpRecoGrammar2_SetSMLSecurityManager(ISpRecoGrammar2* This,IInternetSecurityManager *pSMLSecurityManager) {
9117 return This->lpVtbl->SetSMLSecurityManager(This,pSMLSecurityManager);
9118}
9119#endif
9120#endif
9121
9122#endif
9123
9124
9125#endif /* __ISpRecoGrammar2_INTERFACE_DEFINED__ */
9126
9127/*****************************************************************************
9128 * ISpeechResourceLoader interface
9129 */
9130#ifndef __ISpeechResourceLoader_INTERFACE_DEFINED__
9131#define __ISpeechResourceLoader_INTERFACE_DEFINED__
9132
9133DEFINE_GUID(IID_ISpeechResourceLoader, 0xb9ac5783, 0xfcd0, 0x4b21, 0xb1,0x19, 0xb4,0xf8,0xda,0x8f,0xd2,0xc3);
9134#if defined(__cplusplus) && !defined(CINTERFACE)
9135MIDL_INTERFACE("b9ac5783-fcd0-4b21-b119-b4f8da8fd2c3")
9136ISpeechResourceLoader : public IDispatch
9137{
9138 virtual HRESULT STDMETHODCALLTYPE LoadResource(
9139 BSTR bstrResourceUri,
9140 VARIANT_BOOL fAlwaysReload,
9141 IUnknown **pStream,
9142 BSTR *pbstrMIMEType,
9143 VARIANT_BOOL *pfModified,
9144 BSTR *pbstrRedirectUrl) = 0;
9145
9146 virtual HRESULT STDMETHODCALLTYPE GetLocalCopy(
9147 BSTR bstrResourceUri,
9148 BSTR *pbstrLocalPath,
9149 BSTR *pbstrMIMEType,
9150 BSTR *pbstrRedirectUrl) = 0;
9151
9152 virtual HRESULT STDMETHODCALLTYPE ReleaseLocalCopy(
9153 BSTR pbstrLocalPath) = 0;
9154
9155};
9156#ifdef __CRT_UUID_DECL
9157__CRT_UUID_DECL(ISpeechResourceLoader, 0xb9ac5783, 0xfcd0, 0x4b21, 0xb1,0x19, 0xb4,0xf8,0xda,0x8f,0xd2,0xc3)
9158#endif
9159#else
9160typedef struct ISpeechResourceLoaderVtbl {
9161 BEGIN_INTERFACE
9162
9163 /*** IUnknown methods ***/
9164 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9165 ISpeechResourceLoader *This,
9166 REFIID riid,
9167 void **ppvObject);
9168
9169 ULONG (STDMETHODCALLTYPE *AddRef)(
9170 ISpeechResourceLoader *This);
9171
9172 ULONG (STDMETHODCALLTYPE *Release)(
9173 ISpeechResourceLoader *This);
9174
9175 /*** IDispatch methods ***/
9176 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
9177 ISpeechResourceLoader *This,
9178 UINT *pctinfo);
9179
9180 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
9181 ISpeechResourceLoader *This,
9182 UINT iTInfo,
9183 LCID lcid,
9184 ITypeInfo **ppTInfo);
9185
9186 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
9187 ISpeechResourceLoader *This,
9188 REFIID riid,
9189 LPOLESTR *rgszNames,
9190 UINT cNames,
9191 LCID lcid,
9192 DISPID *rgDispId);
9193
9194 HRESULT (STDMETHODCALLTYPE *Invoke)(
9195 ISpeechResourceLoader *This,
9196 DISPID dispIdMember,
9197 REFIID riid,
9198 LCID lcid,
9199 WORD wFlags,
9200 DISPPARAMS *pDispParams,
9201 VARIANT *pVarResult,
9202 EXCEPINFO *pExcepInfo,
9203 UINT *puArgErr);
9204
9205 /*** ISpeechResourceLoader methods ***/
9206 HRESULT (STDMETHODCALLTYPE *LoadResource)(
9207 ISpeechResourceLoader *This,
9208 BSTR bstrResourceUri,
9209 VARIANT_BOOL fAlwaysReload,
9210 IUnknown **pStream,
9211 BSTR *pbstrMIMEType,
9212 VARIANT_BOOL *pfModified,
9213 BSTR *pbstrRedirectUrl);
9214
9215 HRESULT (STDMETHODCALLTYPE *GetLocalCopy)(
9216 ISpeechResourceLoader *This,
9217 BSTR bstrResourceUri,
9218 BSTR *pbstrLocalPath,
9219 BSTR *pbstrMIMEType,
9220 BSTR *pbstrRedirectUrl);
9221
9222 HRESULT (STDMETHODCALLTYPE *ReleaseLocalCopy)(
9223 ISpeechResourceLoader *This,
9224 BSTR pbstrLocalPath);
9225
9226 END_INTERFACE
9227} ISpeechResourceLoaderVtbl;
9228
9229interface ISpeechResourceLoader {
9230 CONST_VTBL ISpeechResourceLoaderVtbl* lpVtbl;
9231};
9232
9233#ifdef COBJMACROS
9234#ifndef WIDL_C_INLINE_WRAPPERS
9235/*** IUnknown methods ***/
9236#define ISpeechResourceLoader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9237#define ISpeechResourceLoader_AddRef(This) (This)->lpVtbl->AddRef(This)
9238#define ISpeechResourceLoader_Release(This) (This)->lpVtbl->Release(This)
9239/*** IDispatch methods ***/
9240#define ISpeechResourceLoader_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
9241#define ISpeechResourceLoader_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
9242#define ISpeechResourceLoader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
9243#define ISpeechResourceLoader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
9244/*** ISpeechResourceLoader methods ***/
9245#define ISpeechResourceLoader_LoadResource(This,bstrResourceUri,fAlwaysReload,pStream,pbstrMIMEType,pfModified,pbstrRedirectUrl) (This)->lpVtbl->LoadResource(This,bstrResourceUri,fAlwaysReload,pStream,pbstrMIMEType,pfModified,pbstrRedirectUrl)
9246#define ISpeechResourceLoader_GetLocalCopy(This,bstrResourceUri,pbstrLocalPath,pbstrMIMEType,pbstrRedirectUrl) (This)->lpVtbl->GetLocalCopy(This,bstrResourceUri,pbstrLocalPath,pbstrMIMEType,pbstrRedirectUrl)
9247#define ISpeechResourceLoader_ReleaseLocalCopy(This,pbstrLocalPath) (This)->lpVtbl->ReleaseLocalCopy(This,pbstrLocalPath)
9248#else
9249/*** IUnknown methods ***/
9250static inline HRESULT ISpeechResourceLoader_QueryInterface(ISpeechResourceLoader* This,REFIID riid,void **ppvObject) {
9251 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9252}
9253static inline ULONG ISpeechResourceLoader_AddRef(ISpeechResourceLoader* This) {
9254 return This->lpVtbl->AddRef(This);
9255}
9256static inline ULONG ISpeechResourceLoader_Release(ISpeechResourceLoader* This) {
9257 return This->lpVtbl->Release(This);
9258}
9259/*** IDispatch methods ***/
9260static inline HRESULT ISpeechResourceLoader_GetTypeInfoCount(ISpeechResourceLoader* This,UINT *pctinfo) {
9261 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
9262}
9263static inline HRESULT ISpeechResourceLoader_GetTypeInfo(ISpeechResourceLoader* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
9264 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
9265}
9266static inline HRESULT ISpeechResourceLoader_GetIDsOfNames(ISpeechResourceLoader* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
9267 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
9268}
9269static inline HRESULT ISpeechResourceLoader_Invoke(ISpeechResourceLoader* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
9270 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
9271}
9272/*** ISpeechResourceLoader methods ***/
9273static inline HRESULT ISpeechResourceLoader_LoadResource(ISpeechResourceLoader* This,BSTR bstrResourceUri,VARIANT_BOOL fAlwaysReload,IUnknown **pStream,BSTR *pbstrMIMEType,VARIANT_BOOL *pfModified,BSTR *pbstrRedirectUrl) {
9274 return This->lpVtbl->LoadResource(This,bstrResourceUri,fAlwaysReload,pStream,pbstrMIMEType,pfModified,pbstrRedirectUrl);
9275}
9276static inline HRESULT ISpeechResourceLoader_GetLocalCopy(ISpeechResourceLoader* This,BSTR bstrResourceUri,BSTR *pbstrLocalPath,BSTR *pbstrMIMEType,BSTR *pbstrRedirectUrl) {
9277 return This->lpVtbl->GetLocalCopy(This,bstrResourceUri,pbstrLocalPath,pbstrMIMEType,pbstrRedirectUrl);
9278}
9279static inline HRESULT ISpeechResourceLoader_ReleaseLocalCopy(ISpeechResourceLoader* This,BSTR pbstrLocalPath) {
9280 return This->lpVtbl->ReleaseLocalCopy(This,pbstrLocalPath);
9281}
9282#endif
9283#endif
9284
9285#endif
9286
9287
9288#endif /* __ISpeechResourceLoader_INTERFACE_DEFINED__ */
9289
9290typedef struct SPRECOCONTEXTSTATUS {
9291 SPINTERFERENCE eInterference;
9292 WCHAR szRequestTypeOfUI[255];
9293 DWORD dwReserved1;
9294 DWORD dwReserved2;
9295} SPRECOCONTEXTSTATUS;
9296typedef enum SPBOOKMARKOPTIONS {
9297 SPBO_NONE = 0,
9298 SPBO_PAUSE = 0x1,
9299 SPBO_AHEAD = 0x2,
9300 SPBO_TIME_UNITS = 0x4
9301} SPBOOKMARKOPTIONS;
9302typedef enum SPAUDIOOPTIONS {
9303 SPAO_NONE = 0,
9304 SPAO_RETAIN_AUDIO = 0x1
9305} SPAUDIOOPTIONS;
9306/*****************************************************************************
9307 * ISpRecoContext interface
9308 */
9309#ifndef __ISpRecoContext_INTERFACE_DEFINED__
9310#define __ISpRecoContext_INTERFACE_DEFINED__
9311
9312DEFINE_GUID(IID_ISpRecoContext, 0xf740a62f, 0x7c15, 0x489e, 0x82,0x34, 0x94,0x0a,0x33,0xd9,0x27,0x2d);
9313#if defined(__cplusplus) && !defined(CINTERFACE)
9314MIDL_INTERFACE("f740a62f-7c15-489e-8234-940a33d9272d")
9315ISpRecoContext : public ISpEventSource
9316{
9317 virtual HRESULT STDMETHODCALLTYPE GetRecognizer(
9318 ISpRecognizer **ppRecognizer) = 0;
9319
9320 virtual HRESULT STDMETHODCALLTYPE CreateGrammar(
9321 ULONGLONG ullGrammarId,
9322 ISpRecoGrammar **ppGrammar) = 0;
9323
9324 virtual HRESULT STDMETHODCALLTYPE GetStatus(
9325 SPRECOCONTEXTSTATUS *pStatus) = 0;
9326
9327 virtual HRESULT STDMETHODCALLTYPE GetMaxAlternates(
9328 ULONG *pcAlternates) = 0;
9329
9330 virtual HRESULT STDMETHODCALLTYPE SetMaxAlternates(
9331 ULONG cAlternates) = 0;
9332
9333 virtual HRESULT STDMETHODCALLTYPE SetAudioOptions(
9334 SPAUDIOOPTIONS Options,
9335 const GUID *pAudioFormatId,
9336 const WAVEFORMATEX *pWaveFormatEx) = 0;
9337
9338 virtual HRESULT STDMETHODCALLTYPE GetAudioOptions(
9339 SPAUDIOOPTIONS *pOptions,
9340 GUID *pAudioFormatId,
9341 WAVEFORMATEX **ppCoMemWFEX) = 0;
9342
9343 virtual HRESULT STDMETHODCALLTYPE DeserializeResult(
9344 const SPSERIALIZEDRESULT *pSerializedResult,
9345 ISpRecoResult **ppResult) = 0;
9346
9347 virtual HRESULT STDMETHODCALLTYPE Bookmark(
9348 SPBOOKMARKOPTIONS Options,
9349 ULONGLONG ullStreamPosition,
9350 LPARAM lparamEvent) = 0;
9351
9352 virtual HRESULT STDMETHODCALLTYPE SetAdaptationData(
9353 LPCWSTR pAdaptationData,
9354 const ULONG cch) = 0;
9355
9356 virtual HRESULT STDMETHODCALLTYPE Pause(
9357 DWORD dwReserved) = 0;
9358
9359 virtual HRESULT STDMETHODCALLTYPE Resume(
9360 DWORD dwReserved) = 0;
9361
9362 virtual HRESULT STDMETHODCALLTYPE SetVoice(
9363 ISpVoice *pVoice,
9364 WINBOOL fAllowFormatChanges) = 0;
9365
9366 virtual HRESULT STDMETHODCALLTYPE GetVoice(
9367 ISpVoice **ppVoice) = 0;
9368
9369 virtual HRESULT STDMETHODCALLTYPE SetVoicePurgeEvent(
9370 ULONGLONG ullEventInterest) = 0;
9371
9372 virtual HRESULT STDMETHODCALLTYPE GetVoicePurgeEvent(
9373 ULONGLONG *pullEventInterest) = 0;
9374
9375 virtual HRESULT STDMETHODCALLTYPE SetContextState(
9376 SPCONTEXTSTATE eContextState) = 0;
9377
9378 virtual HRESULT STDMETHODCALLTYPE GetContextState(
9379 SPCONTEXTSTATE *peContextState) = 0;
9380
9381};
9382#ifdef __CRT_UUID_DECL
9383__CRT_UUID_DECL(ISpRecoContext, 0xf740a62f, 0x7c15, 0x489e, 0x82,0x34, 0x94,0x0a,0x33,0xd9,0x27,0x2d)
9384#endif
9385#else
9386typedef struct ISpRecoContextVtbl {
9387 BEGIN_INTERFACE
9388
9389 /*** IUnknown methods ***/
9390 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9391 ISpRecoContext *This,
9392 REFIID riid,
9393 void **ppvObject);
9394
9395 ULONG (STDMETHODCALLTYPE *AddRef)(
9396 ISpRecoContext *This);
9397
9398 ULONG (STDMETHODCALLTYPE *Release)(
9399 ISpRecoContext *This);
9400
9401 /*** ISpNotifySource methods ***/
9402 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
9403 ISpRecoContext *This,
9404 ISpNotifySink *pNotifySink);
9405
9406 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
9407 ISpRecoContext *This,
9408 HWND hWnd,
9409 UINT Msg,
9410 WPARAM wParam,
9411 LPARAM lParam);
9412
9413 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
9414 ISpRecoContext *This,
9415 SPNOTIFYCALLBACK *pfnCallback,
9416 WPARAM wParam,
9417 LPARAM lParam);
9418
9419 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
9420 ISpRecoContext *This,
9421 ISpNotifyCallback *pSpCallback,
9422 WPARAM wParam,
9423 LPARAM lParam);
9424
9425 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
9426 ISpRecoContext *This);
9427
9428 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
9429 ISpRecoContext *This,
9430 DWORD dwMilliseconds);
9431
9432 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
9433 ISpRecoContext *This);
9434
9435 /*** ISpEventSource methods ***/
9436 HRESULT (STDMETHODCALLTYPE *SetInterest)(
9437 ISpRecoContext *This,
9438 ULONGLONG ullEventInterest,
9439 ULONGLONG ullQueuedInterest);
9440
9441 HRESULT (STDMETHODCALLTYPE *GetEvents)(
9442 ISpRecoContext *This,
9443 ULONG ulCount,
9444 SPEVENT *pEventArray,
9445 ULONG *pulFetched);
9446
9447 HRESULT (STDMETHODCALLTYPE *GetInfo)(
9448 ISpRecoContext *This,
9449 SPEVENTSOURCEINFO *pInfo);
9450
9451 /*** ISpRecoContext methods ***/
9452 HRESULT (STDMETHODCALLTYPE *GetRecognizer)(
9453 ISpRecoContext *This,
9454 ISpRecognizer **ppRecognizer);
9455
9456 HRESULT (STDMETHODCALLTYPE *CreateGrammar)(
9457 ISpRecoContext *This,
9458 ULONGLONG ullGrammarId,
9459 ISpRecoGrammar **ppGrammar);
9460
9461 HRESULT (STDMETHODCALLTYPE *GetStatus)(
9462 ISpRecoContext *This,
9463 SPRECOCONTEXTSTATUS *pStatus);
9464
9465 HRESULT (STDMETHODCALLTYPE *GetMaxAlternates)(
9466 ISpRecoContext *This,
9467 ULONG *pcAlternates);
9468
9469 HRESULT (STDMETHODCALLTYPE *SetMaxAlternates)(
9470 ISpRecoContext *This,
9471 ULONG cAlternates);
9472
9473 HRESULT (STDMETHODCALLTYPE *SetAudioOptions)(
9474 ISpRecoContext *This,
9475 SPAUDIOOPTIONS Options,
9476 const GUID *pAudioFormatId,
9477 const WAVEFORMATEX *pWaveFormatEx);
9478
9479 HRESULT (STDMETHODCALLTYPE *GetAudioOptions)(
9480 ISpRecoContext *This,
9481 SPAUDIOOPTIONS *pOptions,
9482 GUID *pAudioFormatId,
9483 WAVEFORMATEX **ppCoMemWFEX);
9484
9485 HRESULT (STDMETHODCALLTYPE *DeserializeResult)(
9486 ISpRecoContext *This,
9487 const SPSERIALIZEDRESULT *pSerializedResult,
9488 ISpRecoResult **ppResult);
9489
9490 HRESULT (STDMETHODCALLTYPE *Bookmark)(
9491 ISpRecoContext *This,
9492 SPBOOKMARKOPTIONS Options,
9493 ULONGLONG ullStreamPosition,
9494 LPARAM lparamEvent);
9495
9496 HRESULT (STDMETHODCALLTYPE *SetAdaptationData)(
9497 ISpRecoContext *This,
9498 LPCWSTR pAdaptationData,
9499 const ULONG cch);
9500
9501 HRESULT (STDMETHODCALLTYPE *Pause)(
9502 ISpRecoContext *This,
9503 DWORD dwReserved);
9504
9505 HRESULT (STDMETHODCALLTYPE *Resume)(
9506 ISpRecoContext *This,
9507 DWORD dwReserved);
9508
9509 HRESULT (STDMETHODCALLTYPE *SetVoice)(
9510 ISpRecoContext *This,
9511 ISpVoice *pVoice,
9512 WINBOOL fAllowFormatChanges);
9513
9514 HRESULT (STDMETHODCALLTYPE *GetVoice)(
9515 ISpRecoContext *This,
9516 ISpVoice **ppVoice);
9517
9518 HRESULT (STDMETHODCALLTYPE *SetVoicePurgeEvent)(
9519 ISpRecoContext *This,
9520 ULONGLONG ullEventInterest);
9521
9522 HRESULT (STDMETHODCALLTYPE *GetVoicePurgeEvent)(
9523 ISpRecoContext *This,
9524 ULONGLONG *pullEventInterest);
9525
9526 HRESULT (STDMETHODCALLTYPE *SetContextState)(
9527 ISpRecoContext *This,
9528 SPCONTEXTSTATE eContextState);
9529
9530 HRESULT (STDMETHODCALLTYPE *GetContextState)(
9531 ISpRecoContext *This,
9532 SPCONTEXTSTATE *peContextState);
9533
9534 END_INTERFACE
9535} ISpRecoContextVtbl;
9536
9537interface ISpRecoContext {
9538 CONST_VTBL ISpRecoContextVtbl* lpVtbl;
9539};
9540
9541#ifdef COBJMACROS
9542#ifndef WIDL_C_INLINE_WRAPPERS
9543/*** IUnknown methods ***/
9544#define ISpRecoContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9545#define ISpRecoContext_AddRef(This) (This)->lpVtbl->AddRef(This)
9546#define ISpRecoContext_Release(This) (This)->lpVtbl->Release(This)
9547/*** ISpNotifySource methods ***/
9548#define ISpRecoContext_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
9549#define ISpRecoContext_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
9550#define ISpRecoContext_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
9551#define ISpRecoContext_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
9552#define ISpRecoContext_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
9553#define ISpRecoContext_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
9554#define ISpRecoContext_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
9555/*** ISpEventSource methods ***/
9556#define ISpRecoContext_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
9557#define ISpRecoContext_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
9558#define ISpRecoContext_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
9559/*** ISpRecoContext methods ***/
9560#define ISpRecoContext_GetRecognizer(This,ppRecognizer) (This)->lpVtbl->GetRecognizer(This,ppRecognizer)
9561#define ISpRecoContext_CreateGrammar(This,ullGrammarId,ppGrammar) (This)->lpVtbl->CreateGrammar(This,ullGrammarId,ppGrammar)
9562#define ISpRecoContext_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
9563#define ISpRecoContext_GetMaxAlternates(This,pcAlternates) (This)->lpVtbl->GetMaxAlternates(This,pcAlternates)
9564#define ISpRecoContext_SetMaxAlternates(This,cAlternates) (This)->lpVtbl->SetMaxAlternates(This,cAlternates)
9565#define ISpRecoContext_SetAudioOptions(This,Options,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->SetAudioOptions(This,Options,pAudioFormatId,pWaveFormatEx)
9566#define ISpRecoContext_GetAudioOptions(This,pOptions,pAudioFormatId,ppCoMemWFEX) (This)->lpVtbl->GetAudioOptions(This,pOptions,pAudioFormatId,ppCoMemWFEX)
9567#define ISpRecoContext_DeserializeResult(This,pSerializedResult,ppResult) (This)->lpVtbl->DeserializeResult(This,pSerializedResult,ppResult)
9568#define ISpRecoContext_Bookmark(This,Options,ullStreamPosition,lparamEvent) (This)->lpVtbl->Bookmark(This,Options,ullStreamPosition,lparamEvent)
9569#define ISpRecoContext_SetAdaptationData(This,pAdaptationData,cch) (This)->lpVtbl->SetAdaptationData(This,pAdaptationData,cch)
9570#define ISpRecoContext_Pause(This,dwReserved) (This)->lpVtbl->Pause(This,dwReserved)
9571#define ISpRecoContext_Resume(This,dwReserved) (This)->lpVtbl->Resume(This,dwReserved)
9572#define ISpRecoContext_SetVoice(This,pVoice,fAllowFormatChanges) (This)->lpVtbl->SetVoice(This,pVoice,fAllowFormatChanges)
9573#define ISpRecoContext_GetVoice(This,ppVoice) (This)->lpVtbl->GetVoice(This,ppVoice)
9574#define ISpRecoContext_SetVoicePurgeEvent(This,ullEventInterest) (This)->lpVtbl->SetVoicePurgeEvent(This,ullEventInterest)
9575#define ISpRecoContext_GetVoicePurgeEvent(This,pullEventInterest) (This)->lpVtbl->GetVoicePurgeEvent(This,pullEventInterest)
9576#define ISpRecoContext_SetContextState(This,eContextState) (This)->lpVtbl->SetContextState(This,eContextState)
9577#define ISpRecoContext_GetContextState(This,peContextState) (This)->lpVtbl->GetContextState(This,peContextState)
9578#else
9579/*** IUnknown methods ***/
9580static inline HRESULT ISpRecoContext_QueryInterface(ISpRecoContext* This,REFIID riid,void **ppvObject) {
9581 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9582}
9583static inline ULONG ISpRecoContext_AddRef(ISpRecoContext* This) {
9584 return This->lpVtbl->AddRef(This);
9585}
9586static inline ULONG ISpRecoContext_Release(ISpRecoContext* This) {
9587 return This->lpVtbl->Release(This);
9588}
9589/*** ISpNotifySource methods ***/
9590static inline HRESULT ISpRecoContext_SetNotifySink(ISpRecoContext* This,ISpNotifySink *pNotifySink) {
9591 return This->lpVtbl->SetNotifySink(This,pNotifySink);
9592}
9593static inline HRESULT ISpRecoContext_SetNotifyWindowMessage(ISpRecoContext* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
9594 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
9595}
9596static inline HRESULT ISpRecoContext_SetNotifyCallbackFunction(ISpRecoContext* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
9597 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
9598}
9599static inline HRESULT ISpRecoContext_SetNotifyCallbackInterface(ISpRecoContext* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
9600 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
9601}
9602static inline HRESULT ISpRecoContext_SetNotifyWin32Event(ISpRecoContext* This) {
9603 return This->lpVtbl->SetNotifyWin32Event(This);
9604}
9605static inline HRESULT ISpRecoContext_WaitForNotifyEvent(ISpRecoContext* This,DWORD dwMilliseconds) {
9606 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
9607}
9608static inline HANDLE ISpRecoContext_GetNotifyEventHandle(ISpRecoContext* This) {
9609 return This->lpVtbl->GetNotifyEventHandle(This);
9610}
9611/*** ISpEventSource methods ***/
9612static inline HRESULT ISpRecoContext_SetInterest(ISpRecoContext* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
9613 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
9614}
9615static inline HRESULT ISpRecoContext_GetEvents(ISpRecoContext* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
9616 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
9617}
9618static inline HRESULT ISpRecoContext_GetInfo(ISpRecoContext* This,SPEVENTSOURCEINFO *pInfo) {
9619 return This->lpVtbl->GetInfo(This,pInfo);
9620}
9621/*** ISpRecoContext methods ***/
9622static inline HRESULT ISpRecoContext_GetRecognizer(ISpRecoContext* This,ISpRecognizer **ppRecognizer) {
9623 return This->lpVtbl->GetRecognizer(This,ppRecognizer);
9624}
9625static inline HRESULT ISpRecoContext_CreateGrammar(ISpRecoContext* This,ULONGLONG ullGrammarId,ISpRecoGrammar **ppGrammar) {
9626 return This->lpVtbl->CreateGrammar(This,ullGrammarId,ppGrammar);
9627}
9628static inline HRESULT ISpRecoContext_GetStatus(ISpRecoContext* This,SPRECOCONTEXTSTATUS *pStatus) {
9629 return This->lpVtbl->GetStatus(This,pStatus);
9630}
9631static inline HRESULT ISpRecoContext_GetMaxAlternates(ISpRecoContext* This,ULONG *pcAlternates) {
9632 return This->lpVtbl->GetMaxAlternates(This,pcAlternates);
9633}
9634static inline HRESULT ISpRecoContext_SetMaxAlternates(ISpRecoContext* This,ULONG cAlternates) {
9635 return This->lpVtbl->SetMaxAlternates(This,cAlternates);
9636}
9637static inline HRESULT ISpRecoContext_SetAudioOptions(ISpRecoContext* This,SPAUDIOOPTIONS Options,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
9638 return This->lpVtbl->SetAudioOptions(This,Options,pAudioFormatId,pWaveFormatEx);
9639}
9640static inline HRESULT ISpRecoContext_GetAudioOptions(ISpRecoContext* This,SPAUDIOOPTIONS *pOptions,GUID *pAudioFormatId,WAVEFORMATEX **ppCoMemWFEX) {
9641 return This->lpVtbl->GetAudioOptions(This,pOptions,pAudioFormatId,ppCoMemWFEX);
9642}
9643static inline HRESULT ISpRecoContext_DeserializeResult(ISpRecoContext* This,const SPSERIALIZEDRESULT *pSerializedResult,ISpRecoResult **ppResult) {
9644 return This->lpVtbl->DeserializeResult(This,pSerializedResult,ppResult);
9645}
9646static inline HRESULT ISpRecoContext_Bookmark(ISpRecoContext* This,SPBOOKMARKOPTIONS Options,ULONGLONG ullStreamPosition,LPARAM lparamEvent) {
9647 return This->lpVtbl->Bookmark(This,Options,ullStreamPosition,lparamEvent);
9648}
9649static inline HRESULT ISpRecoContext_SetAdaptationData(ISpRecoContext* This,LPCWSTR pAdaptationData,const ULONG cch) {
9650 return This->lpVtbl->SetAdaptationData(This,pAdaptationData,cch);
9651}
9652static inline HRESULT ISpRecoContext_Pause(ISpRecoContext* This,DWORD dwReserved) {
9653 return This->lpVtbl->Pause(This,dwReserved);
9654}
9655static inline HRESULT ISpRecoContext_Resume(ISpRecoContext* This,DWORD dwReserved) {
9656 return This->lpVtbl->Resume(This,dwReserved);
9657}
9658static inline HRESULT ISpRecoContext_SetVoice(ISpRecoContext* This,ISpVoice *pVoice,WINBOOL fAllowFormatChanges) {
9659 return This->lpVtbl->SetVoice(This,pVoice,fAllowFormatChanges);
9660}
9661static inline HRESULT ISpRecoContext_GetVoice(ISpRecoContext* This,ISpVoice **ppVoice) {
9662 return This->lpVtbl->GetVoice(This,ppVoice);
9663}
9664static inline HRESULT ISpRecoContext_SetVoicePurgeEvent(ISpRecoContext* This,ULONGLONG ullEventInterest) {
9665 return This->lpVtbl->SetVoicePurgeEvent(This,ullEventInterest);
9666}
9667static inline HRESULT ISpRecoContext_GetVoicePurgeEvent(ISpRecoContext* This,ULONGLONG *pullEventInterest) {
9668 return This->lpVtbl->GetVoicePurgeEvent(This,pullEventInterest);
9669}
9670static inline HRESULT ISpRecoContext_SetContextState(ISpRecoContext* This,SPCONTEXTSTATE eContextState) {
9671 return This->lpVtbl->SetContextState(This,eContextState);
9672}
9673static inline HRESULT ISpRecoContext_GetContextState(ISpRecoContext* This,SPCONTEXTSTATE *peContextState) {
9674 return This->lpVtbl->GetContextState(This,peContextState);
9675}
9676#endif
9677#endif
9678
9679#endif
9680
9681
9682#endif /* __ISpRecoContext_INTERFACE_DEFINED__ */
9683
9684typedef enum SPGRAMMAROPTIONS {
9685 SPGO_SAPI = 0x1,
9686 SPGO_SRGS = 0x2,
9687 SPGO_UPS = 0x4,
9688 SPGO_SRGS_MS_SCRIPT = 0x8,
9689 SPGO_FILE = 0x10,
9690 SPGO_HTTP = 0x20,
9691 SPGO_RES = 0x40,
9692 SPGO_OBJECT = 0x80,
9693 SPGO_SRGS_W3C_SCRIPT = 0x100,
9694 SPGO_SRGS_STG_SCRIPT = 0x200,
9695 SPGO_SRGS_SCRIPT = ((SPGO_SRGS | SPGO_SRGS_MS_SCRIPT) | SPGO_SRGS_W3C_SCRIPT) | SPGO_SRGS_STG_SCRIPT,
9696 SPGO_DEFAULT = 0x3fb,
9697 SPGO_ALL = 0x3ff
9698} SPGRAMMAROPTIONS;
9699typedef enum SPADAPTATIONSETTINGS {
9700 SPADS_Default = 0x0,
9701 SPADS_CurrentRecognizer = 0x1,
9702 SPADS_RecoProfile = 0x2,
9703 SPADS_Immediate = 0x4,
9704 SPADS_Reset = 0x8,
9705 SPADS_HighVolumeDataSource = 0x10
9706} SPADAPTATIONSETTINGS;
9707typedef enum SPADAPTATIONRELEVANCE {
9708 SPAR_Unknown = 0,
9709 SPAR_Low = 1,
9710 SPAR_Medium = 2,
9711 SPAR_High = 3
9712} SPADAPTATIONRELEVANCE;
9713/*****************************************************************************
9714 * ISpRecoContext2 interface
9715 */
9716#ifndef __ISpRecoContext2_INTERFACE_DEFINED__
9717#define __ISpRecoContext2_INTERFACE_DEFINED__
9718
9719DEFINE_GUID(IID_ISpRecoContext2, 0xbead311c, 0x52ff, 0x437f, 0x94,0x64, 0x6b,0x21,0x05,0x4c,0xa7,0x3d);
9720#if defined(__cplusplus) && !defined(CINTERFACE)
9721MIDL_INTERFACE("bead311c-52ff-437f-9464-6b21054ca73d")
9722ISpRecoContext2 : public IUnknown
9723{
9724 virtual HRESULT STDMETHODCALLTYPE SetGrammarOptions(
9725 DWORD eGrammarOptions) = 0;
9726
9727 virtual HRESULT STDMETHODCALLTYPE GetGrammarOptions(
9728 DWORD *peGrammarOptions) = 0;
9729
9730 virtual HRESULT STDMETHODCALLTYPE SetAdaptationData2(
9731 LPCWSTR pAdaptationData,
9732 const ULONG cch,
9733 LPCWSTR pTopicName,
9734 DWORD eAdaptationSettings,
9735 SPADAPTATIONRELEVANCE eRelevance) = 0;
9736
9737};
9738#ifdef __CRT_UUID_DECL
9739__CRT_UUID_DECL(ISpRecoContext2, 0xbead311c, 0x52ff, 0x437f, 0x94,0x64, 0x6b,0x21,0x05,0x4c,0xa7,0x3d)
9740#endif
9741#else
9742typedef struct ISpRecoContext2Vtbl {
9743 BEGIN_INTERFACE
9744
9745 /*** IUnknown methods ***/
9746 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9747 ISpRecoContext2 *This,
9748 REFIID riid,
9749 void **ppvObject);
9750
9751 ULONG (STDMETHODCALLTYPE *AddRef)(
9752 ISpRecoContext2 *This);
9753
9754 ULONG (STDMETHODCALLTYPE *Release)(
9755 ISpRecoContext2 *This);
9756
9757 /*** ISpRecoContext2 methods ***/
9758 HRESULT (STDMETHODCALLTYPE *SetGrammarOptions)(
9759 ISpRecoContext2 *This,
9760 DWORD eGrammarOptions);
9761
9762 HRESULT (STDMETHODCALLTYPE *GetGrammarOptions)(
9763 ISpRecoContext2 *This,
9764 DWORD *peGrammarOptions);
9765
9766 HRESULT (STDMETHODCALLTYPE *SetAdaptationData2)(
9767 ISpRecoContext2 *This,
9768 LPCWSTR pAdaptationData,
9769 const ULONG cch,
9770 LPCWSTR pTopicName,
9771 DWORD eAdaptationSettings,
9772 SPADAPTATIONRELEVANCE eRelevance);
9773
9774 END_INTERFACE
9775} ISpRecoContext2Vtbl;
9776
9777interface ISpRecoContext2 {
9778 CONST_VTBL ISpRecoContext2Vtbl* lpVtbl;
9779};
9780
9781#ifdef COBJMACROS
9782#ifndef WIDL_C_INLINE_WRAPPERS
9783/*** IUnknown methods ***/
9784#define ISpRecoContext2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9785#define ISpRecoContext2_AddRef(This) (This)->lpVtbl->AddRef(This)
9786#define ISpRecoContext2_Release(This) (This)->lpVtbl->Release(This)
9787/*** ISpRecoContext2 methods ***/
9788#define ISpRecoContext2_SetGrammarOptions(This,eGrammarOptions) (This)->lpVtbl->SetGrammarOptions(This,eGrammarOptions)
9789#define ISpRecoContext2_GetGrammarOptions(This,peGrammarOptions) (This)->lpVtbl->GetGrammarOptions(This,peGrammarOptions)
9790#define ISpRecoContext2_SetAdaptationData2(This,pAdaptationData,cch,pTopicName,eAdaptationSettings,eRelevance) (This)->lpVtbl->SetAdaptationData2(This,pAdaptationData,cch,pTopicName,eAdaptationSettings,eRelevance)
9791#else
9792/*** IUnknown methods ***/
9793static inline HRESULT ISpRecoContext2_QueryInterface(ISpRecoContext2* This,REFIID riid,void **ppvObject) {
9794 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9795}
9796static inline ULONG ISpRecoContext2_AddRef(ISpRecoContext2* This) {
9797 return This->lpVtbl->AddRef(This);
9798}
9799static inline ULONG ISpRecoContext2_Release(ISpRecoContext2* This) {
9800 return This->lpVtbl->Release(This);
9801}
9802/*** ISpRecoContext2 methods ***/
9803static inline HRESULT ISpRecoContext2_SetGrammarOptions(ISpRecoContext2* This,DWORD eGrammarOptions) {
9804 return This->lpVtbl->SetGrammarOptions(This,eGrammarOptions);
9805}
9806static inline HRESULT ISpRecoContext2_GetGrammarOptions(ISpRecoContext2* This,DWORD *peGrammarOptions) {
9807 return This->lpVtbl->GetGrammarOptions(This,peGrammarOptions);
9808}
9809static inline HRESULT ISpRecoContext2_SetAdaptationData2(ISpRecoContext2* This,LPCWSTR pAdaptationData,const ULONG cch,LPCWSTR pTopicName,DWORD eAdaptationSettings,SPADAPTATIONRELEVANCE eRelevance) {
9810 return This->lpVtbl->SetAdaptationData2(This,pAdaptationData,cch,pTopicName,eAdaptationSettings,eRelevance);
9811}
9812#endif
9813#endif
9814
9815#endif
9816
9817
9818#endif /* __ISpRecoContext2_INTERFACE_DEFINED__ */
9819
9820/*****************************************************************************
9821 * ISpProperties interface
9822 */
9823#ifndef __ISpProperties_INTERFACE_DEFINED__
9824#define __ISpProperties_INTERFACE_DEFINED__
9825
9826DEFINE_GUID(IID_ISpProperties, 0x5b4fb971, 0xb115, 0x4de1, 0xad,0x97, 0xe4,0x82,0xe3,0xbf,0x6e,0xe4);
9827#if defined(__cplusplus) && !defined(CINTERFACE)
9828MIDL_INTERFACE("5b4fb971-b115-4de1-ad97-e482e3bf6ee4")
9829ISpProperties : public IUnknown
9830{
9831 virtual HRESULT STDMETHODCALLTYPE SetPropertyNum(
9832 LPCWSTR pName,
9833 LONG lValue) = 0;
9834
9835 virtual HRESULT STDMETHODCALLTYPE GetPropertyNum(
9836 LPCWSTR pName,
9837 LONG *plValue) = 0;
9838
9839 virtual HRESULT STDMETHODCALLTYPE SetPropertyString(
9840 LPCWSTR pName,
9841 LPCWSTR pValue) = 0;
9842
9843 virtual HRESULT STDMETHODCALLTYPE GetPropertyString(
9844 LPCWSTR pName,
9845 LPWSTR *ppCoMemValue) = 0;
9846
9847};
9848#ifdef __CRT_UUID_DECL
9849__CRT_UUID_DECL(ISpProperties, 0x5b4fb971, 0xb115, 0x4de1, 0xad,0x97, 0xe4,0x82,0xe3,0xbf,0x6e,0xe4)
9850#endif
9851#else
9852typedef struct ISpPropertiesVtbl {
9853 BEGIN_INTERFACE
9854
9855 /*** IUnknown methods ***/
9856 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9857 ISpProperties *This,
9858 REFIID riid,
9859 void **ppvObject);
9860
9861 ULONG (STDMETHODCALLTYPE *AddRef)(
9862 ISpProperties *This);
9863
9864 ULONG (STDMETHODCALLTYPE *Release)(
9865 ISpProperties *This);
9866
9867 /*** ISpProperties methods ***/
9868 HRESULT (STDMETHODCALLTYPE *SetPropertyNum)(
9869 ISpProperties *This,
9870 LPCWSTR pName,
9871 LONG lValue);
9872
9873 HRESULT (STDMETHODCALLTYPE *GetPropertyNum)(
9874 ISpProperties *This,
9875 LPCWSTR pName,
9876 LONG *plValue);
9877
9878 HRESULT (STDMETHODCALLTYPE *SetPropertyString)(
9879 ISpProperties *This,
9880 LPCWSTR pName,
9881 LPCWSTR pValue);
9882
9883 HRESULT (STDMETHODCALLTYPE *GetPropertyString)(
9884 ISpProperties *This,
9885 LPCWSTR pName,
9886 LPWSTR *ppCoMemValue);
9887
9888 END_INTERFACE
9889} ISpPropertiesVtbl;
9890
9891interface ISpProperties {
9892 CONST_VTBL ISpPropertiesVtbl* lpVtbl;
9893};
9894
9895#ifdef COBJMACROS
9896#ifndef WIDL_C_INLINE_WRAPPERS
9897/*** IUnknown methods ***/
9898#define ISpProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9899#define ISpProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
9900#define ISpProperties_Release(This) (This)->lpVtbl->Release(This)
9901/*** ISpProperties methods ***/
9902#define ISpProperties_SetPropertyNum(This,pName,lValue) (This)->lpVtbl->SetPropertyNum(This,pName,lValue)
9903#define ISpProperties_GetPropertyNum(This,pName,plValue) (This)->lpVtbl->GetPropertyNum(This,pName,plValue)
9904#define ISpProperties_SetPropertyString(This,pName,pValue) (This)->lpVtbl->SetPropertyString(This,pName,pValue)
9905#define ISpProperties_GetPropertyString(This,pName,ppCoMemValue) (This)->lpVtbl->GetPropertyString(This,pName,ppCoMemValue)
9906#else
9907/*** IUnknown methods ***/
9908static inline HRESULT ISpProperties_QueryInterface(ISpProperties* This,REFIID riid,void **ppvObject) {
9909 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9910}
9911static inline ULONG ISpProperties_AddRef(ISpProperties* This) {
9912 return This->lpVtbl->AddRef(This);
9913}
9914static inline ULONG ISpProperties_Release(ISpProperties* This) {
9915 return This->lpVtbl->Release(This);
9916}
9917/*** ISpProperties methods ***/
9918static inline HRESULT ISpProperties_SetPropertyNum(ISpProperties* This,LPCWSTR pName,LONG lValue) {
9919 return This->lpVtbl->SetPropertyNum(This,pName,lValue);
9920}
9921static inline HRESULT ISpProperties_GetPropertyNum(ISpProperties* This,LPCWSTR pName,LONG *plValue) {
9922 return This->lpVtbl->GetPropertyNum(This,pName,plValue);
9923}
9924static inline HRESULT ISpProperties_SetPropertyString(ISpProperties* This,LPCWSTR pName,LPCWSTR pValue) {
9925 return This->lpVtbl->SetPropertyString(This,pName,pValue);
9926}
9927static inline HRESULT ISpProperties_GetPropertyString(ISpProperties* This,LPCWSTR pName,LPWSTR *ppCoMemValue) {
9928 return This->lpVtbl->GetPropertyString(This,pName,ppCoMemValue);
9929}
9930#endif
9931#endif
9932
9933#endif
9934
9935
9936#endif /* __ISpProperties_INTERFACE_DEFINED__ */
9937
9938#define SP_MAX_LANGIDS (20)
9939
9940typedef struct SPRECOGNIZERSTATUS {
9941 SPAUDIOSTATUS AudioStatus;
9942 ULONGLONG ullRecognitionStreamPos;
9943 ULONG ulStreamNumber;
9944 ULONG ulNumActive;
9945 CLSID clsidEngine;
9946 ULONG cLangIDs;
9947 WORD aLangID[20];
9948 ULONGLONG ullRecognitionStreamTime;
9949} SPRECOGNIZERSTATUS;
9950typedef enum SPWAVEFORMATTYPE {
9951 SPWF_INPUT = 0,
9952 SPWF_SRENGINE = 1
9953} SPSTREAMFORMATTYPE;
9954typedef enum SPRECOSTATE {
9955 SPRST_INACTIVE = 0,
9956 SPRST_ACTIVE = 1,
9957 SPRST_ACTIVE_ALWAYS = 2,
9958 SPRST_INACTIVE_WITH_PURGE = 3,
9959 SPRST_NUM_STATES = 4
9960} SPRECOSTATE;
9961typedef enum SPCATEGORYTYPE {
9962 SPCT_COMMAND = 0,
9963 SPCT_DICTATION = 1,
9964 SPCT_SLEEP = 2,
9965 SPCT_SUB_COMMAND = 3,
9966 SPCT_SUB_DICTATION = 4
9967} SPCATEGORYTYPE;
9968/*****************************************************************************
9969 * ISpRecognizer interface
9970 */
9971#ifndef __ISpRecognizer_INTERFACE_DEFINED__
9972#define __ISpRecognizer_INTERFACE_DEFINED__
9973
9974DEFINE_GUID(IID_ISpRecognizer, 0xc2b5f241, 0xdaa0, 0x4507, 0x9e,0x16, 0x5a,0x1e,0xaa,0x2b,0x7a,0x5c);
9975#if defined(__cplusplus) && !defined(CINTERFACE)
9976MIDL_INTERFACE("c2b5f241-daa0-4507-9e16-5a1eaa2b7a5c")
9977ISpRecognizer : public ISpProperties
9978{
9979 virtual HRESULT STDMETHODCALLTYPE SetRecognizer(
9980 ISpObjectToken *pRecognizer) = 0;
9981
9982 virtual HRESULT STDMETHODCALLTYPE GetRecognizer(
9983 ISpObjectToken **ppRecognizer) = 0;
9984
9985 virtual HRESULT STDMETHODCALLTYPE SetInput(
9986 IUnknown *pUnkInput,
9987 WINBOOL fAllowFormatChanges) = 0;
9988
9989 virtual HRESULT STDMETHODCALLTYPE GetInputObjectToken(
9990 ISpObjectToken **ppToken) = 0;
9991
9992 virtual HRESULT STDMETHODCALLTYPE GetInputStream(
9993 ISpStreamFormat **ppStream) = 0;
9994
9995 virtual HRESULT STDMETHODCALLTYPE CreateRecoContext(
9996 ISpRecoContext **ppNewCtxt) = 0;
9997
9998 virtual HRESULT STDMETHODCALLTYPE GetRecoProfile(
9999 ISpObjectToken **ppToken) = 0;
10000
10001 virtual HRESULT STDMETHODCALLTYPE SetRecoProfile(
10002 ISpObjectToken *pToken) = 0;
10003
10004 virtual HRESULT STDMETHODCALLTYPE IsSharedInstance(
10005 ) = 0;
10006
10007 virtual HRESULT STDMETHODCALLTYPE GetRecoState(
10008 SPRECOSTATE *pState) = 0;
10009
10010 virtual HRESULT STDMETHODCALLTYPE SetRecoState(
10011 SPRECOSTATE NewState) = 0;
10012
10013 virtual HRESULT STDMETHODCALLTYPE GetStatus(
10014 SPRECOGNIZERSTATUS *pStatus) = 0;
10015
10016 virtual HRESULT STDMETHODCALLTYPE GetFormat(
10017 SPSTREAMFORMATTYPE WaveFormatType,
10018 GUID *pFormatId,
10019 WAVEFORMATEX **ppCoMemWFEX) = 0;
10020
10021 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
10022 LPCWSTR pszTypeOfUI,
10023 void *pvExtraData,
10024 ULONG cbExtraData,
10025 WINBOOL *pfSupported) = 0;
10026
10027 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
10028 HWND hwndParent,
10029 LPCWSTR pszTitle,
10030 LPCWSTR pszTypeOfUI,
10031 void *pvExtraData,
10032 ULONG cbExtraData) = 0;
10033
10034 virtual HRESULT STDMETHODCALLTYPE EmulateRecognition(
10035 ISpPhrase *pPhrase) = 0;
10036
10037};
10038#ifdef __CRT_UUID_DECL
10039__CRT_UUID_DECL(ISpRecognizer, 0xc2b5f241, 0xdaa0, 0x4507, 0x9e,0x16, 0x5a,0x1e,0xaa,0x2b,0x7a,0x5c)
10040#endif
10041#else
10042typedef struct ISpRecognizerVtbl {
10043 BEGIN_INTERFACE
10044
10045 /*** IUnknown methods ***/
10046 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10047 ISpRecognizer *This,
10048 REFIID riid,
10049 void **ppvObject);
10050
10051 ULONG (STDMETHODCALLTYPE *AddRef)(
10052 ISpRecognizer *This);
10053
10054 ULONG (STDMETHODCALLTYPE *Release)(
10055 ISpRecognizer *This);
10056
10057 /*** ISpProperties methods ***/
10058 HRESULT (STDMETHODCALLTYPE *SetPropertyNum)(
10059 ISpRecognizer *This,
10060 LPCWSTR pName,
10061 LONG lValue);
10062
10063 HRESULT (STDMETHODCALLTYPE *GetPropertyNum)(
10064 ISpRecognizer *This,
10065 LPCWSTR pName,
10066 LONG *plValue);
10067
10068 HRESULT (STDMETHODCALLTYPE *SetPropertyString)(
10069 ISpRecognizer *This,
10070 LPCWSTR pName,
10071 LPCWSTR pValue);
10072
10073 HRESULT (STDMETHODCALLTYPE *GetPropertyString)(
10074 ISpRecognizer *This,
10075 LPCWSTR pName,
10076 LPWSTR *ppCoMemValue);
10077
10078 /*** ISpRecognizer methods ***/
10079 HRESULT (STDMETHODCALLTYPE *SetRecognizer)(
10080 ISpRecognizer *This,
10081 ISpObjectToken *pRecognizer);
10082
10083 HRESULT (STDMETHODCALLTYPE *GetRecognizer)(
10084 ISpRecognizer *This,
10085 ISpObjectToken **ppRecognizer);
10086
10087 HRESULT (STDMETHODCALLTYPE *SetInput)(
10088 ISpRecognizer *This,
10089 IUnknown *pUnkInput,
10090 WINBOOL fAllowFormatChanges);
10091
10092 HRESULT (STDMETHODCALLTYPE *GetInputObjectToken)(
10093 ISpRecognizer *This,
10094 ISpObjectToken **ppToken);
10095
10096 HRESULT (STDMETHODCALLTYPE *GetInputStream)(
10097 ISpRecognizer *This,
10098 ISpStreamFormat **ppStream);
10099
10100 HRESULT (STDMETHODCALLTYPE *CreateRecoContext)(
10101 ISpRecognizer *This,
10102 ISpRecoContext **ppNewCtxt);
10103
10104 HRESULT (STDMETHODCALLTYPE *GetRecoProfile)(
10105 ISpRecognizer *This,
10106 ISpObjectToken **ppToken);
10107
10108 HRESULT (STDMETHODCALLTYPE *SetRecoProfile)(
10109 ISpRecognizer *This,
10110 ISpObjectToken *pToken);
10111
10112 HRESULT (STDMETHODCALLTYPE *IsSharedInstance)(
10113 ISpRecognizer *This);
10114
10115 HRESULT (STDMETHODCALLTYPE *GetRecoState)(
10116 ISpRecognizer *This,
10117 SPRECOSTATE *pState);
10118
10119 HRESULT (STDMETHODCALLTYPE *SetRecoState)(
10120 ISpRecognizer *This,
10121 SPRECOSTATE NewState);
10122
10123 HRESULT (STDMETHODCALLTYPE *GetStatus)(
10124 ISpRecognizer *This,
10125 SPRECOGNIZERSTATUS *pStatus);
10126
10127 HRESULT (STDMETHODCALLTYPE *GetFormat)(
10128 ISpRecognizer *This,
10129 SPSTREAMFORMATTYPE WaveFormatType,
10130 GUID *pFormatId,
10131 WAVEFORMATEX **ppCoMemWFEX);
10132
10133 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
10134 ISpRecognizer *This,
10135 LPCWSTR pszTypeOfUI,
10136 void *pvExtraData,
10137 ULONG cbExtraData,
10138 WINBOOL *pfSupported);
10139
10140 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
10141 ISpRecognizer *This,
10142 HWND hwndParent,
10143 LPCWSTR pszTitle,
10144 LPCWSTR pszTypeOfUI,
10145 void *pvExtraData,
10146 ULONG cbExtraData);
10147
10148 HRESULT (STDMETHODCALLTYPE *EmulateRecognition)(
10149 ISpRecognizer *This,
10150 ISpPhrase *pPhrase);
10151
10152 END_INTERFACE
10153} ISpRecognizerVtbl;
10154
10155interface ISpRecognizer {
10156 CONST_VTBL ISpRecognizerVtbl* lpVtbl;
10157};
10158
10159#ifdef COBJMACROS
10160#ifndef WIDL_C_INLINE_WRAPPERS
10161/*** IUnknown methods ***/
10162#define ISpRecognizer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10163#define ISpRecognizer_AddRef(This) (This)->lpVtbl->AddRef(This)
10164#define ISpRecognizer_Release(This) (This)->lpVtbl->Release(This)
10165/*** ISpProperties methods ***/
10166#define ISpRecognizer_SetPropertyNum(This,pName,lValue) (This)->lpVtbl->SetPropertyNum(This,pName,lValue)
10167#define ISpRecognizer_GetPropertyNum(This,pName,plValue) (This)->lpVtbl->GetPropertyNum(This,pName,plValue)
10168#define ISpRecognizer_SetPropertyString(This,pName,pValue) (This)->lpVtbl->SetPropertyString(This,pName,pValue)
10169#define ISpRecognizer_GetPropertyString(This,pName,ppCoMemValue) (This)->lpVtbl->GetPropertyString(This,pName,ppCoMemValue)
10170/*** ISpRecognizer methods ***/
10171#define ISpRecognizer_SetRecognizer(This,pRecognizer) (This)->lpVtbl->SetRecognizer(This,pRecognizer)
10172#define ISpRecognizer_GetRecognizer(This,ppRecognizer) (This)->lpVtbl->GetRecognizer(This,ppRecognizer)
10173#define ISpRecognizer_SetInput(This,pUnkInput,fAllowFormatChanges) (This)->lpVtbl->SetInput(This,pUnkInput,fAllowFormatChanges)
10174#define ISpRecognizer_GetInputObjectToken(This,ppToken) (This)->lpVtbl->GetInputObjectToken(This,ppToken)
10175#define ISpRecognizer_GetInputStream(This,ppStream) (This)->lpVtbl->GetInputStream(This,ppStream)
10176#define ISpRecognizer_CreateRecoContext(This,ppNewCtxt) (This)->lpVtbl->CreateRecoContext(This,ppNewCtxt)
10177#define ISpRecognizer_GetRecoProfile(This,ppToken) (This)->lpVtbl->GetRecoProfile(This,ppToken)
10178#define ISpRecognizer_SetRecoProfile(This,pToken) (This)->lpVtbl->SetRecoProfile(This,pToken)
10179#define ISpRecognizer_IsSharedInstance(This) (This)->lpVtbl->IsSharedInstance(This)
10180#define ISpRecognizer_GetRecoState(This,pState) (This)->lpVtbl->GetRecoState(This,pState)
10181#define ISpRecognizer_SetRecoState(This,NewState) (This)->lpVtbl->SetRecoState(This,NewState)
10182#define ISpRecognizer_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
10183#define ISpRecognizer_GetFormat(This,WaveFormatType,pFormatId,ppCoMemWFEX) (This)->lpVtbl->GetFormat(This,WaveFormatType,pFormatId,ppCoMemWFEX)
10184#define ISpRecognizer_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported)
10185#define ISpRecognizer_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData)
10186#define ISpRecognizer_EmulateRecognition(This,pPhrase) (This)->lpVtbl->EmulateRecognition(This,pPhrase)
10187#else
10188/*** IUnknown methods ***/
10189static inline HRESULT ISpRecognizer_QueryInterface(ISpRecognizer* This,REFIID riid,void **ppvObject) {
10190 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10191}
10192static inline ULONG ISpRecognizer_AddRef(ISpRecognizer* This) {
10193 return This->lpVtbl->AddRef(This);
10194}
10195static inline ULONG ISpRecognizer_Release(ISpRecognizer* This) {
10196 return This->lpVtbl->Release(This);
10197}
10198/*** ISpProperties methods ***/
10199static inline HRESULT ISpRecognizer_SetPropertyNum(ISpRecognizer* This,LPCWSTR pName,LONG lValue) {
10200 return This->lpVtbl->SetPropertyNum(This,pName,lValue);
10201}
10202static inline HRESULT ISpRecognizer_GetPropertyNum(ISpRecognizer* This,LPCWSTR pName,LONG *plValue) {
10203 return This->lpVtbl->GetPropertyNum(This,pName,plValue);
10204}
10205static inline HRESULT ISpRecognizer_SetPropertyString(ISpRecognizer* This,LPCWSTR pName,LPCWSTR pValue) {
10206 return This->lpVtbl->SetPropertyString(This,pName,pValue);
10207}
10208static inline HRESULT ISpRecognizer_GetPropertyString(ISpRecognizer* This,LPCWSTR pName,LPWSTR *ppCoMemValue) {
10209 return This->lpVtbl->GetPropertyString(This,pName,ppCoMemValue);
10210}
10211/*** ISpRecognizer methods ***/
10212static inline HRESULT ISpRecognizer_SetRecognizer(ISpRecognizer* This,ISpObjectToken *pRecognizer) {
10213 return This->lpVtbl->SetRecognizer(This,pRecognizer);
10214}
10215static inline HRESULT ISpRecognizer_GetRecognizer(ISpRecognizer* This,ISpObjectToken **ppRecognizer) {
10216 return This->lpVtbl->GetRecognizer(This,ppRecognizer);
10217}
10218static inline HRESULT ISpRecognizer_SetInput(ISpRecognizer* This,IUnknown *pUnkInput,WINBOOL fAllowFormatChanges) {
10219 return This->lpVtbl->SetInput(This,pUnkInput,fAllowFormatChanges);
10220}
10221static inline HRESULT ISpRecognizer_GetInputObjectToken(ISpRecognizer* This,ISpObjectToken **ppToken) {
10222 return This->lpVtbl->GetInputObjectToken(This,ppToken);
10223}
10224static inline HRESULT ISpRecognizer_GetInputStream(ISpRecognizer* This,ISpStreamFormat **ppStream) {
10225 return This->lpVtbl->GetInputStream(This,ppStream);
10226}
10227static inline HRESULT ISpRecognizer_CreateRecoContext(ISpRecognizer* This,ISpRecoContext **ppNewCtxt) {
10228 return This->lpVtbl->CreateRecoContext(This,ppNewCtxt);
10229}
10230static inline HRESULT ISpRecognizer_GetRecoProfile(ISpRecognizer* This,ISpObjectToken **ppToken) {
10231 return This->lpVtbl->GetRecoProfile(This,ppToken);
10232}
10233static inline HRESULT ISpRecognizer_SetRecoProfile(ISpRecognizer* This,ISpObjectToken *pToken) {
10234 return This->lpVtbl->SetRecoProfile(This,pToken);
10235}
10236static inline HRESULT ISpRecognizer_IsSharedInstance(ISpRecognizer* This) {
10237 return This->lpVtbl->IsSharedInstance(This);
10238}
10239static inline HRESULT ISpRecognizer_GetRecoState(ISpRecognizer* This,SPRECOSTATE *pState) {
10240 return This->lpVtbl->GetRecoState(This,pState);
10241}
10242static inline HRESULT ISpRecognizer_SetRecoState(ISpRecognizer* This,SPRECOSTATE NewState) {
10243 return This->lpVtbl->SetRecoState(This,NewState);
10244}
10245static inline HRESULT ISpRecognizer_GetStatus(ISpRecognizer* This,SPRECOGNIZERSTATUS *pStatus) {
10246 return This->lpVtbl->GetStatus(This,pStatus);
10247}
10248static inline HRESULT ISpRecognizer_GetFormat(ISpRecognizer* This,SPSTREAMFORMATTYPE WaveFormatType,GUID *pFormatId,WAVEFORMATEX **ppCoMemWFEX) {
10249 return This->lpVtbl->GetFormat(This,WaveFormatType,pFormatId,ppCoMemWFEX);
10250}
10251static inline HRESULT ISpRecognizer_IsUISupported(ISpRecognizer* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,WINBOOL *pfSupported) {
10252 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported);
10253}
10254static inline HRESULT ISpRecognizer_DisplayUI(ISpRecognizer* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData) {
10255 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData);
10256}
10257static inline HRESULT ISpRecognizer_EmulateRecognition(ISpRecognizer* This,ISpPhrase *pPhrase) {
10258 return This->lpVtbl->EmulateRecognition(This,pPhrase);
10259}
10260#endif
10261#endif
10262
10263#endif
10264
10265
10266#endif /* __ISpRecognizer_INTERFACE_DEFINED__ */
10267
10268/*****************************************************************************
10269 * ISpSerializeState interface
10270 */
10271#ifndef __ISpSerializeState_INTERFACE_DEFINED__
10272#define __ISpSerializeState_INTERFACE_DEFINED__
10273
10274DEFINE_GUID(IID_ISpSerializeState, 0x21b501a0, 0x0ec7, 0x46c9, 0x92,0xc3, 0xa2,0xbc,0x78,0x4c,0x54,0xb9);
10275#if defined(__cplusplus) && !defined(CINTERFACE)
10276MIDL_INTERFACE("21b501a0-0ec7-46c9-92c3-a2bc784c54b9")
10277ISpSerializeState : public IUnknown
10278{
10279 virtual HRESULT STDMETHODCALLTYPE GetSerializedState(
10280 BYTE **ppbData,
10281 ULONG *pulSize,
10282 DWORD dwReserved) = 0;
10283
10284 virtual HRESULT STDMETHODCALLTYPE SetSerializedState(
10285 BYTE *pbData,
10286 ULONG ulSize,
10287 DWORD dwReserved) = 0;
10288
10289};
10290#ifdef __CRT_UUID_DECL
10291__CRT_UUID_DECL(ISpSerializeState, 0x21b501a0, 0x0ec7, 0x46c9, 0x92,0xc3, 0xa2,0xbc,0x78,0x4c,0x54,0xb9)
10292#endif
10293#else
10294typedef struct ISpSerializeStateVtbl {
10295 BEGIN_INTERFACE
10296
10297 /*** IUnknown methods ***/
10298 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10299 ISpSerializeState *This,
10300 REFIID riid,
10301 void **ppvObject);
10302
10303 ULONG (STDMETHODCALLTYPE *AddRef)(
10304 ISpSerializeState *This);
10305
10306 ULONG (STDMETHODCALLTYPE *Release)(
10307 ISpSerializeState *This);
10308
10309 /*** ISpSerializeState methods ***/
10310 HRESULT (STDMETHODCALLTYPE *GetSerializedState)(
10311 ISpSerializeState *This,
10312 BYTE **ppbData,
10313 ULONG *pulSize,
10314 DWORD dwReserved);
10315
10316 HRESULT (STDMETHODCALLTYPE *SetSerializedState)(
10317 ISpSerializeState *This,
10318 BYTE *pbData,
10319 ULONG ulSize,
10320 DWORD dwReserved);
10321
10322 END_INTERFACE
10323} ISpSerializeStateVtbl;
10324
10325interface ISpSerializeState {
10326 CONST_VTBL ISpSerializeStateVtbl* lpVtbl;
10327};
10328
10329#ifdef COBJMACROS
10330#ifndef WIDL_C_INLINE_WRAPPERS
10331/*** IUnknown methods ***/
10332#define ISpSerializeState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10333#define ISpSerializeState_AddRef(This) (This)->lpVtbl->AddRef(This)
10334#define ISpSerializeState_Release(This) (This)->lpVtbl->Release(This)
10335/*** ISpSerializeState methods ***/
10336#define ISpSerializeState_GetSerializedState(This,ppbData,pulSize,dwReserved) (This)->lpVtbl->GetSerializedState(This,ppbData,pulSize,dwReserved)
10337#define ISpSerializeState_SetSerializedState(This,pbData,ulSize,dwReserved) (This)->lpVtbl->SetSerializedState(This,pbData,ulSize,dwReserved)
10338#else
10339/*** IUnknown methods ***/
10340static inline HRESULT ISpSerializeState_QueryInterface(ISpSerializeState* This,REFIID riid,void **ppvObject) {
10341 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10342}
10343static inline ULONG ISpSerializeState_AddRef(ISpSerializeState* This) {
10344 return This->lpVtbl->AddRef(This);
10345}
10346static inline ULONG ISpSerializeState_Release(ISpSerializeState* This) {
10347 return This->lpVtbl->Release(This);
10348}
10349/*** ISpSerializeState methods ***/
10350static inline HRESULT ISpSerializeState_GetSerializedState(ISpSerializeState* This,BYTE **ppbData,ULONG *pulSize,DWORD dwReserved) {
10351 return This->lpVtbl->GetSerializedState(This,ppbData,pulSize,dwReserved);
10352}
10353static inline HRESULT ISpSerializeState_SetSerializedState(ISpSerializeState* This,BYTE *pbData,ULONG ulSize,DWORD dwReserved) {
10354 return This->lpVtbl->SetSerializedState(This,pbData,ulSize,dwReserved);
10355}
10356#endif
10357#endif
10358
10359#endif
10360
10361
10362#endif /* __ISpSerializeState_INTERFACE_DEFINED__ */
10363
10364/*****************************************************************************
10365 * ISpRecognizer2 interface
10366 */
10367#ifndef __ISpRecognizer2_INTERFACE_DEFINED__
10368#define __ISpRecognizer2_INTERFACE_DEFINED__
10369
10370DEFINE_GUID(IID_ISpRecognizer2, 0x8fc6d974, 0xc81e, 0x4098, 0x93,0xc5, 0x01,0x47,0xf6,0x1e,0xd4,0xd3);
10371#if defined(__cplusplus) && !defined(CINTERFACE)
10372MIDL_INTERFACE("8fc6d974-c81e-4098-93c5-0147f61ed4d3")
10373ISpRecognizer2 : public IUnknown
10374{
10375 virtual HRESULT STDMETHODCALLTYPE EmulateRecognitionEx(
10376 ISpPhrase *pPhrase,
10377 DWORD dwCompareFlags) = 0;
10378
10379 virtual HRESULT STDMETHODCALLTYPE SetTrainingState(
10380 WINBOOL fDoingTraining,
10381 WINBOOL fAdaptFromTrainingData) = 0;
10382
10383 virtual HRESULT STDMETHODCALLTYPE ResetAcousticModelAdaptation(
10384 ) = 0;
10385
10386};
10387#ifdef __CRT_UUID_DECL
10388__CRT_UUID_DECL(ISpRecognizer2, 0x8fc6d974, 0xc81e, 0x4098, 0x93,0xc5, 0x01,0x47,0xf6,0x1e,0xd4,0xd3)
10389#endif
10390#else
10391typedef struct ISpRecognizer2Vtbl {
10392 BEGIN_INTERFACE
10393
10394 /*** IUnknown methods ***/
10395 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10396 ISpRecognizer2 *This,
10397 REFIID riid,
10398 void **ppvObject);
10399
10400 ULONG (STDMETHODCALLTYPE *AddRef)(
10401 ISpRecognizer2 *This);
10402
10403 ULONG (STDMETHODCALLTYPE *Release)(
10404 ISpRecognizer2 *This);
10405
10406 /*** ISpRecognizer2 methods ***/
10407 HRESULT (STDMETHODCALLTYPE *EmulateRecognitionEx)(
10408 ISpRecognizer2 *This,
10409 ISpPhrase *pPhrase,
10410 DWORD dwCompareFlags);
10411
10412 HRESULT (STDMETHODCALLTYPE *SetTrainingState)(
10413 ISpRecognizer2 *This,
10414 WINBOOL fDoingTraining,
10415 WINBOOL fAdaptFromTrainingData);
10416
10417 HRESULT (STDMETHODCALLTYPE *ResetAcousticModelAdaptation)(
10418 ISpRecognizer2 *This);
10419
10420 END_INTERFACE
10421} ISpRecognizer2Vtbl;
10422
10423interface ISpRecognizer2 {
10424 CONST_VTBL ISpRecognizer2Vtbl* lpVtbl;
10425};
10426
10427#ifdef COBJMACROS
10428#ifndef WIDL_C_INLINE_WRAPPERS
10429/*** IUnknown methods ***/
10430#define ISpRecognizer2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10431#define ISpRecognizer2_AddRef(This) (This)->lpVtbl->AddRef(This)
10432#define ISpRecognizer2_Release(This) (This)->lpVtbl->Release(This)
10433/*** ISpRecognizer2 methods ***/
10434#define ISpRecognizer2_EmulateRecognitionEx(This,pPhrase,dwCompareFlags) (This)->lpVtbl->EmulateRecognitionEx(This,pPhrase,dwCompareFlags)
10435#define ISpRecognizer2_SetTrainingState(This,fDoingTraining,fAdaptFromTrainingData) (This)->lpVtbl->SetTrainingState(This,fDoingTraining,fAdaptFromTrainingData)
10436#define ISpRecognizer2_ResetAcousticModelAdaptation(This) (This)->lpVtbl->ResetAcousticModelAdaptation(This)
10437#else
10438/*** IUnknown methods ***/
10439static inline HRESULT ISpRecognizer2_QueryInterface(ISpRecognizer2* This,REFIID riid,void **ppvObject) {
10440 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10441}
10442static inline ULONG ISpRecognizer2_AddRef(ISpRecognizer2* This) {
10443 return This->lpVtbl->AddRef(This);
10444}
10445static inline ULONG ISpRecognizer2_Release(ISpRecognizer2* This) {
10446 return This->lpVtbl->Release(This);
10447}
10448/*** ISpRecognizer2 methods ***/
10449static inline HRESULT ISpRecognizer2_EmulateRecognitionEx(ISpRecognizer2* This,ISpPhrase *pPhrase,DWORD dwCompareFlags) {
10450 return This->lpVtbl->EmulateRecognitionEx(This,pPhrase,dwCompareFlags);
10451}
10452static inline HRESULT ISpRecognizer2_SetTrainingState(ISpRecognizer2* This,WINBOOL fDoingTraining,WINBOOL fAdaptFromTrainingData) {
10453 return This->lpVtbl->SetTrainingState(This,fDoingTraining,fAdaptFromTrainingData);
10454}
10455static inline HRESULT ISpRecognizer2_ResetAcousticModelAdaptation(ISpRecognizer2* This) {
10456 return This->lpVtbl->ResetAcousticModelAdaptation(This);
10457}
10458#endif
10459#endif
10460
10461#endif
10462
10463
10464#endif /* __ISpRecognizer2_INTERFACE_DEFINED__ */
10465
10466/*****************************************************************************
10467 * ISpRecoCategory interface
10468 */
10469#ifndef __ISpRecoCategory_INTERFACE_DEFINED__
10470#define __ISpRecoCategory_INTERFACE_DEFINED__
10471
10472DEFINE_GUID(IID_ISpRecoCategory, 0xda0cd0f9, 0x14a2, 0x4f09, 0x8c,0x2a, 0x85,0xcc,0x48,0x97,0x93,0x45);
10473#if defined(__cplusplus) && !defined(CINTERFACE)
10474MIDL_INTERFACE("da0cd0f9-14a2-4f09-8c2a-85cc48979345")
10475ISpRecoCategory : public IUnknown
10476{
10477 virtual HRESULT STDMETHODCALLTYPE GetType(
10478 SPCATEGORYTYPE *peCategoryType) = 0;
10479
10480};
10481#ifdef __CRT_UUID_DECL
10482__CRT_UUID_DECL(ISpRecoCategory, 0xda0cd0f9, 0x14a2, 0x4f09, 0x8c,0x2a, 0x85,0xcc,0x48,0x97,0x93,0x45)
10483#endif
10484#else
10485typedef struct ISpRecoCategoryVtbl {
10486 BEGIN_INTERFACE
10487
10488 /*** IUnknown methods ***/
10489 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10490 ISpRecoCategory *This,
10491 REFIID riid,
10492 void **ppvObject);
10493
10494 ULONG (STDMETHODCALLTYPE *AddRef)(
10495 ISpRecoCategory *This);
10496
10497 ULONG (STDMETHODCALLTYPE *Release)(
10498 ISpRecoCategory *This);
10499
10500 /*** ISpRecoCategory methods ***/
10501 HRESULT (STDMETHODCALLTYPE *GetType)(
10502 ISpRecoCategory *This,
10503 SPCATEGORYTYPE *peCategoryType);
10504
10505 END_INTERFACE
10506} ISpRecoCategoryVtbl;
10507
10508interface ISpRecoCategory {
10509 CONST_VTBL ISpRecoCategoryVtbl* lpVtbl;
10510};
10511
10512#ifdef COBJMACROS
10513#ifndef WIDL_C_INLINE_WRAPPERS
10514/*** IUnknown methods ***/
10515#define ISpRecoCategory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10516#define ISpRecoCategory_AddRef(This) (This)->lpVtbl->AddRef(This)
10517#define ISpRecoCategory_Release(This) (This)->lpVtbl->Release(This)
10518/*** ISpRecoCategory methods ***/
10519#define ISpRecoCategory_GetType(This,peCategoryType) (This)->lpVtbl->GetType(This,peCategoryType)
10520#else
10521/*** IUnknown methods ***/
10522static inline HRESULT ISpRecoCategory_QueryInterface(ISpRecoCategory* This,REFIID riid,void **ppvObject) {
10523 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10524}
10525static inline ULONG ISpRecoCategory_AddRef(ISpRecoCategory* This) {
10526 return This->lpVtbl->AddRef(This);
10527}
10528static inline ULONG ISpRecoCategory_Release(ISpRecoCategory* This) {
10529 return This->lpVtbl->Release(This);
10530}
10531/*** ISpRecoCategory methods ***/
10532static inline HRESULT ISpRecoCategory_GetType(ISpRecoCategory* This,SPCATEGORYTYPE *peCategoryType) {
10533 return This->lpVtbl->GetType(This,peCategoryType);
10534}
10535#endif
10536#endif
10537
10538#endif
10539
10540
10541#endif /* __ISpRecoCategory_INTERFACE_DEFINED__ */
10542
10543/*****************************************************************************
10544 * ISpRecognizer3 interface
10545 */
10546#ifndef __ISpRecognizer3_INTERFACE_DEFINED__
10547#define __ISpRecognizer3_INTERFACE_DEFINED__
10548
10549DEFINE_GUID(IID_ISpRecognizer3, 0xdf1b943c, 0x5838, 0x4aa2, 0x87,0x06, 0xd7,0xcd,0x5b,0x33,0x34,0x99);
10550#if defined(__cplusplus) && !defined(CINTERFACE)
10551MIDL_INTERFACE("df1b943c-5838-4aa2-8706-d7cd5b333499")
10552ISpRecognizer3 : public IUnknown
10553{
10554 virtual HRESULT STDMETHODCALLTYPE GetCategory(
10555 SPCATEGORYTYPE categoryType,
10556 ISpRecoCategory **ppCategory) = 0;
10557
10558 virtual HRESULT STDMETHODCALLTYPE SetActiveCategory(
10559 ISpRecoCategory *pCategory) = 0;
10560
10561 virtual HRESULT STDMETHODCALLTYPE GetActiveCategory(
10562 ISpRecoCategory **ppCategory) = 0;
10563
10564};
10565#ifdef __CRT_UUID_DECL
10566__CRT_UUID_DECL(ISpRecognizer3, 0xdf1b943c, 0x5838, 0x4aa2, 0x87,0x06, 0xd7,0xcd,0x5b,0x33,0x34,0x99)
10567#endif
10568#else
10569typedef struct ISpRecognizer3Vtbl {
10570 BEGIN_INTERFACE
10571
10572 /*** IUnknown methods ***/
10573 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10574 ISpRecognizer3 *This,
10575 REFIID riid,
10576 void **ppvObject);
10577
10578 ULONG (STDMETHODCALLTYPE *AddRef)(
10579 ISpRecognizer3 *This);
10580
10581 ULONG (STDMETHODCALLTYPE *Release)(
10582 ISpRecognizer3 *This);
10583
10584 /*** ISpRecognizer3 methods ***/
10585 HRESULT (STDMETHODCALLTYPE *GetCategory)(
10586 ISpRecognizer3 *This,
10587 SPCATEGORYTYPE categoryType,
10588 ISpRecoCategory **ppCategory);
10589
10590 HRESULT (STDMETHODCALLTYPE *SetActiveCategory)(
10591 ISpRecognizer3 *This,
10592 ISpRecoCategory *pCategory);
10593
10594 HRESULT (STDMETHODCALLTYPE *GetActiveCategory)(
10595 ISpRecognizer3 *This,
10596 ISpRecoCategory **ppCategory);
10597
10598 END_INTERFACE
10599} ISpRecognizer3Vtbl;
10600
10601interface ISpRecognizer3 {
10602 CONST_VTBL ISpRecognizer3Vtbl* lpVtbl;
10603};
10604
10605#ifdef COBJMACROS
10606#ifndef WIDL_C_INLINE_WRAPPERS
10607/*** IUnknown methods ***/
10608#define ISpRecognizer3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10609#define ISpRecognizer3_AddRef(This) (This)->lpVtbl->AddRef(This)
10610#define ISpRecognizer3_Release(This) (This)->lpVtbl->Release(This)
10611/*** ISpRecognizer3 methods ***/
10612#define ISpRecognizer3_GetCategory(This,categoryType,ppCategory) (This)->lpVtbl->GetCategory(This,categoryType,ppCategory)
10613#define ISpRecognizer3_SetActiveCategory(This,pCategory) (This)->lpVtbl->SetActiveCategory(This,pCategory)
10614#define ISpRecognizer3_GetActiveCategory(This,ppCategory) (This)->lpVtbl->GetActiveCategory(This,ppCategory)
10615#else
10616/*** IUnknown methods ***/
10617static inline HRESULT ISpRecognizer3_QueryInterface(ISpRecognizer3* This,REFIID riid,void **ppvObject) {
10618 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10619}
10620static inline ULONG ISpRecognizer3_AddRef(ISpRecognizer3* This) {
10621 return This->lpVtbl->AddRef(This);
10622}
10623static inline ULONG ISpRecognizer3_Release(ISpRecognizer3* This) {
10624 return This->lpVtbl->Release(This);
10625}
10626/*** ISpRecognizer3 methods ***/
10627static inline HRESULT ISpRecognizer3_GetCategory(ISpRecognizer3* This,SPCATEGORYTYPE categoryType,ISpRecoCategory **ppCategory) {
10628 return This->lpVtbl->GetCategory(This,categoryType,ppCategory);
10629}
10630static inline HRESULT ISpRecognizer3_SetActiveCategory(ISpRecognizer3* This,ISpRecoCategory *pCategory) {
10631 return This->lpVtbl->SetActiveCategory(This,pCategory);
10632}
10633static inline HRESULT ISpRecognizer3_GetActiveCategory(ISpRecognizer3* This,ISpRecoCategory **ppCategory) {
10634 return This->lpVtbl->GetActiveCategory(This,ppCategory);
10635}
10636#endif
10637#endif
10638
10639#endif
10640
10641
10642#endif /* __ISpRecognizer3_INTERFACE_DEFINED__ */
10643
10644typedef struct SPNORMALIZATIONLIST {
10645 ULONG ulSize;
10646 WCHAR **ppszzNormalizedList;
10647} SPNORMALIZATIONLIST;
10648/*****************************************************************************
10649 * ISpEnginePronunciation interface
10650 */
10651#ifndef __ISpEnginePronunciation_INTERFACE_DEFINED__
10652#define __ISpEnginePronunciation_INTERFACE_DEFINED__
10653
10654DEFINE_GUID(IID_ISpEnginePronunciation, 0xc360ce4b, 0x76d1, 0x4214, 0xad,0x68, 0x52,0x65,0x7d,0x50,0x83,0xda);
10655#if defined(__cplusplus) && !defined(CINTERFACE)
10656MIDL_INTERFACE("c360ce4b-76d1-4214-ad68-52657d5083da")
10657ISpEnginePronunciation : public IUnknown
10658{
10659 virtual HRESULT STDMETHODCALLTYPE Normalize(
10660 LPCWSTR pszWord,
10661 LPCWSTR pszLeftContext,
10662 LPCWSTR pszRightContext,
10663 WORD LangID,
10664 SPNORMALIZATIONLIST *pNormalizationList) = 0;
10665
10666 virtual HRESULT STDMETHODCALLTYPE GetPronunciations(
10667 LPCWSTR pszWord,
10668 LPCWSTR pszLeftContext,
10669 LPCWSTR pszRightContext,
10670 WORD LangID,
10671 SPWORDPRONUNCIATIONLIST *pEnginePronunciationList) = 0;
10672
10673};
10674#ifdef __CRT_UUID_DECL
10675__CRT_UUID_DECL(ISpEnginePronunciation, 0xc360ce4b, 0x76d1, 0x4214, 0xad,0x68, 0x52,0x65,0x7d,0x50,0x83,0xda)
10676#endif
10677#else
10678typedef struct ISpEnginePronunciationVtbl {
10679 BEGIN_INTERFACE
10680
10681 /*** IUnknown methods ***/
10682 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10683 ISpEnginePronunciation *This,
10684 REFIID riid,
10685 void **ppvObject);
10686
10687 ULONG (STDMETHODCALLTYPE *AddRef)(
10688 ISpEnginePronunciation *This);
10689
10690 ULONG (STDMETHODCALLTYPE *Release)(
10691 ISpEnginePronunciation *This);
10692
10693 /*** ISpEnginePronunciation methods ***/
10694 HRESULT (STDMETHODCALLTYPE *Normalize)(
10695 ISpEnginePronunciation *This,
10696 LPCWSTR pszWord,
10697 LPCWSTR pszLeftContext,
10698 LPCWSTR pszRightContext,
10699 WORD LangID,
10700 SPNORMALIZATIONLIST *pNormalizationList);
10701
10702 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
10703 ISpEnginePronunciation *This,
10704 LPCWSTR pszWord,
10705 LPCWSTR pszLeftContext,
10706 LPCWSTR pszRightContext,
10707 WORD LangID,
10708 SPWORDPRONUNCIATIONLIST *pEnginePronunciationList);
10709
10710 END_INTERFACE
10711} ISpEnginePronunciationVtbl;
10712
10713interface ISpEnginePronunciation {
10714 CONST_VTBL ISpEnginePronunciationVtbl* lpVtbl;
10715};
10716
10717#ifdef COBJMACROS
10718#ifndef WIDL_C_INLINE_WRAPPERS
10719/*** IUnknown methods ***/
10720#define ISpEnginePronunciation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10721#define ISpEnginePronunciation_AddRef(This) (This)->lpVtbl->AddRef(This)
10722#define ISpEnginePronunciation_Release(This) (This)->lpVtbl->Release(This)
10723/*** ISpEnginePronunciation methods ***/
10724#define ISpEnginePronunciation_Normalize(This,pszWord,pszLeftContext,pszRightContext,LangID,pNormalizationList) (This)->lpVtbl->Normalize(This,pszWord,pszLeftContext,pszRightContext,LangID,pNormalizationList)
10725#define ISpEnginePronunciation_GetPronunciations(This,pszWord,pszLeftContext,pszRightContext,LangID,pEnginePronunciationList) (This)->lpVtbl->GetPronunciations(This,pszWord,pszLeftContext,pszRightContext,LangID,pEnginePronunciationList)
10726#else
10727/*** IUnknown methods ***/
10728static inline HRESULT ISpEnginePronunciation_QueryInterface(ISpEnginePronunciation* This,REFIID riid,void **ppvObject) {
10729 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10730}
10731static inline ULONG ISpEnginePronunciation_AddRef(ISpEnginePronunciation* This) {
10732 return This->lpVtbl->AddRef(This);
10733}
10734static inline ULONG ISpEnginePronunciation_Release(ISpEnginePronunciation* This) {
10735 return This->lpVtbl->Release(This);
10736}
10737/*** ISpEnginePronunciation methods ***/
10738static inline HRESULT ISpEnginePronunciation_Normalize(ISpEnginePronunciation* This,LPCWSTR pszWord,LPCWSTR pszLeftContext,LPCWSTR pszRightContext,WORD LangID,SPNORMALIZATIONLIST *pNormalizationList) {
10739 return This->lpVtbl->Normalize(This,pszWord,pszLeftContext,pszRightContext,LangID,pNormalizationList);
10740}
10741static inline HRESULT ISpEnginePronunciation_GetPronunciations(ISpEnginePronunciation* This,LPCWSTR pszWord,LPCWSTR pszLeftContext,LPCWSTR pszRightContext,WORD LangID,SPWORDPRONUNCIATIONLIST *pEnginePronunciationList) {
10742 return This->lpVtbl->GetPronunciations(This,pszWord,pszLeftContext,pszRightContext,LangID,pEnginePronunciationList);
10743}
10744#endif
10745#endif
10746
10747#endif
10748
10749
10750#endif /* __ISpEnginePronunciation_INTERFACE_DEFINED__ */
10751
10752typedef struct SPDISPLAYTOKEN {
10753 const WCHAR *pszLexical;
10754 const WCHAR *pszDisplay;
10755 BYTE bDisplayAttributes;
10756} SPDISPLAYTOKEN;
10757typedef struct SPDISPLAYPHRASE {
10758 ULONG ulNumTokens;
10759 SPDISPLAYTOKEN *pTokens;
10760} SPDISPLAYPHRASE;
10761/*****************************************************************************
10762 * ISpDisplayAlternates interface
10763 */
10764#ifndef __ISpDisplayAlternates_INTERFACE_DEFINED__
10765#define __ISpDisplayAlternates_INTERFACE_DEFINED__
10766
10767DEFINE_GUID(IID_ISpDisplayAlternates, 0xc8d7c7e2, 0x0dde, 0x44b7, 0xaf,0xe3, 0xb0,0xc9,0x91,0xfb,0xeb,0x5e);
10768#if defined(__cplusplus) && !defined(CINTERFACE)
10769MIDL_INTERFACE("c8d7c7e2-0dde-44b7-afe3-b0c991fbeb5e")
10770ISpDisplayAlternates : public IUnknown
10771{
10772 virtual HRESULT STDMETHODCALLTYPE GetDisplayAlternates(
10773 const SPDISPLAYPHRASE *pPhrase,
10774 ULONG cRequestCount,
10775 SPDISPLAYPHRASE **ppCoMemPhrases,
10776 ULONG *pcPhrasesReturned) = 0;
10777
10778 virtual HRESULT STDMETHODCALLTYPE SetFullStopTrailSpace(
10779 ULONG ulTrailSpace) = 0;
10780
10781};
10782#ifdef __CRT_UUID_DECL
10783__CRT_UUID_DECL(ISpDisplayAlternates, 0xc8d7c7e2, 0x0dde, 0x44b7, 0xaf,0xe3, 0xb0,0xc9,0x91,0xfb,0xeb,0x5e)
10784#endif
10785#else
10786typedef struct ISpDisplayAlternatesVtbl {
10787 BEGIN_INTERFACE
10788
10789 /*** IUnknown methods ***/
10790 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10791 ISpDisplayAlternates *This,
10792 REFIID riid,
10793 void **ppvObject);
10794
10795 ULONG (STDMETHODCALLTYPE *AddRef)(
10796 ISpDisplayAlternates *This);
10797
10798 ULONG (STDMETHODCALLTYPE *Release)(
10799 ISpDisplayAlternates *This);
10800
10801 /*** ISpDisplayAlternates methods ***/
10802 HRESULT (STDMETHODCALLTYPE *GetDisplayAlternates)(
10803 ISpDisplayAlternates *This,
10804 const SPDISPLAYPHRASE *pPhrase,
10805 ULONG cRequestCount,
10806 SPDISPLAYPHRASE **ppCoMemPhrases,
10807 ULONG *pcPhrasesReturned);
10808
10809 HRESULT (STDMETHODCALLTYPE *SetFullStopTrailSpace)(
10810 ISpDisplayAlternates *This,
10811 ULONG ulTrailSpace);
10812
10813 END_INTERFACE
10814} ISpDisplayAlternatesVtbl;
10815
10816interface ISpDisplayAlternates {
10817 CONST_VTBL ISpDisplayAlternatesVtbl* lpVtbl;
10818};
10819
10820#ifdef COBJMACROS
10821#ifndef WIDL_C_INLINE_WRAPPERS
10822/*** IUnknown methods ***/
10823#define ISpDisplayAlternates_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10824#define ISpDisplayAlternates_AddRef(This) (This)->lpVtbl->AddRef(This)
10825#define ISpDisplayAlternates_Release(This) (This)->lpVtbl->Release(This)
10826/*** ISpDisplayAlternates methods ***/
10827#define ISpDisplayAlternates_GetDisplayAlternates(This,pPhrase,cRequestCount,ppCoMemPhrases,pcPhrasesReturned) (This)->lpVtbl->GetDisplayAlternates(This,pPhrase,cRequestCount,ppCoMemPhrases,pcPhrasesReturned)
10828#define ISpDisplayAlternates_SetFullStopTrailSpace(This,ulTrailSpace) (This)->lpVtbl->SetFullStopTrailSpace(This,ulTrailSpace)
10829#else
10830/*** IUnknown methods ***/
10831static inline HRESULT ISpDisplayAlternates_QueryInterface(ISpDisplayAlternates* This,REFIID riid,void **ppvObject) {
10832 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10833}
10834static inline ULONG ISpDisplayAlternates_AddRef(ISpDisplayAlternates* This) {
10835 return This->lpVtbl->AddRef(This);
10836}
10837static inline ULONG ISpDisplayAlternates_Release(ISpDisplayAlternates* This) {
10838 return This->lpVtbl->Release(This);
10839}
10840/*** ISpDisplayAlternates methods ***/
10841static inline HRESULT ISpDisplayAlternates_GetDisplayAlternates(ISpDisplayAlternates* This,const SPDISPLAYPHRASE *pPhrase,ULONG cRequestCount,SPDISPLAYPHRASE **ppCoMemPhrases,ULONG *pcPhrasesReturned) {
10842 return This->lpVtbl->GetDisplayAlternates(This,pPhrase,cRequestCount,ppCoMemPhrases,pcPhrasesReturned);
10843}
10844static inline HRESULT ISpDisplayAlternates_SetFullStopTrailSpace(ISpDisplayAlternates* This,ULONG ulTrailSpace) {
10845 return This->lpVtbl->SetFullStopTrailSpace(This,ulTrailSpace);
10846}
10847#endif
10848#endif
10849
10850#endif
10851
10852
10853#endif /* __ISpDisplayAlternates_INTERFACE_DEFINED__ */
10854
10855#ifndef __SpeechLib_LIBRARY_DEFINED__
10856#define __SpeechLib_LIBRARY_DEFINED__
10857
10858DEFINE_GUID(LIBID_SpeechLib, 0xc866ca3a, 0x32f7, 0x11d2, 0x96,0x02, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
10859
10860#ifndef __ISpeechDataKey_FWD_DEFINED__
10861#define __ISpeechDataKey_FWD_DEFINED__
10862typedef interface ISpeechDataKey ISpeechDataKey;
10863#ifdef __cplusplus
10864interface ISpeechDataKey;
10865#endif /* __cplusplus */
10866#endif
10867
10868#ifndef __ISpeechObjectToken_FWD_DEFINED__
10869#define __ISpeechObjectToken_FWD_DEFINED__
10870typedef interface ISpeechObjectToken ISpeechObjectToken;
10871#ifdef __cplusplus
10872interface ISpeechObjectToken;
10873#endif /* __cplusplus */
10874#endif
10875
10876#ifndef __ISpeechObjectTokens_FWD_DEFINED__
10877#define __ISpeechObjectTokens_FWD_DEFINED__
10878typedef interface ISpeechObjectTokens ISpeechObjectTokens;
10879#ifdef __cplusplus
10880interface ISpeechObjectTokens;
10881#endif /* __cplusplus */
10882#endif
10883
10884#ifndef __ISpeechObjectTokenCategory_FWD_DEFINED__
10885#define __ISpeechObjectTokenCategory_FWD_DEFINED__
10886typedef interface ISpeechObjectTokenCategory ISpeechObjectTokenCategory;
10887#ifdef __cplusplus
10888interface ISpeechObjectTokenCategory;
10889#endif /* __cplusplus */
10890#endif
10891
10892#ifndef __ISpeechAudioBufferInfo_FWD_DEFINED__
10893#define __ISpeechAudioBufferInfo_FWD_DEFINED__
10894typedef interface ISpeechAudioBufferInfo ISpeechAudioBufferInfo;
10895#ifdef __cplusplus
10896interface ISpeechAudioBufferInfo;
10897#endif /* __cplusplus */
10898#endif
10899
10900#ifndef __ISpeechAudioStatus_FWD_DEFINED__
10901#define __ISpeechAudioStatus_FWD_DEFINED__
10902typedef interface ISpeechAudioStatus ISpeechAudioStatus;
10903#ifdef __cplusplus
10904interface ISpeechAudioStatus;
10905#endif /* __cplusplus */
10906#endif
10907
10908#ifndef __ISpeechAudioFormat_FWD_DEFINED__
10909#define __ISpeechAudioFormat_FWD_DEFINED__
10910typedef interface ISpeechAudioFormat ISpeechAudioFormat;
10911#ifdef __cplusplus
10912interface ISpeechAudioFormat;
10913#endif /* __cplusplus */
10914#endif
10915
10916#ifndef __ISpeechWaveFormatEx_FWD_DEFINED__
10917#define __ISpeechWaveFormatEx_FWD_DEFINED__
10918typedef interface ISpeechWaveFormatEx ISpeechWaveFormatEx;
10919#ifdef __cplusplus
10920interface ISpeechWaveFormatEx;
10921#endif /* __cplusplus */
10922#endif
10923
10924#ifndef __ISpeechBaseStream_FWD_DEFINED__
10925#define __ISpeechBaseStream_FWD_DEFINED__
10926typedef interface ISpeechBaseStream ISpeechBaseStream;
10927#ifdef __cplusplus
10928interface ISpeechBaseStream;
10929#endif /* __cplusplus */
10930#endif
10931
10932#ifndef __ISpeechFileStream_FWD_DEFINED__
10933#define __ISpeechFileStream_FWD_DEFINED__
10934typedef interface ISpeechFileStream ISpeechFileStream;
10935#ifdef __cplusplus
10936interface ISpeechFileStream;
10937#endif /* __cplusplus */
10938#endif
10939
10940#ifndef __ISpeechMemoryStream_FWD_DEFINED__
10941#define __ISpeechMemoryStream_FWD_DEFINED__
10942typedef interface ISpeechMemoryStream ISpeechMemoryStream;
10943#ifdef __cplusplus
10944interface ISpeechMemoryStream;
10945#endif /* __cplusplus */
10946#endif
10947
10948#ifndef __ISpeechCustomStream_FWD_DEFINED__
10949#define __ISpeechCustomStream_FWD_DEFINED__
10950typedef interface ISpeechCustomStream ISpeechCustomStream;
10951#ifdef __cplusplus
10952interface ISpeechCustomStream;
10953#endif /* __cplusplus */
10954#endif
10955
10956#ifndef __ISpeechAudio_FWD_DEFINED__
10957#define __ISpeechAudio_FWD_DEFINED__
10958typedef interface ISpeechAudio ISpeechAudio;
10959#ifdef __cplusplus
10960interface ISpeechAudio;
10961#endif /* __cplusplus */
10962#endif
10963
10964#ifndef __ISpeechMMSysAudio_FWD_DEFINED__
10965#define __ISpeechMMSysAudio_FWD_DEFINED__
10966typedef interface ISpeechMMSysAudio ISpeechMMSysAudio;
10967#ifdef __cplusplus
10968interface ISpeechMMSysAudio;
10969#endif /* __cplusplus */
10970#endif
10971
10972#ifndef __ISpeechVoice_FWD_DEFINED__
10973#define __ISpeechVoice_FWD_DEFINED__
10974typedef interface ISpeechVoice ISpeechVoice;
10975#ifdef __cplusplus
10976interface ISpeechVoice;
10977#endif /* __cplusplus */
10978#endif
10979
10980#ifndef __ISpeechVoiceStatus_FWD_DEFINED__
10981#define __ISpeechVoiceStatus_FWD_DEFINED__
10982typedef interface ISpeechVoiceStatus ISpeechVoiceStatus;
10983#ifdef __cplusplus
10984interface ISpeechVoiceStatus;
10985#endif /* __cplusplus */
10986#endif
10987
10988#ifndef ___ISpeechVoiceEvents_FWD_DEFINED__
10989#define ___ISpeechVoiceEvents_FWD_DEFINED__
10990typedef interface _ISpeechVoiceEvents _ISpeechVoiceEvents;
10991#ifdef __cplusplus
10992interface _ISpeechVoiceEvents;
10993#endif /* __cplusplus */
10994#endif
10995
10996#ifndef __ISpeechRecognizer_FWD_DEFINED__
10997#define __ISpeechRecognizer_FWD_DEFINED__
10998typedef interface ISpeechRecognizer ISpeechRecognizer;
10999#ifdef __cplusplus
11000interface ISpeechRecognizer;
11001#endif /* __cplusplus */
11002#endif
11003
11004#ifndef __ISpeechRecognizerStatus_FWD_DEFINED__
11005#define __ISpeechRecognizerStatus_FWD_DEFINED__
11006typedef interface ISpeechRecognizerStatus ISpeechRecognizerStatus;
11007#ifdef __cplusplus
11008interface ISpeechRecognizerStatus;
11009#endif /* __cplusplus */
11010#endif
11011
11012#ifndef __ISpeechRecoContext_FWD_DEFINED__
11013#define __ISpeechRecoContext_FWD_DEFINED__
11014typedef interface ISpeechRecoContext ISpeechRecoContext;
11015#ifdef __cplusplus
11016interface ISpeechRecoContext;
11017#endif /* __cplusplus */
11018#endif
11019
11020#ifndef __ISpeechRecoGrammar_FWD_DEFINED__
11021#define __ISpeechRecoGrammar_FWD_DEFINED__
11022typedef interface ISpeechRecoGrammar ISpeechRecoGrammar;
11023#ifdef __cplusplus
11024interface ISpeechRecoGrammar;
11025#endif /* __cplusplus */
11026#endif
11027
11028#ifndef ___ISpeechRecoContextEvents_FWD_DEFINED__
11029#define ___ISpeechRecoContextEvents_FWD_DEFINED__
11030typedef interface _ISpeechRecoContextEvents _ISpeechRecoContextEvents;
11031#ifdef __cplusplus
11032interface _ISpeechRecoContextEvents;
11033#endif /* __cplusplus */
11034#endif
11035
11036#ifndef __ISpeechGrammarRule_FWD_DEFINED__
11037#define __ISpeechGrammarRule_FWD_DEFINED__
11038typedef interface ISpeechGrammarRule ISpeechGrammarRule;
11039#ifdef __cplusplus
11040interface ISpeechGrammarRule;
11041#endif /* __cplusplus */
11042#endif
11043
11044#ifndef __ISpeechGrammarRules_FWD_DEFINED__
11045#define __ISpeechGrammarRules_FWD_DEFINED__
11046typedef interface ISpeechGrammarRules ISpeechGrammarRules;
11047#ifdef __cplusplus
11048interface ISpeechGrammarRules;
11049#endif /* __cplusplus */
11050#endif
11051
11052#ifndef __ISpeechGrammarRuleState_FWD_DEFINED__
11053#define __ISpeechGrammarRuleState_FWD_DEFINED__
11054typedef interface ISpeechGrammarRuleState ISpeechGrammarRuleState;
11055#ifdef __cplusplus
11056interface ISpeechGrammarRuleState;
11057#endif /* __cplusplus */
11058#endif
11059
11060#ifndef __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
11061#define __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
11062typedef interface ISpeechGrammarRuleStateTransition ISpeechGrammarRuleStateTransition;
11063#ifdef __cplusplus
11064interface ISpeechGrammarRuleStateTransition;
11065#endif /* __cplusplus */
11066#endif
11067
11068#ifndef __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
11069#define __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
11070typedef interface ISpeechGrammarRuleStateTransitions ISpeechGrammarRuleStateTransitions;
11071#ifdef __cplusplus
11072interface ISpeechGrammarRuleStateTransitions;
11073#endif /* __cplusplus */
11074#endif
11075
11076#ifndef __ISpeechTextSelectionInformation_FWD_DEFINED__
11077#define __ISpeechTextSelectionInformation_FWD_DEFINED__
11078typedef interface ISpeechTextSelectionInformation ISpeechTextSelectionInformation;
11079#ifdef __cplusplus
11080interface ISpeechTextSelectionInformation;
11081#endif /* __cplusplus */
11082#endif
11083
11084#ifndef __ISpeechRecoResult_FWD_DEFINED__
11085#define __ISpeechRecoResult_FWD_DEFINED__
11086typedef interface ISpeechRecoResult ISpeechRecoResult;
11087#ifdef __cplusplus
11088interface ISpeechRecoResult;
11089#endif /* __cplusplus */
11090#endif
11091
11092#ifndef __ISpeechRecoResult2_FWD_DEFINED__
11093#define __ISpeechRecoResult2_FWD_DEFINED__
11094typedef interface ISpeechRecoResult2 ISpeechRecoResult2;
11095#ifdef __cplusplus
11096interface ISpeechRecoResult2;
11097#endif /* __cplusplus */
11098#endif
11099
11100#ifndef __ISpeechRecoResultTimes_FWD_DEFINED__
11101#define __ISpeechRecoResultTimes_FWD_DEFINED__
11102typedef interface ISpeechRecoResultTimes ISpeechRecoResultTimes;
11103#ifdef __cplusplus
11104interface ISpeechRecoResultTimes;
11105#endif /* __cplusplus */
11106#endif
11107
11108#ifndef __ISpeechPhraseAlternate_FWD_DEFINED__
11109#define __ISpeechPhraseAlternate_FWD_DEFINED__
11110typedef interface ISpeechPhraseAlternate ISpeechPhraseAlternate;
11111#ifdef __cplusplus
11112interface ISpeechPhraseAlternate;
11113#endif /* __cplusplus */
11114#endif
11115
11116#ifndef __ISpeechPhraseAlternates_FWD_DEFINED__
11117#define __ISpeechPhraseAlternates_FWD_DEFINED__
11118typedef interface ISpeechPhraseAlternates ISpeechPhraseAlternates;
11119#ifdef __cplusplus
11120interface ISpeechPhraseAlternates;
11121#endif /* __cplusplus */
11122#endif
11123
11124#ifndef __ISpeechPhraseInfo_FWD_DEFINED__
11125#define __ISpeechPhraseInfo_FWD_DEFINED__
11126typedef interface ISpeechPhraseInfo ISpeechPhraseInfo;
11127#ifdef __cplusplus
11128interface ISpeechPhraseInfo;
11129#endif /* __cplusplus */
11130#endif
11131
11132#ifndef __ISpeechPhraseElement_FWD_DEFINED__
11133#define __ISpeechPhraseElement_FWD_DEFINED__
11134typedef interface ISpeechPhraseElement ISpeechPhraseElement;
11135#ifdef __cplusplus
11136interface ISpeechPhraseElement;
11137#endif /* __cplusplus */
11138#endif
11139
11140#ifndef __ISpeechPhraseElements_FWD_DEFINED__
11141#define __ISpeechPhraseElements_FWD_DEFINED__
11142typedef interface ISpeechPhraseElements ISpeechPhraseElements;
11143#ifdef __cplusplus
11144interface ISpeechPhraseElements;
11145#endif /* __cplusplus */
11146#endif
11147
11148#ifndef __ISpeechPhraseReplacement_FWD_DEFINED__
11149#define __ISpeechPhraseReplacement_FWD_DEFINED__
11150typedef interface ISpeechPhraseReplacement ISpeechPhraseReplacement;
11151#ifdef __cplusplus
11152interface ISpeechPhraseReplacement;
11153#endif /* __cplusplus */
11154#endif
11155
11156#ifndef __ISpeechPhraseReplacements_FWD_DEFINED__
11157#define __ISpeechPhraseReplacements_FWD_DEFINED__
11158typedef interface ISpeechPhraseReplacements ISpeechPhraseReplacements;
11159#ifdef __cplusplus
11160interface ISpeechPhraseReplacements;
11161#endif /* __cplusplus */
11162#endif
11163
11164#ifndef __ISpeechPhraseProperty_FWD_DEFINED__
11165#define __ISpeechPhraseProperty_FWD_DEFINED__
11166typedef interface ISpeechPhraseProperty ISpeechPhraseProperty;
11167#ifdef __cplusplus
11168interface ISpeechPhraseProperty;
11169#endif /* __cplusplus */
11170#endif
11171
11172#ifndef __ISpeechPhraseProperties_FWD_DEFINED__
11173#define __ISpeechPhraseProperties_FWD_DEFINED__
11174typedef interface ISpeechPhraseProperties ISpeechPhraseProperties;
11175#ifdef __cplusplus
11176interface ISpeechPhraseProperties;
11177#endif /* __cplusplus */
11178#endif
11179
11180#ifndef __ISpeechPhraseRule_FWD_DEFINED__
11181#define __ISpeechPhraseRule_FWD_DEFINED__
11182typedef interface ISpeechPhraseRule ISpeechPhraseRule;
11183#ifdef __cplusplus
11184interface ISpeechPhraseRule;
11185#endif /* __cplusplus */
11186#endif
11187
11188#ifndef __ISpeechPhraseRules_FWD_DEFINED__
11189#define __ISpeechPhraseRules_FWD_DEFINED__
11190typedef interface ISpeechPhraseRules ISpeechPhraseRules;
11191#ifdef __cplusplus
11192interface ISpeechPhraseRules;
11193#endif /* __cplusplus */
11194#endif
11195
11196#ifndef __ISpeechLexicon_FWD_DEFINED__
11197#define __ISpeechLexicon_FWD_DEFINED__
11198typedef interface ISpeechLexicon ISpeechLexicon;
11199#ifdef __cplusplus
11200interface ISpeechLexicon;
11201#endif /* __cplusplus */
11202#endif
11203
11204#ifndef __ISpeechLexiconWords_FWD_DEFINED__
11205#define __ISpeechLexiconWords_FWD_DEFINED__
11206typedef interface ISpeechLexiconWords ISpeechLexiconWords;
11207#ifdef __cplusplus
11208interface ISpeechLexiconWords;
11209#endif /* __cplusplus */
11210#endif
11211
11212#ifndef __ISpeechLexiconWord_FWD_DEFINED__
11213#define __ISpeechLexiconWord_FWD_DEFINED__
11214typedef interface ISpeechLexiconWord ISpeechLexiconWord;
11215#ifdef __cplusplus
11216interface ISpeechLexiconWord;
11217#endif /* __cplusplus */
11218#endif
11219
11220#ifndef __ISpeechLexiconPronunciations_FWD_DEFINED__
11221#define __ISpeechLexiconPronunciations_FWD_DEFINED__
11222typedef interface ISpeechLexiconPronunciations ISpeechLexiconPronunciations;
11223#ifdef __cplusplus
11224interface ISpeechLexiconPronunciations;
11225#endif /* __cplusplus */
11226#endif
11227
11228#ifndef __ISpeechLexiconPronunciation_FWD_DEFINED__
11229#define __ISpeechLexiconPronunciation_FWD_DEFINED__
11230typedef interface ISpeechLexiconPronunciation ISpeechLexiconPronunciation;
11231#ifdef __cplusplus
11232interface ISpeechLexiconPronunciation;
11233#endif /* __cplusplus */
11234#endif
11235
11236typedef LONG SpeechLanguageId;
11237#define __SpeechStringConstants_MODULE_DEFINED__
11238#ifndef __SpeechStringConstants_MODULE_DEFINED__
11239#define __SpeechStringConstants_MODULE_DEFINED__
11240#define SpeechRegistryUserRoot (L"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Speech")
11241
11242#define SpeechRegistryLocalMachineRoot (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech")
11243
11244#define SpeechCategoryAudioOut (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\AudioOutput")
11245
11246#define SpeechCategoryAudioIn (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\AudioInput")
11247
11248#define SpeechCategoryVoices (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices")
11249
11250#define SpeechCategoryRecognizers (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Recognizers")
11251
11252#define SpeechCategoryAppLexicons (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\AppLexicons")
11253
11254#define SpeechCategoryPhoneConverters (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\PhoneConverters")
11255
11256#define SpeechCategoryRecoProfiles (L"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Speech\RecoProfiles")
11257
11258#define SpeechTokenIdUserLexicon (L"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Speech\CurrentUserLexicon")
11259
11260#define SpeechTokenValueCLSID (L"CLSID")
11261
11262#define SpeechTokenKeyFiles (L"Files")
11263
11264#define SpeechTokenKeyUI (L"UI")
11265
11266#define SpeechTokenKeyAttributes (L"Attributes")
11267
11268#define SpeechVoiceCategoryTTSRate (L"DefaultTTSRate")
11269
11270#define SpeechPropertyResourceUsage (L"ResourceUsage")
11271
11272#define SpeechPropertyHighConfidenceThreshold (L"HighConfidenceThreshold")
11273
11274#define SpeechPropertyNormalConfidenceThreshold (L"NormalConfidenceThreshold")
11275
11276#define SpeechPropertyLowConfidenceThreshold (L"LowConfidenceThreshold")
11277
11278#define SpeechPropertyResponseSpeed (L"ResponseSpeed")
11279
11280#define SpeechPropertyComplexResponseSpeed (L"ComplexResponseSpeed")
11281
11282#define SpeechPropertyAdaptationOn (L"AdaptationOn")
11283
11284#define SpeechDictationTopicSpelling (L"Spelling")
11285
11286#define SpeechGrammarTagWildcard (L"...")
11287
11288#define SpeechGrammarTagDictation (L"*")
11289
11290#define SpeechGrammarTagUnlimitedDictation (L"*+")
11291
11292#define SpeechEngineProperties (L"EngineProperties")
11293
11294#define SpeechAddRemoveWord (L"AddRemoveWord")
11295
11296#define SpeechUserTraining (L"UserTraining")
11297
11298#define SpeechMicTraining (L"MicTraining")
11299
11300#define SpeechRecoProfileProperties (L"RecoProfileProperties")
11301
11302#define SpeechAudioProperties (L"AudioProperties")
11303
11304#define SpeechAudioVolume (L"AudioVolume")
11305
11306#define SpeechVoiceSkipTypeSentence (L"Sentence")
11307
11308#define SpeechAudioFormatGUIDWave (L"{C31ADBAE-527F-4ff5-A230-F62BB61FF70C}")
11309
11310#define SpeechAudioFormatGUIDText (L"{7CEEF9F9-3D13-11d2-9EE7-00C04F797396}")
11311
11312#endif /* __SpeechStringConstants_MODULE_DEFINED__ */
11313#ifndef __SpeechConstants_MODULE_DEFINED__
11314#define __SpeechConstants_MODULE_DEFINED__
11315#define Speech_Default_Weight (DEFAULT_WEIGHT)
11316
11317#define Speech_Max_Word_Length (SP_MAX_WORD_LENGTH)
11318
11319#define Speech_Max_Pron_Length (SP_MAX_PRON_LENGTH)
11320
11321#define Speech_StreamPos_Asap (SP_STREAMPOS_ASAP)
11322
11323#define Speech_StreamPos_RealTime (SP_STREAMPOS_REALTIME)
11324
11325#define SpeechAllElements (SPPR_ALL_ELEMENTS)
11326
11327#endif /* __SpeechConstants_MODULE_DEFINED__ */
11328typedef enum DISPID_SpeechDataKey {
11329 DISPID_SDKSetBinaryValue = 1,
11330 DISPID_SDKGetBinaryValue = 2,
11331 DISPID_SDKSetStringValue = 3,
11332 DISPID_SDKGetStringValue = 4,
11333 DISPID_SDKSetLongValue = 5,
11334 DISPID_SDKGetlongValue = 6,
11335 DISPID_SDKOpenKey = 7,
11336 DISPID_SDKCreateKey = 8,
11337 DISPID_SDKDeleteKey = 9,
11338 DISPID_SDKDeleteValue = 10,
11339 DISPID_SDKEnumKeys = 11,
11340 DISPID_SDKEnumValues = 12
11341} DISPID_SpeechDataKey;
11342typedef enum DISPID_SpeechObjectToken {
11343 DISPID_SOTId = 1,
11344 DISPID_SOTDataKey = 2,
11345 DISPID_SOTCategory = 3,
11346 DISPID_SOTGetDescription = 4,
11347 DISPID_SOTSetId = 5,
11348 DISPID_SOTGetAttribute = 6,
11349 DISPID_SOTCreateInstance = 7,
11350 DISPID_SOTRemove = 8,
11351 DISPID_SOTGetStorageFileName = 9,
11352 DISPID_SOTRemoveStorageFileName = 10,
11353 DISPID_SOTIsUISupported = 11,
11354 DISPID_SOTDisplayUI = 12,
11355 DISPID_SOTMatchesAttributes = 13
11356} DISPID_SpeechObjectToken;
11357typedef enum SpeechDataKeyLocation {
11358 SDKLDefaultLocation = SPDKL_DefaultLocation,
11359 SDKLCurrentUser = SPDKL_CurrentUser,
11360 SDKLLocalMachine = SPDKL_LocalMachine,
11361 SDKLCurrentConfig = SPDKL_CurrentConfig
11362} SpeechDataKeyLocation;
11363typedef enum SpeechTokenContext {
11364 STCInprocServer = CLSCTX_INPROC_SERVER,
11365 STCInprocHandler = CLSCTX_INPROC_HANDLER,
11366 STCLocalServer = CLSCTX_LOCAL_SERVER,
11367 STCRemoteServer = CLSCTX_REMOTE_SERVER,
11368 STCAll = ((CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER) | CLSCTX_LOCAL_SERVER) | CLSCTX_REMOTE_SERVER
11369} SpeechTokenContext;
11370typedef enum SpeechTokenShellFolder {
11371 STSF_AppData = 0x1a,
11372 STSF_LocalAppData = 0x1c,
11373 STSF_CommonAppData = 0x23,
11374 STSF_FlagCreate = 0x8000
11375} SpeechTokenShellFolder;
11376typedef enum DISPID_SpeechObjectTokens {
11377 DISPID_SOTsCount = 1,
11378 DISPID_SOTsItem = DISPID_VALUE,
11379 DISPID_SOTs_NewEnum = DISPID_NEWENUM
11380} DISPID_SpeechObjectTokens;
11381typedef enum DISPID_SpeechObjectTokenCategory {
11382 DISPID_SOTCId = 1,
11383 DISPID_SOTCDefault = 2,
11384 DISPID_SOTCSetId = 3,
11385 DISPID_SOTCGetDataKey = 4,
11386 DISPID_SOTCEnumerateTokens = 5
11387} DISPID_SpeechObjectTokenCategory;
11388/*****************************************************************************
11389 * ISpeechDataKey interface
11390 */
11391#ifndef __ISpeechDataKey_INTERFACE_DEFINED__
11392#define __ISpeechDataKey_INTERFACE_DEFINED__
11393
11394DEFINE_GUID(IID_ISpeechDataKey, 0xce17c09b, 0x4efa, 0x44d5, 0xa4,0xc9, 0x59,0xd9,0x58,0x5a,0xb0,0xcd);
11395#if defined(__cplusplus) && !defined(CINTERFACE)
11396MIDL_INTERFACE("ce17c09b-4efa-44d5-a4c9-59d9585ab0cd")
11397ISpeechDataKey : public IDispatch
11398{
11399 virtual HRESULT STDMETHODCALLTYPE SetBinaryValue(
11400 const BSTR ValueName,
11401 VARIANT Value) = 0;
11402
11403 virtual HRESULT STDMETHODCALLTYPE GetBinaryValue(
11404 const BSTR ValueName,
11405 VARIANT *Value) = 0;
11406
11407 virtual HRESULT STDMETHODCALLTYPE SetStringValue(
11408 const BSTR ValueName,
11409 const BSTR Value) = 0;
11410
11411 virtual HRESULT STDMETHODCALLTYPE GetStringValue(
11412 const BSTR ValueName,
11413 BSTR *Value) = 0;
11414
11415 virtual HRESULT STDMETHODCALLTYPE SetLongValue(
11416 const BSTR ValueName,
11417 LONG Value) = 0;
11418
11419 virtual HRESULT STDMETHODCALLTYPE GetLongValue(
11420 const BSTR ValueName,
11421 LONG *Value) = 0;
11422
11423 virtual HRESULT STDMETHODCALLTYPE OpenKey(
11424 const BSTR SubKeyName,
11425 ISpeechDataKey **SubKey) = 0;
11426
11427 virtual HRESULT STDMETHODCALLTYPE CreateKey(
11428 const BSTR SubKeyName,
11429 ISpeechDataKey **SubKey) = 0;
11430
11431 virtual HRESULT STDMETHODCALLTYPE DeleteKey(
11432 const BSTR SubKeyName) = 0;
11433
11434 virtual HRESULT STDMETHODCALLTYPE DeleteValue(
11435 const BSTR ValueName) = 0;
11436
11437 virtual HRESULT STDMETHODCALLTYPE EnumKeys(
11438 LONG Index,
11439 BSTR *SubKeyName) = 0;
11440
11441 virtual HRESULT STDMETHODCALLTYPE EnumValues(
11442 LONG Index,
11443 BSTR *ValueName) = 0;
11444
11445};
11446#ifdef __CRT_UUID_DECL
11447__CRT_UUID_DECL(ISpeechDataKey, 0xce17c09b, 0x4efa, 0x44d5, 0xa4,0xc9, 0x59,0xd9,0x58,0x5a,0xb0,0xcd)
11448#endif
11449#else
11450typedef struct ISpeechDataKeyVtbl {
11451 BEGIN_INTERFACE
11452
11453 /*** IUnknown methods ***/
11454 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11455 ISpeechDataKey *This,
11456 REFIID riid,
11457 void **ppvObject);
11458
11459 ULONG (STDMETHODCALLTYPE *AddRef)(
11460 ISpeechDataKey *This);
11461
11462 ULONG (STDMETHODCALLTYPE *Release)(
11463 ISpeechDataKey *This);
11464
11465 /*** IDispatch methods ***/
11466 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11467 ISpeechDataKey *This,
11468 UINT *pctinfo);
11469
11470 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11471 ISpeechDataKey *This,
11472 UINT iTInfo,
11473 LCID lcid,
11474 ITypeInfo **ppTInfo);
11475
11476 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11477 ISpeechDataKey *This,
11478 REFIID riid,
11479 LPOLESTR *rgszNames,
11480 UINT cNames,
11481 LCID lcid,
11482 DISPID *rgDispId);
11483
11484 HRESULT (STDMETHODCALLTYPE *Invoke)(
11485 ISpeechDataKey *This,
11486 DISPID dispIdMember,
11487 REFIID riid,
11488 LCID lcid,
11489 WORD wFlags,
11490 DISPPARAMS *pDispParams,
11491 VARIANT *pVarResult,
11492 EXCEPINFO *pExcepInfo,
11493 UINT *puArgErr);
11494
11495 /*** ISpeechDataKey methods ***/
11496 HRESULT (STDMETHODCALLTYPE *SetBinaryValue)(
11497 ISpeechDataKey *This,
11498 const BSTR ValueName,
11499 VARIANT Value);
11500
11501 HRESULT (STDMETHODCALLTYPE *GetBinaryValue)(
11502 ISpeechDataKey *This,
11503 const BSTR ValueName,
11504 VARIANT *Value);
11505
11506 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
11507 ISpeechDataKey *This,
11508 const BSTR ValueName,
11509 const BSTR Value);
11510
11511 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
11512 ISpeechDataKey *This,
11513 const BSTR ValueName,
11514 BSTR *Value);
11515
11516 HRESULT (STDMETHODCALLTYPE *SetLongValue)(
11517 ISpeechDataKey *This,
11518 const BSTR ValueName,
11519 LONG Value);
11520
11521 HRESULT (STDMETHODCALLTYPE *GetLongValue)(
11522 ISpeechDataKey *This,
11523 const BSTR ValueName,
11524 LONG *Value);
11525
11526 HRESULT (STDMETHODCALLTYPE *OpenKey)(
11527 ISpeechDataKey *This,
11528 const BSTR SubKeyName,
11529 ISpeechDataKey **SubKey);
11530
11531 HRESULT (STDMETHODCALLTYPE *CreateKey)(
11532 ISpeechDataKey *This,
11533 const BSTR SubKeyName,
11534 ISpeechDataKey **SubKey);
11535
11536 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
11537 ISpeechDataKey *This,
11538 const BSTR SubKeyName);
11539
11540 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
11541 ISpeechDataKey *This,
11542 const BSTR ValueName);
11543
11544 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
11545 ISpeechDataKey *This,
11546 LONG Index,
11547 BSTR *SubKeyName);
11548
11549 HRESULT (STDMETHODCALLTYPE *EnumValues)(
11550 ISpeechDataKey *This,
11551 LONG Index,
11552 BSTR *ValueName);
11553
11554 END_INTERFACE
11555} ISpeechDataKeyVtbl;
11556
11557interface ISpeechDataKey {
11558 CONST_VTBL ISpeechDataKeyVtbl* lpVtbl;
11559};
11560
11561#ifdef COBJMACROS
11562#ifndef WIDL_C_INLINE_WRAPPERS
11563/*** IUnknown methods ***/
11564#define ISpeechDataKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11565#define ISpeechDataKey_AddRef(This) (This)->lpVtbl->AddRef(This)
11566#define ISpeechDataKey_Release(This) (This)->lpVtbl->Release(This)
11567/*** IDispatch methods ***/
11568#define ISpeechDataKey_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11569#define ISpeechDataKey_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11570#define ISpeechDataKey_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11571#define ISpeechDataKey_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11572/*** ISpeechDataKey methods ***/
11573#define ISpeechDataKey_SetBinaryValue(This,ValueName,Value) (This)->lpVtbl->SetBinaryValue(This,ValueName,Value)
11574#define ISpeechDataKey_GetBinaryValue(This,ValueName,Value) (This)->lpVtbl->GetBinaryValue(This,ValueName,Value)
11575#define ISpeechDataKey_SetStringValue(This,ValueName,Value) (This)->lpVtbl->SetStringValue(This,ValueName,Value)
11576#define ISpeechDataKey_GetStringValue(This,ValueName,Value) (This)->lpVtbl->GetStringValue(This,ValueName,Value)
11577#define ISpeechDataKey_SetLongValue(This,ValueName,Value) (This)->lpVtbl->SetLongValue(This,ValueName,Value)
11578#define ISpeechDataKey_GetLongValue(This,ValueName,Value) (This)->lpVtbl->GetLongValue(This,ValueName,Value)
11579#define ISpeechDataKey_OpenKey(This,SubKeyName,SubKey) (This)->lpVtbl->OpenKey(This,SubKeyName,SubKey)
11580#define ISpeechDataKey_CreateKey(This,SubKeyName,SubKey) (This)->lpVtbl->CreateKey(This,SubKeyName,SubKey)
11581#define ISpeechDataKey_DeleteKey(This,SubKeyName) (This)->lpVtbl->DeleteKey(This,SubKeyName)
11582#define ISpeechDataKey_DeleteValue(This,ValueName) (This)->lpVtbl->DeleteValue(This,ValueName)
11583#define ISpeechDataKey_EnumKeys(This,Index,SubKeyName) (This)->lpVtbl->EnumKeys(This,Index,SubKeyName)
11584#define ISpeechDataKey_EnumValues(This,Index,ValueName) (This)->lpVtbl->EnumValues(This,Index,ValueName)
11585#else
11586/*** IUnknown methods ***/
11587static inline HRESULT ISpeechDataKey_QueryInterface(ISpeechDataKey* This,REFIID riid,void **ppvObject) {
11588 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11589}
11590static inline ULONG ISpeechDataKey_AddRef(ISpeechDataKey* This) {
11591 return This->lpVtbl->AddRef(This);
11592}
11593static inline ULONG ISpeechDataKey_Release(ISpeechDataKey* This) {
11594 return This->lpVtbl->Release(This);
11595}
11596/*** IDispatch methods ***/
11597static inline HRESULT ISpeechDataKey_GetTypeInfoCount(ISpeechDataKey* This,UINT *pctinfo) {
11598 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11599}
11600static inline HRESULT ISpeechDataKey_GetTypeInfo(ISpeechDataKey* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11601 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11602}
11603static inline HRESULT ISpeechDataKey_GetIDsOfNames(ISpeechDataKey* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11604 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11605}
11606static inline HRESULT ISpeechDataKey_Invoke(ISpeechDataKey* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11607 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11608}
11609/*** ISpeechDataKey methods ***/
11610static inline HRESULT ISpeechDataKey_SetBinaryValue(ISpeechDataKey* This,const BSTR ValueName,VARIANT Value) {
11611 return This->lpVtbl->SetBinaryValue(This,ValueName,Value);
11612}
11613static inline HRESULT ISpeechDataKey_GetBinaryValue(ISpeechDataKey* This,const BSTR ValueName,VARIANT *Value) {
11614 return This->lpVtbl->GetBinaryValue(This,ValueName,Value);
11615}
11616static inline HRESULT ISpeechDataKey_SetStringValue(ISpeechDataKey* This,const BSTR ValueName,const BSTR Value) {
11617 return This->lpVtbl->SetStringValue(This,ValueName,Value);
11618}
11619static inline HRESULT ISpeechDataKey_GetStringValue(ISpeechDataKey* This,const BSTR ValueName,BSTR *Value) {
11620 return This->lpVtbl->GetStringValue(This,ValueName,Value);
11621}
11622static inline HRESULT ISpeechDataKey_SetLongValue(ISpeechDataKey* This,const BSTR ValueName,LONG Value) {
11623 return This->lpVtbl->SetLongValue(This,ValueName,Value);
11624}
11625static inline HRESULT ISpeechDataKey_GetLongValue(ISpeechDataKey* This,const BSTR ValueName,LONG *Value) {
11626 return This->lpVtbl->GetLongValue(This,ValueName,Value);
11627}
11628static inline HRESULT ISpeechDataKey_OpenKey(ISpeechDataKey* This,const BSTR SubKeyName,ISpeechDataKey **SubKey) {
11629 return This->lpVtbl->OpenKey(This,SubKeyName,SubKey);
11630}
11631static inline HRESULT ISpeechDataKey_CreateKey(ISpeechDataKey* This,const BSTR SubKeyName,ISpeechDataKey **SubKey) {
11632 return This->lpVtbl->CreateKey(This,SubKeyName,SubKey);
11633}
11634static inline HRESULT ISpeechDataKey_DeleteKey(ISpeechDataKey* This,const BSTR SubKeyName) {
11635 return This->lpVtbl->DeleteKey(This,SubKeyName);
11636}
11637static inline HRESULT ISpeechDataKey_DeleteValue(ISpeechDataKey* This,const BSTR ValueName) {
11638 return This->lpVtbl->DeleteValue(This,ValueName);
11639}
11640static inline HRESULT ISpeechDataKey_EnumKeys(ISpeechDataKey* This,LONG Index,BSTR *SubKeyName) {
11641 return This->lpVtbl->EnumKeys(This,Index,SubKeyName);
11642}
11643static inline HRESULT ISpeechDataKey_EnumValues(ISpeechDataKey* This,LONG Index,BSTR *ValueName) {
11644 return This->lpVtbl->EnumValues(This,Index,ValueName);
11645}
11646#endif
11647#endif
11648
11649#endif
11650
11651
11652#endif /* __ISpeechDataKey_INTERFACE_DEFINED__ */
11653
11654/*****************************************************************************
11655 * ISpeechObjectToken interface
11656 */
11657#ifndef __ISpeechObjectToken_INTERFACE_DEFINED__
11658#define __ISpeechObjectToken_INTERFACE_DEFINED__
11659
11660DEFINE_GUID(IID_ISpeechObjectToken, 0xc74a3adc, 0xb727, 0x4500, 0xa8,0x4a, 0xb5,0x26,0x72,0x1c,0x8b,0x8c);
11661#if defined(__cplusplus) && !defined(CINTERFACE)
11662MIDL_INTERFACE("c74a3adc-b727-4500-a84a-b526721c8b8c")
11663ISpeechObjectToken : public IDispatch
11664{
11665 virtual HRESULT STDMETHODCALLTYPE get_Id(
11666 BSTR *ObjectId) = 0;
11667
11668 virtual HRESULT STDMETHODCALLTYPE get_DataKey(
11669 ISpeechDataKey **DataKey) = 0;
11670
11671 virtual HRESULT STDMETHODCALLTYPE get_Category(
11672 ISpeechObjectTokenCategory **Category) = 0;
11673
11674 virtual HRESULT STDMETHODCALLTYPE GetDescription(
11675 LONG Locale,
11676 BSTR *Description) = 0;
11677
11678 virtual HRESULT STDMETHODCALLTYPE SetId(
11679 BSTR Id,
11680 BSTR CategoryID = L"",
11681 VARIANT_BOOL CreateIfNotExist = 0) = 0;
11682
11683 virtual HRESULT STDMETHODCALLTYPE GetAttribute(
11684 BSTR AttributeName,
11685 BSTR *AttributeValue) = 0;
11686
11687 virtual HRESULT STDMETHODCALLTYPE CreateInstance(
11688 IUnknown *pUnkOuter,
11689 SpeechTokenContext ClsContext,
11690 IUnknown **Object) = 0;
11691
11692 virtual HRESULT STDMETHODCALLTYPE Remove(
11693 BSTR ObjectStorageCLSID) = 0;
11694
11695 virtual HRESULT STDMETHODCALLTYPE GetStorageFileName(
11696 BSTR ObjectStorageCLSID,
11697 BSTR KeyName,
11698 BSTR FileName,
11699 SpeechTokenShellFolder Folder,
11700 BSTR *FilePath) = 0;
11701
11702 virtual HRESULT STDMETHODCALLTYPE RemoveStorageFileName(
11703 BSTR ObjectStorageCLSID,
11704 BSTR KeyName,
11705 VARIANT_BOOL DeleteFile) = 0;
11706
11707 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
11708 const BSTR TypeOfUI,
11709 const VARIANT *ExtraData,
11710 IUnknown *Object,
11711 VARIANT_BOOL *Supported) = 0;
11712
11713 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
11714 LONG hWnd,
11715 BSTR Title,
11716 const BSTR TypeOfUI,
11717 const VARIANT *ExtraData = 0,
11718 IUnknown *Object = 0) = 0;
11719
11720 virtual HRESULT STDMETHODCALLTYPE MatchesAttributes(
11721 BSTR Attributes,
11722 VARIANT_BOOL *Matches) = 0;
11723
11724};
11725#ifdef __CRT_UUID_DECL
11726__CRT_UUID_DECL(ISpeechObjectToken, 0xc74a3adc, 0xb727, 0x4500, 0xa8,0x4a, 0xb5,0x26,0x72,0x1c,0x8b,0x8c)
11727#endif
11728#else
11729typedef struct ISpeechObjectTokenVtbl {
11730 BEGIN_INTERFACE
11731
11732 /*** IUnknown methods ***/
11733 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11734 ISpeechObjectToken *This,
11735 REFIID riid,
11736 void **ppvObject);
11737
11738 ULONG (STDMETHODCALLTYPE *AddRef)(
11739 ISpeechObjectToken *This);
11740
11741 ULONG (STDMETHODCALLTYPE *Release)(
11742 ISpeechObjectToken *This);
11743
11744 /*** IDispatch methods ***/
11745 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11746 ISpeechObjectToken *This,
11747 UINT *pctinfo);
11748
11749 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11750 ISpeechObjectToken *This,
11751 UINT iTInfo,
11752 LCID lcid,
11753 ITypeInfo **ppTInfo);
11754
11755 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11756 ISpeechObjectToken *This,
11757 REFIID riid,
11758 LPOLESTR *rgszNames,
11759 UINT cNames,
11760 LCID lcid,
11761 DISPID *rgDispId);
11762
11763 HRESULT (STDMETHODCALLTYPE *Invoke)(
11764 ISpeechObjectToken *This,
11765 DISPID dispIdMember,
11766 REFIID riid,
11767 LCID lcid,
11768 WORD wFlags,
11769 DISPPARAMS *pDispParams,
11770 VARIANT *pVarResult,
11771 EXCEPINFO *pExcepInfo,
11772 UINT *puArgErr);
11773
11774 /*** ISpeechObjectToken methods ***/
11775 HRESULT (STDMETHODCALLTYPE *get_Id)(
11776 ISpeechObjectToken *This,
11777 BSTR *ObjectId);
11778
11779 HRESULT (STDMETHODCALLTYPE *get_DataKey)(
11780 ISpeechObjectToken *This,
11781 ISpeechDataKey **DataKey);
11782
11783 HRESULT (STDMETHODCALLTYPE *get_Category)(
11784 ISpeechObjectToken *This,
11785 ISpeechObjectTokenCategory **Category);
11786
11787 HRESULT (STDMETHODCALLTYPE *GetDescription)(
11788 ISpeechObjectToken *This,
11789 LONG Locale,
11790 BSTR *Description);
11791
11792 HRESULT (STDMETHODCALLTYPE *SetId)(
11793 ISpeechObjectToken *This,
11794 BSTR Id,
11795 BSTR CategoryID,
11796 VARIANT_BOOL CreateIfNotExist);
11797
11798 HRESULT (STDMETHODCALLTYPE *GetAttribute)(
11799 ISpeechObjectToken *This,
11800 BSTR AttributeName,
11801 BSTR *AttributeValue);
11802
11803 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
11804 ISpeechObjectToken *This,
11805 IUnknown *pUnkOuter,
11806 SpeechTokenContext ClsContext,
11807 IUnknown **Object);
11808
11809 HRESULT (STDMETHODCALLTYPE *Remove)(
11810 ISpeechObjectToken *This,
11811 BSTR ObjectStorageCLSID);
11812
11813 HRESULT (STDMETHODCALLTYPE *GetStorageFileName)(
11814 ISpeechObjectToken *This,
11815 BSTR ObjectStorageCLSID,
11816 BSTR KeyName,
11817 BSTR FileName,
11818 SpeechTokenShellFolder Folder,
11819 BSTR *FilePath);
11820
11821 HRESULT (STDMETHODCALLTYPE *RemoveStorageFileName)(
11822 ISpeechObjectToken *This,
11823 BSTR ObjectStorageCLSID,
11824 BSTR KeyName,
11825 VARIANT_BOOL DeleteFile);
11826
11827 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
11828 ISpeechObjectToken *This,
11829 const BSTR TypeOfUI,
11830 const VARIANT *ExtraData,
11831 IUnknown *Object,
11832 VARIANT_BOOL *Supported);
11833
11834 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
11835 ISpeechObjectToken *This,
11836 LONG hWnd,
11837 BSTR Title,
11838 const BSTR TypeOfUI,
11839 const VARIANT *ExtraData,
11840 IUnknown *Object);
11841
11842 HRESULT (STDMETHODCALLTYPE *MatchesAttributes)(
11843 ISpeechObjectToken *This,
11844 BSTR Attributes,
11845 VARIANT_BOOL *Matches);
11846
11847 END_INTERFACE
11848} ISpeechObjectTokenVtbl;
11849
11850interface ISpeechObjectToken {
11851 CONST_VTBL ISpeechObjectTokenVtbl* lpVtbl;
11852};
11853
11854#ifdef COBJMACROS
11855#ifndef WIDL_C_INLINE_WRAPPERS
11856/*** IUnknown methods ***/
11857#define ISpeechObjectToken_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11858#define ISpeechObjectToken_AddRef(This) (This)->lpVtbl->AddRef(This)
11859#define ISpeechObjectToken_Release(This) (This)->lpVtbl->Release(This)
11860/*** IDispatch methods ***/
11861#define ISpeechObjectToken_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11862#define ISpeechObjectToken_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11863#define ISpeechObjectToken_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11864#define ISpeechObjectToken_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11865/*** ISpeechObjectToken methods ***/
11866#define ISpeechObjectToken_get_Id(This,ObjectId) (This)->lpVtbl->get_Id(This,ObjectId)
11867#define ISpeechObjectToken_get_DataKey(This,DataKey) (This)->lpVtbl->get_DataKey(This,DataKey)
11868#define ISpeechObjectToken_get_Category(This,Category) (This)->lpVtbl->get_Category(This,Category)
11869#define ISpeechObjectToken_GetDescription(This,Locale,Description) (This)->lpVtbl->GetDescription(This,Locale,Description)
11870#define ISpeechObjectToken_SetId(This,Id,CategoryID,CreateIfNotExist) (This)->lpVtbl->SetId(This,Id,CategoryID,CreateIfNotExist)
11871#define ISpeechObjectToken_GetAttribute(This,AttributeName,AttributeValue) (This)->lpVtbl->GetAttribute(This,AttributeName,AttributeValue)
11872#define ISpeechObjectToken_CreateInstance(This,pUnkOuter,ClsContext,Object) (This)->lpVtbl->CreateInstance(This,pUnkOuter,ClsContext,Object)
11873#define ISpeechObjectToken_Remove(This,ObjectStorageCLSID) (This)->lpVtbl->Remove(This,ObjectStorageCLSID)
11874#define ISpeechObjectToken_GetStorageFileName(This,ObjectStorageCLSID,KeyName,FileName,Folder,FilePath) (This)->lpVtbl->GetStorageFileName(This,ObjectStorageCLSID,KeyName,FileName,Folder,FilePath)
11875#define ISpeechObjectToken_RemoveStorageFileName(This,ObjectStorageCLSID,KeyName,DeleteFile) (This)->lpVtbl->RemoveStorageFileName(This,ObjectStorageCLSID,KeyName,DeleteFile)
11876#define ISpeechObjectToken_IsUISupported(This,TypeOfUI,ExtraData,Object,Supported) (This)->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Object,Supported)
11877#define ISpeechObjectToken_DisplayUI(This,hWnd,Title,TypeOfUI,ExtraData,Object) (This)->lpVtbl->DisplayUI(This,hWnd,Title,TypeOfUI,ExtraData,Object)
11878#define ISpeechObjectToken_MatchesAttributes(This,Attributes,Matches) (This)->lpVtbl->MatchesAttributes(This,Attributes,Matches)
11879#else
11880/*** IUnknown methods ***/
11881static inline HRESULT ISpeechObjectToken_QueryInterface(ISpeechObjectToken* This,REFIID riid,void **ppvObject) {
11882 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11883}
11884static inline ULONG ISpeechObjectToken_AddRef(ISpeechObjectToken* This) {
11885 return This->lpVtbl->AddRef(This);
11886}
11887static inline ULONG ISpeechObjectToken_Release(ISpeechObjectToken* This) {
11888 return This->lpVtbl->Release(This);
11889}
11890/*** IDispatch methods ***/
11891static inline HRESULT ISpeechObjectToken_GetTypeInfoCount(ISpeechObjectToken* This,UINT *pctinfo) {
11892 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11893}
11894static inline HRESULT ISpeechObjectToken_GetTypeInfo(ISpeechObjectToken* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11895 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11896}
11897static inline HRESULT ISpeechObjectToken_GetIDsOfNames(ISpeechObjectToken* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11898 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11899}
11900static inline HRESULT ISpeechObjectToken_Invoke(ISpeechObjectToken* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11901 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11902}
11903/*** ISpeechObjectToken methods ***/
11904static inline HRESULT ISpeechObjectToken_get_Id(ISpeechObjectToken* This,BSTR *ObjectId) {
11905 return This->lpVtbl->get_Id(This,ObjectId);
11906}
11907static inline HRESULT ISpeechObjectToken_get_DataKey(ISpeechObjectToken* This,ISpeechDataKey **DataKey) {
11908 return This->lpVtbl->get_DataKey(This,DataKey);
11909}
11910static inline HRESULT ISpeechObjectToken_get_Category(ISpeechObjectToken* This,ISpeechObjectTokenCategory **Category) {
11911 return This->lpVtbl->get_Category(This,Category);
11912}
11913static inline HRESULT ISpeechObjectToken_GetDescription(ISpeechObjectToken* This,LONG Locale,BSTR *Description) {
11914 return This->lpVtbl->GetDescription(This,Locale,Description);
11915}
11916static inline HRESULT ISpeechObjectToken_SetId(ISpeechObjectToken* This,BSTR Id,BSTR CategoryID,VARIANT_BOOL CreateIfNotExist) {
11917 return This->lpVtbl->SetId(This,Id,CategoryID,CreateIfNotExist);
11918}
11919static inline HRESULT ISpeechObjectToken_GetAttribute(ISpeechObjectToken* This,BSTR AttributeName,BSTR *AttributeValue) {
11920 return This->lpVtbl->GetAttribute(This,AttributeName,AttributeValue);
11921}
11922static inline HRESULT ISpeechObjectToken_CreateInstance(ISpeechObjectToken* This,IUnknown *pUnkOuter,SpeechTokenContext ClsContext,IUnknown **Object) {
11923 return This->lpVtbl->CreateInstance(This,pUnkOuter,ClsContext,Object);
11924}
11925static inline HRESULT ISpeechObjectToken_Remove(ISpeechObjectToken* This,BSTR ObjectStorageCLSID) {
11926 return This->lpVtbl->Remove(This,ObjectStorageCLSID);
11927}
11928static inline HRESULT ISpeechObjectToken_GetStorageFileName(ISpeechObjectToken* This,BSTR ObjectStorageCLSID,BSTR KeyName,BSTR FileName,SpeechTokenShellFolder Folder,BSTR *FilePath) {
11929 return This->lpVtbl->GetStorageFileName(This,ObjectStorageCLSID,KeyName,FileName,Folder,FilePath);
11930}
11931static inline HRESULT ISpeechObjectToken_RemoveStorageFileName(ISpeechObjectToken* This,BSTR ObjectStorageCLSID,BSTR KeyName,VARIANT_BOOL DeleteFile) {
11932 return This->lpVtbl->RemoveStorageFileName(This,ObjectStorageCLSID,KeyName,DeleteFile);
11933}
11934static inline HRESULT ISpeechObjectToken_IsUISupported(ISpeechObjectToken* This,const BSTR TypeOfUI,const VARIANT *ExtraData,IUnknown *Object,VARIANT_BOOL *Supported) {
11935 return This->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Object,Supported);
11936}
11937static inline HRESULT ISpeechObjectToken_DisplayUI(ISpeechObjectToken* This,LONG hWnd,BSTR Title,const BSTR TypeOfUI,const VARIANT *ExtraData,IUnknown *Object) {
11938 return This->lpVtbl->DisplayUI(This,hWnd,Title,TypeOfUI,ExtraData,Object);
11939}
11940static inline HRESULT ISpeechObjectToken_MatchesAttributes(ISpeechObjectToken* This,BSTR Attributes,VARIANT_BOOL *Matches) {
11941 return This->lpVtbl->MatchesAttributes(This,Attributes,Matches);
11942}
11943#endif
11944#endif
11945
11946#endif
11947
11948
11949#endif /* __ISpeechObjectToken_INTERFACE_DEFINED__ */
11950
11951/*****************************************************************************
11952 * ISpeechObjectTokens interface
11953 */
11954#ifndef __ISpeechObjectTokens_INTERFACE_DEFINED__
11955#define __ISpeechObjectTokens_INTERFACE_DEFINED__
11956
11957DEFINE_GUID(IID_ISpeechObjectTokens, 0x9285b776, 0x2e7b, 0x4bc0, 0xb5,0x3e, 0x58,0x0e,0xb6,0xfa,0x96,0x7f);
11958#if defined(__cplusplus) && !defined(CINTERFACE)
11959MIDL_INTERFACE("9285b776-2e7b-4bc0-b53e-580eb6fa967f")
11960ISpeechObjectTokens : public IDispatch
11961{
11962 virtual HRESULT STDMETHODCALLTYPE get_Count(
11963 LONG *Count) = 0;
11964
11965 virtual HRESULT STDMETHODCALLTYPE Item(
11966 LONG Index,
11967 ISpeechObjectToken **Token) = 0;
11968
11969 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
11970 IUnknown **ppEnumVARIANT) = 0;
11971
11972};
11973#ifdef __CRT_UUID_DECL
11974__CRT_UUID_DECL(ISpeechObjectTokens, 0x9285b776, 0x2e7b, 0x4bc0, 0xb5,0x3e, 0x58,0x0e,0xb6,0xfa,0x96,0x7f)
11975#endif
11976#else
11977typedef struct ISpeechObjectTokensVtbl {
11978 BEGIN_INTERFACE
11979
11980 /*** IUnknown methods ***/
11981 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11982 ISpeechObjectTokens *This,
11983 REFIID riid,
11984 void **ppvObject);
11985
11986 ULONG (STDMETHODCALLTYPE *AddRef)(
11987 ISpeechObjectTokens *This);
11988
11989 ULONG (STDMETHODCALLTYPE *Release)(
11990 ISpeechObjectTokens *This);
11991
11992 /*** IDispatch methods ***/
11993 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11994 ISpeechObjectTokens *This,
11995 UINT *pctinfo);
11996
11997 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11998 ISpeechObjectTokens *This,
11999 UINT iTInfo,
12000 LCID lcid,
12001 ITypeInfo **ppTInfo);
12002
12003 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12004 ISpeechObjectTokens *This,
12005 REFIID riid,
12006 LPOLESTR *rgszNames,
12007 UINT cNames,
12008 LCID lcid,
12009 DISPID *rgDispId);
12010
12011 HRESULT (STDMETHODCALLTYPE *Invoke)(
12012 ISpeechObjectTokens *This,
12013 DISPID dispIdMember,
12014 REFIID riid,
12015 LCID lcid,
12016 WORD wFlags,
12017 DISPPARAMS *pDispParams,
12018 VARIANT *pVarResult,
12019 EXCEPINFO *pExcepInfo,
12020 UINT *puArgErr);
12021
12022 /*** ISpeechObjectTokens methods ***/
12023 HRESULT (STDMETHODCALLTYPE *get_Count)(
12024 ISpeechObjectTokens *This,
12025 LONG *Count);
12026
12027 HRESULT (STDMETHODCALLTYPE *Item)(
12028 ISpeechObjectTokens *This,
12029 LONG Index,
12030 ISpeechObjectToken **Token);
12031
12032 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
12033 ISpeechObjectTokens *This,
12034 IUnknown **ppEnumVARIANT);
12035
12036 END_INTERFACE
12037} ISpeechObjectTokensVtbl;
12038
12039interface ISpeechObjectTokens {
12040 CONST_VTBL ISpeechObjectTokensVtbl* lpVtbl;
12041};
12042
12043#ifdef COBJMACROS
12044#ifndef WIDL_C_INLINE_WRAPPERS
12045/*** IUnknown methods ***/
12046#define ISpeechObjectTokens_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12047#define ISpeechObjectTokens_AddRef(This) (This)->lpVtbl->AddRef(This)
12048#define ISpeechObjectTokens_Release(This) (This)->lpVtbl->Release(This)
12049/*** IDispatch methods ***/
12050#define ISpeechObjectTokens_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12051#define ISpeechObjectTokens_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12052#define ISpeechObjectTokens_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12053#define ISpeechObjectTokens_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12054/*** ISpeechObjectTokens methods ***/
12055#define ISpeechObjectTokens_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
12056#define ISpeechObjectTokens_Item(This,Index,Token) (This)->lpVtbl->Item(This,Index,Token)
12057#define ISpeechObjectTokens_get__NewEnum(This,ppEnumVARIANT) (This)->lpVtbl->get__NewEnum(This,ppEnumVARIANT)
12058#else
12059/*** IUnknown methods ***/
12060static inline HRESULT ISpeechObjectTokens_QueryInterface(ISpeechObjectTokens* This,REFIID riid,void **ppvObject) {
12061 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12062}
12063static inline ULONG ISpeechObjectTokens_AddRef(ISpeechObjectTokens* This) {
12064 return This->lpVtbl->AddRef(This);
12065}
12066static inline ULONG ISpeechObjectTokens_Release(ISpeechObjectTokens* This) {
12067 return This->lpVtbl->Release(This);
12068}
12069/*** IDispatch methods ***/
12070static inline HRESULT ISpeechObjectTokens_GetTypeInfoCount(ISpeechObjectTokens* This,UINT *pctinfo) {
12071 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12072}
12073static inline HRESULT ISpeechObjectTokens_GetTypeInfo(ISpeechObjectTokens* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12074 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12075}
12076static inline HRESULT ISpeechObjectTokens_GetIDsOfNames(ISpeechObjectTokens* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12077 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12078}
12079static inline HRESULT ISpeechObjectTokens_Invoke(ISpeechObjectTokens* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12080 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12081}
12082/*** ISpeechObjectTokens methods ***/
12083static inline HRESULT ISpeechObjectTokens_get_Count(ISpeechObjectTokens* This,LONG *Count) {
12084 return This->lpVtbl->get_Count(This,Count);
12085}
12086static inline HRESULT ISpeechObjectTokens_Item(ISpeechObjectTokens* This,LONG Index,ISpeechObjectToken **Token) {
12087 return This->lpVtbl->Item(This,Index,Token);
12088}
12089static inline HRESULT ISpeechObjectTokens_get__NewEnum(ISpeechObjectTokens* This,IUnknown **ppEnumVARIANT) {
12090 return This->lpVtbl->get__NewEnum(This,ppEnumVARIANT);
12091}
12092#endif
12093#endif
12094
12095#endif
12096
12097
12098#endif /* __ISpeechObjectTokens_INTERFACE_DEFINED__ */
12099
12100/*****************************************************************************
12101 * ISpeechObjectTokenCategory interface
12102 */
12103#ifndef __ISpeechObjectTokenCategory_INTERFACE_DEFINED__
12104#define __ISpeechObjectTokenCategory_INTERFACE_DEFINED__
12105
12106DEFINE_GUID(IID_ISpeechObjectTokenCategory, 0xca7eac50, 0x2d01, 0x4145, 0x86,0xd4, 0x5a,0xe7,0xd7,0x0f,0x44,0x69);
12107#if defined(__cplusplus) && !defined(CINTERFACE)
12108MIDL_INTERFACE("ca7eac50-2d01-4145-86d4-5ae7d70f4469")
12109ISpeechObjectTokenCategory : public IDispatch
12110{
12111 virtual HRESULT STDMETHODCALLTYPE get_Id(
12112 BSTR *Id) = 0;
12113
12114 virtual HRESULT STDMETHODCALLTYPE put_Default(
12115 const BSTR TokenId) = 0;
12116
12117 virtual HRESULT STDMETHODCALLTYPE get_Default(
12118 BSTR *TokenId) = 0;
12119
12120 virtual HRESULT STDMETHODCALLTYPE SetId(
12121 const BSTR Id,
12122 VARIANT_BOOL CreateIfNotExist = 0) = 0;
12123
12124 virtual HRESULT STDMETHODCALLTYPE GetDataKey(
12125 SpeechDataKeyLocation Location,
12126 ISpeechDataKey **DataKey) = 0;
12127
12128 virtual HRESULT STDMETHODCALLTYPE EnumerateTokens(
12129 BSTR RequiredAttributes,
12130 BSTR OptionalAttributes,
12131 ISpeechObjectTokens **Tokens) = 0;
12132
12133};
12134#ifdef __CRT_UUID_DECL
12135__CRT_UUID_DECL(ISpeechObjectTokenCategory, 0xca7eac50, 0x2d01, 0x4145, 0x86,0xd4, 0x5a,0xe7,0xd7,0x0f,0x44,0x69)
12136#endif
12137#else
12138typedef struct ISpeechObjectTokenCategoryVtbl {
12139 BEGIN_INTERFACE
12140
12141 /*** IUnknown methods ***/
12142 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12143 ISpeechObjectTokenCategory *This,
12144 REFIID riid,
12145 void **ppvObject);
12146
12147 ULONG (STDMETHODCALLTYPE *AddRef)(
12148 ISpeechObjectTokenCategory *This);
12149
12150 ULONG (STDMETHODCALLTYPE *Release)(
12151 ISpeechObjectTokenCategory *This);
12152
12153 /*** IDispatch methods ***/
12154 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12155 ISpeechObjectTokenCategory *This,
12156 UINT *pctinfo);
12157
12158 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12159 ISpeechObjectTokenCategory *This,
12160 UINT iTInfo,
12161 LCID lcid,
12162 ITypeInfo **ppTInfo);
12163
12164 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12165 ISpeechObjectTokenCategory *This,
12166 REFIID riid,
12167 LPOLESTR *rgszNames,
12168 UINT cNames,
12169 LCID lcid,
12170 DISPID *rgDispId);
12171
12172 HRESULT (STDMETHODCALLTYPE *Invoke)(
12173 ISpeechObjectTokenCategory *This,
12174 DISPID dispIdMember,
12175 REFIID riid,
12176 LCID lcid,
12177 WORD wFlags,
12178 DISPPARAMS *pDispParams,
12179 VARIANT *pVarResult,
12180 EXCEPINFO *pExcepInfo,
12181 UINT *puArgErr);
12182
12183 /*** ISpeechObjectTokenCategory methods ***/
12184 HRESULT (STDMETHODCALLTYPE *get_Id)(
12185 ISpeechObjectTokenCategory *This,
12186 BSTR *Id);
12187
12188 HRESULT (STDMETHODCALLTYPE *put_Default)(
12189 ISpeechObjectTokenCategory *This,
12190 const BSTR TokenId);
12191
12192 HRESULT (STDMETHODCALLTYPE *get_Default)(
12193 ISpeechObjectTokenCategory *This,
12194 BSTR *TokenId);
12195
12196 HRESULT (STDMETHODCALLTYPE *SetId)(
12197 ISpeechObjectTokenCategory *This,
12198 const BSTR Id,
12199 VARIANT_BOOL CreateIfNotExist);
12200
12201 HRESULT (STDMETHODCALLTYPE *GetDataKey)(
12202 ISpeechObjectTokenCategory *This,
12203 SpeechDataKeyLocation Location,
12204 ISpeechDataKey **DataKey);
12205
12206 HRESULT (STDMETHODCALLTYPE *EnumerateTokens)(
12207 ISpeechObjectTokenCategory *This,
12208 BSTR RequiredAttributes,
12209 BSTR OptionalAttributes,
12210 ISpeechObjectTokens **Tokens);
12211
12212 END_INTERFACE
12213} ISpeechObjectTokenCategoryVtbl;
12214
12215interface ISpeechObjectTokenCategory {
12216 CONST_VTBL ISpeechObjectTokenCategoryVtbl* lpVtbl;
12217};
12218
12219#ifdef COBJMACROS
12220#ifndef WIDL_C_INLINE_WRAPPERS
12221/*** IUnknown methods ***/
12222#define ISpeechObjectTokenCategory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12223#define ISpeechObjectTokenCategory_AddRef(This) (This)->lpVtbl->AddRef(This)
12224#define ISpeechObjectTokenCategory_Release(This) (This)->lpVtbl->Release(This)
12225/*** IDispatch methods ***/
12226#define ISpeechObjectTokenCategory_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12227#define ISpeechObjectTokenCategory_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12228#define ISpeechObjectTokenCategory_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12229#define ISpeechObjectTokenCategory_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12230/*** ISpeechObjectTokenCategory methods ***/
12231#define ISpeechObjectTokenCategory_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
12232#define ISpeechObjectTokenCategory_put_Default(This,TokenId) (This)->lpVtbl->put_Default(This,TokenId)
12233#define ISpeechObjectTokenCategory_get_Default(This,TokenId) (This)->lpVtbl->get_Default(This,TokenId)
12234#define ISpeechObjectTokenCategory_SetId(This,Id,CreateIfNotExist) (This)->lpVtbl->SetId(This,Id,CreateIfNotExist)
12235#define ISpeechObjectTokenCategory_GetDataKey(This,Location,DataKey) (This)->lpVtbl->GetDataKey(This,Location,DataKey)
12236#define ISpeechObjectTokenCategory_EnumerateTokens(This,RequiredAttributes,OptionalAttributes,Tokens) (This)->lpVtbl->EnumerateTokens(This,RequiredAttributes,OptionalAttributes,Tokens)
12237#else
12238/*** IUnknown methods ***/
12239static inline HRESULT ISpeechObjectTokenCategory_QueryInterface(ISpeechObjectTokenCategory* This,REFIID riid,void **ppvObject) {
12240 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12241}
12242static inline ULONG ISpeechObjectTokenCategory_AddRef(ISpeechObjectTokenCategory* This) {
12243 return This->lpVtbl->AddRef(This);
12244}
12245static inline ULONG ISpeechObjectTokenCategory_Release(ISpeechObjectTokenCategory* This) {
12246 return This->lpVtbl->Release(This);
12247}
12248/*** IDispatch methods ***/
12249static inline HRESULT ISpeechObjectTokenCategory_GetTypeInfoCount(ISpeechObjectTokenCategory* This,UINT *pctinfo) {
12250 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12251}
12252static inline HRESULT ISpeechObjectTokenCategory_GetTypeInfo(ISpeechObjectTokenCategory* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12253 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12254}
12255static inline HRESULT ISpeechObjectTokenCategory_GetIDsOfNames(ISpeechObjectTokenCategory* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12256 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12257}
12258static inline HRESULT ISpeechObjectTokenCategory_Invoke(ISpeechObjectTokenCategory* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12259 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12260}
12261/*** ISpeechObjectTokenCategory methods ***/
12262static inline HRESULT ISpeechObjectTokenCategory_get_Id(ISpeechObjectTokenCategory* This,BSTR *Id) {
12263 return This->lpVtbl->get_Id(This,Id);
12264}
12265static inline HRESULT ISpeechObjectTokenCategory_put_Default(ISpeechObjectTokenCategory* This,const BSTR TokenId) {
12266 return This->lpVtbl->put_Default(This,TokenId);
12267}
12268static inline HRESULT ISpeechObjectTokenCategory_get_Default(ISpeechObjectTokenCategory* This,BSTR *TokenId) {
12269 return This->lpVtbl->get_Default(This,TokenId);
12270}
12271static inline HRESULT ISpeechObjectTokenCategory_SetId(ISpeechObjectTokenCategory* This,const BSTR Id,VARIANT_BOOL CreateIfNotExist) {
12272 return This->lpVtbl->SetId(This,Id,CreateIfNotExist);
12273}
12274static inline HRESULT ISpeechObjectTokenCategory_GetDataKey(ISpeechObjectTokenCategory* This,SpeechDataKeyLocation Location,ISpeechDataKey **DataKey) {
12275 return This->lpVtbl->GetDataKey(This,Location,DataKey);
12276}
12277static inline HRESULT ISpeechObjectTokenCategory_EnumerateTokens(ISpeechObjectTokenCategory* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **Tokens) {
12278 return This->lpVtbl->EnumerateTokens(This,RequiredAttributes,OptionalAttributes,Tokens);
12279}
12280#endif
12281#endif
12282
12283#endif
12284
12285
12286#endif /* __ISpeechObjectTokenCategory_INTERFACE_DEFINED__ */
12287
12288typedef enum SpeechAudioFormatType {
12289 SAFTDefault = -1,
12290 SAFTNoAssignedFormat = 0,
12291 SAFTText = 1,
12292 SAFTNonStandardFormat = 2,
12293 SAFTExtendedAudioFormat = 3,
12294 SAFT8kHz8BitMono = 4,
12295 SAFT8kHz8BitStereo = 5,
12296 SAFT8kHz16BitMono = 6,
12297 SAFT8kHz16BitStereo = 7,
12298 SAFT11kHz8BitMono = 8,
12299 SAFT11kHz8BitStereo = 9,
12300 SAFT11kHz16BitMono = 10,
12301 SAFT11kHz16BitStereo = 11,
12302 SAFT12kHz8BitMono = 12,
12303 SAFT12kHz8BitStereo = 13,
12304 SAFT12kHz16BitMono = 14,
12305 SAFT12kHz16BitStereo = 15,
12306 SAFT16kHz8BitMono = 16,
12307 SAFT16kHz8BitStereo = 17,
12308 SAFT16kHz16BitMono = 18,
12309 SAFT16kHz16BitStereo = 19,
12310 SAFT22kHz8BitMono = 20,
12311 SAFT22kHz8BitStereo = 21,
12312 SAFT22kHz16BitMono = 22,
12313 SAFT22kHz16BitStereo = 23,
12314 SAFT24kHz8BitMono = 24,
12315 SAFT24kHz8BitStereo = 25,
12316 SAFT24kHz16BitMono = 26,
12317 SAFT24kHz16BitStereo = 27,
12318 SAFT32kHz8BitMono = 28,
12319 SAFT32kHz8BitStereo = 29,
12320 SAFT32kHz16BitMono = 30,
12321 SAFT32kHz16BitStereo = 31,
12322 SAFT44kHz8BitMono = 32,
12323 SAFT44kHz8BitStereo = 33,
12324 SAFT44kHz16BitMono = 34,
12325 SAFT44kHz16BitStereo = 35,
12326 SAFT48kHz8BitMono = 36,
12327 SAFT48kHz8BitStereo = 37,
12328 SAFT48kHz16BitMono = 38,
12329 SAFT48kHz16BitStereo = 39,
12330 SAFTTrueSpeech_8kHz1BitMono = 40,
12331 SAFTCCITT_ALaw_8kHzMono = 41,
12332 SAFTCCITT_ALaw_8kHzStereo = 42,
12333 SAFTCCITT_ALaw_11kHzMono = 43,
12334 SAFTCCITT_ALaw_11kHzStereo = 44,
12335 SAFTCCITT_ALaw_22kHzMono = 45,
12336 SAFTCCITT_ALaw_22kHzStereo = 46,
12337 SAFTCCITT_ALaw_44kHzMono = 47,
12338 SAFTCCITT_ALaw_44kHzStereo = 48,
12339 SAFTCCITT_uLaw_8kHzMono = 49,
12340 SAFTCCITT_uLaw_8kHzStereo = 50,
12341 SAFTCCITT_uLaw_11kHzMono = 51,
12342 SAFTCCITT_uLaw_11kHzStereo = 52,
12343 SAFTCCITT_uLaw_22kHzMono = 53,
12344 SAFTCCITT_uLaw_22kHzStereo = 54,
12345 SAFTCCITT_uLaw_44kHzMono = 55,
12346 SAFTCCITT_uLaw_44kHzStereo = 56,
12347 SAFTADPCM_8kHzMono = 57,
12348 SAFTADPCM_8kHzStereo = 58,
12349 SAFTADPCM_11kHzMono = 59,
12350 SAFTADPCM_11kHzStereo = 60,
12351 SAFTADPCM_22kHzMono = 61,
12352 SAFTADPCM_22kHzStereo = 62,
12353 SAFTADPCM_44kHzMono = 63,
12354 SAFTADPCM_44kHzStereo = 64,
12355 SAFTGSM610_8kHzMono = 65,
12356 SAFTGSM610_11kHzMono = 66,
12357 SAFTGSM610_22kHzMono = 67,
12358 SAFTGSM610_44kHzMono = 68
12359} SpeechAudioFormatType;
12360typedef enum DISPID_SpeechAudioFormat {
12361 DISPID_SAFType = 1,
12362 DISPID_SAFGuid = 2,
12363 DISPID_SAFGetWaveFormatEx = 3,
12364 DISPID_SAFSetWaveFormatEx = 4
12365} DISPID_SpeechAudioFormat;
12366typedef enum DISPID_SpeechBaseStream {
12367 DISPID_SBSFormat = 1,
12368 DISPID_SBSRead = 2,
12369 DISPID_SBSWrite = 3,
12370 DISPID_SBSSeek = 4
12371} DISPID_SpeechBaseStream;
12372typedef enum SpeechStreamSeekPositionType {
12373 SSSPTRelativeToStart = STREAM_SEEK_SET,
12374 SSSPTRelativeToCurrentPosition = STREAM_SEEK_CUR,
12375 SSSPTRelativeToEnd = STREAM_SEEK_END
12376} SpeechStreamSeekPositionType;
12377typedef enum DISPID_SpeechAudio {
12378 DISPID_SAStatus = 200,
12379 DISPID_SABufferInfo = 201,
12380 DISPID_SADefaultFormat = 202,
12381 DISPID_SAVolume = 203,
12382 DISPID_SABufferNotifySize = 204,
12383 DISPID_SAEventHandle = 205,
12384 DISPID_SASetState = 206
12385} DISPID_SpeechAudio;
12386typedef enum SpeechAudioState {
12387 SASClosed = SPAS_CLOSED,
12388 SASStop = SPAS_STOP,
12389 SASPause = SPAS_PAUSE,
12390 SASRun = SPAS_RUN
12391} SpeechAudioState;
12392typedef enum DISPID_SpeechMMSysAudio {
12393 DISPID_SMSADeviceId = 300,
12394 DISPID_SMSALineId = 301,
12395 DISPID_SMSAMMHandle = 302
12396} DISPID_SpeechMMSysAudio;
12397typedef enum DISPID_SpeechFileStream {
12398 DISPID_SFSOpen = 100,
12399 DISPID_SFSClose = 101
12400} DISPID_SpeechFileStream;
12401typedef enum SpeechStreamFileMode {
12402 SSFMOpenForRead = SPFM_OPEN_READONLY,
12403 SSFMOpenReadWrite = SPFM_OPEN_READWRITE,
12404 SSFMCreate = SPFM_CREATE,
12405 SSFMCreateForWrite = SPFM_CREATE_ALWAYS
12406} SpeechStreamFileMode;
12407typedef enum DISPID_SpeechCustomStream {
12408 DISPID_SCSBaseStream = 100
12409} DISPID_SpeechCustomStream;
12410typedef enum DISPID_SpeechMemoryStream {
12411 DISPID_SMSSetData = 100,
12412 DISPID_SMSGetData = 101
12413} DISPID_SpeechMemoryStream;
12414typedef enum DISPID_SpeechAudioStatus {
12415 DISPID_SASFreeBufferSpace = 1,
12416 DISPID_SASNonBlockingIO = 2,
12417 DISPID_SASState = 3,
12418 DISPID_SASCurrentSeekPosition = 4,
12419 DISPID_SASCurrentDevicePosition = 5
12420} DISPID_SpeechAudioStatus;
12421typedef enum DISPID_SpeechAudioBufferInfo {
12422 DISPID_SABIMinNotification = 1,
12423 DISPID_SABIBufferSize = 2,
12424 DISPID_SABIEventBias = 3
12425} DISPID_SpeechAudioBufferInfo;
12426typedef enum DISPID_SpeechWaveFormatEx {
12427 DISPID_SWFEFormatTag = 1,
12428 DISPID_SWFEChannels = 2,
12429 DISPID_SWFESamplesPerSec = 3,
12430 DISPID_SWFEAvgBytesPerSec = 4,
12431 DISPID_SWFEBlockAlign = 5,
12432 DISPID_SWFEBitsPerSample = 6,
12433 DISPID_SWFEExtraData = 7
12434} DISPID_SpeechWaveFormatEx;
12435typedef enum DISPID_SpeechVoice {
12436 DISPID_SVStatus = 1,
12437 DISPID_SVVoice = 2,
12438 DISPID_SVAudioOutput = 3,
12439 DISPID_SVAudioOutputStream = 4,
12440 DISPID_SVRate = 5,
12441 DISPID_SVVolume = 6,
12442 DISPID_SVAllowAudioOuputFormatChangesOnNextSet = 7,
12443 DISPID_SVEventInterests = 8,
12444 DISPID_SVPriority = 9,
12445 DISPID_SVAlertBoundary = 10,
12446 DISPID_SVSyncronousSpeakTimeout = 11,
12447 DISPID_SVSpeak = 12,
12448 DISPID_SVSpeakStream = 13,
12449 DISPID_SVPause = 14,
12450 DISPID_SVResume = 15,
12451 DISPID_SVSkip = 16,
12452 DISPID_SVGetVoices = 17,
12453 DISPID_SVGetAudioOutputs = 18,
12454 DISPID_SVWaitUntilDone = 19,
12455 DISPID_SVSpeakCompleteEvent = 20,
12456 DISPID_SVIsUISupported = 21,
12457 DISPID_SVDisplayUI = 22
12458} DISPID_SpeechVoice;
12459typedef enum SpeechVoicePriority {
12460 SVPNormal = SPVPRI_NORMAL,
12461 SVPAlert = SPVPRI_ALERT,
12462 SVPOver = SPVPRI_OVER
12463} SpeechVoicePriority;
12464typedef enum SpeechVoiceSpeakFlags {
12465 SVSFDefault = SPF_DEFAULT,
12466 SVSFlagsAsync = SPF_ASYNC,
12467 SVSFPurgeBeforeSpeak = SPF_PURGEBEFORESPEAK,
12468 SVSFIsFilename = SPF_IS_FILENAME,
12469 SVSFIsXML = SPF_IS_XML,
12470 SVSFIsNotXML = SPF_IS_NOT_XML,
12471 SVSFPersistXML = SPF_PERSIST_XML,
12472 SVSFNLPSpeakPunc = SPF_NLP_SPEAK_PUNC,
12473 SVSFParseSapi = SPF_PARSE_SAPI,
12474 SVSFParseSsml = SPF_PARSE_SSML,
12475 SVSFParseAutodetect = SPF_PARSE_AUTODETECT,
12476 SVSFNLPMask = SPF_NLP_MASK,
12477 SVSFParseMask = SPF_PARSE_MASK,
12478 SVSFVoiceMask = SPF_VOICE_MASK,
12479 SVSFUnusedFlags = SPF_UNUSED_FLAGS
12480} SpeechVoiceSpeakFlags;
12481typedef enum SpeechVoiceEvents {
12482 SVEStartInputStream = 0x2,
12483 SVEEndInputStream = 0x4,
12484 SVEVoiceChange = 0x8,
12485 SVEBookmark = 0x10,
12486 SVEWordBoundary = 0x20,
12487 SVEPhoneme = 0x40,
12488 SVESentenceBoundary = 0x80,
12489 SVEViseme = 0x100,
12490 SVEAudioLevel = 0x200,
12491 SVEPrivate = 0x8000,
12492 SVEAllEvents = 0x83fe
12493} SpeechVoiceEvents;
12494typedef enum DISPID_SpeechVoiceStatus {
12495 DISPID_SVSCurrentStreamNumber = 1,
12496 DISPID_SVSLastStreamNumberQueued = 2,
12497 DISPID_SVSLastResult = 3,
12498 DISPID_SVSRunningState = 4,
12499 DISPID_SVSInputWordPosition = 5,
12500 DISPID_SVSInputWordLength = 6,
12501 DISPID_SVSInputSentencePosition = 7,
12502 DISPID_SVSInputSentenceLength = 8,
12503 DISPID_SVSLastBookmark = 9,
12504 DISPID_SVSLastBookmarkId = 10,
12505 DISPID_SVSPhonemeId = 11,
12506 DISPID_SVSVisemeId = 12
12507} DISPID_SpeechVoiceStatus;
12508typedef enum SpeechRunState {
12509 SRSEDone = SPRS_DONE,
12510 SRSEIsSpeaking = SPRS_IS_SPEAKING
12511} SpeechRunState;
12512/*****************************************************************************
12513 * ISpeechAudioFormat interface
12514 */
12515#ifndef __ISpeechAudioFormat_INTERFACE_DEFINED__
12516#define __ISpeechAudioFormat_INTERFACE_DEFINED__
12517
12518DEFINE_GUID(IID_ISpeechAudioFormat, 0xe6e9c590, 0x3e18, 0x40e3, 0x82,0x99, 0x06,0x1f,0x98,0xbd,0xe7,0xc7);
12519#if defined(__cplusplus) && !defined(CINTERFACE)
12520MIDL_INTERFACE("e6e9c590-3e18-40e3-8299-061f98bde7c7")
12521ISpeechAudioFormat : public IDispatch
12522{
12523 virtual HRESULT STDMETHODCALLTYPE get_Type(
12524 SpeechAudioFormatType *AudioFormat) = 0;
12525
12526 virtual HRESULT STDMETHODCALLTYPE put_Type(
12527 SpeechAudioFormatType AudioFormat) = 0;
12528
12529 virtual HRESULT STDMETHODCALLTYPE get_Guid(
12530 BSTR *Guid) = 0;
12531
12532 virtual HRESULT STDMETHODCALLTYPE put_Guid(
12533 BSTR Guid) = 0;
12534
12535 virtual HRESULT STDMETHODCALLTYPE GetWaveFormatEx(
12536 ISpeechWaveFormatEx **SpeechWaveFormatEx) = 0;
12537
12538 virtual HRESULT STDMETHODCALLTYPE SetWaveFormatEx(
12539 ISpeechWaveFormatEx *SpeechWaveFormatEx) = 0;
12540
12541};
12542#ifdef __CRT_UUID_DECL
12543__CRT_UUID_DECL(ISpeechAudioFormat, 0xe6e9c590, 0x3e18, 0x40e3, 0x82,0x99, 0x06,0x1f,0x98,0xbd,0xe7,0xc7)
12544#endif
12545#else
12546typedef struct ISpeechAudioFormatVtbl {
12547 BEGIN_INTERFACE
12548
12549 /*** IUnknown methods ***/
12550 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12551 ISpeechAudioFormat *This,
12552 REFIID riid,
12553 void **ppvObject);
12554
12555 ULONG (STDMETHODCALLTYPE *AddRef)(
12556 ISpeechAudioFormat *This);
12557
12558 ULONG (STDMETHODCALLTYPE *Release)(
12559 ISpeechAudioFormat *This);
12560
12561 /*** IDispatch methods ***/
12562 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12563 ISpeechAudioFormat *This,
12564 UINT *pctinfo);
12565
12566 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12567 ISpeechAudioFormat *This,
12568 UINT iTInfo,
12569 LCID lcid,
12570 ITypeInfo **ppTInfo);
12571
12572 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12573 ISpeechAudioFormat *This,
12574 REFIID riid,
12575 LPOLESTR *rgszNames,
12576 UINT cNames,
12577 LCID lcid,
12578 DISPID *rgDispId);
12579
12580 HRESULT (STDMETHODCALLTYPE *Invoke)(
12581 ISpeechAudioFormat *This,
12582 DISPID dispIdMember,
12583 REFIID riid,
12584 LCID lcid,
12585 WORD wFlags,
12586 DISPPARAMS *pDispParams,
12587 VARIANT *pVarResult,
12588 EXCEPINFO *pExcepInfo,
12589 UINT *puArgErr);
12590
12591 /*** ISpeechAudioFormat methods ***/
12592 HRESULT (STDMETHODCALLTYPE *get_Type)(
12593 ISpeechAudioFormat *This,
12594 SpeechAudioFormatType *AudioFormat);
12595
12596 HRESULT (STDMETHODCALLTYPE *put_Type)(
12597 ISpeechAudioFormat *This,
12598 SpeechAudioFormatType AudioFormat);
12599
12600 HRESULT (STDMETHODCALLTYPE *get_Guid)(
12601 ISpeechAudioFormat *This,
12602 BSTR *Guid);
12603
12604 HRESULT (STDMETHODCALLTYPE *put_Guid)(
12605 ISpeechAudioFormat *This,
12606 BSTR Guid);
12607
12608 HRESULT (STDMETHODCALLTYPE *GetWaveFormatEx)(
12609 ISpeechAudioFormat *This,
12610 ISpeechWaveFormatEx **SpeechWaveFormatEx);
12611
12612 HRESULT (STDMETHODCALLTYPE *SetWaveFormatEx)(
12613 ISpeechAudioFormat *This,
12614 ISpeechWaveFormatEx *SpeechWaveFormatEx);
12615
12616 END_INTERFACE
12617} ISpeechAudioFormatVtbl;
12618
12619interface ISpeechAudioFormat {
12620 CONST_VTBL ISpeechAudioFormatVtbl* lpVtbl;
12621};
12622
12623#ifdef COBJMACROS
12624#ifndef WIDL_C_INLINE_WRAPPERS
12625/*** IUnknown methods ***/
12626#define ISpeechAudioFormat_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12627#define ISpeechAudioFormat_AddRef(This) (This)->lpVtbl->AddRef(This)
12628#define ISpeechAudioFormat_Release(This) (This)->lpVtbl->Release(This)
12629/*** IDispatch methods ***/
12630#define ISpeechAudioFormat_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12631#define ISpeechAudioFormat_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12632#define ISpeechAudioFormat_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12633#define ISpeechAudioFormat_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12634/*** ISpeechAudioFormat methods ***/
12635#define ISpeechAudioFormat_get_Type(This,AudioFormat) (This)->lpVtbl->get_Type(This,AudioFormat)
12636#define ISpeechAudioFormat_put_Type(This,AudioFormat) (This)->lpVtbl->put_Type(This,AudioFormat)
12637#define ISpeechAudioFormat_get_Guid(This,Guid) (This)->lpVtbl->get_Guid(This,Guid)
12638#define ISpeechAudioFormat_put_Guid(This,Guid) (This)->lpVtbl->put_Guid(This,Guid)
12639#define ISpeechAudioFormat_GetWaveFormatEx(This,SpeechWaveFormatEx) (This)->lpVtbl->GetWaveFormatEx(This,SpeechWaveFormatEx)
12640#define ISpeechAudioFormat_SetWaveFormatEx(This,SpeechWaveFormatEx) (This)->lpVtbl->SetWaveFormatEx(This,SpeechWaveFormatEx)
12641#else
12642/*** IUnknown methods ***/
12643static inline HRESULT ISpeechAudioFormat_QueryInterface(ISpeechAudioFormat* This,REFIID riid,void **ppvObject) {
12644 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12645}
12646static inline ULONG ISpeechAudioFormat_AddRef(ISpeechAudioFormat* This) {
12647 return This->lpVtbl->AddRef(This);
12648}
12649static inline ULONG ISpeechAudioFormat_Release(ISpeechAudioFormat* This) {
12650 return This->lpVtbl->Release(This);
12651}
12652/*** IDispatch methods ***/
12653static inline HRESULT ISpeechAudioFormat_GetTypeInfoCount(ISpeechAudioFormat* This,UINT *pctinfo) {
12654 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12655}
12656static inline HRESULT ISpeechAudioFormat_GetTypeInfo(ISpeechAudioFormat* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12657 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12658}
12659static inline HRESULT ISpeechAudioFormat_GetIDsOfNames(ISpeechAudioFormat* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12660 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12661}
12662static inline HRESULT ISpeechAudioFormat_Invoke(ISpeechAudioFormat* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12663 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12664}
12665/*** ISpeechAudioFormat methods ***/
12666static inline HRESULT ISpeechAudioFormat_get_Type(ISpeechAudioFormat* This,SpeechAudioFormatType *AudioFormat) {
12667 return This->lpVtbl->get_Type(This,AudioFormat);
12668}
12669static inline HRESULT ISpeechAudioFormat_put_Type(ISpeechAudioFormat* This,SpeechAudioFormatType AudioFormat) {
12670 return This->lpVtbl->put_Type(This,AudioFormat);
12671}
12672static inline HRESULT ISpeechAudioFormat_get_Guid(ISpeechAudioFormat* This,BSTR *Guid) {
12673 return This->lpVtbl->get_Guid(This,Guid);
12674}
12675static inline HRESULT ISpeechAudioFormat_put_Guid(ISpeechAudioFormat* This,BSTR Guid) {
12676 return This->lpVtbl->put_Guid(This,Guid);
12677}
12678static inline HRESULT ISpeechAudioFormat_GetWaveFormatEx(ISpeechAudioFormat* This,ISpeechWaveFormatEx **SpeechWaveFormatEx) {
12679 return This->lpVtbl->GetWaveFormatEx(This,SpeechWaveFormatEx);
12680}
12681static inline HRESULT ISpeechAudioFormat_SetWaveFormatEx(ISpeechAudioFormat* This,ISpeechWaveFormatEx *SpeechWaveFormatEx) {
12682 return This->lpVtbl->SetWaveFormatEx(This,SpeechWaveFormatEx);
12683}
12684#endif
12685#endif
12686
12687#endif
12688
12689
12690#endif /* __ISpeechAudioFormat_INTERFACE_DEFINED__ */
12691
12692/*****************************************************************************
12693 * ISpeechBaseStream interface
12694 */
12695#ifndef __ISpeechBaseStream_INTERFACE_DEFINED__
12696#define __ISpeechBaseStream_INTERFACE_DEFINED__
12697
12698DEFINE_GUID(IID_ISpeechBaseStream, 0x6450336f, 0x7d49, 0x4ced, 0x80,0x97, 0x49,0xd6,0xde,0xe3,0x72,0x94);
12699#if defined(__cplusplus) && !defined(CINTERFACE)
12700MIDL_INTERFACE("6450336f-7d49-4ced-8097-49d6dee37294")
12701ISpeechBaseStream : public IDispatch
12702{
12703 virtual HRESULT STDMETHODCALLTYPE get_Format(
12704 ISpeechAudioFormat **AudioFormat) = 0;
12705
12706 virtual HRESULT STDMETHODCALLTYPE putref_Format(
12707 ISpeechAudioFormat *AudioFormat) = 0;
12708
12709 virtual HRESULT STDMETHODCALLTYPE Read(
12710 VARIANT *Buffer,
12711 LONG NumberOfBytes,
12712 LONG *BytesRead) = 0;
12713
12714 virtual HRESULT STDMETHODCALLTYPE Write(
12715 VARIANT Buffer,
12716 LONG *BytesWritten) = 0;
12717
12718 virtual HRESULT STDMETHODCALLTYPE Seek(
12719 VARIANT Position,
12720 SpeechStreamSeekPositionType Origin,
12721 VARIANT *NewPosition) = 0;
12722
12723};
12724#ifdef __CRT_UUID_DECL
12725__CRT_UUID_DECL(ISpeechBaseStream, 0x6450336f, 0x7d49, 0x4ced, 0x80,0x97, 0x49,0xd6,0xde,0xe3,0x72,0x94)
12726#endif
12727#else
12728typedef struct ISpeechBaseStreamVtbl {
12729 BEGIN_INTERFACE
12730
12731 /*** IUnknown methods ***/
12732 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12733 ISpeechBaseStream *This,
12734 REFIID riid,
12735 void **ppvObject);
12736
12737 ULONG (STDMETHODCALLTYPE *AddRef)(
12738 ISpeechBaseStream *This);
12739
12740 ULONG (STDMETHODCALLTYPE *Release)(
12741 ISpeechBaseStream *This);
12742
12743 /*** IDispatch methods ***/
12744 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12745 ISpeechBaseStream *This,
12746 UINT *pctinfo);
12747
12748 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12749 ISpeechBaseStream *This,
12750 UINT iTInfo,
12751 LCID lcid,
12752 ITypeInfo **ppTInfo);
12753
12754 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12755 ISpeechBaseStream *This,
12756 REFIID riid,
12757 LPOLESTR *rgszNames,
12758 UINT cNames,
12759 LCID lcid,
12760 DISPID *rgDispId);
12761
12762 HRESULT (STDMETHODCALLTYPE *Invoke)(
12763 ISpeechBaseStream *This,
12764 DISPID dispIdMember,
12765 REFIID riid,
12766 LCID lcid,
12767 WORD wFlags,
12768 DISPPARAMS *pDispParams,
12769 VARIANT *pVarResult,
12770 EXCEPINFO *pExcepInfo,
12771 UINT *puArgErr);
12772
12773 /*** ISpeechBaseStream methods ***/
12774 HRESULT (STDMETHODCALLTYPE *get_Format)(
12775 ISpeechBaseStream *This,
12776 ISpeechAudioFormat **AudioFormat);
12777
12778 HRESULT (STDMETHODCALLTYPE *putref_Format)(
12779 ISpeechBaseStream *This,
12780 ISpeechAudioFormat *AudioFormat);
12781
12782 HRESULT (STDMETHODCALLTYPE *Read)(
12783 ISpeechBaseStream *This,
12784 VARIANT *Buffer,
12785 LONG NumberOfBytes,
12786 LONG *BytesRead);
12787
12788 HRESULT (STDMETHODCALLTYPE *Write)(
12789 ISpeechBaseStream *This,
12790 VARIANT Buffer,
12791 LONG *BytesWritten);
12792
12793 HRESULT (STDMETHODCALLTYPE *Seek)(
12794 ISpeechBaseStream *This,
12795 VARIANT Position,
12796 SpeechStreamSeekPositionType Origin,
12797 VARIANT *NewPosition);
12798
12799 END_INTERFACE
12800} ISpeechBaseStreamVtbl;
12801
12802interface ISpeechBaseStream {
12803 CONST_VTBL ISpeechBaseStreamVtbl* lpVtbl;
12804};
12805
12806#ifdef COBJMACROS
12807#ifndef WIDL_C_INLINE_WRAPPERS
12808/*** IUnknown methods ***/
12809#define ISpeechBaseStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12810#define ISpeechBaseStream_AddRef(This) (This)->lpVtbl->AddRef(This)
12811#define ISpeechBaseStream_Release(This) (This)->lpVtbl->Release(This)
12812/*** IDispatch methods ***/
12813#define ISpeechBaseStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12814#define ISpeechBaseStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12815#define ISpeechBaseStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12816#define ISpeechBaseStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12817/*** ISpeechBaseStream methods ***/
12818#define ISpeechBaseStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
12819#define ISpeechBaseStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
12820#define ISpeechBaseStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
12821#define ISpeechBaseStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
12822#define ISpeechBaseStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
12823#else
12824/*** IUnknown methods ***/
12825static inline HRESULT ISpeechBaseStream_QueryInterface(ISpeechBaseStream* This,REFIID riid,void **ppvObject) {
12826 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12827}
12828static inline ULONG ISpeechBaseStream_AddRef(ISpeechBaseStream* This) {
12829 return This->lpVtbl->AddRef(This);
12830}
12831static inline ULONG ISpeechBaseStream_Release(ISpeechBaseStream* This) {
12832 return This->lpVtbl->Release(This);
12833}
12834/*** IDispatch methods ***/
12835static inline HRESULT ISpeechBaseStream_GetTypeInfoCount(ISpeechBaseStream* This,UINT *pctinfo) {
12836 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12837}
12838static inline HRESULT ISpeechBaseStream_GetTypeInfo(ISpeechBaseStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12839 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12840}
12841static inline HRESULT ISpeechBaseStream_GetIDsOfNames(ISpeechBaseStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12842 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12843}
12844static inline HRESULT ISpeechBaseStream_Invoke(ISpeechBaseStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12845 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12846}
12847/*** ISpeechBaseStream methods ***/
12848static inline HRESULT ISpeechBaseStream_get_Format(ISpeechBaseStream* This,ISpeechAudioFormat **AudioFormat) {
12849 return This->lpVtbl->get_Format(This,AudioFormat);
12850}
12851static inline HRESULT ISpeechBaseStream_putref_Format(ISpeechBaseStream* This,ISpeechAudioFormat *AudioFormat) {
12852 return This->lpVtbl->putref_Format(This,AudioFormat);
12853}
12854static inline HRESULT ISpeechBaseStream_Read(ISpeechBaseStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
12855 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
12856}
12857static inline HRESULT ISpeechBaseStream_Write(ISpeechBaseStream* This,VARIANT Buffer,LONG *BytesWritten) {
12858 return This->lpVtbl->Write(This,Buffer,BytesWritten);
12859}
12860static inline HRESULT ISpeechBaseStream_Seek(ISpeechBaseStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
12861 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
12862}
12863#endif
12864#endif
12865
12866#endif
12867
12868
12869#endif /* __ISpeechBaseStream_INTERFACE_DEFINED__ */
12870
12871/*****************************************************************************
12872 * ISpeechAudio interface
12873 */
12874#ifndef __ISpeechAudio_INTERFACE_DEFINED__
12875#define __ISpeechAudio_INTERFACE_DEFINED__
12876
12877DEFINE_GUID(IID_ISpeechAudio, 0xcff8e175, 0x019e, 0x11d3, 0xa0,0x8e, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5);
12878#if defined(__cplusplus) && !defined(CINTERFACE)
12879MIDL_INTERFACE("cff8e175-019e-11d3-a08e-00c04f8ef9b5")
12880ISpeechAudio : public ISpeechBaseStream
12881{
12882 virtual HRESULT STDMETHODCALLTYPE get_Status(
12883 ISpeechAudioStatus **Status) = 0;
12884
12885 virtual HRESULT STDMETHODCALLTYPE get_BufferInfo(
12886 ISpeechAudioBufferInfo **BufferInfo) = 0;
12887
12888 virtual HRESULT STDMETHODCALLTYPE get_DefaultFormat(
12889 ISpeechAudioFormat **StreamFormat) = 0;
12890
12891 virtual HRESULT STDMETHODCALLTYPE get_Volume(
12892 LONG *Volume) = 0;
12893
12894 virtual HRESULT STDMETHODCALLTYPE put_Volume(
12895 LONG Volume) = 0;
12896
12897 virtual HRESULT STDMETHODCALLTYPE get_BufferNotifySize(
12898 LONG *BufferNotifySize) = 0;
12899
12900 virtual HRESULT STDMETHODCALLTYPE put_BufferNotifySize(
12901 LONG BufferNotifySize) = 0;
12902
12903 virtual HRESULT STDMETHODCALLTYPE get_EventHandle(
12904 LONG *EventHandle) = 0;
12905
12906 virtual HRESULT STDMETHODCALLTYPE SetState(
12907 SpeechAudioState State) = 0;
12908
12909};
12910#ifdef __CRT_UUID_DECL
12911__CRT_UUID_DECL(ISpeechAudio, 0xcff8e175, 0x019e, 0x11d3, 0xa0,0x8e, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5)
12912#endif
12913#else
12914typedef struct ISpeechAudioVtbl {
12915 BEGIN_INTERFACE
12916
12917 /*** IUnknown methods ***/
12918 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12919 ISpeechAudio *This,
12920 REFIID riid,
12921 void **ppvObject);
12922
12923 ULONG (STDMETHODCALLTYPE *AddRef)(
12924 ISpeechAudio *This);
12925
12926 ULONG (STDMETHODCALLTYPE *Release)(
12927 ISpeechAudio *This);
12928
12929 /*** IDispatch methods ***/
12930 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12931 ISpeechAudio *This,
12932 UINT *pctinfo);
12933
12934 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12935 ISpeechAudio *This,
12936 UINT iTInfo,
12937 LCID lcid,
12938 ITypeInfo **ppTInfo);
12939
12940 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12941 ISpeechAudio *This,
12942 REFIID riid,
12943 LPOLESTR *rgszNames,
12944 UINT cNames,
12945 LCID lcid,
12946 DISPID *rgDispId);
12947
12948 HRESULT (STDMETHODCALLTYPE *Invoke)(
12949 ISpeechAudio *This,
12950 DISPID dispIdMember,
12951 REFIID riid,
12952 LCID lcid,
12953 WORD wFlags,
12954 DISPPARAMS *pDispParams,
12955 VARIANT *pVarResult,
12956 EXCEPINFO *pExcepInfo,
12957 UINT *puArgErr);
12958
12959 /*** ISpeechBaseStream methods ***/
12960 HRESULT (STDMETHODCALLTYPE *get_Format)(
12961 ISpeechAudio *This,
12962 ISpeechAudioFormat **AudioFormat);
12963
12964 HRESULT (STDMETHODCALLTYPE *putref_Format)(
12965 ISpeechAudio *This,
12966 ISpeechAudioFormat *AudioFormat);
12967
12968 HRESULT (STDMETHODCALLTYPE *Read)(
12969 ISpeechAudio *This,
12970 VARIANT *Buffer,
12971 LONG NumberOfBytes,
12972 LONG *BytesRead);
12973
12974 HRESULT (STDMETHODCALLTYPE *Write)(
12975 ISpeechAudio *This,
12976 VARIANT Buffer,
12977 LONG *BytesWritten);
12978
12979 HRESULT (STDMETHODCALLTYPE *Seek)(
12980 ISpeechAudio *This,
12981 VARIANT Position,
12982 SpeechStreamSeekPositionType Origin,
12983 VARIANT *NewPosition);
12984
12985 /*** ISpeechAudio methods ***/
12986 HRESULT (STDMETHODCALLTYPE *get_Status)(
12987 ISpeechAudio *This,
12988 ISpeechAudioStatus **Status);
12989
12990 HRESULT (STDMETHODCALLTYPE *get_BufferInfo)(
12991 ISpeechAudio *This,
12992 ISpeechAudioBufferInfo **BufferInfo);
12993
12994 HRESULT (STDMETHODCALLTYPE *get_DefaultFormat)(
12995 ISpeechAudio *This,
12996 ISpeechAudioFormat **StreamFormat);
12997
12998 HRESULT (STDMETHODCALLTYPE *get_Volume)(
12999 ISpeechAudio *This,
13000 LONG *Volume);
13001
13002 HRESULT (STDMETHODCALLTYPE *put_Volume)(
13003 ISpeechAudio *This,
13004 LONG Volume);
13005
13006 HRESULT (STDMETHODCALLTYPE *get_BufferNotifySize)(
13007 ISpeechAudio *This,
13008 LONG *BufferNotifySize);
13009
13010 HRESULT (STDMETHODCALLTYPE *put_BufferNotifySize)(
13011 ISpeechAudio *This,
13012 LONG BufferNotifySize);
13013
13014 HRESULT (STDMETHODCALLTYPE *get_EventHandle)(
13015 ISpeechAudio *This,
13016 LONG *EventHandle);
13017
13018 HRESULT (STDMETHODCALLTYPE *SetState)(
13019 ISpeechAudio *This,
13020 SpeechAudioState State);
13021
13022 END_INTERFACE
13023} ISpeechAudioVtbl;
13024
13025interface ISpeechAudio {
13026 CONST_VTBL ISpeechAudioVtbl* lpVtbl;
13027};
13028
13029#ifdef COBJMACROS
13030#ifndef WIDL_C_INLINE_WRAPPERS
13031/*** IUnknown methods ***/
13032#define ISpeechAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13033#define ISpeechAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
13034#define ISpeechAudio_Release(This) (This)->lpVtbl->Release(This)
13035/*** IDispatch methods ***/
13036#define ISpeechAudio_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13037#define ISpeechAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13038#define ISpeechAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13039#define ISpeechAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13040/*** ISpeechBaseStream methods ***/
13041#define ISpeechAudio_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
13042#define ISpeechAudio_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
13043#define ISpeechAudio_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
13044#define ISpeechAudio_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
13045#define ISpeechAudio_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
13046/*** ISpeechAudio methods ***/
13047#define ISpeechAudio_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
13048#define ISpeechAudio_get_BufferInfo(This,BufferInfo) (This)->lpVtbl->get_BufferInfo(This,BufferInfo)
13049#define ISpeechAudio_get_DefaultFormat(This,StreamFormat) (This)->lpVtbl->get_DefaultFormat(This,StreamFormat)
13050#define ISpeechAudio_get_Volume(This,Volume) (This)->lpVtbl->get_Volume(This,Volume)
13051#define ISpeechAudio_put_Volume(This,Volume) (This)->lpVtbl->put_Volume(This,Volume)
13052#define ISpeechAudio_get_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->get_BufferNotifySize(This,BufferNotifySize)
13053#define ISpeechAudio_put_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->put_BufferNotifySize(This,BufferNotifySize)
13054#define ISpeechAudio_get_EventHandle(This,EventHandle) (This)->lpVtbl->get_EventHandle(This,EventHandle)
13055#define ISpeechAudio_SetState(This,State) (This)->lpVtbl->SetState(This,State)
13056#else
13057/*** IUnknown methods ***/
13058static inline HRESULT ISpeechAudio_QueryInterface(ISpeechAudio* This,REFIID riid,void **ppvObject) {
13059 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13060}
13061static inline ULONG ISpeechAudio_AddRef(ISpeechAudio* This) {
13062 return This->lpVtbl->AddRef(This);
13063}
13064static inline ULONG ISpeechAudio_Release(ISpeechAudio* This) {
13065 return This->lpVtbl->Release(This);
13066}
13067/*** IDispatch methods ***/
13068static inline HRESULT ISpeechAudio_GetTypeInfoCount(ISpeechAudio* This,UINT *pctinfo) {
13069 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13070}
13071static inline HRESULT ISpeechAudio_GetTypeInfo(ISpeechAudio* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13072 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13073}
13074static inline HRESULT ISpeechAudio_GetIDsOfNames(ISpeechAudio* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13075 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13076}
13077static inline HRESULT ISpeechAudio_Invoke(ISpeechAudio* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13078 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13079}
13080/*** ISpeechBaseStream methods ***/
13081static inline HRESULT ISpeechAudio_get_Format(ISpeechAudio* This,ISpeechAudioFormat **AudioFormat) {
13082 return This->lpVtbl->get_Format(This,AudioFormat);
13083}
13084static inline HRESULT ISpeechAudio_putref_Format(ISpeechAudio* This,ISpeechAudioFormat *AudioFormat) {
13085 return This->lpVtbl->putref_Format(This,AudioFormat);
13086}
13087static inline HRESULT ISpeechAudio_Read(ISpeechAudio* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
13088 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
13089}
13090static inline HRESULT ISpeechAudio_Write(ISpeechAudio* This,VARIANT Buffer,LONG *BytesWritten) {
13091 return This->lpVtbl->Write(This,Buffer,BytesWritten);
13092}
13093static inline HRESULT ISpeechAudio_Seek(ISpeechAudio* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
13094 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
13095}
13096/*** ISpeechAudio methods ***/
13097static inline HRESULT ISpeechAudio_get_Status(ISpeechAudio* This,ISpeechAudioStatus **Status) {
13098 return This->lpVtbl->get_Status(This,Status);
13099}
13100static inline HRESULT ISpeechAudio_get_BufferInfo(ISpeechAudio* This,ISpeechAudioBufferInfo **BufferInfo) {
13101 return This->lpVtbl->get_BufferInfo(This,BufferInfo);
13102}
13103static inline HRESULT ISpeechAudio_get_DefaultFormat(ISpeechAudio* This,ISpeechAudioFormat **StreamFormat) {
13104 return This->lpVtbl->get_DefaultFormat(This,StreamFormat);
13105}
13106static inline HRESULT ISpeechAudio_get_Volume(ISpeechAudio* This,LONG *Volume) {
13107 return This->lpVtbl->get_Volume(This,Volume);
13108}
13109static inline HRESULT ISpeechAudio_put_Volume(ISpeechAudio* This,LONG Volume) {
13110 return This->lpVtbl->put_Volume(This,Volume);
13111}
13112static inline HRESULT ISpeechAudio_get_BufferNotifySize(ISpeechAudio* This,LONG *BufferNotifySize) {
13113 return This->lpVtbl->get_BufferNotifySize(This,BufferNotifySize);
13114}
13115static inline HRESULT ISpeechAudio_put_BufferNotifySize(ISpeechAudio* This,LONG BufferNotifySize) {
13116 return This->lpVtbl->put_BufferNotifySize(This,BufferNotifySize);
13117}
13118static inline HRESULT ISpeechAudio_get_EventHandle(ISpeechAudio* This,LONG *EventHandle) {
13119 return This->lpVtbl->get_EventHandle(This,EventHandle);
13120}
13121static inline HRESULT ISpeechAudio_SetState(ISpeechAudio* This,SpeechAudioState State) {
13122 return This->lpVtbl->SetState(This,State);
13123}
13124#endif
13125#endif
13126
13127#endif
13128
13129
13130#endif /* __ISpeechAudio_INTERFACE_DEFINED__ */
13131
13132/*****************************************************************************
13133 * ISpeechMMSysAudio interface
13134 */
13135#ifndef __ISpeechMMSysAudio_INTERFACE_DEFINED__
13136#define __ISpeechMMSysAudio_INTERFACE_DEFINED__
13137
13138DEFINE_GUID(IID_ISpeechMMSysAudio, 0x3c76af6d, 0x1fd7, 0x4831, 0x81,0xd1, 0x3b,0x71,0xd5,0xa1,0x3c,0x44);
13139#if defined(__cplusplus) && !defined(CINTERFACE)
13140MIDL_INTERFACE("3c76af6d-1fd7-4831-81d1-3b71d5a13c44")
13141ISpeechMMSysAudio : public ISpeechAudio
13142{
13143 virtual HRESULT STDMETHODCALLTYPE get_DeviceId(
13144 LONG *DeviceId) = 0;
13145
13146 virtual HRESULT STDMETHODCALLTYPE put_DeviceId(
13147 LONG DeviceId) = 0;
13148
13149 virtual HRESULT STDMETHODCALLTYPE get_LineId(
13150 LONG *LineId) = 0;
13151
13152 virtual HRESULT STDMETHODCALLTYPE put_LineId(
13153 LONG LineId) = 0;
13154
13155 virtual HRESULT STDMETHODCALLTYPE get_MMHandle(
13156 LONG *Handle) = 0;
13157
13158};
13159#ifdef __CRT_UUID_DECL
13160__CRT_UUID_DECL(ISpeechMMSysAudio, 0x3c76af6d, 0x1fd7, 0x4831, 0x81,0xd1, 0x3b,0x71,0xd5,0xa1,0x3c,0x44)
13161#endif
13162#else
13163typedef struct ISpeechMMSysAudioVtbl {
13164 BEGIN_INTERFACE
13165
13166 /*** IUnknown methods ***/
13167 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13168 ISpeechMMSysAudio *This,
13169 REFIID riid,
13170 void **ppvObject);
13171
13172 ULONG (STDMETHODCALLTYPE *AddRef)(
13173 ISpeechMMSysAudio *This);
13174
13175 ULONG (STDMETHODCALLTYPE *Release)(
13176 ISpeechMMSysAudio *This);
13177
13178 /*** IDispatch methods ***/
13179 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13180 ISpeechMMSysAudio *This,
13181 UINT *pctinfo);
13182
13183 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13184 ISpeechMMSysAudio *This,
13185 UINT iTInfo,
13186 LCID lcid,
13187 ITypeInfo **ppTInfo);
13188
13189 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13190 ISpeechMMSysAudio *This,
13191 REFIID riid,
13192 LPOLESTR *rgszNames,
13193 UINT cNames,
13194 LCID lcid,
13195 DISPID *rgDispId);
13196
13197 HRESULT (STDMETHODCALLTYPE *Invoke)(
13198 ISpeechMMSysAudio *This,
13199 DISPID dispIdMember,
13200 REFIID riid,
13201 LCID lcid,
13202 WORD wFlags,
13203 DISPPARAMS *pDispParams,
13204 VARIANT *pVarResult,
13205 EXCEPINFO *pExcepInfo,
13206 UINT *puArgErr);
13207
13208 /*** ISpeechBaseStream methods ***/
13209 HRESULT (STDMETHODCALLTYPE *get_Format)(
13210 ISpeechMMSysAudio *This,
13211 ISpeechAudioFormat **AudioFormat);
13212
13213 HRESULT (STDMETHODCALLTYPE *putref_Format)(
13214 ISpeechMMSysAudio *This,
13215 ISpeechAudioFormat *AudioFormat);
13216
13217 HRESULT (STDMETHODCALLTYPE *Read)(
13218 ISpeechMMSysAudio *This,
13219 VARIANT *Buffer,
13220 LONG NumberOfBytes,
13221 LONG *BytesRead);
13222
13223 HRESULT (STDMETHODCALLTYPE *Write)(
13224 ISpeechMMSysAudio *This,
13225 VARIANT Buffer,
13226 LONG *BytesWritten);
13227
13228 HRESULT (STDMETHODCALLTYPE *Seek)(
13229 ISpeechMMSysAudio *This,
13230 VARIANT Position,
13231 SpeechStreamSeekPositionType Origin,
13232 VARIANT *NewPosition);
13233
13234 /*** ISpeechAudio methods ***/
13235 HRESULT (STDMETHODCALLTYPE *get_Status)(
13236 ISpeechMMSysAudio *This,
13237 ISpeechAudioStatus **Status);
13238
13239 HRESULT (STDMETHODCALLTYPE *get_BufferInfo)(
13240 ISpeechMMSysAudio *This,
13241 ISpeechAudioBufferInfo **BufferInfo);
13242
13243 HRESULT (STDMETHODCALLTYPE *get_DefaultFormat)(
13244 ISpeechMMSysAudio *This,
13245 ISpeechAudioFormat **StreamFormat);
13246
13247 HRESULT (STDMETHODCALLTYPE *get_Volume)(
13248 ISpeechMMSysAudio *This,
13249 LONG *Volume);
13250
13251 HRESULT (STDMETHODCALLTYPE *put_Volume)(
13252 ISpeechMMSysAudio *This,
13253 LONG Volume);
13254
13255 HRESULT (STDMETHODCALLTYPE *get_BufferNotifySize)(
13256 ISpeechMMSysAudio *This,
13257 LONG *BufferNotifySize);
13258
13259 HRESULT (STDMETHODCALLTYPE *put_BufferNotifySize)(
13260 ISpeechMMSysAudio *This,
13261 LONG BufferNotifySize);
13262
13263 HRESULT (STDMETHODCALLTYPE *get_EventHandle)(
13264 ISpeechMMSysAudio *This,
13265 LONG *EventHandle);
13266
13267 HRESULT (STDMETHODCALLTYPE *SetState)(
13268 ISpeechMMSysAudio *This,
13269 SpeechAudioState State);
13270
13271 /*** ISpeechMMSysAudio methods ***/
13272 HRESULT (STDMETHODCALLTYPE *get_DeviceId)(
13273 ISpeechMMSysAudio *This,
13274 LONG *DeviceId);
13275
13276 HRESULT (STDMETHODCALLTYPE *put_DeviceId)(
13277 ISpeechMMSysAudio *This,
13278 LONG DeviceId);
13279
13280 HRESULT (STDMETHODCALLTYPE *get_LineId)(
13281 ISpeechMMSysAudio *This,
13282 LONG *LineId);
13283
13284 HRESULT (STDMETHODCALLTYPE *put_LineId)(
13285 ISpeechMMSysAudio *This,
13286 LONG LineId);
13287
13288 HRESULT (STDMETHODCALLTYPE *get_MMHandle)(
13289 ISpeechMMSysAudio *This,
13290 LONG *Handle);
13291
13292 END_INTERFACE
13293} ISpeechMMSysAudioVtbl;
13294
13295interface ISpeechMMSysAudio {
13296 CONST_VTBL ISpeechMMSysAudioVtbl* lpVtbl;
13297};
13298
13299#ifdef COBJMACROS
13300#ifndef WIDL_C_INLINE_WRAPPERS
13301/*** IUnknown methods ***/
13302#define ISpeechMMSysAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13303#define ISpeechMMSysAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
13304#define ISpeechMMSysAudio_Release(This) (This)->lpVtbl->Release(This)
13305/*** IDispatch methods ***/
13306#define ISpeechMMSysAudio_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13307#define ISpeechMMSysAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13308#define ISpeechMMSysAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13309#define ISpeechMMSysAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13310/*** ISpeechBaseStream methods ***/
13311#define ISpeechMMSysAudio_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
13312#define ISpeechMMSysAudio_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
13313#define ISpeechMMSysAudio_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
13314#define ISpeechMMSysAudio_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
13315#define ISpeechMMSysAudio_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
13316/*** ISpeechAudio methods ***/
13317#define ISpeechMMSysAudio_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
13318#define ISpeechMMSysAudio_get_BufferInfo(This,BufferInfo) (This)->lpVtbl->get_BufferInfo(This,BufferInfo)
13319#define ISpeechMMSysAudio_get_DefaultFormat(This,StreamFormat) (This)->lpVtbl->get_DefaultFormat(This,StreamFormat)
13320#define ISpeechMMSysAudio_get_Volume(This,Volume) (This)->lpVtbl->get_Volume(This,Volume)
13321#define ISpeechMMSysAudio_put_Volume(This,Volume) (This)->lpVtbl->put_Volume(This,Volume)
13322#define ISpeechMMSysAudio_get_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->get_BufferNotifySize(This,BufferNotifySize)
13323#define ISpeechMMSysAudio_put_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->put_BufferNotifySize(This,BufferNotifySize)
13324#define ISpeechMMSysAudio_get_EventHandle(This,EventHandle) (This)->lpVtbl->get_EventHandle(This,EventHandle)
13325#define ISpeechMMSysAudio_SetState(This,State) (This)->lpVtbl->SetState(This,State)
13326/*** ISpeechMMSysAudio methods ***/
13327#define ISpeechMMSysAudio_get_DeviceId(This,DeviceId) (This)->lpVtbl->get_DeviceId(This,DeviceId)
13328#define ISpeechMMSysAudio_put_DeviceId(This,DeviceId) (This)->lpVtbl->put_DeviceId(This,DeviceId)
13329#define ISpeechMMSysAudio_get_LineId(This,LineId) (This)->lpVtbl->get_LineId(This,LineId)
13330#define ISpeechMMSysAudio_put_LineId(This,LineId) (This)->lpVtbl->put_LineId(This,LineId)
13331#define ISpeechMMSysAudio_get_MMHandle(This,Handle) (This)->lpVtbl->get_MMHandle(This,Handle)
13332#else
13333/*** IUnknown methods ***/
13334static inline HRESULT ISpeechMMSysAudio_QueryInterface(ISpeechMMSysAudio* This,REFIID riid,void **ppvObject) {
13335 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13336}
13337static inline ULONG ISpeechMMSysAudio_AddRef(ISpeechMMSysAudio* This) {
13338 return This->lpVtbl->AddRef(This);
13339}
13340static inline ULONG ISpeechMMSysAudio_Release(ISpeechMMSysAudio* This) {
13341 return This->lpVtbl->Release(This);
13342}
13343/*** IDispatch methods ***/
13344static inline HRESULT ISpeechMMSysAudio_GetTypeInfoCount(ISpeechMMSysAudio* This,UINT *pctinfo) {
13345 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13346}
13347static inline HRESULT ISpeechMMSysAudio_GetTypeInfo(ISpeechMMSysAudio* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13348 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13349}
13350static inline HRESULT ISpeechMMSysAudio_GetIDsOfNames(ISpeechMMSysAudio* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13351 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13352}
13353static inline HRESULT ISpeechMMSysAudio_Invoke(ISpeechMMSysAudio* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13354 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13355}
13356/*** ISpeechBaseStream methods ***/
13357static inline HRESULT ISpeechMMSysAudio_get_Format(ISpeechMMSysAudio* This,ISpeechAudioFormat **AudioFormat) {
13358 return This->lpVtbl->get_Format(This,AudioFormat);
13359}
13360static inline HRESULT ISpeechMMSysAudio_putref_Format(ISpeechMMSysAudio* This,ISpeechAudioFormat *AudioFormat) {
13361 return This->lpVtbl->putref_Format(This,AudioFormat);
13362}
13363static inline HRESULT ISpeechMMSysAudio_Read(ISpeechMMSysAudio* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
13364 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
13365}
13366static inline HRESULT ISpeechMMSysAudio_Write(ISpeechMMSysAudio* This,VARIANT Buffer,LONG *BytesWritten) {
13367 return This->lpVtbl->Write(This,Buffer,BytesWritten);
13368}
13369static inline HRESULT ISpeechMMSysAudio_Seek(ISpeechMMSysAudio* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
13370 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
13371}
13372/*** ISpeechAudio methods ***/
13373static inline HRESULT ISpeechMMSysAudio_get_Status(ISpeechMMSysAudio* This,ISpeechAudioStatus **Status) {
13374 return This->lpVtbl->get_Status(This,Status);
13375}
13376static inline HRESULT ISpeechMMSysAudio_get_BufferInfo(ISpeechMMSysAudio* This,ISpeechAudioBufferInfo **BufferInfo) {
13377 return This->lpVtbl->get_BufferInfo(This,BufferInfo);
13378}
13379static inline HRESULT ISpeechMMSysAudio_get_DefaultFormat(ISpeechMMSysAudio* This,ISpeechAudioFormat **StreamFormat) {
13380 return This->lpVtbl->get_DefaultFormat(This,StreamFormat);
13381}
13382static inline HRESULT ISpeechMMSysAudio_get_Volume(ISpeechMMSysAudio* This,LONG *Volume) {
13383 return This->lpVtbl->get_Volume(This,Volume);
13384}
13385static inline HRESULT ISpeechMMSysAudio_put_Volume(ISpeechMMSysAudio* This,LONG Volume) {
13386 return This->lpVtbl->put_Volume(This,Volume);
13387}
13388static inline HRESULT ISpeechMMSysAudio_get_BufferNotifySize(ISpeechMMSysAudio* This,LONG *BufferNotifySize) {
13389 return This->lpVtbl->get_BufferNotifySize(This,BufferNotifySize);
13390}
13391static inline HRESULT ISpeechMMSysAudio_put_BufferNotifySize(ISpeechMMSysAudio* This,LONG BufferNotifySize) {
13392 return This->lpVtbl->put_BufferNotifySize(This,BufferNotifySize);
13393}
13394static inline HRESULT ISpeechMMSysAudio_get_EventHandle(ISpeechMMSysAudio* This,LONG *EventHandle) {
13395 return This->lpVtbl->get_EventHandle(This,EventHandle);
13396}
13397static inline HRESULT ISpeechMMSysAudio_SetState(ISpeechMMSysAudio* This,SpeechAudioState State) {
13398 return This->lpVtbl->SetState(This,State);
13399}
13400/*** ISpeechMMSysAudio methods ***/
13401static inline HRESULT ISpeechMMSysAudio_get_DeviceId(ISpeechMMSysAudio* This,LONG *DeviceId) {
13402 return This->lpVtbl->get_DeviceId(This,DeviceId);
13403}
13404static inline HRESULT ISpeechMMSysAudio_put_DeviceId(ISpeechMMSysAudio* This,LONG DeviceId) {
13405 return This->lpVtbl->put_DeviceId(This,DeviceId);
13406}
13407static inline HRESULT ISpeechMMSysAudio_get_LineId(ISpeechMMSysAudio* This,LONG *LineId) {
13408 return This->lpVtbl->get_LineId(This,LineId);
13409}
13410static inline HRESULT ISpeechMMSysAudio_put_LineId(ISpeechMMSysAudio* This,LONG LineId) {
13411 return This->lpVtbl->put_LineId(This,LineId);
13412}
13413static inline HRESULT ISpeechMMSysAudio_get_MMHandle(ISpeechMMSysAudio* This,LONG *Handle) {
13414 return This->lpVtbl->get_MMHandle(This,Handle);
13415}
13416#endif
13417#endif
13418
13419#endif
13420
13421
13422#endif /* __ISpeechMMSysAudio_INTERFACE_DEFINED__ */
13423
13424/*****************************************************************************
13425 * ISpeechFileStream interface
13426 */
13427#ifndef __ISpeechFileStream_INTERFACE_DEFINED__
13428#define __ISpeechFileStream_INTERFACE_DEFINED__
13429
13430DEFINE_GUID(IID_ISpeechFileStream, 0xaf67f125, 0xab39, 0x4e93, 0xb4,0xa2, 0xcc,0x2e,0x66,0xe1,0x82,0xa7);
13431#if defined(__cplusplus) && !defined(CINTERFACE)
13432MIDL_INTERFACE("af67f125-ab39-4e93-b4a2-cc2e66e182a7")
13433ISpeechFileStream : public ISpeechBaseStream
13434{
13435 virtual HRESULT STDMETHODCALLTYPE Open(
13436 BSTR FileName,
13437 SpeechStreamFileMode FileMode = SSFMOpenForRead,
13438 VARIANT_BOOL DoEvents = 0) = 0;
13439
13440 virtual HRESULT STDMETHODCALLTYPE Close(
13441 ) = 0;
13442
13443};
13444#ifdef __CRT_UUID_DECL
13445__CRT_UUID_DECL(ISpeechFileStream, 0xaf67f125, 0xab39, 0x4e93, 0xb4,0xa2, 0xcc,0x2e,0x66,0xe1,0x82,0xa7)
13446#endif
13447#else
13448typedef struct ISpeechFileStreamVtbl {
13449 BEGIN_INTERFACE
13450
13451 /*** IUnknown methods ***/
13452 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13453 ISpeechFileStream *This,
13454 REFIID riid,
13455 void **ppvObject);
13456
13457 ULONG (STDMETHODCALLTYPE *AddRef)(
13458 ISpeechFileStream *This);
13459
13460 ULONG (STDMETHODCALLTYPE *Release)(
13461 ISpeechFileStream *This);
13462
13463 /*** IDispatch methods ***/
13464 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13465 ISpeechFileStream *This,
13466 UINT *pctinfo);
13467
13468 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13469 ISpeechFileStream *This,
13470 UINT iTInfo,
13471 LCID lcid,
13472 ITypeInfo **ppTInfo);
13473
13474 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13475 ISpeechFileStream *This,
13476 REFIID riid,
13477 LPOLESTR *rgszNames,
13478 UINT cNames,
13479 LCID lcid,
13480 DISPID *rgDispId);
13481
13482 HRESULT (STDMETHODCALLTYPE *Invoke)(
13483 ISpeechFileStream *This,
13484 DISPID dispIdMember,
13485 REFIID riid,
13486 LCID lcid,
13487 WORD wFlags,
13488 DISPPARAMS *pDispParams,
13489 VARIANT *pVarResult,
13490 EXCEPINFO *pExcepInfo,
13491 UINT *puArgErr);
13492
13493 /*** ISpeechBaseStream methods ***/
13494 HRESULT (STDMETHODCALLTYPE *get_Format)(
13495 ISpeechFileStream *This,
13496 ISpeechAudioFormat **AudioFormat);
13497
13498 HRESULT (STDMETHODCALLTYPE *putref_Format)(
13499 ISpeechFileStream *This,
13500 ISpeechAudioFormat *AudioFormat);
13501
13502 HRESULT (STDMETHODCALLTYPE *Read)(
13503 ISpeechFileStream *This,
13504 VARIANT *Buffer,
13505 LONG NumberOfBytes,
13506 LONG *BytesRead);
13507
13508 HRESULT (STDMETHODCALLTYPE *Write)(
13509 ISpeechFileStream *This,
13510 VARIANT Buffer,
13511 LONG *BytesWritten);
13512
13513 HRESULT (STDMETHODCALLTYPE *Seek)(
13514 ISpeechFileStream *This,
13515 VARIANT Position,
13516 SpeechStreamSeekPositionType Origin,
13517 VARIANT *NewPosition);
13518
13519 /*** ISpeechFileStream methods ***/
13520 HRESULT (STDMETHODCALLTYPE *Open)(
13521 ISpeechFileStream *This,
13522 BSTR FileName,
13523 SpeechStreamFileMode FileMode,
13524 VARIANT_BOOL DoEvents);
13525
13526 HRESULT (STDMETHODCALLTYPE *Close)(
13527 ISpeechFileStream *This);
13528
13529 END_INTERFACE
13530} ISpeechFileStreamVtbl;
13531
13532interface ISpeechFileStream {
13533 CONST_VTBL ISpeechFileStreamVtbl* lpVtbl;
13534};
13535
13536#ifdef COBJMACROS
13537#ifndef WIDL_C_INLINE_WRAPPERS
13538/*** IUnknown methods ***/
13539#define ISpeechFileStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13540#define ISpeechFileStream_AddRef(This) (This)->lpVtbl->AddRef(This)
13541#define ISpeechFileStream_Release(This) (This)->lpVtbl->Release(This)
13542/*** IDispatch methods ***/
13543#define ISpeechFileStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13544#define ISpeechFileStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13545#define ISpeechFileStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13546#define ISpeechFileStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13547/*** ISpeechBaseStream methods ***/
13548#define ISpeechFileStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
13549#define ISpeechFileStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
13550#define ISpeechFileStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
13551#define ISpeechFileStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
13552#define ISpeechFileStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
13553/*** ISpeechFileStream methods ***/
13554#define ISpeechFileStream_Open(This,FileName,FileMode,DoEvents) (This)->lpVtbl->Open(This,FileName,FileMode,DoEvents)
13555#define ISpeechFileStream_Close(This) (This)->lpVtbl->Close(This)
13556#else
13557/*** IUnknown methods ***/
13558static inline HRESULT ISpeechFileStream_QueryInterface(ISpeechFileStream* This,REFIID riid,void **ppvObject) {
13559 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13560}
13561static inline ULONG ISpeechFileStream_AddRef(ISpeechFileStream* This) {
13562 return This->lpVtbl->AddRef(This);
13563}
13564static inline ULONG ISpeechFileStream_Release(ISpeechFileStream* This) {
13565 return This->lpVtbl->Release(This);
13566}
13567/*** IDispatch methods ***/
13568static inline HRESULT ISpeechFileStream_GetTypeInfoCount(ISpeechFileStream* This,UINT *pctinfo) {
13569 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13570}
13571static inline HRESULT ISpeechFileStream_GetTypeInfo(ISpeechFileStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13572 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13573}
13574static inline HRESULT ISpeechFileStream_GetIDsOfNames(ISpeechFileStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13575 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13576}
13577static inline HRESULT ISpeechFileStream_Invoke(ISpeechFileStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13578 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13579}
13580/*** ISpeechBaseStream methods ***/
13581static inline HRESULT ISpeechFileStream_get_Format(ISpeechFileStream* This,ISpeechAudioFormat **AudioFormat) {
13582 return This->lpVtbl->get_Format(This,AudioFormat);
13583}
13584static inline HRESULT ISpeechFileStream_putref_Format(ISpeechFileStream* This,ISpeechAudioFormat *AudioFormat) {
13585 return This->lpVtbl->putref_Format(This,AudioFormat);
13586}
13587static inline HRESULT ISpeechFileStream_Read(ISpeechFileStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
13588 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
13589}
13590static inline HRESULT ISpeechFileStream_Write(ISpeechFileStream* This,VARIANT Buffer,LONG *BytesWritten) {
13591 return This->lpVtbl->Write(This,Buffer,BytesWritten);
13592}
13593static inline HRESULT ISpeechFileStream_Seek(ISpeechFileStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
13594 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
13595}
13596/*** ISpeechFileStream methods ***/
13597static inline HRESULT ISpeechFileStream_Open(ISpeechFileStream* This,BSTR FileName,SpeechStreamFileMode FileMode,VARIANT_BOOL DoEvents) {
13598 return This->lpVtbl->Open(This,FileName,FileMode,DoEvents);
13599}
13600static inline HRESULT ISpeechFileStream_Close(ISpeechFileStream* This) {
13601 return This->lpVtbl->Close(This);
13602}
13603#endif
13604#endif
13605
13606#endif
13607
13608
13609#endif /* __ISpeechFileStream_INTERFACE_DEFINED__ */
13610
13611/*****************************************************************************
13612 * ISpeechCustomStream interface
13613 */
13614#ifndef __ISpeechCustomStream_INTERFACE_DEFINED__
13615#define __ISpeechCustomStream_INTERFACE_DEFINED__
13616
13617DEFINE_GUID(IID_ISpeechCustomStream, 0x1a9e9f4f, 0x104f, 0x4db8, 0xa1,0x15, 0xef,0xd7,0xfd,0x0c,0x97,0xae);
13618#if defined(__cplusplus) && !defined(CINTERFACE)
13619MIDL_INTERFACE("1a9e9f4f-104f-4db8-a115-efd7fd0c97ae")
13620ISpeechCustomStream : public ISpeechBaseStream
13621{
13622 virtual HRESULT STDMETHODCALLTYPE get_BaseStream(
13623 IUnknown **ppUnkStream) = 0;
13624
13625 virtual HRESULT STDMETHODCALLTYPE putref_BaseStream(
13626 IUnknown *pUnkStream) = 0;
13627
13628};
13629#ifdef __CRT_UUID_DECL
13630__CRT_UUID_DECL(ISpeechCustomStream, 0x1a9e9f4f, 0x104f, 0x4db8, 0xa1,0x15, 0xef,0xd7,0xfd,0x0c,0x97,0xae)
13631#endif
13632#else
13633typedef struct ISpeechCustomStreamVtbl {
13634 BEGIN_INTERFACE
13635
13636 /*** IUnknown methods ***/
13637 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13638 ISpeechCustomStream *This,
13639 REFIID riid,
13640 void **ppvObject);
13641
13642 ULONG (STDMETHODCALLTYPE *AddRef)(
13643 ISpeechCustomStream *This);
13644
13645 ULONG (STDMETHODCALLTYPE *Release)(
13646 ISpeechCustomStream *This);
13647
13648 /*** IDispatch methods ***/
13649 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13650 ISpeechCustomStream *This,
13651 UINT *pctinfo);
13652
13653 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13654 ISpeechCustomStream *This,
13655 UINT iTInfo,
13656 LCID lcid,
13657 ITypeInfo **ppTInfo);
13658
13659 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13660 ISpeechCustomStream *This,
13661 REFIID riid,
13662 LPOLESTR *rgszNames,
13663 UINT cNames,
13664 LCID lcid,
13665 DISPID *rgDispId);
13666
13667 HRESULT (STDMETHODCALLTYPE *Invoke)(
13668 ISpeechCustomStream *This,
13669 DISPID dispIdMember,
13670 REFIID riid,
13671 LCID lcid,
13672 WORD wFlags,
13673 DISPPARAMS *pDispParams,
13674 VARIANT *pVarResult,
13675 EXCEPINFO *pExcepInfo,
13676 UINT *puArgErr);
13677
13678 /*** ISpeechBaseStream methods ***/
13679 HRESULT (STDMETHODCALLTYPE *get_Format)(
13680 ISpeechCustomStream *This,
13681 ISpeechAudioFormat **AudioFormat);
13682
13683 HRESULT (STDMETHODCALLTYPE *putref_Format)(
13684 ISpeechCustomStream *This,
13685 ISpeechAudioFormat *AudioFormat);
13686
13687 HRESULT (STDMETHODCALLTYPE *Read)(
13688 ISpeechCustomStream *This,
13689 VARIANT *Buffer,
13690 LONG NumberOfBytes,
13691 LONG *BytesRead);
13692
13693 HRESULT (STDMETHODCALLTYPE *Write)(
13694 ISpeechCustomStream *This,
13695 VARIANT Buffer,
13696 LONG *BytesWritten);
13697
13698 HRESULT (STDMETHODCALLTYPE *Seek)(
13699 ISpeechCustomStream *This,
13700 VARIANT Position,
13701 SpeechStreamSeekPositionType Origin,
13702 VARIANT *NewPosition);
13703
13704 /*** ISpeechCustomStream methods ***/
13705 HRESULT (STDMETHODCALLTYPE *get_BaseStream)(
13706 ISpeechCustomStream *This,
13707 IUnknown **ppUnkStream);
13708
13709 HRESULT (STDMETHODCALLTYPE *putref_BaseStream)(
13710 ISpeechCustomStream *This,
13711 IUnknown *pUnkStream);
13712
13713 END_INTERFACE
13714} ISpeechCustomStreamVtbl;
13715
13716interface ISpeechCustomStream {
13717 CONST_VTBL ISpeechCustomStreamVtbl* lpVtbl;
13718};
13719
13720#ifdef COBJMACROS
13721#ifndef WIDL_C_INLINE_WRAPPERS
13722/*** IUnknown methods ***/
13723#define ISpeechCustomStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13724#define ISpeechCustomStream_AddRef(This) (This)->lpVtbl->AddRef(This)
13725#define ISpeechCustomStream_Release(This) (This)->lpVtbl->Release(This)
13726/*** IDispatch methods ***/
13727#define ISpeechCustomStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13728#define ISpeechCustomStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13729#define ISpeechCustomStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13730#define ISpeechCustomStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13731/*** ISpeechBaseStream methods ***/
13732#define ISpeechCustomStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
13733#define ISpeechCustomStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
13734#define ISpeechCustomStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
13735#define ISpeechCustomStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
13736#define ISpeechCustomStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
13737/*** ISpeechCustomStream methods ***/
13738#define ISpeechCustomStream_get_BaseStream(This,ppUnkStream) (This)->lpVtbl->get_BaseStream(This,ppUnkStream)
13739#define ISpeechCustomStream_putref_BaseStream(This,pUnkStream) (This)->lpVtbl->putref_BaseStream(This,pUnkStream)
13740#else
13741/*** IUnknown methods ***/
13742static inline HRESULT ISpeechCustomStream_QueryInterface(ISpeechCustomStream* This,REFIID riid,void **ppvObject) {
13743 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13744}
13745static inline ULONG ISpeechCustomStream_AddRef(ISpeechCustomStream* This) {
13746 return This->lpVtbl->AddRef(This);
13747}
13748static inline ULONG ISpeechCustomStream_Release(ISpeechCustomStream* This) {
13749 return This->lpVtbl->Release(This);
13750}
13751/*** IDispatch methods ***/
13752static inline HRESULT ISpeechCustomStream_GetTypeInfoCount(ISpeechCustomStream* This,UINT *pctinfo) {
13753 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13754}
13755static inline HRESULT ISpeechCustomStream_GetTypeInfo(ISpeechCustomStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13756 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13757}
13758static inline HRESULT ISpeechCustomStream_GetIDsOfNames(ISpeechCustomStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13759 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13760}
13761static inline HRESULT ISpeechCustomStream_Invoke(ISpeechCustomStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13762 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13763}
13764/*** ISpeechBaseStream methods ***/
13765static inline HRESULT ISpeechCustomStream_get_Format(ISpeechCustomStream* This,ISpeechAudioFormat **AudioFormat) {
13766 return This->lpVtbl->get_Format(This,AudioFormat);
13767}
13768static inline HRESULT ISpeechCustomStream_putref_Format(ISpeechCustomStream* This,ISpeechAudioFormat *AudioFormat) {
13769 return This->lpVtbl->putref_Format(This,AudioFormat);
13770}
13771static inline HRESULT ISpeechCustomStream_Read(ISpeechCustomStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
13772 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
13773}
13774static inline HRESULT ISpeechCustomStream_Write(ISpeechCustomStream* This,VARIANT Buffer,LONG *BytesWritten) {
13775 return This->lpVtbl->Write(This,Buffer,BytesWritten);
13776}
13777static inline HRESULT ISpeechCustomStream_Seek(ISpeechCustomStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
13778 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
13779}
13780/*** ISpeechCustomStream methods ***/
13781static inline HRESULT ISpeechCustomStream_get_BaseStream(ISpeechCustomStream* This,IUnknown **ppUnkStream) {
13782 return This->lpVtbl->get_BaseStream(This,ppUnkStream);
13783}
13784static inline HRESULT ISpeechCustomStream_putref_BaseStream(ISpeechCustomStream* This,IUnknown *pUnkStream) {
13785 return This->lpVtbl->putref_BaseStream(This,pUnkStream);
13786}
13787#endif
13788#endif
13789
13790#endif
13791
13792
13793#endif /* __ISpeechCustomStream_INTERFACE_DEFINED__ */
13794
13795/*****************************************************************************
13796 * ISpeechMemoryStream interface
13797 */
13798#ifndef __ISpeechMemoryStream_INTERFACE_DEFINED__
13799#define __ISpeechMemoryStream_INTERFACE_DEFINED__
13800
13801DEFINE_GUID(IID_ISpeechMemoryStream, 0xeeb14b68, 0x808b, 0x4abe, 0xa5,0xea, 0xb5,0x1d,0xa7,0x58,0x80,0x08);
13802#if defined(__cplusplus) && !defined(CINTERFACE)
13803MIDL_INTERFACE("eeb14b68-808b-4abe-a5ea-b51da7588008")
13804ISpeechMemoryStream : public ISpeechBaseStream
13805{
13806 virtual HRESULT STDMETHODCALLTYPE SetData(
13807 VARIANT Data) = 0;
13808
13809 virtual HRESULT STDMETHODCALLTYPE GetData(
13810 VARIANT *pData) = 0;
13811
13812};
13813#ifdef __CRT_UUID_DECL
13814__CRT_UUID_DECL(ISpeechMemoryStream, 0xeeb14b68, 0x808b, 0x4abe, 0xa5,0xea, 0xb5,0x1d,0xa7,0x58,0x80,0x08)
13815#endif
13816#else
13817typedef struct ISpeechMemoryStreamVtbl {
13818 BEGIN_INTERFACE
13819
13820 /*** IUnknown methods ***/
13821 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13822 ISpeechMemoryStream *This,
13823 REFIID riid,
13824 void **ppvObject);
13825
13826 ULONG (STDMETHODCALLTYPE *AddRef)(
13827 ISpeechMemoryStream *This);
13828
13829 ULONG (STDMETHODCALLTYPE *Release)(
13830 ISpeechMemoryStream *This);
13831
13832 /*** IDispatch methods ***/
13833 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13834 ISpeechMemoryStream *This,
13835 UINT *pctinfo);
13836
13837 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13838 ISpeechMemoryStream *This,
13839 UINT iTInfo,
13840 LCID lcid,
13841 ITypeInfo **ppTInfo);
13842
13843 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13844 ISpeechMemoryStream *This,
13845 REFIID riid,
13846 LPOLESTR *rgszNames,
13847 UINT cNames,
13848 LCID lcid,
13849 DISPID *rgDispId);
13850
13851 HRESULT (STDMETHODCALLTYPE *Invoke)(
13852 ISpeechMemoryStream *This,
13853 DISPID dispIdMember,
13854 REFIID riid,
13855 LCID lcid,
13856 WORD wFlags,
13857 DISPPARAMS *pDispParams,
13858 VARIANT *pVarResult,
13859 EXCEPINFO *pExcepInfo,
13860 UINT *puArgErr);
13861
13862 /*** ISpeechBaseStream methods ***/
13863 HRESULT (STDMETHODCALLTYPE *get_Format)(
13864 ISpeechMemoryStream *This,
13865 ISpeechAudioFormat **AudioFormat);
13866
13867 HRESULT (STDMETHODCALLTYPE *putref_Format)(
13868 ISpeechMemoryStream *This,
13869 ISpeechAudioFormat *AudioFormat);
13870
13871 HRESULT (STDMETHODCALLTYPE *Read)(
13872 ISpeechMemoryStream *This,
13873 VARIANT *Buffer,
13874 LONG NumberOfBytes,
13875 LONG *BytesRead);
13876
13877 HRESULT (STDMETHODCALLTYPE *Write)(
13878 ISpeechMemoryStream *This,
13879 VARIANT Buffer,
13880 LONG *BytesWritten);
13881
13882 HRESULT (STDMETHODCALLTYPE *Seek)(
13883 ISpeechMemoryStream *This,
13884 VARIANT Position,
13885 SpeechStreamSeekPositionType Origin,
13886 VARIANT *NewPosition);
13887
13888 /*** ISpeechMemoryStream methods ***/
13889 HRESULT (STDMETHODCALLTYPE *SetData)(
13890 ISpeechMemoryStream *This,
13891 VARIANT Data);
13892
13893 HRESULT (STDMETHODCALLTYPE *GetData)(
13894 ISpeechMemoryStream *This,
13895 VARIANT *pData);
13896
13897 END_INTERFACE
13898} ISpeechMemoryStreamVtbl;
13899
13900interface ISpeechMemoryStream {
13901 CONST_VTBL ISpeechMemoryStreamVtbl* lpVtbl;
13902};
13903
13904#ifdef COBJMACROS
13905#ifndef WIDL_C_INLINE_WRAPPERS
13906/*** IUnknown methods ***/
13907#define ISpeechMemoryStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13908#define ISpeechMemoryStream_AddRef(This) (This)->lpVtbl->AddRef(This)
13909#define ISpeechMemoryStream_Release(This) (This)->lpVtbl->Release(This)
13910/*** IDispatch methods ***/
13911#define ISpeechMemoryStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13912#define ISpeechMemoryStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13913#define ISpeechMemoryStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13914#define ISpeechMemoryStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13915/*** ISpeechBaseStream methods ***/
13916#define ISpeechMemoryStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
13917#define ISpeechMemoryStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
13918#define ISpeechMemoryStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
13919#define ISpeechMemoryStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
13920#define ISpeechMemoryStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
13921/*** ISpeechMemoryStream methods ***/
13922#define ISpeechMemoryStream_SetData(This,Data) (This)->lpVtbl->SetData(This,Data)
13923#define ISpeechMemoryStream_GetData(This,pData) (This)->lpVtbl->GetData(This,pData)
13924#else
13925/*** IUnknown methods ***/
13926static inline HRESULT ISpeechMemoryStream_QueryInterface(ISpeechMemoryStream* This,REFIID riid,void **ppvObject) {
13927 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13928}
13929static inline ULONG ISpeechMemoryStream_AddRef(ISpeechMemoryStream* This) {
13930 return This->lpVtbl->AddRef(This);
13931}
13932static inline ULONG ISpeechMemoryStream_Release(ISpeechMemoryStream* This) {
13933 return This->lpVtbl->Release(This);
13934}
13935/*** IDispatch methods ***/
13936static inline HRESULT ISpeechMemoryStream_GetTypeInfoCount(ISpeechMemoryStream* This,UINT *pctinfo) {
13937 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13938}
13939static inline HRESULT ISpeechMemoryStream_GetTypeInfo(ISpeechMemoryStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13940 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13941}
13942static inline HRESULT ISpeechMemoryStream_GetIDsOfNames(ISpeechMemoryStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13943 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13944}
13945static inline HRESULT ISpeechMemoryStream_Invoke(ISpeechMemoryStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13946 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13947}
13948/*** ISpeechBaseStream methods ***/
13949static inline HRESULT ISpeechMemoryStream_get_Format(ISpeechMemoryStream* This,ISpeechAudioFormat **AudioFormat) {
13950 return This->lpVtbl->get_Format(This,AudioFormat);
13951}
13952static inline HRESULT ISpeechMemoryStream_putref_Format(ISpeechMemoryStream* This,ISpeechAudioFormat *AudioFormat) {
13953 return This->lpVtbl->putref_Format(This,AudioFormat);
13954}
13955static inline HRESULT ISpeechMemoryStream_Read(ISpeechMemoryStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
13956 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
13957}
13958static inline HRESULT ISpeechMemoryStream_Write(ISpeechMemoryStream* This,VARIANT Buffer,LONG *BytesWritten) {
13959 return This->lpVtbl->Write(This,Buffer,BytesWritten);
13960}
13961static inline HRESULT ISpeechMemoryStream_Seek(ISpeechMemoryStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
13962 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
13963}
13964/*** ISpeechMemoryStream methods ***/
13965static inline HRESULT ISpeechMemoryStream_SetData(ISpeechMemoryStream* This,VARIANT Data) {
13966 return This->lpVtbl->SetData(This,Data);
13967}
13968static inline HRESULT ISpeechMemoryStream_GetData(ISpeechMemoryStream* This,VARIANT *pData) {
13969 return This->lpVtbl->GetData(This,pData);
13970}
13971#endif
13972#endif
13973
13974#endif
13975
13976
13977#endif /* __ISpeechMemoryStream_INTERFACE_DEFINED__ */
13978
13979/*****************************************************************************
13980 * ISpeechAudioStatus interface
13981 */
13982#ifndef __ISpeechAudioStatus_INTERFACE_DEFINED__
13983#define __ISpeechAudioStatus_INTERFACE_DEFINED__
13984
13985DEFINE_GUID(IID_ISpeechAudioStatus, 0xc62d9c91, 0x7458, 0x47f6, 0x86,0x2d, 0x1e,0xf8,0x6f,0xb0,0xb2,0x78);
13986#if defined(__cplusplus) && !defined(CINTERFACE)
13987MIDL_INTERFACE("c62d9c91-7458-47f6-862d-1ef86fb0b278")
13988ISpeechAudioStatus : public IDispatch
13989{
13990 virtual HRESULT STDMETHODCALLTYPE get_FreeBufferSpace(
13991 LONG *FreeBufferSpace) = 0;
13992
13993 virtual HRESULT STDMETHODCALLTYPE get_NonBlockingIO(
13994 LONG *NonBlockingIO) = 0;
13995
13996 virtual HRESULT STDMETHODCALLTYPE get_State(
13997 SpeechAudioState *State) = 0;
13998
13999 virtual HRESULT STDMETHODCALLTYPE get_CurrentSeekPosition(
14000 VARIANT *CurrentSeekPosition) = 0;
14001
14002 virtual HRESULT STDMETHODCALLTYPE get_CurrentDevicePosition(
14003 VARIANT *CurrentDevicePosition) = 0;
14004
14005};
14006#ifdef __CRT_UUID_DECL
14007__CRT_UUID_DECL(ISpeechAudioStatus, 0xc62d9c91, 0x7458, 0x47f6, 0x86,0x2d, 0x1e,0xf8,0x6f,0xb0,0xb2,0x78)
14008#endif
14009#else
14010typedef struct ISpeechAudioStatusVtbl {
14011 BEGIN_INTERFACE
14012
14013 /*** IUnknown methods ***/
14014 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14015 ISpeechAudioStatus *This,
14016 REFIID riid,
14017 void **ppvObject);
14018
14019 ULONG (STDMETHODCALLTYPE *AddRef)(
14020 ISpeechAudioStatus *This);
14021
14022 ULONG (STDMETHODCALLTYPE *Release)(
14023 ISpeechAudioStatus *This);
14024
14025 /*** IDispatch methods ***/
14026 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14027 ISpeechAudioStatus *This,
14028 UINT *pctinfo);
14029
14030 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14031 ISpeechAudioStatus *This,
14032 UINT iTInfo,
14033 LCID lcid,
14034 ITypeInfo **ppTInfo);
14035
14036 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14037 ISpeechAudioStatus *This,
14038 REFIID riid,
14039 LPOLESTR *rgszNames,
14040 UINT cNames,
14041 LCID lcid,
14042 DISPID *rgDispId);
14043
14044 HRESULT (STDMETHODCALLTYPE *Invoke)(
14045 ISpeechAudioStatus *This,
14046 DISPID dispIdMember,
14047 REFIID riid,
14048 LCID lcid,
14049 WORD wFlags,
14050 DISPPARAMS *pDispParams,
14051 VARIANT *pVarResult,
14052 EXCEPINFO *pExcepInfo,
14053 UINT *puArgErr);
14054
14055 /*** ISpeechAudioStatus methods ***/
14056 HRESULT (STDMETHODCALLTYPE *get_FreeBufferSpace)(
14057 ISpeechAudioStatus *This,
14058 LONG *FreeBufferSpace);
14059
14060 HRESULT (STDMETHODCALLTYPE *get_NonBlockingIO)(
14061 ISpeechAudioStatus *This,
14062 LONG *NonBlockingIO);
14063
14064 HRESULT (STDMETHODCALLTYPE *get_State)(
14065 ISpeechAudioStatus *This,
14066 SpeechAudioState *State);
14067
14068 HRESULT (STDMETHODCALLTYPE *get_CurrentSeekPosition)(
14069 ISpeechAudioStatus *This,
14070 VARIANT *CurrentSeekPosition);
14071
14072 HRESULT (STDMETHODCALLTYPE *get_CurrentDevicePosition)(
14073 ISpeechAudioStatus *This,
14074 VARIANT *CurrentDevicePosition);
14075
14076 END_INTERFACE
14077} ISpeechAudioStatusVtbl;
14078
14079interface ISpeechAudioStatus {
14080 CONST_VTBL ISpeechAudioStatusVtbl* lpVtbl;
14081};
14082
14083#ifdef COBJMACROS
14084#ifndef WIDL_C_INLINE_WRAPPERS
14085/*** IUnknown methods ***/
14086#define ISpeechAudioStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14087#define ISpeechAudioStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
14088#define ISpeechAudioStatus_Release(This) (This)->lpVtbl->Release(This)
14089/*** IDispatch methods ***/
14090#define ISpeechAudioStatus_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14091#define ISpeechAudioStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14092#define ISpeechAudioStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14093#define ISpeechAudioStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14094/*** ISpeechAudioStatus methods ***/
14095#define ISpeechAudioStatus_get_FreeBufferSpace(This,FreeBufferSpace) (This)->lpVtbl->get_FreeBufferSpace(This,FreeBufferSpace)
14096#define ISpeechAudioStatus_get_NonBlockingIO(This,NonBlockingIO) (This)->lpVtbl->get_NonBlockingIO(This,NonBlockingIO)
14097#define ISpeechAudioStatus_get_State(This,State) (This)->lpVtbl->get_State(This,State)
14098#define ISpeechAudioStatus_get_CurrentSeekPosition(This,CurrentSeekPosition) (This)->lpVtbl->get_CurrentSeekPosition(This,CurrentSeekPosition)
14099#define ISpeechAudioStatus_get_CurrentDevicePosition(This,CurrentDevicePosition) (This)->lpVtbl->get_CurrentDevicePosition(This,CurrentDevicePosition)
14100#else
14101/*** IUnknown methods ***/
14102static inline HRESULT ISpeechAudioStatus_QueryInterface(ISpeechAudioStatus* This,REFIID riid,void **ppvObject) {
14103 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14104}
14105static inline ULONG ISpeechAudioStatus_AddRef(ISpeechAudioStatus* This) {
14106 return This->lpVtbl->AddRef(This);
14107}
14108static inline ULONG ISpeechAudioStatus_Release(ISpeechAudioStatus* This) {
14109 return This->lpVtbl->Release(This);
14110}
14111/*** IDispatch methods ***/
14112static inline HRESULT ISpeechAudioStatus_GetTypeInfoCount(ISpeechAudioStatus* This,UINT *pctinfo) {
14113 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14114}
14115static inline HRESULT ISpeechAudioStatus_GetTypeInfo(ISpeechAudioStatus* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14116 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14117}
14118static inline HRESULT ISpeechAudioStatus_GetIDsOfNames(ISpeechAudioStatus* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14119 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14120}
14121static inline HRESULT ISpeechAudioStatus_Invoke(ISpeechAudioStatus* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14122 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14123}
14124/*** ISpeechAudioStatus methods ***/
14125static inline HRESULT ISpeechAudioStatus_get_FreeBufferSpace(ISpeechAudioStatus* This,LONG *FreeBufferSpace) {
14126 return This->lpVtbl->get_FreeBufferSpace(This,FreeBufferSpace);
14127}
14128static inline HRESULT ISpeechAudioStatus_get_NonBlockingIO(ISpeechAudioStatus* This,LONG *NonBlockingIO) {
14129 return This->lpVtbl->get_NonBlockingIO(This,NonBlockingIO);
14130}
14131static inline HRESULT ISpeechAudioStatus_get_State(ISpeechAudioStatus* This,SpeechAudioState *State) {
14132 return This->lpVtbl->get_State(This,State);
14133}
14134static inline HRESULT ISpeechAudioStatus_get_CurrentSeekPosition(ISpeechAudioStatus* This,VARIANT *CurrentSeekPosition) {
14135 return This->lpVtbl->get_CurrentSeekPosition(This,CurrentSeekPosition);
14136}
14137static inline HRESULT ISpeechAudioStatus_get_CurrentDevicePosition(ISpeechAudioStatus* This,VARIANT *CurrentDevicePosition) {
14138 return This->lpVtbl->get_CurrentDevicePosition(This,CurrentDevicePosition);
14139}
14140#endif
14141#endif
14142
14143#endif
14144
14145
14146#endif /* __ISpeechAudioStatus_INTERFACE_DEFINED__ */
14147
14148/*****************************************************************************
14149 * ISpeechAudioBufferInfo interface
14150 */
14151#ifndef __ISpeechAudioBufferInfo_INTERFACE_DEFINED__
14152#define __ISpeechAudioBufferInfo_INTERFACE_DEFINED__
14153
14154DEFINE_GUID(IID_ISpeechAudioBufferInfo, 0x11b103d8, 0x1142, 0x4edf, 0xa0,0x93, 0x82,0xfb,0x39,0x15,0xf8,0xcc);
14155#if defined(__cplusplus) && !defined(CINTERFACE)
14156MIDL_INTERFACE("11b103d8-1142-4edf-a093-82fb3915f8cc")
14157ISpeechAudioBufferInfo : public IDispatch
14158{
14159 virtual HRESULT STDMETHODCALLTYPE get_MinNotification(
14160 LONG *MinNotification) = 0;
14161
14162 virtual HRESULT STDMETHODCALLTYPE put_MinNotification(
14163 LONG MinNotification) = 0;
14164
14165 virtual HRESULT STDMETHODCALLTYPE get_BufferSize(
14166 LONG *BufferSize) = 0;
14167
14168 virtual HRESULT STDMETHODCALLTYPE put_BufferSize(
14169 LONG BufferSize) = 0;
14170
14171 virtual HRESULT STDMETHODCALLTYPE get_EventBias(
14172 LONG *EventBias) = 0;
14173
14174 virtual HRESULT STDMETHODCALLTYPE put_EventBias(
14175 LONG EventBias) = 0;
14176
14177};
14178#ifdef __CRT_UUID_DECL
14179__CRT_UUID_DECL(ISpeechAudioBufferInfo, 0x11b103d8, 0x1142, 0x4edf, 0xa0,0x93, 0x82,0xfb,0x39,0x15,0xf8,0xcc)
14180#endif
14181#else
14182typedef struct ISpeechAudioBufferInfoVtbl {
14183 BEGIN_INTERFACE
14184
14185 /*** IUnknown methods ***/
14186 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14187 ISpeechAudioBufferInfo *This,
14188 REFIID riid,
14189 void **ppvObject);
14190
14191 ULONG (STDMETHODCALLTYPE *AddRef)(
14192 ISpeechAudioBufferInfo *This);
14193
14194 ULONG (STDMETHODCALLTYPE *Release)(
14195 ISpeechAudioBufferInfo *This);
14196
14197 /*** IDispatch methods ***/
14198 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14199 ISpeechAudioBufferInfo *This,
14200 UINT *pctinfo);
14201
14202 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14203 ISpeechAudioBufferInfo *This,
14204 UINT iTInfo,
14205 LCID lcid,
14206 ITypeInfo **ppTInfo);
14207
14208 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14209 ISpeechAudioBufferInfo *This,
14210 REFIID riid,
14211 LPOLESTR *rgszNames,
14212 UINT cNames,
14213 LCID lcid,
14214 DISPID *rgDispId);
14215
14216 HRESULT (STDMETHODCALLTYPE *Invoke)(
14217 ISpeechAudioBufferInfo *This,
14218 DISPID dispIdMember,
14219 REFIID riid,
14220 LCID lcid,
14221 WORD wFlags,
14222 DISPPARAMS *pDispParams,
14223 VARIANT *pVarResult,
14224 EXCEPINFO *pExcepInfo,
14225 UINT *puArgErr);
14226
14227 /*** ISpeechAudioBufferInfo methods ***/
14228 HRESULT (STDMETHODCALLTYPE *get_MinNotification)(
14229 ISpeechAudioBufferInfo *This,
14230 LONG *MinNotification);
14231
14232 HRESULT (STDMETHODCALLTYPE *put_MinNotification)(
14233 ISpeechAudioBufferInfo *This,
14234 LONG MinNotification);
14235
14236 HRESULT (STDMETHODCALLTYPE *get_BufferSize)(
14237 ISpeechAudioBufferInfo *This,
14238 LONG *BufferSize);
14239
14240 HRESULT (STDMETHODCALLTYPE *put_BufferSize)(
14241 ISpeechAudioBufferInfo *This,
14242 LONG BufferSize);
14243
14244 HRESULT (STDMETHODCALLTYPE *get_EventBias)(
14245 ISpeechAudioBufferInfo *This,
14246 LONG *EventBias);
14247
14248 HRESULT (STDMETHODCALLTYPE *put_EventBias)(
14249 ISpeechAudioBufferInfo *This,
14250 LONG EventBias);
14251
14252 END_INTERFACE
14253} ISpeechAudioBufferInfoVtbl;
14254
14255interface ISpeechAudioBufferInfo {
14256 CONST_VTBL ISpeechAudioBufferInfoVtbl* lpVtbl;
14257};
14258
14259#ifdef COBJMACROS
14260#ifndef WIDL_C_INLINE_WRAPPERS
14261/*** IUnknown methods ***/
14262#define ISpeechAudioBufferInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14263#define ISpeechAudioBufferInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
14264#define ISpeechAudioBufferInfo_Release(This) (This)->lpVtbl->Release(This)
14265/*** IDispatch methods ***/
14266#define ISpeechAudioBufferInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14267#define ISpeechAudioBufferInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14268#define ISpeechAudioBufferInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14269#define ISpeechAudioBufferInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14270/*** ISpeechAudioBufferInfo methods ***/
14271#define ISpeechAudioBufferInfo_get_MinNotification(This,MinNotification) (This)->lpVtbl->get_MinNotification(This,MinNotification)
14272#define ISpeechAudioBufferInfo_put_MinNotification(This,MinNotification) (This)->lpVtbl->put_MinNotification(This,MinNotification)
14273#define ISpeechAudioBufferInfo_get_BufferSize(This,BufferSize) (This)->lpVtbl->get_BufferSize(This,BufferSize)
14274#define ISpeechAudioBufferInfo_put_BufferSize(This,BufferSize) (This)->lpVtbl->put_BufferSize(This,BufferSize)
14275#define ISpeechAudioBufferInfo_get_EventBias(This,EventBias) (This)->lpVtbl->get_EventBias(This,EventBias)
14276#define ISpeechAudioBufferInfo_put_EventBias(This,EventBias) (This)->lpVtbl->put_EventBias(This,EventBias)
14277#else
14278/*** IUnknown methods ***/
14279static inline HRESULT ISpeechAudioBufferInfo_QueryInterface(ISpeechAudioBufferInfo* This,REFIID riid,void **ppvObject) {
14280 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14281}
14282static inline ULONG ISpeechAudioBufferInfo_AddRef(ISpeechAudioBufferInfo* This) {
14283 return This->lpVtbl->AddRef(This);
14284}
14285static inline ULONG ISpeechAudioBufferInfo_Release(ISpeechAudioBufferInfo* This) {
14286 return This->lpVtbl->Release(This);
14287}
14288/*** IDispatch methods ***/
14289static inline HRESULT ISpeechAudioBufferInfo_GetTypeInfoCount(ISpeechAudioBufferInfo* This,UINT *pctinfo) {
14290 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14291}
14292static inline HRESULT ISpeechAudioBufferInfo_GetTypeInfo(ISpeechAudioBufferInfo* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14293 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14294}
14295static inline HRESULT ISpeechAudioBufferInfo_GetIDsOfNames(ISpeechAudioBufferInfo* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14296 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14297}
14298static inline HRESULT ISpeechAudioBufferInfo_Invoke(ISpeechAudioBufferInfo* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14299 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14300}
14301/*** ISpeechAudioBufferInfo methods ***/
14302static inline HRESULT ISpeechAudioBufferInfo_get_MinNotification(ISpeechAudioBufferInfo* This,LONG *MinNotification) {
14303 return This->lpVtbl->get_MinNotification(This,MinNotification);
14304}
14305static inline HRESULT ISpeechAudioBufferInfo_put_MinNotification(ISpeechAudioBufferInfo* This,LONG MinNotification) {
14306 return This->lpVtbl->put_MinNotification(This,MinNotification);
14307}
14308static inline HRESULT ISpeechAudioBufferInfo_get_BufferSize(ISpeechAudioBufferInfo* This,LONG *BufferSize) {
14309 return This->lpVtbl->get_BufferSize(This,BufferSize);
14310}
14311static inline HRESULT ISpeechAudioBufferInfo_put_BufferSize(ISpeechAudioBufferInfo* This,LONG BufferSize) {
14312 return This->lpVtbl->put_BufferSize(This,BufferSize);
14313}
14314static inline HRESULT ISpeechAudioBufferInfo_get_EventBias(ISpeechAudioBufferInfo* This,LONG *EventBias) {
14315 return This->lpVtbl->get_EventBias(This,EventBias);
14316}
14317static inline HRESULT ISpeechAudioBufferInfo_put_EventBias(ISpeechAudioBufferInfo* This,LONG EventBias) {
14318 return This->lpVtbl->put_EventBias(This,EventBias);
14319}
14320#endif
14321#endif
14322
14323#endif
14324
14325
14326#endif /* __ISpeechAudioBufferInfo_INTERFACE_DEFINED__ */
14327
14328/*****************************************************************************
14329 * ISpeechWaveFormatEx interface
14330 */
14331#ifndef __ISpeechWaveFormatEx_INTERFACE_DEFINED__
14332#define __ISpeechWaveFormatEx_INTERFACE_DEFINED__
14333
14334DEFINE_GUID(IID_ISpeechWaveFormatEx, 0x7a1ef0d5, 0x1581, 0x4741, 0x88,0xe4, 0x20,0x9a,0x49,0xf1,0x1a,0x10);
14335#if defined(__cplusplus) && !defined(CINTERFACE)
14336MIDL_INTERFACE("7a1ef0d5-1581-4741-88e4-209a49f11a10")
14337ISpeechWaveFormatEx : public IDispatch
14338{
14339 virtual HRESULT STDMETHODCALLTYPE get_FormatTag(
14340 short *FormatTag) = 0;
14341
14342 virtual HRESULT STDMETHODCALLTYPE put_FormatTag(
14343 short FormatTag) = 0;
14344
14345 virtual HRESULT STDMETHODCALLTYPE get_Channels(
14346 short *Channels) = 0;
14347
14348 virtual HRESULT STDMETHODCALLTYPE put_Channels(
14349 short Channels) = 0;
14350
14351 virtual HRESULT STDMETHODCALLTYPE get_SamplesPerSec(
14352 LONG *SamplesPerSec) = 0;
14353
14354 virtual HRESULT STDMETHODCALLTYPE put_SamplesPerSec(
14355 LONG SamplesPerSec) = 0;
14356
14357 virtual HRESULT STDMETHODCALLTYPE get_AvgBytesPerSec(
14358 LONG *AvgBytesPerSec) = 0;
14359
14360 virtual HRESULT STDMETHODCALLTYPE put_AvgBytesPerSec(
14361 LONG AvgBytesPerSec) = 0;
14362
14363 virtual HRESULT STDMETHODCALLTYPE get_BlockAlign(
14364 short *BlockAlign) = 0;
14365
14366 virtual HRESULT STDMETHODCALLTYPE put_BlockAlign(
14367 short BlockAlign) = 0;
14368
14369 virtual HRESULT STDMETHODCALLTYPE get_BitsPerSample(
14370 short *BitsPerSample) = 0;
14371
14372 virtual HRESULT STDMETHODCALLTYPE put_BitsPerSample(
14373 short BitsPerSample) = 0;
14374
14375 virtual HRESULT STDMETHODCALLTYPE get_ExtraData(
14376 VARIANT *ExtraData) = 0;
14377
14378 virtual HRESULT STDMETHODCALLTYPE put_ExtraData(
14379 VARIANT ExtraData) = 0;
14380
14381};
14382#ifdef __CRT_UUID_DECL
14383__CRT_UUID_DECL(ISpeechWaveFormatEx, 0x7a1ef0d5, 0x1581, 0x4741, 0x88,0xe4, 0x20,0x9a,0x49,0xf1,0x1a,0x10)
14384#endif
14385#else
14386typedef struct ISpeechWaveFormatExVtbl {
14387 BEGIN_INTERFACE
14388
14389 /*** IUnknown methods ***/
14390 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14391 ISpeechWaveFormatEx *This,
14392 REFIID riid,
14393 void **ppvObject);
14394
14395 ULONG (STDMETHODCALLTYPE *AddRef)(
14396 ISpeechWaveFormatEx *This);
14397
14398 ULONG (STDMETHODCALLTYPE *Release)(
14399 ISpeechWaveFormatEx *This);
14400
14401 /*** IDispatch methods ***/
14402 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14403 ISpeechWaveFormatEx *This,
14404 UINT *pctinfo);
14405
14406 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14407 ISpeechWaveFormatEx *This,
14408 UINT iTInfo,
14409 LCID lcid,
14410 ITypeInfo **ppTInfo);
14411
14412 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14413 ISpeechWaveFormatEx *This,
14414 REFIID riid,
14415 LPOLESTR *rgszNames,
14416 UINT cNames,
14417 LCID lcid,
14418 DISPID *rgDispId);
14419
14420 HRESULT (STDMETHODCALLTYPE *Invoke)(
14421 ISpeechWaveFormatEx *This,
14422 DISPID dispIdMember,
14423 REFIID riid,
14424 LCID lcid,
14425 WORD wFlags,
14426 DISPPARAMS *pDispParams,
14427 VARIANT *pVarResult,
14428 EXCEPINFO *pExcepInfo,
14429 UINT *puArgErr);
14430
14431 /*** ISpeechWaveFormatEx methods ***/
14432 HRESULT (STDMETHODCALLTYPE *get_FormatTag)(
14433 ISpeechWaveFormatEx *This,
14434 short *FormatTag);
14435
14436 HRESULT (STDMETHODCALLTYPE *put_FormatTag)(
14437 ISpeechWaveFormatEx *This,
14438 short FormatTag);
14439
14440 HRESULT (STDMETHODCALLTYPE *get_Channels)(
14441 ISpeechWaveFormatEx *This,
14442 short *Channels);
14443
14444 HRESULT (STDMETHODCALLTYPE *put_Channels)(
14445 ISpeechWaveFormatEx *This,
14446 short Channels);
14447
14448 HRESULT (STDMETHODCALLTYPE *get_SamplesPerSec)(
14449 ISpeechWaveFormatEx *This,
14450 LONG *SamplesPerSec);
14451
14452 HRESULT (STDMETHODCALLTYPE *put_SamplesPerSec)(
14453 ISpeechWaveFormatEx *This,
14454 LONG SamplesPerSec);
14455
14456 HRESULT (STDMETHODCALLTYPE *get_AvgBytesPerSec)(
14457 ISpeechWaveFormatEx *This,
14458 LONG *AvgBytesPerSec);
14459
14460 HRESULT (STDMETHODCALLTYPE *put_AvgBytesPerSec)(
14461 ISpeechWaveFormatEx *This,
14462 LONG AvgBytesPerSec);
14463
14464 HRESULT (STDMETHODCALLTYPE *get_BlockAlign)(
14465 ISpeechWaveFormatEx *This,
14466 short *BlockAlign);
14467
14468 HRESULT (STDMETHODCALLTYPE *put_BlockAlign)(
14469 ISpeechWaveFormatEx *This,
14470 short BlockAlign);
14471
14472 HRESULT (STDMETHODCALLTYPE *get_BitsPerSample)(
14473 ISpeechWaveFormatEx *This,
14474 short *BitsPerSample);
14475
14476 HRESULT (STDMETHODCALLTYPE *put_BitsPerSample)(
14477 ISpeechWaveFormatEx *This,
14478 short BitsPerSample);
14479
14480 HRESULT (STDMETHODCALLTYPE *get_ExtraData)(
14481 ISpeechWaveFormatEx *This,
14482 VARIANT *ExtraData);
14483
14484 HRESULT (STDMETHODCALLTYPE *put_ExtraData)(
14485 ISpeechWaveFormatEx *This,
14486 VARIANT ExtraData);
14487
14488 END_INTERFACE
14489} ISpeechWaveFormatExVtbl;
14490
14491interface ISpeechWaveFormatEx {
14492 CONST_VTBL ISpeechWaveFormatExVtbl* lpVtbl;
14493};
14494
14495#ifdef COBJMACROS
14496#ifndef WIDL_C_INLINE_WRAPPERS
14497/*** IUnknown methods ***/
14498#define ISpeechWaveFormatEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14499#define ISpeechWaveFormatEx_AddRef(This) (This)->lpVtbl->AddRef(This)
14500#define ISpeechWaveFormatEx_Release(This) (This)->lpVtbl->Release(This)
14501/*** IDispatch methods ***/
14502#define ISpeechWaveFormatEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14503#define ISpeechWaveFormatEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14504#define ISpeechWaveFormatEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14505#define ISpeechWaveFormatEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14506/*** ISpeechWaveFormatEx methods ***/
14507#define ISpeechWaveFormatEx_get_FormatTag(This,FormatTag) (This)->lpVtbl->get_FormatTag(This,FormatTag)
14508#define ISpeechWaveFormatEx_put_FormatTag(This,FormatTag) (This)->lpVtbl->put_FormatTag(This,FormatTag)
14509#define ISpeechWaveFormatEx_get_Channels(This,Channels) (This)->lpVtbl->get_Channels(This,Channels)
14510#define ISpeechWaveFormatEx_put_Channels(This,Channels) (This)->lpVtbl->put_Channels(This,Channels)
14511#define ISpeechWaveFormatEx_get_SamplesPerSec(This,SamplesPerSec) (This)->lpVtbl->get_SamplesPerSec(This,SamplesPerSec)
14512#define ISpeechWaveFormatEx_put_SamplesPerSec(This,SamplesPerSec) (This)->lpVtbl->put_SamplesPerSec(This,SamplesPerSec)
14513#define ISpeechWaveFormatEx_get_AvgBytesPerSec(This,AvgBytesPerSec) (This)->lpVtbl->get_AvgBytesPerSec(This,AvgBytesPerSec)
14514#define ISpeechWaveFormatEx_put_AvgBytesPerSec(This,AvgBytesPerSec) (This)->lpVtbl->put_AvgBytesPerSec(This,AvgBytesPerSec)
14515#define ISpeechWaveFormatEx_get_BlockAlign(This,BlockAlign) (This)->lpVtbl->get_BlockAlign(This,BlockAlign)
14516#define ISpeechWaveFormatEx_put_BlockAlign(This,BlockAlign) (This)->lpVtbl->put_BlockAlign(This,BlockAlign)
14517#define ISpeechWaveFormatEx_get_BitsPerSample(This,BitsPerSample) (This)->lpVtbl->get_BitsPerSample(This,BitsPerSample)
14518#define ISpeechWaveFormatEx_put_BitsPerSample(This,BitsPerSample) (This)->lpVtbl->put_BitsPerSample(This,BitsPerSample)
14519#define ISpeechWaveFormatEx_get_ExtraData(This,ExtraData) (This)->lpVtbl->get_ExtraData(This,ExtraData)
14520#define ISpeechWaveFormatEx_put_ExtraData(This,ExtraData) (This)->lpVtbl->put_ExtraData(This,ExtraData)
14521#else
14522/*** IUnknown methods ***/
14523static inline HRESULT ISpeechWaveFormatEx_QueryInterface(ISpeechWaveFormatEx* This,REFIID riid,void **ppvObject) {
14524 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14525}
14526static inline ULONG ISpeechWaveFormatEx_AddRef(ISpeechWaveFormatEx* This) {
14527 return This->lpVtbl->AddRef(This);
14528}
14529static inline ULONG ISpeechWaveFormatEx_Release(ISpeechWaveFormatEx* This) {
14530 return This->lpVtbl->Release(This);
14531}
14532/*** IDispatch methods ***/
14533static inline HRESULT ISpeechWaveFormatEx_GetTypeInfoCount(ISpeechWaveFormatEx* This,UINT *pctinfo) {
14534 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14535}
14536static inline HRESULT ISpeechWaveFormatEx_GetTypeInfo(ISpeechWaveFormatEx* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14537 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14538}
14539static inline HRESULT ISpeechWaveFormatEx_GetIDsOfNames(ISpeechWaveFormatEx* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14540 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14541}
14542static inline HRESULT ISpeechWaveFormatEx_Invoke(ISpeechWaveFormatEx* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14543 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14544}
14545/*** ISpeechWaveFormatEx methods ***/
14546static inline HRESULT ISpeechWaveFormatEx_get_FormatTag(ISpeechWaveFormatEx* This,short *FormatTag) {
14547 return This->lpVtbl->get_FormatTag(This,FormatTag);
14548}
14549static inline HRESULT ISpeechWaveFormatEx_put_FormatTag(ISpeechWaveFormatEx* This,short FormatTag) {
14550 return This->lpVtbl->put_FormatTag(This,FormatTag);
14551}
14552static inline HRESULT ISpeechWaveFormatEx_get_Channels(ISpeechWaveFormatEx* This,short *Channels) {
14553 return This->lpVtbl->get_Channels(This,Channels);
14554}
14555static inline HRESULT ISpeechWaveFormatEx_put_Channels(ISpeechWaveFormatEx* This,short Channels) {
14556 return This->lpVtbl->put_Channels(This,Channels);
14557}
14558static inline HRESULT ISpeechWaveFormatEx_get_SamplesPerSec(ISpeechWaveFormatEx* This,LONG *SamplesPerSec) {
14559 return This->lpVtbl->get_SamplesPerSec(This,SamplesPerSec);
14560}
14561static inline HRESULT ISpeechWaveFormatEx_put_SamplesPerSec(ISpeechWaveFormatEx* This,LONG SamplesPerSec) {
14562 return This->lpVtbl->put_SamplesPerSec(This,SamplesPerSec);
14563}
14564static inline HRESULT ISpeechWaveFormatEx_get_AvgBytesPerSec(ISpeechWaveFormatEx* This,LONG *AvgBytesPerSec) {
14565 return This->lpVtbl->get_AvgBytesPerSec(This,AvgBytesPerSec);
14566}
14567static inline HRESULT ISpeechWaveFormatEx_put_AvgBytesPerSec(ISpeechWaveFormatEx* This,LONG AvgBytesPerSec) {
14568 return This->lpVtbl->put_AvgBytesPerSec(This,AvgBytesPerSec);
14569}
14570static inline HRESULT ISpeechWaveFormatEx_get_BlockAlign(ISpeechWaveFormatEx* This,short *BlockAlign) {
14571 return This->lpVtbl->get_BlockAlign(This,BlockAlign);
14572}
14573static inline HRESULT ISpeechWaveFormatEx_put_BlockAlign(ISpeechWaveFormatEx* This,short BlockAlign) {
14574 return This->lpVtbl->put_BlockAlign(This,BlockAlign);
14575}
14576static inline HRESULT ISpeechWaveFormatEx_get_BitsPerSample(ISpeechWaveFormatEx* This,short *BitsPerSample) {
14577 return This->lpVtbl->get_BitsPerSample(This,BitsPerSample);
14578}
14579static inline HRESULT ISpeechWaveFormatEx_put_BitsPerSample(ISpeechWaveFormatEx* This,short BitsPerSample) {
14580 return This->lpVtbl->put_BitsPerSample(This,BitsPerSample);
14581}
14582static inline HRESULT ISpeechWaveFormatEx_get_ExtraData(ISpeechWaveFormatEx* This,VARIANT *ExtraData) {
14583 return This->lpVtbl->get_ExtraData(This,ExtraData);
14584}
14585static inline HRESULT ISpeechWaveFormatEx_put_ExtraData(ISpeechWaveFormatEx* This,VARIANT ExtraData) {
14586 return This->lpVtbl->put_ExtraData(This,ExtraData);
14587}
14588#endif
14589#endif
14590
14591#endif
14592
14593
14594#endif /* __ISpeechWaveFormatEx_INTERFACE_DEFINED__ */
14595
14596/*****************************************************************************
14597 * ISpeechVoice interface
14598 */
14599#ifndef __ISpeechVoice_INTERFACE_DEFINED__
14600#define __ISpeechVoice_INTERFACE_DEFINED__
14601
14602DEFINE_GUID(IID_ISpeechVoice, 0x269316d8, 0x57bd, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96);
14603#if defined(__cplusplus) && !defined(CINTERFACE)
14604MIDL_INTERFACE("269316d8-57bd-11d2-9eee-00c04f797396")
14605ISpeechVoice : public IDispatch
14606{
14607 virtual HRESULT STDMETHODCALLTYPE get_Status(
14608 ISpeechVoiceStatus **Status) = 0;
14609
14610 virtual HRESULT STDMETHODCALLTYPE get_Voice(
14611 ISpeechObjectToken **Voice) = 0;
14612
14613 virtual HRESULT STDMETHODCALLTYPE putref_Voice(
14614 ISpeechObjectToken *Voice) = 0;
14615
14616 virtual HRESULT STDMETHODCALLTYPE get_AudioOutput(
14617 ISpeechObjectToken **AudioOutput) = 0;
14618
14619 virtual HRESULT STDMETHODCALLTYPE putref_AudioOutput(
14620 ISpeechObjectToken *AudioOutput) = 0;
14621
14622 virtual HRESULT STDMETHODCALLTYPE get_AudioOutputStream(
14623 ISpeechBaseStream **AudioOutputStream) = 0;
14624
14625 virtual HRESULT STDMETHODCALLTYPE putref_AudioOutputStream(
14626 ISpeechBaseStream *AudioOutputStream) = 0;
14627
14628 virtual HRESULT STDMETHODCALLTYPE get_Rate(
14629 LONG *Rate) = 0;
14630
14631 virtual HRESULT STDMETHODCALLTYPE put_Rate(
14632 LONG Rate) = 0;
14633
14634 virtual HRESULT STDMETHODCALLTYPE get_Volume(
14635 LONG *Volume) = 0;
14636
14637 virtual HRESULT STDMETHODCALLTYPE put_Volume(
14638 LONG Volume) = 0;
14639
14640 virtual HRESULT STDMETHODCALLTYPE put_AllowAudioOutputFormatChangesOnNextSet(
14641 VARIANT_BOOL Allow) = 0;
14642
14643 virtual HRESULT STDMETHODCALLTYPE get_AllowAudioOutputFormatChangesOnNextSet(
14644 VARIANT_BOOL *Allow) = 0;
14645
14646 virtual HRESULT STDMETHODCALLTYPE get_EventInterests(
14647 SpeechVoiceEvents *EventInterestFlags) = 0;
14648
14649 virtual HRESULT STDMETHODCALLTYPE put_EventInterests(
14650 SpeechVoiceEvents EventInterestFlags) = 0;
14651
14652 virtual HRESULT STDMETHODCALLTYPE put_Priority(
14653 SpeechVoicePriority Priority) = 0;
14654
14655 virtual HRESULT STDMETHODCALLTYPE get_Priority(
14656 SpeechVoicePriority *Priority) = 0;
14657
14658 virtual HRESULT STDMETHODCALLTYPE put_AlertBoundary(
14659 SpeechVoiceEvents Boundary) = 0;
14660
14661 virtual HRESULT STDMETHODCALLTYPE get_AlertBoundary(
14662 SpeechVoiceEvents *Boundary) = 0;
14663
14664 virtual HRESULT STDMETHODCALLTYPE put_SynchronousSpeakTimeout(
14665 LONG msTimeout) = 0;
14666
14667 virtual HRESULT STDMETHODCALLTYPE get_SynchronousSpeakTimeout(
14668 LONG *msTimeout) = 0;
14669
14670 virtual HRESULT STDMETHODCALLTYPE Speak(
14671 BSTR Text,
14672 SpeechVoiceSpeakFlags Flags,
14673 LONG *StreamNumber) = 0;
14674
14675 virtual HRESULT STDMETHODCALLTYPE SpeakStream(
14676 ISpeechBaseStream *Stream,
14677 SpeechVoiceSpeakFlags Flags,
14678 LONG *StreamNumber) = 0;
14679
14680 virtual HRESULT STDMETHODCALLTYPE Pause(
14681 ) = 0;
14682
14683 virtual HRESULT STDMETHODCALLTYPE Resume(
14684 ) = 0;
14685
14686 virtual HRESULT STDMETHODCALLTYPE Skip(
14687 const BSTR Type,
14688 LONG NumItems,
14689 LONG *NumSkipped) = 0;
14690
14691 virtual HRESULT STDMETHODCALLTYPE GetVoices(
14692 BSTR RequiredAttributes,
14693 BSTR OptionalAttributes,
14694 ISpeechObjectTokens **ObjectTokens) = 0;
14695
14696 virtual HRESULT STDMETHODCALLTYPE GetAudioOutputs(
14697 BSTR RequiredAttributes,
14698 BSTR OptionalAttributes,
14699 ISpeechObjectTokens **ObjectTokens) = 0;
14700
14701 virtual HRESULT STDMETHODCALLTYPE WaitUntilDone(
14702 LONG msTimeout,
14703 VARIANT_BOOL *Done) = 0;
14704
14705 virtual HRESULT STDMETHODCALLTYPE SpeakCompleteEvent(
14706 LONG *Handle) = 0;
14707
14708 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
14709 const BSTR TypeOfUI,
14710 const VARIANT *ExtraData,
14711 VARIANT_BOOL *Supported) = 0;
14712
14713 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
14714 LONG hWndParent,
14715 BSTR Title,
14716 const BSTR TypeOfUI,
14717 const VARIANT *ExtraData = 0) = 0;
14718
14719};
14720#ifdef __CRT_UUID_DECL
14721__CRT_UUID_DECL(ISpeechVoice, 0x269316d8, 0x57bd, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96)
14722#endif
14723#else
14724typedef struct ISpeechVoiceVtbl {
14725 BEGIN_INTERFACE
14726
14727 /*** IUnknown methods ***/
14728 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14729 ISpeechVoice *This,
14730 REFIID riid,
14731 void **ppvObject);
14732
14733 ULONG (STDMETHODCALLTYPE *AddRef)(
14734 ISpeechVoice *This);
14735
14736 ULONG (STDMETHODCALLTYPE *Release)(
14737 ISpeechVoice *This);
14738
14739 /*** IDispatch methods ***/
14740 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14741 ISpeechVoice *This,
14742 UINT *pctinfo);
14743
14744 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14745 ISpeechVoice *This,
14746 UINT iTInfo,
14747 LCID lcid,
14748 ITypeInfo **ppTInfo);
14749
14750 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14751 ISpeechVoice *This,
14752 REFIID riid,
14753 LPOLESTR *rgszNames,
14754 UINT cNames,
14755 LCID lcid,
14756 DISPID *rgDispId);
14757
14758 HRESULT (STDMETHODCALLTYPE *Invoke)(
14759 ISpeechVoice *This,
14760 DISPID dispIdMember,
14761 REFIID riid,
14762 LCID lcid,
14763 WORD wFlags,
14764 DISPPARAMS *pDispParams,
14765 VARIANT *pVarResult,
14766 EXCEPINFO *pExcepInfo,
14767 UINT *puArgErr);
14768
14769 /*** ISpeechVoice methods ***/
14770 HRESULT (STDMETHODCALLTYPE *get_Status)(
14771 ISpeechVoice *This,
14772 ISpeechVoiceStatus **Status);
14773
14774 HRESULT (STDMETHODCALLTYPE *get_Voice)(
14775 ISpeechVoice *This,
14776 ISpeechObjectToken **Voice);
14777
14778 HRESULT (STDMETHODCALLTYPE *putref_Voice)(
14779 ISpeechVoice *This,
14780 ISpeechObjectToken *Voice);
14781
14782 HRESULT (STDMETHODCALLTYPE *get_AudioOutput)(
14783 ISpeechVoice *This,
14784 ISpeechObjectToken **AudioOutput);
14785
14786 HRESULT (STDMETHODCALLTYPE *putref_AudioOutput)(
14787 ISpeechVoice *This,
14788 ISpeechObjectToken *AudioOutput);
14789
14790 HRESULT (STDMETHODCALLTYPE *get_AudioOutputStream)(
14791 ISpeechVoice *This,
14792 ISpeechBaseStream **AudioOutputStream);
14793
14794 HRESULT (STDMETHODCALLTYPE *putref_AudioOutputStream)(
14795 ISpeechVoice *This,
14796 ISpeechBaseStream *AudioOutputStream);
14797
14798 HRESULT (STDMETHODCALLTYPE *get_Rate)(
14799 ISpeechVoice *This,
14800 LONG *Rate);
14801
14802 HRESULT (STDMETHODCALLTYPE *put_Rate)(
14803 ISpeechVoice *This,
14804 LONG Rate);
14805
14806 HRESULT (STDMETHODCALLTYPE *get_Volume)(
14807 ISpeechVoice *This,
14808 LONG *Volume);
14809
14810 HRESULT (STDMETHODCALLTYPE *put_Volume)(
14811 ISpeechVoice *This,
14812 LONG Volume);
14813
14814 HRESULT (STDMETHODCALLTYPE *put_AllowAudioOutputFormatChangesOnNextSet)(
14815 ISpeechVoice *This,
14816 VARIANT_BOOL Allow);
14817
14818 HRESULT (STDMETHODCALLTYPE *get_AllowAudioOutputFormatChangesOnNextSet)(
14819 ISpeechVoice *This,
14820 VARIANT_BOOL *Allow);
14821
14822 HRESULT (STDMETHODCALLTYPE *get_EventInterests)(
14823 ISpeechVoice *This,
14824 SpeechVoiceEvents *EventInterestFlags);
14825
14826 HRESULT (STDMETHODCALLTYPE *put_EventInterests)(
14827 ISpeechVoice *This,
14828 SpeechVoiceEvents EventInterestFlags);
14829
14830 HRESULT (STDMETHODCALLTYPE *put_Priority)(
14831 ISpeechVoice *This,
14832 SpeechVoicePriority Priority);
14833
14834 HRESULT (STDMETHODCALLTYPE *get_Priority)(
14835 ISpeechVoice *This,
14836 SpeechVoicePriority *Priority);
14837
14838 HRESULT (STDMETHODCALLTYPE *put_AlertBoundary)(
14839 ISpeechVoice *This,
14840 SpeechVoiceEvents Boundary);
14841
14842 HRESULT (STDMETHODCALLTYPE *get_AlertBoundary)(
14843 ISpeechVoice *This,
14844 SpeechVoiceEvents *Boundary);
14845
14846 HRESULT (STDMETHODCALLTYPE *put_SynchronousSpeakTimeout)(
14847 ISpeechVoice *This,
14848 LONG msTimeout);
14849
14850 HRESULT (STDMETHODCALLTYPE *get_SynchronousSpeakTimeout)(
14851 ISpeechVoice *This,
14852 LONG *msTimeout);
14853
14854 HRESULT (STDMETHODCALLTYPE *Speak)(
14855 ISpeechVoice *This,
14856 BSTR Text,
14857 SpeechVoiceSpeakFlags Flags,
14858 LONG *StreamNumber);
14859
14860 HRESULT (STDMETHODCALLTYPE *SpeakStream)(
14861 ISpeechVoice *This,
14862 ISpeechBaseStream *Stream,
14863 SpeechVoiceSpeakFlags Flags,
14864 LONG *StreamNumber);
14865
14866 HRESULT (STDMETHODCALLTYPE *Pause)(
14867 ISpeechVoice *This);
14868
14869 HRESULT (STDMETHODCALLTYPE *Resume)(
14870 ISpeechVoice *This);
14871
14872 HRESULT (STDMETHODCALLTYPE *Skip)(
14873 ISpeechVoice *This,
14874 const BSTR Type,
14875 LONG NumItems,
14876 LONG *NumSkipped);
14877
14878 HRESULT (STDMETHODCALLTYPE *GetVoices)(
14879 ISpeechVoice *This,
14880 BSTR RequiredAttributes,
14881 BSTR OptionalAttributes,
14882 ISpeechObjectTokens **ObjectTokens);
14883
14884 HRESULT (STDMETHODCALLTYPE *GetAudioOutputs)(
14885 ISpeechVoice *This,
14886 BSTR RequiredAttributes,
14887 BSTR OptionalAttributes,
14888 ISpeechObjectTokens **ObjectTokens);
14889
14890 HRESULT (STDMETHODCALLTYPE *WaitUntilDone)(
14891 ISpeechVoice *This,
14892 LONG msTimeout,
14893 VARIANT_BOOL *Done);
14894
14895 HRESULT (STDMETHODCALLTYPE *SpeakCompleteEvent)(
14896 ISpeechVoice *This,
14897 LONG *Handle);
14898
14899 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
14900 ISpeechVoice *This,
14901 const BSTR TypeOfUI,
14902 const VARIANT *ExtraData,
14903 VARIANT_BOOL *Supported);
14904
14905 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
14906 ISpeechVoice *This,
14907 LONG hWndParent,
14908 BSTR Title,
14909 const BSTR TypeOfUI,
14910 const VARIANT *ExtraData);
14911
14912 END_INTERFACE
14913} ISpeechVoiceVtbl;
14914
14915interface ISpeechVoice {
14916 CONST_VTBL ISpeechVoiceVtbl* lpVtbl;
14917};
14918
14919#ifdef COBJMACROS
14920#ifndef WIDL_C_INLINE_WRAPPERS
14921/*** IUnknown methods ***/
14922#define ISpeechVoice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14923#define ISpeechVoice_AddRef(This) (This)->lpVtbl->AddRef(This)
14924#define ISpeechVoice_Release(This) (This)->lpVtbl->Release(This)
14925/*** IDispatch methods ***/
14926#define ISpeechVoice_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14927#define ISpeechVoice_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14928#define ISpeechVoice_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14929#define ISpeechVoice_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14930/*** ISpeechVoice methods ***/
14931#define ISpeechVoice_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
14932#define ISpeechVoice_get_Voice(This,Voice) (This)->lpVtbl->get_Voice(This,Voice)
14933#define ISpeechVoice_putref_Voice(This,Voice) (This)->lpVtbl->putref_Voice(This,Voice)
14934#define ISpeechVoice_get_AudioOutput(This,AudioOutput) (This)->lpVtbl->get_AudioOutput(This,AudioOutput)
14935#define ISpeechVoice_putref_AudioOutput(This,AudioOutput) (This)->lpVtbl->putref_AudioOutput(This,AudioOutput)
14936#define ISpeechVoice_get_AudioOutputStream(This,AudioOutputStream) (This)->lpVtbl->get_AudioOutputStream(This,AudioOutputStream)
14937#define ISpeechVoice_putref_AudioOutputStream(This,AudioOutputStream) (This)->lpVtbl->putref_AudioOutputStream(This,AudioOutputStream)
14938#define ISpeechVoice_get_Rate(This,Rate) (This)->lpVtbl->get_Rate(This,Rate)
14939#define ISpeechVoice_put_Rate(This,Rate) (This)->lpVtbl->put_Rate(This,Rate)
14940#define ISpeechVoice_get_Volume(This,Volume) (This)->lpVtbl->get_Volume(This,Volume)
14941#define ISpeechVoice_put_Volume(This,Volume) (This)->lpVtbl->put_Volume(This,Volume)
14942#define ISpeechVoice_put_AllowAudioOutputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->put_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
14943#define ISpeechVoice_get_AllowAudioOutputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->get_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
14944#define ISpeechVoice_get_EventInterests(This,EventInterestFlags) (This)->lpVtbl->get_EventInterests(This,EventInterestFlags)
14945#define ISpeechVoice_put_EventInterests(This,EventInterestFlags) (This)->lpVtbl->put_EventInterests(This,EventInterestFlags)
14946#define ISpeechVoice_put_Priority(This,Priority) (This)->lpVtbl->put_Priority(This,Priority)
14947#define ISpeechVoice_get_Priority(This,Priority) (This)->lpVtbl->get_Priority(This,Priority)
14948#define ISpeechVoice_put_AlertBoundary(This,Boundary) (This)->lpVtbl->put_AlertBoundary(This,Boundary)
14949#define ISpeechVoice_get_AlertBoundary(This,Boundary) (This)->lpVtbl->get_AlertBoundary(This,Boundary)
14950#define ISpeechVoice_put_SynchronousSpeakTimeout(This,msTimeout) (This)->lpVtbl->put_SynchronousSpeakTimeout(This,msTimeout)
14951#define ISpeechVoice_get_SynchronousSpeakTimeout(This,msTimeout) (This)->lpVtbl->get_SynchronousSpeakTimeout(This,msTimeout)
14952#define ISpeechVoice_Speak(This,Text,Flags,StreamNumber) (This)->lpVtbl->Speak(This,Text,Flags,StreamNumber)
14953#define ISpeechVoice_SpeakStream(This,Stream,Flags,StreamNumber) (This)->lpVtbl->SpeakStream(This,Stream,Flags,StreamNumber)
14954#define ISpeechVoice_Pause(This) (This)->lpVtbl->Pause(This)
14955#define ISpeechVoice_Resume(This) (This)->lpVtbl->Resume(This)
14956#define ISpeechVoice_Skip(This,Type,NumItems,NumSkipped) (This)->lpVtbl->Skip(This,Type,NumItems,NumSkipped)
14957#define ISpeechVoice_GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
14958#define ISpeechVoice_GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
14959#define ISpeechVoice_WaitUntilDone(This,msTimeout,Done) (This)->lpVtbl->WaitUntilDone(This,msTimeout,Done)
14960#define ISpeechVoice_SpeakCompleteEvent(This,Handle) (This)->lpVtbl->SpeakCompleteEvent(This,Handle)
14961#define ISpeechVoice_IsUISupported(This,TypeOfUI,ExtraData,Supported) (This)->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported)
14962#define ISpeechVoice_DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData) (This)->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
14963#else
14964/*** IUnknown methods ***/
14965static inline HRESULT ISpeechVoice_QueryInterface(ISpeechVoice* This,REFIID riid,void **ppvObject) {
14966 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14967}
14968static inline ULONG ISpeechVoice_AddRef(ISpeechVoice* This) {
14969 return This->lpVtbl->AddRef(This);
14970}
14971static inline ULONG ISpeechVoice_Release(ISpeechVoice* This) {
14972 return This->lpVtbl->Release(This);
14973}
14974/*** IDispatch methods ***/
14975static inline HRESULT ISpeechVoice_GetTypeInfoCount(ISpeechVoice* This,UINT *pctinfo) {
14976 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14977}
14978static inline HRESULT ISpeechVoice_GetTypeInfo(ISpeechVoice* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14979 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14980}
14981static inline HRESULT ISpeechVoice_GetIDsOfNames(ISpeechVoice* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14982 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14983}
14984static inline HRESULT ISpeechVoice_Invoke(ISpeechVoice* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14985 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14986}
14987/*** ISpeechVoice methods ***/
14988static inline HRESULT ISpeechVoice_get_Status(ISpeechVoice* This,ISpeechVoiceStatus **Status) {
14989 return This->lpVtbl->get_Status(This,Status);
14990}
14991static inline HRESULT ISpeechVoice_get_Voice(ISpeechVoice* This,ISpeechObjectToken **Voice) {
14992 return This->lpVtbl->get_Voice(This,Voice);
14993}
14994static inline HRESULT ISpeechVoice_putref_Voice(ISpeechVoice* This,ISpeechObjectToken *Voice) {
14995 return This->lpVtbl->putref_Voice(This,Voice);
14996}
14997static inline HRESULT ISpeechVoice_get_AudioOutput(ISpeechVoice* This,ISpeechObjectToken **AudioOutput) {
14998 return This->lpVtbl->get_AudioOutput(This,AudioOutput);
14999}
15000static inline HRESULT ISpeechVoice_putref_AudioOutput(ISpeechVoice* This,ISpeechObjectToken *AudioOutput) {
15001 return This->lpVtbl->putref_AudioOutput(This,AudioOutput);
15002}
15003static inline HRESULT ISpeechVoice_get_AudioOutputStream(ISpeechVoice* This,ISpeechBaseStream **AudioOutputStream) {
15004 return This->lpVtbl->get_AudioOutputStream(This,AudioOutputStream);
15005}
15006static inline HRESULT ISpeechVoice_putref_AudioOutputStream(ISpeechVoice* This,ISpeechBaseStream *AudioOutputStream) {
15007 return This->lpVtbl->putref_AudioOutputStream(This,AudioOutputStream);
15008}
15009static inline HRESULT ISpeechVoice_get_Rate(ISpeechVoice* This,LONG *Rate) {
15010 return This->lpVtbl->get_Rate(This,Rate);
15011}
15012static inline HRESULT ISpeechVoice_put_Rate(ISpeechVoice* This,LONG Rate) {
15013 return This->lpVtbl->put_Rate(This,Rate);
15014}
15015static inline HRESULT ISpeechVoice_get_Volume(ISpeechVoice* This,LONG *Volume) {
15016 return This->lpVtbl->get_Volume(This,Volume);
15017}
15018static inline HRESULT ISpeechVoice_put_Volume(ISpeechVoice* This,LONG Volume) {
15019 return This->lpVtbl->put_Volume(This,Volume);
15020}
15021static inline HRESULT ISpeechVoice_put_AllowAudioOutputFormatChangesOnNextSet(ISpeechVoice* This,VARIANT_BOOL Allow) {
15022 return This->lpVtbl->put_AllowAudioOutputFormatChangesOnNextSet(This,Allow);
15023}
15024static inline HRESULT ISpeechVoice_get_AllowAudioOutputFormatChangesOnNextSet(ISpeechVoice* This,VARIANT_BOOL *Allow) {
15025 return This->lpVtbl->get_AllowAudioOutputFormatChangesOnNextSet(This,Allow);
15026}
15027static inline HRESULT ISpeechVoice_get_EventInterests(ISpeechVoice* This,SpeechVoiceEvents *EventInterestFlags) {
15028 return This->lpVtbl->get_EventInterests(This,EventInterestFlags);
15029}
15030static inline HRESULT ISpeechVoice_put_EventInterests(ISpeechVoice* This,SpeechVoiceEvents EventInterestFlags) {
15031 return This->lpVtbl->put_EventInterests(This,EventInterestFlags);
15032}
15033static inline HRESULT ISpeechVoice_put_Priority(ISpeechVoice* This,SpeechVoicePriority Priority) {
15034 return This->lpVtbl->put_Priority(This,Priority);
15035}
15036static inline HRESULT ISpeechVoice_get_Priority(ISpeechVoice* This,SpeechVoicePriority *Priority) {
15037 return This->lpVtbl->get_Priority(This,Priority);
15038}
15039static inline HRESULT ISpeechVoice_put_AlertBoundary(ISpeechVoice* This,SpeechVoiceEvents Boundary) {
15040 return This->lpVtbl->put_AlertBoundary(This,Boundary);
15041}
15042static inline HRESULT ISpeechVoice_get_AlertBoundary(ISpeechVoice* This,SpeechVoiceEvents *Boundary) {
15043 return This->lpVtbl->get_AlertBoundary(This,Boundary);
15044}
15045static inline HRESULT ISpeechVoice_put_SynchronousSpeakTimeout(ISpeechVoice* This,LONG msTimeout) {
15046 return This->lpVtbl->put_SynchronousSpeakTimeout(This,msTimeout);
15047}
15048static inline HRESULT ISpeechVoice_get_SynchronousSpeakTimeout(ISpeechVoice* This,LONG *msTimeout) {
15049 return This->lpVtbl->get_SynchronousSpeakTimeout(This,msTimeout);
15050}
15051static inline HRESULT ISpeechVoice_Speak(ISpeechVoice* This,BSTR Text,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
15052 return This->lpVtbl->Speak(This,Text,Flags,StreamNumber);
15053}
15054static inline HRESULT ISpeechVoice_SpeakStream(ISpeechVoice* This,ISpeechBaseStream *Stream,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
15055 return This->lpVtbl->SpeakStream(This,Stream,Flags,StreamNumber);
15056}
15057static inline HRESULT ISpeechVoice_Pause(ISpeechVoice* This) {
15058 return This->lpVtbl->Pause(This);
15059}
15060static inline HRESULT ISpeechVoice_Resume(ISpeechVoice* This) {
15061 return This->lpVtbl->Resume(This);
15062}
15063static inline HRESULT ISpeechVoice_Skip(ISpeechVoice* This,const BSTR Type,LONG NumItems,LONG *NumSkipped) {
15064 return This->lpVtbl->Skip(This,Type,NumItems,NumSkipped);
15065}
15066static inline HRESULT ISpeechVoice_GetVoices(ISpeechVoice* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
15067 return This->lpVtbl->GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
15068}
15069static inline HRESULT ISpeechVoice_GetAudioOutputs(ISpeechVoice* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
15070 return This->lpVtbl->GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
15071}
15072static inline HRESULT ISpeechVoice_WaitUntilDone(ISpeechVoice* This,LONG msTimeout,VARIANT_BOOL *Done) {
15073 return This->lpVtbl->WaitUntilDone(This,msTimeout,Done);
15074}
15075static inline HRESULT ISpeechVoice_SpeakCompleteEvent(ISpeechVoice* This,LONG *Handle) {
15076 return This->lpVtbl->SpeakCompleteEvent(This,Handle);
15077}
15078static inline HRESULT ISpeechVoice_IsUISupported(ISpeechVoice* This,const BSTR TypeOfUI,const VARIANT *ExtraData,VARIANT_BOOL *Supported) {
15079 return This->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported);
15080}
15081static inline HRESULT ISpeechVoice_DisplayUI(ISpeechVoice* This,LONG hWndParent,BSTR Title,const BSTR TypeOfUI,const VARIANT *ExtraData) {
15082 return This->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData);
15083}
15084#endif
15085#endif
15086
15087#endif
15088
15089
15090#endif /* __ISpeechVoice_INTERFACE_DEFINED__ */
15091
15092/*****************************************************************************
15093 * ISpeechVoiceStatus interface
15094 */
15095#ifndef __ISpeechVoiceStatus_INTERFACE_DEFINED__
15096#define __ISpeechVoiceStatus_INTERFACE_DEFINED__
15097
15098DEFINE_GUID(IID_ISpeechVoiceStatus, 0x8be47b07, 0x57f6, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96);
15099#if defined(__cplusplus) && !defined(CINTERFACE)
15100MIDL_INTERFACE("8be47b07-57f6-11d2-9eee-00c04f797396")
15101ISpeechVoiceStatus : public IDispatch
15102{
15103 virtual HRESULT STDMETHODCALLTYPE get_CurrentStreamNumber(
15104 LONG *StreamNumber) = 0;
15105
15106 virtual HRESULT STDMETHODCALLTYPE get_LastStreamNumberQueued(
15107 LONG *StreamNumber) = 0;
15108
15109 virtual HRESULT STDMETHODCALLTYPE get_LastHResult(
15110 LONG *HResult) = 0;
15111
15112 virtual HRESULT STDMETHODCALLTYPE get_RunningState(
15113 SpeechRunState *State) = 0;
15114
15115 virtual HRESULT STDMETHODCALLTYPE get_InputWordPosition(
15116 LONG *Position) = 0;
15117
15118 virtual HRESULT STDMETHODCALLTYPE get_InputWordLength(
15119 LONG *Length) = 0;
15120
15121 virtual HRESULT STDMETHODCALLTYPE get_InputSentencePosition(
15122 LONG *Position) = 0;
15123
15124 virtual HRESULT STDMETHODCALLTYPE get_InputSentenceLength(
15125 LONG *Length) = 0;
15126
15127 virtual HRESULT STDMETHODCALLTYPE get_LastBookmark(
15128 BSTR *Bookmark) = 0;
15129
15130 virtual HRESULT STDMETHODCALLTYPE get_LastBookmarkId(
15131 LONG *BookmarkId) = 0;
15132
15133 virtual HRESULT STDMETHODCALLTYPE get_PhonemeId(
15134 short *PhoneId) = 0;
15135
15136 virtual HRESULT STDMETHODCALLTYPE get_VisemeId(
15137 short *VisemeId) = 0;
15138
15139};
15140#ifdef __CRT_UUID_DECL
15141__CRT_UUID_DECL(ISpeechVoiceStatus, 0x8be47b07, 0x57f6, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96)
15142#endif
15143#else
15144typedef struct ISpeechVoiceStatusVtbl {
15145 BEGIN_INTERFACE
15146
15147 /*** IUnknown methods ***/
15148 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15149 ISpeechVoiceStatus *This,
15150 REFIID riid,
15151 void **ppvObject);
15152
15153 ULONG (STDMETHODCALLTYPE *AddRef)(
15154 ISpeechVoiceStatus *This);
15155
15156 ULONG (STDMETHODCALLTYPE *Release)(
15157 ISpeechVoiceStatus *This);
15158
15159 /*** IDispatch methods ***/
15160 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
15161 ISpeechVoiceStatus *This,
15162 UINT *pctinfo);
15163
15164 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
15165 ISpeechVoiceStatus *This,
15166 UINT iTInfo,
15167 LCID lcid,
15168 ITypeInfo **ppTInfo);
15169
15170 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
15171 ISpeechVoiceStatus *This,
15172 REFIID riid,
15173 LPOLESTR *rgszNames,
15174 UINT cNames,
15175 LCID lcid,
15176 DISPID *rgDispId);
15177
15178 HRESULT (STDMETHODCALLTYPE *Invoke)(
15179 ISpeechVoiceStatus *This,
15180 DISPID dispIdMember,
15181 REFIID riid,
15182 LCID lcid,
15183 WORD wFlags,
15184 DISPPARAMS *pDispParams,
15185 VARIANT *pVarResult,
15186 EXCEPINFO *pExcepInfo,
15187 UINT *puArgErr);
15188
15189 /*** ISpeechVoiceStatus methods ***/
15190 HRESULT (STDMETHODCALLTYPE *get_CurrentStreamNumber)(
15191 ISpeechVoiceStatus *This,
15192 LONG *StreamNumber);
15193
15194 HRESULT (STDMETHODCALLTYPE *get_LastStreamNumberQueued)(
15195 ISpeechVoiceStatus *This,
15196 LONG *StreamNumber);
15197
15198 HRESULT (STDMETHODCALLTYPE *get_LastHResult)(
15199 ISpeechVoiceStatus *This,
15200 LONG *HResult);
15201
15202 HRESULT (STDMETHODCALLTYPE *get_RunningState)(
15203 ISpeechVoiceStatus *This,
15204 SpeechRunState *State);
15205
15206 HRESULT (STDMETHODCALLTYPE *get_InputWordPosition)(
15207 ISpeechVoiceStatus *This,
15208 LONG *Position);
15209
15210 HRESULT (STDMETHODCALLTYPE *get_InputWordLength)(
15211 ISpeechVoiceStatus *This,
15212 LONG *Length);
15213
15214 HRESULT (STDMETHODCALLTYPE *get_InputSentencePosition)(
15215 ISpeechVoiceStatus *This,
15216 LONG *Position);
15217
15218 HRESULT (STDMETHODCALLTYPE *get_InputSentenceLength)(
15219 ISpeechVoiceStatus *This,
15220 LONG *Length);
15221
15222 HRESULT (STDMETHODCALLTYPE *get_LastBookmark)(
15223 ISpeechVoiceStatus *This,
15224 BSTR *Bookmark);
15225
15226 HRESULT (STDMETHODCALLTYPE *get_LastBookmarkId)(
15227 ISpeechVoiceStatus *This,
15228 LONG *BookmarkId);
15229
15230 HRESULT (STDMETHODCALLTYPE *get_PhonemeId)(
15231 ISpeechVoiceStatus *This,
15232 short *PhoneId);
15233
15234 HRESULT (STDMETHODCALLTYPE *get_VisemeId)(
15235 ISpeechVoiceStatus *This,
15236 short *VisemeId);
15237
15238 END_INTERFACE
15239} ISpeechVoiceStatusVtbl;
15240
15241interface ISpeechVoiceStatus {
15242 CONST_VTBL ISpeechVoiceStatusVtbl* lpVtbl;
15243};
15244
15245#ifdef COBJMACROS
15246#ifndef WIDL_C_INLINE_WRAPPERS
15247/*** IUnknown methods ***/
15248#define ISpeechVoiceStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15249#define ISpeechVoiceStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
15250#define ISpeechVoiceStatus_Release(This) (This)->lpVtbl->Release(This)
15251/*** IDispatch methods ***/
15252#define ISpeechVoiceStatus_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
15253#define ISpeechVoiceStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
15254#define ISpeechVoiceStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
15255#define ISpeechVoiceStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
15256/*** ISpeechVoiceStatus methods ***/
15257#define ISpeechVoiceStatus_get_CurrentStreamNumber(This,StreamNumber) (This)->lpVtbl->get_CurrentStreamNumber(This,StreamNumber)
15258#define ISpeechVoiceStatus_get_LastStreamNumberQueued(This,StreamNumber) (This)->lpVtbl->get_LastStreamNumberQueued(This,StreamNumber)
15259#define ISpeechVoiceStatus_get_LastHResult(This,HResult) (This)->lpVtbl->get_LastHResult(This,HResult)
15260#define ISpeechVoiceStatus_get_RunningState(This,State) (This)->lpVtbl->get_RunningState(This,State)
15261#define ISpeechVoiceStatus_get_InputWordPosition(This,Position) (This)->lpVtbl->get_InputWordPosition(This,Position)
15262#define ISpeechVoiceStatus_get_InputWordLength(This,Length) (This)->lpVtbl->get_InputWordLength(This,Length)
15263#define ISpeechVoiceStatus_get_InputSentencePosition(This,Position) (This)->lpVtbl->get_InputSentencePosition(This,Position)
15264#define ISpeechVoiceStatus_get_InputSentenceLength(This,Length) (This)->lpVtbl->get_InputSentenceLength(This,Length)
15265#define ISpeechVoiceStatus_get_LastBookmark(This,Bookmark) (This)->lpVtbl->get_LastBookmark(This,Bookmark)
15266#define ISpeechVoiceStatus_get_LastBookmarkId(This,BookmarkId) (This)->lpVtbl->get_LastBookmarkId(This,BookmarkId)
15267#define ISpeechVoiceStatus_get_PhonemeId(This,PhoneId) (This)->lpVtbl->get_PhonemeId(This,PhoneId)
15268#define ISpeechVoiceStatus_get_VisemeId(This,VisemeId) (This)->lpVtbl->get_VisemeId(This,VisemeId)
15269#else
15270/*** IUnknown methods ***/
15271static inline HRESULT ISpeechVoiceStatus_QueryInterface(ISpeechVoiceStatus* This,REFIID riid,void **ppvObject) {
15272 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15273}
15274static inline ULONG ISpeechVoiceStatus_AddRef(ISpeechVoiceStatus* This) {
15275 return This->lpVtbl->AddRef(This);
15276}
15277static inline ULONG ISpeechVoiceStatus_Release(ISpeechVoiceStatus* This) {
15278 return This->lpVtbl->Release(This);
15279}
15280/*** IDispatch methods ***/
15281static inline HRESULT ISpeechVoiceStatus_GetTypeInfoCount(ISpeechVoiceStatus* This,UINT *pctinfo) {
15282 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
15283}
15284static inline HRESULT ISpeechVoiceStatus_GetTypeInfo(ISpeechVoiceStatus* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
15285 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
15286}
15287static inline HRESULT ISpeechVoiceStatus_GetIDsOfNames(ISpeechVoiceStatus* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
15288 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
15289}
15290static inline HRESULT ISpeechVoiceStatus_Invoke(ISpeechVoiceStatus* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
15291 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
15292}
15293/*** ISpeechVoiceStatus methods ***/
15294static inline HRESULT ISpeechVoiceStatus_get_CurrentStreamNumber(ISpeechVoiceStatus* This,LONG *StreamNumber) {
15295 return This->lpVtbl->get_CurrentStreamNumber(This,StreamNumber);
15296}
15297static inline HRESULT ISpeechVoiceStatus_get_LastStreamNumberQueued(ISpeechVoiceStatus* This,LONG *StreamNumber) {
15298 return This->lpVtbl->get_LastStreamNumberQueued(This,StreamNumber);
15299}
15300static inline HRESULT ISpeechVoiceStatus_get_LastHResult(ISpeechVoiceStatus* This,LONG *HResult) {
15301 return This->lpVtbl->get_LastHResult(This,HResult);
15302}
15303static inline HRESULT ISpeechVoiceStatus_get_RunningState(ISpeechVoiceStatus* This,SpeechRunState *State) {
15304 return This->lpVtbl->get_RunningState(This,State);
15305}
15306static inline HRESULT ISpeechVoiceStatus_get_InputWordPosition(ISpeechVoiceStatus* This,LONG *Position) {
15307 return This->lpVtbl->get_InputWordPosition(This,Position);
15308}
15309static inline HRESULT ISpeechVoiceStatus_get_InputWordLength(ISpeechVoiceStatus* This,LONG *Length) {
15310 return This->lpVtbl->get_InputWordLength(This,Length);
15311}
15312static inline HRESULT ISpeechVoiceStatus_get_InputSentencePosition(ISpeechVoiceStatus* This,LONG *Position) {
15313 return This->lpVtbl->get_InputSentencePosition(This,Position);
15314}
15315static inline HRESULT ISpeechVoiceStatus_get_InputSentenceLength(ISpeechVoiceStatus* This,LONG *Length) {
15316 return This->lpVtbl->get_InputSentenceLength(This,Length);
15317}
15318static inline HRESULT ISpeechVoiceStatus_get_LastBookmark(ISpeechVoiceStatus* This,BSTR *Bookmark) {
15319 return This->lpVtbl->get_LastBookmark(This,Bookmark);
15320}
15321static inline HRESULT ISpeechVoiceStatus_get_LastBookmarkId(ISpeechVoiceStatus* This,LONG *BookmarkId) {
15322 return This->lpVtbl->get_LastBookmarkId(This,BookmarkId);
15323}
15324static inline HRESULT ISpeechVoiceStatus_get_PhonemeId(ISpeechVoiceStatus* This,short *PhoneId) {
15325 return This->lpVtbl->get_PhonemeId(This,PhoneId);
15326}
15327static inline HRESULT ISpeechVoiceStatus_get_VisemeId(ISpeechVoiceStatus* This,short *VisemeId) {
15328 return This->lpVtbl->get_VisemeId(This,VisemeId);
15329}
15330#endif
15331#endif
15332
15333#endif
15334
15335
15336#endif /* __ISpeechVoiceStatus_INTERFACE_DEFINED__ */
15337
15338typedef enum SpeechVisemeType {
15339 SVP_0 = 0,
15340 SVP_1 = 1,
15341 SVP_2 = 2,
15342 SVP_3 = 3,
15343 SVP_4 = 4,
15344 SVP_5 = 5,
15345 SVP_6 = 6,
15346 SVP_7 = 7,
15347 SVP_8 = 8,
15348 SVP_9 = 9,
15349 SVP_10 = 10,
15350 SVP_11 = 11,
15351 SVP_12 = 12,
15352 SVP_13 = 13,
15353 SVP_14 = 14,
15354 SVP_15 = 15,
15355 SVP_16 = 16,
15356 SVP_17 = 17,
15357 SVP_18 = 18,
15358 SVP_19 = 19,
15359 SVP_20 = 20,
15360 SVP_21 = 21
15361} SpeechVisemeType;
15362typedef enum SpeechVisemeFeature {
15363 SVF_None = 0,
15364 SVF_Stressed = SPVFEATURE_STRESSED,
15365 SVF_Emphasis = SPVFEATURE_EMPHASIS
15366} SpeechVisemeFeature;
15367typedef enum DISPID_SpeechVoiceEvent {
15368 DISPID_SVEStreamStart = 1,
15369 DISPID_SVEStreamEnd = 2,
15370 DISPID_SVEVoiceChange = 3,
15371 DISPID_SVEBookmark = 4,
15372 DISPID_SVEWord = 5,
15373 DISPID_SVEPhoneme = 6,
15374 DISPID_SVESentenceBoundary = 7,
15375 DISPID_SVEViseme = 8,
15376 DISPID_SVEAudioLevel = 9,
15377 DISPID_SVEEnginePrivate = 10
15378} DISPID_SpeechVoiceEvent;
15379typedef enum DISPID_SpeechRecognizer {
15380 DISPID_SRRecognizer = 1,
15381 DISPID_SRAllowAudioInputFormatChangesOnNextSet = 2,
15382 DISPID_SRAudioInput = 3,
15383 DISPID_SRAudioInputStream = 4,
15384 DISPID_SRIsShared = 5,
15385 DISPID_SRState = 6,
15386 DISPID_SRStatus = 7,
15387 DISPID_SRProfile = 8,
15388 DISPID_SREmulateRecognition = 9,
15389 DISPID_SRCreateRecoContext = 10,
15390 DISPID_SRGetFormat = 11,
15391 DISPID_SRSetPropertyNumber = 12,
15392 DISPID_SRGetPropertyNumber = 13,
15393 DISPID_SRSetPropertyString = 14,
15394 DISPID_SRGetPropertyString = 15,
15395 DISPID_SRIsUISupported = 16,
15396 DISPID_SRDisplayUI = 17,
15397 DISPID_SRGetRecognizers = 18,
15398 DISPID_SVGetAudioInputs = 19,
15399 DISPID_SVGetProfiles = 20
15400} DISPID_SpeechRecognizer;
15401typedef enum SpeechRecognizerState {
15402 SRSInactive = SPRST_INACTIVE,
15403 SRSActive = SPRST_ACTIVE,
15404 SRSActiveAlways = SPRST_ACTIVE_ALWAYS,
15405 SRSInactiveWithPurge = SPRST_INACTIVE_WITH_PURGE
15406} SpeechRecognizerState;
15407typedef enum SpeechDisplayAttributes {
15408 SDA_No_Trailing_Space = 0,
15409 SDA_One_Trailing_Space = SPAF_ONE_TRAILING_SPACE,
15410 SDA_Two_Trailing_Spaces = SPAF_TWO_TRAILING_SPACES,
15411 SDA_Consume_Leading_Spaces = SPAF_CONSUME_LEADING_SPACES
15412} SpeechDisplayAttributes;
15413typedef enum SpeechFormatType {
15414 SFTInput = SPWF_INPUT,
15415 SFTSREngine = SPWF_SRENGINE
15416} SpeechFormatType;
15417typedef enum DISPID_SpeechRecognizerStatus {
15418 DISPID_SRSAudioStatus = 1,
15419 DISPID_SRSCurrentStreamPosition = 2,
15420 DISPID_SRSCurrentStreamNumber = 3,
15421 DISPID_SRSNumberOfActiveRules = 4,
15422 DISPID_SRSClsidEngine = 5,
15423 DISPID_SRSSupportedLanguages = 6
15424} DISPID_SpeechRecognizerStatus;
15425typedef enum DISPID_SpeechRecoContext {
15426 DISPID_SRCRecognizer = 1,
15427 DISPID_SRCAudioInInterferenceStatus = 2,
15428 DISPID_SRCRequestedUIType = 3,
15429 DISPID_SRCVoice = 4,
15430 DISPID_SRAllowVoiceFormatMatchingOnNextSet = 5,
15431 DISPID_SRCVoicePurgeEvent = 6,
15432 DISPID_SRCEventInterests = 7,
15433 DISPID_SRCCmdMaxAlternates = 8,
15434 DISPID_SRCState = 9,
15435 DISPID_SRCRetainedAudio = 10,
15436 DISPID_SRCRetainedAudioFormat = 11,
15437 DISPID_SRCPause = 12,
15438 DISPID_SRCResume = 13,
15439 DISPID_SRCCreateGrammar = 14,
15440 DISPID_SRCCreateResultFromMemory = 15,
15441 DISPID_SRCBookmark = 16,
15442 DISPID_SRCSetAdaptationData = 17
15443} DISPID_SpeechRecoContext;
15444typedef enum SpeechRetainedAudioOptions {
15445 SRAONone = SPAO_NONE,
15446 SRAORetainAudio = SPAO_RETAIN_AUDIO
15447} SpeechRetainedAudioOptions;
15448typedef enum SpeechBookmarkOptions {
15449 SBONone = SPBO_NONE,
15450 SBOPause = SPBO_PAUSE
15451} SpeechBookmarkOptions;
15452typedef enum SpeechInterference {
15453 SINone = SPINTERFERENCE_NONE,
15454 SINoise = SPINTERFERENCE_NOISE,
15455 SINoSignal = SPINTERFERENCE_NOSIGNAL,
15456 SITooLoud = SPINTERFERENCE_TOOLOUD,
15457 SITooQuiet = SPINTERFERENCE_TOOQUIET,
15458 SITooFast = SPINTERFERENCE_TOOFAST,
15459 SITooSlow = SPINTERFERENCE_TOOSLOW
15460} SpeechInterference;
15461typedef enum SpeechRecoEvents {
15462 SREStreamEnd = 0x1,
15463 SRESoundStart = 0x2,
15464 SRESoundEnd = 0x4,
15465 SREPhraseStart = 0x8,
15466 SRERecognition = 0x10,
15467 SREHypothesis = 0x20,
15468 SREBookmark = 0x40,
15469 SREPropertyNumChange = 0x80,
15470 SREPropertyStringChange = 0x100,
15471 SREFalseRecognition = 0x200,
15472 SREInterference = 0x400,
15473 SRERequestUI = 0x800,
15474 SREStateChange = 0x1000,
15475 SREAdaptation = 0x2000,
15476 SREStreamStart = 0x4000,
15477 SRERecoOtherContext = 0x8000,
15478 SREAudioLevel = 0x10000,
15479 SREPrivate = 0x40000,
15480 SREAllEvents = 0x5ffff
15481} SpeechRecoEvents;
15482typedef enum SpeechRecoContextState {
15483 SRCS_Disabled = SPCS_DISABLED,
15484 SRCS_Enabled = SPCS_ENABLED
15485} SpeechRecoContextState;
15486typedef enum DISPIDSPRG {
15487 DISPID_SRGId = 1,
15488 DISPID_SRGRecoContext = 2,
15489 DISPID_SRGState = 3,
15490 DISPID_SRGRules = 4,
15491 DISPID_SRGReset = 5,
15492 DISPID_SRGCommit = 6,
15493 DISPID_SRGCmdLoadFromFile = 7,
15494 DISPID_SRGCmdLoadFromObject = 8,
15495 DISPID_SRGCmdLoadFromResource = 9,
15496 DISPID_SRGCmdLoadFromMemory = 10,
15497 DISPID_SRGCmdLoadFromProprietaryGrammar = 11,
15498 DISPID_SRGCmdSetRuleState = 12,
15499 DISPID_SRGCmdSetRuleIdState = 13,
15500 DISPID_SRGDictationLoad = 14,
15501 DISPID_SRGDictationUnload = 15,
15502 DISPID_SRGDictationSetState = 16,
15503 DISPID_SRGSetWordSequenceData = 17,
15504 DISPID_SRGSetTextSelection = 18,
15505 DISPID_SRGIsPronounceable = 19
15506} DISPIDSPRG;
15507typedef enum SpeechLoadOption {
15508 SLOStatic = SPLO_STATIC,
15509 SLODynamic = SPLO_DYNAMIC
15510} SpeechLoadOption;
15511typedef enum SpeechWordPronounceable {
15512 SWPUnknownWordUnpronounceable = SPWP_UNKNOWN_WORD_UNPRONOUNCEABLE,
15513 SWPUnknownWordPronounceable = SPWP_UNKNOWN_WORD_PRONOUNCEABLE,
15514 SWPKnownWordPronounceable = SPWP_KNOWN_WORD_PRONOUNCEABLE
15515} SpeechWordPronounceable;
15516typedef enum SpeechGrammarState {
15517 SGSEnabled = SPGS_ENABLED,
15518 SGSDisabled = SPGS_DISABLED,
15519 SGSExclusive = SPGS_EXCLUSIVE
15520} SpeechGrammarState;
15521typedef enum SpeechRuleState {
15522 SGDSInactive = SPRS_INACTIVE,
15523 SGDSActive = SPRS_ACTIVE,
15524 SGDSActiveWithAutoPause = SPRS_ACTIVE_WITH_AUTO_PAUSE,
15525 SGDSActiveUserDelimited = SPRS_ACTIVE_USER_DELIMITED
15526} SpeechRuleState;
15527typedef enum SpeechRuleAttributes {
15528 SRATopLevel = SPRAF_TopLevel,
15529 SRADefaultToActive = SPRAF_Active,
15530 SRAExport = SPRAF_Export,
15531 SRAImport = SPRAF_Import,
15532 SRAInterpreter = SPRAF_Interpreter,
15533 SRADynamic = SPRAF_Dynamic,
15534 SRARoot = SPRAF_Root
15535} SpeechRuleAttributes;
15536typedef enum SpeechGrammarWordType {
15537 SGDisplay = SPWT_DISPLAY,
15538 SGLexical = SPWT_LEXICAL,
15539 SGPronounciation = SPWT_PRONUNCIATION,
15540 SGLexicalNoSpecialChars = SPWT_LEXICAL_NO_SPECIAL_CHARS
15541} SpeechGrammarWordType;
15542typedef enum DISPID_SpeechRecoContextEvents {
15543 DISPID_SRCEStartStream = 1,
15544 DISPID_SRCEEndStream = 2,
15545 DISPID_SRCEBookmark = 3,
15546 DISPID_SRCESoundStart = 4,
15547 DISPID_SRCESoundEnd = 5,
15548 DISPID_SRCEPhraseStart = 6,
15549 DISPID_SRCERecognition = 7,
15550 DISPID_SRCEHypothesis = 8,
15551 DISPID_SRCEPropertyNumberChange = 9,
15552 DISPID_SRCEPropertyStringChange = 10,
15553 DISPID_SRCEFalseRecognition = 11,
15554 DISPID_SRCEInterference = 12,
15555 DISPID_SRCERequestUI = 13,
15556 DISPID_SRCERecognizerStateChange = 14,
15557 DISPID_SRCEAdaptation = 15,
15558 DISPID_SRCERecognitionForOtherContext = 16,
15559 DISPID_SRCEAudioLevel = 17,
15560 DISPID_SRCEEnginePrivate = 18
15561} DISPID_SpeechRecoContextEvents;
15562typedef enum SpeechRecognitionType {
15563 SRTStandard = 0,
15564 SRTAutopause = SPREF_AutoPause,
15565 SRTEmulated = SPREF_Emulated,
15566 SRTSMLTimeout = SPREF_SMLTimeout,
15567 SRTExtendableParse = SPREF_ExtendableParse,
15568 SRTReSent = SPREF_ReSent
15569} SpeechRecognitionType;
15570typedef enum DISPID_SpeechGrammarRule {
15571 DISPID_SGRAttributes = 1,
15572 DISPID_SGRInitialState = 2,
15573 DISPID_SGRName = 3,
15574 DISPID_SGRId = 4,
15575 DISPID_SGRClear = 5,
15576 DISPID_SGRAddResource = 6,
15577 DISPID_SGRAddState = 7
15578} DISPID_SpeechGrammarRule;
15579typedef enum DISPID_SpeechGrammarRules {
15580 DISPID_SGRsCount = 1,
15581 DISPID_SGRsDynamic = 2,
15582 DISPID_SGRsAdd = 3,
15583 DISPID_SGRsCommit = 4,
15584 DISPID_SGRsCommitAndSave = 5,
15585 DISPID_SGRsFindRule = 6,
15586 DISPID_SGRsItem = DISPID_VALUE,
15587 DISPID_SGRs_NewEnum = DISPID_NEWENUM
15588} DISPID_SpeechGrammarRules;
15589typedef enum DISPID_SpeechGrammarRuleState {
15590 DISPID_SGRSRule = 1,
15591 DISPID_SGRSTransitions = 2,
15592 DISPID_SGRSAddWordTransition = 3,
15593 DISPID_SGRSAddRuleTransition = 4,
15594 DISPID_SGRSAddSpecialTransition = 5
15595} DISPID_SpeechGrammarRuleState;
15596typedef enum SpeechSpecialTransitionType {
15597 SSTTWildcard = 1,
15598 SSTTDictation = 2,
15599 SSTTTextBuffer = 3
15600} SpeechSpecialTransitionType;
15601typedef enum DISPID_SpeechGrammarRuleStateTransitions {
15602 DISPID_SGRSTsCount = 1,
15603 DISPID_SGRSTsItem = DISPID_VALUE,
15604 DISPID_SGRSTs_NewEnum = DISPID_NEWENUM
15605} DISPID_SpeechGrammarRuleStateTransitions;
15606typedef enum DISPID_SpeechGrammarRuleStateTransition {
15607 DISPID_SGRSTType = 1,
15608 DISPID_SGRSTText = 2,
15609 DISPID_SGRSTRule = 3,
15610 DISPID_SGRSTWeight = 4,
15611 DISPID_SGRSTPropertyName = 5,
15612 DISPID_SGRSTPropertyId = 6,
15613 DISPID_SGRSTPropertyValue = 7,
15614 DISPID_SGRSTNextState = 8
15615} DISPID_SpeechGrammarRuleStateTransition;
15616typedef enum SpeechGrammarRuleStateTransitionType {
15617 SGRSTTEpsilon = 0,
15618 SGRSTTWord = 1,
15619 SGRSTTRule = 2,
15620 SGRSTTDictation = 3,
15621 SGRSTTWildcard = 4,
15622 SGRSTTTextBuffer = 5
15623} SpeechGrammarRuleStateTransitionType;
15624typedef enum DISPIDSPTSI {
15625 DISPIDSPTSI_ActiveOffset = 1,
15626 DISPIDSPTSI_ActiveLength = 2,
15627 DISPIDSPTSI_SelectionOffset = 3,
15628 DISPIDSPTSI_SelectionLength = 4
15629} DISPIDSPTSI;
15630typedef enum DISPID_SpeechRecoResult {
15631 DISPID_SRRRecoContext = 1,
15632 DISPID_SRRTimes = 2,
15633 DISPID_SRRAudioFormat = 3,
15634 DISPID_SRRPhraseInfo = 4,
15635 DISPID_SRRAlternates = 5,
15636 DISPID_SRRAudio = 6,
15637 DISPID_SRRSpeakAudio = 7,
15638 DISPID_SRRSaveToMemory = 8,
15639 DISPID_SRRDiscardResultInfo = 9
15640} DISPID_SpeechRecoResult;
15641typedef enum SpeechDiscardType {
15642 SDTProperty = SPDF_PROPERTY,
15643 SDTReplacement = SPDF_REPLACEMENT,
15644 SDTRule = SPDF_RULE,
15645 SDTDisplayText = SPDF_DISPLAYTEXT,
15646 SDTLexicalForm = SPDF_LEXICALFORM,
15647 SDTPronunciation = SPDF_PRONUNCIATION,
15648 SDTAudio = SPDF_AUDIO,
15649 SDTAlternates = SPDF_ALTERNATES,
15650 SDTAll = SPDF_ALL
15651} SpeechDiscardType;
15652typedef enum SpeechEmulationCompareFlags {
15653 SECFIgnoreCase = 0x1,
15654 SECFIgnoreKanaType = 0x10000,
15655 SECFIgnoreWidth = 0x20000,
15656 SECFNoSpecialChars = 0x20000000,
15657 SECFEmulateResult = 0x40000000,
15658 SECFDefault = (SECFIgnoreCase | SECFIgnoreKanaType) | SECFIgnoreWidth
15659} SpeechEmulationCompareFlags;
15660typedef enum DISPID_SpeechXMLRecoResult {
15661 DISPID_SRRGetXMLResult = DISPID_SRRDiscardResultInfo + 1,
15662 DISPID_SRRGetXMLErrorInfo = DISPID_SRRGetXMLResult + 1
15663} DISPID_SpeechXMLRecoResult;
15664typedef enum DISPID_SpeechRecoResult2 {
15665 DISPID_SRRSetTextFeedback = DISPID_SRRGetXMLErrorInfo + 1
15666} DISPID_SpeechRecoResult2;
15667typedef enum DISPID_SpeechPhraseBuilder {
15668 DISPID_SPPBRestorePhraseFromMemory = 1
15669} DISPID_SpeechPhraseBuilder;
15670typedef enum DISPID_SpeechRecoResultTimes {
15671 DISPID_SRRTStreamTime = 1,
15672 DISPID_SRRTLength = 2,
15673 DISPID_SRRTTickCount = 3,
15674 DISPID_SRRTOffsetFromStart = 4
15675} DISPID_SpeechRecoResultTimes;
15676typedef enum DISPID_SpeechPhraseAlternate {
15677 DISPID_SPARecoResult = 1,
15678 DISPID_SPAStartElementInResult = 2,
15679 DISPID_SPANumberOfElementsInResult = 3,
15680 DISPID_SPAPhraseInfo = 4,
15681 DISPID_SPACommit = 5
15682} DISPID_SpeechPhraseAlternate;
15683typedef enum DISPID_SpeechPhraseAlternates {
15684 DISPID_SPAsCount = 1,
15685 DISPID_SPAsItem = DISPID_VALUE,
15686 DISPID_SPAs_NewEnum = DISPID_NEWENUM
15687} DISPID_SpeechPhraseAlternates;
15688typedef enum DISPID_SpeechPhraseInfo {
15689 DISPID_SPILanguageId = 1,
15690 DISPID_SPIGrammarId = 2,
15691 DISPID_SPIStartTime = 3,
15692 DISPID_SPIAudioStreamPosition = 4,
15693 DISPID_SPIAudioSizeBytes = 5,
15694 DISPID_SPIRetainedSizeBytes = 6,
15695 DISPID_SPIAudioSizeTime = 7,
15696 DISPID_SPIRule = 8,
15697 DISPID_SPIProperties = 9,
15698 DISPID_SPIElements = 10,
15699 DISPID_SPIReplacements = 11,
15700 DISPID_SPIEngineId = 12,
15701 DISPID_SPIEnginePrivateData = 13,
15702 DISPID_SPISaveToMemory = 14,
15703 DISPID_SPIGetText = 15,
15704 DISPID_SPIGetDisplayAttributes = 16
15705} DISPID_SpeechPhraseInfo;
15706typedef enum DISPID_SpeechPhraseElement {
15707 DISPID_SPEAudioTimeOffset = 1,
15708 DISPID_SPEAudioSizeTime = 2,
15709 DISPID_SPEAudioStreamOffset = 3,
15710 DISPID_SPEAudioSizeBytes = 4,
15711 DISPID_SPERetainedStreamOffset = 5,
15712 DISPID_SPERetainedSizeBytes = 6,
15713 DISPID_SPEDisplayText = 7,
15714 DISPID_SPELexicalForm = 8,
15715 DISPID_SPEPronunciation = 9,
15716 DISPID_SPEDisplayAttributes = 10,
15717 DISPID_SPERequiredConfidence = 11,
15718 DISPID_SPEActualConfidence = 12,
15719 DISPID_SPEEngineConfidence = 13
15720} DISPID_SpeechPhraseElement;
15721typedef enum SpeechEngineConfidence {
15722 SECLowConfidence = -1,
15723 SECNormalConfidence = 0,
15724 SECHighConfidence = 1
15725} SpeechEngineConfidence;
15726typedef enum DISPID_SpeechPhraseElements {
15727 DISPID_SPEsCount = 1,
15728 DISPID_SPEsItem = DISPID_VALUE,
15729 DISPID_SPEs_NewEnum = DISPID_NEWENUM
15730} DISPID_SpeechPhraseElements;
15731typedef enum DISPID_SpeechPhraseReplacement {
15732 DISPID_SPRDisplayAttributes = 1,
15733 DISPID_SPRText = 2,
15734 DISPID_SPRFirstElement = 3,
15735 DISPID_SPRNumberOfElements = 4
15736} DISPID_SpeechPhraseReplacement;
15737typedef enum DISPID_SpeechPhraseReplacements {
15738 DISPID_SPRsCount = 1,
15739 DISPID_SPRsItem = DISPID_VALUE,
15740 DISPID_SPRs_NewEnum = DISPID_NEWENUM
15741} DISPID_SpeechPhraseReplacements;
15742typedef enum DISPID_SpeechPhraseProperty {
15743 DISPID_SPPName = 1,
15744 DISPID_SPPId = 2,
15745 DISPID_SPPValue = 3,
15746 DISPID_SPPFirstElement = 4,
15747 DISPID_SPPNumberOfElements = 5,
15748 DISPID_SPPEngineConfidence = 6,
15749 DISPID_SPPConfidence = 7,
15750 DISPID_SPPParent = 8,
15751 DISPID_SPPChildren = 9
15752} DISPID_SpeechPhraseProperty;
15753typedef enum DISPID_SpeechPhraseProperties {
15754 DISPID_SPPsCount = 1,
15755 DISPID_SPPsItem = DISPID_VALUE,
15756 DISPID_SPPs_NewEnum = DISPID_NEWENUM
15757} DISPID_SpeechPhraseProperties;
15758typedef enum DISPID_SpeechPhraseRule {
15759 DISPID_SPRuleName = 1,
15760 DISPID_SPRuleId = 2,
15761 DISPID_SPRuleFirstElement = 3,
15762 DISPID_SPRuleNumberOfElements = 4,
15763 DISPID_SPRuleParent = 5,
15764 DISPID_SPRuleChildren = 6,
15765 DISPID_SPRuleConfidence = 7,
15766 DISPID_SPRuleEngineConfidence = 8
15767} DISPID_SpeechPhraseRule;
15768typedef enum DISPID_SpeechPhraseRules {
15769 DISPID_SPRulesCount = 1,
15770 DISPID_SPRulesItem = DISPID_VALUE,
15771 DISPID_SPRules_NewEnum = DISPID_NEWENUM
15772} DISPID_SpeechPhraseRules;
15773typedef enum DISPID_SpeechLexicon {
15774 DISPID_SLGenerationId = 1,
15775 DISPID_SLGetWords = 2,
15776 DISPID_SLAddPronunciation = 3,
15777 DISPID_SLAddPronunciationByPhoneIds = 4,
15778 DISPID_SLRemovePronunciation = 5,
15779 DISPID_SLRemovePronunciationByPhoneIds = 6,
15780 DISPID_SLGetPronunciations = 7,
15781 DISPID_SLGetGenerationChange = 8
15782} DISPID_SpeechLexicon;
15783typedef enum SpeechLexiconType {
15784 SLTUser = eLEXTYPE_USER,
15785 SLTApp = eLEXTYPE_APP
15786} SpeechLexiconType;
15787typedef enum SpeechPartOfSpeech {
15788 SPSNotOverriden = SPPS_NotOverriden,
15789 SPSUnknown = SPPS_Unknown,
15790 SPSNoun = SPPS_Noun,
15791 SPSVerb = SPPS_Verb,
15792 SPSModifier = SPPS_Modifier,
15793 SPSFunction = SPPS_Function,
15794 SPSInterjection = SPPS_Interjection,
15795 SPSLMA = SPPS_LMA,
15796 SPSSuppressWord = SPPS_SuppressWord
15797} SpeechPartOfSpeech;
15798typedef enum DISPID_SpeechLexiconWords {
15799 DISPID_SLWsCount = 1,
15800 DISPID_SLWsItem = DISPID_VALUE,
15801 DISPID_SLWs_NewEnum = DISPID_NEWENUM
15802} DISPID_SpeechLexiconWords;
15803typedef enum SpeechWordType {
15804 SWTAdded = eWORDTYPE_ADDED,
15805 SWTDeleted = eWORDTYPE_DELETED
15806} SpeechWordType;
15807typedef enum DISPID_SpeechLexiconWord {
15808 DISPID_SLWLangId = 1,
15809 DISPID_SLWType = 2,
15810 DISPID_SLWWord = 3,
15811 DISPID_SLWPronunciations = 4
15812} DISPID_SpeechLexiconWord;
15813typedef enum DISPID_SpeechLexiconProns {
15814 DISPID_SLPsCount = 1,
15815 DISPID_SLPsItem = DISPID_VALUE,
15816 DISPID_SLPs_NewEnum = DISPID_NEWENUM
15817} DISPID_SpeechLexiconProns;
15818typedef enum DISPID_SpeechLexiconPronunciation {
15819 DISPID_SLPType = 1,
15820 DISPID_SLPLangId = 2,
15821 DISPID_SLPPartOfSpeech = 3,
15822 DISPID_SLPPhoneIds = 4,
15823 DISPID_SLPSymbolic = 5
15824} DISPID_SpeechLexiconPronunciation;
15825typedef enum DISPID_SpeechPhoneConverter {
15826 DISPID_SPCLangId = 1,
15827 DISPID_SPCPhoneToId = 2,
15828 DISPID_SPCIdToPhone = 3
15829} DISPID_SpeechPhoneConverter;
15830/*****************************************************************************
15831 * _ISpeechVoiceEvents dispinterface
15832 */
15833#ifndef ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__
15834#define ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__
15835
15836DEFINE_GUID(DIID__ISpeechVoiceEvents, 0xa372acd1, 0x3bef, 0x4bbd, 0x8f,0xfb, 0xcb,0x3e,0x2b,0x41,0x6a,0xf8);
15837#if defined(__cplusplus) && !defined(CINTERFACE)
15838MIDL_INTERFACE("a372acd1-3bef-4bbd-8ffb-cb3e2b416af8")
15839_ISpeechVoiceEvents : public IDispatch
15840{
15841};
15842#ifdef __CRT_UUID_DECL
15843__CRT_UUID_DECL(_ISpeechVoiceEvents, 0xa372acd1, 0x3bef, 0x4bbd, 0x8f,0xfb, 0xcb,0x3e,0x2b,0x41,0x6a,0xf8)
15844#endif
15845#else
15846typedef struct _ISpeechVoiceEventsVtbl {
15847 BEGIN_INTERFACE
15848
15849 /*** IUnknown methods ***/
15850 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15851 _ISpeechVoiceEvents *This,
15852 REFIID riid,
15853 void **ppvObject);
15854
15855 ULONG (STDMETHODCALLTYPE *AddRef)(
15856 _ISpeechVoiceEvents *This);
15857
15858 ULONG (STDMETHODCALLTYPE *Release)(
15859 _ISpeechVoiceEvents *This);
15860
15861 /*** IDispatch methods ***/
15862 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
15863 _ISpeechVoiceEvents *This,
15864 UINT *pctinfo);
15865
15866 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
15867 _ISpeechVoiceEvents *This,
15868 UINT iTInfo,
15869 LCID lcid,
15870 ITypeInfo **ppTInfo);
15871
15872 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
15873 _ISpeechVoiceEvents *This,
15874 REFIID riid,
15875 LPOLESTR *rgszNames,
15876 UINT cNames,
15877 LCID lcid,
15878 DISPID *rgDispId);
15879
15880 HRESULT (STDMETHODCALLTYPE *Invoke)(
15881 _ISpeechVoiceEvents *This,
15882 DISPID dispIdMember,
15883 REFIID riid,
15884 LCID lcid,
15885 WORD wFlags,
15886 DISPPARAMS *pDispParams,
15887 VARIANT *pVarResult,
15888 EXCEPINFO *pExcepInfo,
15889 UINT *puArgErr);
15890
15891 END_INTERFACE
15892} _ISpeechVoiceEventsVtbl;
15893
15894interface _ISpeechVoiceEvents {
15895 CONST_VTBL _ISpeechVoiceEventsVtbl* lpVtbl;
15896};
15897
15898#ifdef COBJMACROS
15899#ifndef WIDL_C_INLINE_WRAPPERS
15900/*** IUnknown methods ***/
15901#define _ISpeechVoiceEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15902#define _ISpeechVoiceEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
15903#define _ISpeechVoiceEvents_Release(This) (This)->lpVtbl->Release(This)
15904/*** IDispatch methods ***/
15905#define _ISpeechVoiceEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
15906#define _ISpeechVoiceEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
15907#define _ISpeechVoiceEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
15908#define _ISpeechVoiceEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
15909#else
15910/*** IUnknown methods ***/
15911static inline HRESULT _ISpeechVoiceEvents_QueryInterface(_ISpeechVoiceEvents* This,REFIID riid,void **ppvObject) {
15912 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15913}
15914static inline ULONG _ISpeechVoiceEvents_AddRef(_ISpeechVoiceEvents* This) {
15915 return This->lpVtbl->AddRef(This);
15916}
15917static inline ULONG _ISpeechVoiceEvents_Release(_ISpeechVoiceEvents* This) {
15918 return This->lpVtbl->Release(This);
15919}
15920/*** IDispatch methods ***/
15921static inline HRESULT _ISpeechVoiceEvents_GetTypeInfoCount(_ISpeechVoiceEvents* This,UINT *pctinfo) {
15922 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
15923}
15924static inline HRESULT _ISpeechVoiceEvents_GetTypeInfo(_ISpeechVoiceEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
15925 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
15926}
15927static inline HRESULT _ISpeechVoiceEvents_GetIDsOfNames(_ISpeechVoiceEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
15928 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
15929}
15930static inline HRESULT _ISpeechVoiceEvents_Invoke(_ISpeechVoiceEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
15931 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
15932}
15933#endif
15934#endif
15935
15936#endif
15937
15938#endif /* ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__ */
15939
15940/*****************************************************************************
15941 * ISpeechRecognizer interface
15942 */
15943#ifndef __ISpeechRecognizer_INTERFACE_DEFINED__
15944#define __ISpeechRecognizer_INTERFACE_DEFINED__
15945
15946DEFINE_GUID(IID_ISpeechRecognizer, 0x2d5f1c0c, 0xbd75, 0x4b08, 0x94,0x78, 0x3b,0x11,0xfe,0xa2,0x58,0x6c);
15947#if defined(__cplusplus) && !defined(CINTERFACE)
15948MIDL_INTERFACE("2d5f1c0c-bd75-4b08-9478-3b11fea2586c")
15949ISpeechRecognizer : public IDispatch
15950{
15951 virtual HRESULT STDMETHODCALLTYPE putref_Recognizer(
15952 ISpeechObjectToken *Recognizer) = 0;
15953
15954 virtual HRESULT STDMETHODCALLTYPE get_Recognizer(
15955 ISpeechObjectToken **Recognizer) = 0;
15956
15957 virtual HRESULT STDMETHODCALLTYPE put_AllowAudioInputFormatChangesOnNextSet(
15958 VARIANT_BOOL Allow) = 0;
15959
15960 virtual HRESULT STDMETHODCALLTYPE get_AllowAudioInputFormatChangesOnNextSet(
15961 VARIANT_BOOL *Allow) = 0;
15962
15963 virtual HRESULT STDMETHODCALLTYPE putref_AudioInput(
15964 ISpeechObjectToken *AudioInput = 0) = 0;
15965
15966 virtual HRESULT STDMETHODCALLTYPE get_AudioInput(
15967 ISpeechObjectToken **AudioInput) = 0;
15968
15969 virtual HRESULT STDMETHODCALLTYPE putref_AudioInputStream(
15970 ISpeechBaseStream *AudioInputStream = 0) = 0;
15971
15972 virtual HRESULT STDMETHODCALLTYPE get_AudioInputStream(
15973 ISpeechBaseStream **AudioInputStream) = 0;
15974
15975 virtual HRESULT STDMETHODCALLTYPE get_IsShared(
15976 VARIANT_BOOL *Shared) = 0;
15977
15978 virtual HRESULT STDMETHODCALLTYPE put_State(
15979 SpeechRecognizerState State) = 0;
15980
15981 virtual HRESULT STDMETHODCALLTYPE get_State(
15982 SpeechRecognizerState *State) = 0;
15983
15984 virtual HRESULT STDMETHODCALLTYPE get_Status(
15985 ISpeechRecognizerStatus **Status) = 0;
15986
15987 virtual HRESULT STDMETHODCALLTYPE putref_Profile(
15988 ISpeechObjectToken *Profile = 0) = 0;
15989
15990 virtual HRESULT STDMETHODCALLTYPE get_Profile(
15991 ISpeechObjectToken **Profile) = 0;
15992
15993 virtual HRESULT STDMETHODCALLTYPE EmulateRecognition(
15994 VARIANT TextElements,
15995 VARIANT *ElementDisplayAttributes = 0,
15996 LONG LanguageId = 0) = 0;
15997
15998 virtual HRESULT STDMETHODCALLTYPE CreateRecoContext(
15999 ISpeechRecoContext **NewContext) = 0;
16000
16001 virtual HRESULT STDMETHODCALLTYPE GetFormat(
16002 SpeechFormatType Type,
16003 ISpeechAudioFormat **Format) = 0;
16004
16005 virtual HRESULT STDMETHODCALLTYPE SetPropertyNumber(
16006 const BSTR Name,
16007 LONG Value,
16008 VARIANT_BOOL *Supported) = 0;
16009
16010 virtual HRESULT STDMETHODCALLTYPE GetPropertyNumber(
16011 const BSTR Name,
16012 LONG *Value,
16013 VARIANT_BOOL *Supported) = 0;
16014
16015 virtual HRESULT STDMETHODCALLTYPE SetPropertyString(
16016 const BSTR Name,
16017 const BSTR Value,
16018 VARIANT_BOOL *Supported) = 0;
16019
16020 virtual HRESULT STDMETHODCALLTYPE GetPropertyString(
16021 const BSTR Name,
16022 BSTR *Value,
16023 VARIANT_BOOL *Supported) = 0;
16024
16025 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
16026 const BSTR TypeOfUI,
16027 const VARIANT *ExtraData,
16028 VARIANT_BOOL *Supported) = 0;
16029
16030 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
16031 LONG hWndParent,
16032 BSTR Title,
16033 const BSTR TypeOfUI,
16034 const VARIANT *ExtraData = 0) = 0;
16035
16036 virtual HRESULT STDMETHODCALLTYPE GetRecognizers(
16037 BSTR RequiredAttributes,
16038 BSTR OptionalAttributes,
16039 ISpeechObjectTokens **ObjectTokens) = 0;
16040
16041 virtual HRESULT STDMETHODCALLTYPE GetAudioInputs(
16042 BSTR RequiredAttributes,
16043 BSTR OptionalAttributes,
16044 ISpeechObjectTokens **ObjectTokens) = 0;
16045
16046 virtual HRESULT STDMETHODCALLTYPE GetProfiles(
16047 BSTR RequiredAttributes,
16048 BSTR OptionalAttributes,
16049 ISpeechObjectTokens **ObjectTokens) = 0;
16050
16051};
16052#ifdef __CRT_UUID_DECL
16053__CRT_UUID_DECL(ISpeechRecognizer, 0x2d5f1c0c, 0xbd75, 0x4b08, 0x94,0x78, 0x3b,0x11,0xfe,0xa2,0x58,0x6c)
16054#endif
16055#else
16056typedef struct ISpeechRecognizerVtbl {
16057 BEGIN_INTERFACE
16058
16059 /*** IUnknown methods ***/
16060 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16061 ISpeechRecognizer *This,
16062 REFIID riid,
16063 void **ppvObject);
16064
16065 ULONG (STDMETHODCALLTYPE *AddRef)(
16066 ISpeechRecognizer *This);
16067
16068 ULONG (STDMETHODCALLTYPE *Release)(
16069 ISpeechRecognizer *This);
16070
16071 /*** IDispatch methods ***/
16072 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16073 ISpeechRecognizer *This,
16074 UINT *pctinfo);
16075
16076 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16077 ISpeechRecognizer *This,
16078 UINT iTInfo,
16079 LCID lcid,
16080 ITypeInfo **ppTInfo);
16081
16082 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16083 ISpeechRecognizer *This,
16084 REFIID riid,
16085 LPOLESTR *rgszNames,
16086 UINT cNames,
16087 LCID lcid,
16088 DISPID *rgDispId);
16089
16090 HRESULT (STDMETHODCALLTYPE *Invoke)(
16091 ISpeechRecognizer *This,
16092 DISPID dispIdMember,
16093 REFIID riid,
16094 LCID lcid,
16095 WORD wFlags,
16096 DISPPARAMS *pDispParams,
16097 VARIANT *pVarResult,
16098 EXCEPINFO *pExcepInfo,
16099 UINT *puArgErr);
16100
16101 /*** ISpeechRecognizer methods ***/
16102 HRESULT (STDMETHODCALLTYPE *putref_Recognizer)(
16103 ISpeechRecognizer *This,
16104 ISpeechObjectToken *Recognizer);
16105
16106 HRESULT (STDMETHODCALLTYPE *get_Recognizer)(
16107 ISpeechRecognizer *This,
16108 ISpeechObjectToken **Recognizer);
16109
16110 HRESULT (STDMETHODCALLTYPE *put_AllowAudioInputFormatChangesOnNextSet)(
16111 ISpeechRecognizer *This,
16112 VARIANT_BOOL Allow);
16113
16114 HRESULT (STDMETHODCALLTYPE *get_AllowAudioInputFormatChangesOnNextSet)(
16115 ISpeechRecognizer *This,
16116 VARIANT_BOOL *Allow);
16117
16118 HRESULT (STDMETHODCALLTYPE *putref_AudioInput)(
16119 ISpeechRecognizer *This,
16120 ISpeechObjectToken *AudioInput);
16121
16122 HRESULT (STDMETHODCALLTYPE *get_AudioInput)(
16123 ISpeechRecognizer *This,
16124 ISpeechObjectToken **AudioInput);
16125
16126 HRESULT (STDMETHODCALLTYPE *putref_AudioInputStream)(
16127 ISpeechRecognizer *This,
16128 ISpeechBaseStream *AudioInputStream);
16129
16130 HRESULT (STDMETHODCALLTYPE *get_AudioInputStream)(
16131 ISpeechRecognizer *This,
16132 ISpeechBaseStream **AudioInputStream);
16133
16134 HRESULT (STDMETHODCALLTYPE *get_IsShared)(
16135 ISpeechRecognizer *This,
16136 VARIANT_BOOL *Shared);
16137
16138 HRESULT (STDMETHODCALLTYPE *put_State)(
16139 ISpeechRecognizer *This,
16140 SpeechRecognizerState State);
16141
16142 HRESULT (STDMETHODCALLTYPE *get_State)(
16143 ISpeechRecognizer *This,
16144 SpeechRecognizerState *State);
16145
16146 HRESULT (STDMETHODCALLTYPE *get_Status)(
16147 ISpeechRecognizer *This,
16148 ISpeechRecognizerStatus **Status);
16149
16150 HRESULT (STDMETHODCALLTYPE *putref_Profile)(
16151 ISpeechRecognizer *This,
16152 ISpeechObjectToken *Profile);
16153
16154 HRESULT (STDMETHODCALLTYPE *get_Profile)(
16155 ISpeechRecognizer *This,
16156 ISpeechObjectToken **Profile);
16157
16158 HRESULT (STDMETHODCALLTYPE *EmulateRecognition)(
16159 ISpeechRecognizer *This,
16160 VARIANT TextElements,
16161 VARIANT *ElementDisplayAttributes,
16162 LONG LanguageId);
16163
16164 HRESULT (STDMETHODCALLTYPE *CreateRecoContext)(
16165 ISpeechRecognizer *This,
16166 ISpeechRecoContext **NewContext);
16167
16168 HRESULT (STDMETHODCALLTYPE *GetFormat)(
16169 ISpeechRecognizer *This,
16170 SpeechFormatType Type,
16171 ISpeechAudioFormat **Format);
16172
16173 HRESULT (STDMETHODCALLTYPE *SetPropertyNumber)(
16174 ISpeechRecognizer *This,
16175 const BSTR Name,
16176 LONG Value,
16177 VARIANT_BOOL *Supported);
16178
16179 HRESULT (STDMETHODCALLTYPE *GetPropertyNumber)(
16180 ISpeechRecognizer *This,
16181 const BSTR Name,
16182 LONG *Value,
16183 VARIANT_BOOL *Supported);
16184
16185 HRESULT (STDMETHODCALLTYPE *SetPropertyString)(
16186 ISpeechRecognizer *This,
16187 const BSTR Name,
16188 const BSTR Value,
16189 VARIANT_BOOL *Supported);
16190
16191 HRESULT (STDMETHODCALLTYPE *GetPropertyString)(
16192 ISpeechRecognizer *This,
16193 const BSTR Name,
16194 BSTR *Value,
16195 VARIANT_BOOL *Supported);
16196
16197 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
16198 ISpeechRecognizer *This,
16199 const BSTR TypeOfUI,
16200 const VARIANT *ExtraData,
16201 VARIANT_BOOL *Supported);
16202
16203 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
16204 ISpeechRecognizer *This,
16205 LONG hWndParent,
16206 BSTR Title,
16207 const BSTR TypeOfUI,
16208 const VARIANT *ExtraData);
16209
16210 HRESULT (STDMETHODCALLTYPE *GetRecognizers)(
16211 ISpeechRecognizer *This,
16212 BSTR RequiredAttributes,
16213 BSTR OptionalAttributes,
16214 ISpeechObjectTokens **ObjectTokens);
16215
16216 HRESULT (STDMETHODCALLTYPE *GetAudioInputs)(
16217 ISpeechRecognizer *This,
16218 BSTR RequiredAttributes,
16219 BSTR OptionalAttributes,
16220 ISpeechObjectTokens **ObjectTokens);
16221
16222 HRESULT (STDMETHODCALLTYPE *GetProfiles)(
16223 ISpeechRecognizer *This,
16224 BSTR RequiredAttributes,
16225 BSTR OptionalAttributes,
16226 ISpeechObjectTokens **ObjectTokens);
16227
16228 END_INTERFACE
16229} ISpeechRecognizerVtbl;
16230
16231interface ISpeechRecognizer {
16232 CONST_VTBL ISpeechRecognizerVtbl* lpVtbl;
16233};
16234
16235#ifdef COBJMACROS
16236#ifndef WIDL_C_INLINE_WRAPPERS
16237/*** IUnknown methods ***/
16238#define ISpeechRecognizer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16239#define ISpeechRecognizer_AddRef(This) (This)->lpVtbl->AddRef(This)
16240#define ISpeechRecognizer_Release(This) (This)->lpVtbl->Release(This)
16241/*** IDispatch methods ***/
16242#define ISpeechRecognizer_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16243#define ISpeechRecognizer_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16244#define ISpeechRecognizer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16245#define ISpeechRecognizer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16246/*** ISpeechRecognizer methods ***/
16247#define ISpeechRecognizer_putref_Recognizer(This,Recognizer) (This)->lpVtbl->putref_Recognizer(This,Recognizer)
16248#define ISpeechRecognizer_get_Recognizer(This,Recognizer) (This)->lpVtbl->get_Recognizer(This,Recognizer)
16249#define ISpeechRecognizer_put_AllowAudioInputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->put_AllowAudioInputFormatChangesOnNextSet(This,Allow)
16250#define ISpeechRecognizer_get_AllowAudioInputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->get_AllowAudioInputFormatChangesOnNextSet(This,Allow)
16251#define ISpeechRecognizer_putref_AudioInput(This,AudioInput) (This)->lpVtbl->putref_AudioInput(This,AudioInput)
16252#define ISpeechRecognizer_get_AudioInput(This,AudioInput) (This)->lpVtbl->get_AudioInput(This,AudioInput)
16253#define ISpeechRecognizer_putref_AudioInputStream(This,AudioInputStream) (This)->lpVtbl->putref_AudioInputStream(This,AudioInputStream)
16254#define ISpeechRecognizer_get_AudioInputStream(This,AudioInputStream) (This)->lpVtbl->get_AudioInputStream(This,AudioInputStream)
16255#define ISpeechRecognizer_get_IsShared(This,Shared) (This)->lpVtbl->get_IsShared(This,Shared)
16256#define ISpeechRecognizer_put_State(This,State) (This)->lpVtbl->put_State(This,State)
16257#define ISpeechRecognizer_get_State(This,State) (This)->lpVtbl->get_State(This,State)
16258#define ISpeechRecognizer_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
16259#define ISpeechRecognizer_putref_Profile(This,Profile) (This)->lpVtbl->putref_Profile(This,Profile)
16260#define ISpeechRecognizer_get_Profile(This,Profile) (This)->lpVtbl->get_Profile(This,Profile)
16261#define ISpeechRecognizer_EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId) (This)->lpVtbl->EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId)
16262#define ISpeechRecognizer_CreateRecoContext(This,NewContext) (This)->lpVtbl->CreateRecoContext(This,NewContext)
16263#define ISpeechRecognizer_GetFormat(This,Type,Format) (This)->lpVtbl->GetFormat(This,Type,Format)
16264#define ISpeechRecognizer_SetPropertyNumber(This,Name,Value,Supported) (This)->lpVtbl->SetPropertyNumber(This,Name,Value,Supported)
16265#define ISpeechRecognizer_GetPropertyNumber(This,Name,Value,Supported) (This)->lpVtbl->GetPropertyNumber(This,Name,Value,Supported)
16266#define ISpeechRecognizer_SetPropertyString(This,Name,Value,Supported) (This)->lpVtbl->SetPropertyString(This,Name,Value,Supported)
16267#define ISpeechRecognizer_GetPropertyString(This,Name,Value,Supported) (This)->lpVtbl->GetPropertyString(This,Name,Value,Supported)
16268#define ISpeechRecognizer_IsUISupported(This,TypeOfUI,ExtraData,Supported) (This)->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported)
16269#define ISpeechRecognizer_DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData) (This)->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
16270#define ISpeechRecognizer_GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
16271#define ISpeechRecognizer_GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
16272#define ISpeechRecognizer_GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
16273#else
16274/*** IUnknown methods ***/
16275static inline HRESULT ISpeechRecognizer_QueryInterface(ISpeechRecognizer* This,REFIID riid,void **ppvObject) {
16276 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16277}
16278static inline ULONG ISpeechRecognizer_AddRef(ISpeechRecognizer* This) {
16279 return This->lpVtbl->AddRef(This);
16280}
16281static inline ULONG ISpeechRecognizer_Release(ISpeechRecognizer* This) {
16282 return This->lpVtbl->Release(This);
16283}
16284/*** IDispatch methods ***/
16285static inline HRESULT ISpeechRecognizer_GetTypeInfoCount(ISpeechRecognizer* This,UINT *pctinfo) {
16286 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16287}
16288static inline HRESULT ISpeechRecognizer_GetTypeInfo(ISpeechRecognizer* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16289 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16290}
16291static inline HRESULT ISpeechRecognizer_GetIDsOfNames(ISpeechRecognizer* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16292 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16293}
16294static inline HRESULT ISpeechRecognizer_Invoke(ISpeechRecognizer* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16295 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16296}
16297/*** ISpeechRecognizer methods ***/
16298static inline HRESULT ISpeechRecognizer_putref_Recognizer(ISpeechRecognizer* This,ISpeechObjectToken *Recognizer) {
16299 return This->lpVtbl->putref_Recognizer(This,Recognizer);
16300}
16301static inline HRESULT ISpeechRecognizer_get_Recognizer(ISpeechRecognizer* This,ISpeechObjectToken **Recognizer) {
16302 return This->lpVtbl->get_Recognizer(This,Recognizer);
16303}
16304static inline HRESULT ISpeechRecognizer_put_AllowAudioInputFormatChangesOnNextSet(ISpeechRecognizer* This,VARIANT_BOOL Allow) {
16305 return This->lpVtbl->put_AllowAudioInputFormatChangesOnNextSet(This,Allow);
16306}
16307static inline HRESULT ISpeechRecognizer_get_AllowAudioInputFormatChangesOnNextSet(ISpeechRecognizer* This,VARIANT_BOOL *Allow) {
16308 return This->lpVtbl->get_AllowAudioInputFormatChangesOnNextSet(This,Allow);
16309}
16310static inline HRESULT ISpeechRecognizer_putref_AudioInput(ISpeechRecognizer* This,ISpeechObjectToken *AudioInput) {
16311 return This->lpVtbl->putref_AudioInput(This,AudioInput);
16312}
16313static inline HRESULT ISpeechRecognizer_get_AudioInput(ISpeechRecognizer* This,ISpeechObjectToken **AudioInput) {
16314 return This->lpVtbl->get_AudioInput(This,AudioInput);
16315}
16316static inline HRESULT ISpeechRecognizer_putref_AudioInputStream(ISpeechRecognizer* This,ISpeechBaseStream *AudioInputStream) {
16317 return This->lpVtbl->putref_AudioInputStream(This,AudioInputStream);
16318}
16319static inline HRESULT ISpeechRecognizer_get_AudioInputStream(ISpeechRecognizer* This,ISpeechBaseStream **AudioInputStream) {
16320 return This->lpVtbl->get_AudioInputStream(This,AudioInputStream);
16321}
16322static inline HRESULT ISpeechRecognizer_get_IsShared(ISpeechRecognizer* This,VARIANT_BOOL *Shared) {
16323 return This->lpVtbl->get_IsShared(This,Shared);
16324}
16325static inline HRESULT ISpeechRecognizer_put_State(ISpeechRecognizer* This,SpeechRecognizerState State) {
16326 return This->lpVtbl->put_State(This,State);
16327}
16328static inline HRESULT ISpeechRecognizer_get_State(ISpeechRecognizer* This,SpeechRecognizerState *State) {
16329 return This->lpVtbl->get_State(This,State);
16330}
16331static inline HRESULT ISpeechRecognizer_get_Status(ISpeechRecognizer* This,ISpeechRecognizerStatus **Status) {
16332 return This->lpVtbl->get_Status(This,Status);
16333}
16334static inline HRESULT ISpeechRecognizer_putref_Profile(ISpeechRecognizer* This,ISpeechObjectToken *Profile) {
16335 return This->lpVtbl->putref_Profile(This,Profile);
16336}
16337static inline HRESULT ISpeechRecognizer_get_Profile(ISpeechRecognizer* This,ISpeechObjectToken **Profile) {
16338 return This->lpVtbl->get_Profile(This,Profile);
16339}
16340static inline HRESULT ISpeechRecognizer_EmulateRecognition(ISpeechRecognizer* This,VARIANT TextElements,VARIANT *ElementDisplayAttributes,LONG LanguageId) {
16341 return This->lpVtbl->EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId);
16342}
16343static inline HRESULT ISpeechRecognizer_CreateRecoContext(ISpeechRecognizer* This,ISpeechRecoContext **NewContext) {
16344 return This->lpVtbl->CreateRecoContext(This,NewContext);
16345}
16346static inline HRESULT ISpeechRecognizer_GetFormat(ISpeechRecognizer* This,SpeechFormatType Type,ISpeechAudioFormat **Format) {
16347 return This->lpVtbl->GetFormat(This,Type,Format);
16348}
16349static inline HRESULT ISpeechRecognizer_SetPropertyNumber(ISpeechRecognizer* This,const BSTR Name,LONG Value,VARIANT_BOOL *Supported) {
16350 return This->lpVtbl->SetPropertyNumber(This,Name,Value,Supported);
16351}
16352static inline HRESULT ISpeechRecognizer_GetPropertyNumber(ISpeechRecognizer* This,const BSTR Name,LONG *Value,VARIANT_BOOL *Supported) {
16353 return This->lpVtbl->GetPropertyNumber(This,Name,Value,Supported);
16354}
16355static inline HRESULT ISpeechRecognizer_SetPropertyString(ISpeechRecognizer* This,const BSTR Name,const BSTR Value,VARIANT_BOOL *Supported) {
16356 return This->lpVtbl->SetPropertyString(This,Name,Value,Supported);
16357}
16358static inline HRESULT ISpeechRecognizer_GetPropertyString(ISpeechRecognizer* This,const BSTR Name,BSTR *Value,VARIANT_BOOL *Supported) {
16359 return This->lpVtbl->GetPropertyString(This,Name,Value,Supported);
16360}
16361static inline HRESULT ISpeechRecognizer_IsUISupported(ISpeechRecognizer* This,const BSTR TypeOfUI,const VARIANT *ExtraData,VARIANT_BOOL *Supported) {
16362 return This->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported);
16363}
16364static inline HRESULT ISpeechRecognizer_DisplayUI(ISpeechRecognizer* This,LONG hWndParent,BSTR Title,const BSTR TypeOfUI,const VARIANT *ExtraData) {
16365 return This->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData);
16366}
16367static inline HRESULT ISpeechRecognizer_GetRecognizers(ISpeechRecognizer* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
16368 return This->lpVtbl->GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
16369}
16370static inline HRESULT ISpeechRecognizer_GetAudioInputs(ISpeechRecognizer* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
16371 return This->lpVtbl->GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
16372}
16373static inline HRESULT ISpeechRecognizer_GetProfiles(ISpeechRecognizer* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
16374 return This->lpVtbl->GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
16375}
16376#endif
16377#endif
16378
16379#endif
16380
16381
16382#endif /* __ISpeechRecognizer_INTERFACE_DEFINED__ */
16383
16384/*****************************************************************************
16385 * ISpeechRecognizerStatus interface
16386 */
16387#ifndef __ISpeechRecognizerStatus_INTERFACE_DEFINED__
16388#define __ISpeechRecognizerStatus_INTERFACE_DEFINED__
16389
16390DEFINE_GUID(IID_ISpeechRecognizerStatus, 0xbff9e781, 0x53ec, 0x484e, 0xbb,0x8a, 0x0e,0x1b,0x55,0x51,0xe3,0x5c);
16391#if defined(__cplusplus) && !defined(CINTERFACE)
16392MIDL_INTERFACE("bff9e781-53ec-484e-bb8a-0e1b5551e35c")
16393ISpeechRecognizerStatus : public IDispatch
16394{
16395 virtual HRESULT STDMETHODCALLTYPE get_AudioStatus(
16396 ISpeechAudioStatus **AudioStatus) = 0;
16397
16398 virtual HRESULT STDMETHODCALLTYPE get_CurrentStreamPosition(
16399 VARIANT *pCurrentStreamPos) = 0;
16400
16401 virtual HRESULT STDMETHODCALLTYPE get_CurrentStreamNumber(
16402 LONG *StreamNumber) = 0;
16403
16404 virtual HRESULT STDMETHODCALLTYPE get_NumberOfActiveRules(
16405 LONG *NumberOfActiveRules) = 0;
16406
16407 virtual HRESULT STDMETHODCALLTYPE get_ClsidEngine(
16408 BSTR *ClsidEngine) = 0;
16409
16410 virtual HRESULT STDMETHODCALLTYPE get_SupportedLanguages(
16411 VARIANT *SupportedLanguages) = 0;
16412
16413};
16414#ifdef __CRT_UUID_DECL
16415__CRT_UUID_DECL(ISpeechRecognizerStatus, 0xbff9e781, 0x53ec, 0x484e, 0xbb,0x8a, 0x0e,0x1b,0x55,0x51,0xe3,0x5c)
16416#endif
16417#else
16418typedef struct ISpeechRecognizerStatusVtbl {
16419 BEGIN_INTERFACE
16420
16421 /*** IUnknown methods ***/
16422 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16423 ISpeechRecognizerStatus *This,
16424 REFIID riid,
16425 void **ppvObject);
16426
16427 ULONG (STDMETHODCALLTYPE *AddRef)(
16428 ISpeechRecognizerStatus *This);
16429
16430 ULONG (STDMETHODCALLTYPE *Release)(
16431 ISpeechRecognizerStatus *This);
16432
16433 /*** IDispatch methods ***/
16434 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16435 ISpeechRecognizerStatus *This,
16436 UINT *pctinfo);
16437
16438 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16439 ISpeechRecognizerStatus *This,
16440 UINT iTInfo,
16441 LCID lcid,
16442 ITypeInfo **ppTInfo);
16443
16444 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16445 ISpeechRecognizerStatus *This,
16446 REFIID riid,
16447 LPOLESTR *rgszNames,
16448 UINT cNames,
16449 LCID lcid,
16450 DISPID *rgDispId);
16451
16452 HRESULT (STDMETHODCALLTYPE *Invoke)(
16453 ISpeechRecognizerStatus *This,
16454 DISPID dispIdMember,
16455 REFIID riid,
16456 LCID lcid,
16457 WORD wFlags,
16458 DISPPARAMS *pDispParams,
16459 VARIANT *pVarResult,
16460 EXCEPINFO *pExcepInfo,
16461 UINT *puArgErr);
16462
16463 /*** ISpeechRecognizerStatus methods ***/
16464 HRESULT (STDMETHODCALLTYPE *get_AudioStatus)(
16465 ISpeechRecognizerStatus *This,
16466 ISpeechAudioStatus **AudioStatus);
16467
16468 HRESULT (STDMETHODCALLTYPE *get_CurrentStreamPosition)(
16469 ISpeechRecognizerStatus *This,
16470 VARIANT *pCurrentStreamPos);
16471
16472 HRESULT (STDMETHODCALLTYPE *get_CurrentStreamNumber)(
16473 ISpeechRecognizerStatus *This,
16474 LONG *StreamNumber);
16475
16476 HRESULT (STDMETHODCALLTYPE *get_NumberOfActiveRules)(
16477 ISpeechRecognizerStatus *This,
16478 LONG *NumberOfActiveRules);
16479
16480 HRESULT (STDMETHODCALLTYPE *get_ClsidEngine)(
16481 ISpeechRecognizerStatus *This,
16482 BSTR *ClsidEngine);
16483
16484 HRESULT (STDMETHODCALLTYPE *get_SupportedLanguages)(
16485 ISpeechRecognizerStatus *This,
16486 VARIANT *SupportedLanguages);
16487
16488 END_INTERFACE
16489} ISpeechRecognizerStatusVtbl;
16490
16491interface ISpeechRecognizerStatus {
16492 CONST_VTBL ISpeechRecognizerStatusVtbl* lpVtbl;
16493};
16494
16495#ifdef COBJMACROS
16496#ifndef WIDL_C_INLINE_WRAPPERS
16497/*** IUnknown methods ***/
16498#define ISpeechRecognizerStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16499#define ISpeechRecognizerStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
16500#define ISpeechRecognizerStatus_Release(This) (This)->lpVtbl->Release(This)
16501/*** IDispatch methods ***/
16502#define ISpeechRecognizerStatus_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16503#define ISpeechRecognizerStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16504#define ISpeechRecognizerStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16505#define ISpeechRecognizerStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16506/*** ISpeechRecognizerStatus methods ***/
16507#define ISpeechRecognizerStatus_get_AudioStatus(This,AudioStatus) (This)->lpVtbl->get_AudioStatus(This,AudioStatus)
16508#define ISpeechRecognizerStatus_get_CurrentStreamPosition(This,pCurrentStreamPos) (This)->lpVtbl->get_CurrentStreamPosition(This,pCurrentStreamPos)
16509#define ISpeechRecognizerStatus_get_CurrentStreamNumber(This,StreamNumber) (This)->lpVtbl->get_CurrentStreamNumber(This,StreamNumber)
16510#define ISpeechRecognizerStatus_get_NumberOfActiveRules(This,NumberOfActiveRules) (This)->lpVtbl->get_NumberOfActiveRules(This,NumberOfActiveRules)
16511#define ISpeechRecognizerStatus_get_ClsidEngine(This,ClsidEngine) (This)->lpVtbl->get_ClsidEngine(This,ClsidEngine)
16512#define ISpeechRecognizerStatus_get_SupportedLanguages(This,SupportedLanguages) (This)->lpVtbl->get_SupportedLanguages(This,SupportedLanguages)
16513#else
16514/*** IUnknown methods ***/
16515static inline HRESULT ISpeechRecognizerStatus_QueryInterface(ISpeechRecognizerStatus* This,REFIID riid,void **ppvObject) {
16516 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16517}
16518static inline ULONG ISpeechRecognizerStatus_AddRef(ISpeechRecognizerStatus* This) {
16519 return This->lpVtbl->AddRef(This);
16520}
16521static inline ULONG ISpeechRecognizerStatus_Release(ISpeechRecognizerStatus* This) {
16522 return This->lpVtbl->Release(This);
16523}
16524/*** IDispatch methods ***/
16525static inline HRESULT ISpeechRecognizerStatus_GetTypeInfoCount(ISpeechRecognizerStatus* This,UINT *pctinfo) {
16526 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16527}
16528static inline HRESULT ISpeechRecognizerStatus_GetTypeInfo(ISpeechRecognizerStatus* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16529 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16530}
16531static inline HRESULT ISpeechRecognizerStatus_GetIDsOfNames(ISpeechRecognizerStatus* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16532 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16533}
16534static inline HRESULT ISpeechRecognizerStatus_Invoke(ISpeechRecognizerStatus* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16535 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16536}
16537/*** ISpeechRecognizerStatus methods ***/
16538static inline HRESULT ISpeechRecognizerStatus_get_AudioStatus(ISpeechRecognizerStatus* This,ISpeechAudioStatus **AudioStatus) {
16539 return This->lpVtbl->get_AudioStatus(This,AudioStatus);
16540}
16541static inline HRESULT ISpeechRecognizerStatus_get_CurrentStreamPosition(ISpeechRecognizerStatus* This,VARIANT *pCurrentStreamPos) {
16542 return This->lpVtbl->get_CurrentStreamPosition(This,pCurrentStreamPos);
16543}
16544static inline HRESULT ISpeechRecognizerStatus_get_CurrentStreamNumber(ISpeechRecognizerStatus* This,LONG *StreamNumber) {
16545 return This->lpVtbl->get_CurrentStreamNumber(This,StreamNumber);
16546}
16547static inline HRESULT ISpeechRecognizerStatus_get_NumberOfActiveRules(ISpeechRecognizerStatus* This,LONG *NumberOfActiveRules) {
16548 return This->lpVtbl->get_NumberOfActiveRules(This,NumberOfActiveRules);
16549}
16550static inline HRESULT ISpeechRecognizerStatus_get_ClsidEngine(ISpeechRecognizerStatus* This,BSTR *ClsidEngine) {
16551 return This->lpVtbl->get_ClsidEngine(This,ClsidEngine);
16552}
16553static inline HRESULT ISpeechRecognizerStatus_get_SupportedLanguages(ISpeechRecognizerStatus* This,VARIANT *SupportedLanguages) {
16554 return This->lpVtbl->get_SupportedLanguages(This,SupportedLanguages);
16555}
16556#endif
16557#endif
16558
16559#endif
16560
16561
16562#endif /* __ISpeechRecognizerStatus_INTERFACE_DEFINED__ */
16563
16564/*****************************************************************************
16565 * ISpeechRecoContext interface
16566 */
16567#ifndef __ISpeechRecoContext_INTERFACE_DEFINED__
16568#define __ISpeechRecoContext_INTERFACE_DEFINED__
16569
16570DEFINE_GUID(IID_ISpeechRecoContext, 0x580aa49d, 0x7e1e, 0x4809, 0xb8,0xe2, 0x57,0xda,0x80,0x61,0x04,0xb8);
16571#if defined(__cplusplus) && !defined(CINTERFACE)
16572MIDL_INTERFACE("580aa49d-7e1e-4809-b8e2-57da806104b8")
16573ISpeechRecoContext : public IDispatch
16574{
16575 virtual HRESULT STDMETHODCALLTYPE get_Recognizer(
16576 ISpeechRecognizer **Recognizer) = 0;
16577
16578 virtual HRESULT STDMETHODCALLTYPE get_AudioInputInterferenceStatus(
16579 SpeechInterference *Interference) = 0;
16580
16581 virtual HRESULT STDMETHODCALLTYPE get_RequestedUIType(
16582 BSTR *UIType) = 0;
16583
16584 virtual HRESULT STDMETHODCALLTYPE putref_Voice(
16585 ISpeechVoice *Voice) = 0;
16586
16587 virtual HRESULT STDMETHODCALLTYPE get_Voice(
16588 ISpeechVoice **Voice) = 0;
16589
16590 virtual HRESULT STDMETHODCALLTYPE put_AllowVoiceFormatMatchingOnNextSet(
16591 VARIANT_BOOL Allow) = 0;
16592
16593 virtual HRESULT STDMETHODCALLTYPE get_AllowVoiceFormatMatchingOnNextSet(
16594 VARIANT_BOOL *pAllow) = 0;
16595
16596 virtual HRESULT STDMETHODCALLTYPE put_VoicePurgeEvent(
16597 SpeechRecoEvents EventInterest) = 0;
16598
16599 virtual HRESULT STDMETHODCALLTYPE get_VoicePurgeEvent(
16600 SpeechRecoEvents *EventInterest) = 0;
16601
16602 virtual HRESULT STDMETHODCALLTYPE put_EventInterests(
16603 SpeechRecoEvents EventInterest) = 0;
16604
16605 virtual HRESULT STDMETHODCALLTYPE get_EventInterests(
16606 SpeechRecoEvents *EventInterest) = 0;
16607
16608 virtual HRESULT STDMETHODCALLTYPE put_CmdMaxAlternates(
16609 LONG MaxAlternates) = 0;
16610
16611 virtual HRESULT STDMETHODCALLTYPE get_CmdMaxAlternates(
16612 LONG *MaxAlternates) = 0;
16613
16614 virtual HRESULT STDMETHODCALLTYPE put_State(
16615 SpeechRecoContextState State) = 0;
16616
16617 virtual HRESULT STDMETHODCALLTYPE get_State(
16618 SpeechRecoContextState *State) = 0;
16619
16620 virtual HRESULT STDMETHODCALLTYPE put_RetainedAudio(
16621 SpeechRetainedAudioOptions Option) = 0;
16622
16623 virtual HRESULT STDMETHODCALLTYPE get_RetainedAudio(
16624 SpeechRetainedAudioOptions *Option) = 0;
16625
16626 virtual HRESULT STDMETHODCALLTYPE putref_RetainedAudioFormat(
16627 ISpeechAudioFormat *Format) = 0;
16628
16629 virtual HRESULT STDMETHODCALLTYPE get_RetainedAudioFormat(
16630 ISpeechAudioFormat **Format) = 0;
16631
16632 virtual HRESULT STDMETHODCALLTYPE Pause(
16633 ) = 0;
16634
16635 virtual HRESULT STDMETHODCALLTYPE Resume(
16636 ) = 0;
16637
16638 virtual HRESULT STDMETHODCALLTYPE CreateGrammar(
16639 VARIANT GrammarId,
16640 ISpeechRecoGrammar **Grammar) = 0;
16641
16642 virtual HRESULT STDMETHODCALLTYPE CreateResultFromMemory(
16643 VARIANT *ResultBlock,
16644 ISpeechRecoResult **Result) = 0;
16645
16646 virtual HRESULT STDMETHODCALLTYPE Bookmark(
16647 SpeechBookmarkOptions Options,
16648 VARIANT StreamPos,
16649 VARIANT BookmarkId) = 0;
16650
16651 virtual HRESULT STDMETHODCALLTYPE SetAdaptationData(
16652 BSTR AdaptationString) = 0;
16653
16654};
16655#ifdef __CRT_UUID_DECL
16656__CRT_UUID_DECL(ISpeechRecoContext, 0x580aa49d, 0x7e1e, 0x4809, 0xb8,0xe2, 0x57,0xda,0x80,0x61,0x04,0xb8)
16657#endif
16658#else
16659typedef struct ISpeechRecoContextVtbl {
16660 BEGIN_INTERFACE
16661
16662 /*** IUnknown methods ***/
16663 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16664 ISpeechRecoContext *This,
16665 REFIID riid,
16666 void **ppvObject);
16667
16668 ULONG (STDMETHODCALLTYPE *AddRef)(
16669 ISpeechRecoContext *This);
16670
16671 ULONG (STDMETHODCALLTYPE *Release)(
16672 ISpeechRecoContext *This);
16673
16674 /*** IDispatch methods ***/
16675 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16676 ISpeechRecoContext *This,
16677 UINT *pctinfo);
16678
16679 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16680 ISpeechRecoContext *This,
16681 UINT iTInfo,
16682 LCID lcid,
16683 ITypeInfo **ppTInfo);
16684
16685 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16686 ISpeechRecoContext *This,
16687 REFIID riid,
16688 LPOLESTR *rgszNames,
16689 UINT cNames,
16690 LCID lcid,
16691 DISPID *rgDispId);
16692
16693 HRESULT (STDMETHODCALLTYPE *Invoke)(
16694 ISpeechRecoContext *This,
16695 DISPID dispIdMember,
16696 REFIID riid,
16697 LCID lcid,
16698 WORD wFlags,
16699 DISPPARAMS *pDispParams,
16700 VARIANT *pVarResult,
16701 EXCEPINFO *pExcepInfo,
16702 UINT *puArgErr);
16703
16704 /*** ISpeechRecoContext methods ***/
16705 HRESULT (STDMETHODCALLTYPE *get_Recognizer)(
16706 ISpeechRecoContext *This,
16707 ISpeechRecognizer **Recognizer);
16708
16709 HRESULT (STDMETHODCALLTYPE *get_AudioInputInterferenceStatus)(
16710 ISpeechRecoContext *This,
16711 SpeechInterference *Interference);
16712
16713 HRESULT (STDMETHODCALLTYPE *get_RequestedUIType)(
16714 ISpeechRecoContext *This,
16715 BSTR *UIType);
16716
16717 HRESULT (STDMETHODCALLTYPE *putref_Voice)(
16718 ISpeechRecoContext *This,
16719 ISpeechVoice *Voice);
16720
16721 HRESULT (STDMETHODCALLTYPE *get_Voice)(
16722 ISpeechRecoContext *This,
16723 ISpeechVoice **Voice);
16724
16725 HRESULT (STDMETHODCALLTYPE *put_AllowVoiceFormatMatchingOnNextSet)(
16726 ISpeechRecoContext *This,
16727 VARIANT_BOOL Allow);
16728
16729 HRESULT (STDMETHODCALLTYPE *get_AllowVoiceFormatMatchingOnNextSet)(
16730 ISpeechRecoContext *This,
16731 VARIANT_BOOL *pAllow);
16732
16733 HRESULT (STDMETHODCALLTYPE *put_VoicePurgeEvent)(
16734 ISpeechRecoContext *This,
16735 SpeechRecoEvents EventInterest);
16736
16737 HRESULT (STDMETHODCALLTYPE *get_VoicePurgeEvent)(
16738 ISpeechRecoContext *This,
16739 SpeechRecoEvents *EventInterest);
16740
16741 HRESULT (STDMETHODCALLTYPE *put_EventInterests)(
16742 ISpeechRecoContext *This,
16743 SpeechRecoEvents EventInterest);
16744
16745 HRESULT (STDMETHODCALLTYPE *get_EventInterests)(
16746 ISpeechRecoContext *This,
16747 SpeechRecoEvents *EventInterest);
16748
16749 HRESULT (STDMETHODCALLTYPE *put_CmdMaxAlternates)(
16750 ISpeechRecoContext *This,
16751 LONG MaxAlternates);
16752
16753 HRESULT (STDMETHODCALLTYPE *get_CmdMaxAlternates)(
16754 ISpeechRecoContext *This,
16755 LONG *MaxAlternates);
16756
16757 HRESULT (STDMETHODCALLTYPE *put_State)(
16758 ISpeechRecoContext *This,
16759 SpeechRecoContextState State);
16760
16761 HRESULT (STDMETHODCALLTYPE *get_State)(
16762 ISpeechRecoContext *This,
16763 SpeechRecoContextState *State);
16764
16765 HRESULT (STDMETHODCALLTYPE *put_RetainedAudio)(
16766 ISpeechRecoContext *This,
16767 SpeechRetainedAudioOptions Option);
16768
16769 HRESULT (STDMETHODCALLTYPE *get_RetainedAudio)(
16770 ISpeechRecoContext *This,
16771 SpeechRetainedAudioOptions *Option);
16772
16773 HRESULT (STDMETHODCALLTYPE *putref_RetainedAudioFormat)(
16774 ISpeechRecoContext *This,
16775 ISpeechAudioFormat *Format);
16776
16777 HRESULT (STDMETHODCALLTYPE *get_RetainedAudioFormat)(
16778 ISpeechRecoContext *This,
16779 ISpeechAudioFormat **Format);
16780
16781 HRESULT (STDMETHODCALLTYPE *Pause)(
16782 ISpeechRecoContext *This);
16783
16784 HRESULT (STDMETHODCALLTYPE *Resume)(
16785 ISpeechRecoContext *This);
16786
16787 HRESULT (STDMETHODCALLTYPE *CreateGrammar)(
16788 ISpeechRecoContext *This,
16789 VARIANT GrammarId,
16790 ISpeechRecoGrammar **Grammar);
16791
16792 HRESULT (STDMETHODCALLTYPE *CreateResultFromMemory)(
16793 ISpeechRecoContext *This,
16794 VARIANT *ResultBlock,
16795 ISpeechRecoResult **Result);
16796
16797 HRESULT (STDMETHODCALLTYPE *Bookmark)(
16798 ISpeechRecoContext *This,
16799 SpeechBookmarkOptions Options,
16800 VARIANT StreamPos,
16801 VARIANT BookmarkId);
16802
16803 HRESULT (STDMETHODCALLTYPE *SetAdaptationData)(
16804 ISpeechRecoContext *This,
16805 BSTR AdaptationString);
16806
16807 END_INTERFACE
16808} ISpeechRecoContextVtbl;
16809
16810interface ISpeechRecoContext {
16811 CONST_VTBL ISpeechRecoContextVtbl* lpVtbl;
16812};
16813
16814#ifdef COBJMACROS
16815#ifndef WIDL_C_INLINE_WRAPPERS
16816/*** IUnknown methods ***/
16817#define ISpeechRecoContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16818#define ISpeechRecoContext_AddRef(This) (This)->lpVtbl->AddRef(This)
16819#define ISpeechRecoContext_Release(This) (This)->lpVtbl->Release(This)
16820/*** IDispatch methods ***/
16821#define ISpeechRecoContext_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16822#define ISpeechRecoContext_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16823#define ISpeechRecoContext_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16824#define ISpeechRecoContext_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16825/*** ISpeechRecoContext methods ***/
16826#define ISpeechRecoContext_get_Recognizer(This,Recognizer) (This)->lpVtbl->get_Recognizer(This,Recognizer)
16827#define ISpeechRecoContext_get_AudioInputInterferenceStatus(This,Interference) (This)->lpVtbl->get_AudioInputInterferenceStatus(This,Interference)
16828#define ISpeechRecoContext_get_RequestedUIType(This,UIType) (This)->lpVtbl->get_RequestedUIType(This,UIType)
16829#define ISpeechRecoContext_putref_Voice(This,Voice) (This)->lpVtbl->putref_Voice(This,Voice)
16830#define ISpeechRecoContext_get_Voice(This,Voice) (This)->lpVtbl->get_Voice(This,Voice)
16831#define ISpeechRecoContext_put_AllowVoiceFormatMatchingOnNextSet(This,Allow) (This)->lpVtbl->put_AllowVoiceFormatMatchingOnNextSet(This,Allow)
16832#define ISpeechRecoContext_get_AllowVoiceFormatMatchingOnNextSet(This,pAllow) (This)->lpVtbl->get_AllowVoiceFormatMatchingOnNextSet(This,pAllow)
16833#define ISpeechRecoContext_put_VoicePurgeEvent(This,EventInterest) (This)->lpVtbl->put_VoicePurgeEvent(This,EventInterest)
16834#define ISpeechRecoContext_get_VoicePurgeEvent(This,EventInterest) (This)->lpVtbl->get_VoicePurgeEvent(This,EventInterest)
16835#define ISpeechRecoContext_put_EventInterests(This,EventInterest) (This)->lpVtbl->put_EventInterests(This,EventInterest)
16836#define ISpeechRecoContext_get_EventInterests(This,EventInterest) (This)->lpVtbl->get_EventInterests(This,EventInterest)
16837#define ISpeechRecoContext_put_CmdMaxAlternates(This,MaxAlternates) (This)->lpVtbl->put_CmdMaxAlternates(This,MaxAlternates)
16838#define ISpeechRecoContext_get_CmdMaxAlternates(This,MaxAlternates) (This)->lpVtbl->get_CmdMaxAlternates(This,MaxAlternates)
16839#define ISpeechRecoContext_put_State(This,State) (This)->lpVtbl->put_State(This,State)
16840#define ISpeechRecoContext_get_State(This,State) (This)->lpVtbl->get_State(This,State)
16841#define ISpeechRecoContext_put_RetainedAudio(This,Option) (This)->lpVtbl->put_RetainedAudio(This,Option)
16842#define ISpeechRecoContext_get_RetainedAudio(This,Option) (This)->lpVtbl->get_RetainedAudio(This,Option)
16843#define ISpeechRecoContext_putref_RetainedAudioFormat(This,Format) (This)->lpVtbl->putref_RetainedAudioFormat(This,Format)
16844#define ISpeechRecoContext_get_RetainedAudioFormat(This,Format) (This)->lpVtbl->get_RetainedAudioFormat(This,Format)
16845#define ISpeechRecoContext_Pause(This) (This)->lpVtbl->Pause(This)
16846#define ISpeechRecoContext_Resume(This) (This)->lpVtbl->Resume(This)
16847#define ISpeechRecoContext_CreateGrammar(This,GrammarId,Grammar) (This)->lpVtbl->CreateGrammar(This,GrammarId,Grammar)
16848#define ISpeechRecoContext_CreateResultFromMemory(This,ResultBlock,Result) (This)->lpVtbl->CreateResultFromMemory(This,ResultBlock,Result)
16849#define ISpeechRecoContext_Bookmark(This,Options,StreamPos,BookmarkId) (This)->lpVtbl->Bookmark(This,Options,StreamPos,BookmarkId)
16850#define ISpeechRecoContext_SetAdaptationData(This,AdaptationString) (This)->lpVtbl->SetAdaptationData(This,AdaptationString)
16851#else
16852/*** IUnknown methods ***/
16853static inline HRESULT ISpeechRecoContext_QueryInterface(ISpeechRecoContext* This,REFIID riid,void **ppvObject) {
16854 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16855}
16856static inline ULONG ISpeechRecoContext_AddRef(ISpeechRecoContext* This) {
16857 return This->lpVtbl->AddRef(This);
16858}
16859static inline ULONG ISpeechRecoContext_Release(ISpeechRecoContext* This) {
16860 return This->lpVtbl->Release(This);
16861}
16862/*** IDispatch methods ***/
16863static inline HRESULT ISpeechRecoContext_GetTypeInfoCount(ISpeechRecoContext* This,UINT *pctinfo) {
16864 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16865}
16866static inline HRESULT ISpeechRecoContext_GetTypeInfo(ISpeechRecoContext* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16867 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16868}
16869static inline HRESULT ISpeechRecoContext_GetIDsOfNames(ISpeechRecoContext* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16870 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16871}
16872static inline HRESULT ISpeechRecoContext_Invoke(ISpeechRecoContext* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16873 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16874}
16875/*** ISpeechRecoContext methods ***/
16876static inline HRESULT ISpeechRecoContext_get_Recognizer(ISpeechRecoContext* This,ISpeechRecognizer **Recognizer) {
16877 return This->lpVtbl->get_Recognizer(This,Recognizer);
16878}
16879static inline HRESULT ISpeechRecoContext_get_AudioInputInterferenceStatus(ISpeechRecoContext* This,SpeechInterference *Interference) {
16880 return This->lpVtbl->get_AudioInputInterferenceStatus(This,Interference);
16881}
16882static inline HRESULT ISpeechRecoContext_get_RequestedUIType(ISpeechRecoContext* This,BSTR *UIType) {
16883 return This->lpVtbl->get_RequestedUIType(This,UIType);
16884}
16885static inline HRESULT ISpeechRecoContext_putref_Voice(ISpeechRecoContext* This,ISpeechVoice *Voice) {
16886 return This->lpVtbl->putref_Voice(This,Voice);
16887}
16888static inline HRESULT ISpeechRecoContext_get_Voice(ISpeechRecoContext* This,ISpeechVoice **Voice) {
16889 return This->lpVtbl->get_Voice(This,Voice);
16890}
16891static inline HRESULT ISpeechRecoContext_put_AllowVoiceFormatMatchingOnNextSet(ISpeechRecoContext* This,VARIANT_BOOL Allow) {
16892 return This->lpVtbl->put_AllowVoiceFormatMatchingOnNextSet(This,Allow);
16893}
16894static inline HRESULT ISpeechRecoContext_get_AllowVoiceFormatMatchingOnNextSet(ISpeechRecoContext* This,VARIANT_BOOL *pAllow) {
16895 return This->lpVtbl->get_AllowVoiceFormatMatchingOnNextSet(This,pAllow);
16896}
16897static inline HRESULT ISpeechRecoContext_put_VoicePurgeEvent(ISpeechRecoContext* This,SpeechRecoEvents EventInterest) {
16898 return This->lpVtbl->put_VoicePurgeEvent(This,EventInterest);
16899}
16900static inline HRESULT ISpeechRecoContext_get_VoicePurgeEvent(ISpeechRecoContext* This,SpeechRecoEvents *EventInterest) {
16901 return This->lpVtbl->get_VoicePurgeEvent(This,EventInterest);
16902}
16903static inline HRESULT ISpeechRecoContext_put_EventInterests(ISpeechRecoContext* This,SpeechRecoEvents EventInterest) {
16904 return This->lpVtbl->put_EventInterests(This,EventInterest);
16905}
16906static inline HRESULT ISpeechRecoContext_get_EventInterests(ISpeechRecoContext* This,SpeechRecoEvents *EventInterest) {
16907 return This->lpVtbl->get_EventInterests(This,EventInterest);
16908}
16909static inline HRESULT ISpeechRecoContext_put_CmdMaxAlternates(ISpeechRecoContext* This,LONG MaxAlternates) {
16910 return This->lpVtbl->put_CmdMaxAlternates(This,MaxAlternates);
16911}
16912static inline HRESULT ISpeechRecoContext_get_CmdMaxAlternates(ISpeechRecoContext* This,LONG *MaxAlternates) {
16913 return This->lpVtbl->get_CmdMaxAlternates(This,MaxAlternates);
16914}
16915static inline HRESULT ISpeechRecoContext_put_State(ISpeechRecoContext* This,SpeechRecoContextState State) {
16916 return This->lpVtbl->put_State(This,State);
16917}
16918static inline HRESULT ISpeechRecoContext_get_State(ISpeechRecoContext* This,SpeechRecoContextState *State) {
16919 return This->lpVtbl->get_State(This,State);
16920}
16921static inline HRESULT ISpeechRecoContext_put_RetainedAudio(ISpeechRecoContext* This,SpeechRetainedAudioOptions Option) {
16922 return This->lpVtbl->put_RetainedAudio(This,Option);
16923}
16924static inline HRESULT ISpeechRecoContext_get_RetainedAudio(ISpeechRecoContext* This,SpeechRetainedAudioOptions *Option) {
16925 return This->lpVtbl->get_RetainedAudio(This,Option);
16926}
16927static inline HRESULT ISpeechRecoContext_putref_RetainedAudioFormat(ISpeechRecoContext* This,ISpeechAudioFormat *Format) {
16928 return This->lpVtbl->putref_RetainedAudioFormat(This,Format);
16929}
16930static inline HRESULT ISpeechRecoContext_get_RetainedAudioFormat(ISpeechRecoContext* This,ISpeechAudioFormat **Format) {
16931 return This->lpVtbl->get_RetainedAudioFormat(This,Format);
16932}
16933static inline HRESULT ISpeechRecoContext_Pause(ISpeechRecoContext* This) {
16934 return This->lpVtbl->Pause(This);
16935}
16936static inline HRESULT ISpeechRecoContext_Resume(ISpeechRecoContext* This) {
16937 return This->lpVtbl->Resume(This);
16938}
16939static inline HRESULT ISpeechRecoContext_CreateGrammar(ISpeechRecoContext* This,VARIANT GrammarId,ISpeechRecoGrammar **Grammar) {
16940 return This->lpVtbl->CreateGrammar(This,GrammarId,Grammar);
16941}
16942static inline HRESULT ISpeechRecoContext_CreateResultFromMemory(ISpeechRecoContext* This,VARIANT *ResultBlock,ISpeechRecoResult **Result) {
16943 return This->lpVtbl->CreateResultFromMemory(This,ResultBlock,Result);
16944}
16945static inline HRESULT ISpeechRecoContext_Bookmark(ISpeechRecoContext* This,SpeechBookmarkOptions Options,VARIANT StreamPos,VARIANT BookmarkId) {
16946 return This->lpVtbl->Bookmark(This,Options,StreamPos,BookmarkId);
16947}
16948static inline HRESULT ISpeechRecoContext_SetAdaptationData(ISpeechRecoContext* This,BSTR AdaptationString) {
16949 return This->lpVtbl->SetAdaptationData(This,AdaptationString);
16950}
16951#endif
16952#endif
16953
16954#endif
16955
16956
16957#endif /* __ISpeechRecoContext_INTERFACE_DEFINED__ */
16958
16959/*****************************************************************************
16960 * ISpeechRecoGrammar interface
16961 */
16962#ifndef __ISpeechRecoGrammar_INTERFACE_DEFINED__
16963#define __ISpeechRecoGrammar_INTERFACE_DEFINED__
16964
16965DEFINE_GUID(IID_ISpeechRecoGrammar, 0xb6d6f79f, 0x2158, 0x4e50, 0xb5,0xbc, 0x9a,0x9c,0xcd,0x85,0x2a,0x09);
16966#if defined(__cplusplus) && !defined(CINTERFACE)
16967MIDL_INTERFACE("b6d6f79f-2158-4e50-b5bc-9a9ccd852a09")
16968ISpeechRecoGrammar : public IDispatch
16969{
16970 virtual HRESULT STDMETHODCALLTYPE get_Id(
16971 VARIANT *Id) = 0;
16972
16973 virtual HRESULT STDMETHODCALLTYPE get_RecoContext(
16974 ISpeechRecoContext **RecoContext) = 0;
16975
16976 virtual HRESULT STDMETHODCALLTYPE put_State(
16977 SpeechGrammarState State) = 0;
16978
16979 virtual HRESULT STDMETHODCALLTYPE get_State(
16980 SpeechGrammarState *State) = 0;
16981
16982 virtual HRESULT STDMETHODCALLTYPE get_Rules(
16983 ISpeechGrammarRules **Rules) = 0;
16984
16985 virtual HRESULT STDMETHODCALLTYPE Reset(
16986 SpeechLanguageId NewLanguage = 0) = 0;
16987
16988 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromFile(
16989 const BSTR FileName,
16990 SpeechLoadOption LoadOption = SLOStatic) = 0;
16991
16992 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromObject(
16993 const BSTR ClassId,
16994 const BSTR GrammarName,
16995 SpeechLoadOption LoadOption = SLOStatic) = 0;
16996
16997 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromResource(
16998 LONG hModule,
16999 VARIANT ResourceName,
17000 VARIANT ResourceType,
17001 SpeechLanguageId LanguageId,
17002 SpeechLoadOption LoadOption = SLOStatic) = 0;
17003
17004 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromMemory(
17005 VARIANT GrammarData,
17006 SpeechLoadOption LoadOption = SLOStatic) = 0;
17007
17008 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromProprietaryGrammar(
17009 const BSTR ProprietaryGuid,
17010 const BSTR ProprietaryString,
17011 VARIANT ProprietaryData,
17012 SpeechLoadOption LoadOption = SLOStatic) = 0;
17013
17014 virtual HRESULT STDMETHODCALLTYPE CmdSetRuleState(
17015 const BSTR Name,
17016 SpeechRuleState State) = 0;
17017
17018 virtual HRESULT STDMETHODCALLTYPE CmdSetRuleIdState(
17019 LONG RuleId,
17020 SpeechRuleState State) = 0;
17021
17022 virtual HRESULT STDMETHODCALLTYPE DictationLoad(
17023 const BSTR TopicName = L"",
17024 SpeechLoadOption LoadOption = SLOStatic) = 0;
17025
17026 virtual HRESULT STDMETHODCALLTYPE DictationUnload(
17027 ) = 0;
17028
17029 virtual HRESULT STDMETHODCALLTYPE DictationSetState(
17030 SpeechRuleState State) = 0;
17031
17032 virtual HRESULT STDMETHODCALLTYPE SetWordSequenceData(
17033 const BSTR Text,
17034 LONG TextLength,
17035 ISpeechTextSelectionInformation *Info) = 0;
17036
17037 virtual HRESULT STDMETHODCALLTYPE SetTextSelection(
17038 ISpeechTextSelectionInformation *Info) = 0;
17039
17040 virtual HRESULT STDMETHODCALLTYPE IsPronounceable(
17041 const BSTR Word,
17042 SpeechWordPronounceable *WordPronounceable) = 0;
17043
17044};
17045#ifdef __CRT_UUID_DECL
17046__CRT_UUID_DECL(ISpeechRecoGrammar, 0xb6d6f79f, 0x2158, 0x4e50, 0xb5,0xbc, 0x9a,0x9c,0xcd,0x85,0x2a,0x09)
17047#endif
17048#else
17049typedef struct ISpeechRecoGrammarVtbl {
17050 BEGIN_INTERFACE
17051
17052 /*** IUnknown methods ***/
17053 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17054 ISpeechRecoGrammar *This,
17055 REFIID riid,
17056 void **ppvObject);
17057
17058 ULONG (STDMETHODCALLTYPE *AddRef)(
17059 ISpeechRecoGrammar *This);
17060
17061 ULONG (STDMETHODCALLTYPE *Release)(
17062 ISpeechRecoGrammar *This);
17063
17064 /*** IDispatch methods ***/
17065 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17066 ISpeechRecoGrammar *This,
17067 UINT *pctinfo);
17068
17069 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17070 ISpeechRecoGrammar *This,
17071 UINT iTInfo,
17072 LCID lcid,
17073 ITypeInfo **ppTInfo);
17074
17075 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17076 ISpeechRecoGrammar *This,
17077 REFIID riid,
17078 LPOLESTR *rgszNames,
17079 UINT cNames,
17080 LCID lcid,
17081 DISPID *rgDispId);
17082
17083 HRESULT (STDMETHODCALLTYPE *Invoke)(
17084 ISpeechRecoGrammar *This,
17085 DISPID dispIdMember,
17086 REFIID riid,
17087 LCID lcid,
17088 WORD wFlags,
17089 DISPPARAMS *pDispParams,
17090 VARIANT *pVarResult,
17091 EXCEPINFO *pExcepInfo,
17092 UINT *puArgErr);
17093
17094 /*** ISpeechRecoGrammar methods ***/
17095 HRESULT (STDMETHODCALLTYPE *get_Id)(
17096 ISpeechRecoGrammar *This,
17097 VARIANT *Id);
17098
17099 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
17100 ISpeechRecoGrammar *This,
17101 ISpeechRecoContext **RecoContext);
17102
17103 HRESULT (STDMETHODCALLTYPE *put_State)(
17104 ISpeechRecoGrammar *This,
17105 SpeechGrammarState State);
17106
17107 HRESULT (STDMETHODCALLTYPE *get_State)(
17108 ISpeechRecoGrammar *This,
17109 SpeechGrammarState *State);
17110
17111 HRESULT (STDMETHODCALLTYPE *get_Rules)(
17112 ISpeechRecoGrammar *This,
17113 ISpeechGrammarRules **Rules);
17114
17115 HRESULT (STDMETHODCALLTYPE *Reset)(
17116 ISpeechRecoGrammar *This,
17117 SpeechLanguageId NewLanguage);
17118
17119 HRESULT (STDMETHODCALLTYPE *CmdLoadFromFile)(
17120 ISpeechRecoGrammar *This,
17121 const BSTR FileName,
17122 SpeechLoadOption LoadOption);
17123
17124 HRESULT (STDMETHODCALLTYPE *CmdLoadFromObject)(
17125 ISpeechRecoGrammar *This,
17126 const BSTR ClassId,
17127 const BSTR GrammarName,
17128 SpeechLoadOption LoadOption);
17129
17130 HRESULT (STDMETHODCALLTYPE *CmdLoadFromResource)(
17131 ISpeechRecoGrammar *This,
17132 LONG hModule,
17133 VARIANT ResourceName,
17134 VARIANT ResourceType,
17135 SpeechLanguageId LanguageId,
17136 SpeechLoadOption LoadOption);
17137
17138 HRESULT (STDMETHODCALLTYPE *CmdLoadFromMemory)(
17139 ISpeechRecoGrammar *This,
17140 VARIANT GrammarData,
17141 SpeechLoadOption LoadOption);
17142
17143 HRESULT (STDMETHODCALLTYPE *CmdLoadFromProprietaryGrammar)(
17144 ISpeechRecoGrammar *This,
17145 const BSTR ProprietaryGuid,
17146 const BSTR ProprietaryString,
17147 VARIANT ProprietaryData,
17148 SpeechLoadOption LoadOption);
17149
17150 HRESULT (STDMETHODCALLTYPE *CmdSetRuleState)(
17151 ISpeechRecoGrammar *This,
17152 const BSTR Name,
17153 SpeechRuleState State);
17154
17155 HRESULT (STDMETHODCALLTYPE *CmdSetRuleIdState)(
17156 ISpeechRecoGrammar *This,
17157 LONG RuleId,
17158 SpeechRuleState State);
17159
17160 HRESULT (STDMETHODCALLTYPE *DictationLoad)(
17161 ISpeechRecoGrammar *This,
17162 const BSTR TopicName,
17163 SpeechLoadOption LoadOption);
17164
17165 HRESULT (STDMETHODCALLTYPE *DictationUnload)(
17166 ISpeechRecoGrammar *This);
17167
17168 HRESULT (STDMETHODCALLTYPE *DictationSetState)(
17169 ISpeechRecoGrammar *This,
17170 SpeechRuleState State);
17171
17172 HRESULT (STDMETHODCALLTYPE *SetWordSequenceData)(
17173 ISpeechRecoGrammar *This,
17174 const BSTR Text,
17175 LONG TextLength,
17176 ISpeechTextSelectionInformation *Info);
17177
17178 HRESULT (STDMETHODCALLTYPE *SetTextSelection)(
17179 ISpeechRecoGrammar *This,
17180 ISpeechTextSelectionInformation *Info);
17181
17182 HRESULT (STDMETHODCALLTYPE *IsPronounceable)(
17183 ISpeechRecoGrammar *This,
17184 const BSTR Word,
17185 SpeechWordPronounceable *WordPronounceable);
17186
17187 END_INTERFACE
17188} ISpeechRecoGrammarVtbl;
17189
17190interface ISpeechRecoGrammar {
17191 CONST_VTBL ISpeechRecoGrammarVtbl* lpVtbl;
17192};
17193
17194#ifdef COBJMACROS
17195#ifndef WIDL_C_INLINE_WRAPPERS
17196/*** IUnknown methods ***/
17197#define ISpeechRecoGrammar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17198#define ISpeechRecoGrammar_AddRef(This) (This)->lpVtbl->AddRef(This)
17199#define ISpeechRecoGrammar_Release(This) (This)->lpVtbl->Release(This)
17200/*** IDispatch methods ***/
17201#define ISpeechRecoGrammar_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17202#define ISpeechRecoGrammar_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17203#define ISpeechRecoGrammar_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17204#define ISpeechRecoGrammar_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17205/*** ISpeechRecoGrammar methods ***/
17206#define ISpeechRecoGrammar_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
17207#define ISpeechRecoGrammar_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
17208#define ISpeechRecoGrammar_put_State(This,State) (This)->lpVtbl->put_State(This,State)
17209#define ISpeechRecoGrammar_get_State(This,State) (This)->lpVtbl->get_State(This,State)
17210#define ISpeechRecoGrammar_get_Rules(This,Rules) (This)->lpVtbl->get_Rules(This,Rules)
17211#define ISpeechRecoGrammar_Reset(This,NewLanguage) (This)->lpVtbl->Reset(This,NewLanguage)
17212#define ISpeechRecoGrammar_CmdLoadFromFile(This,FileName,LoadOption) (This)->lpVtbl->CmdLoadFromFile(This,FileName,LoadOption)
17213#define ISpeechRecoGrammar_CmdLoadFromObject(This,ClassId,GrammarName,LoadOption) (This)->lpVtbl->CmdLoadFromObject(This,ClassId,GrammarName,LoadOption)
17214#define ISpeechRecoGrammar_CmdLoadFromResource(This,hModule,ResourceName,ResourceType,LanguageId,LoadOption) (This)->lpVtbl->CmdLoadFromResource(This,hModule,ResourceName,ResourceType,LanguageId,LoadOption)
17215#define ISpeechRecoGrammar_CmdLoadFromMemory(This,GrammarData,LoadOption) (This)->lpVtbl->CmdLoadFromMemory(This,GrammarData,LoadOption)
17216#define ISpeechRecoGrammar_CmdLoadFromProprietaryGrammar(This,ProprietaryGuid,ProprietaryString,ProprietaryData,LoadOption) (This)->lpVtbl->CmdLoadFromProprietaryGrammar(This,ProprietaryGuid,ProprietaryString,ProprietaryData,LoadOption)
17217#define ISpeechRecoGrammar_CmdSetRuleState(This,Name,State) (This)->lpVtbl->CmdSetRuleState(This,Name,State)
17218#define ISpeechRecoGrammar_CmdSetRuleIdState(This,RuleId,State) (This)->lpVtbl->CmdSetRuleIdState(This,RuleId,State)
17219#define ISpeechRecoGrammar_DictationLoad(This,TopicName,LoadOption) (This)->lpVtbl->DictationLoad(This,TopicName,LoadOption)
17220#define ISpeechRecoGrammar_DictationUnload(This) (This)->lpVtbl->DictationUnload(This)
17221#define ISpeechRecoGrammar_DictationSetState(This,State) (This)->lpVtbl->DictationSetState(This,State)
17222#define ISpeechRecoGrammar_SetWordSequenceData(This,Text,TextLength,Info) (This)->lpVtbl->SetWordSequenceData(This,Text,TextLength,Info)
17223#define ISpeechRecoGrammar_SetTextSelection(This,Info) (This)->lpVtbl->SetTextSelection(This,Info)
17224#define ISpeechRecoGrammar_IsPronounceable(This,Word,WordPronounceable) (This)->lpVtbl->IsPronounceable(This,Word,WordPronounceable)
17225#else
17226/*** IUnknown methods ***/
17227static inline HRESULT ISpeechRecoGrammar_QueryInterface(ISpeechRecoGrammar* This,REFIID riid,void **ppvObject) {
17228 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17229}
17230static inline ULONG ISpeechRecoGrammar_AddRef(ISpeechRecoGrammar* This) {
17231 return This->lpVtbl->AddRef(This);
17232}
17233static inline ULONG ISpeechRecoGrammar_Release(ISpeechRecoGrammar* This) {
17234 return This->lpVtbl->Release(This);
17235}
17236/*** IDispatch methods ***/
17237static inline HRESULT ISpeechRecoGrammar_GetTypeInfoCount(ISpeechRecoGrammar* This,UINT *pctinfo) {
17238 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17239}
17240static inline HRESULT ISpeechRecoGrammar_GetTypeInfo(ISpeechRecoGrammar* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17241 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17242}
17243static inline HRESULT ISpeechRecoGrammar_GetIDsOfNames(ISpeechRecoGrammar* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17244 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17245}
17246static inline HRESULT ISpeechRecoGrammar_Invoke(ISpeechRecoGrammar* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17247 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17248}
17249/*** ISpeechRecoGrammar methods ***/
17250static inline HRESULT ISpeechRecoGrammar_get_Id(ISpeechRecoGrammar* This,VARIANT *Id) {
17251 return This->lpVtbl->get_Id(This,Id);
17252}
17253static inline HRESULT ISpeechRecoGrammar_get_RecoContext(ISpeechRecoGrammar* This,ISpeechRecoContext **RecoContext) {
17254 return This->lpVtbl->get_RecoContext(This,RecoContext);
17255}
17256static inline HRESULT ISpeechRecoGrammar_put_State(ISpeechRecoGrammar* This,SpeechGrammarState State) {
17257 return This->lpVtbl->put_State(This,State);
17258}
17259static inline HRESULT ISpeechRecoGrammar_get_State(ISpeechRecoGrammar* This,SpeechGrammarState *State) {
17260 return This->lpVtbl->get_State(This,State);
17261}
17262static inline HRESULT ISpeechRecoGrammar_get_Rules(ISpeechRecoGrammar* This,ISpeechGrammarRules **Rules) {
17263 return This->lpVtbl->get_Rules(This,Rules);
17264}
17265static inline HRESULT ISpeechRecoGrammar_Reset(ISpeechRecoGrammar* This,SpeechLanguageId NewLanguage) {
17266 return This->lpVtbl->Reset(This,NewLanguage);
17267}
17268static inline HRESULT ISpeechRecoGrammar_CmdLoadFromFile(ISpeechRecoGrammar* This,const BSTR FileName,SpeechLoadOption LoadOption) {
17269 return This->lpVtbl->CmdLoadFromFile(This,FileName,LoadOption);
17270}
17271static inline HRESULT ISpeechRecoGrammar_CmdLoadFromObject(ISpeechRecoGrammar* This,const BSTR ClassId,const BSTR GrammarName,SpeechLoadOption LoadOption) {
17272 return This->lpVtbl->CmdLoadFromObject(This,ClassId,GrammarName,LoadOption);
17273}
17274static inline HRESULT ISpeechRecoGrammar_CmdLoadFromResource(ISpeechRecoGrammar* This,LONG hModule,VARIANT ResourceName,VARIANT ResourceType,SpeechLanguageId LanguageId,SpeechLoadOption LoadOption) {
17275 return This->lpVtbl->CmdLoadFromResource(This,hModule,ResourceName,ResourceType,LanguageId,LoadOption);
17276}
17277static inline HRESULT ISpeechRecoGrammar_CmdLoadFromMemory(ISpeechRecoGrammar* This,VARIANT GrammarData,SpeechLoadOption LoadOption) {
17278 return This->lpVtbl->CmdLoadFromMemory(This,GrammarData,LoadOption);
17279}
17280static inline HRESULT ISpeechRecoGrammar_CmdLoadFromProprietaryGrammar(ISpeechRecoGrammar* This,const BSTR ProprietaryGuid,const BSTR ProprietaryString,VARIANT ProprietaryData,SpeechLoadOption LoadOption) {
17281 return This->lpVtbl->CmdLoadFromProprietaryGrammar(This,ProprietaryGuid,ProprietaryString,ProprietaryData,LoadOption);
17282}
17283static inline HRESULT ISpeechRecoGrammar_CmdSetRuleState(ISpeechRecoGrammar* This,const BSTR Name,SpeechRuleState State) {
17284 return This->lpVtbl->CmdSetRuleState(This,Name,State);
17285}
17286static inline HRESULT ISpeechRecoGrammar_CmdSetRuleIdState(ISpeechRecoGrammar* This,LONG RuleId,SpeechRuleState State) {
17287 return This->lpVtbl->CmdSetRuleIdState(This,RuleId,State);
17288}
17289static inline HRESULT ISpeechRecoGrammar_DictationLoad(ISpeechRecoGrammar* This,const BSTR TopicName,SpeechLoadOption LoadOption) {
17290 return This->lpVtbl->DictationLoad(This,TopicName,LoadOption);
17291}
17292static inline HRESULT ISpeechRecoGrammar_DictationUnload(ISpeechRecoGrammar* This) {
17293 return This->lpVtbl->DictationUnload(This);
17294}
17295static inline HRESULT ISpeechRecoGrammar_DictationSetState(ISpeechRecoGrammar* This,SpeechRuleState State) {
17296 return This->lpVtbl->DictationSetState(This,State);
17297}
17298static inline HRESULT ISpeechRecoGrammar_SetWordSequenceData(ISpeechRecoGrammar* This,const BSTR Text,LONG TextLength,ISpeechTextSelectionInformation *Info) {
17299 return This->lpVtbl->SetWordSequenceData(This,Text,TextLength,Info);
17300}
17301static inline HRESULT ISpeechRecoGrammar_SetTextSelection(ISpeechRecoGrammar* This,ISpeechTextSelectionInformation *Info) {
17302 return This->lpVtbl->SetTextSelection(This,Info);
17303}
17304static inline HRESULT ISpeechRecoGrammar_IsPronounceable(ISpeechRecoGrammar* This,const BSTR Word,SpeechWordPronounceable *WordPronounceable) {
17305 return This->lpVtbl->IsPronounceable(This,Word,WordPronounceable);
17306}
17307#endif
17308#endif
17309
17310#endif
17311
17312
17313#endif /* __ISpeechRecoGrammar_INTERFACE_DEFINED__ */
17314
17315/*****************************************************************************
17316 * _ISpeechRecoContextEvents dispinterface
17317 */
17318#ifndef ___ISpeechRecoContextEvents_DISPINTERFACE_DEFINED__
17319#define ___ISpeechRecoContextEvents_DISPINTERFACE_DEFINED__
17320
17321DEFINE_GUID(DIID__ISpeechRecoContextEvents, 0x7b8fcb42, 0x0e9d, 0x4f00, 0xa0,0x48, 0x7b,0x04,0xd6,0x17,0x9d,0x3d);
17322#if defined(__cplusplus) && !defined(CINTERFACE)
17323MIDL_INTERFACE("7b8fcb42-0e9d-4f00-a048-7b04d6179d3d")
17324_ISpeechRecoContextEvents : public IDispatch
17325{
17326};
17327#ifdef __CRT_UUID_DECL
17328__CRT_UUID_DECL(_ISpeechRecoContextEvents, 0x7b8fcb42, 0x0e9d, 0x4f00, 0xa0,0x48, 0x7b,0x04,0xd6,0x17,0x9d,0x3d)
17329#endif
17330#else
17331typedef struct _ISpeechRecoContextEventsVtbl {
17332 BEGIN_INTERFACE
17333
17334 /*** IUnknown methods ***/
17335 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17336 _ISpeechRecoContextEvents *This,
17337 REFIID riid,
17338 void **ppvObject);
17339
17340 ULONG (STDMETHODCALLTYPE *AddRef)(
17341 _ISpeechRecoContextEvents *This);
17342
17343 ULONG (STDMETHODCALLTYPE *Release)(
17344 _ISpeechRecoContextEvents *This);
17345
17346 /*** IDispatch methods ***/
17347 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17348 _ISpeechRecoContextEvents *This,
17349 UINT *pctinfo);
17350
17351 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17352 _ISpeechRecoContextEvents *This,
17353 UINT iTInfo,
17354 LCID lcid,
17355 ITypeInfo **ppTInfo);
17356
17357 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17358 _ISpeechRecoContextEvents *This,
17359 REFIID riid,
17360 LPOLESTR *rgszNames,
17361 UINT cNames,
17362 LCID lcid,
17363 DISPID *rgDispId);
17364
17365 HRESULT (STDMETHODCALLTYPE *Invoke)(
17366 _ISpeechRecoContextEvents *This,
17367 DISPID dispIdMember,
17368 REFIID riid,
17369 LCID lcid,
17370 WORD wFlags,
17371 DISPPARAMS *pDispParams,
17372 VARIANT *pVarResult,
17373 EXCEPINFO *pExcepInfo,
17374 UINT *puArgErr);
17375
17376 END_INTERFACE
17377} _ISpeechRecoContextEventsVtbl;
17378
17379interface _ISpeechRecoContextEvents {
17380 CONST_VTBL _ISpeechRecoContextEventsVtbl* lpVtbl;
17381};
17382
17383#ifdef COBJMACROS
17384#ifndef WIDL_C_INLINE_WRAPPERS
17385/*** IUnknown methods ***/
17386#define _ISpeechRecoContextEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17387#define _ISpeechRecoContextEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
17388#define _ISpeechRecoContextEvents_Release(This) (This)->lpVtbl->Release(This)
17389/*** IDispatch methods ***/
17390#define _ISpeechRecoContextEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17391#define _ISpeechRecoContextEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17392#define _ISpeechRecoContextEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17393#define _ISpeechRecoContextEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17394#else
17395/*** IUnknown methods ***/
17396static inline HRESULT _ISpeechRecoContextEvents_QueryInterface(_ISpeechRecoContextEvents* This,REFIID riid,void **ppvObject) {
17397 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17398}
17399static inline ULONG _ISpeechRecoContextEvents_AddRef(_ISpeechRecoContextEvents* This) {
17400 return This->lpVtbl->AddRef(This);
17401}
17402static inline ULONG _ISpeechRecoContextEvents_Release(_ISpeechRecoContextEvents* This) {
17403 return This->lpVtbl->Release(This);
17404}
17405/*** IDispatch methods ***/
17406static inline HRESULT _ISpeechRecoContextEvents_GetTypeInfoCount(_ISpeechRecoContextEvents* This,UINT *pctinfo) {
17407 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17408}
17409static inline HRESULT _ISpeechRecoContextEvents_GetTypeInfo(_ISpeechRecoContextEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17410 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17411}
17412static inline HRESULT _ISpeechRecoContextEvents_GetIDsOfNames(_ISpeechRecoContextEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17413 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17414}
17415static inline HRESULT _ISpeechRecoContextEvents_Invoke(_ISpeechRecoContextEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17416 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17417}
17418#endif
17419#endif
17420
17421#endif
17422
17423#endif /* ___ISpeechRecoContextEvents_DISPINTERFACE_DEFINED__ */
17424
17425/*****************************************************************************
17426 * ISpeechGrammarRule interface
17427 */
17428#ifndef __ISpeechGrammarRule_INTERFACE_DEFINED__
17429#define __ISpeechGrammarRule_INTERFACE_DEFINED__
17430
17431DEFINE_GUID(IID_ISpeechGrammarRule, 0xafe719cf, 0x5dd1, 0x44f2, 0x99,0x9c, 0x7a,0x39,0x9f,0x1c,0xfc,0xcc);
17432#if defined(__cplusplus) && !defined(CINTERFACE)
17433MIDL_INTERFACE("afe719cf-5dd1-44f2-999c-7a399f1cfccc")
17434ISpeechGrammarRule : public IDispatch
17435{
17436 virtual HRESULT STDMETHODCALLTYPE get_Attributes(
17437 SpeechRuleAttributes *Attributes) = 0;
17438
17439 virtual HRESULT STDMETHODCALLTYPE get_InitialState(
17440 ISpeechGrammarRuleState **State) = 0;
17441
17442 virtual HRESULT STDMETHODCALLTYPE get_Name(
17443 BSTR *Name) = 0;
17444
17445 virtual HRESULT STDMETHODCALLTYPE get_Id(
17446 LONG *Id) = 0;
17447
17448 virtual HRESULT STDMETHODCALLTYPE Clear(
17449 ) = 0;
17450
17451 virtual HRESULT STDMETHODCALLTYPE AddResource(
17452 const BSTR ResourceName,
17453 const BSTR ResourceValue) = 0;
17454
17455 virtual HRESULT STDMETHODCALLTYPE AddState(
17456 ISpeechGrammarRuleState **State) = 0;
17457
17458};
17459#ifdef __CRT_UUID_DECL
17460__CRT_UUID_DECL(ISpeechGrammarRule, 0xafe719cf, 0x5dd1, 0x44f2, 0x99,0x9c, 0x7a,0x39,0x9f,0x1c,0xfc,0xcc)
17461#endif
17462#else
17463typedef struct ISpeechGrammarRuleVtbl {
17464 BEGIN_INTERFACE
17465
17466 /*** IUnknown methods ***/
17467 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17468 ISpeechGrammarRule *This,
17469 REFIID riid,
17470 void **ppvObject);
17471
17472 ULONG (STDMETHODCALLTYPE *AddRef)(
17473 ISpeechGrammarRule *This);
17474
17475 ULONG (STDMETHODCALLTYPE *Release)(
17476 ISpeechGrammarRule *This);
17477
17478 /*** IDispatch methods ***/
17479 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17480 ISpeechGrammarRule *This,
17481 UINT *pctinfo);
17482
17483 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17484 ISpeechGrammarRule *This,
17485 UINT iTInfo,
17486 LCID lcid,
17487 ITypeInfo **ppTInfo);
17488
17489 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17490 ISpeechGrammarRule *This,
17491 REFIID riid,
17492 LPOLESTR *rgszNames,
17493 UINT cNames,
17494 LCID lcid,
17495 DISPID *rgDispId);
17496
17497 HRESULT (STDMETHODCALLTYPE *Invoke)(
17498 ISpeechGrammarRule *This,
17499 DISPID dispIdMember,
17500 REFIID riid,
17501 LCID lcid,
17502 WORD wFlags,
17503 DISPPARAMS *pDispParams,
17504 VARIANT *pVarResult,
17505 EXCEPINFO *pExcepInfo,
17506 UINT *puArgErr);
17507
17508 /*** ISpeechGrammarRule methods ***/
17509 HRESULT (STDMETHODCALLTYPE *get_Attributes)(
17510 ISpeechGrammarRule *This,
17511 SpeechRuleAttributes *Attributes);
17512
17513 HRESULT (STDMETHODCALLTYPE *get_InitialState)(
17514 ISpeechGrammarRule *This,
17515 ISpeechGrammarRuleState **State);
17516
17517 HRESULT (STDMETHODCALLTYPE *get_Name)(
17518 ISpeechGrammarRule *This,
17519 BSTR *Name);
17520
17521 HRESULT (STDMETHODCALLTYPE *get_Id)(
17522 ISpeechGrammarRule *This,
17523 LONG *Id);
17524
17525 HRESULT (STDMETHODCALLTYPE *Clear)(
17526 ISpeechGrammarRule *This);
17527
17528 HRESULT (STDMETHODCALLTYPE *AddResource)(
17529 ISpeechGrammarRule *This,
17530 const BSTR ResourceName,
17531 const BSTR ResourceValue);
17532
17533 HRESULT (STDMETHODCALLTYPE *AddState)(
17534 ISpeechGrammarRule *This,
17535 ISpeechGrammarRuleState **State);
17536
17537 END_INTERFACE
17538} ISpeechGrammarRuleVtbl;
17539
17540interface ISpeechGrammarRule {
17541 CONST_VTBL ISpeechGrammarRuleVtbl* lpVtbl;
17542};
17543
17544#ifdef COBJMACROS
17545#ifndef WIDL_C_INLINE_WRAPPERS
17546/*** IUnknown methods ***/
17547#define ISpeechGrammarRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17548#define ISpeechGrammarRule_AddRef(This) (This)->lpVtbl->AddRef(This)
17549#define ISpeechGrammarRule_Release(This) (This)->lpVtbl->Release(This)
17550/*** IDispatch methods ***/
17551#define ISpeechGrammarRule_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17552#define ISpeechGrammarRule_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17553#define ISpeechGrammarRule_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17554#define ISpeechGrammarRule_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17555/*** ISpeechGrammarRule methods ***/
17556#define ISpeechGrammarRule_get_Attributes(This,Attributes) (This)->lpVtbl->get_Attributes(This,Attributes)
17557#define ISpeechGrammarRule_get_InitialState(This,State) (This)->lpVtbl->get_InitialState(This,State)
17558#define ISpeechGrammarRule_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
17559#define ISpeechGrammarRule_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
17560#define ISpeechGrammarRule_Clear(This) (This)->lpVtbl->Clear(This)
17561#define ISpeechGrammarRule_AddResource(This,ResourceName,ResourceValue) (This)->lpVtbl->AddResource(This,ResourceName,ResourceValue)
17562#define ISpeechGrammarRule_AddState(This,State) (This)->lpVtbl->AddState(This,State)
17563#else
17564/*** IUnknown methods ***/
17565static inline HRESULT ISpeechGrammarRule_QueryInterface(ISpeechGrammarRule* This,REFIID riid,void **ppvObject) {
17566 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17567}
17568static inline ULONG ISpeechGrammarRule_AddRef(ISpeechGrammarRule* This) {
17569 return This->lpVtbl->AddRef(This);
17570}
17571static inline ULONG ISpeechGrammarRule_Release(ISpeechGrammarRule* This) {
17572 return This->lpVtbl->Release(This);
17573}
17574/*** IDispatch methods ***/
17575static inline HRESULT ISpeechGrammarRule_GetTypeInfoCount(ISpeechGrammarRule* This,UINT *pctinfo) {
17576 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17577}
17578static inline HRESULT ISpeechGrammarRule_GetTypeInfo(ISpeechGrammarRule* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17579 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17580}
17581static inline HRESULT ISpeechGrammarRule_GetIDsOfNames(ISpeechGrammarRule* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17582 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17583}
17584static inline HRESULT ISpeechGrammarRule_Invoke(ISpeechGrammarRule* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17585 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17586}
17587/*** ISpeechGrammarRule methods ***/
17588static inline HRESULT ISpeechGrammarRule_get_Attributes(ISpeechGrammarRule* This,SpeechRuleAttributes *Attributes) {
17589 return This->lpVtbl->get_Attributes(This,Attributes);
17590}
17591static inline HRESULT ISpeechGrammarRule_get_InitialState(ISpeechGrammarRule* This,ISpeechGrammarRuleState **State) {
17592 return This->lpVtbl->get_InitialState(This,State);
17593}
17594static inline HRESULT ISpeechGrammarRule_get_Name(ISpeechGrammarRule* This,BSTR *Name) {
17595 return This->lpVtbl->get_Name(This,Name);
17596}
17597static inline HRESULT ISpeechGrammarRule_get_Id(ISpeechGrammarRule* This,LONG *Id) {
17598 return This->lpVtbl->get_Id(This,Id);
17599}
17600static inline HRESULT ISpeechGrammarRule_Clear(ISpeechGrammarRule* This) {
17601 return This->lpVtbl->Clear(This);
17602}
17603static inline HRESULT ISpeechGrammarRule_AddResource(ISpeechGrammarRule* This,const BSTR ResourceName,const BSTR ResourceValue) {
17604 return This->lpVtbl->AddResource(This,ResourceName,ResourceValue);
17605}
17606static inline HRESULT ISpeechGrammarRule_AddState(ISpeechGrammarRule* This,ISpeechGrammarRuleState **State) {
17607 return This->lpVtbl->AddState(This,State);
17608}
17609#endif
17610#endif
17611
17612#endif
17613
17614
17615#endif /* __ISpeechGrammarRule_INTERFACE_DEFINED__ */
17616
17617/*****************************************************************************
17618 * ISpeechGrammarRules interface
17619 */
17620#ifndef __ISpeechGrammarRules_INTERFACE_DEFINED__
17621#define __ISpeechGrammarRules_INTERFACE_DEFINED__
17622
17623DEFINE_GUID(IID_ISpeechGrammarRules, 0x6ffa3b44, 0xfc2d, 0x40d1, 0x8a,0xfc, 0x32,0x91,0x1c,0x7f,0x1a,0xd1);
17624#if defined(__cplusplus) && !defined(CINTERFACE)
17625MIDL_INTERFACE("6ffa3b44-fc2d-40d1-8afc-32911c7f1ad1")
17626ISpeechGrammarRules : public IDispatch
17627{
17628 virtual HRESULT STDMETHODCALLTYPE get_Count(
17629 LONG *Count) = 0;
17630
17631 virtual HRESULT STDMETHODCALLTYPE FindRule(
17632 VARIANT RuleNameOrId,
17633 ISpeechGrammarRule **Rule) = 0;
17634
17635 virtual HRESULT STDMETHODCALLTYPE Item(
17636 LONG Index,
17637 ISpeechGrammarRule **Rule) = 0;
17638
17639 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
17640 IUnknown **EnumVARIANT) = 0;
17641
17642 virtual HRESULT STDMETHODCALLTYPE get_Dynamic(
17643 VARIANT_BOOL *Dynamic) = 0;
17644
17645 virtual HRESULT STDMETHODCALLTYPE Add(
17646 BSTR RuleName,
17647 SpeechRuleAttributes Attributes,
17648 LONG RuleId,
17649 ISpeechGrammarRule **Rule) = 0;
17650
17651 virtual HRESULT STDMETHODCALLTYPE Commit(
17652 ) = 0;
17653
17654 virtual HRESULT STDMETHODCALLTYPE CommitAndSave(
17655 BSTR *ErrorText,
17656 VARIANT *SaveStream) = 0;
17657
17658};
17659#ifdef __CRT_UUID_DECL
17660__CRT_UUID_DECL(ISpeechGrammarRules, 0x6ffa3b44, 0xfc2d, 0x40d1, 0x8a,0xfc, 0x32,0x91,0x1c,0x7f,0x1a,0xd1)
17661#endif
17662#else
17663typedef struct ISpeechGrammarRulesVtbl {
17664 BEGIN_INTERFACE
17665
17666 /*** IUnknown methods ***/
17667 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17668 ISpeechGrammarRules *This,
17669 REFIID riid,
17670 void **ppvObject);
17671
17672 ULONG (STDMETHODCALLTYPE *AddRef)(
17673 ISpeechGrammarRules *This);
17674
17675 ULONG (STDMETHODCALLTYPE *Release)(
17676 ISpeechGrammarRules *This);
17677
17678 /*** IDispatch methods ***/
17679 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17680 ISpeechGrammarRules *This,
17681 UINT *pctinfo);
17682
17683 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17684 ISpeechGrammarRules *This,
17685 UINT iTInfo,
17686 LCID lcid,
17687 ITypeInfo **ppTInfo);
17688
17689 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17690 ISpeechGrammarRules *This,
17691 REFIID riid,
17692 LPOLESTR *rgszNames,
17693 UINT cNames,
17694 LCID lcid,
17695 DISPID *rgDispId);
17696
17697 HRESULT (STDMETHODCALLTYPE *Invoke)(
17698 ISpeechGrammarRules *This,
17699 DISPID dispIdMember,
17700 REFIID riid,
17701 LCID lcid,
17702 WORD wFlags,
17703 DISPPARAMS *pDispParams,
17704 VARIANT *pVarResult,
17705 EXCEPINFO *pExcepInfo,
17706 UINT *puArgErr);
17707
17708 /*** ISpeechGrammarRules methods ***/
17709 HRESULT (STDMETHODCALLTYPE *get_Count)(
17710 ISpeechGrammarRules *This,
17711 LONG *Count);
17712
17713 HRESULT (STDMETHODCALLTYPE *FindRule)(
17714 ISpeechGrammarRules *This,
17715 VARIANT RuleNameOrId,
17716 ISpeechGrammarRule **Rule);
17717
17718 HRESULT (STDMETHODCALLTYPE *Item)(
17719 ISpeechGrammarRules *This,
17720 LONG Index,
17721 ISpeechGrammarRule **Rule);
17722
17723 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
17724 ISpeechGrammarRules *This,
17725 IUnknown **EnumVARIANT);
17726
17727 HRESULT (STDMETHODCALLTYPE *get_Dynamic)(
17728 ISpeechGrammarRules *This,
17729 VARIANT_BOOL *Dynamic);
17730
17731 HRESULT (STDMETHODCALLTYPE *Add)(
17732 ISpeechGrammarRules *This,
17733 BSTR RuleName,
17734 SpeechRuleAttributes Attributes,
17735 LONG RuleId,
17736 ISpeechGrammarRule **Rule);
17737
17738 HRESULT (STDMETHODCALLTYPE *Commit)(
17739 ISpeechGrammarRules *This);
17740
17741 HRESULT (STDMETHODCALLTYPE *CommitAndSave)(
17742 ISpeechGrammarRules *This,
17743 BSTR *ErrorText,
17744 VARIANT *SaveStream);
17745
17746 END_INTERFACE
17747} ISpeechGrammarRulesVtbl;
17748
17749interface ISpeechGrammarRules {
17750 CONST_VTBL ISpeechGrammarRulesVtbl* lpVtbl;
17751};
17752
17753#ifdef COBJMACROS
17754#ifndef WIDL_C_INLINE_WRAPPERS
17755/*** IUnknown methods ***/
17756#define ISpeechGrammarRules_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17757#define ISpeechGrammarRules_AddRef(This) (This)->lpVtbl->AddRef(This)
17758#define ISpeechGrammarRules_Release(This) (This)->lpVtbl->Release(This)
17759/*** IDispatch methods ***/
17760#define ISpeechGrammarRules_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17761#define ISpeechGrammarRules_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17762#define ISpeechGrammarRules_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17763#define ISpeechGrammarRules_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17764/*** ISpeechGrammarRules methods ***/
17765#define ISpeechGrammarRules_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
17766#define ISpeechGrammarRules_FindRule(This,RuleNameOrId,Rule) (This)->lpVtbl->FindRule(This,RuleNameOrId,Rule)
17767#define ISpeechGrammarRules_Item(This,Index,Rule) (This)->lpVtbl->Item(This,Index,Rule)
17768#define ISpeechGrammarRules_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
17769#define ISpeechGrammarRules_get_Dynamic(This,Dynamic) (This)->lpVtbl->get_Dynamic(This,Dynamic)
17770#define ISpeechGrammarRules_Add(This,RuleName,Attributes,RuleId,Rule) (This)->lpVtbl->Add(This,RuleName,Attributes,RuleId,Rule)
17771#define ISpeechGrammarRules_Commit(This) (This)->lpVtbl->Commit(This)
17772#define ISpeechGrammarRules_CommitAndSave(This,ErrorText,SaveStream) (This)->lpVtbl->CommitAndSave(This,ErrorText,SaveStream)
17773#else
17774/*** IUnknown methods ***/
17775static inline HRESULT ISpeechGrammarRules_QueryInterface(ISpeechGrammarRules* This,REFIID riid,void **ppvObject) {
17776 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17777}
17778static inline ULONG ISpeechGrammarRules_AddRef(ISpeechGrammarRules* This) {
17779 return This->lpVtbl->AddRef(This);
17780}
17781static inline ULONG ISpeechGrammarRules_Release(ISpeechGrammarRules* This) {
17782 return This->lpVtbl->Release(This);
17783}
17784/*** IDispatch methods ***/
17785static inline HRESULT ISpeechGrammarRules_GetTypeInfoCount(ISpeechGrammarRules* This,UINT *pctinfo) {
17786 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17787}
17788static inline HRESULT ISpeechGrammarRules_GetTypeInfo(ISpeechGrammarRules* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17789 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17790}
17791static inline HRESULT ISpeechGrammarRules_GetIDsOfNames(ISpeechGrammarRules* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17792 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17793}
17794static inline HRESULT ISpeechGrammarRules_Invoke(ISpeechGrammarRules* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17795 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17796}
17797/*** ISpeechGrammarRules methods ***/
17798static inline HRESULT ISpeechGrammarRules_get_Count(ISpeechGrammarRules* This,LONG *Count) {
17799 return This->lpVtbl->get_Count(This,Count);
17800}
17801static inline HRESULT ISpeechGrammarRules_FindRule(ISpeechGrammarRules* This,VARIANT RuleNameOrId,ISpeechGrammarRule **Rule) {
17802 return This->lpVtbl->FindRule(This,RuleNameOrId,Rule);
17803}
17804static inline HRESULT ISpeechGrammarRules_Item(ISpeechGrammarRules* This,LONG Index,ISpeechGrammarRule **Rule) {
17805 return This->lpVtbl->Item(This,Index,Rule);
17806}
17807static inline HRESULT ISpeechGrammarRules_get__NewEnum(ISpeechGrammarRules* This,IUnknown **EnumVARIANT) {
17808 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
17809}
17810static inline HRESULT ISpeechGrammarRules_get_Dynamic(ISpeechGrammarRules* This,VARIANT_BOOL *Dynamic) {
17811 return This->lpVtbl->get_Dynamic(This,Dynamic);
17812}
17813static inline HRESULT ISpeechGrammarRules_Add(ISpeechGrammarRules* This,BSTR RuleName,SpeechRuleAttributes Attributes,LONG RuleId,ISpeechGrammarRule **Rule) {
17814 return This->lpVtbl->Add(This,RuleName,Attributes,RuleId,Rule);
17815}
17816static inline HRESULT ISpeechGrammarRules_Commit(ISpeechGrammarRules* This) {
17817 return This->lpVtbl->Commit(This);
17818}
17819static inline HRESULT ISpeechGrammarRules_CommitAndSave(ISpeechGrammarRules* This,BSTR *ErrorText,VARIANT *SaveStream) {
17820 return This->lpVtbl->CommitAndSave(This,ErrorText,SaveStream);
17821}
17822#endif
17823#endif
17824
17825#endif
17826
17827
17828#endif /* __ISpeechGrammarRules_INTERFACE_DEFINED__ */
17829
17830/*****************************************************************************
17831 * ISpeechGrammarRuleState interface
17832 */
17833#ifndef __ISpeechGrammarRuleState_INTERFACE_DEFINED__
17834#define __ISpeechGrammarRuleState_INTERFACE_DEFINED__
17835
17836DEFINE_GUID(IID_ISpeechGrammarRuleState, 0xd4286f2c, 0xee67, 0x45ae, 0xb9,0x28, 0x28,0xd6,0x95,0x36,0x2e,0xda);
17837#if defined(__cplusplus) && !defined(CINTERFACE)
17838MIDL_INTERFACE("d4286f2c-ee67-45ae-b928-28d695362eda")
17839ISpeechGrammarRuleState : public IDispatch
17840{
17841 virtual HRESULT STDMETHODCALLTYPE get_Rule(
17842 ISpeechGrammarRule **Rule) = 0;
17843
17844 virtual HRESULT STDMETHODCALLTYPE get_Transitions(
17845 ISpeechGrammarRuleStateTransitions **Transitions) = 0;
17846
17847 virtual HRESULT STDMETHODCALLTYPE AddWordTransition(
17848 ISpeechGrammarRuleState *DestState,
17849 const BSTR Words,
17850 const BSTR Separators = L" ",
17851 SpeechGrammarWordType Type = SGLexical,
17852 const BSTR PropertyName = L"",
17853 LONG PropertyId = 0,
17854 VARIANT *PropertyValue = 0,
17855 float Weight = 1) = 0;
17856
17857 virtual HRESULT STDMETHODCALLTYPE AddRuleTransition(
17858 ISpeechGrammarRuleState *DestinationState,
17859 ISpeechGrammarRule *Rule,
17860 const BSTR PropertyName = L"",
17861 LONG PropertyId = 0,
17862 VARIANT *PropertyValue = 0,
17863 float Weight = 1) = 0;
17864
17865 virtual HRESULT STDMETHODCALLTYPE AddSpecialTransition(
17866 ISpeechGrammarRuleState *DestinationState,
17867 SpeechSpecialTransitionType Type,
17868 const BSTR PropertyName = L"",
17869 LONG PropertyId = 0,
17870 VARIANT *PropertyValue = 0,
17871 float Weight = 1) = 0;
17872
17873};
17874#ifdef __CRT_UUID_DECL
17875__CRT_UUID_DECL(ISpeechGrammarRuleState, 0xd4286f2c, 0xee67, 0x45ae, 0xb9,0x28, 0x28,0xd6,0x95,0x36,0x2e,0xda)
17876#endif
17877#else
17878typedef struct ISpeechGrammarRuleStateVtbl {
17879 BEGIN_INTERFACE
17880
17881 /*** IUnknown methods ***/
17882 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17883 ISpeechGrammarRuleState *This,
17884 REFIID riid,
17885 void **ppvObject);
17886
17887 ULONG (STDMETHODCALLTYPE *AddRef)(
17888 ISpeechGrammarRuleState *This);
17889
17890 ULONG (STDMETHODCALLTYPE *Release)(
17891 ISpeechGrammarRuleState *This);
17892
17893 /*** IDispatch methods ***/
17894 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17895 ISpeechGrammarRuleState *This,
17896 UINT *pctinfo);
17897
17898 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17899 ISpeechGrammarRuleState *This,
17900 UINT iTInfo,
17901 LCID lcid,
17902 ITypeInfo **ppTInfo);
17903
17904 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17905 ISpeechGrammarRuleState *This,
17906 REFIID riid,
17907 LPOLESTR *rgszNames,
17908 UINT cNames,
17909 LCID lcid,
17910 DISPID *rgDispId);
17911
17912 HRESULT (STDMETHODCALLTYPE *Invoke)(
17913 ISpeechGrammarRuleState *This,
17914 DISPID dispIdMember,
17915 REFIID riid,
17916 LCID lcid,
17917 WORD wFlags,
17918 DISPPARAMS *pDispParams,
17919 VARIANT *pVarResult,
17920 EXCEPINFO *pExcepInfo,
17921 UINT *puArgErr);
17922
17923 /*** ISpeechGrammarRuleState methods ***/
17924 HRESULT (STDMETHODCALLTYPE *get_Rule)(
17925 ISpeechGrammarRuleState *This,
17926 ISpeechGrammarRule **Rule);
17927
17928 HRESULT (STDMETHODCALLTYPE *get_Transitions)(
17929 ISpeechGrammarRuleState *This,
17930 ISpeechGrammarRuleStateTransitions **Transitions);
17931
17932 HRESULT (STDMETHODCALLTYPE *AddWordTransition)(
17933 ISpeechGrammarRuleState *This,
17934 ISpeechGrammarRuleState *DestState,
17935 const BSTR Words,
17936 const BSTR Separators,
17937 SpeechGrammarWordType Type,
17938 const BSTR PropertyName,
17939 LONG PropertyId,
17940 VARIANT *PropertyValue,
17941 float Weight);
17942
17943 HRESULT (STDMETHODCALLTYPE *AddRuleTransition)(
17944 ISpeechGrammarRuleState *This,
17945 ISpeechGrammarRuleState *DestinationState,
17946 ISpeechGrammarRule *Rule,
17947 const BSTR PropertyName,
17948 LONG PropertyId,
17949 VARIANT *PropertyValue,
17950 float Weight);
17951
17952 HRESULT (STDMETHODCALLTYPE *AddSpecialTransition)(
17953 ISpeechGrammarRuleState *This,
17954 ISpeechGrammarRuleState *DestinationState,
17955 SpeechSpecialTransitionType Type,
17956 const BSTR PropertyName,
17957 LONG PropertyId,
17958 VARIANT *PropertyValue,
17959 float Weight);
17960
17961 END_INTERFACE
17962} ISpeechGrammarRuleStateVtbl;
17963
17964interface ISpeechGrammarRuleState {
17965 CONST_VTBL ISpeechGrammarRuleStateVtbl* lpVtbl;
17966};
17967
17968#ifdef COBJMACROS
17969#ifndef WIDL_C_INLINE_WRAPPERS
17970/*** IUnknown methods ***/
17971#define ISpeechGrammarRuleState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17972#define ISpeechGrammarRuleState_AddRef(This) (This)->lpVtbl->AddRef(This)
17973#define ISpeechGrammarRuleState_Release(This) (This)->lpVtbl->Release(This)
17974/*** IDispatch methods ***/
17975#define ISpeechGrammarRuleState_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17976#define ISpeechGrammarRuleState_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17977#define ISpeechGrammarRuleState_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17978#define ISpeechGrammarRuleState_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17979/*** ISpeechGrammarRuleState methods ***/
17980#define ISpeechGrammarRuleState_get_Rule(This,Rule) (This)->lpVtbl->get_Rule(This,Rule)
17981#define ISpeechGrammarRuleState_get_Transitions(This,Transitions) (This)->lpVtbl->get_Transitions(This,Transitions)
17982#define ISpeechGrammarRuleState_AddWordTransition(This,DestState,Words,Separators,Type,PropertyName,PropertyId,PropertyValue,Weight) (This)->lpVtbl->AddWordTransition(This,DestState,Words,Separators,Type,PropertyName,PropertyId,PropertyValue,Weight)
17983#define ISpeechGrammarRuleState_AddRuleTransition(This,DestinationState,Rule,PropertyName,PropertyId,PropertyValue,Weight) (This)->lpVtbl->AddRuleTransition(This,DestinationState,Rule,PropertyName,PropertyId,PropertyValue,Weight)
17984#define ISpeechGrammarRuleState_AddSpecialTransition(This,DestinationState,Type,PropertyName,PropertyId,PropertyValue,Weight) (This)->lpVtbl->AddSpecialTransition(This,DestinationState,Type,PropertyName,PropertyId,PropertyValue,Weight)
17985#else
17986/*** IUnknown methods ***/
17987static inline HRESULT ISpeechGrammarRuleState_QueryInterface(ISpeechGrammarRuleState* This,REFIID riid,void **ppvObject) {
17988 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17989}
17990static inline ULONG ISpeechGrammarRuleState_AddRef(ISpeechGrammarRuleState* This) {
17991 return This->lpVtbl->AddRef(This);
17992}
17993static inline ULONG ISpeechGrammarRuleState_Release(ISpeechGrammarRuleState* This) {
17994 return This->lpVtbl->Release(This);
17995}
17996/*** IDispatch methods ***/
17997static inline HRESULT ISpeechGrammarRuleState_GetTypeInfoCount(ISpeechGrammarRuleState* This,UINT *pctinfo) {
17998 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17999}
18000static inline HRESULT ISpeechGrammarRuleState_GetTypeInfo(ISpeechGrammarRuleState* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18001 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18002}
18003static inline HRESULT ISpeechGrammarRuleState_GetIDsOfNames(ISpeechGrammarRuleState* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18004 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18005}
18006static inline HRESULT ISpeechGrammarRuleState_Invoke(ISpeechGrammarRuleState* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18007 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18008}
18009/*** ISpeechGrammarRuleState methods ***/
18010static inline HRESULT ISpeechGrammarRuleState_get_Rule(ISpeechGrammarRuleState* This,ISpeechGrammarRule **Rule) {
18011 return This->lpVtbl->get_Rule(This,Rule);
18012}
18013static inline HRESULT ISpeechGrammarRuleState_get_Transitions(ISpeechGrammarRuleState* This,ISpeechGrammarRuleStateTransitions **Transitions) {
18014 return This->lpVtbl->get_Transitions(This,Transitions);
18015}
18016static 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) {
18017 return This->lpVtbl->AddWordTransition(This,DestState,Words,Separators,Type,PropertyName,PropertyId,PropertyValue,Weight);
18018}
18019static inline HRESULT ISpeechGrammarRuleState_AddRuleTransition(ISpeechGrammarRuleState* This,ISpeechGrammarRuleState *DestinationState,ISpeechGrammarRule *Rule,const BSTR PropertyName,LONG PropertyId,VARIANT *PropertyValue,float Weight) {
18020 return This->lpVtbl->AddRuleTransition(This,DestinationState,Rule,PropertyName,PropertyId,PropertyValue,Weight);
18021}
18022static inline HRESULT ISpeechGrammarRuleState_AddSpecialTransition(ISpeechGrammarRuleState* This,ISpeechGrammarRuleState *DestinationState,SpeechSpecialTransitionType Type,const BSTR PropertyName,LONG PropertyId,VARIANT *PropertyValue,float Weight) {
18023 return This->lpVtbl->AddSpecialTransition(This,DestinationState,Type,PropertyName,PropertyId,PropertyValue,Weight);
18024}
18025#endif
18026#endif
18027
18028#endif
18029
18030
18031#endif /* __ISpeechGrammarRuleState_INTERFACE_DEFINED__ */
18032
18033/*****************************************************************************
18034 * ISpeechGrammarRuleStateTransitions interface
18035 */
18036#ifndef __ISpeechGrammarRuleStateTransitions_INTERFACE_DEFINED__
18037#define __ISpeechGrammarRuleStateTransitions_INTERFACE_DEFINED__
18038
18039DEFINE_GUID(IID_ISpeechGrammarRuleStateTransitions, 0xeabce657, 0x75bc, 0x44a2, 0xaa,0x7f, 0xc5,0x64,0x76,0x74,0x29,0x63);
18040#if defined(__cplusplus) && !defined(CINTERFACE)
18041MIDL_INTERFACE("eabce657-75bc-44a2-aa7f-c56476742963")
18042ISpeechGrammarRuleStateTransitions : public IDispatch
18043{
18044 virtual HRESULT STDMETHODCALLTYPE get_Count(
18045 LONG *Count) = 0;
18046
18047 virtual HRESULT STDMETHODCALLTYPE Item(
18048 LONG Index,
18049 ISpeechGrammarRuleStateTransition **Transition) = 0;
18050
18051 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
18052 IUnknown **EnumVARIANT) = 0;
18053
18054};
18055#ifdef __CRT_UUID_DECL
18056__CRT_UUID_DECL(ISpeechGrammarRuleStateTransitions, 0xeabce657, 0x75bc, 0x44a2, 0xaa,0x7f, 0xc5,0x64,0x76,0x74,0x29,0x63)
18057#endif
18058#else
18059typedef struct ISpeechGrammarRuleStateTransitionsVtbl {
18060 BEGIN_INTERFACE
18061
18062 /*** IUnknown methods ***/
18063 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18064 ISpeechGrammarRuleStateTransitions *This,
18065 REFIID riid,
18066 void **ppvObject);
18067
18068 ULONG (STDMETHODCALLTYPE *AddRef)(
18069 ISpeechGrammarRuleStateTransitions *This);
18070
18071 ULONG (STDMETHODCALLTYPE *Release)(
18072 ISpeechGrammarRuleStateTransitions *This);
18073
18074 /*** IDispatch methods ***/
18075 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18076 ISpeechGrammarRuleStateTransitions *This,
18077 UINT *pctinfo);
18078
18079 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18080 ISpeechGrammarRuleStateTransitions *This,
18081 UINT iTInfo,
18082 LCID lcid,
18083 ITypeInfo **ppTInfo);
18084
18085 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18086 ISpeechGrammarRuleStateTransitions *This,
18087 REFIID riid,
18088 LPOLESTR *rgszNames,
18089 UINT cNames,
18090 LCID lcid,
18091 DISPID *rgDispId);
18092
18093 HRESULT (STDMETHODCALLTYPE *Invoke)(
18094 ISpeechGrammarRuleStateTransitions *This,
18095 DISPID dispIdMember,
18096 REFIID riid,
18097 LCID lcid,
18098 WORD wFlags,
18099 DISPPARAMS *pDispParams,
18100 VARIANT *pVarResult,
18101 EXCEPINFO *pExcepInfo,
18102 UINT *puArgErr);
18103
18104 /*** ISpeechGrammarRuleStateTransitions methods ***/
18105 HRESULT (STDMETHODCALLTYPE *get_Count)(
18106 ISpeechGrammarRuleStateTransitions *This,
18107 LONG *Count);
18108
18109 HRESULT (STDMETHODCALLTYPE *Item)(
18110 ISpeechGrammarRuleStateTransitions *This,
18111 LONG Index,
18112 ISpeechGrammarRuleStateTransition **Transition);
18113
18114 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
18115 ISpeechGrammarRuleStateTransitions *This,
18116 IUnknown **EnumVARIANT);
18117
18118 END_INTERFACE
18119} ISpeechGrammarRuleStateTransitionsVtbl;
18120
18121interface ISpeechGrammarRuleStateTransitions {
18122 CONST_VTBL ISpeechGrammarRuleStateTransitionsVtbl* lpVtbl;
18123};
18124
18125#ifdef COBJMACROS
18126#ifndef WIDL_C_INLINE_WRAPPERS
18127/*** IUnknown methods ***/
18128#define ISpeechGrammarRuleStateTransitions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18129#define ISpeechGrammarRuleStateTransitions_AddRef(This) (This)->lpVtbl->AddRef(This)
18130#define ISpeechGrammarRuleStateTransitions_Release(This) (This)->lpVtbl->Release(This)
18131/*** IDispatch methods ***/
18132#define ISpeechGrammarRuleStateTransitions_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18133#define ISpeechGrammarRuleStateTransitions_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18134#define ISpeechGrammarRuleStateTransitions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18135#define ISpeechGrammarRuleStateTransitions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18136/*** ISpeechGrammarRuleStateTransitions methods ***/
18137#define ISpeechGrammarRuleStateTransitions_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
18138#define ISpeechGrammarRuleStateTransitions_Item(This,Index,Transition) (This)->lpVtbl->Item(This,Index,Transition)
18139#define ISpeechGrammarRuleStateTransitions_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
18140#else
18141/*** IUnknown methods ***/
18142static inline HRESULT ISpeechGrammarRuleStateTransitions_QueryInterface(ISpeechGrammarRuleStateTransitions* This,REFIID riid,void **ppvObject) {
18143 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18144}
18145static inline ULONG ISpeechGrammarRuleStateTransitions_AddRef(ISpeechGrammarRuleStateTransitions* This) {
18146 return This->lpVtbl->AddRef(This);
18147}
18148static inline ULONG ISpeechGrammarRuleStateTransitions_Release(ISpeechGrammarRuleStateTransitions* This) {
18149 return This->lpVtbl->Release(This);
18150}
18151/*** IDispatch methods ***/
18152static inline HRESULT ISpeechGrammarRuleStateTransitions_GetTypeInfoCount(ISpeechGrammarRuleStateTransitions* This,UINT *pctinfo) {
18153 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18154}
18155static inline HRESULT ISpeechGrammarRuleStateTransitions_GetTypeInfo(ISpeechGrammarRuleStateTransitions* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18156 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18157}
18158static inline HRESULT ISpeechGrammarRuleStateTransitions_GetIDsOfNames(ISpeechGrammarRuleStateTransitions* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18159 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18160}
18161static inline HRESULT ISpeechGrammarRuleStateTransitions_Invoke(ISpeechGrammarRuleStateTransitions* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18162 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18163}
18164/*** ISpeechGrammarRuleStateTransitions methods ***/
18165static inline HRESULT ISpeechGrammarRuleStateTransitions_get_Count(ISpeechGrammarRuleStateTransitions* This,LONG *Count) {
18166 return This->lpVtbl->get_Count(This,Count);
18167}
18168static inline HRESULT ISpeechGrammarRuleStateTransitions_Item(ISpeechGrammarRuleStateTransitions* This,LONG Index,ISpeechGrammarRuleStateTransition **Transition) {
18169 return This->lpVtbl->Item(This,Index,Transition);
18170}
18171static inline HRESULT ISpeechGrammarRuleStateTransitions_get__NewEnum(ISpeechGrammarRuleStateTransitions* This,IUnknown **EnumVARIANT) {
18172 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
18173}
18174#endif
18175#endif
18176
18177#endif
18178
18179
18180#endif /* __ISpeechGrammarRuleStateTransitions_INTERFACE_DEFINED__ */
18181
18182/*****************************************************************************
18183 * ISpeechGrammarRuleStateTransition interface
18184 */
18185#ifndef __ISpeechGrammarRuleStateTransition_INTERFACE_DEFINED__
18186#define __ISpeechGrammarRuleStateTransition_INTERFACE_DEFINED__
18187
18188DEFINE_GUID(IID_ISpeechGrammarRuleStateTransition, 0xcafd1db1, 0x41d1, 0x4a06, 0x98,0x63, 0xe2,0xe8,0x1d,0xa1,0x7a,0x9a);
18189#if defined(__cplusplus) && !defined(CINTERFACE)
18190MIDL_INTERFACE("cafd1db1-41d1-4a06-9863-e2e81da17a9a")
18191ISpeechGrammarRuleStateTransition : public IDispatch
18192{
18193 virtual HRESULT STDMETHODCALLTYPE get_Type(
18194 SpeechGrammarRuleStateTransitionType *Type) = 0;
18195
18196 virtual HRESULT STDMETHODCALLTYPE get_Text(
18197 BSTR *Text) = 0;
18198
18199 virtual HRESULT STDMETHODCALLTYPE get_Rule(
18200 ISpeechGrammarRule **Rule) = 0;
18201
18202 virtual HRESULT STDMETHODCALLTYPE get_Weight(
18203 VARIANT *Weight) = 0;
18204
18205 virtual HRESULT STDMETHODCALLTYPE get_PropertyName(
18206 BSTR *PropertyName) = 0;
18207
18208 virtual HRESULT STDMETHODCALLTYPE get_PropertyId(
18209 LONG *PropertyId) = 0;
18210
18211 virtual HRESULT STDMETHODCALLTYPE get_PropertyValue(
18212 VARIANT *PropertyValue) = 0;
18213
18214 virtual HRESULT STDMETHODCALLTYPE get_NextState(
18215 ISpeechGrammarRuleState **NextState) = 0;
18216
18217};
18218#ifdef __CRT_UUID_DECL
18219__CRT_UUID_DECL(ISpeechGrammarRuleStateTransition, 0xcafd1db1, 0x41d1, 0x4a06, 0x98,0x63, 0xe2,0xe8,0x1d,0xa1,0x7a,0x9a)
18220#endif
18221#else
18222typedef struct ISpeechGrammarRuleStateTransitionVtbl {
18223 BEGIN_INTERFACE
18224
18225 /*** IUnknown methods ***/
18226 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18227 ISpeechGrammarRuleStateTransition *This,
18228 REFIID riid,
18229 void **ppvObject);
18230
18231 ULONG (STDMETHODCALLTYPE *AddRef)(
18232 ISpeechGrammarRuleStateTransition *This);
18233
18234 ULONG (STDMETHODCALLTYPE *Release)(
18235 ISpeechGrammarRuleStateTransition *This);
18236
18237 /*** IDispatch methods ***/
18238 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18239 ISpeechGrammarRuleStateTransition *This,
18240 UINT *pctinfo);
18241
18242 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18243 ISpeechGrammarRuleStateTransition *This,
18244 UINT iTInfo,
18245 LCID lcid,
18246 ITypeInfo **ppTInfo);
18247
18248 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18249 ISpeechGrammarRuleStateTransition *This,
18250 REFIID riid,
18251 LPOLESTR *rgszNames,
18252 UINT cNames,
18253 LCID lcid,
18254 DISPID *rgDispId);
18255
18256 HRESULT (STDMETHODCALLTYPE *Invoke)(
18257 ISpeechGrammarRuleStateTransition *This,
18258 DISPID dispIdMember,
18259 REFIID riid,
18260 LCID lcid,
18261 WORD wFlags,
18262 DISPPARAMS *pDispParams,
18263 VARIANT *pVarResult,
18264 EXCEPINFO *pExcepInfo,
18265 UINT *puArgErr);
18266
18267 /*** ISpeechGrammarRuleStateTransition methods ***/
18268 HRESULT (STDMETHODCALLTYPE *get_Type)(
18269 ISpeechGrammarRuleStateTransition *This,
18270 SpeechGrammarRuleStateTransitionType *Type);
18271
18272 HRESULT (STDMETHODCALLTYPE *get_Text)(
18273 ISpeechGrammarRuleStateTransition *This,
18274 BSTR *Text);
18275
18276 HRESULT (STDMETHODCALLTYPE *get_Rule)(
18277 ISpeechGrammarRuleStateTransition *This,
18278 ISpeechGrammarRule **Rule);
18279
18280 HRESULT (STDMETHODCALLTYPE *get_Weight)(
18281 ISpeechGrammarRuleStateTransition *This,
18282 VARIANT *Weight);
18283
18284 HRESULT (STDMETHODCALLTYPE *get_PropertyName)(
18285 ISpeechGrammarRuleStateTransition *This,
18286 BSTR *PropertyName);
18287
18288 HRESULT (STDMETHODCALLTYPE *get_PropertyId)(
18289 ISpeechGrammarRuleStateTransition *This,
18290 LONG *PropertyId);
18291
18292 HRESULT (STDMETHODCALLTYPE *get_PropertyValue)(
18293 ISpeechGrammarRuleStateTransition *This,
18294 VARIANT *PropertyValue);
18295
18296 HRESULT (STDMETHODCALLTYPE *get_NextState)(
18297 ISpeechGrammarRuleStateTransition *This,
18298 ISpeechGrammarRuleState **NextState);
18299
18300 END_INTERFACE
18301} ISpeechGrammarRuleStateTransitionVtbl;
18302
18303interface ISpeechGrammarRuleStateTransition {
18304 CONST_VTBL ISpeechGrammarRuleStateTransitionVtbl* lpVtbl;
18305};
18306
18307#ifdef COBJMACROS
18308#ifndef WIDL_C_INLINE_WRAPPERS
18309/*** IUnknown methods ***/
18310#define ISpeechGrammarRuleStateTransition_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18311#define ISpeechGrammarRuleStateTransition_AddRef(This) (This)->lpVtbl->AddRef(This)
18312#define ISpeechGrammarRuleStateTransition_Release(This) (This)->lpVtbl->Release(This)
18313/*** IDispatch methods ***/
18314#define ISpeechGrammarRuleStateTransition_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18315#define ISpeechGrammarRuleStateTransition_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18316#define ISpeechGrammarRuleStateTransition_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18317#define ISpeechGrammarRuleStateTransition_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18318/*** ISpeechGrammarRuleStateTransition methods ***/
18319#define ISpeechGrammarRuleStateTransition_get_Type(This,Type) (This)->lpVtbl->get_Type(This,Type)
18320#define ISpeechGrammarRuleStateTransition_get_Text(This,Text) (This)->lpVtbl->get_Text(This,Text)
18321#define ISpeechGrammarRuleStateTransition_get_Rule(This,Rule) (This)->lpVtbl->get_Rule(This,Rule)
18322#define ISpeechGrammarRuleStateTransition_get_Weight(This,Weight) (This)->lpVtbl->get_Weight(This,Weight)
18323#define ISpeechGrammarRuleStateTransition_get_PropertyName(This,PropertyName) (This)->lpVtbl->get_PropertyName(This,PropertyName)
18324#define ISpeechGrammarRuleStateTransition_get_PropertyId(This,PropertyId) (This)->lpVtbl->get_PropertyId(This,PropertyId)
18325#define ISpeechGrammarRuleStateTransition_get_PropertyValue(This,PropertyValue) (This)->lpVtbl->get_PropertyValue(This,PropertyValue)
18326#define ISpeechGrammarRuleStateTransition_get_NextState(This,NextState) (This)->lpVtbl->get_NextState(This,NextState)
18327#else
18328/*** IUnknown methods ***/
18329static inline HRESULT ISpeechGrammarRuleStateTransition_QueryInterface(ISpeechGrammarRuleStateTransition* This,REFIID riid,void **ppvObject) {
18330 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18331}
18332static inline ULONG ISpeechGrammarRuleStateTransition_AddRef(ISpeechGrammarRuleStateTransition* This) {
18333 return This->lpVtbl->AddRef(This);
18334}
18335static inline ULONG ISpeechGrammarRuleStateTransition_Release(ISpeechGrammarRuleStateTransition* This) {
18336 return This->lpVtbl->Release(This);
18337}
18338/*** IDispatch methods ***/
18339static inline HRESULT ISpeechGrammarRuleStateTransition_GetTypeInfoCount(ISpeechGrammarRuleStateTransition* This,UINT *pctinfo) {
18340 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18341}
18342static inline HRESULT ISpeechGrammarRuleStateTransition_GetTypeInfo(ISpeechGrammarRuleStateTransition* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18343 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18344}
18345static inline HRESULT ISpeechGrammarRuleStateTransition_GetIDsOfNames(ISpeechGrammarRuleStateTransition* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18346 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18347}
18348static inline HRESULT ISpeechGrammarRuleStateTransition_Invoke(ISpeechGrammarRuleStateTransition* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18349 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18350}
18351/*** ISpeechGrammarRuleStateTransition methods ***/
18352static inline HRESULT ISpeechGrammarRuleStateTransition_get_Type(ISpeechGrammarRuleStateTransition* This,SpeechGrammarRuleStateTransitionType *Type) {
18353 return This->lpVtbl->get_Type(This,Type);
18354}
18355static inline HRESULT ISpeechGrammarRuleStateTransition_get_Text(ISpeechGrammarRuleStateTransition* This,BSTR *Text) {
18356 return This->lpVtbl->get_Text(This,Text);
18357}
18358static inline HRESULT ISpeechGrammarRuleStateTransition_get_Rule(ISpeechGrammarRuleStateTransition* This,ISpeechGrammarRule **Rule) {
18359 return This->lpVtbl->get_Rule(This,Rule);
18360}
18361static inline HRESULT ISpeechGrammarRuleStateTransition_get_Weight(ISpeechGrammarRuleStateTransition* This,VARIANT *Weight) {
18362 return This->lpVtbl->get_Weight(This,Weight);
18363}
18364static inline HRESULT ISpeechGrammarRuleStateTransition_get_PropertyName(ISpeechGrammarRuleStateTransition* This,BSTR *PropertyName) {
18365 return This->lpVtbl->get_PropertyName(This,PropertyName);
18366}
18367static inline HRESULT ISpeechGrammarRuleStateTransition_get_PropertyId(ISpeechGrammarRuleStateTransition* This,LONG *PropertyId) {
18368 return This->lpVtbl->get_PropertyId(This,PropertyId);
18369}
18370static inline HRESULT ISpeechGrammarRuleStateTransition_get_PropertyValue(ISpeechGrammarRuleStateTransition* This,VARIANT *PropertyValue) {
18371 return This->lpVtbl->get_PropertyValue(This,PropertyValue);
18372}
18373static inline HRESULT ISpeechGrammarRuleStateTransition_get_NextState(ISpeechGrammarRuleStateTransition* This,ISpeechGrammarRuleState **NextState) {
18374 return This->lpVtbl->get_NextState(This,NextState);
18375}
18376#endif
18377#endif
18378
18379#endif
18380
18381
18382#endif /* __ISpeechGrammarRuleStateTransition_INTERFACE_DEFINED__ */
18383
18384/*****************************************************************************
18385 * ISpeechTextSelectionInformation interface
18386 */
18387#ifndef __ISpeechTextSelectionInformation_INTERFACE_DEFINED__
18388#define __ISpeechTextSelectionInformation_INTERFACE_DEFINED__
18389
18390DEFINE_GUID(IID_ISpeechTextSelectionInformation, 0x3b9c7e7a, 0x6eee, 0x4ded, 0x90,0x92, 0x11,0x65,0x72,0x79,0xad,0xbe);
18391#if defined(__cplusplus) && !defined(CINTERFACE)
18392MIDL_INTERFACE("3b9c7e7a-6eee-4ded-9092-11657279adbe")
18393ISpeechTextSelectionInformation : public IDispatch
18394{
18395 virtual HRESULT STDMETHODCALLTYPE put_ActiveOffset(
18396 LONG ActiveOffset) = 0;
18397
18398 virtual HRESULT STDMETHODCALLTYPE get_ActiveOffset(
18399 LONG *ActiveOffset) = 0;
18400
18401 virtual HRESULT STDMETHODCALLTYPE put_ActiveLength(
18402 LONG ActiveLength) = 0;
18403
18404 virtual HRESULT STDMETHODCALLTYPE get_ActiveLength(
18405 LONG *ActiveLength) = 0;
18406
18407 virtual HRESULT STDMETHODCALLTYPE put_SelectionOffset(
18408 LONG SelectionOffset) = 0;
18409
18410 virtual HRESULT STDMETHODCALLTYPE get_SelectionOffset(
18411 LONG *SelectionOffset) = 0;
18412
18413 virtual HRESULT STDMETHODCALLTYPE put_SelectionLength(
18414 LONG SelectionLength) = 0;
18415
18416 virtual HRESULT STDMETHODCALLTYPE get_SelectionLength(
18417 LONG *SelectionLength) = 0;
18418
18419};
18420#ifdef __CRT_UUID_DECL
18421__CRT_UUID_DECL(ISpeechTextSelectionInformation, 0x3b9c7e7a, 0x6eee, 0x4ded, 0x90,0x92, 0x11,0x65,0x72,0x79,0xad,0xbe)
18422#endif
18423#else
18424typedef struct ISpeechTextSelectionInformationVtbl {
18425 BEGIN_INTERFACE
18426
18427 /*** IUnknown methods ***/
18428 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18429 ISpeechTextSelectionInformation *This,
18430 REFIID riid,
18431 void **ppvObject);
18432
18433 ULONG (STDMETHODCALLTYPE *AddRef)(
18434 ISpeechTextSelectionInformation *This);
18435
18436 ULONG (STDMETHODCALLTYPE *Release)(
18437 ISpeechTextSelectionInformation *This);
18438
18439 /*** IDispatch methods ***/
18440 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18441 ISpeechTextSelectionInformation *This,
18442 UINT *pctinfo);
18443
18444 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18445 ISpeechTextSelectionInformation *This,
18446 UINT iTInfo,
18447 LCID lcid,
18448 ITypeInfo **ppTInfo);
18449
18450 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18451 ISpeechTextSelectionInformation *This,
18452 REFIID riid,
18453 LPOLESTR *rgszNames,
18454 UINT cNames,
18455 LCID lcid,
18456 DISPID *rgDispId);
18457
18458 HRESULT (STDMETHODCALLTYPE *Invoke)(
18459 ISpeechTextSelectionInformation *This,
18460 DISPID dispIdMember,
18461 REFIID riid,
18462 LCID lcid,
18463 WORD wFlags,
18464 DISPPARAMS *pDispParams,
18465 VARIANT *pVarResult,
18466 EXCEPINFO *pExcepInfo,
18467 UINT *puArgErr);
18468
18469 /*** ISpeechTextSelectionInformation methods ***/
18470 HRESULT (STDMETHODCALLTYPE *put_ActiveOffset)(
18471 ISpeechTextSelectionInformation *This,
18472 LONG ActiveOffset);
18473
18474 HRESULT (STDMETHODCALLTYPE *get_ActiveOffset)(
18475 ISpeechTextSelectionInformation *This,
18476 LONG *ActiveOffset);
18477
18478 HRESULT (STDMETHODCALLTYPE *put_ActiveLength)(
18479 ISpeechTextSelectionInformation *This,
18480 LONG ActiveLength);
18481
18482 HRESULT (STDMETHODCALLTYPE *get_ActiveLength)(
18483 ISpeechTextSelectionInformation *This,
18484 LONG *ActiveLength);
18485
18486 HRESULT (STDMETHODCALLTYPE *put_SelectionOffset)(
18487 ISpeechTextSelectionInformation *This,
18488 LONG SelectionOffset);
18489
18490 HRESULT (STDMETHODCALLTYPE *get_SelectionOffset)(
18491 ISpeechTextSelectionInformation *This,
18492 LONG *SelectionOffset);
18493
18494 HRESULT (STDMETHODCALLTYPE *put_SelectionLength)(
18495 ISpeechTextSelectionInformation *This,
18496 LONG SelectionLength);
18497
18498 HRESULT (STDMETHODCALLTYPE *get_SelectionLength)(
18499 ISpeechTextSelectionInformation *This,
18500 LONG *SelectionLength);
18501
18502 END_INTERFACE
18503} ISpeechTextSelectionInformationVtbl;
18504
18505interface ISpeechTextSelectionInformation {
18506 CONST_VTBL ISpeechTextSelectionInformationVtbl* lpVtbl;
18507};
18508
18509#ifdef COBJMACROS
18510#ifndef WIDL_C_INLINE_WRAPPERS
18511/*** IUnknown methods ***/
18512#define ISpeechTextSelectionInformation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18513#define ISpeechTextSelectionInformation_AddRef(This) (This)->lpVtbl->AddRef(This)
18514#define ISpeechTextSelectionInformation_Release(This) (This)->lpVtbl->Release(This)
18515/*** IDispatch methods ***/
18516#define ISpeechTextSelectionInformation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18517#define ISpeechTextSelectionInformation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18518#define ISpeechTextSelectionInformation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18519#define ISpeechTextSelectionInformation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18520/*** ISpeechTextSelectionInformation methods ***/
18521#define ISpeechTextSelectionInformation_put_ActiveOffset(This,ActiveOffset) (This)->lpVtbl->put_ActiveOffset(This,ActiveOffset)
18522#define ISpeechTextSelectionInformation_get_ActiveOffset(This,ActiveOffset) (This)->lpVtbl->get_ActiveOffset(This,ActiveOffset)
18523#define ISpeechTextSelectionInformation_put_ActiveLength(This,ActiveLength) (This)->lpVtbl->put_ActiveLength(This,ActiveLength)
18524#define ISpeechTextSelectionInformation_get_ActiveLength(This,ActiveLength) (This)->lpVtbl->get_ActiveLength(This,ActiveLength)
18525#define ISpeechTextSelectionInformation_put_SelectionOffset(This,SelectionOffset) (This)->lpVtbl->put_SelectionOffset(This,SelectionOffset)
18526#define ISpeechTextSelectionInformation_get_SelectionOffset(This,SelectionOffset) (This)->lpVtbl->get_SelectionOffset(This,SelectionOffset)
18527#define ISpeechTextSelectionInformation_put_SelectionLength(This,SelectionLength) (This)->lpVtbl->put_SelectionLength(This,SelectionLength)
18528#define ISpeechTextSelectionInformation_get_SelectionLength(This,SelectionLength) (This)->lpVtbl->get_SelectionLength(This,SelectionLength)
18529#else
18530/*** IUnknown methods ***/
18531static inline HRESULT ISpeechTextSelectionInformation_QueryInterface(ISpeechTextSelectionInformation* This,REFIID riid,void **ppvObject) {
18532 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18533}
18534static inline ULONG ISpeechTextSelectionInformation_AddRef(ISpeechTextSelectionInformation* This) {
18535 return This->lpVtbl->AddRef(This);
18536}
18537static inline ULONG ISpeechTextSelectionInformation_Release(ISpeechTextSelectionInformation* This) {
18538 return This->lpVtbl->Release(This);
18539}
18540/*** IDispatch methods ***/
18541static inline HRESULT ISpeechTextSelectionInformation_GetTypeInfoCount(ISpeechTextSelectionInformation* This,UINT *pctinfo) {
18542 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18543}
18544static inline HRESULT ISpeechTextSelectionInformation_GetTypeInfo(ISpeechTextSelectionInformation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18545 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18546}
18547static inline HRESULT ISpeechTextSelectionInformation_GetIDsOfNames(ISpeechTextSelectionInformation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18548 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18549}
18550static inline HRESULT ISpeechTextSelectionInformation_Invoke(ISpeechTextSelectionInformation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18551 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18552}
18553/*** ISpeechTextSelectionInformation methods ***/
18554static inline HRESULT ISpeechTextSelectionInformation_put_ActiveOffset(ISpeechTextSelectionInformation* This,LONG ActiveOffset) {
18555 return This->lpVtbl->put_ActiveOffset(This,ActiveOffset);
18556}
18557static inline HRESULT ISpeechTextSelectionInformation_get_ActiveOffset(ISpeechTextSelectionInformation* This,LONG *ActiveOffset) {
18558 return This->lpVtbl->get_ActiveOffset(This,ActiveOffset);
18559}
18560static inline HRESULT ISpeechTextSelectionInformation_put_ActiveLength(ISpeechTextSelectionInformation* This,LONG ActiveLength) {
18561 return This->lpVtbl->put_ActiveLength(This,ActiveLength);
18562}
18563static inline HRESULT ISpeechTextSelectionInformation_get_ActiveLength(ISpeechTextSelectionInformation* This,LONG *ActiveLength) {
18564 return This->lpVtbl->get_ActiveLength(This,ActiveLength);
18565}
18566static inline HRESULT ISpeechTextSelectionInformation_put_SelectionOffset(ISpeechTextSelectionInformation* This,LONG SelectionOffset) {
18567 return This->lpVtbl->put_SelectionOffset(This,SelectionOffset);
18568}
18569static inline HRESULT ISpeechTextSelectionInformation_get_SelectionOffset(ISpeechTextSelectionInformation* This,LONG *SelectionOffset) {
18570 return This->lpVtbl->get_SelectionOffset(This,SelectionOffset);
18571}
18572static inline HRESULT ISpeechTextSelectionInformation_put_SelectionLength(ISpeechTextSelectionInformation* This,LONG SelectionLength) {
18573 return This->lpVtbl->put_SelectionLength(This,SelectionLength);
18574}
18575static inline HRESULT ISpeechTextSelectionInformation_get_SelectionLength(ISpeechTextSelectionInformation* This,LONG *SelectionLength) {
18576 return This->lpVtbl->get_SelectionLength(This,SelectionLength);
18577}
18578#endif
18579#endif
18580
18581#endif
18582
18583
18584#endif /* __ISpeechTextSelectionInformation_INTERFACE_DEFINED__ */
18585
18586/*****************************************************************************
18587 * ISpeechRecoResult interface
18588 */
18589#ifndef __ISpeechRecoResult_INTERFACE_DEFINED__
18590#define __ISpeechRecoResult_INTERFACE_DEFINED__
18591
18592DEFINE_GUID(IID_ISpeechRecoResult, 0xed2879cf, 0xced9, 0x4ee6, 0xa5,0x34, 0xde,0x01,0x91,0xd5,0x46,0x8d);
18593#if defined(__cplusplus) && !defined(CINTERFACE)
18594MIDL_INTERFACE("ed2879cf-ced9-4ee6-a534-de0191d5468d")
18595ISpeechRecoResult : public IDispatch
18596{
18597 virtual HRESULT STDMETHODCALLTYPE get_RecoContext(
18598 ISpeechRecoContext **RecoContext) = 0;
18599
18600 virtual HRESULT STDMETHODCALLTYPE get_Times(
18601 ISpeechRecoResultTimes **Times) = 0;
18602
18603 virtual HRESULT STDMETHODCALLTYPE putref_AudioFormat(
18604 ISpeechAudioFormat *Format) = 0;
18605
18606 virtual HRESULT STDMETHODCALLTYPE get_AudioFormat(
18607 ISpeechAudioFormat **Format) = 0;
18608
18609 virtual HRESULT STDMETHODCALLTYPE get_PhraseInfo(
18610 ISpeechPhraseInfo **PhraseInfo) = 0;
18611
18612 virtual HRESULT STDMETHODCALLTYPE Alternates(
18613 LONG RequestCount,
18614 LONG StartElement,
18615 LONG Elements,
18616 ISpeechPhraseAlternates **Alternates) = 0;
18617
18618 virtual HRESULT STDMETHODCALLTYPE Audio(
18619 LONG StartElement,
18620 LONG Elements,
18621 ISpeechMemoryStream **Stream) = 0;
18622
18623 virtual HRESULT STDMETHODCALLTYPE SpeakAudio(
18624 LONG StartElement,
18625 LONG Elements,
18626 SpeechVoiceSpeakFlags Flags,
18627 LONG *StreamNumber) = 0;
18628
18629 virtual HRESULT STDMETHODCALLTYPE SaveToMemory(
18630 VARIANT *ResultBlock) = 0;
18631
18632 virtual HRESULT STDMETHODCALLTYPE DiscardResultInfo(
18633 SpeechDiscardType ValueTypes) = 0;
18634
18635};
18636#ifdef __CRT_UUID_DECL
18637__CRT_UUID_DECL(ISpeechRecoResult, 0xed2879cf, 0xced9, 0x4ee6, 0xa5,0x34, 0xde,0x01,0x91,0xd5,0x46,0x8d)
18638#endif
18639#else
18640typedef struct ISpeechRecoResultVtbl {
18641 BEGIN_INTERFACE
18642
18643 /*** IUnknown methods ***/
18644 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18645 ISpeechRecoResult *This,
18646 REFIID riid,
18647 void **ppvObject);
18648
18649 ULONG (STDMETHODCALLTYPE *AddRef)(
18650 ISpeechRecoResult *This);
18651
18652 ULONG (STDMETHODCALLTYPE *Release)(
18653 ISpeechRecoResult *This);
18654
18655 /*** IDispatch methods ***/
18656 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18657 ISpeechRecoResult *This,
18658 UINT *pctinfo);
18659
18660 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18661 ISpeechRecoResult *This,
18662 UINT iTInfo,
18663 LCID lcid,
18664 ITypeInfo **ppTInfo);
18665
18666 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18667 ISpeechRecoResult *This,
18668 REFIID riid,
18669 LPOLESTR *rgszNames,
18670 UINT cNames,
18671 LCID lcid,
18672 DISPID *rgDispId);
18673
18674 HRESULT (STDMETHODCALLTYPE *Invoke)(
18675 ISpeechRecoResult *This,
18676 DISPID dispIdMember,
18677 REFIID riid,
18678 LCID lcid,
18679 WORD wFlags,
18680 DISPPARAMS *pDispParams,
18681 VARIANT *pVarResult,
18682 EXCEPINFO *pExcepInfo,
18683 UINT *puArgErr);
18684
18685 /*** ISpeechRecoResult methods ***/
18686 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
18687 ISpeechRecoResult *This,
18688 ISpeechRecoContext **RecoContext);
18689
18690 HRESULT (STDMETHODCALLTYPE *get_Times)(
18691 ISpeechRecoResult *This,
18692 ISpeechRecoResultTimes **Times);
18693
18694 HRESULT (STDMETHODCALLTYPE *putref_AudioFormat)(
18695 ISpeechRecoResult *This,
18696 ISpeechAudioFormat *Format);
18697
18698 HRESULT (STDMETHODCALLTYPE *get_AudioFormat)(
18699 ISpeechRecoResult *This,
18700 ISpeechAudioFormat **Format);
18701
18702 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
18703 ISpeechRecoResult *This,
18704 ISpeechPhraseInfo **PhraseInfo);
18705
18706 HRESULT (STDMETHODCALLTYPE *Alternates)(
18707 ISpeechRecoResult *This,
18708 LONG RequestCount,
18709 LONG StartElement,
18710 LONG Elements,
18711 ISpeechPhraseAlternates **Alternates);
18712
18713 HRESULT (STDMETHODCALLTYPE *Audio)(
18714 ISpeechRecoResult *This,
18715 LONG StartElement,
18716 LONG Elements,
18717 ISpeechMemoryStream **Stream);
18718
18719 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
18720 ISpeechRecoResult *This,
18721 LONG StartElement,
18722 LONG Elements,
18723 SpeechVoiceSpeakFlags Flags,
18724 LONG *StreamNumber);
18725
18726 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
18727 ISpeechRecoResult *This,
18728 VARIANT *ResultBlock);
18729
18730 HRESULT (STDMETHODCALLTYPE *DiscardResultInfo)(
18731 ISpeechRecoResult *This,
18732 SpeechDiscardType ValueTypes);
18733
18734 END_INTERFACE
18735} ISpeechRecoResultVtbl;
18736
18737interface ISpeechRecoResult {
18738 CONST_VTBL ISpeechRecoResultVtbl* lpVtbl;
18739};
18740
18741#ifdef COBJMACROS
18742#ifndef WIDL_C_INLINE_WRAPPERS
18743/*** IUnknown methods ***/
18744#define ISpeechRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18745#define ISpeechRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
18746#define ISpeechRecoResult_Release(This) (This)->lpVtbl->Release(This)
18747/*** IDispatch methods ***/
18748#define ISpeechRecoResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18749#define ISpeechRecoResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18750#define ISpeechRecoResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18751#define ISpeechRecoResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18752/*** ISpeechRecoResult methods ***/
18753#define ISpeechRecoResult_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
18754#define ISpeechRecoResult_get_Times(This,Times) (This)->lpVtbl->get_Times(This,Times)
18755#define ISpeechRecoResult_putref_AudioFormat(This,Format) (This)->lpVtbl->putref_AudioFormat(This,Format)
18756#define ISpeechRecoResult_get_AudioFormat(This,Format) (This)->lpVtbl->get_AudioFormat(This,Format)
18757#define ISpeechRecoResult_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
18758#define ISpeechRecoResult_Alternates(This,RequestCount,StartElement,Elements,Alternates) (This)->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates)
18759#define ISpeechRecoResult_Audio(This,StartElement,Elements,Stream) (This)->lpVtbl->Audio(This,StartElement,Elements,Stream)
18760#define ISpeechRecoResult_SpeakAudio(This,StartElement,Elements,Flags,StreamNumber) (This)->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber)
18761#define ISpeechRecoResult_SaveToMemory(This,ResultBlock) (This)->lpVtbl->SaveToMemory(This,ResultBlock)
18762#define ISpeechRecoResult_DiscardResultInfo(This,ValueTypes) (This)->lpVtbl->DiscardResultInfo(This,ValueTypes)
18763#else
18764/*** IUnknown methods ***/
18765static inline HRESULT ISpeechRecoResult_QueryInterface(ISpeechRecoResult* This,REFIID riid,void **ppvObject) {
18766 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18767}
18768static inline ULONG ISpeechRecoResult_AddRef(ISpeechRecoResult* This) {
18769 return This->lpVtbl->AddRef(This);
18770}
18771static inline ULONG ISpeechRecoResult_Release(ISpeechRecoResult* This) {
18772 return This->lpVtbl->Release(This);
18773}
18774/*** IDispatch methods ***/
18775static inline HRESULT ISpeechRecoResult_GetTypeInfoCount(ISpeechRecoResult* This,UINT *pctinfo) {
18776 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18777}
18778static inline HRESULT ISpeechRecoResult_GetTypeInfo(ISpeechRecoResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18779 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18780}
18781static inline HRESULT ISpeechRecoResult_GetIDsOfNames(ISpeechRecoResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18782 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18783}
18784static inline HRESULT ISpeechRecoResult_Invoke(ISpeechRecoResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18785 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18786}
18787/*** ISpeechRecoResult methods ***/
18788static inline HRESULT ISpeechRecoResult_get_RecoContext(ISpeechRecoResult* This,ISpeechRecoContext **RecoContext) {
18789 return This->lpVtbl->get_RecoContext(This,RecoContext);
18790}
18791static inline HRESULT ISpeechRecoResult_get_Times(ISpeechRecoResult* This,ISpeechRecoResultTimes **Times) {
18792 return This->lpVtbl->get_Times(This,Times);
18793}
18794static inline HRESULT ISpeechRecoResult_putref_AudioFormat(ISpeechRecoResult* This,ISpeechAudioFormat *Format) {
18795 return This->lpVtbl->putref_AudioFormat(This,Format);
18796}
18797static inline HRESULT ISpeechRecoResult_get_AudioFormat(ISpeechRecoResult* This,ISpeechAudioFormat **Format) {
18798 return This->lpVtbl->get_AudioFormat(This,Format);
18799}
18800static inline HRESULT ISpeechRecoResult_get_PhraseInfo(ISpeechRecoResult* This,ISpeechPhraseInfo **PhraseInfo) {
18801 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
18802}
18803static inline HRESULT ISpeechRecoResult_Alternates(ISpeechRecoResult* This,LONG RequestCount,LONG StartElement,LONG Elements,ISpeechPhraseAlternates **Alternates) {
18804 return This->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates);
18805}
18806static inline HRESULT ISpeechRecoResult_Audio(ISpeechRecoResult* This,LONG StartElement,LONG Elements,ISpeechMemoryStream **Stream) {
18807 return This->lpVtbl->Audio(This,StartElement,Elements,Stream);
18808}
18809static inline HRESULT ISpeechRecoResult_SpeakAudio(ISpeechRecoResult* This,LONG StartElement,LONG Elements,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
18810 return This->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber);
18811}
18812static inline HRESULT ISpeechRecoResult_SaveToMemory(ISpeechRecoResult* This,VARIANT *ResultBlock) {
18813 return This->lpVtbl->SaveToMemory(This,ResultBlock);
18814}
18815static inline HRESULT ISpeechRecoResult_DiscardResultInfo(ISpeechRecoResult* This,SpeechDiscardType ValueTypes) {
18816 return This->lpVtbl->DiscardResultInfo(This,ValueTypes);
18817}
18818#endif
18819#endif
18820
18821#endif
18822
18823
18824#endif /* __ISpeechRecoResult_INTERFACE_DEFINED__ */
18825
18826/*****************************************************************************
18827 * ISpeechXMLRecoResult interface
18828 */
18829#ifndef __ISpeechXMLRecoResult_INTERFACE_DEFINED__
18830#define __ISpeechXMLRecoResult_INTERFACE_DEFINED__
18831
18832DEFINE_GUID(IID_ISpeechXMLRecoResult, 0xaaec54af, 0x8f85, 0x4924, 0x94,0x4d, 0xb7,0x9d,0x39,0xd7,0x2e,0x19);
18833#if defined(__cplusplus) && !defined(CINTERFACE)
18834MIDL_INTERFACE("aaec54af-8f85-4924-944d-b79d39d72e19")
18835ISpeechXMLRecoResult : public ISpeechRecoResult
18836{
18837 virtual HRESULT STDMETHODCALLTYPE GetXMLResult(
18838 SPXMLRESULTOPTIONS Options,
18839 BSTR *pResult) = 0;
18840
18841 virtual HRESULT STDMETHODCALLTYPE GetXMLErrorInfo(
18842 LONG *LineNumber,
18843 BSTR *ScriptLine,
18844 BSTR *Source,
18845 BSTR *Description,
18846 LONG *ResultCode,
18847 VARIANT_BOOL *IsError) = 0;
18848
18849};
18850#ifdef __CRT_UUID_DECL
18851__CRT_UUID_DECL(ISpeechXMLRecoResult, 0xaaec54af, 0x8f85, 0x4924, 0x94,0x4d, 0xb7,0x9d,0x39,0xd7,0x2e,0x19)
18852#endif
18853#else
18854typedef struct ISpeechXMLRecoResultVtbl {
18855 BEGIN_INTERFACE
18856
18857 /*** IUnknown methods ***/
18858 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18859 ISpeechXMLRecoResult *This,
18860 REFIID riid,
18861 void **ppvObject);
18862
18863 ULONG (STDMETHODCALLTYPE *AddRef)(
18864 ISpeechXMLRecoResult *This);
18865
18866 ULONG (STDMETHODCALLTYPE *Release)(
18867 ISpeechXMLRecoResult *This);
18868
18869 /*** IDispatch methods ***/
18870 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18871 ISpeechXMLRecoResult *This,
18872 UINT *pctinfo);
18873
18874 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18875 ISpeechXMLRecoResult *This,
18876 UINT iTInfo,
18877 LCID lcid,
18878 ITypeInfo **ppTInfo);
18879
18880 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18881 ISpeechXMLRecoResult *This,
18882 REFIID riid,
18883 LPOLESTR *rgszNames,
18884 UINT cNames,
18885 LCID lcid,
18886 DISPID *rgDispId);
18887
18888 HRESULT (STDMETHODCALLTYPE *Invoke)(
18889 ISpeechXMLRecoResult *This,
18890 DISPID dispIdMember,
18891 REFIID riid,
18892 LCID lcid,
18893 WORD wFlags,
18894 DISPPARAMS *pDispParams,
18895 VARIANT *pVarResult,
18896 EXCEPINFO *pExcepInfo,
18897 UINT *puArgErr);
18898
18899 /*** ISpeechRecoResult methods ***/
18900 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
18901 ISpeechXMLRecoResult *This,
18902 ISpeechRecoContext **RecoContext);
18903
18904 HRESULT (STDMETHODCALLTYPE *get_Times)(
18905 ISpeechXMLRecoResult *This,
18906 ISpeechRecoResultTimes **Times);
18907
18908 HRESULT (STDMETHODCALLTYPE *putref_AudioFormat)(
18909 ISpeechXMLRecoResult *This,
18910 ISpeechAudioFormat *Format);
18911
18912 HRESULT (STDMETHODCALLTYPE *get_AudioFormat)(
18913 ISpeechXMLRecoResult *This,
18914 ISpeechAudioFormat **Format);
18915
18916 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
18917 ISpeechXMLRecoResult *This,
18918 ISpeechPhraseInfo **PhraseInfo);
18919
18920 HRESULT (STDMETHODCALLTYPE *Alternates)(
18921 ISpeechXMLRecoResult *This,
18922 LONG RequestCount,
18923 LONG StartElement,
18924 LONG Elements,
18925 ISpeechPhraseAlternates **Alternates);
18926
18927 HRESULT (STDMETHODCALLTYPE *Audio)(
18928 ISpeechXMLRecoResult *This,
18929 LONG StartElement,
18930 LONG Elements,
18931 ISpeechMemoryStream **Stream);
18932
18933 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
18934 ISpeechXMLRecoResult *This,
18935 LONG StartElement,
18936 LONG Elements,
18937 SpeechVoiceSpeakFlags Flags,
18938 LONG *StreamNumber);
18939
18940 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
18941 ISpeechXMLRecoResult *This,
18942 VARIANT *ResultBlock);
18943
18944 HRESULT (STDMETHODCALLTYPE *DiscardResultInfo)(
18945 ISpeechXMLRecoResult *This,
18946 SpeechDiscardType ValueTypes);
18947
18948 /*** ISpeechXMLRecoResult methods ***/
18949 HRESULT (STDMETHODCALLTYPE *GetXMLResult)(
18950 ISpeechXMLRecoResult *This,
18951 SPXMLRESULTOPTIONS Options,
18952 BSTR *pResult);
18953
18954 HRESULT (STDMETHODCALLTYPE *GetXMLErrorInfo)(
18955 ISpeechXMLRecoResult *This,
18956 LONG *LineNumber,
18957 BSTR *ScriptLine,
18958 BSTR *Source,
18959 BSTR *Description,
18960 LONG *ResultCode,
18961 VARIANT_BOOL *IsError);
18962
18963 END_INTERFACE
18964} ISpeechXMLRecoResultVtbl;
18965
18966interface ISpeechXMLRecoResult {
18967 CONST_VTBL ISpeechXMLRecoResultVtbl* lpVtbl;
18968};
18969
18970#ifdef COBJMACROS
18971#ifndef WIDL_C_INLINE_WRAPPERS
18972/*** IUnknown methods ***/
18973#define ISpeechXMLRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18974#define ISpeechXMLRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
18975#define ISpeechXMLRecoResult_Release(This) (This)->lpVtbl->Release(This)
18976/*** IDispatch methods ***/
18977#define ISpeechXMLRecoResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18978#define ISpeechXMLRecoResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18979#define ISpeechXMLRecoResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18980#define ISpeechXMLRecoResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18981/*** ISpeechRecoResult methods ***/
18982#define ISpeechXMLRecoResult_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
18983#define ISpeechXMLRecoResult_get_Times(This,Times) (This)->lpVtbl->get_Times(This,Times)
18984#define ISpeechXMLRecoResult_putref_AudioFormat(This,Format) (This)->lpVtbl->putref_AudioFormat(This,Format)
18985#define ISpeechXMLRecoResult_get_AudioFormat(This,Format) (This)->lpVtbl->get_AudioFormat(This,Format)
18986#define ISpeechXMLRecoResult_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
18987#define ISpeechXMLRecoResult_Alternates(This,RequestCount,StartElement,Elements,Alternates) (This)->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates)
18988#define ISpeechXMLRecoResult_Audio(This,StartElement,Elements,Stream) (This)->lpVtbl->Audio(This,StartElement,Elements,Stream)
18989#define ISpeechXMLRecoResult_SpeakAudio(This,StartElement,Elements,Flags,StreamNumber) (This)->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber)
18990#define ISpeechXMLRecoResult_SaveToMemory(This,ResultBlock) (This)->lpVtbl->SaveToMemory(This,ResultBlock)
18991#define ISpeechXMLRecoResult_DiscardResultInfo(This,ValueTypes) (This)->lpVtbl->DiscardResultInfo(This,ValueTypes)
18992/*** ISpeechXMLRecoResult methods ***/
18993#define ISpeechXMLRecoResult_GetXMLResult(This,Options,pResult) (This)->lpVtbl->GetXMLResult(This,Options,pResult)
18994#define ISpeechXMLRecoResult_GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError) (This)->lpVtbl->GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError)
18995#else
18996/*** IUnknown methods ***/
18997static inline HRESULT ISpeechXMLRecoResult_QueryInterface(ISpeechXMLRecoResult* This,REFIID riid,void **ppvObject) {
18998 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18999}
19000static inline ULONG ISpeechXMLRecoResult_AddRef(ISpeechXMLRecoResult* This) {
19001 return This->lpVtbl->AddRef(This);
19002}
19003static inline ULONG ISpeechXMLRecoResult_Release(ISpeechXMLRecoResult* This) {
19004 return This->lpVtbl->Release(This);
19005}
19006/*** IDispatch methods ***/
19007static inline HRESULT ISpeechXMLRecoResult_GetTypeInfoCount(ISpeechXMLRecoResult* This,UINT *pctinfo) {
19008 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19009}
19010static inline HRESULT ISpeechXMLRecoResult_GetTypeInfo(ISpeechXMLRecoResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19011 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19012}
19013static inline HRESULT ISpeechXMLRecoResult_GetIDsOfNames(ISpeechXMLRecoResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19014 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19015}
19016static inline HRESULT ISpeechXMLRecoResult_Invoke(ISpeechXMLRecoResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19017 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19018}
19019/*** ISpeechRecoResult methods ***/
19020static inline HRESULT ISpeechXMLRecoResult_get_RecoContext(ISpeechXMLRecoResult* This,ISpeechRecoContext **RecoContext) {
19021 return This->lpVtbl->get_RecoContext(This,RecoContext);
19022}
19023static inline HRESULT ISpeechXMLRecoResult_get_Times(ISpeechXMLRecoResult* This,ISpeechRecoResultTimes **Times) {
19024 return This->lpVtbl->get_Times(This,Times);
19025}
19026static inline HRESULT ISpeechXMLRecoResult_putref_AudioFormat(ISpeechXMLRecoResult* This,ISpeechAudioFormat *Format) {
19027 return This->lpVtbl->putref_AudioFormat(This,Format);
19028}
19029static inline HRESULT ISpeechXMLRecoResult_get_AudioFormat(ISpeechXMLRecoResult* This,ISpeechAudioFormat **Format) {
19030 return This->lpVtbl->get_AudioFormat(This,Format);
19031}
19032static inline HRESULT ISpeechXMLRecoResult_get_PhraseInfo(ISpeechXMLRecoResult* This,ISpeechPhraseInfo **PhraseInfo) {
19033 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
19034}
19035static inline HRESULT ISpeechXMLRecoResult_Alternates(ISpeechXMLRecoResult* This,LONG RequestCount,LONG StartElement,LONG Elements,ISpeechPhraseAlternates **Alternates) {
19036 return This->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates);
19037}
19038static inline HRESULT ISpeechXMLRecoResult_Audio(ISpeechXMLRecoResult* This,LONG StartElement,LONG Elements,ISpeechMemoryStream **Stream) {
19039 return This->lpVtbl->Audio(This,StartElement,Elements,Stream);
19040}
19041static inline HRESULT ISpeechXMLRecoResult_SpeakAudio(ISpeechXMLRecoResult* This,LONG StartElement,LONG Elements,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
19042 return This->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber);
19043}
19044static inline HRESULT ISpeechXMLRecoResult_SaveToMemory(ISpeechXMLRecoResult* This,VARIANT *ResultBlock) {
19045 return This->lpVtbl->SaveToMemory(This,ResultBlock);
19046}
19047static inline HRESULT ISpeechXMLRecoResult_DiscardResultInfo(ISpeechXMLRecoResult* This,SpeechDiscardType ValueTypes) {
19048 return This->lpVtbl->DiscardResultInfo(This,ValueTypes);
19049}
19050/*** ISpeechXMLRecoResult methods ***/
19051static inline HRESULT ISpeechXMLRecoResult_GetXMLResult(ISpeechXMLRecoResult* This,SPXMLRESULTOPTIONS Options,BSTR *pResult) {
19052 return This->lpVtbl->GetXMLResult(This,Options,pResult);
19053}
19054static inline HRESULT ISpeechXMLRecoResult_GetXMLErrorInfo(ISpeechXMLRecoResult* This,LONG *LineNumber,BSTR *ScriptLine,BSTR *Source,BSTR *Description,LONG *ResultCode,VARIANT_BOOL *IsError) {
19055 return This->lpVtbl->GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError);
19056}
19057#endif
19058#endif
19059
19060#endif
19061
19062
19063#endif /* __ISpeechXMLRecoResult_INTERFACE_DEFINED__ */
19064
19065/*****************************************************************************
19066 * ISpeechRecoResult2 interface
19067 */
19068#ifndef __ISpeechRecoResult2_INTERFACE_DEFINED__
19069#define __ISpeechRecoResult2_INTERFACE_DEFINED__
19070
19071DEFINE_GUID(IID_ISpeechRecoResult2, 0x8e0a246d, 0xd3c8, 0x45de, 0x86,0x57, 0x04,0x29,0x0c,0x45,0x8c,0x3c);
19072#if defined(__cplusplus) && !defined(CINTERFACE)
19073MIDL_INTERFACE("8e0a246d-d3c8-45de-8657-04290c458c3c")
19074ISpeechRecoResult2 : public ISpeechRecoResult
19075{
19076 virtual HRESULT STDMETHODCALLTYPE SetTextFeedback(
19077 BSTR Feedback,
19078 VARIANT_BOOL WasSuccessful) = 0;
19079
19080};
19081#ifdef __CRT_UUID_DECL
19082__CRT_UUID_DECL(ISpeechRecoResult2, 0x8e0a246d, 0xd3c8, 0x45de, 0x86,0x57, 0x04,0x29,0x0c,0x45,0x8c,0x3c)
19083#endif
19084#else
19085typedef struct ISpeechRecoResult2Vtbl {
19086 BEGIN_INTERFACE
19087
19088 /*** IUnknown methods ***/
19089 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19090 ISpeechRecoResult2 *This,
19091 REFIID riid,
19092 void **ppvObject);
19093
19094 ULONG (STDMETHODCALLTYPE *AddRef)(
19095 ISpeechRecoResult2 *This);
19096
19097 ULONG (STDMETHODCALLTYPE *Release)(
19098 ISpeechRecoResult2 *This);
19099
19100 /*** IDispatch methods ***/
19101 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19102 ISpeechRecoResult2 *This,
19103 UINT *pctinfo);
19104
19105 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19106 ISpeechRecoResult2 *This,
19107 UINT iTInfo,
19108 LCID lcid,
19109 ITypeInfo **ppTInfo);
19110
19111 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19112 ISpeechRecoResult2 *This,
19113 REFIID riid,
19114 LPOLESTR *rgszNames,
19115 UINT cNames,
19116 LCID lcid,
19117 DISPID *rgDispId);
19118
19119 HRESULT (STDMETHODCALLTYPE *Invoke)(
19120 ISpeechRecoResult2 *This,
19121 DISPID dispIdMember,
19122 REFIID riid,
19123 LCID lcid,
19124 WORD wFlags,
19125 DISPPARAMS *pDispParams,
19126 VARIANT *pVarResult,
19127 EXCEPINFO *pExcepInfo,
19128 UINT *puArgErr);
19129
19130 /*** ISpeechRecoResult methods ***/
19131 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
19132 ISpeechRecoResult2 *This,
19133 ISpeechRecoContext **RecoContext);
19134
19135 HRESULT (STDMETHODCALLTYPE *get_Times)(
19136 ISpeechRecoResult2 *This,
19137 ISpeechRecoResultTimes **Times);
19138
19139 HRESULT (STDMETHODCALLTYPE *putref_AudioFormat)(
19140 ISpeechRecoResult2 *This,
19141 ISpeechAudioFormat *Format);
19142
19143 HRESULT (STDMETHODCALLTYPE *get_AudioFormat)(
19144 ISpeechRecoResult2 *This,
19145 ISpeechAudioFormat **Format);
19146
19147 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
19148 ISpeechRecoResult2 *This,
19149 ISpeechPhraseInfo **PhraseInfo);
19150
19151 HRESULT (STDMETHODCALLTYPE *Alternates)(
19152 ISpeechRecoResult2 *This,
19153 LONG RequestCount,
19154 LONG StartElement,
19155 LONG Elements,
19156 ISpeechPhraseAlternates **Alternates);
19157
19158 HRESULT (STDMETHODCALLTYPE *Audio)(
19159 ISpeechRecoResult2 *This,
19160 LONG StartElement,
19161 LONG Elements,
19162 ISpeechMemoryStream **Stream);
19163
19164 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
19165 ISpeechRecoResult2 *This,
19166 LONG StartElement,
19167 LONG Elements,
19168 SpeechVoiceSpeakFlags Flags,
19169 LONG *StreamNumber);
19170
19171 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
19172 ISpeechRecoResult2 *This,
19173 VARIANT *ResultBlock);
19174
19175 HRESULT (STDMETHODCALLTYPE *DiscardResultInfo)(
19176 ISpeechRecoResult2 *This,
19177 SpeechDiscardType ValueTypes);
19178
19179 /*** ISpeechRecoResult2 methods ***/
19180 HRESULT (STDMETHODCALLTYPE *SetTextFeedback)(
19181 ISpeechRecoResult2 *This,
19182 BSTR Feedback,
19183 VARIANT_BOOL WasSuccessful);
19184
19185 END_INTERFACE
19186} ISpeechRecoResult2Vtbl;
19187
19188interface ISpeechRecoResult2 {
19189 CONST_VTBL ISpeechRecoResult2Vtbl* lpVtbl;
19190};
19191
19192#ifdef COBJMACROS
19193#ifndef WIDL_C_INLINE_WRAPPERS
19194/*** IUnknown methods ***/
19195#define ISpeechRecoResult2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19196#define ISpeechRecoResult2_AddRef(This) (This)->lpVtbl->AddRef(This)
19197#define ISpeechRecoResult2_Release(This) (This)->lpVtbl->Release(This)
19198/*** IDispatch methods ***/
19199#define ISpeechRecoResult2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19200#define ISpeechRecoResult2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19201#define ISpeechRecoResult2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19202#define ISpeechRecoResult2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19203/*** ISpeechRecoResult methods ***/
19204#define ISpeechRecoResult2_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
19205#define ISpeechRecoResult2_get_Times(This,Times) (This)->lpVtbl->get_Times(This,Times)
19206#define ISpeechRecoResult2_putref_AudioFormat(This,Format) (This)->lpVtbl->putref_AudioFormat(This,Format)
19207#define ISpeechRecoResult2_get_AudioFormat(This,Format) (This)->lpVtbl->get_AudioFormat(This,Format)
19208#define ISpeechRecoResult2_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
19209#define ISpeechRecoResult2_Alternates(This,RequestCount,StartElement,Elements,Alternates) (This)->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates)
19210#define ISpeechRecoResult2_Audio(This,StartElement,Elements,Stream) (This)->lpVtbl->Audio(This,StartElement,Elements,Stream)
19211#define ISpeechRecoResult2_SpeakAudio(This,StartElement,Elements,Flags,StreamNumber) (This)->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber)
19212#define ISpeechRecoResult2_SaveToMemory(This,ResultBlock) (This)->lpVtbl->SaveToMemory(This,ResultBlock)
19213#define ISpeechRecoResult2_DiscardResultInfo(This,ValueTypes) (This)->lpVtbl->DiscardResultInfo(This,ValueTypes)
19214/*** ISpeechRecoResult2 methods ***/
19215#define ISpeechRecoResult2_SetTextFeedback(This,Feedback,WasSuccessful) (This)->lpVtbl->SetTextFeedback(This,Feedback,WasSuccessful)
19216#else
19217/*** IUnknown methods ***/
19218static inline HRESULT ISpeechRecoResult2_QueryInterface(ISpeechRecoResult2* This,REFIID riid,void **ppvObject) {
19219 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19220}
19221static inline ULONG ISpeechRecoResult2_AddRef(ISpeechRecoResult2* This) {
19222 return This->lpVtbl->AddRef(This);
19223}
19224static inline ULONG ISpeechRecoResult2_Release(ISpeechRecoResult2* This) {
19225 return This->lpVtbl->Release(This);
19226}
19227/*** IDispatch methods ***/
19228static inline HRESULT ISpeechRecoResult2_GetTypeInfoCount(ISpeechRecoResult2* This,UINT *pctinfo) {
19229 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19230}
19231static inline HRESULT ISpeechRecoResult2_GetTypeInfo(ISpeechRecoResult2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19232 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19233}
19234static inline HRESULT ISpeechRecoResult2_GetIDsOfNames(ISpeechRecoResult2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19235 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19236}
19237static inline HRESULT ISpeechRecoResult2_Invoke(ISpeechRecoResult2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19238 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19239}
19240/*** ISpeechRecoResult methods ***/
19241static inline HRESULT ISpeechRecoResult2_get_RecoContext(ISpeechRecoResult2* This,ISpeechRecoContext **RecoContext) {
19242 return This->lpVtbl->get_RecoContext(This,RecoContext);
19243}
19244static inline HRESULT ISpeechRecoResult2_get_Times(ISpeechRecoResult2* This,ISpeechRecoResultTimes **Times) {
19245 return This->lpVtbl->get_Times(This,Times);
19246}
19247static inline HRESULT ISpeechRecoResult2_putref_AudioFormat(ISpeechRecoResult2* This,ISpeechAudioFormat *Format) {
19248 return This->lpVtbl->putref_AudioFormat(This,Format);
19249}
19250static inline HRESULT ISpeechRecoResult2_get_AudioFormat(ISpeechRecoResult2* This,ISpeechAudioFormat **Format) {
19251 return This->lpVtbl->get_AudioFormat(This,Format);
19252}
19253static inline HRESULT ISpeechRecoResult2_get_PhraseInfo(ISpeechRecoResult2* This,ISpeechPhraseInfo **PhraseInfo) {
19254 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
19255}
19256static inline HRESULT ISpeechRecoResult2_Alternates(ISpeechRecoResult2* This,LONG RequestCount,LONG StartElement,LONG Elements,ISpeechPhraseAlternates **Alternates) {
19257 return This->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates);
19258}
19259static inline HRESULT ISpeechRecoResult2_Audio(ISpeechRecoResult2* This,LONG StartElement,LONG Elements,ISpeechMemoryStream **Stream) {
19260 return This->lpVtbl->Audio(This,StartElement,Elements,Stream);
19261}
19262static inline HRESULT ISpeechRecoResult2_SpeakAudio(ISpeechRecoResult2* This,LONG StartElement,LONG Elements,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
19263 return This->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber);
19264}
19265static inline HRESULT ISpeechRecoResult2_SaveToMemory(ISpeechRecoResult2* This,VARIANT *ResultBlock) {
19266 return This->lpVtbl->SaveToMemory(This,ResultBlock);
19267}
19268static inline HRESULT ISpeechRecoResult2_DiscardResultInfo(ISpeechRecoResult2* This,SpeechDiscardType ValueTypes) {
19269 return This->lpVtbl->DiscardResultInfo(This,ValueTypes);
19270}
19271/*** ISpeechRecoResult2 methods ***/
19272static inline HRESULT ISpeechRecoResult2_SetTextFeedback(ISpeechRecoResult2* This,BSTR Feedback,VARIANT_BOOL WasSuccessful) {
19273 return This->lpVtbl->SetTextFeedback(This,Feedback,WasSuccessful);
19274}
19275#endif
19276#endif
19277
19278#endif
19279
19280
19281#endif /* __ISpeechRecoResult2_INTERFACE_DEFINED__ */
19282
19283/*****************************************************************************
19284 * ISpeechRecoResultDispatch interface
19285 */
19286#ifndef __ISpeechRecoResultDispatch_INTERFACE_DEFINED__
19287#define __ISpeechRecoResultDispatch_INTERFACE_DEFINED__
19288
19289DEFINE_GUID(IID_ISpeechRecoResultDispatch, 0x6d60eb64, 0xaced, 0x40a6, 0xbb,0xf3, 0x4e,0x55,0x7f,0x71,0xde,0xe2);
19290#if defined(__cplusplus) && !defined(CINTERFACE)
19291MIDL_INTERFACE("6d60eb64-aced-40a6-bbf3-4e557f71dee2")
19292ISpeechRecoResultDispatch : public IDispatch
19293{
19294 virtual HRESULT STDMETHODCALLTYPE get_RecoContext(
19295 ISpeechRecoContext **RecoContext) = 0;
19296
19297 virtual HRESULT STDMETHODCALLTYPE get_Times(
19298 ISpeechRecoResultTimes **Times) = 0;
19299
19300 virtual HRESULT STDMETHODCALLTYPE putref_AudioFormat(
19301 ISpeechAudioFormat *Format) = 0;
19302
19303 virtual HRESULT STDMETHODCALLTYPE get_AudioFormat(
19304 ISpeechAudioFormat **Format) = 0;
19305
19306 virtual HRESULT STDMETHODCALLTYPE get_PhraseInfo(
19307 ISpeechPhraseInfo **PhraseInfo) = 0;
19308
19309 virtual HRESULT STDMETHODCALLTYPE Alternates(
19310 LONG RequestCount,
19311 LONG StartElement,
19312 LONG Elements,
19313 ISpeechPhraseAlternates **Alternates) = 0;
19314
19315 virtual HRESULT STDMETHODCALLTYPE Audio(
19316 LONG StartElement,
19317 LONG Elements,
19318 ISpeechMemoryStream **Stream) = 0;
19319
19320 virtual HRESULT STDMETHODCALLTYPE SpeakAudio(
19321 LONG StartElement,
19322 LONG Elements,
19323 SpeechVoiceSpeakFlags Flags,
19324 LONG *StreamNumber) = 0;
19325
19326 virtual HRESULT STDMETHODCALLTYPE SaveToMemory(
19327 VARIANT *ResultBlock) = 0;
19328
19329 virtual HRESULT STDMETHODCALLTYPE DiscardResultInfo(
19330 SpeechDiscardType ValueTypes) = 0;
19331
19332 virtual HRESULT STDMETHODCALLTYPE GetXMLResult(
19333 SPXMLRESULTOPTIONS Options,
19334 BSTR *pResult) = 0;
19335
19336 virtual HRESULT STDMETHODCALLTYPE GetXMLErrorInfo(
19337 LONG *LineNumber,
19338 BSTR *ScriptLine,
19339 BSTR *Source,
19340 BSTR *Description,
19341 HRESULT *ResultCode,
19342 VARIANT_BOOL *IsError) = 0;
19343
19344 virtual HRESULT STDMETHODCALLTYPE SetTextFeedback(
19345 BSTR Feedback,
19346 VARIANT_BOOL WasSuccessful) = 0;
19347
19348};
19349#ifdef __CRT_UUID_DECL
19350__CRT_UUID_DECL(ISpeechRecoResultDispatch, 0x6d60eb64, 0xaced, 0x40a6, 0xbb,0xf3, 0x4e,0x55,0x7f,0x71,0xde,0xe2)
19351#endif
19352#else
19353typedef struct ISpeechRecoResultDispatchVtbl {
19354 BEGIN_INTERFACE
19355
19356 /*** IUnknown methods ***/
19357 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19358 ISpeechRecoResultDispatch *This,
19359 REFIID riid,
19360 void **ppvObject);
19361
19362 ULONG (STDMETHODCALLTYPE *AddRef)(
19363 ISpeechRecoResultDispatch *This);
19364
19365 ULONG (STDMETHODCALLTYPE *Release)(
19366 ISpeechRecoResultDispatch *This);
19367
19368 /*** IDispatch methods ***/
19369 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19370 ISpeechRecoResultDispatch *This,
19371 UINT *pctinfo);
19372
19373 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19374 ISpeechRecoResultDispatch *This,
19375 UINT iTInfo,
19376 LCID lcid,
19377 ITypeInfo **ppTInfo);
19378
19379 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19380 ISpeechRecoResultDispatch *This,
19381 REFIID riid,
19382 LPOLESTR *rgszNames,
19383 UINT cNames,
19384 LCID lcid,
19385 DISPID *rgDispId);
19386
19387 HRESULT (STDMETHODCALLTYPE *Invoke)(
19388 ISpeechRecoResultDispatch *This,
19389 DISPID dispIdMember,
19390 REFIID riid,
19391 LCID lcid,
19392 WORD wFlags,
19393 DISPPARAMS *pDispParams,
19394 VARIANT *pVarResult,
19395 EXCEPINFO *pExcepInfo,
19396 UINT *puArgErr);
19397
19398 /*** ISpeechRecoResultDispatch methods ***/
19399 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
19400 ISpeechRecoResultDispatch *This,
19401 ISpeechRecoContext **RecoContext);
19402
19403 HRESULT (STDMETHODCALLTYPE *get_Times)(
19404 ISpeechRecoResultDispatch *This,
19405 ISpeechRecoResultTimes **Times);
19406
19407 HRESULT (STDMETHODCALLTYPE *putref_AudioFormat)(
19408 ISpeechRecoResultDispatch *This,
19409 ISpeechAudioFormat *Format);
19410
19411 HRESULT (STDMETHODCALLTYPE *get_AudioFormat)(
19412 ISpeechRecoResultDispatch *This,
19413 ISpeechAudioFormat **Format);
19414
19415 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
19416 ISpeechRecoResultDispatch *This,
19417 ISpeechPhraseInfo **PhraseInfo);
19418
19419 HRESULT (STDMETHODCALLTYPE *Alternates)(
19420 ISpeechRecoResultDispatch *This,
19421 LONG RequestCount,
19422 LONG StartElement,
19423 LONG Elements,
19424 ISpeechPhraseAlternates **Alternates);
19425
19426 HRESULT (STDMETHODCALLTYPE *Audio)(
19427 ISpeechRecoResultDispatch *This,
19428 LONG StartElement,
19429 LONG Elements,
19430 ISpeechMemoryStream **Stream);
19431
19432 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
19433 ISpeechRecoResultDispatch *This,
19434 LONG StartElement,
19435 LONG Elements,
19436 SpeechVoiceSpeakFlags Flags,
19437 LONG *StreamNumber);
19438
19439 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
19440 ISpeechRecoResultDispatch *This,
19441 VARIANT *ResultBlock);
19442
19443 HRESULT (STDMETHODCALLTYPE *DiscardResultInfo)(
19444 ISpeechRecoResultDispatch *This,
19445 SpeechDiscardType ValueTypes);
19446
19447 HRESULT (STDMETHODCALLTYPE *GetXMLResult)(
19448 ISpeechRecoResultDispatch *This,
19449 SPXMLRESULTOPTIONS Options,
19450 BSTR *pResult);
19451
19452 HRESULT (STDMETHODCALLTYPE *GetXMLErrorInfo)(
19453 ISpeechRecoResultDispatch *This,
19454 LONG *LineNumber,
19455 BSTR *ScriptLine,
19456 BSTR *Source,
19457 BSTR *Description,
19458 HRESULT *ResultCode,
19459 VARIANT_BOOL *IsError);
19460
19461 HRESULT (STDMETHODCALLTYPE *SetTextFeedback)(
19462 ISpeechRecoResultDispatch *This,
19463 BSTR Feedback,
19464 VARIANT_BOOL WasSuccessful);
19465
19466 END_INTERFACE
19467} ISpeechRecoResultDispatchVtbl;
19468
19469interface ISpeechRecoResultDispatch {
19470 CONST_VTBL ISpeechRecoResultDispatchVtbl* lpVtbl;
19471};
19472
19473#ifdef COBJMACROS
19474#ifndef WIDL_C_INLINE_WRAPPERS
19475/*** IUnknown methods ***/
19476#define ISpeechRecoResultDispatch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19477#define ISpeechRecoResultDispatch_AddRef(This) (This)->lpVtbl->AddRef(This)
19478#define ISpeechRecoResultDispatch_Release(This) (This)->lpVtbl->Release(This)
19479/*** IDispatch methods ***/
19480#define ISpeechRecoResultDispatch_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19481#define ISpeechRecoResultDispatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19482#define ISpeechRecoResultDispatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19483#define ISpeechRecoResultDispatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19484/*** ISpeechRecoResultDispatch methods ***/
19485#define ISpeechRecoResultDispatch_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
19486#define ISpeechRecoResultDispatch_get_Times(This,Times) (This)->lpVtbl->get_Times(This,Times)
19487#define ISpeechRecoResultDispatch_putref_AudioFormat(This,Format) (This)->lpVtbl->putref_AudioFormat(This,Format)
19488#define ISpeechRecoResultDispatch_get_AudioFormat(This,Format) (This)->lpVtbl->get_AudioFormat(This,Format)
19489#define ISpeechRecoResultDispatch_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
19490#define ISpeechRecoResultDispatch_Alternates(This,RequestCount,StartElement,Elements,Alternates) (This)->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates)
19491#define ISpeechRecoResultDispatch_Audio(This,StartElement,Elements,Stream) (This)->lpVtbl->Audio(This,StartElement,Elements,Stream)
19492#define ISpeechRecoResultDispatch_SpeakAudio(This,StartElement,Elements,Flags,StreamNumber) (This)->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber)
19493#define ISpeechRecoResultDispatch_SaveToMemory(This,ResultBlock) (This)->lpVtbl->SaveToMemory(This,ResultBlock)
19494#define ISpeechRecoResultDispatch_DiscardResultInfo(This,ValueTypes) (This)->lpVtbl->DiscardResultInfo(This,ValueTypes)
19495#define ISpeechRecoResultDispatch_GetXMLResult(This,Options,pResult) (This)->lpVtbl->GetXMLResult(This,Options,pResult)
19496#define ISpeechRecoResultDispatch_GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError) (This)->lpVtbl->GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError)
19497#define ISpeechRecoResultDispatch_SetTextFeedback(This,Feedback,WasSuccessful) (This)->lpVtbl->SetTextFeedback(This,Feedback,WasSuccessful)
19498#else
19499/*** IUnknown methods ***/
19500static inline HRESULT ISpeechRecoResultDispatch_QueryInterface(ISpeechRecoResultDispatch* This,REFIID riid,void **ppvObject) {
19501 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19502}
19503static inline ULONG ISpeechRecoResultDispatch_AddRef(ISpeechRecoResultDispatch* This) {
19504 return This->lpVtbl->AddRef(This);
19505}
19506static inline ULONG ISpeechRecoResultDispatch_Release(ISpeechRecoResultDispatch* This) {
19507 return This->lpVtbl->Release(This);
19508}
19509/*** IDispatch methods ***/
19510static inline HRESULT ISpeechRecoResultDispatch_GetTypeInfoCount(ISpeechRecoResultDispatch* This,UINT *pctinfo) {
19511 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19512}
19513static inline HRESULT ISpeechRecoResultDispatch_GetTypeInfo(ISpeechRecoResultDispatch* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19514 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19515}
19516static inline HRESULT ISpeechRecoResultDispatch_GetIDsOfNames(ISpeechRecoResultDispatch* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19517 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19518}
19519static inline HRESULT ISpeechRecoResultDispatch_Invoke(ISpeechRecoResultDispatch* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19520 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19521}
19522/*** ISpeechRecoResultDispatch methods ***/
19523static inline HRESULT ISpeechRecoResultDispatch_get_RecoContext(ISpeechRecoResultDispatch* This,ISpeechRecoContext **RecoContext) {
19524 return This->lpVtbl->get_RecoContext(This,RecoContext);
19525}
19526static inline HRESULT ISpeechRecoResultDispatch_get_Times(ISpeechRecoResultDispatch* This,ISpeechRecoResultTimes **Times) {
19527 return This->lpVtbl->get_Times(This,Times);
19528}
19529static inline HRESULT ISpeechRecoResultDispatch_putref_AudioFormat(ISpeechRecoResultDispatch* This,ISpeechAudioFormat *Format) {
19530 return This->lpVtbl->putref_AudioFormat(This,Format);
19531}
19532static inline HRESULT ISpeechRecoResultDispatch_get_AudioFormat(ISpeechRecoResultDispatch* This,ISpeechAudioFormat **Format) {
19533 return This->lpVtbl->get_AudioFormat(This,Format);
19534}
19535static inline HRESULT ISpeechRecoResultDispatch_get_PhraseInfo(ISpeechRecoResultDispatch* This,ISpeechPhraseInfo **PhraseInfo) {
19536 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
19537}
19538static inline HRESULT ISpeechRecoResultDispatch_Alternates(ISpeechRecoResultDispatch* This,LONG RequestCount,LONG StartElement,LONG Elements,ISpeechPhraseAlternates **Alternates) {
19539 return This->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates);
19540}
19541static inline HRESULT ISpeechRecoResultDispatch_Audio(ISpeechRecoResultDispatch* This,LONG StartElement,LONG Elements,ISpeechMemoryStream **Stream) {
19542 return This->lpVtbl->Audio(This,StartElement,Elements,Stream);
19543}
19544static inline HRESULT ISpeechRecoResultDispatch_SpeakAudio(ISpeechRecoResultDispatch* This,LONG StartElement,LONG Elements,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
19545 return This->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber);
19546}
19547static inline HRESULT ISpeechRecoResultDispatch_SaveToMemory(ISpeechRecoResultDispatch* This,VARIANT *ResultBlock) {
19548 return This->lpVtbl->SaveToMemory(This,ResultBlock);
19549}
19550static inline HRESULT ISpeechRecoResultDispatch_DiscardResultInfo(ISpeechRecoResultDispatch* This,SpeechDiscardType ValueTypes) {
19551 return This->lpVtbl->DiscardResultInfo(This,ValueTypes);
19552}
19553static inline HRESULT ISpeechRecoResultDispatch_GetXMLResult(ISpeechRecoResultDispatch* This,SPXMLRESULTOPTIONS Options,BSTR *pResult) {
19554 return This->lpVtbl->GetXMLResult(This,Options,pResult);
19555}
19556static inline HRESULT ISpeechRecoResultDispatch_GetXMLErrorInfo(ISpeechRecoResultDispatch* This,LONG *LineNumber,BSTR *ScriptLine,BSTR *Source,BSTR *Description,HRESULT *ResultCode,VARIANT_BOOL *IsError) {
19557 return This->lpVtbl->GetXMLErrorInfo(This,LineNumber,ScriptLine,Source,Description,ResultCode,IsError);
19558}
19559static inline HRESULT ISpeechRecoResultDispatch_SetTextFeedback(ISpeechRecoResultDispatch* This,BSTR Feedback,VARIANT_BOOL WasSuccessful) {
19560 return This->lpVtbl->SetTextFeedback(This,Feedback,WasSuccessful);
19561}
19562#endif
19563#endif
19564
19565#endif
19566
19567
19568#endif /* __ISpeechRecoResultDispatch_INTERFACE_DEFINED__ */
19569
19570/*****************************************************************************
19571 * ISpeechPhraseInfoBuilder interface
19572 */
19573#ifndef __ISpeechPhraseInfoBuilder_INTERFACE_DEFINED__
19574#define __ISpeechPhraseInfoBuilder_INTERFACE_DEFINED__
19575
19576DEFINE_GUID(IID_ISpeechPhraseInfoBuilder, 0x3b151836, 0xdf3a, 0x4e0a, 0x84,0x6c, 0xd2,0xad,0xc9,0x33,0x43,0x33);
19577#if defined(__cplusplus) && !defined(CINTERFACE)
19578MIDL_INTERFACE("3b151836-df3a-4e0a-846c-d2adc9334333")
19579ISpeechPhraseInfoBuilder : public IDispatch
19580{
19581 virtual HRESULT STDMETHODCALLTYPE RestorePhraseFromMemory(
19582 VARIANT *PhraseInMemory,
19583 ISpeechPhraseInfo **PhraseInfo) = 0;
19584
19585};
19586#ifdef __CRT_UUID_DECL
19587__CRT_UUID_DECL(ISpeechPhraseInfoBuilder, 0x3b151836, 0xdf3a, 0x4e0a, 0x84,0x6c, 0xd2,0xad,0xc9,0x33,0x43,0x33)
19588#endif
19589#else
19590typedef struct ISpeechPhraseInfoBuilderVtbl {
19591 BEGIN_INTERFACE
19592
19593 /*** IUnknown methods ***/
19594 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19595 ISpeechPhraseInfoBuilder *This,
19596 REFIID riid,
19597 void **ppvObject);
19598
19599 ULONG (STDMETHODCALLTYPE *AddRef)(
19600 ISpeechPhraseInfoBuilder *This);
19601
19602 ULONG (STDMETHODCALLTYPE *Release)(
19603 ISpeechPhraseInfoBuilder *This);
19604
19605 /*** IDispatch methods ***/
19606 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19607 ISpeechPhraseInfoBuilder *This,
19608 UINT *pctinfo);
19609
19610 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19611 ISpeechPhraseInfoBuilder *This,
19612 UINT iTInfo,
19613 LCID lcid,
19614 ITypeInfo **ppTInfo);
19615
19616 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19617 ISpeechPhraseInfoBuilder *This,
19618 REFIID riid,
19619 LPOLESTR *rgszNames,
19620 UINT cNames,
19621 LCID lcid,
19622 DISPID *rgDispId);
19623
19624 HRESULT (STDMETHODCALLTYPE *Invoke)(
19625 ISpeechPhraseInfoBuilder *This,
19626 DISPID dispIdMember,
19627 REFIID riid,
19628 LCID lcid,
19629 WORD wFlags,
19630 DISPPARAMS *pDispParams,
19631 VARIANT *pVarResult,
19632 EXCEPINFO *pExcepInfo,
19633 UINT *puArgErr);
19634
19635 /*** ISpeechPhraseInfoBuilder methods ***/
19636 HRESULT (STDMETHODCALLTYPE *RestorePhraseFromMemory)(
19637 ISpeechPhraseInfoBuilder *This,
19638 VARIANT *PhraseInMemory,
19639 ISpeechPhraseInfo **PhraseInfo);
19640
19641 END_INTERFACE
19642} ISpeechPhraseInfoBuilderVtbl;
19643
19644interface ISpeechPhraseInfoBuilder {
19645 CONST_VTBL ISpeechPhraseInfoBuilderVtbl* lpVtbl;
19646};
19647
19648#ifdef COBJMACROS
19649#ifndef WIDL_C_INLINE_WRAPPERS
19650/*** IUnknown methods ***/
19651#define ISpeechPhraseInfoBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19652#define ISpeechPhraseInfoBuilder_AddRef(This) (This)->lpVtbl->AddRef(This)
19653#define ISpeechPhraseInfoBuilder_Release(This) (This)->lpVtbl->Release(This)
19654/*** IDispatch methods ***/
19655#define ISpeechPhraseInfoBuilder_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19656#define ISpeechPhraseInfoBuilder_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19657#define ISpeechPhraseInfoBuilder_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19658#define ISpeechPhraseInfoBuilder_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19659/*** ISpeechPhraseInfoBuilder methods ***/
19660#define ISpeechPhraseInfoBuilder_RestorePhraseFromMemory(This,PhraseInMemory,PhraseInfo) (This)->lpVtbl->RestorePhraseFromMemory(This,PhraseInMemory,PhraseInfo)
19661#else
19662/*** IUnknown methods ***/
19663static inline HRESULT ISpeechPhraseInfoBuilder_QueryInterface(ISpeechPhraseInfoBuilder* This,REFIID riid,void **ppvObject) {
19664 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19665}
19666static inline ULONG ISpeechPhraseInfoBuilder_AddRef(ISpeechPhraseInfoBuilder* This) {
19667 return This->lpVtbl->AddRef(This);
19668}
19669static inline ULONG ISpeechPhraseInfoBuilder_Release(ISpeechPhraseInfoBuilder* This) {
19670 return This->lpVtbl->Release(This);
19671}
19672/*** IDispatch methods ***/
19673static inline HRESULT ISpeechPhraseInfoBuilder_GetTypeInfoCount(ISpeechPhraseInfoBuilder* This,UINT *pctinfo) {
19674 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19675}
19676static inline HRESULT ISpeechPhraseInfoBuilder_GetTypeInfo(ISpeechPhraseInfoBuilder* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19677 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19678}
19679static inline HRESULT ISpeechPhraseInfoBuilder_GetIDsOfNames(ISpeechPhraseInfoBuilder* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19680 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19681}
19682static inline HRESULT ISpeechPhraseInfoBuilder_Invoke(ISpeechPhraseInfoBuilder* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19683 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19684}
19685/*** ISpeechPhraseInfoBuilder methods ***/
19686static inline HRESULT ISpeechPhraseInfoBuilder_RestorePhraseFromMemory(ISpeechPhraseInfoBuilder* This,VARIANT *PhraseInMemory,ISpeechPhraseInfo **PhraseInfo) {
19687 return This->lpVtbl->RestorePhraseFromMemory(This,PhraseInMemory,PhraseInfo);
19688}
19689#endif
19690#endif
19691
19692#endif
19693
19694
19695#endif /* __ISpeechPhraseInfoBuilder_INTERFACE_DEFINED__ */
19696
19697/*****************************************************************************
19698 * ISpeechRecoResultTimes interface
19699 */
19700#ifndef __ISpeechRecoResultTimes_INTERFACE_DEFINED__
19701#define __ISpeechRecoResultTimes_INTERFACE_DEFINED__
19702
19703DEFINE_GUID(IID_ISpeechRecoResultTimes, 0x62b3b8fb, 0xf6e7, 0x41be, 0xbd,0xcb, 0x05,0x6b,0x1c,0x29,0xef,0xc0);
19704#if defined(__cplusplus) && !defined(CINTERFACE)
19705MIDL_INTERFACE("62b3b8fb-f6e7-41be-bdcb-056b1c29efc0")
19706ISpeechRecoResultTimes : public IDispatch
19707{
19708 virtual HRESULT STDMETHODCALLTYPE get_StreamTime(
19709 VARIANT *Time) = 0;
19710
19711 virtual HRESULT STDMETHODCALLTYPE get_Length(
19712 VARIANT *Length) = 0;
19713
19714 virtual HRESULT STDMETHODCALLTYPE get_TickCount(
19715 LONG *TickCount) = 0;
19716
19717 virtual HRESULT STDMETHODCALLTYPE get_OffsetFromStart(
19718 VARIANT *OffsetFromStart) = 0;
19719
19720};
19721#ifdef __CRT_UUID_DECL
19722__CRT_UUID_DECL(ISpeechRecoResultTimes, 0x62b3b8fb, 0xf6e7, 0x41be, 0xbd,0xcb, 0x05,0x6b,0x1c,0x29,0xef,0xc0)
19723#endif
19724#else
19725typedef struct ISpeechRecoResultTimesVtbl {
19726 BEGIN_INTERFACE
19727
19728 /*** IUnknown methods ***/
19729 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19730 ISpeechRecoResultTimes *This,
19731 REFIID riid,
19732 void **ppvObject);
19733
19734 ULONG (STDMETHODCALLTYPE *AddRef)(
19735 ISpeechRecoResultTimes *This);
19736
19737 ULONG (STDMETHODCALLTYPE *Release)(
19738 ISpeechRecoResultTimes *This);
19739
19740 /*** IDispatch methods ***/
19741 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19742 ISpeechRecoResultTimes *This,
19743 UINT *pctinfo);
19744
19745 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19746 ISpeechRecoResultTimes *This,
19747 UINT iTInfo,
19748 LCID lcid,
19749 ITypeInfo **ppTInfo);
19750
19751 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19752 ISpeechRecoResultTimes *This,
19753 REFIID riid,
19754 LPOLESTR *rgszNames,
19755 UINT cNames,
19756 LCID lcid,
19757 DISPID *rgDispId);
19758
19759 HRESULT (STDMETHODCALLTYPE *Invoke)(
19760 ISpeechRecoResultTimes *This,
19761 DISPID dispIdMember,
19762 REFIID riid,
19763 LCID lcid,
19764 WORD wFlags,
19765 DISPPARAMS *pDispParams,
19766 VARIANT *pVarResult,
19767 EXCEPINFO *pExcepInfo,
19768 UINT *puArgErr);
19769
19770 /*** ISpeechRecoResultTimes methods ***/
19771 HRESULT (STDMETHODCALLTYPE *get_StreamTime)(
19772 ISpeechRecoResultTimes *This,
19773 VARIANT *Time);
19774
19775 HRESULT (STDMETHODCALLTYPE *get_Length)(
19776 ISpeechRecoResultTimes *This,
19777 VARIANT *Length);
19778
19779 HRESULT (STDMETHODCALLTYPE *get_TickCount)(
19780 ISpeechRecoResultTimes *This,
19781 LONG *TickCount);
19782
19783 HRESULT (STDMETHODCALLTYPE *get_OffsetFromStart)(
19784 ISpeechRecoResultTimes *This,
19785 VARIANT *OffsetFromStart);
19786
19787 END_INTERFACE
19788} ISpeechRecoResultTimesVtbl;
19789
19790interface ISpeechRecoResultTimes {
19791 CONST_VTBL ISpeechRecoResultTimesVtbl* lpVtbl;
19792};
19793
19794#ifdef COBJMACROS
19795#ifndef WIDL_C_INLINE_WRAPPERS
19796/*** IUnknown methods ***/
19797#define ISpeechRecoResultTimes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19798#define ISpeechRecoResultTimes_AddRef(This) (This)->lpVtbl->AddRef(This)
19799#define ISpeechRecoResultTimes_Release(This) (This)->lpVtbl->Release(This)
19800/*** IDispatch methods ***/
19801#define ISpeechRecoResultTimes_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19802#define ISpeechRecoResultTimes_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19803#define ISpeechRecoResultTimes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19804#define ISpeechRecoResultTimes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19805/*** ISpeechRecoResultTimes methods ***/
19806#define ISpeechRecoResultTimes_get_StreamTime(This,Time) (This)->lpVtbl->get_StreamTime(This,Time)
19807#define ISpeechRecoResultTimes_get_Length(This,Length) (This)->lpVtbl->get_Length(This,Length)
19808#define ISpeechRecoResultTimes_get_TickCount(This,TickCount) (This)->lpVtbl->get_TickCount(This,TickCount)
19809#define ISpeechRecoResultTimes_get_OffsetFromStart(This,OffsetFromStart) (This)->lpVtbl->get_OffsetFromStart(This,OffsetFromStart)
19810#else
19811/*** IUnknown methods ***/
19812static inline HRESULT ISpeechRecoResultTimes_QueryInterface(ISpeechRecoResultTimes* This,REFIID riid,void **ppvObject) {
19813 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19814}
19815static inline ULONG ISpeechRecoResultTimes_AddRef(ISpeechRecoResultTimes* This) {
19816 return This->lpVtbl->AddRef(This);
19817}
19818static inline ULONG ISpeechRecoResultTimes_Release(ISpeechRecoResultTimes* This) {
19819 return This->lpVtbl->Release(This);
19820}
19821/*** IDispatch methods ***/
19822static inline HRESULT ISpeechRecoResultTimes_GetTypeInfoCount(ISpeechRecoResultTimes* This,UINT *pctinfo) {
19823 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19824}
19825static inline HRESULT ISpeechRecoResultTimes_GetTypeInfo(ISpeechRecoResultTimes* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19826 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19827}
19828static inline HRESULT ISpeechRecoResultTimes_GetIDsOfNames(ISpeechRecoResultTimes* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19829 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19830}
19831static inline HRESULT ISpeechRecoResultTimes_Invoke(ISpeechRecoResultTimes* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19832 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19833}
19834/*** ISpeechRecoResultTimes methods ***/
19835static inline HRESULT ISpeechRecoResultTimes_get_StreamTime(ISpeechRecoResultTimes* This,VARIANT *Time) {
19836 return This->lpVtbl->get_StreamTime(This,Time);
19837}
19838static inline HRESULT ISpeechRecoResultTimes_get_Length(ISpeechRecoResultTimes* This,VARIANT *Length) {
19839 return This->lpVtbl->get_Length(This,Length);
19840}
19841static inline HRESULT ISpeechRecoResultTimes_get_TickCount(ISpeechRecoResultTimes* This,LONG *TickCount) {
19842 return This->lpVtbl->get_TickCount(This,TickCount);
19843}
19844static inline HRESULT ISpeechRecoResultTimes_get_OffsetFromStart(ISpeechRecoResultTimes* This,VARIANT *OffsetFromStart) {
19845 return This->lpVtbl->get_OffsetFromStart(This,OffsetFromStart);
19846}
19847#endif
19848#endif
19849
19850#endif
19851
19852
19853#endif /* __ISpeechRecoResultTimes_INTERFACE_DEFINED__ */
19854
19855/*****************************************************************************
19856 * ISpeechPhraseAlternate interface
19857 */
19858#ifndef __ISpeechPhraseAlternate_INTERFACE_DEFINED__
19859#define __ISpeechPhraseAlternate_INTERFACE_DEFINED__
19860
19861DEFINE_GUID(IID_ISpeechPhraseAlternate, 0x27864a2a, 0x2b9f, 0x4cb8, 0x92,0xd3, 0x0d,0x27,0x22,0xfd,0x1e,0x73);
19862#if defined(__cplusplus) && !defined(CINTERFACE)
19863MIDL_INTERFACE("27864a2a-2b9f-4cb8-92d3-0d2722fd1e73")
19864ISpeechPhraseAlternate : public IDispatch
19865{
19866 virtual HRESULT STDMETHODCALLTYPE get_RecoResult(
19867 ISpeechRecoResult **RecoResult) = 0;
19868
19869 virtual HRESULT STDMETHODCALLTYPE get_StartElementInResult(
19870 LONG *StartElement) = 0;
19871
19872 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElementsInResult(
19873 LONG *NumberOfElements) = 0;
19874
19875 virtual HRESULT STDMETHODCALLTYPE get_PhraseInfo(
19876 ISpeechPhraseInfo **PhraseInfo) = 0;
19877
19878 virtual HRESULT STDMETHODCALLTYPE Commit(
19879 ) = 0;
19880
19881};
19882#ifdef __CRT_UUID_DECL
19883__CRT_UUID_DECL(ISpeechPhraseAlternate, 0x27864a2a, 0x2b9f, 0x4cb8, 0x92,0xd3, 0x0d,0x27,0x22,0xfd,0x1e,0x73)
19884#endif
19885#else
19886typedef struct ISpeechPhraseAlternateVtbl {
19887 BEGIN_INTERFACE
19888
19889 /*** IUnknown methods ***/
19890 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19891 ISpeechPhraseAlternate *This,
19892 REFIID riid,
19893 void **ppvObject);
19894
19895 ULONG (STDMETHODCALLTYPE *AddRef)(
19896 ISpeechPhraseAlternate *This);
19897
19898 ULONG (STDMETHODCALLTYPE *Release)(
19899 ISpeechPhraseAlternate *This);
19900
19901 /*** IDispatch methods ***/
19902 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19903 ISpeechPhraseAlternate *This,
19904 UINT *pctinfo);
19905
19906 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19907 ISpeechPhraseAlternate *This,
19908 UINT iTInfo,
19909 LCID lcid,
19910 ITypeInfo **ppTInfo);
19911
19912 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19913 ISpeechPhraseAlternate *This,
19914 REFIID riid,
19915 LPOLESTR *rgszNames,
19916 UINT cNames,
19917 LCID lcid,
19918 DISPID *rgDispId);
19919
19920 HRESULT (STDMETHODCALLTYPE *Invoke)(
19921 ISpeechPhraseAlternate *This,
19922 DISPID dispIdMember,
19923 REFIID riid,
19924 LCID lcid,
19925 WORD wFlags,
19926 DISPPARAMS *pDispParams,
19927 VARIANT *pVarResult,
19928 EXCEPINFO *pExcepInfo,
19929 UINT *puArgErr);
19930
19931 /*** ISpeechPhraseAlternate methods ***/
19932 HRESULT (STDMETHODCALLTYPE *get_RecoResult)(
19933 ISpeechPhraseAlternate *This,
19934 ISpeechRecoResult **RecoResult);
19935
19936 HRESULT (STDMETHODCALLTYPE *get_StartElementInResult)(
19937 ISpeechPhraseAlternate *This,
19938 LONG *StartElement);
19939
19940 HRESULT (STDMETHODCALLTYPE *get_NumberOfElementsInResult)(
19941 ISpeechPhraseAlternate *This,
19942 LONG *NumberOfElements);
19943
19944 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
19945 ISpeechPhraseAlternate *This,
19946 ISpeechPhraseInfo **PhraseInfo);
19947
19948 HRESULT (STDMETHODCALLTYPE *Commit)(
19949 ISpeechPhraseAlternate *This);
19950
19951 END_INTERFACE
19952} ISpeechPhraseAlternateVtbl;
19953
19954interface ISpeechPhraseAlternate {
19955 CONST_VTBL ISpeechPhraseAlternateVtbl* lpVtbl;
19956};
19957
19958#ifdef COBJMACROS
19959#ifndef WIDL_C_INLINE_WRAPPERS
19960/*** IUnknown methods ***/
19961#define ISpeechPhraseAlternate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19962#define ISpeechPhraseAlternate_AddRef(This) (This)->lpVtbl->AddRef(This)
19963#define ISpeechPhraseAlternate_Release(This) (This)->lpVtbl->Release(This)
19964/*** IDispatch methods ***/
19965#define ISpeechPhraseAlternate_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19966#define ISpeechPhraseAlternate_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19967#define ISpeechPhraseAlternate_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19968#define ISpeechPhraseAlternate_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19969/*** ISpeechPhraseAlternate methods ***/
19970#define ISpeechPhraseAlternate_get_RecoResult(This,RecoResult) (This)->lpVtbl->get_RecoResult(This,RecoResult)
19971#define ISpeechPhraseAlternate_get_StartElementInResult(This,StartElement) (This)->lpVtbl->get_StartElementInResult(This,StartElement)
19972#define ISpeechPhraseAlternate_get_NumberOfElementsInResult(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElementsInResult(This,NumberOfElements)
19973#define ISpeechPhraseAlternate_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
19974#define ISpeechPhraseAlternate_Commit(This) (This)->lpVtbl->Commit(This)
19975#else
19976/*** IUnknown methods ***/
19977static inline HRESULT ISpeechPhraseAlternate_QueryInterface(ISpeechPhraseAlternate* This,REFIID riid,void **ppvObject) {
19978 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19979}
19980static inline ULONG ISpeechPhraseAlternate_AddRef(ISpeechPhraseAlternate* This) {
19981 return This->lpVtbl->AddRef(This);
19982}
19983static inline ULONG ISpeechPhraseAlternate_Release(ISpeechPhraseAlternate* This) {
19984 return This->lpVtbl->Release(This);
19985}
19986/*** IDispatch methods ***/
19987static inline HRESULT ISpeechPhraseAlternate_GetTypeInfoCount(ISpeechPhraseAlternate* This,UINT *pctinfo) {
19988 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19989}
19990static inline HRESULT ISpeechPhraseAlternate_GetTypeInfo(ISpeechPhraseAlternate* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19991 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19992}
19993static inline HRESULT ISpeechPhraseAlternate_GetIDsOfNames(ISpeechPhraseAlternate* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19994 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19995}
19996static inline HRESULT ISpeechPhraseAlternate_Invoke(ISpeechPhraseAlternate* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19997 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19998}
19999/*** ISpeechPhraseAlternate methods ***/
20000static inline HRESULT ISpeechPhraseAlternate_get_RecoResult(ISpeechPhraseAlternate* This,ISpeechRecoResult **RecoResult) {
20001 return This->lpVtbl->get_RecoResult(This,RecoResult);
20002}
20003static inline HRESULT ISpeechPhraseAlternate_get_StartElementInResult(ISpeechPhraseAlternate* This,LONG *StartElement) {
20004 return This->lpVtbl->get_StartElementInResult(This,StartElement);
20005}
20006static inline HRESULT ISpeechPhraseAlternate_get_NumberOfElementsInResult(ISpeechPhraseAlternate* This,LONG *NumberOfElements) {
20007 return This->lpVtbl->get_NumberOfElementsInResult(This,NumberOfElements);
20008}
20009static inline HRESULT ISpeechPhraseAlternate_get_PhraseInfo(ISpeechPhraseAlternate* This,ISpeechPhraseInfo **PhraseInfo) {
20010 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
20011}
20012static inline HRESULT ISpeechPhraseAlternate_Commit(ISpeechPhraseAlternate* This) {
20013 return This->lpVtbl->Commit(This);
20014}
20015#endif
20016#endif
20017
20018#endif
20019
20020
20021#endif /* __ISpeechPhraseAlternate_INTERFACE_DEFINED__ */
20022
20023/*****************************************************************************
20024 * ISpeechPhraseAlternates interface
20025 */
20026#ifndef __ISpeechPhraseAlternates_INTERFACE_DEFINED__
20027#define __ISpeechPhraseAlternates_INTERFACE_DEFINED__
20028
20029DEFINE_GUID(IID_ISpeechPhraseAlternates, 0xb238b6d5, 0xf276, 0x4c3d, 0xa6,0xc1, 0x29,0x74,0x80,0x1c,0x3c,0xc2);
20030#if defined(__cplusplus) && !defined(CINTERFACE)
20031MIDL_INTERFACE("b238b6d5-f276-4c3d-a6c1-2974801c3cc2")
20032ISpeechPhraseAlternates : public IDispatch
20033{
20034 virtual HRESULT STDMETHODCALLTYPE get_Count(
20035 LONG *Count) = 0;
20036
20037 virtual HRESULT STDMETHODCALLTYPE Item(
20038 LONG Index,
20039 ISpeechPhraseAlternate **PhraseAlternate) = 0;
20040
20041 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
20042 IUnknown **EnumVARIANT) = 0;
20043
20044};
20045#ifdef __CRT_UUID_DECL
20046__CRT_UUID_DECL(ISpeechPhraseAlternates, 0xb238b6d5, 0xf276, 0x4c3d, 0xa6,0xc1, 0x29,0x74,0x80,0x1c,0x3c,0xc2)
20047#endif
20048#else
20049typedef struct ISpeechPhraseAlternatesVtbl {
20050 BEGIN_INTERFACE
20051
20052 /*** IUnknown methods ***/
20053 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20054 ISpeechPhraseAlternates *This,
20055 REFIID riid,
20056 void **ppvObject);
20057
20058 ULONG (STDMETHODCALLTYPE *AddRef)(
20059 ISpeechPhraseAlternates *This);
20060
20061 ULONG (STDMETHODCALLTYPE *Release)(
20062 ISpeechPhraseAlternates *This);
20063
20064 /*** IDispatch methods ***/
20065 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20066 ISpeechPhraseAlternates *This,
20067 UINT *pctinfo);
20068
20069 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20070 ISpeechPhraseAlternates *This,
20071 UINT iTInfo,
20072 LCID lcid,
20073 ITypeInfo **ppTInfo);
20074
20075 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20076 ISpeechPhraseAlternates *This,
20077 REFIID riid,
20078 LPOLESTR *rgszNames,
20079 UINT cNames,
20080 LCID lcid,
20081 DISPID *rgDispId);
20082
20083 HRESULT (STDMETHODCALLTYPE *Invoke)(
20084 ISpeechPhraseAlternates *This,
20085 DISPID dispIdMember,
20086 REFIID riid,
20087 LCID lcid,
20088 WORD wFlags,
20089 DISPPARAMS *pDispParams,
20090 VARIANT *pVarResult,
20091 EXCEPINFO *pExcepInfo,
20092 UINT *puArgErr);
20093
20094 /*** ISpeechPhraseAlternates methods ***/
20095 HRESULT (STDMETHODCALLTYPE *get_Count)(
20096 ISpeechPhraseAlternates *This,
20097 LONG *Count);
20098
20099 HRESULT (STDMETHODCALLTYPE *Item)(
20100 ISpeechPhraseAlternates *This,
20101 LONG Index,
20102 ISpeechPhraseAlternate **PhraseAlternate);
20103
20104 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
20105 ISpeechPhraseAlternates *This,
20106 IUnknown **EnumVARIANT);
20107
20108 END_INTERFACE
20109} ISpeechPhraseAlternatesVtbl;
20110
20111interface ISpeechPhraseAlternates {
20112 CONST_VTBL ISpeechPhraseAlternatesVtbl* lpVtbl;
20113};
20114
20115#ifdef COBJMACROS
20116#ifndef WIDL_C_INLINE_WRAPPERS
20117/*** IUnknown methods ***/
20118#define ISpeechPhraseAlternates_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20119#define ISpeechPhraseAlternates_AddRef(This) (This)->lpVtbl->AddRef(This)
20120#define ISpeechPhraseAlternates_Release(This) (This)->lpVtbl->Release(This)
20121/*** IDispatch methods ***/
20122#define ISpeechPhraseAlternates_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20123#define ISpeechPhraseAlternates_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20124#define ISpeechPhraseAlternates_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20125#define ISpeechPhraseAlternates_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20126/*** ISpeechPhraseAlternates methods ***/
20127#define ISpeechPhraseAlternates_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
20128#define ISpeechPhraseAlternates_Item(This,Index,PhraseAlternate) (This)->lpVtbl->Item(This,Index,PhraseAlternate)
20129#define ISpeechPhraseAlternates_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
20130#else
20131/*** IUnknown methods ***/
20132static inline HRESULT ISpeechPhraseAlternates_QueryInterface(ISpeechPhraseAlternates* This,REFIID riid,void **ppvObject) {
20133 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20134}
20135static inline ULONG ISpeechPhraseAlternates_AddRef(ISpeechPhraseAlternates* This) {
20136 return This->lpVtbl->AddRef(This);
20137}
20138static inline ULONG ISpeechPhraseAlternates_Release(ISpeechPhraseAlternates* This) {
20139 return This->lpVtbl->Release(This);
20140}
20141/*** IDispatch methods ***/
20142static inline HRESULT ISpeechPhraseAlternates_GetTypeInfoCount(ISpeechPhraseAlternates* This,UINT *pctinfo) {
20143 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20144}
20145static inline HRESULT ISpeechPhraseAlternates_GetTypeInfo(ISpeechPhraseAlternates* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20146 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20147}
20148static inline HRESULT ISpeechPhraseAlternates_GetIDsOfNames(ISpeechPhraseAlternates* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20149 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20150}
20151static inline HRESULT ISpeechPhraseAlternates_Invoke(ISpeechPhraseAlternates* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20152 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20153}
20154/*** ISpeechPhraseAlternates methods ***/
20155static inline HRESULT ISpeechPhraseAlternates_get_Count(ISpeechPhraseAlternates* This,LONG *Count) {
20156 return This->lpVtbl->get_Count(This,Count);
20157}
20158static inline HRESULT ISpeechPhraseAlternates_Item(ISpeechPhraseAlternates* This,LONG Index,ISpeechPhraseAlternate **PhraseAlternate) {
20159 return This->lpVtbl->Item(This,Index,PhraseAlternate);
20160}
20161static inline HRESULT ISpeechPhraseAlternates_get__NewEnum(ISpeechPhraseAlternates* This,IUnknown **EnumVARIANT) {
20162 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
20163}
20164#endif
20165#endif
20166
20167#endif
20168
20169
20170#endif /* __ISpeechPhraseAlternates_INTERFACE_DEFINED__ */
20171
20172/*****************************************************************************
20173 * ISpeechPhraseInfo interface
20174 */
20175#ifndef __ISpeechPhraseInfo_INTERFACE_DEFINED__
20176#define __ISpeechPhraseInfo_INTERFACE_DEFINED__
20177
20178DEFINE_GUID(IID_ISpeechPhraseInfo, 0x961559cf, 0x4e67, 0x4662, 0x8b,0xf0, 0xd9,0x3f,0x1f,0xcd,0x61,0xb3);
20179#if defined(__cplusplus) && !defined(CINTERFACE)
20180MIDL_INTERFACE("961559cf-4e67-4662-8bf0-d93f1fcd61b3")
20181ISpeechPhraseInfo : public IDispatch
20182{
20183 virtual HRESULT STDMETHODCALLTYPE get_LanguageId(
20184 LONG *LanguageId) = 0;
20185
20186 virtual HRESULT STDMETHODCALLTYPE get_GrammarId(
20187 VARIANT *GrammarId) = 0;
20188
20189 virtual HRESULT STDMETHODCALLTYPE get_StartTime(
20190 VARIANT *StartTime) = 0;
20191
20192 virtual HRESULT STDMETHODCALLTYPE get_AudioStreamPosition(
20193 VARIANT *AudioStreamPosition) = 0;
20194
20195 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeBytes(
20196 LONG *pAudioSizeBytes) = 0;
20197
20198 virtual HRESULT STDMETHODCALLTYPE get_RetainedSizeBytes(
20199 LONG *RetainedSizeBytes) = 0;
20200
20201 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeTime(
20202 LONG *AudioSizeTime) = 0;
20203
20204 virtual HRESULT STDMETHODCALLTYPE get_Rule(
20205 ISpeechPhraseRule **Rule) = 0;
20206
20207 virtual HRESULT STDMETHODCALLTYPE get_Properties(
20208 ISpeechPhraseProperties **Properties) = 0;
20209
20210 virtual HRESULT STDMETHODCALLTYPE get_Elements(
20211 ISpeechPhraseElements **Elements) = 0;
20212
20213 virtual HRESULT STDMETHODCALLTYPE get_Replacements(
20214 ISpeechPhraseReplacements **Replacements) = 0;
20215
20216 virtual HRESULT STDMETHODCALLTYPE get_EngineId(
20217 BSTR *EngineIdGuid) = 0;
20218
20219 virtual HRESULT STDMETHODCALLTYPE get_EnginePrivateData(
20220 VARIANT *PrivateData) = 0;
20221
20222 virtual HRESULT STDMETHODCALLTYPE SaveToMemory(
20223 VARIANT *PhraseBlock) = 0;
20224
20225 virtual HRESULT STDMETHODCALLTYPE GetText(
20226 LONG StartElement,
20227 LONG Elements,
20228 VARIANT_BOOL UseReplacements,
20229 BSTR *Text) = 0;
20230
20231 virtual HRESULT STDMETHODCALLTYPE GetDisplayAttributes(
20232 LONG StartElement,
20233 LONG Elements,
20234 VARIANT_BOOL UseReplacements,
20235 SpeechDisplayAttributes *DisplayAttributes) = 0;
20236
20237};
20238#ifdef __CRT_UUID_DECL
20239__CRT_UUID_DECL(ISpeechPhraseInfo, 0x961559cf, 0x4e67, 0x4662, 0x8b,0xf0, 0xd9,0x3f,0x1f,0xcd,0x61,0xb3)
20240#endif
20241#else
20242typedef struct ISpeechPhraseInfoVtbl {
20243 BEGIN_INTERFACE
20244
20245 /*** IUnknown methods ***/
20246 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20247 ISpeechPhraseInfo *This,
20248 REFIID riid,
20249 void **ppvObject);
20250
20251 ULONG (STDMETHODCALLTYPE *AddRef)(
20252 ISpeechPhraseInfo *This);
20253
20254 ULONG (STDMETHODCALLTYPE *Release)(
20255 ISpeechPhraseInfo *This);
20256
20257 /*** IDispatch methods ***/
20258 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20259 ISpeechPhraseInfo *This,
20260 UINT *pctinfo);
20261
20262 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20263 ISpeechPhraseInfo *This,
20264 UINT iTInfo,
20265 LCID lcid,
20266 ITypeInfo **ppTInfo);
20267
20268 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20269 ISpeechPhraseInfo *This,
20270 REFIID riid,
20271 LPOLESTR *rgszNames,
20272 UINT cNames,
20273 LCID lcid,
20274 DISPID *rgDispId);
20275
20276 HRESULT (STDMETHODCALLTYPE *Invoke)(
20277 ISpeechPhraseInfo *This,
20278 DISPID dispIdMember,
20279 REFIID riid,
20280 LCID lcid,
20281 WORD wFlags,
20282 DISPPARAMS *pDispParams,
20283 VARIANT *pVarResult,
20284 EXCEPINFO *pExcepInfo,
20285 UINT *puArgErr);
20286
20287 /*** ISpeechPhraseInfo methods ***/
20288 HRESULT (STDMETHODCALLTYPE *get_LanguageId)(
20289 ISpeechPhraseInfo *This,
20290 LONG *LanguageId);
20291
20292 HRESULT (STDMETHODCALLTYPE *get_GrammarId)(
20293 ISpeechPhraseInfo *This,
20294 VARIANT *GrammarId);
20295
20296 HRESULT (STDMETHODCALLTYPE *get_StartTime)(
20297 ISpeechPhraseInfo *This,
20298 VARIANT *StartTime);
20299
20300 HRESULT (STDMETHODCALLTYPE *get_AudioStreamPosition)(
20301 ISpeechPhraseInfo *This,
20302 VARIANT *AudioStreamPosition);
20303
20304 HRESULT (STDMETHODCALLTYPE *get_AudioSizeBytes)(
20305 ISpeechPhraseInfo *This,
20306 LONG *pAudioSizeBytes);
20307
20308 HRESULT (STDMETHODCALLTYPE *get_RetainedSizeBytes)(
20309 ISpeechPhraseInfo *This,
20310 LONG *RetainedSizeBytes);
20311
20312 HRESULT (STDMETHODCALLTYPE *get_AudioSizeTime)(
20313 ISpeechPhraseInfo *This,
20314 LONG *AudioSizeTime);
20315
20316 HRESULT (STDMETHODCALLTYPE *get_Rule)(
20317 ISpeechPhraseInfo *This,
20318 ISpeechPhraseRule **Rule);
20319
20320 HRESULT (STDMETHODCALLTYPE *get_Properties)(
20321 ISpeechPhraseInfo *This,
20322 ISpeechPhraseProperties **Properties);
20323
20324 HRESULT (STDMETHODCALLTYPE *get_Elements)(
20325 ISpeechPhraseInfo *This,
20326 ISpeechPhraseElements **Elements);
20327
20328 HRESULT (STDMETHODCALLTYPE *get_Replacements)(
20329 ISpeechPhraseInfo *This,
20330 ISpeechPhraseReplacements **Replacements);
20331
20332 HRESULT (STDMETHODCALLTYPE *get_EngineId)(
20333 ISpeechPhraseInfo *This,
20334 BSTR *EngineIdGuid);
20335
20336 HRESULT (STDMETHODCALLTYPE *get_EnginePrivateData)(
20337 ISpeechPhraseInfo *This,
20338 VARIANT *PrivateData);
20339
20340 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
20341 ISpeechPhraseInfo *This,
20342 VARIANT *PhraseBlock);
20343
20344 HRESULT (STDMETHODCALLTYPE *GetText)(
20345 ISpeechPhraseInfo *This,
20346 LONG StartElement,
20347 LONG Elements,
20348 VARIANT_BOOL UseReplacements,
20349 BSTR *Text);
20350
20351 HRESULT (STDMETHODCALLTYPE *GetDisplayAttributes)(
20352 ISpeechPhraseInfo *This,
20353 LONG StartElement,
20354 LONG Elements,
20355 VARIANT_BOOL UseReplacements,
20356 SpeechDisplayAttributes *DisplayAttributes);
20357
20358 END_INTERFACE
20359} ISpeechPhraseInfoVtbl;
20360
20361interface ISpeechPhraseInfo {
20362 CONST_VTBL ISpeechPhraseInfoVtbl* lpVtbl;
20363};
20364
20365#ifdef COBJMACROS
20366#ifndef WIDL_C_INLINE_WRAPPERS
20367/*** IUnknown methods ***/
20368#define ISpeechPhraseInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20369#define ISpeechPhraseInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
20370#define ISpeechPhraseInfo_Release(This) (This)->lpVtbl->Release(This)
20371/*** IDispatch methods ***/
20372#define ISpeechPhraseInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20373#define ISpeechPhraseInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20374#define ISpeechPhraseInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20375#define ISpeechPhraseInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20376/*** ISpeechPhraseInfo methods ***/
20377#define ISpeechPhraseInfo_get_LanguageId(This,LanguageId) (This)->lpVtbl->get_LanguageId(This,LanguageId)
20378#define ISpeechPhraseInfo_get_GrammarId(This,GrammarId) (This)->lpVtbl->get_GrammarId(This,GrammarId)
20379#define ISpeechPhraseInfo_get_StartTime(This,StartTime) (This)->lpVtbl->get_StartTime(This,StartTime)
20380#define ISpeechPhraseInfo_get_AudioStreamPosition(This,AudioStreamPosition) (This)->lpVtbl->get_AudioStreamPosition(This,AudioStreamPosition)
20381#define ISpeechPhraseInfo_get_AudioSizeBytes(This,pAudioSizeBytes) (This)->lpVtbl->get_AudioSizeBytes(This,pAudioSizeBytes)
20382#define ISpeechPhraseInfo_get_RetainedSizeBytes(This,RetainedSizeBytes) (This)->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes)
20383#define ISpeechPhraseInfo_get_AudioSizeTime(This,AudioSizeTime) (This)->lpVtbl->get_AudioSizeTime(This,AudioSizeTime)
20384#define ISpeechPhraseInfo_get_Rule(This,Rule) (This)->lpVtbl->get_Rule(This,Rule)
20385#define ISpeechPhraseInfo_get_Properties(This,Properties) (This)->lpVtbl->get_Properties(This,Properties)
20386#define ISpeechPhraseInfo_get_Elements(This,Elements) (This)->lpVtbl->get_Elements(This,Elements)
20387#define ISpeechPhraseInfo_get_Replacements(This,Replacements) (This)->lpVtbl->get_Replacements(This,Replacements)
20388#define ISpeechPhraseInfo_get_EngineId(This,EngineIdGuid) (This)->lpVtbl->get_EngineId(This,EngineIdGuid)
20389#define ISpeechPhraseInfo_get_EnginePrivateData(This,PrivateData) (This)->lpVtbl->get_EnginePrivateData(This,PrivateData)
20390#define ISpeechPhraseInfo_SaveToMemory(This,PhraseBlock) (This)->lpVtbl->SaveToMemory(This,PhraseBlock)
20391#define ISpeechPhraseInfo_GetText(This,StartElement,Elements,UseReplacements,Text) (This)->lpVtbl->GetText(This,StartElement,Elements,UseReplacements,Text)
20392#define ISpeechPhraseInfo_GetDisplayAttributes(This,StartElement,Elements,UseReplacements,DisplayAttributes) (This)->lpVtbl->GetDisplayAttributes(This,StartElement,Elements,UseReplacements,DisplayAttributes)
20393#else
20394/*** IUnknown methods ***/
20395static inline HRESULT ISpeechPhraseInfo_QueryInterface(ISpeechPhraseInfo* This,REFIID riid,void **ppvObject) {
20396 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20397}
20398static inline ULONG ISpeechPhraseInfo_AddRef(ISpeechPhraseInfo* This) {
20399 return This->lpVtbl->AddRef(This);
20400}
20401static inline ULONG ISpeechPhraseInfo_Release(ISpeechPhraseInfo* This) {
20402 return This->lpVtbl->Release(This);
20403}
20404/*** IDispatch methods ***/
20405static inline HRESULT ISpeechPhraseInfo_GetTypeInfoCount(ISpeechPhraseInfo* This,UINT *pctinfo) {
20406 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20407}
20408static inline HRESULT ISpeechPhraseInfo_GetTypeInfo(ISpeechPhraseInfo* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20409 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20410}
20411static inline HRESULT ISpeechPhraseInfo_GetIDsOfNames(ISpeechPhraseInfo* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20412 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20413}
20414static inline HRESULT ISpeechPhraseInfo_Invoke(ISpeechPhraseInfo* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20415 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20416}
20417/*** ISpeechPhraseInfo methods ***/
20418static inline HRESULT ISpeechPhraseInfo_get_LanguageId(ISpeechPhraseInfo* This,LONG *LanguageId) {
20419 return This->lpVtbl->get_LanguageId(This,LanguageId);
20420}
20421static inline HRESULT ISpeechPhraseInfo_get_GrammarId(ISpeechPhraseInfo* This,VARIANT *GrammarId) {
20422 return This->lpVtbl->get_GrammarId(This,GrammarId);
20423}
20424static inline HRESULT ISpeechPhraseInfo_get_StartTime(ISpeechPhraseInfo* This,VARIANT *StartTime) {
20425 return This->lpVtbl->get_StartTime(This,StartTime);
20426}
20427static inline HRESULT ISpeechPhraseInfo_get_AudioStreamPosition(ISpeechPhraseInfo* This,VARIANT *AudioStreamPosition) {
20428 return This->lpVtbl->get_AudioStreamPosition(This,AudioStreamPosition);
20429}
20430static inline HRESULT ISpeechPhraseInfo_get_AudioSizeBytes(ISpeechPhraseInfo* This,LONG *pAudioSizeBytes) {
20431 return This->lpVtbl->get_AudioSizeBytes(This,pAudioSizeBytes);
20432}
20433static inline HRESULT ISpeechPhraseInfo_get_RetainedSizeBytes(ISpeechPhraseInfo* This,LONG *RetainedSizeBytes) {
20434 return This->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes);
20435}
20436static inline HRESULT ISpeechPhraseInfo_get_AudioSizeTime(ISpeechPhraseInfo* This,LONG *AudioSizeTime) {
20437 return This->lpVtbl->get_AudioSizeTime(This,AudioSizeTime);
20438}
20439static inline HRESULT ISpeechPhraseInfo_get_Rule(ISpeechPhraseInfo* This,ISpeechPhraseRule **Rule) {
20440 return This->lpVtbl->get_Rule(This,Rule);
20441}
20442static inline HRESULT ISpeechPhraseInfo_get_Properties(ISpeechPhraseInfo* This,ISpeechPhraseProperties **Properties) {
20443 return This->lpVtbl->get_Properties(This,Properties);
20444}
20445static inline HRESULT ISpeechPhraseInfo_get_Elements(ISpeechPhraseInfo* This,ISpeechPhraseElements **Elements) {
20446 return This->lpVtbl->get_Elements(This,Elements);
20447}
20448static inline HRESULT ISpeechPhraseInfo_get_Replacements(ISpeechPhraseInfo* This,ISpeechPhraseReplacements **Replacements) {
20449 return This->lpVtbl->get_Replacements(This,Replacements);
20450}
20451static inline HRESULT ISpeechPhraseInfo_get_EngineId(ISpeechPhraseInfo* This,BSTR *EngineIdGuid) {
20452 return This->lpVtbl->get_EngineId(This,EngineIdGuid);
20453}
20454static inline HRESULT ISpeechPhraseInfo_get_EnginePrivateData(ISpeechPhraseInfo* This,VARIANT *PrivateData) {
20455 return This->lpVtbl->get_EnginePrivateData(This,PrivateData);
20456}
20457static inline HRESULT ISpeechPhraseInfo_SaveToMemory(ISpeechPhraseInfo* This,VARIANT *PhraseBlock) {
20458 return This->lpVtbl->SaveToMemory(This,PhraseBlock);
20459}
20460static inline HRESULT ISpeechPhraseInfo_GetText(ISpeechPhraseInfo* This,LONG StartElement,LONG Elements,VARIANT_BOOL UseReplacements,BSTR *Text) {
20461 return This->lpVtbl->GetText(This,StartElement,Elements,UseReplacements,Text);
20462}
20463static inline HRESULT ISpeechPhraseInfo_GetDisplayAttributes(ISpeechPhraseInfo* This,LONG StartElement,LONG Elements,VARIANT_BOOL UseReplacements,SpeechDisplayAttributes *DisplayAttributes) {
20464 return This->lpVtbl->GetDisplayAttributes(This,StartElement,Elements,UseReplacements,DisplayAttributes);
20465}
20466#endif
20467#endif
20468
20469#endif
20470
20471
20472#endif /* __ISpeechPhraseInfo_INTERFACE_DEFINED__ */
20473
20474/*****************************************************************************
20475 * ISpeechPhraseElement interface
20476 */
20477#ifndef __ISpeechPhraseElement_INTERFACE_DEFINED__
20478#define __ISpeechPhraseElement_INTERFACE_DEFINED__
20479
20480DEFINE_GUID(IID_ISpeechPhraseElement, 0xe6176f96, 0xe373, 0x4801, 0xb2,0x23, 0x3b,0x62,0xc0,0x68,0xc0,0xb4);
20481#if defined(__cplusplus) && !defined(CINTERFACE)
20482MIDL_INTERFACE("e6176f96-e373-4801-b223-3b62c068c0b4")
20483ISpeechPhraseElement : public IDispatch
20484{
20485 virtual HRESULT STDMETHODCALLTYPE get_AudioTimeOffset(
20486 LONG *AudioTimeOffset) = 0;
20487
20488 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeTime(
20489 LONG *AudioSizeTime) = 0;
20490
20491 virtual HRESULT STDMETHODCALLTYPE get_AudioStreamOffset(
20492 LONG *AudioStreamOffset) = 0;
20493
20494 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeBytes(
20495 LONG *AudioSizeBytes) = 0;
20496
20497 virtual HRESULT STDMETHODCALLTYPE get_RetainedStreamOffset(
20498 LONG *RetainedStreamOffset) = 0;
20499
20500 virtual HRESULT STDMETHODCALLTYPE get_RetainedSizeBytes(
20501 LONG *RetainedSizeBytes) = 0;
20502
20503 virtual HRESULT STDMETHODCALLTYPE get_DisplayText(
20504 BSTR *DisplayText) = 0;
20505
20506 virtual HRESULT STDMETHODCALLTYPE get_LexicalForm(
20507 BSTR *LexicalForm) = 0;
20508
20509 virtual HRESULT STDMETHODCALLTYPE get_Pronunciation(
20510 VARIANT *Pronunciation) = 0;
20511
20512 virtual HRESULT STDMETHODCALLTYPE get_DisplayAttributes(
20513 SpeechDisplayAttributes *DisplayAttributes) = 0;
20514
20515 virtual HRESULT STDMETHODCALLTYPE get_RequiredConfidence(
20516 SpeechEngineConfidence *RequiredConfidence) = 0;
20517
20518 virtual HRESULT STDMETHODCALLTYPE get_ActualConfidence(
20519 SpeechEngineConfidence *ActualConfidence) = 0;
20520
20521 virtual HRESULT STDMETHODCALLTYPE get_EngineConfidence(
20522 float *EngineConfidence) = 0;
20523
20524};
20525#ifdef __CRT_UUID_DECL
20526__CRT_UUID_DECL(ISpeechPhraseElement, 0xe6176f96, 0xe373, 0x4801, 0xb2,0x23, 0x3b,0x62,0xc0,0x68,0xc0,0xb4)
20527#endif
20528#else
20529typedef struct ISpeechPhraseElementVtbl {
20530 BEGIN_INTERFACE
20531
20532 /*** IUnknown methods ***/
20533 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20534 ISpeechPhraseElement *This,
20535 REFIID riid,
20536 void **ppvObject);
20537
20538 ULONG (STDMETHODCALLTYPE *AddRef)(
20539 ISpeechPhraseElement *This);
20540
20541 ULONG (STDMETHODCALLTYPE *Release)(
20542 ISpeechPhraseElement *This);
20543
20544 /*** IDispatch methods ***/
20545 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20546 ISpeechPhraseElement *This,
20547 UINT *pctinfo);
20548
20549 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20550 ISpeechPhraseElement *This,
20551 UINT iTInfo,
20552 LCID lcid,
20553 ITypeInfo **ppTInfo);
20554
20555 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20556 ISpeechPhraseElement *This,
20557 REFIID riid,
20558 LPOLESTR *rgszNames,
20559 UINT cNames,
20560 LCID lcid,
20561 DISPID *rgDispId);
20562
20563 HRESULT (STDMETHODCALLTYPE *Invoke)(
20564 ISpeechPhraseElement *This,
20565 DISPID dispIdMember,
20566 REFIID riid,
20567 LCID lcid,
20568 WORD wFlags,
20569 DISPPARAMS *pDispParams,
20570 VARIANT *pVarResult,
20571 EXCEPINFO *pExcepInfo,
20572 UINT *puArgErr);
20573
20574 /*** ISpeechPhraseElement methods ***/
20575 HRESULT (STDMETHODCALLTYPE *get_AudioTimeOffset)(
20576 ISpeechPhraseElement *This,
20577 LONG *AudioTimeOffset);
20578
20579 HRESULT (STDMETHODCALLTYPE *get_AudioSizeTime)(
20580 ISpeechPhraseElement *This,
20581 LONG *AudioSizeTime);
20582
20583 HRESULT (STDMETHODCALLTYPE *get_AudioStreamOffset)(
20584 ISpeechPhraseElement *This,
20585 LONG *AudioStreamOffset);
20586
20587 HRESULT (STDMETHODCALLTYPE *get_AudioSizeBytes)(
20588 ISpeechPhraseElement *This,
20589 LONG *AudioSizeBytes);
20590
20591 HRESULT (STDMETHODCALLTYPE *get_RetainedStreamOffset)(
20592 ISpeechPhraseElement *This,
20593 LONG *RetainedStreamOffset);
20594
20595 HRESULT (STDMETHODCALLTYPE *get_RetainedSizeBytes)(
20596 ISpeechPhraseElement *This,
20597 LONG *RetainedSizeBytes);
20598
20599 HRESULT (STDMETHODCALLTYPE *get_DisplayText)(
20600 ISpeechPhraseElement *This,
20601 BSTR *DisplayText);
20602
20603 HRESULT (STDMETHODCALLTYPE *get_LexicalForm)(
20604 ISpeechPhraseElement *This,
20605 BSTR *LexicalForm);
20606
20607 HRESULT (STDMETHODCALLTYPE *get_Pronunciation)(
20608 ISpeechPhraseElement *This,
20609 VARIANT *Pronunciation);
20610
20611 HRESULT (STDMETHODCALLTYPE *get_DisplayAttributes)(
20612 ISpeechPhraseElement *This,
20613 SpeechDisplayAttributes *DisplayAttributes);
20614
20615 HRESULT (STDMETHODCALLTYPE *get_RequiredConfidence)(
20616 ISpeechPhraseElement *This,
20617 SpeechEngineConfidence *RequiredConfidence);
20618
20619 HRESULT (STDMETHODCALLTYPE *get_ActualConfidence)(
20620 ISpeechPhraseElement *This,
20621 SpeechEngineConfidence *ActualConfidence);
20622
20623 HRESULT (STDMETHODCALLTYPE *get_EngineConfidence)(
20624 ISpeechPhraseElement *This,
20625 float *EngineConfidence);
20626
20627 END_INTERFACE
20628} ISpeechPhraseElementVtbl;
20629
20630interface ISpeechPhraseElement {
20631 CONST_VTBL ISpeechPhraseElementVtbl* lpVtbl;
20632};
20633
20634#ifdef COBJMACROS
20635#ifndef WIDL_C_INLINE_WRAPPERS
20636/*** IUnknown methods ***/
20637#define ISpeechPhraseElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20638#define ISpeechPhraseElement_AddRef(This) (This)->lpVtbl->AddRef(This)
20639#define ISpeechPhraseElement_Release(This) (This)->lpVtbl->Release(This)
20640/*** IDispatch methods ***/
20641#define ISpeechPhraseElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20642#define ISpeechPhraseElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20643#define ISpeechPhraseElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20644#define ISpeechPhraseElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20645/*** ISpeechPhraseElement methods ***/
20646#define ISpeechPhraseElement_get_AudioTimeOffset(This,AudioTimeOffset) (This)->lpVtbl->get_AudioTimeOffset(This,AudioTimeOffset)
20647#define ISpeechPhraseElement_get_AudioSizeTime(This,AudioSizeTime) (This)->lpVtbl->get_AudioSizeTime(This,AudioSizeTime)
20648#define ISpeechPhraseElement_get_AudioStreamOffset(This,AudioStreamOffset) (This)->lpVtbl->get_AudioStreamOffset(This,AudioStreamOffset)
20649#define ISpeechPhraseElement_get_AudioSizeBytes(This,AudioSizeBytes) (This)->lpVtbl->get_AudioSizeBytes(This,AudioSizeBytes)
20650#define ISpeechPhraseElement_get_RetainedStreamOffset(This,RetainedStreamOffset) (This)->lpVtbl->get_RetainedStreamOffset(This,RetainedStreamOffset)
20651#define ISpeechPhraseElement_get_RetainedSizeBytes(This,RetainedSizeBytes) (This)->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes)
20652#define ISpeechPhraseElement_get_DisplayText(This,DisplayText) (This)->lpVtbl->get_DisplayText(This,DisplayText)
20653#define ISpeechPhraseElement_get_LexicalForm(This,LexicalForm) (This)->lpVtbl->get_LexicalForm(This,LexicalForm)
20654#define ISpeechPhraseElement_get_Pronunciation(This,Pronunciation) (This)->lpVtbl->get_Pronunciation(This,Pronunciation)
20655#define ISpeechPhraseElement_get_DisplayAttributes(This,DisplayAttributes) (This)->lpVtbl->get_DisplayAttributes(This,DisplayAttributes)
20656#define ISpeechPhraseElement_get_RequiredConfidence(This,RequiredConfidence) (This)->lpVtbl->get_RequiredConfidence(This,RequiredConfidence)
20657#define ISpeechPhraseElement_get_ActualConfidence(This,ActualConfidence) (This)->lpVtbl->get_ActualConfidence(This,ActualConfidence)
20658#define ISpeechPhraseElement_get_EngineConfidence(This,EngineConfidence) (This)->lpVtbl->get_EngineConfidence(This,EngineConfidence)
20659#else
20660/*** IUnknown methods ***/
20661static inline HRESULT ISpeechPhraseElement_QueryInterface(ISpeechPhraseElement* This,REFIID riid,void **ppvObject) {
20662 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20663}
20664static inline ULONG ISpeechPhraseElement_AddRef(ISpeechPhraseElement* This) {
20665 return This->lpVtbl->AddRef(This);
20666}
20667static inline ULONG ISpeechPhraseElement_Release(ISpeechPhraseElement* This) {
20668 return This->lpVtbl->Release(This);
20669}
20670/*** IDispatch methods ***/
20671static inline HRESULT ISpeechPhraseElement_GetTypeInfoCount(ISpeechPhraseElement* This,UINT *pctinfo) {
20672 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20673}
20674static inline HRESULT ISpeechPhraseElement_GetTypeInfo(ISpeechPhraseElement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20675 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20676}
20677static inline HRESULT ISpeechPhraseElement_GetIDsOfNames(ISpeechPhraseElement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20678 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20679}
20680static inline HRESULT ISpeechPhraseElement_Invoke(ISpeechPhraseElement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20681 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20682}
20683/*** ISpeechPhraseElement methods ***/
20684static inline HRESULT ISpeechPhraseElement_get_AudioTimeOffset(ISpeechPhraseElement* This,LONG *AudioTimeOffset) {
20685 return This->lpVtbl->get_AudioTimeOffset(This,AudioTimeOffset);
20686}
20687static inline HRESULT ISpeechPhraseElement_get_AudioSizeTime(ISpeechPhraseElement* This,LONG *AudioSizeTime) {
20688 return This->lpVtbl->get_AudioSizeTime(This,AudioSizeTime);
20689}
20690static inline HRESULT ISpeechPhraseElement_get_AudioStreamOffset(ISpeechPhraseElement* This,LONG *AudioStreamOffset) {
20691 return This->lpVtbl->get_AudioStreamOffset(This,AudioStreamOffset);
20692}
20693static inline HRESULT ISpeechPhraseElement_get_AudioSizeBytes(ISpeechPhraseElement* This,LONG *AudioSizeBytes) {
20694 return This->lpVtbl->get_AudioSizeBytes(This,AudioSizeBytes);
20695}
20696static inline HRESULT ISpeechPhraseElement_get_RetainedStreamOffset(ISpeechPhraseElement* This,LONG *RetainedStreamOffset) {
20697 return This->lpVtbl->get_RetainedStreamOffset(This,RetainedStreamOffset);
20698}
20699static inline HRESULT ISpeechPhraseElement_get_RetainedSizeBytes(ISpeechPhraseElement* This,LONG *RetainedSizeBytes) {
20700 return This->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes);
20701}
20702static inline HRESULT ISpeechPhraseElement_get_DisplayText(ISpeechPhraseElement* This,BSTR *DisplayText) {
20703 return This->lpVtbl->get_DisplayText(This,DisplayText);
20704}
20705static inline HRESULT ISpeechPhraseElement_get_LexicalForm(ISpeechPhraseElement* This,BSTR *LexicalForm) {
20706 return This->lpVtbl->get_LexicalForm(This,LexicalForm);
20707}
20708static inline HRESULT ISpeechPhraseElement_get_Pronunciation(ISpeechPhraseElement* This,VARIANT *Pronunciation) {
20709 return This->lpVtbl->get_Pronunciation(This,Pronunciation);
20710}
20711static inline HRESULT ISpeechPhraseElement_get_DisplayAttributes(ISpeechPhraseElement* This,SpeechDisplayAttributes *DisplayAttributes) {
20712 return This->lpVtbl->get_DisplayAttributes(This,DisplayAttributes);
20713}
20714static inline HRESULT ISpeechPhraseElement_get_RequiredConfidence(ISpeechPhraseElement* This,SpeechEngineConfidence *RequiredConfidence) {
20715 return This->lpVtbl->get_RequiredConfidence(This,RequiredConfidence);
20716}
20717static inline HRESULT ISpeechPhraseElement_get_ActualConfidence(ISpeechPhraseElement* This,SpeechEngineConfidence *ActualConfidence) {
20718 return This->lpVtbl->get_ActualConfidence(This,ActualConfidence);
20719}
20720static inline HRESULT ISpeechPhraseElement_get_EngineConfidence(ISpeechPhraseElement* This,float *EngineConfidence) {
20721 return This->lpVtbl->get_EngineConfidence(This,EngineConfidence);
20722}
20723#endif
20724#endif
20725
20726#endif
20727
20728
20729#endif /* __ISpeechPhraseElement_INTERFACE_DEFINED__ */
20730
20731/*****************************************************************************
20732 * ISpeechPhraseElements interface
20733 */
20734#ifndef __ISpeechPhraseElements_INTERFACE_DEFINED__
20735#define __ISpeechPhraseElements_INTERFACE_DEFINED__
20736
20737DEFINE_GUID(IID_ISpeechPhraseElements, 0x0626b328, 0x3478, 0x467d, 0xa0,0xb3, 0xd0,0x85,0x3b,0x93,0xdd,0xa3);
20738#if defined(__cplusplus) && !defined(CINTERFACE)
20739MIDL_INTERFACE("0626b328-3478-467d-a0b3-d0853b93dda3")
20740ISpeechPhraseElements : public IDispatch
20741{
20742 virtual HRESULT STDMETHODCALLTYPE get_Count(
20743 LONG *Count) = 0;
20744
20745 virtual HRESULT STDMETHODCALLTYPE Item(
20746 LONG Index,
20747 ISpeechPhraseElement **Element) = 0;
20748
20749 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
20750 IUnknown **EnumVARIANT) = 0;
20751
20752};
20753#ifdef __CRT_UUID_DECL
20754__CRT_UUID_DECL(ISpeechPhraseElements, 0x0626b328, 0x3478, 0x467d, 0xa0,0xb3, 0xd0,0x85,0x3b,0x93,0xdd,0xa3)
20755#endif
20756#else
20757typedef struct ISpeechPhraseElementsVtbl {
20758 BEGIN_INTERFACE
20759
20760 /*** IUnknown methods ***/
20761 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20762 ISpeechPhraseElements *This,
20763 REFIID riid,
20764 void **ppvObject);
20765
20766 ULONG (STDMETHODCALLTYPE *AddRef)(
20767 ISpeechPhraseElements *This);
20768
20769 ULONG (STDMETHODCALLTYPE *Release)(
20770 ISpeechPhraseElements *This);
20771
20772 /*** IDispatch methods ***/
20773 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20774 ISpeechPhraseElements *This,
20775 UINT *pctinfo);
20776
20777 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20778 ISpeechPhraseElements *This,
20779 UINT iTInfo,
20780 LCID lcid,
20781 ITypeInfo **ppTInfo);
20782
20783 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20784 ISpeechPhraseElements *This,
20785 REFIID riid,
20786 LPOLESTR *rgszNames,
20787 UINT cNames,
20788 LCID lcid,
20789 DISPID *rgDispId);
20790
20791 HRESULT (STDMETHODCALLTYPE *Invoke)(
20792 ISpeechPhraseElements *This,
20793 DISPID dispIdMember,
20794 REFIID riid,
20795 LCID lcid,
20796 WORD wFlags,
20797 DISPPARAMS *pDispParams,
20798 VARIANT *pVarResult,
20799 EXCEPINFO *pExcepInfo,
20800 UINT *puArgErr);
20801
20802 /*** ISpeechPhraseElements methods ***/
20803 HRESULT (STDMETHODCALLTYPE *get_Count)(
20804 ISpeechPhraseElements *This,
20805 LONG *Count);
20806
20807 HRESULT (STDMETHODCALLTYPE *Item)(
20808 ISpeechPhraseElements *This,
20809 LONG Index,
20810 ISpeechPhraseElement **Element);
20811
20812 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
20813 ISpeechPhraseElements *This,
20814 IUnknown **EnumVARIANT);
20815
20816 END_INTERFACE
20817} ISpeechPhraseElementsVtbl;
20818
20819interface ISpeechPhraseElements {
20820 CONST_VTBL ISpeechPhraseElementsVtbl* lpVtbl;
20821};
20822
20823#ifdef COBJMACROS
20824#ifndef WIDL_C_INLINE_WRAPPERS
20825/*** IUnknown methods ***/
20826#define ISpeechPhraseElements_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20827#define ISpeechPhraseElements_AddRef(This) (This)->lpVtbl->AddRef(This)
20828#define ISpeechPhraseElements_Release(This) (This)->lpVtbl->Release(This)
20829/*** IDispatch methods ***/
20830#define ISpeechPhraseElements_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20831#define ISpeechPhraseElements_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20832#define ISpeechPhraseElements_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20833#define ISpeechPhraseElements_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20834/*** ISpeechPhraseElements methods ***/
20835#define ISpeechPhraseElements_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
20836#define ISpeechPhraseElements_Item(This,Index,Element) (This)->lpVtbl->Item(This,Index,Element)
20837#define ISpeechPhraseElements_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
20838#else
20839/*** IUnknown methods ***/
20840static inline HRESULT ISpeechPhraseElements_QueryInterface(ISpeechPhraseElements* This,REFIID riid,void **ppvObject) {
20841 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20842}
20843static inline ULONG ISpeechPhraseElements_AddRef(ISpeechPhraseElements* This) {
20844 return This->lpVtbl->AddRef(This);
20845}
20846static inline ULONG ISpeechPhraseElements_Release(ISpeechPhraseElements* This) {
20847 return This->lpVtbl->Release(This);
20848}
20849/*** IDispatch methods ***/
20850static inline HRESULT ISpeechPhraseElements_GetTypeInfoCount(ISpeechPhraseElements* This,UINT *pctinfo) {
20851 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20852}
20853static inline HRESULT ISpeechPhraseElements_GetTypeInfo(ISpeechPhraseElements* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20854 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20855}
20856static inline HRESULT ISpeechPhraseElements_GetIDsOfNames(ISpeechPhraseElements* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20857 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20858}
20859static inline HRESULT ISpeechPhraseElements_Invoke(ISpeechPhraseElements* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20860 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20861}
20862/*** ISpeechPhraseElements methods ***/
20863static inline HRESULT ISpeechPhraseElements_get_Count(ISpeechPhraseElements* This,LONG *Count) {
20864 return This->lpVtbl->get_Count(This,Count);
20865}
20866static inline HRESULT ISpeechPhraseElements_Item(ISpeechPhraseElements* This,LONG Index,ISpeechPhraseElement **Element) {
20867 return This->lpVtbl->Item(This,Index,Element);
20868}
20869static inline HRESULT ISpeechPhraseElements_get__NewEnum(ISpeechPhraseElements* This,IUnknown **EnumVARIANT) {
20870 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
20871}
20872#endif
20873#endif
20874
20875#endif
20876
20877
20878#endif /* __ISpeechPhraseElements_INTERFACE_DEFINED__ */
20879
20880/*****************************************************************************
20881 * ISpeechPhraseReplacement interface
20882 */
20883#ifndef __ISpeechPhraseReplacement_INTERFACE_DEFINED__
20884#define __ISpeechPhraseReplacement_INTERFACE_DEFINED__
20885
20886DEFINE_GUID(IID_ISpeechPhraseReplacement, 0x2890a410, 0x53a7, 0x4fb5, 0x94,0xec, 0x06,0xd4,0x99,0x8e,0x3d,0x02);
20887#if defined(__cplusplus) && !defined(CINTERFACE)
20888MIDL_INTERFACE("2890a410-53a7-4fb5-94ec-06d4998e3d02")
20889ISpeechPhraseReplacement : public IDispatch
20890{
20891 virtual HRESULT STDMETHODCALLTYPE get_DisplayAttributes(
20892 SpeechDisplayAttributes *DisplayAttributes) = 0;
20893
20894 virtual HRESULT STDMETHODCALLTYPE get_Text(
20895 BSTR *Text) = 0;
20896
20897 virtual HRESULT STDMETHODCALLTYPE get_FirstElement(
20898 LONG *FirstElement) = 0;
20899
20900 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElements(
20901 LONG *NumberOfElements) = 0;
20902
20903};
20904#ifdef __CRT_UUID_DECL
20905__CRT_UUID_DECL(ISpeechPhraseReplacement, 0x2890a410, 0x53a7, 0x4fb5, 0x94,0xec, 0x06,0xd4,0x99,0x8e,0x3d,0x02)
20906#endif
20907#else
20908typedef struct ISpeechPhraseReplacementVtbl {
20909 BEGIN_INTERFACE
20910
20911 /*** IUnknown methods ***/
20912 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20913 ISpeechPhraseReplacement *This,
20914 REFIID riid,
20915 void **ppvObject);
20916
20917 ULONG (STDMETHODCALLTYPE *AddRef)(
20918 ISpeechPhraseReplacement *This);
20919
20920 ULONG (STDMETHODCALLTYPE *Release)(
20921 ISpeechPhraseReplacement *This);
20922
20923 /*** IDispatch methods ***/
20924 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20925 ISpeechPhraseReplacement *This,
20926 UINT *pctinfo);
20927
20928 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20929 ISpeechPhraseReplacement *This,
20930 UINT iTInfo,
20931 LCID lcid,
20932 ITypeInfo **ppTInfo);
20933
20934 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20935 ISpeechPhraseReplacement *This,
20936 REFIID riid,
20937 LPOLESTR *rgszNames,
20938 UINT cNames,
20939 LCID lcid,
20940 DISPID *rgDispId);
20941
20942 HRESULT (STDMETHODCALLTYPE *Invoke)(
20943 ISpeechPhraseReplacement *This,
20944 DISPID dispIdMember,
20945 REFIID riid,
20946 LCID lcid,
20947 WORD wFlags,
20948 DISPPARAMS *pDispParams,
20949 VARIANT *pVarResult,
20950 EXCEPINFO *pExcepInfo,
20951 UINT *puArgErr);
20952
20953 /*** ISpeechPhraseReplacement methods ***/
20954 HRESULT (STDMETHODCALLTYPE *get_DisplayAttributes)(
20955 ISpeechPhraseReplacement *This,
20956 SpeechDisplayAttributes *DisplayAttributes);
20957
20958 HRESULT (STDMETHODCALLTYPE *get_Text)(
20959 ISpeechPhraseReplacement *This,
20960 BSTR *Text);
20961
20962 HRESULT (STDMETHODCALLTYPE *get_FirstElement)(
20963 ISpeechPhraseReplacement *This,
20964 LONG *FirstElement);
20965
20966 HRESULT (STDMETHODCALLTYPE *get_NumberOfElements)(
20967 ISpeechPhraseReplacement *This,
20968 LONG *NumberOfElements);
20969
20970 END_INTERFACE
20971} ISpeechPhraseReplacementVtbl;
20972
20973interface ISpeechPhraseReplacement {
20974 CONST_VTBL ISpeechPhraseReplacementVtbl* lpVtbl;
20975};
20976
20977#ifdef COBJMACROS
20978#ifndef WIDL_C_INLINE_WRAPPERS
20979/*** IUnknown methods ***/
20980#define ISpeechPhraseReplacement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20981#define ISpeechPhraseReplacement_AddRef(This) (This)->lpVtbl->AddRef(This)
20982#define ISpeechPhraseReplacement_Release(This) (This)->lpVtbl->Release(This)
20983/*** IDispatch methods ***/
20984#define ISpeechPhraseReplacement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20985#define ISpeechPhraseReplacement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20986#define ISpeechPhraseReplacement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20987#define ISpeechPhraseReplacement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20988/*** ISpeechPhraseReplacement methods ***/
20989#define ISpeechPhraseReplacement_get_DisplayAttributes(This,DisplayAttributes) (This)->lpVtbl->get_DisplayAttributes(This,DisplayAttributes)
20990#define ISpeechPhraseReplacement_get_Text(This,Text) (This)->lpVtbl->get_Text(This,Text)
20991#define ISpeechPhraseReplacement_get_FirstElement(This,FirstElement) (This)->lpVtbl->get_FirstElement(This,FirstElement)
20992#define ISpeechPhraseReplacement_get_NumberOfElements(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElements(This,NumberOfElements)
20993#else
20994/*** IUnknown methods ***/
20995static inline HRESULT ISpeechPhraseReplacement_QueryInterface(ISpeechPhraseReplacement* This,REFIID riid,void **ppvObject) {
20996 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20997}
20998static inline ULONG ISpeechPhraseReplacement_AddRef(ISpeechPhraseReplacement* This) {
20999 return This->lpVtbl->AddRef(This);
21000}
21001static inline ULONG ISpeechPhraseReplacement_Release(ISpeechPhraseReplacement* This) {
21002 return This->lpVtbl->Release(This);
21003}
21004/*** IDispatch methods ***/
21005static inline HRESULT ISpeechPhraseReplacement_GetTypeInfoCount(ISpeechPhraseReplacement* This,UINT *pctinfo) {
21006 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21007}
21008static inline HRESULT ISpeechPhraseReplacement_GetTypeInfo(ISpeechPhraseReplacement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21009 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21010}
21011static inline HRESULT ISpeechPhraseReplacement_GetIDsOfNames(ISpeechPhraseReplacement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21012 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21013}
21014static inline HRESULT ISpeechPhraseReplacement_Invoke(ISpeechPhraseReplacement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21015 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21016}
21017/*** ISpeechPhraseReplacement methods ***/
21018static inline HRESULT ISpeechPhraseReplacement_get_DisplayAttributes(ISpeechPhraseReplacement* This,SpeechDisplayAttributes *DisplayAttributes) {
21019 return This->lpVtbl->get_DisplayAttributes(This,DisplayAttributes);
21020}
21021static inline HRESULT ISpeechPhraseReplacement_get_Text(ISpeechPhraseReplacement* This,BSTR *Text) {
21022 return This->lpVtbl->get_Text(This,Text);
21023}
21024static inline HRESULT ISpeechPhraseReplacement_get_FirstElement(ISpeechPhraseReplacement* This,LONG *FirstElement) {
21025 return This->lpVtbl->get_FirstElement(This,FirstElement);
21026}
21027static inline HRESULT ISpeechPhraseReplacement_get_NumberOfElements(ISpeechPhraseReplacement* This,LONG *NumberOfElements) {
21028 return This->lpVtbl->get_NumberOfElements(This,NumberOfElements);
21029}
21030#endif
21031#endif
21032
21033#endif
21034
21035
21036#endif /* __ISpeechPhraseReplacement_INTERFACE_DEFINED__ */
21037
21038/*****************************************************************************
21039 * ISpeechPhraseReplacements interface
21040 */
21041#ifndef __ISpeechPhraseReplacements_INTERFACE_DEFINED__
21042#define __ISpeechPhraseReplacements_INTERFACE_DEFINED__
21043
21044DEFINE_GUID(IID_ISpeechPhraseReplacements, 0x38bc662f, 0x2257, 0x4525, 0x95,0x9e, 0x20,0x69,0xd2,0x59,0x6c,0x05);
21045#if defined(__cplusplus) && !defined(CINTERFACE)
21046MIDL_INTERFACE("38bc662f-2257-4525-959e-2069d2596c05")
21047ISpeechPhraseReplacements : public IDispatch
21048{
21049 virtual HRESULT STDMETHODCALLTYPE get_Count(
21050 LONG *Count) = 0;
21051
21052 virtual HRESULT STDMETHODCALLTYPE Item(
21053 LONG Index,
21054 ISpeechPhraseReplacement **Reps) = 0;
21055
21056 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
21057 IUnknown **EnumVARIANT) = 0;
21058
21059};
21060#ifdef __CRT_UUID_DECL
21061__CRT_UUID_DECL(ISpeechPhraseReplacements, 0x38bc662f, 0x2257, 0x4525, 0x95,0x9e, 0x20,0x69,0xd2,0x59,0x6c,0x05)
21062#endif
21063#else
21064typedef struct ISpeechPhraseReplacementsVtbl {
21065 BEGIN_INTERFACE
21066
21067 /*** IUnknown methods ***/
21068 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21069 ISpeechPhraseReplacements *This,
21070 REFIID riid,
21071 void **ppvObject);
21072
21073 ULONG (STDMETHODCALLTYPE *AddRef)(
21074 ISpeechPhraseReplacements *This);
21075
21076 ULONG (STDMETHODCALLTYPE *Release)(
21077 ISpeechPhraseReplacements *This);
21078
21079 /*** IDispatch methods ***/
21080 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21081 ISpeechPhraseReplacements *This,
21082 UINT *pctinfo);
21083
21084 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21085 ISpeechPhraseReplacements *This,
21086 UINT iTInfo,
21087 LCID lcid,
21088 ITypeInfo **ppTInfo);
21089
21090 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21091 ISpeechPhraseReplacements *This,
21092 REFIID riid,
21093 LPOLESTR *rgszNames,
21094 UINT cNames,
21095 LCID lcid,
21096 DISPID *rgDispId);
21097
21098 HRESULT (STDMETHODCALLTYPE *Invoke)(
21099 ISpeechPhraseReplacements *This,
21100 DISPID dispIdMember,
21101 REFIID riid,
21102 LCID lcid,
21103 WORD wFlags,
21104 DISPPARAMS *pDispParams,
21105 VARIANT *pVarResult,
21106 EXCEPINFO *pExcepInfo,
21107 UINT *puArgErr);
21108
21109 /*** ISpeechPhraseReplacements methods ***/
21110 HRESULT (STDMETHODCALLTYPE *get_Count)(
21111 ISpeechPhraseReplacements *This,
21112 LONG *Count);
21113
21114 HRESULT (STDMETHODCALLTYPE *Item)(
21115 ISpeechPhraseReplacements *This,
21116 LONG Index,
21117 ISpeechPhraseReplacement **Reps);
21118
21119 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
21120 ISpeechPhraseReplacements *This,
21121 IUnknown **EnumVARIANT);
21122
21123 END_INTERFACE
21124} ISpeechPhraseReplacementsVtbl;
21125
21126interface ISpeechPhraseReplacements {
21127 CONST_VTBL ISpeechPhraseReplacementsVtbl* lpVtbl;
21128};
21129
21130#ifdef COBJMACROS
21131#ifndef WIDL_C_INLINE_WRAPPERS
21132/*** IUnknown methods ***/
21133#define ISpeechPhraseReplacements_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21134#define ISpeechPhraseReplacements_AddRef(This) (This)->lpVtbl->AddRef(This)
21135#define ISpeechPhraseReplacements_Release(This) (This)->lpVtbl->Release(This)
21136/*** IDispatch methods ***/
21137#define ISpeechPhraseReplacements_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21138#define ISpeechPhraseReplacements_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21139#define ISpeechPhraseReplacements_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21140#define ISpeechPhraseReplacements_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21141/*** ISpeechPhraseReplacements methods ***/
21142#define ISpeechPhraseReplacements_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
21143#define ISpeechPhraseReplacements_Item(This,Index,Reps) (This)->lpVtbl->Item(This,Index,Reps)
21144#define ISpeechPhraseReplacements_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
21145#else
21146/*** IUnknown methods ***/
21147static inline HRESULT ISpeechPhraseReplacements_QueryInterface(ISpeechPhraseReplacements* This,REFIID riid,void **ppvObject) {
21148 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21149}
21150static inline ULONG ISpeechPhraseReplacements_AddRef(ISpeechPhraseReplacements* This) {
21151 return This->lpVtbl->AddRef(This);
21152}
21153static inline ULONG ISpeechPhraseReplacements_Release(ISpeechPhraseReplacements* This) {
21154 return This->lpVtbl->Release(This);
21155}
21156/*** IDispatch methods ***/
21157static inline HRESULT ISpeechPhraseReplacements_GetTypeInfoCount(ISpeechPhraseReplacements* This,UINT *pctinfo) {
21158 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21159}
21160static inline HRESULT ISpeechPhraseReplacements_GetTypeInfo(ISpeechPhraseReplacements* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21161 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21162}
21163static inline HRESULT ISpeechPhraseReplacements_GetIDsOfNames(ISpeechPhraseReplacements* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21164 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21165}
21166static inline HRESULT ISpeechPhraseReplacements_Invoke(ISpeechPhraseReplacements* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21167 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21168}
21169/*** ISpeechPhraseReplacements methods ***/
21170static inline HRESULT ISpeechPhraseReplacements_get_Count(ISpeechPhraseReplacements* This,LONG *Count) {
21171 return This->lpVtbl->get_Count(This,Count);
21172}
21173static inline HRESULT ISpeechPhraseReplacements_Item(ISpeechPhraseReplacements* This,LONG Index,ISpeechPhraseReplacement **Reps) {
21174 return This->lpVtbl->Item(This,Index,Reps);
21175}
21176static inline HRESULT ISpeechPhraseReplacements_get__NewEnum(ISpeechPhraseReplacements* This,IUnknown **EnumVARIANT) {
21177 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
21178}
21179#endif
21180#endif
21181
21182#endif
21183
21184
21185#endif /* __ISpeechPhraseReplacements_INTERFACE_DEFINED__ */
21186
21187/*****************************************************************************
21188 * ISpeechPhraseProperty interface
21189 */
21190#ifndef __ISpeechPhraseProperty_INTERFACE_DEFINED__
21191#define __ISpeechPhraseProperty_INTERFACE_DEFINED__
21192
21193DEFINE_GUID(IID_ISpeechPhraseProperty, 0xce563d48, 0x961e, 0x4732, 0xa2,0xe1, 0x37,0x8a,0x42,0xb4,0x30,0xbe);
21194#if defined(__cplusplus) && !defined(CINTERFACE)
21195MIDL_INTERFACE("ce563d48-961e-4732-a2e1-378a42b430be")
21196ISpeechPhraseProperty : public IDispatch
21197{
21198 virtual HRESULT STDMETHODCALLTYPE get_Name(
21199 BSTR *Name) = 0;
21200
21201 virtual HRESULT STDMETHODCALLTYPE get_Id(
21202 LONG *Id) = 0;
21203
21204 virtual HRESULT STDMETHODCALLTYPE get_Value(
21205 VARIANT *Value) = 0;
21206
21207 virtual HRESULT STDMETHODCALLTYPE get_FirstElement(
21208 LONG *FirstElement) = 0;
21209
21210 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElements(
21211 LONG *NumberOfElements) = 0;
21212
21213 virtual HRESULT STDMETHODCALLTYPE get_EngineConfidence(
21214 float *Confidence) = 0;
21215
21216 virtual HRESULT STDMETHODCALLTYPE get_Confidence(
21217 SpeechEngineConfidence *Confidence) = 0;
21218
21219 virtual HRESULT STDMETHODCALLTYPE get_Parent(
21220 ISpeechPhraseProperty **ParentProperty) = 0;
21221
21222 virtual HRESULT STDMETHODCALLTYPE get_Children(
21223 ISpeechPhraseProperties **Children) = 0;
21224
21225};
21226#ifdef __CRT_UUID_DECL
21227__CRT_UUID_DECL(ISpeechPhraseProperty, 0xce563d48, 0x961e, 0x4732, 0xa2,0xe1, 0x37,0x8a,0x42,0xb4,0x30,0xbe)
21228#endif
21229#else
21230typedef struct ISpeechPhrasePropertyVtbl {
21231 BEGIN_INTERFACE
21232
21233 /*** IUnknown methods ***/
21234 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21235 ISpeechPhraseProperty *This,
21236 REFIID riid,
21237 void **ppvObject);
21238
21239 ULONG (STDMETHODCALLTYPE *AddRef)(
21240 ISpeechPhraseProperty *This);
21241
21242 ULONG (STDMETHODCALLTYPE *Release)(
21243 ISpeechPhraseProperty *This);
21244
21245 /*** IDispatch methods ***/
21246 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21247 ISpeechPhraseProperty *This,
21248 UINT *pctinfo);
21249
21250 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21251 ISpeechPhraseProperty *This,
21252 UINT iTInfo,
21253 LCID lcid,
21254 ITypeInfo **ppTInfo);
21255
21256 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21257 ISpeechPhraseProperty *This,
21258 REFIID riid,
21259 LPOLESTR *rgszNames,
21260 UINT cNames,
21261 LCID lcid,
21262 DISPID *rgDispId);
21263
21264 HRESULT (STDMETHODCALLTYPE *Invoke)(
21265 ISpeechPhraseProperty *This,
21266 DISPID dispIdMember,
21267 REFIID riid,
21268 LCID lcid,
21269 WORD wFlags,
21270 DISPPARAMS *pDispParams,
21271 VARIANT *pVarResult,
21272 EXCEPINFO *pExcepInfo,
21273 UINT *puArgErr);
21274
21275 /*** ISpeechPhraseProperty methods ***/
21276 HRESULT (STDMETHODCALLTYPE *get_Name)(
21277 ISpeechPhraseProperty *This,
21278 BSTR *Name);
21279
21280 HRESULT (STDMETHODCALLTYPE *get_Id)(
21281 ISpeechPhraseProperty *This,
21282 LONG *Id);
21283
21284 HRESULT (STDMETHODCALLTYPE *get_Value)(
21285 ISpeechPhraseProperty *This,
21286 VARIANT *Value);
21287
21288 HRESULT (STDMETHODCALLTYPE *get_FirstElement)(
21289 ISpeechPhraseProperty *This,
21290 LONG *FirstElement);
21291
21292 HRESULT (STDMETHODCALLTYPE *get_NumberOfElements)(
21293 ISpeechPhraseProperty *This,
21294 LONG *NumberOfElements);
21295
21296 HRESULT (STDMETHODCALLTYPE *get_EngineConfidence)(
21297 ISpeechPhraseProperty *This,
21298 float *Confidence);
21299
21300 HRESULT (STDMETHODCALLTYPE *get_Confidence)(
21301 ISpeechPhraseProperty *This,
21302 SpeechEngineConfidence *Confidence);
21303
21304 HRESULT (STDMETHODCALLTYPE *get_Parent)(
21305 ISpeechPhraseProperty *This,
21306 ISpeechPhraseProperty **ParentProperty);
21307
21308 HRESULT (STDMETHODCALLTYPE *get_Children)(
21309 ISpeechPhraseProperty *This,
21310 ISpeechPhraseProperties **Children);
21311
21312 END_INTERFACE
21313} ISpeechPhrasePropertyVtbl;
21314
21315interface ISpeechPhraseProperty {
21316 CONST_VTBL ISpeechPhrasePropertyVtbl* lpVtbl;
21317};
21318
21319#ifdef COBJMACROS
21320#ifndef WIDL_C_INLINE_WRAPPERS
21321/*** IUnknown methods ***/
21322#define ISpeechPhraseProperty_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21323#define ISpeechPhraseProperty_AddRef(This) (This)->lpVtbl->AddRef(This)
21324#define ISpeechPhraseProperty_Release(This) (This)->lpVtbl->Release(This)
21325/*** IDispatch methods ***/
21326#define ISpeechPhraseProperty_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21327#define ISpeechPhraseProperty_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21328#define ISpeechPhraseProperty_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21329#define ISpeechPhraseProperty_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21330/*** ISpeechPhraseProperty methods ***/
21331#define ISpeechPhraseProperty_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
21332#define ISpeechPhraseProperty_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
21333#define ISpeechPhraseProperty_get_Value(This,Value) (This)->lpVtbl->get_Value(This,Value)
21334#define ISpeechPhraseProperty_get_FirstElement(This,FirstElement) (This)->lpVtbl->get_FirstElement(This,FirstElement)
21335#define ISpeechPhraseProperty_get_NumberOfElements(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElements(This,NumberOfElements)
21336#define ISpeechPhraseProperty_get_EngineConfidence(This,Confidence) (This)->lpVtbl->get_EngineConfidence(This,Confidence)
21337#define ISpeechPhraseProperty_get_Confidence(This,Confidence) (This)->lpVtbl->get_Confidence(This,Confidence)
21338#define ISpeechPhraseProperty_get_Parent(This,ParentProperty) (This)->lpVtbl->get_Parent(This,ParentProperty)
21339#define ISpeechPhraseProperty_get_Children(This,Children) (This)->lpVtbl->get_Children(This,Children)
21340#else
21341/*** IUnknown methods ***/
21342static inline HRESULT ISpeechPhraseProperty_QueryInterface(ISpeechPhraseProperty* This,REFIID riid,void **ppvObject) {
21343 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21344}
21345static inline ULONG ISpeechPhraseProperty_AddRef(ISpeechPhraseProperty* This) {
21346 return This->lpVtbl->AddRef(This);
21347}
21348static inline ULONG ISpeechPhraseProperty_Release(ISpeechPhraseProperty* This) {
21349 return This->lpVtbl->Release(This);
21350}
21351/*** IDispatch methods ***/
21352static inline HRESULT ISpeechPhraseProperty_GetTypeInfoCount(ISpeechPhraseProperty* This,UINT *pctinfo) {
21353 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21354}
21355static inline HRESULT ISpeechPhraseProperty_GetTypeInfo(ISpeechPhraseProperty* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21356 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21357}
21358static inline HRESULT ISpeechPhraseProperty_GetIDsOfNames(ISpeechPhraseProperty* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21359 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21360}
21361static inline HRESULT ISpeechPhraseProperty_Invoke(ISpeechPhraseProperty* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21362 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21363}
21364/*** ISpeechPhraseProperty methods ***/
21365static inline HRESULT ISpeechPhraseProperty_get_Name(ISpeechPhraseProperty* This,BSTR *Name) {
21366 return This->lpVtbl->get_Name(This,Name);
21367}
21368static inline HRESULT ISpeechPhraseProperty_get_Id(ISpeechPhraseProperty* This,LONG *Id) {
21369 return This->lpVtbl->get_Id(This,Id);
21370}
21371static inline HRESULT ISpeechPhraseProperty_get_Value(ISpeechPhraseProperty* This,VARIANT *Value) {
21372 return This->lpVtbl->get_Value(This,Value);
21373}
21374static inline HRESULT ISpeechPhraseProperty_get_FirstElement(ISpeechPhraseProperty* This,LONG *FirstElement) {
21375 return This->lpVtbl->get_FirstElement(This,FirstElement);
21376}
21377static inline HRESULT ISpeechPhraseProperty_get_NumberOfElements(ISpeechPhraseProperty* This,LONG *NumberOfElements) {
21378 return This->lpVtbl->get_NumberOfElements(This,NumberOfElements);
21379}
21380static inline HRESULT ISpeechPhraseProperty_get_EngineConfidence(ISpeechPhraseProperty* This,float *Confidence) {
21381 return This->lpVtbl->get_EngineConfidence(This,Confidence);
21382}
21383static inline HRESULT ISpeechPhraseProperty_get_Confidence(ISpeechPhraseProperty* This,SpeechEngineConfidence *Confidence) {
21384 return This->lpVtbl->get_Confidence(This,Confidence);
21385}
21386static inline HRESULT ISpeechPhraseProperty_get_Parent(ISpeechPhraseProperty* This,ISpeechPhraseProperty **ParentProperty) {
21387 return This->lpVtbl->get_Parent(This,ParentProperty);
21388}
21389static inline HRESULT ISpeechPhraseProperty_get_Children(ISpeechPhraseProperty* This,ISpeechPhraseProperties **Children) {
21390 return This->lpVtbl->get_Children(This,Children);
21391}
21392#endif
21393#endif
21394
21395#endif
21396
21397
21398#endif /* __ISpeechPhraseProperty_INTERFACE_DEFINED__ */
21399
21400/*****************************************************************************
21401 * ISpeechPhraseProperties interface
21402 */
21403#ifndef __ISpeechPhraseProperties_INTERFACE_DEFINED__
21404#define __ISpeechPhraseProperties_INTERFACE_DEFINED__
21405
21406DEFINE_GUID(IID_ISpeechPhraseProperties, 0x08166b47, 0x102e, 0x4b23, 0xa5,0x99, 0xbd,0xb9,0x8d,0xbf,0xd1,0xf4);
21407#if defined(__cplusplus) && !defined(CINTERFACE)
21408MIDL_INTERFACE("08166b47-102e-4b23-a599-bdb98dbfd1f4")
21409ISpeechPhraseProperties : public IDispatch
21410{
21411 virtual HRESULT STDMETHODCALLTYPE get_Count(
21412 LONG *Count) = 0;
21413
21414 virtual HRESULT STDMETHODCALLTYPE Item(
21415 LONG Index,
21416 ISpeechPhraseProperty **Property) = 0;
21417
21418 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
21419 IUnknown **EnumVARIANT) = 0;
21420
21421};
21422#ifdef __CRT_UUID_DECL
21423__CRT_UUID_DECL(ISpeechPhraseProperties, 0x08166b47, 0x102e, 0x4b23, 0xa5,0x99, 0xbd,0xb9,0x8d,0xbf,0xd1,0xf4)
21424#endif
21425#else
21426typedef struct ISpeechPhrasePropertiesVtbl {
21427 BEGIN_INTERFACE
21428
21429 /*** IUnknown methods ***/
21430 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21431 ISpeechPhraseProperties *This,
21432 REFIID riid,
21433 void **ppvObject);
21434
21435 ULONG (STDMETHODCALLTYPE *AddRef)(
21436 ISpeechPhraseProperties *This);
21437
21438 ULONG (STDMETHODCALLTYPE *Release)(
21439 ISpeechPhraseProperties *This);
21440
21441 /*** IDispatch methods ***/
21442 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21443 ISpeechPhraseProperties *This,
21444 UINT *pctinfo);
21445
21446 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21447 ISpeechPhraseProperties *This,
21448 UINT iTInfo,
21449 LCID lcid,
21450 ITypeInfo **ppTInfo);
21451
21452 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21453 ISpeechPhraseProperties *This,
21454 REFIID riid,
21455 LPOLESTR *rgszNames,
21456 UINT cNames,
21457 LCID lcid,
21458 DISPID *rgDispId);
21459
21460 HRESULT (STDMETHODCALLTYPE *Invoke)(
21461 ISpeechPhraseProperties *This,
21462 DISPID dispIdMember,
21463 REFIID riid,
21464 LCID lcid,
21465 WORD wFlags,
21466 DISPPARAMS *pDispParams,
21467 VARIANT *pVarResult,
21468 EXCEPINFO *pExcepInfo,
21469 UINT *puArgErr);
21470
21471 /*** ISpeechPhraseProperties methods ***/
21472 HRESULT (STDMETHODCALLTYPE *get_Count)(
21473 ISpeechPhraseProperties *This,
21474 LONG *Count);
21475
21476 HRESULT (STDMETHODCALLTYPE *Item)(
21477 ISpeechPhraseProperties *This,
21478 LONG Index,
21479 ISpeechPhraseProperty **Property);
21480
21481 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
21482 ISpeechPhraseProperties *This,
21483 IUnknown **EnumVARIANT);
21484
21485 END_INTERFACE
21486} ISpeechPhrasePropertiesVtbl;
21487
21488interface ISpeechPhraseProperties {
21489 CONST_VTBL ISpeechPhrasePropertiesVtbl* lpVtbl;
21490};
21491
21492#ifdef COBJMACROS
21493#ifndef WIDL_C_INLINE_WRAPPERS
21494/*** IUnknown methods ***/
21495#define ISpeechPhraseProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21496#define ISpeechPhraseProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
21497#define ISpeechPhraseProperties_Release(This) (This)->lpVtbl->Release(This)
21498/*** IDispatch methods ***/
21499#define ISpeechPhraseProperties_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21500#define ISpeechPhraseProperties_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21501#define ISpeechPhraseProperties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21502#define ISpeechPhraseProperties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21503/*** ISpeechPhraseProperties methods ***/
21504#define ISpeechPhraseProperties_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
21505#define ISpeechPhraseProperties_Item(This,Index,Property) (This)->lpVtbl->Item(This,Index,Property)
21506#define ISpeechPhraseProperties_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
21507#else
21508/*** IUnknown methods ***/
21509static inline HRESULT ISpeechPhraseProperties_QueryInterface(ISpeechPhraseProperties* This,REFIID riid,void **ppvObject) {
21510 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21511}
21512static inline ULONG ISpeechPhraseProperties_AddRef(ISpeechPhraseProperties* This) {
21513 return This->lpVtbl->AddRef(This);
21514}
21515static inline ULONG ISpeechPhraseProperties_Release(ISpeechPhraseProperties* This) {
21516 return This->lpVtbl->Release(This);
21517}
21518/*** IDispatch methods ***/
21519static inline HRESULT ISpeechPhraseProperties_GetTypeInfoCount(ISpeechPhraseProperties* This,UINT *pctinfo) {
21520 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21521}
21522static inline HRESULT ISpeechPhraseProperties_GetTypeInfo(ISpeechPhraseProperties* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21523 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21524}
21525static inline HRESULT ISpeechPhraseProperties_GetIDsOfNames(ISpeechPhraseProperties* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21526 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21527}
21528static inline HRESULT ISpeechPhraseProperties_Invoke(ISpeechPhraseProperties* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21529 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21530}
21531/*** ISpeechPhraseProperties methods ***/
21532static inline HRESULT ISpeechPhraseProperties_get_Count(ISpeechPhraseProperties* This,LONG *Count) {
21533 return This->lpVtbl->get_Count(This,Count);
21534}
21535static inline HRESULT ISpeechPhraseProperties_Item(ISpeechPhraseProperties* This,LONG Index,ISpeechPhraseProperty **Property) {
21536 return This->lpVtbl->Item(This,Index,Property);
21537}
21538static inline HRESULT ISpeechPhraseProperties_get__NewEnum(ISpeechPhraseProperties* This,IUnknown **EnumVARIANT) {
21539 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
21540}
21541#endif
21542#endif
21543
21544#endif
21545
21546
21547#endif /* __ISpeechPhraseProperties_INTERFACE_DEFINED__ */
21548
21549/*****************************************************************************
21550 * ISpeechPhraseRule interface
21551 */
21552#ifndef __ISpeechPhraseRule_INTERFACE_DEFINED__
21553#define __ISpeechPhraseRule_INTERFACE_DEFINED__
21554
21555DEFINE_GUID(IID_ISpeechPhraseRule, 0xa7bfe112, 0xa4a0, 0x48d9, 0xb6,0x02, 0xc3,0x13,0x84,0x3f,0x69,0x64);
21556#if defined(__cplusplus) && !defined(CINTERFACE)
21557MIDL_INTERFACE("a7bfe112-a4a0-48d9-b602-c313843f6964")
21558ISpeechPhraseRule : public IDispatch
21559{
21560 virtual HRESULT STDMETHODCALLTYPE get_Name(
21561 BSTR *Name) = 0;
21562
21563 virtual HRESULT STDMETHODCALLTYPE get_Id(
21564 LONG *Id) = 0;
21565
21566 virtual HRESULT STDMETHODCALLTYPE get_FirstElement(
21567 LONG *FirstElement) = 0;
21568
21569 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElements(
21570 LONG *NumberOfElements) = 0;
21571
21572 virtual HRESULT STDMETHODCALLTYPE get_Parent(
21573 ISpeechPhraseRule **Parent) = 0;
21574
21575 virtual HRESULT STDMETHODCALLTYPE get_Children(
21576 ISpeechPhraseRules **Children) = 0;
21577
21578 virtual HRESULT STDMETHODCALLTYPE get_Confidence(
21579 SpeechEngineConfidence *ActualConfidence) = 0;
21580
21581 virtual HRESULT STDMETHODCALLTYPE get_EngineConfidence(
21582 float *EngineConfidence) = 0;
21583
21584};
21585#ifdef __CRT_UUID_DECL
21586__CRT_UUID_DECL(ISpeechPhraseRule, 0xa7bfe112, 0xa4a0, 0x48d9, 0xb6,0x02, 0xc3,0x13,0x84,0x3f,0x69,0x64)
21587#endif
21588#else
21589typedef struct ISpeechPhraseRuleVtbl {
21590 BEGIN_INTERFACE
21591
21592 /*** IUnknown methods ***/
21593 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21594 ISpeechPhraseRule *This,
21595 REFIID riid,
21596 void **ppvObject);
21597
21598 ULONG (STDMETHODCALLTYPE *AddRef)(
21599 ISpeechPhraseRule *This);
21600
21601 ULONG (STDMETHODCALLTYPE *Release)(
21602 ISpeechPhraseRule *This);
21603
21604 /*** IDispatch methods ***/
21605 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21606 ISpeechPhraseRule *This,
21607 UINT *pctinfo);
21608
21609 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21610 ISpeechPhraseRule *This,
21611 UINT iTInfo,
21612 LCID lcid,
21613 ITypeInfo **ppTInfo);
21614
21615 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21616 ISpeechPhraseRule *This,
21617 REFIID riid,
21618 LPOLESTR *rgszNames,
21619 UINT cNames,
21620 LCID lcid,
21621 DISPID *rgDispId);
21622
21623 HRESULT (STDMETHODCALLTYPE *Invoke)(
21624 ISpeechPhraseRule *This,
21625 DISPID dispIdMember,
21626 REFIID riid,
21627 LCID lcid,
21628 WORD wFlags,
21629 DISPPARAMS *pDispParams,
21630 VARIANT *pVarResult,
21631 EXCEPINFO *pExcepInfo,
21632 UINT *puArgErr);
21633
21634 /*** ISpeechPhraseRule methods ***/
21635 HRESULT (STDMETHODCALLTYPE *get_Name)(
21636 ISpeechPhraseRule *This,
21637 BSTR *Name);
21638
21639 HRESULT (STDMETHODCALLTYPE *get_Id)(
21640 ISpeechPhraseRule *This,
21641 LONG *Id);
21642
21643 HRESULT (STDMETHODCALLTYPE *get_FirstElement)(
21644 ISpeechPhraseRule *This,
21645 LONG *FirstElement);
21646
21647 HRESULT (STDMETHODCALLTYPE *get_NumberOfElements)(
21648 ISpeechPhraseRule *This,
21649 LONG *NumberOfElements);
21650
21651 HRESULT (STDMETHODCALLTYPE *get_Parent)(
21652 ISpeechPhraseRule *This,
21653 ISpeechPhraseRule **Parent);
21654
21655 HRESULT (STDMETHODCALLTYPE *get_Children)(
21656 ISpeechPhraseRule *This,
21657 ISpeechPhraseRules **Children);
21658
21659 HRESULT (STDMETHODCALLTYPE *get_Confidence)(
21660 ISpeechPhraseRule *This,
21661 SpeechEngineConfidence *ActualConfidence);
21662
21663 HRESULT (STDMETHODCALLTYPE *get_EngineConfidence)(
21664 ISpeechPhraseRule *This,
21665 float *EngineConfidence);
21666
21667 END_INTERFACE
21668} ISpeechPhraseRuleVtbl;
21669
21670interface ISpeechPhraseRule {
21671 CONST_VTBL ISpeechPhraseRuleVtbl* lpVtbl;
21672};
21673
21674#ifdef COBJMACROS
21675#ifndef WIDL_C_INLINE_WRAPPERS
21676/*** IUnknown methods ***/
21677#define ISpeechPhraseRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21678#define ISpeechPhraseRule_AddRef(This) (This)->lpVtbl->AddRef(This)
21679#define ISpeechPhraseRule_Release(This) (This)->lpVtbl->Release(This)
21680/*** IDispatch methods ***/
21681#define ISpeechPhraseRule_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21682#define ISpeechPhraseRule_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21683#define ISpeechPhraseRule_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21684#define ISpeechPhraseRule_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21685/*** ISpeechPhraseRule methods ***/
21686#define ISpeechPhraseRule_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
21687#define ISpeechPhraseRule_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
21688#define ISpeechPhraseRule_get_FirstElement(This,FirstElement) (This)->lpVtbl->get_FirstElement(This,FirstElement)
21689#define ISpeechPhraseRule_get_NumberOfElements(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElements(This,NumberOfElements)
21690#define ISpeechPhraseRule_get_Parent(This,Parent) (This)->lpVtbl->get_Parent(This,Parent)
21691#define ISpeechPhraseRule_get_Children(This,Children) (This)->lpVtbl->get_Children(This,Children)
21692#define ISpeechPhraseRule_get_Confidence(This,ActualConfidence) (This)->lpVtbl->get_Confidence(This,ActualConfidence)
21693#define ISpeechPhraseRule_get_EngineConfidence(This,EngineConfidence) (This)->lpVtbl->get_EngineConfidence(This,EngineConfidence)
21694#else
21695/*** IUnknown methods ***/
21696static inline HRESULT ISpeechPhraseRule_QueryInterface(ISpeechPhraseRule* This,REFIID riid,void **ppvObject) {
21697 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21698}
21699static inline ULONG ISpeechPhraseRule_AddRef(ISpeechPhraseRule* This) {
21700 return This->lpVtbl->AddRef(This);
21701}
21702static inline ULONG ISpeechPhraseRule_Release(ISpeechPhraseRule* This) {
21703 return This->lpVtbl->Release(This);
21704}
21705/*** IDispatch methods ***/
21706static inline HRESULT ISpeechPhraseRule_GetTypeInfoCount(ISpeechPhraseRule* This,UINT *pctinfo) {
21707 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21708}
21709static inline HRESULT ISpeechPhraseRule_GetTypeInfo(ISpeechPhraseRule* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21710 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21711}
21712static inline HRESULT ISpeechPhraseRule_GetIDsOfNames(ISpeechPhraseRule* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21713 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21714}
21715static inline HRESULT ISpeechPhraseRule_Invoke(ISpeechPhraseRule* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21716 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21717}
21718/*** ISpeechPhraseRule methods ***/
21719static inline HRESULT ISpeechPhraseRule_get_Name(ISpeechPhraseRule* This,BSTR *Name) {
21720 return This->lpVtbl->get_Name(This,Name);
21721}
21722static inline HRESULT ISpeechPhraseRule_get_Id(ISpeechPhraseRule* This,LONG *Id) {
21723 return This->lpVtbl->get_Id(This,Id);
21724}
21725static inline HRESULT ISpeechPhraseRule_get_FirstElement(ISpeechPhraseRule* This,LONG *FirstElement) {
21726 return This->lpVtbl->get_FirstElement(This,FirstElement);
21727}
21728static inline HRESULT ISpeechPhraseRule_get_NumberOfElements(ISpeechPhraseRule* This,LONG *NumberOfElements) {
21729 return This->lpVtbl->get_NumberOfElements(This,NumberOfElements);
21730}
21731static inline HRESULT ISpeechPhraseRule_get_Parent(ISpeechPhraseRule* This,ISpeechPhraseRule **Parent) {
21732 return This->lpVtbl->get_Parent(This,Parent);
21733}
21734static inline HRESULT ISpeechPhraseRule_get_Children(ISpeechPhraseRule* This,ISpeechPhraseRules **Children) {
21735 return This->lpVtbl->get_Children(This,Children);
21736}
21737static inline HRESULT ISpeechPhraseRule_get_Confidence(ISpeechPhraseRule* This,SpeechEngineConfidence *ActualConfidence) {
21738 return This->lpVtbl->get_Confidence(This,ActualConfidence);
21739}
21740static inline HRESULT ISpeechPhraseRule_get_EngineConfidence(ISpeechPhraseRule* This,float *EngineConfidence) {
21741 return This->lpVtbl->get_EngineConfidence(This,EngineConfidence);
21742}
21743#endif
21744#endif
21745
21746#endif
21747
21748
21749#endif /* __ISpeechPhraseRule_INTERFACE_DEFINED__ */
21750
21751/*****************************************************************************
21752 * ISpeechPhraseRules interface
21753 */
21754#ifndef __ISpeechPhraseRules_INTERFACE_DEFINED__
21755#define __ISpeechPhraseRules_INTERFACE_DEFINED__
21756
21757DEFINE_GUID(IID_ISpeechPhraseRules, 0x9047d593, 0x01dd, 0x4b72, 0x81,0xa3, 0xe4,0xa0,0xca,0x69,0xf4,0x07);
21758#if defined(__cplusplus) && !defined(CINTERFACE)
21759MIDL_INTERFACE("9047d593-01dd-4b72-81a3-e4a0ca69f407")
21760ISpeechPhraseRules : public IDispatch
21761{
21762 virtual HRESULT STDMETHODCALLTYPE get_Count(
21763 LONG *Count) = 0;
21764
21765 virtual HRESULT STDMETHODCALLTYPE Item(
21766 LONG Index,
21767 ISpeechPhraseRule **Rule) = 0;
21768
21769 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
21770 IUnknown **EnumVARIANT) = 0;
21771
21772};
21773#ifdef __CRT_UUID_DECL
21774__CRT_UUID_DECL(ISpeechPhraseRules, 0x9047d593, 0x01dd, 0x4b72, 0x81,0xa3, 0xe4,0xa0,0xca,0x69,0xf4,0x07)
21775#endif
21776#else
21777typedef struct ISpeechPhraseRulesVtbl {
21778 BEGIN_INTERFACE
21779
21780 /*** IUnknown methods ***/
21781 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21782 ISpeechPhraseRules *This,
21783 REFIID riid,
21784 void **ppvObject);
21785
21786 ULONG (STDMETHODCALLTYPE *AddRef)(
21787 ISpeechPhraseRules *This);
21788
21789 ULONG (STDMETHODCALLTYPE *Release)(
21790 ISpeechPhraseRules *This);
21791
21792 /*** IDispatch methods ***/
21793 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21794 ISpeechPhraseRules *This,
21795 UINT *pctinfo);
21796
21797 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21798 ISpeechPhraseRules *This,
21799 UINT iTInfo,
21800 LCID lcid,
21801 ITypeInfo **ppTInfo);
21802
21803 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21804 ISpeechPhraseRules *This,
21805 REFIID riid,
21806 LPOLESTR *rgszNames,
21807 UINT cNames,
21808 LCID lcid,
21809 DISPID *rgDispId);
21810
21811 HRESULT (STDMETHODCALLTYPE *Invoke)(
21812 ISpeechPhraseRules *This,
21813 DISPID dispIdMember,
21814 REFIID riid,
21815 LCID lcid,
21816 WORD wFlags,
21817 DISPPARAMS *pDispParams,
21818 VARIANT *pVarResult,
21819 EXCEPINFO *pExcepInfo,
21820 UINT *puArgErr);
21821
21822 /*** ISpeechPhraseRules methods ***/
21823 HRESULT (STDMETHODCALLTYPE *get_Count)(
21824 ISpeechPhraseRules *This,
21825 LONG *Count);
21826
21827 HRESULT (STDMETHODCALLTYPE *Item)(
21828 ISpeechPhraseRules *This,
21829 LONG Index,
21830 ISpeechPhraseRule **Rule);
21831
21832 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
21833 ISpeechPhraseRules *This,
21834 IUnknown **EnumVARIANT);
21835
21836 END_INTERFACE
21837} ISpeechPhraseRulesVtbl;
21838
21839interface ISpeechPhraseRules {
21840 CONST_VTBL ISpeechPhraseRulesVtbl* lpVtbl;
21841};
21842
21843#ifdef COBJMACROS
21844#ifndef WIDL_C_INLINE_WRAPPERS
21845/*** IUnknown methods ***/
21846#define ISpeechPhraseRules_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21847#define ISpeechPhraseRules_AddRef(This) (This)->lpVtbl->AddRef(This)
21848#define ISpeechPhraseRules_Release(This) (This)->lpVtbl->Release(This)
21849/*** IDispatch methods ***/
21850#define ISpeechPhraseRules_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21851#define ISpeechPhraseRules_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21852#define ISpeechPhraseRules_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21853#define ISpeechPhraseRules_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21854/*** ISpeechPhraseRules methods ***/
21855#define ISpeechPhraseRules_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
21856#define ISpeechPhraseRules_Item(This,Index,Rule) (This)->lpVtbl->Item(This,Index,Rule)
21857#define ISpeechPhraseRules_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
21858#else
21859/*** IUnknown methods ***/
21860static inline HRESULT ISpeechPhraseRules_QueryInterface(ISpeechPhraseRules* This,REFIID riid,void **ppvObject) {
21861 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21862}
21863static inline ULONG ISpeechPhraseRules_AddRef(ISpeechPhraseRules* This) {
21864 return This->lpVtbl->AddRef(This);
21865}
21866static inline ULONG ISpeechPhraseRules_Release(ISpeechPhraseRules* This) {
21867 return This->lpVtbl->Release(This);
21868}
21869/*** IDispatch methods ***/
21870static inline HRESULT ISpeechPhraseRules_GetTypeInfoCount(ISpeechPhraseRules* This,UINT *pctinfo) {
21871 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21872}
21873static inline HRESULT ISpeechPhraseRules_GetTypeInfo(ISpeechPhraseRules* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21874 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21875}
21876static inline HRESULT ISpeechPhraseRules_GetIDsOfNames(ISpeechPhraseRules* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21877 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21878}
21879static inline HRESULT ISpeechPhraseRules_Invoke(ISpeechPhraseRules* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21880 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21881}
21882/*** ISpeechPhraseRules methods ***/
21883static inline HRESULT ISpeechPhraseRules_get_Count(ISpeechPhraseRules* This,LONG *Count) {
21884 return This->lpVtbl->get_Count(This,Count);
21885}
21886static inline HRESULT ISpeechPhraseRules_Item(ISpeechPhraseRules* This,LONG Index,ISpeechPhraseRule **Rule) {
21887 return This->lpVtbl->Item(This,Index,Rule);
21888}
21889static inline HRESULT ISpeechPhraseRules_get__NewEnum(ISpeechPhraseRules* This,IUnknown **EnumVARIANT) {
21890 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
21891}
21892#endif
21893#endif
21894
21895#endif
21896
21897
21898#endif /* __ISpeechPhraseRules_INTERFACE_DEFINED__ */
21899
21900/*****************************************************************************
21901 * ISpeechLexiconWords interface
21902 */
21903#ifndef __ISpeechLexiconWords_INTERFACE_DEFINED__
21904#define __ISpeechLexiconWords_INTERFACE_DEFINED__
21905
21906DEFINE_GUID(IID_ISpeechLexiconWords, 0x8d199862, 0x415e, 0x47d5, 0xac,0x4f, 0xfa,0xa6,0x08,0xb4,0x24,0xe6);
21907#if defined(__cplusplus) && !defined(CINTERFACE)
21908MIDL_INTERFACE("8d199862-415e-47d5-ac4f-faa608b424e6")
21909ISpeechLexiconWords : public IDispatch
21910{
21911 virtual HRESULT STDMETHODCALLTYPE get_Count(
21912 LONG *Count) = 0;
21913
21914 virtual HRESULT STDMETHODCALLTYPE Item(
21915 LONG Index,
21916 ISpeechLexiconWord **Word) = 0;
21917
21918 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
21919 IUnknown **EnumVARIANT) = 0;
21920
21921};
21922#ifdef __CRT_UUID_DECL
21923__CRT_UUID_DECL(ISpeechLexiconWords, 0x8d199862, 0x415e, 0x47d5, 0xac,0x4f, 0xfa,0xa6,0x08,0xb4,0x24,0xe6)
21924#endif
21925#else
21926typedef struct ISpeechLexiconWordsVtbl {
21927 BEGIN_INTERFACE
21928
21929 /*** IUnknown methods ***/
21930 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21931 ISpeechLexiconWords *This,
21932 REFIID riid,
21933 void **ppvObject);
21934
21935 ULONG (STDMETHODCALLTYPE *AddRef)(
21936 ISpeechLexiconWords *This);
21937
21938 ULONG (STDMETHODCALLTYPE *Release)(
21939 ISpeechLexiconWords *This);
21940
21941 /*** IDispatch methods ***/
21942 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21943 ISpeechLexiconWords *This,
21944 UINT *pctinfo);
21945
21946 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21947 ISpeechLexiconWords *This,
21948 UINT iTInfo,
21949 LCID lcid,
21950 ITypeInfo **ppTInfo);
21951
21952 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21953 ISpeechLexiconWords *This,
21954 REFIID riid,
21955 LPOLESTR *rgszNames,
21956 UINT cNames,
21957 LCID lcid,
21958 DISPID *rgDispId);
21959
21960 HRESULT (STDMETHODCALLTYPE *Invoke)(
21961 ISpeechLexiconWords *This,
21962 DISPID dispIdMember,
21963 REFIID riid,
21964 LCID lcid,
21965 WORD wFlags,
21966 DISPPARAMS *pDispParams,
21967 VARIANT *pVarResult,
21968 EXCEPINFO *pExcepInfo,
21969 UINT *puArgErr);
21970
21971 /*** ISpeechLexiconWords methods ***/
21972 HRESULT (STDMETHODCALLTYPE *get_Count)(
21973 ISpeechLexiconWords *This,
21974 LONG *Count);
21975
21976 HRESULT (STDMETHODCALLTYPE *Item)(
21977 ISpeechLexiconWords *This,
21978 LONG Index,
21979 ISpeechLexiconWord **Word);
21980
21981 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
21982 ISpeechLexiconWords *This,
21983 IUnknown **EnumVARIANT);
21984
21985 END_INTERFACE
21986} ISpeechLexiconWordsVtbl;
21987
21988interface ISpeechLexiconWords {
21989 CONST_VTBL ISpeechLexiconWordsVtbl* lpVtbl;
21990};
21991
21992#ifdef COBJMACROS
21993#ifndef WIDL_C_INLINE_WRAPPERS
21994/*** IUnknown methods ***/
21995#define ISpeechLexiconWords_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21996#define ISpeechLexiconWords_AddRef(This) (This)->lpVtbl->AddRef(This)
21997#define ISpeechLexiconWords_Release(This) (This)->lpVtbl->Release(This)
21998/*** IDispatch methods ***/
21999#define ISpeechLexiconWords_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22000#define ISpeechLexiconWords_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22001#define ISpeechLexiconWords_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22002#define ISpeechLexiconWords_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22003/*** ISpeechLexiconWords methods ***/
22004#define ISpeechLexiconWords_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
22005#define ISpeechLexiconWords_Item(This,Index,Word) (This)->lpVtbl->Item(This,Index,Word)
22006#define ISpeechLexiconWords_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
22007#else
22008/*** IUnknown methods ***/
22009static inline HRESULT ISpeechLexiconWords_QueryInterface(ISpeechLexiconWords* This,REFIID riid,void **ppvObject) {
22010 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22011}
22012static inline ULONG ISpeechLexiconWords_AddRef(ISpeechLexiconWords* This) {
22013 return This->lpVtbl->AddRef(This);
22014}
22015static inline ULONG ISpeechLexiconWords_Release(ISpeechLexiconWords* This) {
22016 return This->lpVtbl->Release(This);
22017}
22018/*** IDispatch methods ***/
22019static inline HRESULT ISpeechLexiconWords_GetTypeInfoCount(ISpeechLexiconWords* This,UINT *pctinfo) {
22020 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22021}
22022static inline HRESULT ISpeechLexiconWords_GetTypeInfo(ISpeechLexiconWords* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22023 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22024}
22025static inline HRESULT ISpeechLexiconWords_GetIDsOfNames(ISpeechLexiconWords* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22026 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22027}
22028static inline HRESULT ISpeechLexiconWords_Invoke(ISpeechLexiconWords* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22029 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22030}
22031/*** ISpeechLexiconWords methods ***/
22032static inline HRESULT ISpeechLexiconWords_get_Count(ISpeechLexiconWords* This,LONG *Count) {
22033 return This->lpVtbl->get_Count(This,Count);
22034}
22035static inline HRESULT ISpeechLexiconWords_Item(ISpeechLexiconWords* This,LONG Index,ISpeechLexiconWord **Word) {
22036 return This->lpVtbl->Item(This,Index,Word);
22037}
22038static inline HRESULT ISpeechLexiconWords_get__NewEnum(ISpeechLexiconWords* This,IUnknown **EnumVARIANT) {
22039 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
22040}
22041#endif
22042#endif
22043
22044#endif
22045
22046
22047#endif /* __ISpeechLexiconWords_INTERFACE_DEFINED__ */
22048
22049/*****************************************************************************
22050 * ISpeechLexicon interface
22051 */
22052#ifndef __ISpeechLexicon_INTERFACE_DEFINED__
22053#define __ISpeechLexicon_INTERFACE_DEFINED__
22054
22055DEFINE_GUID(IID_ISpeechLexicon, 0x3da7627a, 0xc7ae, 0x4b23, 0x87,0x08, 0x63,0x8c,0x50,0x36,0x2c,0x25);
22056#if defined(__cplusplus) && !defined(CINTERFACE)
22057MIDL_INTERFACE("3da7627a-c7ae-4b23-8708-638c50362c25")
22058ISpeechLexicon : public IDispatch
22059{
22060 virtual HRESULT STDMETHODCALLTYPE get_GenerationId(
22061 LONG *GenerationId) = 0;
22062
22063 virtual HRESULT STDMETHODCALLTYPE GetWords(
22064 SpeechLexiconType Flags,
22065 LONG *GenerationID,
22066 ISpeechLexiconWords **Words) = 0;
22067
22068 virtual HRESULT STDMETHODCALLTYPE AddPronunciation(
22069 BSTR bstrWord,
22070 SpeechLanguageId LangId,
22071 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
22072 BSTR bstrPronunciation = L"") = 0;
22073
22074 virtual HRESULT STDMETHODCALLTYPE AddPronunciationByPhoneIds(
22075 BSTR bstrWord,
22076 SpeechLanguageId LangId,
22077 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
22078 VARIANT *PhoneIds = 0) = 0;
22079
22080 virtual HRESULT STDMETHODCALLTYPE RemovePronunciation(
22081 BSTR bstrWord,
22082 SpeechLanguageId LangId,
22083 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
22084 BSTR bstrPronunciation = L"") = 0;
22085
22086 virtual HRESULT STDMETHODCALLTYPE RemovePronunciationByPhoneIds(
22087 BSTR bstrWord,
22088 SpeechLanguageId LangId,
22089 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
22090 VARIANT *PhoneIds = 0) = 0;
22091
22092 virtual HRESULT STDMETHODCALLTYPE GetPronunciations(
22093 BSTR bstrWord,
22094 SpeechLanguageId LangId,
22095 SpeechLexiconType TypeFlags,
22096 ISpeechLexiconPronunciations **ppPronunciations) = 0;
22097
22098 virtual HRESULT STDMETHODCALLTYPE GetGenerationChange(
22099 LONG *GenerationID,
22100 ISpeechLexiconWords **ppWords) = 0;
22101
22102};
22103#ifdef __CRT_UUID_DECL
22104__CRT_UUID_DECL(ISpeechLexicon, 0x3da7627a, 0xc7ae, 0x4b23, 0x87,0x08, 0x63,0x8c,0x50,0x36,0x2c,0x25)
22105#endif
22106#else
22107typedef struct ISpeechLexiconVtbl {
22108 BEGIN_INTERFACE
22109
22110 /*** IUnknown methods ***/
22111 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22112 ISpeechLexicon *This,
22113 REFIID riid,
22114 void **ppvObject);
22115
22116 ULONG (STDMETHODCALLTYPE *AddRef)(
22117 ISpeechLexicon *This);
22118
22119 ULONG (STDMETHODCALLTYPE *Release)(
22120 ISpeechLexicon *This);
22121
22122 /*** IDispatch methods ***/
22123 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22124 ISpeechLexicon *This,
22125 UINT *pctinfo);
22126
22127 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22128 ISpeechLexicon *This,
22129 UINT iTInfo,
22130 LCID lcid,
22131 ITypeInfo **ppTInfo);
22132
22133 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22134 ISpeechLexicon *This,
22135 REFIID riid,
22136 LPOLESTR *rgszNames,
22137 UINT cNames,
22138 LCID lcid,
22139 DISPID *rgDispId);
22140
22141 HRESULT (STDMETHODCALLTYPE *Invoke)(
22142 ISpeechLexicon *This,
22143 DISPID dispIdMember,
22144 REFIID riid,
22145 LCID lcid,
22146 WORD wFlags,
22147 DISPPARAMS *pDispParams,
22148 VARIANT *pVarResult,
22149 EXCEPINFO *pExcepInfo,
22150 UINT *puArgErr);
22151
22152 /*** ISpeechLexicon methods ***/
22153 HRESULT (STDMETHODCALLTYPE *get_GenerationId)(
22154 ISpeechLexicon *This,
22155 LONG *GenerationId);
22156
22157 HRESULT (STDMETHODCALLTYPE *GetWords)(
22158 ISpeechLexicon *This,
22159 SpeechLexiconType Flags,
22160 LONG *GenerationID,
22161 ISpeechLexiconWords **Words);
22162
22163 HRESULT (STDMETHODCALLTYPE *AddPronunciation)(
22164 ISpeechLexicon *This,
22165 BSTR bstrWord,
22166 SpeechLanguageId LangId,
22167 SpeechPartOfSpeech PartOfSpeech,
22168 BSTR bstrPronunciation);
22169
22170 HRESULT (STDMETHODCALLTYPE *AddPronunciationByPhoneIds)(
22171 ISpeechLexicon *This,
22172 BSTR bstrWord,
22173 SpeechLanguageId LangId,
22174 SpeechPartOfSpeech PartOfSpeech,
22175 VARIANT *PhoneIds);
22176
22177 HRESULT (STDMETHODCALLTYPE *RemovePronunciation)(
22178 ISpeechLexicon *This,
22179 BSTR bstrWord,
22180 SpeechLanguageId LangId,
22181 SpeechPartOfSpeech PartOfSpeech,
22182 BSTR bstrPronunciation);
22183
22184 HRESULT (STDMETHODCALLTYPE *RemovePronunciationByPhoneIds)(
22185 ISpeechLexicon *This,
22186 BSTR bstrWord,
22187 SpeechLanguageId LangId,
22188 SpeechPartOfSpeech PartOfSpeech,
22189 VARIANT *PhoneIds);
22190
22191 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
22192 ISpeechLexicon *This,
22193 BSTR bstrWord,
22194 SpeechLanguageId LangId,
22195 SpeechLexiconType TypeFlags,
22196 ISpeechLexiconPronunciations **ppPronunciations);
22197
22198 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
22199 ISpeechLexicon *This,
22200 LONG *GenerationID,
22201 ISpeechLexiconWords **ppWords);
22202
22203 END_INTERFACE
22204} ISpeechLexiconVtbl;
22205
22206interface ISpeechLexicon {
22207 CONST_VTBL ISpeechLexiconVtbl* lpVtbl;
22208};
22209
22210#ifdef COBJMACROS
22211#ifndef WIDL_C_INLINE_WRAPPERS
22212/*** IUnknown methods ***/
22213#define ISpeechLexicon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22214#define ISpeechLexicon_AddRef(This) (This)->lpVtbl->AddRef(This)
22215#define ISpeechLexicon_Release(This) (This)->lpVtbl->Release(This)
22216/*** IDispatch methods ***/
22217#define ISpeechLexicon_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22218#define ISpeechLexicon_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22219#define ISpeechLexicon_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22220#define ISpeechLexicon_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22221/*** ISpeechLexicon methods ***/
22222#define ISpeechLexicon_get_GenerationId(This,GenerationId) (This)->lpVtbl->get_GenerationId(This,GenerationId)
22223#define ISpeechLexicon_GetWords(This,Flags,GenerationID,Words) (This)->lpVtbl->GetWords(This,Flags,GenerationID,Words)
22224#define ISpeechLexicon_AddPronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation) (This)->lpVtbl->AddPronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation)
22225#define ISpeechLexicon_AddPronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds) (This)->lpVtbl->AddPronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds)
22226#define ISpeechLexicon_RemovePronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation) (This)->lpVtbl->RemovePronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation)
22227#define ISpeechLexicon_RemovePronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds) (This)->lpVtbl->RemovePronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds)
22228#define ISpeechLexicon_GetPronunciations(This,bstrWord,LangId,TypeFlags,ppPronunciations) (This)->lpVtbl->GetPronunciations(This,bstrWord,LangId,TypeFlags,ppPronunciations)
22229#define ISpeechLexicon_GetGenerationChange(This,GenerationID,ppWords) (This)->lpVtbl->GetGenerationChange(This,GenerationID,ppWords)
22230#else
22231/*** IUnknown methods ***/
22232static inline HRESULT ISpeechLexicon_QueryInterface(ISpeechLexicon* This,REFIID riid,void **ppvObject) {
22233 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22234}
22235static inline ULONG ISpeechLexicon_AddRef(ISpeechLexicon* This) {
22236 return This->lpVtbl->AddRef(This);
22237}
22238static inline ULONG ISpeechLexicon_Release(ISpeechLexicon* This) {
22239 return This->lpVtbl->Release(This);
22240}
22241/*** IDispatch methods ***/
22242static inline HRESULT ISpeechLexicon_GetTypeInfoCount(ISpeechLexicon* This,UINT *pctinfo) {
22243 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22244}
22245static inline HRESULT ISpeechLexicon_GetTypeInfo(ISpeechLexicon* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22246 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22247}
22248static inline HRESULT ISpeechLexicon_GetIDsOfNames(ISpeechLexicon* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22249 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22250}
22251static inline HRESULT ISpeechLexicon_Invoke(ISpeechLexicon* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22252 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22253}
22254/*** ISpeechLexicon methods ***/
22255static inline HRESULT ISpeechLexicon_get_GenerationId(ISpeechLexicon* This,LONG *GenerationId) {
22256 return This->lpVtbl->get_GenerationId(This,GenerationId);
22257}
22258static inline HRESULT ISpeechLexicon_GetWords(ISpeechLexicon* This,SpeechLexiconType Flags,LONG *GenerationID,ISpeechLexiconWords **Words) {
22259 return This->lpVtbl->GetWords(This,Flags,GenerationID,Words);
22260}
22261static inline HRESULT ISpeechLexicon_AddPronunciation(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,BSTR bstrPronunciation) {
22262 return This->lpVtbl->AddPronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation);
22263}
22264static inline HRESULT ISpeechLexicon_AddPronunciationByPhoneIds(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,VARIANT *PhoneIds) {
22265 return This->lpVtbl->AddPronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds);
22266}
22267static inline HRESULT ISpeechLexicon_RemovePronunciation(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,BSTR bstrPronunciation) {
22268 return This->lpVtbl->RemovePronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation);
22269}
22270static inline HRESULT ISpeechLexicon_RemovePronunciationByPhoneIds(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,VARIANT *PhoneIds) {
22271 return This->lpVtbl->RemovePronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds);
22272}
22273static inline HRESULT ISpeechLexicon_GetPronunciations(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechLexiconType TypeFlags,ISpeechLexiconPronunciations **ppPronunciations) {
22274 return This->lpVtbl->GetPronunciations(This,bstrWord,LangId,TypeFlags,ppPronunciations);
22275}
22276static inline HRESULT ISpeechLexicon_GetGenerationChange(ISpeechLexicon* This,LONG *GenerationID,ISpeechLexiconWords **ppWords) {
22277 return This->lpVtbl->GetGenerationChange(This,GenerationID,ppWords);
22278}
22279#endif
22280#endif
22281
22282#endif
22283
22284
22285#endif /* __ISpeechLexicon_INTERFACE_DEFINED__ */
22286
22287/*****************************************************************************
22288 * ISpeechLexiconWord interface
22289 */
22290#ifndef __ISpeechLexiconWord_INTERFACE_DEFINED__
22291#define __ISpeechLexiconWord_INTERFACE_DEFINED__
22292
22293DEFINE_GUID(IID_ISpeechLexiconWord, 0x4e5b933c, 0xc9be, 0x48ed, 0x88,0x42, 0x1e,0xe5,0x1b,0xb1,0xd4,0xff);
22294#if defined(__cplusplus) && !defined(CINTERFACE)
22295MIDL_INTERFACE("4e5b933c-c9be-48ed-8842-1ee51bb1d4ff")
22296ISpeechLexiconWord : public IDispatch
22297{
22298 virtual HRESULT STDMETHODCALLTYPE get_LangId(
22299 SpeechLanguageId *LangId) = 0;
22300
22301 virtual HRESULT STDMETHODCALLTYPE get_Type(
22302 SpeechWordType *WordType) = 0;
22303
22304 virtual HRESULT STDMETHODCALLTYPE get_Word(
22305 BSTR *Word) = 0;
22306
22307 virtual HRESULT STDMETHODCALLTYPE get_Pronunciations(
22308 ISpeechLexiconPronunciations **Pronunciations) = 0;
22309
22310};
22311#ifdef __CRT_UUID_DECL
22312__CRT_UUID_DECL(ISpeechLexiconWord, 0x4e5b933c, 0xc9be, 0x48ed, 0x88,0x42, 0x1e,0xe5,0x1b,0xb1,0xd4,0xff)
22313#endif
22314#else
22315typedef struct ISpeechLexiconWordVtbl {
22316 BEGIN_INTERFACE
22317
22318 /*** IUnknown methods ***/
22319 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22320 ISpeechLexiconWord *This,
22321 REFIID riid,
22322 void **ppvObject);
22323
22324 ULONG (STDMETHODCALLTYPE *AddRef)(
22325 ISpeechLexiconWord *This);
22326
22327 ULONG (STDMETHODCALLTYPE *Release)(
22328 ISpeechLexiconWord *This);
22329
22330 /*** IDispatch methods ***/
22331 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22332 ISpeechLexiconWord *This,
22333 UINT *pctinfo);
22334
22335 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22336 ISpeechLexiconWord *This,
22337 UINT iTInfo,
22338 LCID lcid,
22339 ITypeInfo **ppTInfo);
22340
22341 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22342 ISpeechLexiconWord *This,
22343 REFIID riid,
22344 LPOLESTR *rgszNames,
22345 UINT cNames,
22346 LCID lcid,
22347 DISPID *rgDispId);
22348
22349 HRESULT (STDMETHODCALLTYPE *Invoke)(
22350 ISpeechLexiconWord *This,
22351 DISPID dispIdMember,
22352 REFIID riid,
22353 LCID lcid,
22354 WORD wFlags,
22355 DISPPARAMS *pDispParams,
22356 VARIANT *pVarResult,
22357 EXCEPINFO *pExcepInfo,
22358 UINT *puArgErr);
22359
22360 /*** ISpeechLexiconWord methods ***/
22361 HRESULT (STDMETHODCALLTYPE *get_LangId)(
22362 ISpeechLexiconWord *This,
22363 SpeechLanguageId *LangId);
22364
22365 HRESULT (STDMETHODCALLTYPE *get_Type)(
22366 ISpeechLexiconWord *This,
22367 SpeechWordType *WordType);
22368
22369 HRESULT (STDMETHODCALLTYPE *get_Word)(
22370 ISpeechLexiconWord *This,
22371 BSTR *Word);
22372
22373 HRESULT (STDMETHODCALLTYPE *get_Pronunciations)(
22374 ISpeechLexiconWord *This,
22375 ISpeechLexiconPronunciations **Pronunciations);
22376
22377 END_INTERFACE
22378} ISpeechLexiconWordVtbl;
22379
22380interface ISpeechLexiconWord {
22381 CONST_VTBL ISpeechLexiconWordVtbl* lpVtbl;
22382};
22383
22384#ifdef COBJMACROS
22385#ifndef WIDL_C_INLINE_WRAPPERS
22386/*** IUnknown methods ***/
22387#define ISpeechLexiconWord_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22388#define ISpeechLexiconWord_AddRef(This) (This)->lpVtbl->AddRef(This)
22389#define ISpeechLexiconWord_Release(This) (This)->lpVtbl->Release(This)
22390/*** IDispatch methods ***/
22391#define ISpeechLexiconWord_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22392#define ISpeechLexiconWord_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22393#define ISpeechLexiconWord_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22394#define ISpeechLexiconWord_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22395/*** ISpeechLexiconWord methods ***/
22396#define ISpeechLexiconWord_get_LangId(This,LangId) (This)->lpVtbl->get_LangId(This,LangId)
22397#define ISpeechLexiconWord_get_Type(This,WordType) (This)->lpVtbl->get_Type(This,WordType)
22398#define ISpeechLexiconWord_get_Word(This,Word) (This)->lpVtbl->get_Word(This,Word)
22399#define ISpeechLexiconWord_get_Pronunciations(This,Pronunciations) (This)->lpVtbl->get_Pronunciations(This,Pronunciations)
22400#else
22401/*** IUnknown methods ***/
22402static inline HRESULT ISpeechLexiconWord_QueryInterface(ISpeechLexiconWord* This,REFIID riid,void **ppvObject) {
22403 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22404}
22405static inline ULONG ISpeechLexiconWord_AddRef(ISpeechLexiconWord* This) {
22406 return This->lpVtbl->AddRef(This);
22407}
22408static inline ULONG ISpeechLexiconWord_Release(ISpeechLexiconWord* This) {
22409 return This->lpVtbl->Release(This);
22410}
22411/*** IDispatch methods ***/
22412static inline HRESULT ISpeechLexiconWord_GetTypeInfoCount(ISpeechLexiconWord* This,UINT *pctinfo) {
22413 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22414}
22415static inline HRESULT ISpeechLexiconWord_GetTypeInfo(ISpeechLexiconWord* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22416 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22417}
22418static inline HRESULT ISpeechLexiconWord_GetIDsOfNames(ISpeechLexiconWord* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22419 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22420}
22421static inline HRESULT ISpeechLexiconWord_Invoke(ISpeechLexiconWord* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22422 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22423}
22424/*** ISpeechLexiconWord methods ***/
22425static inline HRESULT ISpeechLexiconWord_get_LangId(ISpeechLexiconWord* This,SpeechLanguageId *LangId) {
22426 return This->lpVtbl->get_LangId(This,LangId);
22427}
22428static inline HRESULT ISpeechLexiconWord_get_Type(ISpeechLexiconWord* This,SpeechWordType *WordType) {
22429 return This->lpVtbl->get_Type(This,WordType);
22430}
22431static inline HRESULT ISpeechLexiconWord_get_Word(ISpeechLexiconWord* This,BSTR *Word) {
22432 return This->lpVtbl->get_Word(This,Word);
22433}
22434static inline HRESULT ISpeechLexiconWord_get_Pronunciations(ISpeechLexiconWord* This,ISpeechLexiconPronunciations **Pronunciations) {
22435 return This->lpVtbl->get_Pronunciations(This,Pronunciations);
22436}
22437#endif
22438#endif
22439
22440#endif
22441
22442
22443#endif /* __ISpeechLexiconWord_INTERFACE_DEFINED__ */
22444
22445/*****************************************************************************
22446 * ISpeechLexiconPronunciations interface
22447 */
22448#ifndef __ISpeechLexiconPronunciations_INTERFACE_DEFINED__
22449#define __ISpeechLexiconPronunciations_INTERFACE_DEFINED__
22450
22451DEFINE_GUID(IID_ISpeechLexiconPronunciations, 0x72829128, 0x5682, 0x4704, 0xa0,0xd4, 0x3e,0x2b,0xb6,0xf2,0xea,0xd3);
22452#if defined(__cplusplus) && !defined(CINTERFACE)
22453MIDL_INTERFACE("72829128-5682-4704-a0d4-3e2bb6f2ead3")
22454ISpeechLexiconPronunciations : public IDispatch
22455{
22456 virtual HRESULT STDMETHODCALLTYPE get_Count(
22457 LONG *Count) = 0;
22458
22459 virtual HRESULT STDMETHODCALLTYPE Item(
22460 LONG Index,
22461 ISpeechLexiconPronunciation **Pronunciation) = 0;
22462
22463 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
22464 IUnknown **EnumVARIANT) = 0;
22465
22466};
22467#ifdef __CRT_UUID_DECL
22468__CRT_UUID_DECL(ISpeechLexiconPronunciations, 0x72829128, 0x5682, 0x4704, 0xa0,0xd4, 0x3e,0x2b,0xb6,0xf2,0xea,0xd3)
22469#endif
22470#else
22471typedef struct ISpeechLexiconPronunciationsVtbl {
22472 BEGIN_INTERFACE
22473
22474 /*** IUnknown methods ***/
22475 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22476 ISpeechLexiconPronunciations *This,
22477 REFIID riid,
22478 void **ppvObject);
22479
22480 ULONG (STDMETHODCALLTYPE *AddRef)(
22481 ISpeechLexiconPronunciations *This);
22482
22483 ULONG (STDMETHODCALLTYPE *Release)(
22484 ISpeechLexiconPronunciations *This);
22485
22486 /*** IDispatch methods ***/
22487 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22488 ISpeechLexiconPronunciations *This,
22489 UINT *pctinfo);
22490
22491 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22492 ISpeechLexiconPronunciations *This,
22493 UINT iTInfo,
22494 LCID lcid,
22495 ITypeInfo **ppTInfo);
22496
22497 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22498 ISpeechLexiconPronunciations *This,
22499 REFIID riid,
22500 LPOLESTR *rgszNames,
22501 UINT cNames,
22502 LCID lcid,
22503 DISPID *rgDispId);
22504
22505 HRESULT (STDMETHODCALLTYPE *Invoke)(
22506 ISpeechLexiconPronunciations *This,
22507 DISPID dispIdMember,
22508 REFIID riid,
22509 LCID lcid,
22510 WORD wFlags,
22511 DISPPARAMS *pDispParams,
22512 VARIANT *pVarResult,
22513 EXCEPINFO *pExcepInfo,
22514 UINT *puArgErr);
22515
22516 /*** ISpeechLexiconPronunciations methods ***/
22517 HRESULT (STDMETHODCALLTYPE *get_Count)(
22518 ISpeechLexiconPronunciations *This,
22519 LONG *Count);
22520
22521 HRESULT (STDMETHODCALLTYPE *Item)(
22522 ISpeechLexiconPronunciations *This,
22523 LONG Index,
22524 ISpeechLexiconPronunciation **Pronunciation);
22525
22526 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
22527 ISpeechLexiconPronunciations *This,
22528 IUnknown **EnumVARIANT);
22529
22530 END_INTERFACE
22531} ISpeechLexiconPronunciationsVtbl;
22532
22533interface ISpeechLexiconPronunciations {
22534 CONST_VTBL ISpeechLexiconPronunciationsVtbl* lpVtbl;
22535};
22536
22537#ifdef COBJMACROS
22538#ifndef WIDL_C_INLINE_WRAPPERS
22539/*** IUnknown methods ***/
22540#define ISpeechLexiconPronunciations_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22541#define ISpeechLexiconPronunciations_AddRef(This) (This)->lpVtbl->AddRef(This)
22542#define ISpeechLexiconPronunciations_Release(This) (This)->lpVtbl->Release(This)
22543/*** IDispatch methods ***/
22544#define ISpeechLexiconPronunciations_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22545#define ISpeechLexiconPronunciations_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22546#define ISpeechLexiconPronunciations_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22547#define ISpeechLexiconPronunciations_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22548/*** ISpeechLexiconPronunciations methods ***/
22549#define ISpeechLexiconPronunciations_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
22550#define ISpeechLexiconPronunciations_Item(This,Index,Pronunciation) (This)->lpVtbl->Item(This,Index,Pronunciation)
22551#define ISpeechLexiconPronunciations_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
22552#else
22553/*** IUnknown methods ***/
22554static inline HRESULT ISpeechLexiconPronunciations_QueryInterface(ISpeechLexiconPronunciations* This,REFIID riid,void **ppvObject) {
22555 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22556}
22557static inline ULONG ISpeechLexiconPronunciations_AddRef(ISpeechLexiconPronunciations* This) {
22558 return This->lpVtbl->AddRef(This);
22559}
22560static inline ULONG ISpeechLexiconPronunciations_Release(ISpeechLexiconPronunciations* This) {
22561 return This->lpVtbl->Release(This);
22562}
22563/*** IDispatch methods ***/
22564static inline HRESULT ISpeechLexiconPronunciations_GetTypeInfoCount(ISpeechLexiconPronunciations* This,UINT *pctinfo) {
22565 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22566}
22567static inline HRESULT ISpeechLexiconPronunciations_GetTypeInfo(ISpeechLexiconPronunciations* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22568 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22569}
22570static inline HRESULT ISpeechLexiconPronunciations_GetIDsOfNames(ISpeechLexiconPronunciations* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22571 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22572}
22573static inline HRESULT ISpeechLexiconPronunciations_Invoke(ISpeechLexiconPronunciations* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22574 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22575}
22576/*** ISpeechLexiconPronunciations methods ***/
22577static inline HRESULT ISpeechLexiconPronunciations_get_Count(ISpeechLexiconPronunciations* This,LONG *Count) {
22578 return This->lpVtbl->get_Count(This,Count);
22579}
22580static inline HRESULT ISpeechLexiconPronunciations_Item(ISpeechLexiconPronunciations* This,LONG Index,ISpeechLexiconPronunciation **Pronunciation) {
22581 return This->lpVtbl->Item(This,Index,Pronunciation);
22582}
22583static inline HRESULT ISpeechLexiconPronunciations_get__NewEnum(ISpeechLexiconPronunciations* This,IUnknown **EnumVARIANT) {
22584 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
22585}
22586#endif
22587#endif
22588
22589#endif
22590
22591
22592#endif /* __ISpeechLexiconPronunciations_INTERFACE_DEFINED__ */
22593
22594/*****************************************************************************
22595 * ISpeechLexiconPronunciation interface
22596 */
22597#ifndef __ISpeechLexiconPronunciation_INTERFACE_DEFINED__
22598#define __ISpeechLexiconPronunciation_INTERFACE_DEFINED__
22599
22600DEFINE_GUID(IID_ISpeechLexiconPronunciation, 0x95252c5d, 0x9e43, 0x4f4a, 0x98,0x99, 0x48,0xee,0x73,0x35,0x2f,0x9f);
22601#if defined(__cplusplus) && !defined(CINTERFACE)
22602MIDL_INTERFACE("95252c5d-9e43-4f4a-9899-48ee73352f9f")
22603ISpeechLexiconPronunciation : public IDispatch
22604{
22605 virtual HRESULT STDMETHODCALLTYPE get_Type(
22606 SpeechLexiconType *LexiconType) = 0;
22607
22608 virtual HRESULT STDMETHODCALLTYPE get_LangId(
22609 SpeechLanguageId *LangId) = 0;
22610
22611 virtual HRESULT STDMETHODCALLTYPE get_PartOfSpeech(
22612 SpeechPartOfSpeech *PartOfSpeech) = 0;
22613
22614 virtual HRESULT STDMETHODCALLTYPE get_PhoneIds(
22615 VARIANT *PhoneIds) = 0;
22616
22617 virtual HRESULT STDMETHODCALLTYPE get_Symbolic(
22618 BSTR *Symbolic) = 0;
22619
22620};
22621#ifdef __CRT_UUID_DECL
22622__CRT_UUID_DECL(ISpeechLexiconPronunciation, 0x95252c5d, 0x9e43, 0x4f4a, 0x98,0x99, 0x48,0xee,0x73,0x35,0x2f,0x9f)
22623#endif
22624#else
22625typedef struct ISpeechLexiconPronunciationVtbl {
22626 BEGIN_INTERFACE
22627
22628 /*** IUnknown methods ***/
22629 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22630 ISpeechLexiconPronunciation *This,
22631 REFIID riid,
22632 void **ppvObject);
22633
22634 ULONG (STDMETHODCALLTYPE *AddRef)(
22635 ISpeechLexiconPronunciation *This);
22636
22637 ULONG (STDMETHODCALLTYPE *Release)(
22638 ISpeechLexiconPronunciation *This);
22639
22640 /*** IDispatch methods ***/
22641 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22642 ISpeechLexiconPronunciation *This,
22643 UINT *pctinfo);
22644
22645 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22646 ISpeechLexiconPronunciation *This,
22647 UINT iTInfo,
22648 LCID lcid,
22649 ITypeInfo **ppTInfo);
22650
22651 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22652 ISpeechLexiconPronunciation *This,
22653 REFIID riid,
22654 LPOLESTR *rgszNames,
22655 UINT cNames,
22656 LCID lcid,
22657 DISPID *rgDispId);
22658
22659 HRESULT (STDMETHODCALLTYPE *Invoke)(
22660 ISpeechLexiconPronunciation *This,
22661 DISPID dispIdMember,
22662 REFIID riid,
22663 LCID lcid,
22664 WORD wFlags,
22665 DISPPARAMS *pDispParams,
22666 VARIANT *pVarResult,
22667 EXCEPINFO *pExcepInfo,
22668 UINT *puArgErr);
22669
22670 /*** ISpeechLexiconPronunciation methods ***/
22671 HRESULT (STDMETHODCALLTYPE *get_Type)(
22672 ISpeechLexiconPronunciation *This,
22673 SpeechLexiconType *LexiconType);
22674
22675 HRESULT (STDMETHODCALLTYPE *get_LangId)(
22676 ISpeechLexiconPronunciation *This,
22677 SpeechLanguageId *LangId);
22678
22679 HRESULT (STDMETHODCALLTYPE *get_PartOfSpeech)(
22680 ISpeechLexiconPronunciation *This,
22681 SpeechPartOfSpeech *PartOfSpeech);
22682
22683 HRESULT (STDMETHODCALLTYPE *get_PhoneIds)(
22684 ISpeechLexiconPronunciation *This,
22685 VARIANT *PhoneIds);
22686
22687 HRESULT (STDMETHODCALLTYPE *get_Symbolic)(
22688 ISpeechLexiconPronunciation *This,
22689 BSTR *Symbolic);
22690
22691 END_INTERFACE
22692} ISpeechLexiconPronunciationVtbl;
22693
22694interface ISpeechLexiconPronunciation {
22695 CONST_VTBL ISpeechLexiconPronunciationVtbl* lpVtbl;
22696};
22697
22698#ifdef COBJMACROS
22699#ifndef WIDL_C_INLINE_WRAPPERS
22700/*** IUnknown methods ***/
22701#define ISpeechLexiconPronunciation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22702#define ISpeechLexiconPronunciation_AddRef(This) (This)->lpVtbl->AddRef(This)
22703#define ISpeechLexiconPronunciation_Release(This) (This)->lpVtbl->Release(This)
22704/*** IDispatch methods ***/
22705#define ISpeechLexiconPronunciation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22706#define ISpeechLexiconPronunciation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22707#define ISpeechLexiconPronunciation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22708#define ISpeechLexiconPronunciation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22709/*** ISpeechLexiconPronunciation methods ***/
22710#define ISpeechLexiconPronunciation_get_Type(This,LexiconType) (This)->lpVtbl->get_Type(This,LexiconType)
22711#define ISpeechLexiconPronunciation_get_LangId(This,LangId) (This)->lpVtbl->get_LangId(This,LangId)
22712#define ISpeechLexiconPronunciation_get_PartOfSpeech(This,PartOfSpeech) (This)->lpVtbl->get_PartOfSpeech(This,PartOfSpeech)
22713#define ISpeechLexiconPronunciation_get_PhoneIds(This,PhoneIds) (This)->lpVtbl->get_PhoneIds(This,PhoneIds)
22714#define ISpeechLexiconPronunciation_get_Symbolic(This,Symbolic) (This)->lpVtbl->get_Symbolic(This,Symbolic)
22715#else
22716/*** IUnknown methods ***/
22717static inline HRESULT ISpeechLexiconPronunciation_QueryInterface(ISpeechLexiconPronunciation* This,REFIID riid,void **ppvObject) {
22718 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22719}
22720static inline ULONG ISpeechLexiconPronunciation_AddRef(ISpeechLexiconPronunciation* This) {
22721 return This->lpVtbl->AddRef(This);
22722}
22723static inline ULONG ISpeechLexiconPronunciation_Release(ISpeechLexiconPronunciation* This) {
22724 return This->lpVtbl->Release(This);
22725}
22726/*** IDispatch methods ***/
22727static inline HRESULT ISpeechLexiconPronunciation_GetTypeInfoCount(ISpeechLexiconPronunciation* This,UINT *pctinfo) {
22728 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22729}
22730static inline HRESULT ISpeechLexiconPronunciation_GetTypeInfo(ISpeechLexiconPronunciation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22731 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22732}
22733static inline HRESULT ISpeechLexiconPronunciation_GetIDsOfNames(ISpeechLexiconPronunciation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22734 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22735}
22736static inline HRESULT ISpeechLexiconPronunciation_Invoke(ISpeechLexiconPronunciation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22737 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22738}
22739/*** ISpeechLexiconPronunciation methods ***/
22740static inline HRESULT ISpeechLexiconPronunciation_get_Type(ISpeechLexiconPronunciation* This,SpeechLexiconType *LexiconType) {
22741 return This->lpVtbl->get_Type(This,LexiconType);
22742}
22743static inline HRESULT ISpeechLexiconPronunciation_get_LangId(ISpeechLexiconPronunciation* This,SpeechLanguageId *LangId) {
22744 return This->lpVtbl->get_LangId(This,LangId);
22745}
22746static inline HRESULT ISpeechLexiconPronunciation_get_PartOfSpeech(ISpeechLexiconPronunciation* This,SpeechPartOfSpeech *PartOfSpeech) {
22747 return This->lpVtbl->get_PartOfSpeech(This,PartOfSpeech);
22748}
22749static inline HRESULT ISpeechLexiconPronunciation_get_PhoneIds(ISpeechLexiconPronunciation* This,VARIANT *PhoneIds) {
22750 return This->lpVtbl->get_PhoneIds(This,PhoneIds);
22751}
22752static inline HRESULT ISpeechLexiconPronunciation_get_Symbolic(ISpeechLexiconPronunciation* This,BSTR *Symbolic) {
22753 return This->lpVtbl->get_Symbolic(This,Symbolic);
22754}
22755#endif
22756#endif
22757
22758#endif
22759
22760
22761#endif /* __ISpeechLexiconPronunciation_INTERFACE_DEFINED__ */
22762
22763/*****************************************************************************
22764 * ISpeechPhoneConverter interface
22765 */
22766#ifndef __ISpeechPhoneConverter_INTERFACE_DEFINED__
22767#define __ISpeechPhoneConverter_INTERFACE_DEFINED__
22768
22769DEFINE_GUID(IID_ISpeechPhoneConverter, 0xc3e4f353, 0x433f, 0x43d6, 0x89,0xa1, 0x6a,0x62,0xa7,0x05,0x4c,0x3d);
22770#if defined(__cplusplus) && !defined(CINTERFACE)
22771MIDL_INTERFACE("c3e4f353-433f-43d6-89a1-6a62a7054c3d")
22772ISpeechPhoneConverter : public IDispatch
22773{
22774 virtual HRESULT STDMETHODCALLTYPE get_LanguageId(
22775 SpeechLanguageId *LanguageId) = 0;
22776
22777 virtual HRESULT STDMETHODCALLTYPE put_LanguageId(
22778 SpeechLanguageId LanguageId) = 0;
22779
22780 virtual HRESULT STDMETHODCALLTYPE PhoneToId(
22781 const BSTR Phonemes,
22782 VARIANT *IdArray) = 0;
22783
22784 virtual HRESULT STDMETHODCALLTYPE IdToPhone(
22785 const VARIANT IdArray,
22786 BSTR *Phonemes) = 0;
22787
22788};
22789#ifdef __CRT_UUID_DECL
22790__CRT_UUID_DECL(ISpeechPhoneConverter, 0xc3e4f353, 0x433f, 0x43d6, 0x89,0xa1, 0x6a,0x62,0xa7,0x05,0x4c,0x3d)
22791#endif
22792#else
22793typedef struct ISpeechPhoneConverterVtbl {
22794 BEGIN_INTERFACE
22795
22796 /*** IUnknown methods ***/
22797 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22798 ISpeechPhoneConverter *This,
22799 REFIID riid,
22800 void **ppvObject);
22801
22802 ULONG (STDMETHODCALLTYPE *AddRef)(
22803 ISpeechPhoneConverter *This);
22804
22805 ULONG (STDMETHODCALLTYPE *Release)(
22806 ISpeechPhoneConverter *This);
22807
22808 /*** IDispatch methods ***/
22809 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22810 ISpeechPhoneConverter *This,
22811 UINT *pctinfo);
22812
22813 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22814 ISpeechPhoneConverter *This,
22815 UINT iTInfo,
22816 LCID lcid,
22817 ITypeInfo **ppTInfo);
22818
22819 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22820 ISpeechPhoneConverter *This,
22821 REFIID riid,
22822 LPOLESTR *rgszNames,
22823 UINT cNames,
22824 LCID lcid,
22825 DISPID *rgDispId);
22826
22827 HRESULT (STDMETHODCALLTYPE *Invoke)(
22828 ISpeechPhoneConverter *This,
22829 DISPID dispIdMember,
22830 REFIID riid,
22831 LCID lcid,
22832 WORD wFlags,
22833 DISPPARAMS *pDispParams,
22834 VARIANT *pVarResult,
22835 EXCEPINFO *pExcepInfo,
22836 UINT *puArgErr);
22837
22838 /*** ISpeechPhoneConverter methods ***/
22839 HRESULT (STDMETHODCALLTYPE *get_LanguageId)(
22840 ISpeechPhoneConverter *This,
22841 SpeechLanguageId *LanguageId);
22842
22843 HRESULT (STDMETHODCALLTYPE *put_LanguageId)(
22844 ISpeechPhoneConverter *This,
22845 SpeechLanguageId LanguageId);
22846
22847 HRESULT (STDMETHODCALLTYPE *PhoneToId)(
22848 ISpeechPhoneConverter *This,
22849 const BSTR Phonemes,
22850 VARIANT *IdArray);
22851
22852 HRESULT (STDMETHODCALLTYPE *IdToPhone)(
22853 ISpeechPhoneConverter *This,
22854 const VARIANT IdArray,
22855 BSTR *Phonemes);
22856
22857 END_INTERFACE
22858} ISpeechPhoneConverterVtbl;
22859
22860interface ISpeechPhoneConverter {
22861 CONST_VTBL ISpeechPhoneConverterVtbl* lpVtbl;
22862};
22863
22864#ifdef COBJMACROS
22865#ifndef WIDL_C_INLINE_WRAPPERS
22866/*** IUnknown methods ***/
22867#define ISpeechPhoneConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22868#define ISpeechPhoneConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
22869#define ISpeechPhoneConverter_Release(This) (This)->lpVtbl->Release(This)
22870/*** IDispatch methods ***/
22871#define ISpeechPhoneConverter_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22872#define ISpeechPhoneConverter_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22873#define ISpeechPhoneConverter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22874#define ISpeechPhoneConverter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22875/*** ISpeechPhoneConverter methods ***/
22876#define ISpeechPhoneConverter_get_LanguageId(This,LanguageId) (This)->lpVtbl->get_LanguageId(This,LanguageId)
22877#define ISpeechPhoneConverter_put_LanguageId(This,LanguageId) (This)->lpVtbl->put_LanguageId(This,LanguageId)
22878#define ISpeechPhoneConverter_PhoneToId(This,Phonemes,IdArray) (This)->lpVtbl->PhoneToId(This,Phonemes,IdArray)
22879#define ISpeechPhoneConverter_IdToPhone(This,IdArray,Phonemes) (This)->lpVtbl->IdToPhone(This,IdArray,Phonemes)
22880#else
22881/*** IUnknown methods ***/
22882static inline HRESULT ISpeechPhoneConverter_QueryInterface(ISpeechPhoneConverter* This,REFIID riid,void **ppvObject) {
22883 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22884}
22885static inline ULONG ISpeechPhoneConverter_AddRef(ISpeechPhoneConverter* This) {
22886 return This->lpVtbl->AddRef(This);
22887}
22888static inline ULONG ISpeechPhoneConverter_Release(ISpeechPhoneConverter* This) {
22889 return This->lpVtbl->Release(This);
22890}
22891/*** IDispatch methods ***/
22892static inline HRESULT ISpeechPhoneConverter_GetTypeInfoCount(ISpeechPhoneConverter* This,UINT *pctinfo) {
22893 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22894}
22895static inline HRESULT ISpeechPhoneConverter_GetTypeInfo(ISpeechPhoneConverter* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22896 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22897}
22898static inline HRESULT ISpeechPhoneConverter_GetIDsOfNames(ISpeechPhoneConverter* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22899 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22900}
22901static inline HRESULT ISpeechPhoneConverter_Invoke(ISpeechPhoneConverter* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22902 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22903}
22904/*** ISpeechPhoneConverter methods ***/
22905static inline HRESULT ISpeechPhoneConverter_get_LanguageId(ISpeechPhoneConverter* This,SpeechLanguageId *LanguageId) {
22906 return This->lpVtbl->get_LanguageId(This,LanguageId);
22907}
22908static inline HRESULT ISpeechPhoneConverter_put_LanguageId(ISpeechPhoneConverter* This,SpeechLanguageId LanguageId) {
22909 return This->lpVtbl->put_LanguageId(This,LanguageId);
22910}
22911static inline HRESULT ISpeechPhoneConverter_PhoneToId(ISpeechPhoneConverter* This,const BSTR Phonemes,VARIANT *IdArray) {
22912 return This->lpVtbl->PhoneToId(This,Phonemes,IdArray);
22913}
22914static inline HRESULT ISpeechPhoneConverter_IdToPhone(ISpeechPhoneConverter* This,const VARIANT IdArray,BSTR *Phonemes) {
22915 return This->lpVtbl->IdToPhone(This,IdArray,Phonemes);
22916}
22917#endif
22918#endif
22919
22920#endif
22921
22922
22923#endif /* __ISpeechPhoneConverter_INTERFACE_DEFINED__ */
22924
22925/*****************************************************************************
22926 * SpNotifyTranslator coclass
22927 */
22928
22929DEFINE_GUID(CLSID_SpNotifyTranslator, 0xe2ae5372, 0x5d40, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
22930
22931#ifdef __cplusplus
22932class DECLSPEC_UUID("e2ae5372-5d40-11d2-960e-00c04f8ee628") SpNotifyTranslator;
22933#ifdef __CRT_UUID_DECL
22934__CRT_UUID_DECL(SpNotifyTranslator, 0xe2ae5372, 0x5d40, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
22935#endif
22936#endif
22937
22938/*****************************************************************************
22939 * SpObjectTokenCategory coclass
22940 */
22941
22942DEFINE_GUID(CLSID_SpObjectTokenCategory, 0xa910187f, 0x0c7a, 0x45ac, 0x92,0xcc, 0x59,0xed,0xaf,0xb7,0x7b,0x53);
22943
22944#ifdef __cplusplus
22945class DECLSPEC_UUID("a910187f-0c7a-45ac-92cc-59edafb77b53") SpObjectTokenCategory;
22946#ifdef __CRT_UUID_DECL
22947__CRT_UUID_DECL(SpObjectTokenCategory, 0xa910187f, 0x0c7a, 0x45ac, 0x92,0xcc, 0x59,0xed,0xaf,0xb7,0x7b,0x53)
22948#endif
22949#endif
22950
22951/*****************************************************************************
22952 * SpObjectToken coclass
22953 */
22954
22955DEFINE_GUID(CLSID_SpObjectToken, 0xef411752, 0x3736, 0x4cb4, 0x9c,0x8c, 0x8e,0xf4,0xcc,0xb5,0x8e,0xfe);
22956
22957#ifdef __cplusplus
22958class DECLSPEC_UUID("ef411752-3736-4cb4-9c8c-8ef4ccb58efe") SpObjectToken;
22959#ifdef __CRT_UUID_DECL
22960__CRT_UUID_DECL(SpObjectToken, 0xef411752, 0x3736, 0x4cb4, 0x9c,0x8c, 0x8e,0xf4,0xcc,0xb5,0x8e,0xfe)
22961#endif
22962#endif
22963
22964/*****************************************************************************
22965 * SpResourceManager coclass
22966 */
22967
22968DEFINE_GUID(CLSID_SpResourceManager, 0x96749373, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96);
22969
22970#ifdef __cplusplus
22971class DECLSPEC_UUID("96749373-3391-11d2-9ee3-00c04f797396") SpResourceManager;
22972#ifdef __CRT_UUID_DECL
22973__CRT_UUID_DECL(SpResourceManager, 0x96749373, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96)
22974#endif
22975#endif
22976
22977/*****************************************************************************
22978 * SpStreamFormatConverter coclass
22979 */
22980
22981DEFINE_GUID(CLSID_SpStreamFormatConverter, 0x7013943a, 0xe2ec, 0x11d2, 0xa0,0x86, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5);
22982
22983#ifdef __cplusplus
22984class DECLSPEC_UUID("7013943a-e2ec-11d2-a086-00c04f8ef9b5") SpStreamFormatConverter;
22985#ifdef __CRT_UUID_DECL
22986__CRT_UUID_DECL(SpStreamFormatConverter, 0x7013943a, 0xe2ec, 0x11d2, 0xa0,0x86, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5)
22987#endif
22988#endif
22989
22990/*****************************************************************************
22991 * SpMMAudioEnum coclass
22992 */
22993
22994DEFINE_GUID(CLSID_SpMMAudioEnum, 0xab1890a0, 0xe91f, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
22995
22996#ifdef __cplusplus
22997class DECLSPEC_UUID("ab1890a0-e91f-11d2-bb91-00c04f8ee6c0") SpMMAudioEnum;
22998#ifdef __CRT_UUID_DECL
22999__CRT_UUID_DECL(SpMMAudioEnum, 0xab1890a0, 0xe91f, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
23000#endif
23001#endif
23002
23003/*****************************************************************************
23004 * SpMMAudioIn coclass
23005 */
23006
23007DEFINE_GUID(CLSID_SpMMAudioIn, 0xcf3d2e50, 0x53f2, 0x11d2, 0x96,0x0c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
23008
23009#ifdef __cplusplus
23010class DECLSPEC_UUID("cf3d2e50-53f2-11d2-960c-00c04f8ee628") SpMMAudioIn;
23011#ifdef __CRT_UUID_DECL
23012__CRT_UUID_DECL(SpMMAudioIn, 0xcf3d2e50, 0x53f2, 0x11d2, 0x96,0x0c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
23013#endif
23014#endif
23015
23016/*****************************************************************************
23017 * SpMMAudioOut coclass
23018 */
23019
23020DEFINE_GUID(CLSID_SpMMAudioOut, 0xa8c680eb, 0x3d32, 0x11d2, 0x9e,0xe7, 0x00,0xc0,0x4f,0x79,0x73,0x96);
23021
23022#ifdef __cplusplus
23023class DECLSPEC_UUID("a8c680eb-3d32-11d2-9ee7-00c04f797396") SpMMAudioOut;
23024#ifdef __CRT_UUID_DECL
23025__CRT_UUID_DECL(SpMMAudioOut, 0xa8c680eb, 0x3d32, 0x11d2, 0x9e,0xe7, 0x00,0xc0,0x4f,0x79,0x73,0x96)
23026#endif
23027#endif
23028
23029/*****************************************************************************
23030 * SpStream coclass
23031 */
23032
23033DEFINE_GUID(CLSID_SpStream, 0x715d9c59, 0x4442, 0x11d2, 0x96,0x05, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
23034
23035#ifdef __cplusplus
23036class DECLSPEC_UUID("715d9c59-4442-11d2-9605-00c04f8ee628") SpStream;
23037#ifdef __CRT_UUID_DECL
23038__CRT_UUID_DECL(SpStream, 0x715d9c59, 0x4442, 0x11d2, 0x96,0x05, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
23039#endif
23040#endif
23041
23042/*****************************************************************************
23043 * SpVoice coclass
23044 */
23045
23046DEFINE_GUID(CLSID_SpVoice, 0x96749377, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96);
23047
23048#ifdef __cplusplus
23049class DECLSPEC_UUID("96749377-3391-11d2-9ee3-00c04f797396") SpVoice;
23050#ifdef __CRT_UUID_DECL
23051__CRT_UUID_DECL(SpVoice, 0x96749377, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96)
23052#endif
23053#endif
23054
23055/*****************************************************************************
23056 * SpSharedRecoContext coclass
23057 */
23058
23059DEFINE_GUID(CLSID_SpSharedRecoContext, 0x47206204, 0x5eca, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
23060
23061#ifdef __cplusplus
23062class DECLSPEC_UUID("47206204-5eca-11d2-960f-00c04f8ee628") SpSharedRecoContext;
23063#ifdef __CRT_UUID_DECL
23064__CRT_UUID_DECL(SpSharedRecoContext, 0x47206204, 0x5eca, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
23065#endif
23066#endif
23067
23068/*****************************************************************************
23069 * SpInprocRecognizer coclass
23070 */
23071
23072DEFINE_GUID(CLSID_SpInprocRecognizer, 0x41b89b6b, 0x9399, 0x11d2, 0x96,0x23, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
23073
23074#ifdef __cplusplus
23075class DECLSPEC_UUID("41b89b6b-9399-11d2-9623-00c04f8ee628") SpInprocRecognizer;
23076#ifdef __CRT_UUID_DECL
23077__CRT_UUID_DECL(SpInprocRecognizer, 0x41b89b6b, 0x9399, 0x11d2, 0x96,0x23, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
23078#endif
23079#endif
23080
23081/*****************************************************************************
23082 * SpSharedRecognizer coclass
23083 */
23084
23085DEFINE_GUID(CLSID_SpSharedRecognizer, 0x3bee4890, 0x4fe9, 0x4a37, 0x8c,0x1e, 0x5e,0x7e,0x12,0x79,0x1c,0x1f);
23086
23087#ifdef __cplusplus
23088class DECLSPEC_UUID("3bee4890-4fe9-4a37-8c1e-5e7e12791c1f") SpSharedRecognizer;
23089#ifdef __CRT_UUID_DECL
23090__CRT_UUID_DECL(SpSharedRecognizer, 0x3bee4890, 0x4fe9, 0x4a37, 0x8c,0x1e, 0x5e,0x7e,0x12,0x79,0x1c,0x1f)
23091#endif
23092#endif
23093
23094/*****************************************************************************
23095 * SpLexicon coclass
23096 */
23097
23098DEFINE_GUID(CLSID_SpLexicon, 0x0655e396, 0x25d0, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c);
23099
23100#ifdef __cplusplus
23101class DECLSPEC_UUID("0655e396-25d0-11d3-9c26-00c04f8ef87c") SpLexicon;
23102#ifdef __CRT_UUID_DECL
23103__CRT_UUID_DECL(SpLexicon, 0x0655e396, 0x25d0, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c)
23104#endif
23105#endif
23106
23107/*****************************************************************************
23108 * SpUnCompressedLexicon coclass
23109 */
23110
23111DEFINE_GUID(CLSID_SpUnCompressedLexicon, 0xc9e37c15, 0xdf92, 0x4727, 0x85,0xd6, 0x72,0xe5,0xee,0xb6,0x99,0x5a);
23112
23113#ifdef __cplusplus
23114class DECLSPEC_UUID("c9e37c15-df92-4727-85d6-72e5eeb6995a") SpUnCompressedLexicon;
23115#ifdef __CRT_UUID_DECL
23116__CRT_UUID_DECL(SpUnCompressedLexicon, 0xc9e37c15, 0xdf92, 0x4727, 0x85,0xd6, 0x72,0xe5,0xee,0xb6,0x99,0x5a)
23117#endif
23118#endif
23119
23120/*****************************************************************************
23121 * SpCompressedLexicon coclass
23122 */
23123
23124DEFINE_GUID(CLSID_SpCompressedLexicon, 0x90903716, 0x2f42, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c);
23125
23126#ifdef __cplusplus
23127class DECLSPEC_UUID("90903716-2f42-11d3-9c26-00c04f8ef87c") SpCompressedLexicon;
23128#ifdef __CRT_UUID_DECL
23129__CRT_UUID_DECL(SpCompressedLexicon, 0x90903716, 0x2f42, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c)
23130#endif
23131#endif
23132
23133/*****************************************************************************
23134 * SpShortcut coclass
23135 */
23136
23137DEFINE_GUID(CLSID_SpShortcut, 0x0d722f1a, 0x9fcf, 0x4e62, 0x96,0xd8, 0x6d,0xf8,0xf0,0x1a,0x26,0xaa);
23138
23139#ifdef __cplusplus
23140class DECLSPEC_UUID("0d722f1a-9fcf-4e62-96d8-6df8f01a26aa") SpShortcut;
23141#ifdef __CRT_UUID_DECL
23142__CRT_UUID_DECL(SpShortcut, 0x0d722f1a, 0x9fcf, 0x4e62, 0x96,0xd8, 0x6d,0xf8,0xf0,0x1a,0x26,0xaa)
23143#endif
23144#endif
23145
23146/*****************************************************************************
23147 * SpPhoneConverter coclass
23148 */
23149
23150DEFINE_GUID(CLSID_SpPhoneConverter, 0x9185f743, 0x1143, 0x4c28, 0x86,0xb5, 0xbf,0xf1,0x4f,0x20,0xe5,0xc8);
23151
23152#ifdef __cplusplus
23153class DECLSPEC_UUID("9185f743-1143-4c28-86b5-bff14f20e5c8") SpPhoneConverter;
23154#ifdef __CRT_UUID_DECL
23155__CRT_UUID_DECL(SpPhoneConverter, 0x9185f743, 0x1143, 0x4c28, 0x86,0xb5, 0xbf,0xf1,0x4f,0x20,0xe5,0xc8)
23156#endif
23157#endif
23158
23159/*****************************************************************************
23160 * SpPhoneticAlphabetConverter coclass
23161 */
23162
23163DEFINE_GUID(CLSID_SpPhoneticAlphabetConverter, 0x4f414126, 0xdfe3, 0x4629, 0x99,0xee, 0x79,0x79,0x78,0x31,0x7e,0xad);
23164
23165#ifdef __cplusplus
23166class DECLSPEC_UUID("4f414126-dfe3-4629-99ee-797978317ead") SpPhoneticAlphabetConverter;
23167#ifdef __CRT_UUID_DECL
23168__CRT_UUID_DECL(SpPhoneticAlphabetConverter, 0x4f414126, 0xdfe3, 0x4629, 0x99,0xee, 0x79,0x79,0x78,0x31,0x7e,0xad)
23169#endif
23170#endif
23171
23172/*****************************************************************************
23173 * SpNullPhoneConverter coclass
23174 */
23175
23176DEFINE_GUID(CLSID_SpNullPhoneConverter, 0x455f24e9, 0x7396, 0x4a16, 0x97,0x15, 0x7c,0x0f,0xdb,0xe3,0xef,0xe3);
23177
23178#ifdef __cplusplus
23179class DECLSPEC_UUID("455f24e9-7396-4a16-9715-7c0fdbe3efe3") SpNullPhoneConverter;
23180#ifdef __CRT_UUID_DECL
23181__CRT_UUID_DECL(SpNullPhoneConverter, 0x455f24e9, 0x7396, 0x4a16, 0x97,0x15, 0x7c,0x0f,0xdb,0xe3,0xef,0xe3)
23182#endif
23183#endif
23184
23185/*****************************************************************************
23186 * SpTextSelectionInformation coclass
23187 */
23188
23189DEFINE_GUID(CLSID_SpTextSelectionInformation, 0x0f92030a, 0xcbfd, 0x4ab8, 0xa1,0x64, 0xff,0x59,0x85,0x54,0x7f,0xf6);
23190
23191#ifdef __cplusplus
23192class DECLSPEC_UUID("0f92030a-cbfd-4ab8-a164-ff5985547ff6") SpTextSelectionInformation;
23193#ifdef __CRT_UUID_DECL
23194__CRT_UUID_DECL(SpTextSelectionInformation, 0x0f92030a, 0xcbfd, 0x4ab8, 0xa1,0x64, 0xff,0x59,0x85,0x54,0x7f,0xf6)
23195#endif
23196#endif
23197
23198/*****************************************************************************
23199 * SpPhraseInfoBuilder coclass
23200 */
23201
23202DEFINE_GUID(CLSID_SpPhraseInfoBuilder, 0xc23fc28d, 0xc55f, 0x4720, 0x8b,0x32, 0x91,0xf7,0x3c,0x2b,0xd5,0xd1);
23203
23204#ifdef __cplusplus
23205class DECLSPEC_UUID("c23fc28d-c55f-4720-8b32-91f73c2bd5d1") SpPhraseInfoBuilder;
23206#ifdef __CRT_UUID_DECL
23207__CRT_UUID_DECL(SpPhraseInfoBuilder, 0xc23fc28d, 0xc55f, 0x4720, 0x8b,0x32, 0x91,0xf7,0x3c,0x2b,0xd5,0xd1)
23208#endif
23209#endif
23210
23211/*****************************************************************************
23212 * SpAudioFormat coclass
23213 */
23214
23215DEFINE_GUID(CLSID_SpAudioFormat, 0x9ef96870, 0xe160, 0x4792, 0x82,0x0d, 0x48,0xcf,0x06,0x49,0xe4,0xec);
23216
23217#ifdef __cplusplus
23218class DECLSPEC_UUID("9ef96870-e160-4792-820d-48cf0649e4ec") SpAudioFormat;
23219#ifdef __CRT_UUID_DECL
23220__CRT_UUID_DECL(SpAudioFormat, 0x9ef96870, 0xe160, 0x4792, 0x82,0x0d, 0x48,0xcf,0x06,0x49,0xe4,0xec)
23221#endif
23222#endif
23223
23224/*****************************************************************************
23225 * SpWaveFormatEx coclass
23226 */
23227
23228DEFINE_GUID(CLSID_SpWaveFormatEx, 0xc79a574c, 0x63be, 0x44b9, 0x80,0x1f, 0x28,0x3f,0x87,0xf8,0x98,0xbe);
23229
23230#ifdef __cplusplus
23231class DECLSPEC_UUID("c79a574c-63be-44b9-801f-283f87f898be") SpWaveFormatEx;
23232#ifdef __CRT_UUID_DECL
23233__CRT_UUID_DECL(SpWaveFormatEx, 0xc79a574c, 0x63be, 0x44b9, 0x80,0x1f, 0x28,0x3f,0x87,0xf8,0x98,0xbe)
23234#endif
23235#endif
23236
23237/*****************************************************************************
23238 * SpInProcRecoContext coclass
23239 */
23240
23241DEFINE_GUID(CLSID_SpInProcRecoContext, 0x73ad6842, 0xace0, 0x45e8, 0xa4,0xdd, 0x87,0x95,0x88,0x1a,0x2c,0x2a);
23242
23243#ifdef __cplusplus
23244class DECLSPEC_UUID("73ad6842-ace0-45e8-a4dd-8795881a2c2a") SpInProcRecoContext;
23245#ifdef __CRT_UUID_DECL
23246__CRT_UUID_DECL(SpInProcRecoContext, 0x73ad6842, 0xace0, 0x45e8, 0xa4,0xdd, 0x87,0x95,0x88,0x1a,0x2c,0x2a)
23247#endif
23248#endif
23249
23250/*****************************************************************************
23251 * SpCustomStream coclass
23252 */
23253
23254DEFINE_GUID(CLSID_SpCustomStream, 0x8dbef13f, 0x1948, 0x4aa8, 0x8c,0xf0, 0x04,0x8e,0xeb,0xed,0x95,0xd8);
23255
23256#ifdef __cplusplus
23257class DECLSPEC_UUID("8dbef13f-1948-4aa8-8cf0-048eebed95d8") SpCustomStream;
23258#ifdef __CRT_UUID_DECL
23259__CRT_UUID_DECL(SpCustomStream, 0x8dbef13f, 0x1948, 0x4aa8, 0x8c,0xf0, 0x04,0x8e,0xeb,0xed,0x95,0xd8)
23260#endif
23261#endif
23262
23263/*****************************************************************************
23264 * SpFileStream coclass
23265 */
23266
23267DEFINE_GUID(CLSID_SpFileStream, 0x947812b3, 0x2ae1, 0x4644, 0xba,0x86, 0x9e,0x90,0xde,0xd7,0xec,0x91);
23268
23269#ifdef __cplusplus
23270class DECLSPEC_UUID("947812b3-2ae1-4644-ba86-9e90ded7ec91") SpFileStream;
23271#ifdef __CRT_UUID_DECL
23272__CRT_UUID_DECL(SpFileStream, 0x947812b3, 0x2ae1, 0x4644, 0xba,0x86, 0x9e,0x90,0xde,0xd7,0xec,0x91)
23273#endif
23274#endif
23275
23276/*****************************************************************************
23277 * SpMemoryStream coclass
23278 */
23279
23280DEFINE_GUID(CLSID_SpMemoryStream, 0x5fb7ef7d, 0xdff4, 0x468a, 0xb6,0xb7, 0x2f,0xcb,0xd1,0x88,0xf9,0x94);
23281
23282#ifdef __cplusplus
23283class DECLSPEC_UUID("5fb7ef7d-dff4-468a-b6b7-2fcbd188f994") SpMemoryStream;
23284#ifdef __CRT_UUID_DECL
23285__CRT_UUID_DECL(SpMemoryStream, 0x5fb7ef7d, 0xdff4, 0x468a, 0xb6,0xb7, 0x2f,0xcb,0xd1,0x88,0xf9,0x94)
23286#endif
23287#endif
23288
23289#ifndef __ISpXMLRecoResult_FWD_DEFINED__
23290#define __ISpXMLRecoResult_FWD_DEFINED__
23291typedef interface ISpXMLRecoResult ISpXMLRecoResult;
23292#ifdef __cplusplus
23293interface ISpXMLRecoResult;
23294#endif /* __cplusplus */
23295#endif
23296
23297#ifndef __ISpRecoGrammar2_FWD_DEFINED__
23298#define __ISpRecoGrammar2_FWD_DEFINED__
23299typedef interface ISpRecoGrammar2 ISpRecoGrammar2;
23300#ifdef __cplusplus
23301interface ISpRecoGrammar2;
23302#endif /* __cplusplus */
23303#endif
23304
23305#ifndef __ISpeechResourceLoader_FWD_DEFINED__
23306#define __ISpeechResourceLoader_FWD_DEFINED__
23307typedef interface ISpeechResourceLoader ISpeechResourceLoader;
23308#ifdef __cplusplus
23309interface ISpeechResourceLoader;
23310#endif /* __cplusplus */
23311#endif
23312
23313#endif /* __SpeechLib_LIBRARY_DEFINED__ */
23314/* Begin additional prototypes for all interfaces */
23315
23316ULONG __RPC_USER HWND_UserSize (ULONG *, ULONG, HWND *);
23317unsigned char * __RPC_USER HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
23318unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
23319void __RPC_USER HWND_UserFree (ULONG *, HWND *);
23320ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *);
23321unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
23322unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
23323void __RPC_USER BSTR_UserFree (ULONG *, BSTR *);
23324ULONG __RPC_USER VARIANT_UserSize (ULONG *, ULONG, VARIANT *);
23325unsigned char * __RPC_USER VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *);
23326unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
23327void __RPC_USER VARIANT_UserFree (ULONG *, VARIANT *);
23328
23329/* End additional prototypes */
23330
23331#ifdef __cplusplus
23332}
23333#endif
23334
23335#endif /* __sapi54_h__ */