master
1/*** Autogenerated by WIDL 10.4 from include/sapi51.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 __sapi51_h__
17#define __sapi51_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 __ISpEventSink_FWD_DEFINED__
118#define __ISpEventSink_FWD_DEFINED__
119typedef interface ISpEventSink ISpEventSink;
120#ifdef __cplusplus
121interface ISpEventSink;
122#endif /* __cplusplus */
123#endif
124
125#ifndef __ISpStreamFormat_FWD_DEFINED__
126#define __ISpStreamFormat_FWD_DEFINED__
127typedef interface ISpStreamFormat ISpStreamFormat;
128#ifdef __cplusplus
129interface ISpStreamFormat;
130#endif /* __cplusplus */
131#endif
132
133#ifndef __ISpStream_FWD_DEFINED__
134#define __ISpStream_FWD_DEFINED__
135typedef interface ISpStream ISpStream;
136#ifdef __cplusplus
137interface ISpStream;
138#endif /* __cplusplus */
139#endif
140
141#ifndef __ISpStreamFormatConverter_FWD_DEFINED__
142#define __ISpStreamFormatConverter_FWD_DEFINED__
143typedef interface ISpStreamFormatConverter ISpStreamFormatConverter;
144#ifdef __cplusplus
145interface ISpStreamFormatConverter;
146#endif /* __cplusplus */
147#endif
148
149#ifndef __ISpAudio_FWD_DEFINED__
150#define __ISpAudio_FWD_DEFINED__
151typedef interface ISpAudio ISpAudio;
152#ifdef __cplusplus
153interface ISpAudio;
154#endif /* __cplusplus */
155#endif
156
157#ifndef __ISpMMSysAudio_FWD_DEFINED__
158#define __ISpMMSysAudio_FWD_DEFINED__
159typedef interface ISpMMSysAudio ISpMMSysAudio;
160#ifdef __cplusplus
161interface ISpMMSysAudio;
162#endif /* __cplusplus */
163#endif
164
165#ifndef __ISpTranscript_FWD_DEFINED__
166#define __ISpTranscript_FWD_DEFINED__
167typedef interface ISpTranscript ISpTranscript;
168#ifdef __cplusplus
169interface ISpTranscript;
170#endif /* __cplusplus */
171#endif
172
173#ifndef __ISpLexicon_FWD_DEFINED__
174#define __ISpLexicon_FWD_DEFINED__
175typedef interface ISpLexicon ISpLexicon;
176#ifdef __cplusplus
177interface ISpLexicon;
178#endif /* __cplusplus */
179#endif
180
181#ifndef __ISpContainerLexicon_FWD_DEFINED__
182#define __ISpContainerLexicon_FWD_DEFINED__
183typedef interface ISpContainerLexicon ISpContainerLexicon;
184#ifdef __cplusplus
185interface ISpContainerLexicon;
186#endif /* __cplusplus */
187#endif
188
189#ifndef __ISpPhoneConverter_FWD_DEFINED__
190#define __ISpPhoneConverter_FWD_DEFINED__
191typedef interface ISpPhoneConverter ISpPhoneConverter;
192#ifdef __cplusplus
193interface ISpPhoneConverter;
194#endif /* __cplusplus */
195#endif
196
197#ifndef __ISpVoice_FWD_DEFINED__
198#define __ISpVoice_FWD_DEFINED__
199typedef interface ISpVoice ISpVoice;
200#ifdef __cplusplus
201interface ISpVoice;
202#endif /* __cplusplus */
203#endif
204
205#ifndef __ISpPhrase_FWD_DEFINED__
206#define __ISpPhrase_FWD_DEFINED__
207typedef interface ISpPhrase ISpPhrase;
208#ifdef __cplusplus
209interface ISpPhrase;
210#endif /* __cplusplus */
211#endif
212
213#ifndef __ISpPhraseAlt_FWD_DEFINED__
214#define __ISpPhraseAlt_FWD_DEFINED__
215typedef interface ISpPhraseAlt ISpPhraseAlt;
216#ifdef __cplusplus
217interface ISpPhraseAlt;
218#endif /* __cplusplus */
219#endif
220
221#ifndef __ISpRecoResult_FWD_DEFINED__
222#define __ISpRecoResult_FWD_DEFINED__
223typedef interface ISpRecoResult ISpRecoResult;
224#ifdef __cplusplus
225interface ISpRecoResult;
226#endif /* __cplusplus */
227#endif
228
229#ifndef __ISpGrammarBuilder_FWD_DEFINED__
230#define __ISpGrammarBuilder_FWD_DEFINED__
231typedef interface ISpGrammarBuilder ISpGrammarBuilder;
232#ifdef __cplusplus
233interface ISpGrammarBuilder;
234#endif /* __cplusplus */
235#endif
236
237#ifndef __ISpRecoGrammar_FWD_DEFINED__
238#define __ISpRecoGrammar_FWD_DEFINED__
239typedef interface ISpRecoGrammar ISpRecoGrammar;
240#ifdef __cplusplus
241interface ISpRecoGrammar;
242#endif /* __cplusplus */
243#endif
244
245#ifndef __ISpRecoContext_FWD_DEFINED__
246#define __ISpRecoContext_FWD_DEFINED__
247typedef interface ISpRecoContext ISpRecoContext;
248#ifdef __cplusplus
249interface ISpRecoContext;
250#endif /* __cplusplus */
251#endif
252
253#ifndef __ISpProperties_FWD_DEFINED__
254#define __ISpProperties_FWD_DEFINED__
255typedef interface ISpProperties ISpProperties;
256#ifdef __cplusplus
257interface ISpProperties;
258#endif /* __cplusplus */
259#endif
260
261#ifndef __ISpRecognizer_FWD_DEFINED__
262#define __ISpRecognizer_FWD_DEFINED__
263typedef interface ISpRecognizer ISpRecognizer;
264#ifdef __cplusplus
265interface ISpRecognizer;
266#endif /* __cplusplus */
267#endif
268
269#ifndef __ISpeechDataKey_FWD_DEFINED__
270#define __ISpeechDataKey_FWD_DEFINED__
271typedef interface ISpeechDataKey ISpeechDataKey;
272#ifdef __cplusplus
273interface ISpeechDataKey;
274#endif /* __cplusplus */
275#endif
276
277#ifndef __ISpeechObjectToken_FWD_DEFINED__
278#define __ISpeechObjectToken_FWD_DEFINED__
279typedef interface ISpeechObjectToken ISpeechObjectToken;
280#ifdef __cplusplus
281interface ISpeechObjectToken;
282#endif /* __cplusplus */
283#endif
284
285#ifndef __ISpeechObjectTokens_FWD_DEFINED__
286#define __ISpeechObjectTokens_FWD_DEFINED__
287typedef interface ISpeechObjectTokens ISpeechObjectTokens;
288#ifdef __cplusplus
289interface ISpeechObjectTokens;
290#endif /* __cplusplus */
291#endif
292
293#ifndef __ISpeechObjectTokenCategory_FWD_DEFINED__
294#define __ISpeechObjectTokenCategory_FWD_DEFINED__
295typedef interface ISpeechObjectTokenCategory ISpeechObjectTokenCategory;
296#ifdef __cplusplus
297interface ISpeechObjectTokenCategory;
298#endif /* __cplusplus */
299#endif
300
301#ifndef __ISpeechAudioFormat_FWD_DEFINED__
302#define __ISpeechAudioFormat_FWD_DEFINED__
303typedef interface ISpeechAudioFormat ISpeechAudioFormat;
304#ifdef __cplusplus
305interface ISpeechAudioFormat;
306#endif /* __cplusplus */
307#endif
308
309#ifndef __ISpeechBaseStream_FWD_DEFINED__
310#define __ISpeechBaseStream_FWD_DEFINED__
311typedef interface ISpeechBaseStream ISpeechBaseStream;
312#ifdef __cplusplus
313interface ISpeechBaseStream;
314#endif /* __cplusplus */
315#endif
316
317#ifndef __ISpeechAudio_FWD_DEFINED__
318#define __ISpeechAudio_FWD_DEFINED__
319typedef interface ISpeechAudio ISpeechAudio;
320#ifdef __cplusplus
321interface ISpeechAudio;
322#endif /* __cplusplus */
323#endif
324
325#ifndef __ISpeechMMSysAudio_FWD_DEFINED__
326#define __ISpeechMMSysAudio_FWD_DEFINED__
327typedef interface ISpeechMMSysAudio ISpeechMMSysAudio;
328#ifdef __cplusplus
329interface ISpeechMMSysAudio;
330#endif /* __cplusplus */
331#endif
332
333#ifndef __ISpeechFileStream_FWD_DEFINED__
334#define __ISpeechFileStream_FWD_DEFINED__
335typedef interface ISpeechFileStream ISpeechFileStream;
336#ifdef __cplusplus
337interface ISpeechFileStream;
338#endif /* __cplusplus */
339#endif
340
341#ifndef __ISpeechCustomStream_FWD_DEFINED__
342#define __ISpeechCustomStream_FWD_DEFINED__
343typedef interface ISpeechCustomStream ISpeechCustomStream;
344#ifdef __cplusplus
345interface ISpeechCustomStream;
346#endif /* __cplusplus */
347#endif
348
349#ifndef __ISpeechMemoryStream_FWD_DEFINED__
350#define __ISpeechMemoryStream_FWD_DEFINED__
351typedef interface ISpeechMemoryStream ISpeechMemoryStream;
352#ifdef __cplusplus
353interface ISpeechMemoryStream;
354#endif /* __cplusplus */
355#endif
356
357#ifndef __ISpeechAudioStatus_FWD_DEFINED__
358#define __ISpeechAudioStatus_FWD_DEFINED__
359typedef interface ISpeechAudioStatus ISpeechAudioStatus;
360#ifdef __cplusplus
361interface ISpeechAudioStatus;
362#endif /* __cplusplus */
363#endif
364
365#ifndef __ISpeechAudioBufferInfo_FWD_DEFINED__
366#define __ISpeechAudioBufferInfo_FWD_DEFINED__
367typedef interface ISpeechAudioBufferInfo ISpeechAudioBufferInfo;
368#ifdef __cplusplus
369interface ISpeechAudioBufferInfo;
370#endif /* __cplusplus */
371#endif
372
373#ifndef __ISpeechWaveFormatEx_FWD_DEFINED__
374#define __ISpeechWaveFormatEx_FWD_DEFINED__
375typedef interface ISpeechWaveFormatEx ISpeechWaveFormatEx;
376#ifdef __cplusplus
377interface ISpeechWaveFormatEx;
378#endif /* __cplusplus */
379#endif
380
381#ifndef __ISpeechVoice_FWD_DEFINED__
382#define __ISpeechVoice_FWD_DEFINED__
383typedef interface ISpeechVoice ISpeechVoice;
384#ifdef __cplusplus
385interface ISpeechVoice;
386#endif /* __cplusplus */
387#endif
388
389#ifndef __ISpeechVoiceStatus_FWD_DEFINED__
390#define __ISpeechVoiceStatus_FWD_DEFINED__
391typedef interface ISpeechVoiceStatus ISpeechVoiceStatus;
392#ifdef __cplusplus
393interface ISpeechVoiceStatus;
394#endif /* __cplusplus */
395#endif
396
397#ifndef ___ISpeechVoiceEvents_FWD_DEFINED__
398#define ___ISpeechVoiceEvents_FWD_DEFINED__
399typedef interface _ISpeechVoiceEvents _ISpeechVoiceEvents;
400#ifdef __cplusplus
401interface _ISpeechVoiceEvents;
402#endif /* __cplusplus */
403#endif
404
405#ifndef __ISpeechRecognizer_FWD_DEFINED__
406#define __ISpeechRecognizer_FWD_DEFINED__
407typedef interface ISpeechRecognizer ISpeechRecognizer;
408#ifdef __cplusplus
409interface ISpeechRecognizer;
410#endif /* __cplusplus */
411#endif
412
413#ifndef __ISpeechRecognizerStatus_FWD_DEFINED__
414#define __ISpeechRecognizerStatus_FWD_DEFINED__
415typedef interface ISpeechRecognizerStatus ISpeechRecognizerStatus;
416#ifdef __cplusplus
417interface ISpeechRecognizerStatus;
418#endif /* __cplusplus */
419#endif
420
421#ifndef __ISpeechRecoContext_FWD_DEFINED__
422#define __ISpeechRecoContext_FWD_DEFINED__
423typedef interface ISpeechRecoContext ISpeechRecoContext;
424#ifdef __cplusplus
425interface ISpeechRecoContext;
426#endif /* __cplusplus */
427#endif
428
429#ifndef __ISpeechRecoGrammar_FWD_DEFINED__
430#define __ISpeechRecoGrammar_FWD_DEFINED__
431typedef interface ISpeechRecoGrammar ISpeechRecoGrammar;
432#ifdef __cplusplus
433interface ISpeechRecoGrammar;
434#endif /* __cplusplus */
435#endif
436
437#ifndef ___ISpeechRecoContextEvents_FWD_DEFINED__
438#define ___ISpeechRecoContextEvents_FWD_DEFINED__
439typedef interface _ISpeechRecoContextEvents _ISpeechRecoContextEvents;
440#ifdef __cplusplus
441interface _ISpeechRecoContextEvents;
442#endif /* __cplusplus */
443#endif
444
445#ifndef __ISpeechGrammarRule_FWD_DEFINED__
446#define __ISpeechGrammarRule_FWD_DEFINED__
447typedef interface ISpeechGrammarRule ISpeechGrammarRule;
448#ifdef __cplusplus
449interface ISpeechGrammarRule;
450#endif /* __cplusplus */
451#endif
452
453#ifndef __ISpeechGrammarRules_FWD_DEFINED__
454#define __ISpeechGrammarRules_FWD_DEFINED__
455typedef interface ISpeechGrammarRules ISpeechGrammarRules;
456#ifdef __cplusplus
457interface ISpeechGrammarRules;
458#endif /* __cplusplus */
459#endif
460
461#ifndef __ISpeechGrammarRuleState_FWD_DEFINED__
462#define __ISpeechGrammarRuleState_FWD_DEFINED__
463typedef interface ISpeechGrammarRuleState ISpeechGrammarRuleState;
464#ifdef __cplusplus
465interface ISpeechGrammarRuleState;
466#endif /* __cplusplus */
467#endif
468
469#ifndef __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
470#define __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
471typedef interface ISpeechGrammarRuleStateTransitions ISpeechGrammarRuleStateTransitions;
472#ifdef __cplusplus
473interface ISpeechGrammarRuleStateTransitions;
474#endif /* __cplusplus */
475#endif
476
477#ifndef __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
478#define __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
479typedef interface ISpeechGrammarRuleStateTransition ISpeechGrammarRuleStateTransition;
480#ifdef __cplusplus
481interface ISpeechGrammarRuleStateTransition;
482#endif /* __cplusplus */
483#endif
484
485#ifndef __ISpeechTextSelectionInformation_FWD_DEFINED__
486#define __ISpeechTextSelectionInformation_FWD_DEFINED__
487typedef interface ISpeechTextSelectionInformation ISpeechTextSelectionInformation;
488#ifdef __cplusplus
489interface ISpeechTextSelectionInformation;
490#endif /* __cplusplus */
491#endif
492
493#ifndef __ISpeechRecoResult_FWD_DEFINED__
494#define __ISpeechRecoResult_FWD_DEFINED__
495typedef interface ISpeechRecoResult ISpeechRecoResult;
496#ifdef __cplusplus
497interface ISpeechRecoResult;
498#endif /* __cplusplus */
499#endif
500
501#ifndef __ISpeechPhraseInfoBuilder_FWD_DEFINED__
502#define __ISpeechPhraseInfoBuilder_FWD_DEFINED__
503typedef interface ISpeechPhraseInfoBuilder ISpeechPhraseInfoBuilder;
504#ifdef __cplusplus
505interface ISpeechPhraseInfoBuilder;
506#endif /* __cplusplus */
507#endif
508
509#ifndef __ISpeechRecoResultTimes_FWD_DEFINED__
510#define __ISpeechRecoResultTimes_FWD_DEFINED__
511typedef interface ISpeechRecoResultTimes ISpeechRecoResultTimes;
512#ifdef __cplusplus
513interface ISpeechRecoResultTimes;
514#endif /* __cplusplus */
515#endif
516
517#ifndef __ISpeechPhraseAlternate_FWD_DEFINED__
518#define __ISpeechPhraseAlternate_FWD_DEFINED__
519typedef interface ISpeechPhraseAlternate ISpeechPhraseAlternate;
520#ifdef __cplusplus
521interface ISpeechPhraseAlternate;
522#endif /* __cplusplus */
523#endif
524
525#ifndef __ISpeechPhraseAlternates_FWD_DEFINED__
526#define __ISpeechPhraseAlternates_FWD_DEFINED__
527typedef interface ISpeechPhraseAlternates ISpeechPhraseAlternates;
528#ifdef __cplusplus
529interface ISpeechPhraseAlternates;
530#endif /* __cplusplus */
531#endif
532
533#ifndef __ISpeechPhraseInfo_FWD_DEFINED__
534#define __ISpeechPhraseInfo_FWD_DEFINED__
535typedef interface ISpeechPhraseInfo ISpeechPhraseInfo;
536#ifdef __cplusplus
537interface ISpeechPhraseInfo;
538#endif /* __cplusplus */
539#endif
540
541#ifndef __ISpeechPhraseElement_FWD_DEFINED__
542#define __ISpeechPhraseElement_FWD_DEFINED__
543typedef interface ISpeechPhraseElement ISpeechPhraseElement;
544#ifdef __cplusplus
545interface ISpeechPhraseElement;
546#endif /* __cplusplus */
547#endif
548
549#ifndef __ISpeechPhraseElements_FWD_DEFINED__
550#define __ISpeechPhraseElements_FWD_DEFINED__
551typedef interface ISpeechPhraseElements ISpeechPhraseElements;
552#ifdef __cplusplus
553interface ISpeechPhraseElements;
554#endif /* __cplusplus */
555#endif
556
557#ifndef __ISpeechPhraseReplacement_FWD_DEFINED__
558#define __ISpeechPhraseReplacement_FWD_DEFINED__
559typedef interface ISpeechPhraseReplacement ISpeechPhraseReplacement;
560#ifdef __cplusplus
561interface ISpeechPhraseReplacement;
562#endif /* __cplusplus */
563#endif
564
565#ifndef __ISpeechPhraseReplacements_FWD_DEFINED__
566#define __ISpeechPhraseReplacements_FWD_DEFINED__
567typedef interface ISpeechPhraseReplacements ISpeechPhraseReplacements;
568#ifdef __cplusplus
569interface ISpeechPhraseReplacements;
570#endif /* __cplusplus */
571#endif
572
573#ifndef __ISpeechPhraseProperty_FWD_DEFINED__
574#define __ISpeechPhraseProperty_FWD_DEFINED__
575typedef interface ISpeechPhraseProperty ISpeechPhraseProperty;
576#ifdef __cplusplus
577interface ISpeechPhraseProperty;
578#endif /* __cplusplus */
579#endif
580
581#ifndef __ISpeechPhraseProperties_FWD_DEFINED__
582#define __ISpeechPhraseProperties_FWD_DEFINED__
583typedef interface ISpeechPhraseProperties ISpeechPhraseProperties;
584#ifdef __cplusplus
585interface ISpeechPhraseProperties;
586#endif /* __cplusplus */
587#endif
588
589#ifndef __ISpeechPhraseRule_FWD_DEFINED__
590#define __ISpeechPhraseRule_FWD_DEFINED__
591typedef interface ISpeechPhraseRule ISpeechPhraseRule;
592#ifdef __cplusplus
593interface ISpeechPhraseRule;
594#endif /* __cplusplus */
595#endif
596
597#ifndef __ISpeechPhraseRules_FWD_DEFINED__
598#define __ISpeechPhraseRules_FWD_DEFINED__
599typedef interface ISpeechPhraseRules ISpeechPhraseRules;
600#ifdef __cplusplus
601interface ISpeechPhraseRules;
602#endif /* __cplusplus */
603#endif
604
605#ifndef __ISpeechLexiconWords_FWD_DEFINED__
606#define __ISpeechLexiconWords_FWD_DEFINED__
607typedef interface ISpeechLexiconWords ISpeechLexiconWords;
608#ifdef __cplusplus
609interface ISpeechLexiconWords;
610#endif /* __cplusplus */
611#endif
612
613#ifndef __ISpeechLexicon_FWD_DEFINED__
614#define __ISpeechLexicon_FWD_DEFINED__
615typedef interface ISpeechLexicon ISpeechLexicon;
616#ifdef __cplusplus
617interface ISpeechLexicon;
618#endif /* __cplusplus */
619#endif
620
621#ifndef __ISpeechLexiconWord_FWD_DEFINED__
622#define __ISpeechLexiconWord_FWD_DEFINED__
623typedef interface ISpeechLexiconWord ISpeechLexiconWord;
624#ifdef __cplusplus
625interface ISpeechLexiconWord;
626#endif /* __cplusplus */
627#endif
628
629#ifndef __ISpeechLexiconPronunciations_FWD_DEFINED__
630#define __ISpeechLexiconPronunciations_FWD_DEFINED__
631typedef interface ISpeechLexiconPronunciations ISpeechLexiconPronunciations;
632#ifdef __cplusplus
633interface ISpeechLexiconPronunciations;
634#endif /* __cplusplus */
635#endif
636
637#ifndef __ISpeechLexiconPronunciation_FWD_DEFINED__
638#define __ISpeechLexiconPronunciation_FWD_DEFINED__
639typedef interface ISpeechLexiconPronunciation ISpeechLexiconPronunciation;
640#ifdef __cplusplus
641interface ISpeechLexiconPronunciation;
642#endif /* __cplusplus */
643#endif
644
645#ifndef __ISpeechPhoneConverter_FWD_DEFINED__
646#define __ISpeechPhoneConverter_FWD_DEFINED__
647typedef interface ISpeechPhoneConverter ISpeechPhoneConverter;
648#ifdef __cplusplus
649interface ISpeechPhoneConverter;
650#endif /* __cplusplus */
651#endif
652
653#ifndef __SpNotifyTranslator_FWD_DEFINED__
654#define __SpNotifyTranslator_FWD_DEFINED__
655#ifdef __cplusplus
656typedef class SpNotifyTranslator SpNotifyTranslator;
657#else
658typedef struct SpNotifyTranslator SpNotifyTranslator;
659#endif /* defined __cplusplus */
660#endif /* defined __SpNotifyTranslator_FWD_DEFINED__ */
661
662#ifndef __SpObjectTokenCategory_FWD_DEFINED__
663#define __SpObjectTokenCategory_FWD_DEFINED__
664#ifdef __cplusplus
665typedef class SpObjectTokenCategory SpObjectTokenCategory;
666#else
667typedef struct SpObjectTokenCategory SpObjectTokenCategory;
668#endif /* defined __cplusplus */
669#endif /* defined __SpObjectTokenCategory_FWD_DEFINED__ */
670
671#ifndef __SpObjectToken_FWD_DEFINED__
672#define __SpObjectToken_FWD_DEFINED__
673#ifdef __cplusplus
674typedef class SpObjectToken SpObjectToken;
675#else
676typedef struct SpObjectToken SpObjectToken;
677#endif /* defined __cplusplus */
678#endif /* defined __SpObjectToken_FWD_DEFINED__ */
679
680#ifndef __SpResourceManager_FWD_DEFINED__
681#define __SpResourceManager_FWD_DEFINED__
682#ifdef __cplusplus
683typedef class SpResourceManager SpResourceManager;
684#else
685typedef struct SpResourceManager SpResourceManager;
686#endif /* defined __cplusplus */
687#endif /* defined __SpResourceManager_FWD_DEFINED__ */
688
689#ifndef __SpStreamFormatConverter_FWD_DEFINED__
690#define __SpStreamFormatConverter_FWD_DEFINED__
691#ifdef __cplusplus
692typedef class SpStreamFormatConverter SpStreamFormatConverter;
693#else
694typedef struct SpStreamFormatConverter SpStreamFormatConverter;
695#endif /* defined __cplusplus */
696#endif /* defined __SpStreamFormatConverter_FWD_DEFINED__ */
697
698#ifndef __SpMMAudioEnum_FWD_DEFINED__
699#define __SpMMAudioEnum_FWD_DEFINED__
700#ifdef __cplusplus
701typedef class SpMMAudioEnum SpMMAudioEnum;
702#else
703typedef struct SpMMAudioEnum SpMMAudioEnum;
704#endif /* defined __cplusplus */
705#endif /* defined __SpMMAudioEnum_FWD_DEFINED__ */
706
707#ifndef __SpMMAudioIn_FWD_DEFINED__
708#define __SpMMAudioIn_FWD_DEFINED__
709#ifdef __cplusplus
710typedef class SpMMAudioIn SpMMAudioIn;
711#else
712typedef struct SpMMAudioIn SpMMAudioIn;
713#endif /* defined __cplusplus */
714#endif /* defined __SpMMAudioIn_FWD_DEFINED__ */
715
716#ifndef __SpMMAudioOut_FWD_DEFINED__
717#define __SpMMAudioOut_FWD_DEFINED__
718#ifdef __cplusplus
719typedef class SpMMAudioOut SpMMAudioOut;
720#else
721typedef struct SpMMAudioOut SpMMAudioOut;
722#endif /* defined __cplusplus */
723#endif /* defined __SpMMAudioOut_FWD_DEFINED__ */
724
725#ifndef __SpStream_FWD_DEFINED__
726#define __SpStream_FWD_DEFINED__
727#ifdef __cplusplus
728typedef class SpStream SpStream;
729#else
730typedef struct SpStream SpStream;
731#endif /* defined __cplusplus */
732#endif /* defined __SpStream_FWD_DEFINED__ */
733
734#ifndef __SpVoice_FWD_DEFINED__
735#define __SpVoice_FWD_DEFINED__
736#ifdef __cplusplus
737typedef class SpVoice SpVoice;
738#else
739typedef struct SpVoice SpVoice;
740#endif /* defined __cplusplus */
741#endif /* defined __SpVoice_FWD_DEFINED__ */
742
743#ifndef __SpSharedRecoContext_FWD_DEFINED__
744#define __SpSharedRecoContext_FWD_DEFINED__
745#ifdef __cplusplus
746typedef class SpSharedRecoContext SpSharedRecoContext;
747#else
748typedef struct SpSharedRecoContext SpSharedRecoContext;
749#endif /* defined __cplusplus */
750#endif /* defined __SpSharedRecoContext_FWD_DEFINED__ */
751
752#ifndef __SpInprocRecognizer_FWD_DEFINED__
753#define __SpInprocRecognizer_FWD_DEFINED__
754#ifdef __cplusplus
755typedef class SpInprocRecognizer SpInprocRecognizer;
756#else
757typedef struct SpInprocRecognizer SpInprocRecognizer;
758#endif /* defined __cplusplus */
759#endif /* defined __SpInprocRecognizer_FWD_DEFINED__ */
760
761#ifndef __SpSharedRecognizer_FWD_DEFINED__
762#define __SpSharedRecognizer_FWD_DEFINED__
763#ifdef __cplusplus
764typedef class SpSharedRecognizer SpSharedRecognizer;
765#else
766typedef struct SpSharedRecognizer SpSharedRecognizer;
767#endif /* defined __cplusplus */
768#endif /* defined __SpSharedRecognizer_FWD_DEFINED__ */
769
770#ifndef __SpLexicon_FWD_DEFINED__
771#define __SpLexicon_FWD_DEFINED__
772#ifdef __cplusplus
773typedef class SpLexicon SpLexicon;
774#else
775typedef struct SpLexicon SpLexicon;
776#endif /* defined __cplusplus */
777#endif /* defined __SpLexicon_FWD_DEFINED__ */
778
779#ifndef __SpUnCompressedLexicon_FWD_DEFINED__
780#define __SpUnCompressedLexicon_FWD_DEFINED__
781#ifdef __cplusplus
782typedef class SpUnCompressedLexicon SpUnCompressedLexicon;
783#else
784typedef struct SpUnCompressedLexicon SpUnCompressedLexicon;
785#endif /* defined __cplusplus */
786#endif /* defined __SpUnCompressedLexicon_FWD_DEFINED__ */
787
788#ifndef __SpCompressedLexicon_FWD_DEFINED__
789#define __SpCompressedLexicon_FWD_DEFINED__
790#ifdef __cplusplus
791typedef class SpCompressedLexicon SpCompressedLexicon;
792#else
793typedef struct SpCompressedLexicon SpCompressedLexicon;
794#endif /* defined __cplusplus */
795#endif /* defined __SpCompressedLexicon_FWD_DEFINED__ */
796
797#ifndef __SpPhoneConverter_FWD_DEFINED__
798#define __SpPhoneConverter_FWD_DEFINED__
799#ifdef __cplusplus
800typedef class SpPhoneConverter SpPhoneConverter;
801#else
802typedef struct SpPhoneConverter SpPhoneConverter;
803#endif /* defined __cplusplus */
804#endif /* defined __SpPhoneConverter_FWD_DEFINED__ */
805
806#ifndef __SpNullPhoneConverter_FWD_DEFINED__
807#define __SpNullPhoneConverter_FWD_DEFINED__
808#ifdef __cplusplus
809typedef class SpNullPhoneConverter SpNullPhoneConverter;
810#else
811typedef struct SpNullPhoneConverter SpNullPhoneConverter;
812#endif /* defined __cplusplus */
813#endif /* defined __SpNullPhoneConverter_FWD_DEFINED__ */
814
815#ifndef __SpTextSelectionInformation_FWD_DEFINED__
816#define __SpTextSelectionInformation_FWD_DEFINED__
817#ifdef __cplusplus
818typedef class SpTextSelectionInformation SpTextSelectionInformation;
819#else
820typedef struct SpTextSelectionInformation SpTextSelectionInformation;
821#endif /* defined __cplusplus */
822#endif /* defined __SpTextSelectionInformation_FWD_DEFINED__ */
823
824#ifndef __SpPhraseInfoBuilder_FWD_DEFINED__
825#define __SpPhraseInfoBuilder_FWD_DEFINED__
826#ifdef __cplusplus
827typedef class SpPhraseInfoBuilder SpPhraseInfoBuilder;
828#else
829typedef struct SpPhraseInfoBuilder SpPhraseInfoBuilder;
830#endif /* defined __cplusplus */
831#endif /* defined __SpPhraseInfoBuilder_FWD_DEFINED__ */
832
833#ifndef __SpAudioFormat_FWD_DEFINED__
834#define __SpAudioFormat_FWD_DEFINED__
835#ifdef __cplusplus
836typedef class SpAudioFormat SpAudioFormat;
837#else
838typedef struct SpAudioFormat SpAudioFormat;
839#endif /* defined __cplusplus */
840#endif /* defined __SpAudioFormat_FWD_DEFINED__ */
841
842#ifndef __SpWaveFormatEx_FWD_DEFINED__
843#define __SpWaveFormatEx_FWD_DEFINED__
844#ifdef __cplusplus
845typedef class SpWaveFormatEx SpWaveFormatEx;
846#else
847typedef struct SpWaveFormatEx SpWaveFormatEx;
848#endif /* defined __cplusplus */
849#endif /* defined __SpWaveFormatEx_FWD_DEFINED__ */
850
851#ifndef __SpInProcRecoContext_FWD_DEFINED__
852#define __SpInProcRecoContext_FWD_DEFINED__
853#ifdef __cplusplus
854typedef class SpInProcRecoContext SpInProcRecoContext;
855#else
856typedef struct SpInProcRecoContext SpInProcRecoContext;
857#endif /* defined __cplusplus */
858#endif /* defined __SpInProcRecoContext_FWD_DEFINED__ */
859
860#ifndef __SpCustomStream_FWD_DEFINED__
861#define __SpCustomStream_FWD_DEFINED__
862#ifdef __cplusplus
863typedef class SpCustomStream SpCustomStream;
864#else
865typedef struct SpCustomStream SpCustomStream;
866#endif /* defined __cplusplus */
867#endif /* defined __SpCustomStream_FWD_DEFINED__ */
868
869#ifndef __SpFileStream_FWD_DEFINED__
870#define __SpFileStream_FWD_DEFINED__
871#ifdef __cplusplus
872typedef class SpFileStream SpFileStream;
873#else
874typedef struct SpFileStream SpFileStream;
875#endif /* defined __cplusplus */
876#endif /* defined __SpFileStream_FWD_DEFINED__ */
877
878#ifndef __SpMemoryStream_FWD_DEFINED__
879#define __SpMemoryStream_FWD_DEFINED__
880#ifdef __cplusplus
881typedef class SpMemoryStream SpMemoryStream;
882#else
883typedef struct SpMemoryStream SpMemoryStream;
884#endif /* defined __cplusplus */
885#endif /* defined __SpMemoryStream_FWD_DEFINED__ */
886
887/* Headers for imported files */
888
889#include <oaidl.h>
890#include <ocidl.h>
891
892#ifdef __cplusplus
893extern "C" {
894#endif
895
896#ifndef _SAPI_VER
897#error "you have to include <sapi.h> header before this."
898#endif
899#if 0
900typedef struct WAVEFORMATEX {
901 WORD wFormatTag;
902 WORD nChannels;
903 DWORD nSamplesPerSec;
904 DWORD nAvgBytesPerSec;
905 WORD nBlockAlign;
906 WORD wBitsPerSample;
907 WORD cbSize;
908} WAVEFORMATEX;
909#endif
910#ifndef __ISpNotifySource_FWD_DEFINED__
911#define __ISpNotifySource_FWD_DEFINED__
912typedef interface ISpNotifySource ISpNotifySource;
913#ifdef __cplusplus
914interface ISpNotifySource;
915#endif /* __cplusplus */
916#endif
917
918#ifndef __ISpNotifySink_FWD_DEFINED__
919#define __ISpNotifySink_FWD_DEFINED__
920typedef interface ISpNotifySink ISpNotifySink;
921#ifdef __cplusplus
922interface ISpNotifySink;
923#endif /* __cplusplus */
924#endif
925
926#ifndef __ISpNotifyTranslator_FWD_DEFINED__
927#define __ISpNotifyTranslator_FWD_DEFINED__
928typedef interface ISpNotifyTranslator ISpNotifyTranslator;
929#ifdef __cplusplus
930interface ISpNotifyTranslator;
931#endif /* __cplusplus */
932#endif
933
934#ifndef __ISpDataKey_FWD_DEFINED__
935#define __ISpDataKey_FWD_DEFINED__
936typedef interface ISpDataKey ISpDataKey;
937#ifdef __cplusplus
938interface ISpDataKey;
939#endif /* __cplusplus */
940#endif
941
942#ifndef __ISpObjectTokenCategory_FWD_DEFINED__
943#define __ISpObjectTokenCategory_FWD_DEFINED__
944typedef interface ISpObjectTokenCategory ISpObjectTokenCategory;
945#ifdef __cplusplus
946interface ISpObjectTokenCategory;
947#endif /* __cplusplus */
948#endif
949
950#ifndef __ISpObjectToken_FWD_DEFINED__
951#define __ISpObjectToken_FWD_DEFINED__
952typedef interface ISpObjectToken ISpObjectToken;
953#ifdef __cplusplus
954interface ISpObjectToken;
955#endif /* __cplusplus */
956#endif
957
958#ifndef __IEnumSpObjectTokens_FWD_DEFINED__
959#define __IEnumSpObjectTokens_FWD_DEFINED__
960typedef interface IEnumSpObjectTokens IEnumSpObjectTokens;
961#ifdef __cplusplus
962interface IEnumSpObjectTokens;
963#endif /* __cplusplus */
964#endif
965
966#ifndef __ISpObjectWithToken_FWD_DEFINED__
967#define __ISpObjectWithToken_FWD_DEFINED__
968typedef interface ISpObjectWithToken ISpObjectWithToken;
969#ifdef __cplusplus
970interface ISpObjectWithToken;
971#endif /* __cplusplus */
972#endif
973
974#ifndef __ISpResourceManager_FWD_DEFINED__
975#define __ISpResourceManager_FWD_DEFINED__
976typedef interface ISpResourceManager ISpResourceManager;
977#ifdef __cplusplus
978interface ISpResourceManager;
979#endif /* __cplusplus */
980#endif
981
982#ifndef __ISpEventSource_FWD_DEFINED__
983#define __ISpEventSource_FWD_DEFINED__
984typedef interface ISpEventSource ISpEventSource;
985#ifdef __cplusplus
986interface ISpEventSource;
987#endif /* __cplusplus */
988#endif
989
990#ifndef __ISpEventSink_FWD_DEFINED__
991#define __ISpEventSink_FWD_DEFINED__
992typedef interface ISpEventSink ISpEventSink;
993#ifdef __cplusplus
994interface ISpEventSink;
995#endif /* __cplusplus */
996#endif
997
998#ifndef __ISpStreamFormat_FWD_DEFINED__
999#define __ISpStreamFormat_FWD_DEFINED__
1000typedef interface ISpStreamFormat ISpStreamFormat;
1001#ifdef __cplusplus
1002interface ISpStreamFormat;
1003#endif /* __cplusplus */
1004#endif
1005
1006#ifndef __ISpStream_FWD_DEFINED__
1007#define __ISpStream_FWD_DEFINED__
1008typedef interface ISpStream ISpStream;
1009#ifdef __cplusplus
1010interface ISpStream;
1011#endif /* __cplusplus */
1012#endif
1013
1014#ifndef __ISpStreamFormatConverter_FWD_DEFINED__
1015#define __ISpStreamFormatConverter_FWD_DEFINED__
1016typedef interface ISpStreamFormatConverter ISpStreamFormatConverter;
1017#ifdef __cplusplus
1018interface ISpStreamFormatConverter;
1019#endif /* __cplusplus */
1020#endif
1021
1022#ifndef __ISpAudio_FWD_DEFINED__
1023#define __ISpAudio_FWD_DEFINED__
1024typedef interface ISpAudio ISpAudio;
1025#ifdef __cplusplus
1026interface ISpAudio;
1027#endif /* __cplusplus */
1028#endif
1029
1030#ifndef __ISpMMSysAudio_FWD_DEFINED__
1031#define __ISpMMSysAudio_FWD_DEFINED__
1032typedef interface ISpMMSysAudio ISpMMSysAudio;
1033#ifdef __cplusplus
1034interface ISpMMSysAudio;
1035#endif /* __cplusplus */
1036#endif
1037
1038#ifndef __ISpTranscript_FWD_DEFINED__
1039#define __ISpTranscript_FWD_DEFINED__
1040typedef interface ISpTranscript ISpTranscript;
1041#ifdef __cplusplus
1042interface ISpTranscript;
1043#endif /* __cplusplus */
1044#endif
1045
1046#ifndef __ISpVoice_FWD_DEFINED__
1047#define __ISpVoice_FWD_DEFINED__
1048typedef interface ISpVoice ISpVoice;
1049#ifdef __cplusplus
1050interface ISpVoice;
1051#endif /* __cplusplus */
1052#endif
1053
1054#ifndef __ISpRecoResult_FWD_DEFINED__
1055#define __ISpRecoResult_FWD_DEFINED__
1056typedef interface ISpRecoResult ISpRecoResult;
1057#ifdef __cplusplus
1058interface ISpRecoResult;
1059#endif /* __cplusplus */
1060#endif
1061
1062#ifndef __ISpRecoContext_FWD_DEFINED__
1063#define __ISpRecoContext_FWD_DEFINED__
1064typedef interface ISpRecoContext ISpRecoContext;
1065#ifdef __cplusplus
1066interface ISpRecoContext;
1067#endif /* __cplusplus */
1068#endif
1069
1070#ifndef __ISpRecognizer_FWD_DEFINED__
1071#define __ISpRecognizer_FWD_DEFINED__
1072typedef interface ISpRecognizer ISpRecognizer;
1073#ifdef __cplusplus
1074interface ISpRecognizer;
1075#endif /* __cplusplus */
1076#endif
1077
1078#ifndef __ISpProperties_FWD_DEFINED__
1079#define __ISpProperties_FWD_DEFINED__
1080typedef interface ISpProperties ISpProperties;
1081#ifdef __cplusplus
1082interface ISpProperties;
1083#endif /* __cplusplus */
1084#endif
1085
1086#ifndef __ISpLexicon_FWD_DEFINED__
1087#define __ISpLexicon_FWD_DEFINED__
1088typedef interface ISpLexicon ISpLexicon;
1089#ifdef __cplusplus
1090interface ISpLexicon;
1091#endif /* __cplusplus */
1092#endif
1093
1094#ifndef __ISpPhoneConverter_FWD_DEFINED__
1095#define __ISpPhoneConverter_FWD_DEFINED__
1096typedef interface ISpPhoneConverter ISpPhoneConverter;
1097#ifdef __cplusplus
1098interface ISpPhoneConverter;
1099#endif /* __cplusplus */
1100#endif
1101
1102#ifndef __ISpPhrase_FWD_DEFINED__
1103#define __ISpPhrase_FWD_DEFINED__
1104typedef interface ISpPhrase ISpPhrase;
1105#ifdef __cplusplus
1106interface ISpPhrase;
1107#endif /* __cplusplus */
1108#endif
1109
1110typedef enum SPDATAKEYLOCATION {
1111 SPDKL_DefaultLocation = 0,
1112 SPDKL_CurrentUser = 1,
1113 SPDKL_LocalMachine = 2,
1114 SPDKL_CurrentConfig = 5
1115} SPDATAKEYLOCATION;
1116typedef enum SPSTREAMFORMAT {
1117 SPSF_Default = -1,
1118 SPSF_NoAssignedFormat = 0,
1119 SPSF_Text = 1,
1120 SPSF_NonStandardFormat = 2,
1121 SPSF_ExtendedAudioFormat = 3,
1122 SPSF_8kHz8BitMono = 4,
1123 SPSF_8kHz8BitStereo = 5,
1124 SPSF_8kHz16BitMono = 6,
1125 SPSF_8kHz16BitStereo = 7,
1126 SPSF_11kHz8BitMono = 8,
1127 SPSF_11kHz8BitStereo = 9,
1128 SPSF_11kHz16BitMono = 10,
1129 SPSF_11kHz16BitStereo = 11,
1130 SPSF_12kHz8BitMono = 12,
1131 SPSF_12kHz8BitStereo = 13,
1132 SPSF_12kHz16BitMono = 14,
1133 SPSF_12kHz16BitStereo = 15,
1134 SPSF_16kHz8BitMono = 16,
1135 SPSF_16kHz8BitStereo = 17,
1136 SPSF_16kHz16BitMono = 18,
1137 SPSF_16kHz16BitStereo = 19,
1138 SPSF_22kHz8BitMono = 20,
1139 SPSF_22kHz8BitStereo = 21,
1140 SPSF_22kHz16BitMono = 22,
1141 SPSF_22kHz16BitStereo = 23,
1142 SPSF_24kHz8BitMono = 24,
1143 SPSF_24kHz8BitStereo = 25,
1144 SPSF_24kHz16BitMono = 26,
1145 SPSF_24kHz16BitStereo = 27,
1146 SPSF_32kHz8BitMono = 28,
1147 SPSF_32kHz8BitStereo = 29,
1148 SPSF_32kHz16BitMono = 30,
1149 SPSF_32kHz16BitStereo = 31,
1150 SPSF_44kHz8BitMono = 32,
1151 SPSF_44kHz8BitStereo = 33,
1152 SPSF_44kHz16BitMono = 34,
1153 SPSF_44kHz16BitStereo = 35,
1154 SPSF_48kHz8BitMono = 36,
1155 SPSF_48kHz8BitStereo = 37,
1156 SPSF_48kHz16BitMono = 38,
1157 SPSF_48kHz16BitStereo = 39,
1158 SPSF_TrueSpeech_8kHz1BitMono = 40,
1159 SPSF_CCITT_ALaw_8kHzMono = 41,
1160 SPSF_CCITT_ALaw_8kHzStereo = 42,
1161 SPSF_CCITT_ALaw_11kHzMono = 43,
1162 SPSF_CCITT_ALaw_11kHzStereo = 44,
1163 SPSF_CCITT_ALaw_22kHzMono = 45,
1164 SPSF_CCITT_ALaw_22kHzStereo = 46,
1165 SPSF_CCITT_ALaw_44kHzMono = 47,
1166 SPSF_CCITT_ALaw_44kHzStereo = 48,
1167 SPSF_CCITT_uLaw_8kHzMono = 49,
1168 SPSF_CCITT_uLaw_8kHzStereo = 50,
1169 SPSF_CCITT_uLaw_11kHzMono = 51,
1170 SPSF_CCITT_uLaw_11kHzStereo = 52,
1171 SPSF_CCITT_uLaw_22kHzMono = 53,
1172 SPSF_CCITT_uLaw_22kHzStereo = 54,
1173 SPSF_CCITT_uLaw_44kHzMono = 55,
1174 SPSF_CCITT_uLaw_44kHzStereo = 56,
1175 SPSF_ADPCM_8kHzMono = 57,
1176 SPSF_ADPCM_8kHzStereo = 58,
1177 SPSF_ADPCM_11kHzMono = 59,
1178 SPSF_ADPCM_11kHzStereo = 60,
1179 SPSF_ADPCM_22kHzMono = 61,
1180 SPSF_ADPCM_22kHzStereo = 62,
1181 SPSF_ADPCM_44kHzMono = 63,
1182 SPSF_ADPCM_44kHzStereo = 64,
1183 SPSF_GSM610_8kHzMono = 65,
1184 SPSF_GSM610_11kHzMono = 66,
1185 SPSF_GSM610_22kHzMono = 67,
1186 SPSF_GSM610_44kHzMono = 68,
1187 SPSF_NUM_FORMATS = 69
1188} SPSTREAMFORMAT;
1189typedef enum SPEVENTLPARAMTYPE {
1190 SPET_LPARAM_IS_UNDEFINED = 0,
1191 SPET_LPARAM_IS_TOKEN = 1,
1192 SPET_LPARAM_IS_OBJECT = 2,
1193 SPET_LPARAM_IS_POINTER = 3,
1194 SPET_LPARAM_IS_STRING = 4
1195} SPEVENTLPARAMTYPE;
1196typedef enum SPEVENTENUM {
1197 SPEI_UNDEFINED = 0,
1198 SPEI_START_INPUT_STREAM = 1,
1199 SPEI_END_INPUT_STREAM = 2,
1200 SPEI_VOICE_CHANGE = 3,
1201 SPEI_TTS_BOOKMARK = 4,
1202 SPEI_WORD_BOUNDARY = 5,
1203 SPEI_PHONEME = 6,
1204 SPEI_SENTENCE_BOUNDARY = 7,
1205 SPEI_VISEME = 8,
1206 SPEI_TTS_AUDIO_LEVEL = 9,
1207 SPEI_TTS_PRIVATE = 15,
1208 SPEI_MIN_TTS = 1,
1209 SPEI_MAX_TTS = 15,
1210 SPEI_END_SR_STREAM = 34,
1211 SPEI_SOUND_START = 35,
1212 SPEI_SOUND_END = 36,
1213 SPEI_PHRASE_START = 37,
1214 SPEI_RECOGNITION = 38,
1215 SPEI_HYPOTHESIS = 39,
1216 SPEI_SR_BOOKMARK = 40,
1217 SPEI_PROPERTY_NUM_CHANGE = 41,
1218 SPEI_PROPERTY_STRING_CHANGE = 42,
1219 SPEI_FALSE_RECOGNITION = 43,
1220 SPEI_INTERFERENCE = 44,
1221 SPEI_REQUEST_UI = 45,
1222 SPEI_RECO_STATE_CHANGE = 46,
1223 SPEI_ADAPTATION = 47,
1224 SPEI_START_SR_STREAM = 48,
1225 SPEI_RECO_OTHER_CONTEXT = 49,
1226 SPEI_SR_AUDIO_LEVEL = 50,
1227 SPEI_SR_PRIVATE = 52,
1228 SPEI_MIN_SR = 34,
1229 SPEI_MAX_SR = 52,
1230 SPEI_RESERVED1 = 30,
1231 SPEI_RESERVED2 = 33,
1232 SPEI_RESERVED3 = 63
1233} SPEVENTENUM;
1234typedef enum SPINTERFERENCE {
1235 SPINTERFERENCE_NONE = 0,
1236 SPINTERFERENCE_NOISE = 1,
1237 SPINTERFERENCE_NOSIGNAL = 2,
1238 SPINTERFERENCE_TOOLOUD = 3,
1239 SPINTERFERENCE_TOOQUIET = 4,
1240 SPINTERFERENCE_TOOFAST = 5,
1241 SPINTERFERENCE_TOOSLOW = 6,
1242 SPINTERFERENCE_LATENCY_WARNING = 7,
1243 SPINTERFERENCE_LATENCY_TRUNCATE_BEGIN = 8,
1244 SPINTERFERENCE_LATENCY_TRUNCATE_END = 9
1245} SPINTERFERENCE;
1246typedef enum SPENDSRSTREAMFLAGS {
1247 SPESF_NONE = 0,
1248 SPESF_STREAM_RELEASED = 1
1249} SPENDSRSTREAMFLAGS;
1250typedef enum SPVFEATURE {
1251 SPVFEATURE_STRESSED = 1,
1252 SPVFEATURE_EMPHASIS = 2
1253} SPVFEATURE;
1254typedef enum SPVISEMES {
1255 SP_VISEME_0 = 0,
1256 SP_VISEME_1 = 1,
1257 SP_VISEME_2 = 2,
1258 SP_VISEME_3 = 3,
1259 SP_VISEME_4 = 4,
1260 SP_VISEME_5 = 5,
1261 SP_VISEME_6 = 6,
1262 SP_VISEME_7 = 7,
1263 SP_VISEME_8 = 8,
1264 SP_VISEME_9 = 9,
1265 SP_VISEME_10 = 10,
1266 SP_VISEME_11 = 11,
1267 SP_VISEME_12 = 12,
1268 SP_VISEME_13 = 13,
1269 SP_VISEME_14 = 14,
1270 SP_VISEME_15 = 15,
1271 SP_VISEME_16 = 16,
1272 SP_VISEME_17 = 17,
1273 SP_VISEME_18 = 18,
1274 SP_VISEME_19 = 19,
1275 SP_VISEME_20 = 20,
1276 SP_VISEME_21 = 21
1277} SPVISEMES;
1278typedef enum SPFILEMODE {
1279 SPFM_OPEN_READONLY = 0,
1280 SPFM_OPEN_READWRITE = 1,
1281 SPFM_CREATE = 2,
1282 SPFM_CREATE_ALWAYS = 3,
1283 SPFM_NUM_MODES = 4
1284} SPFILEMODE;
1285typedef enum _SPAUDIOSTATE {
1286 SPAS_CLOSED = 0,
1287 SPAS_STOP = 1,
1288 SPAS_PAUSE = 2,
1289 SPAS_RUN = 3
1290} SPAUDIOSTATE;
1291typedef enum SPDISPLYATTRIBUTES {
1292 SPAF_ONE_TRAILING_SPACE = 0x2,
1293 SPAF_TWO_TRAILING_SPACES = 0x4,
1294 SPAF_CONSUME_LEADING_SPACES = 0x8,
1295 SPAF_ALL = 0xf
1296} SPDISPLAYATTRIBUTES;
1297typedef enum SPPHRASEPROPERTYUNIONTYPE {
1298 SPPPUT_UNUSED = 0,
1299 SPPPUT_ARRAY_INDEX = 1
1300} SPPHRASEPROPERTYUNIONTYPE;
1301typedef enum SPRECOEVENTFLAGS {
1302 SPREF_AutoPause = 0x1,
1303 SPREF_Emulated = 0x2
1304} SPRECOEVENTFLAGS;
1305typedef enum SPPARTOFSPEECH {
1306 SPPS_NotOverriden = -1,
1307 SPPS_Unknown = 0,
1308 SPPS_Noun = 0x1000,
1309 SPPS_Verb = 0x2000,
1310 SPPS_Modifier = 0x3000,
1311 SPPS_Function = 0x4000,
1312 SPPS_Interjection = 0x5000
1313} SPPARTOFSPEECH;
1314typedef enum SPLEXICONTYPE {
1315 eLEXTYPE_USER = 0x1,
1316 eLEXTYPE_APP = 0x2,
1317 eLEXTYPE_VENDORLEXICON = 0x4,
1318 eLEXTYPE_LETTERTOSOUND = 0x8,
1319 eLEXTYPE_MORPHOLOGY = 0x10,
1320 eLEXTYPE_RESERVED4 = 0x20,
1321 eLEXTYPE_USER_SHORTCUT = 0x40,
1322 eLEXTYPE_RESERVED6 = 0x80,
1323 eLEXTYPE_RESERVED7 = 0x100,
1324 eLEXTYPE_RESERVED8 = 0x200,
1325 eLEXTYPE_RESERVED9 = 0x400,
1326 eLEXTYPE_RESERVED10 = 0x800,
1327 eLEXTYPE_PRIVATE1 = 0x1000,
1328 eLEXTYPE_PRIVATE2 = 0x2000,
1329 eLEXTYPE_PRIVATE3 = 0x4000,
1330 eLEXTYPE_PRIVATE4 = 0x8000,
1331 eLEXTYPE_PRIVATE5 = 0x10000,
1332 eLEXTYPE_PRIVATE6 = 0x20000,
1333 eLEXTYPE_PRIVATE7 = 0x40000,
1334 eLEXTYPE_PRIVATE8 = 0x80000,
1335 eLEXTYPE_PRIVATE9 = 0x100000,
1336 eLEXTYPE_PRIVATE10 = 0x200000,
1337 eLEXTYPE_PRIVATE11 = 0x400000,
1338 eLEXTYPE_PRIVATE12 = 0x800000,
1339 eLEXTYPE_PRIVATE13 = 0x1000000,
1340 eLEXTYPE_PRIVATE14 = 0x2000000,
1341 eLEXTYPE_PRIVATE15 = 0x4000000,
1342 eLEXTYPE_PRIVATE16 = 0x8000000,
1343 eLEXTYPE_PRIVATE17 = 0x10000000,
1344 eLEXTYPE_PRIVATE18 = 0x20000000,
1345 eLEXTYPE_PRIVATE19 = 0x40000000,
1346 eLEXTYPE_PRIVATE20 = 0x80000000u
1347} SPLEXICONTYPE;
1348typedef enum SPWORDTYPE {
1349 eWORDTYPE_ADDED = 1,
1350 eWORDTYPE_DELETED = 2
1351} SPWORDTYPE;
1352typedef enum SPVALUETYPE {
1353 SPDF_PROPERTY = 0x1,
1354 SPDF_REPLACEMENT = 0x2,
1355 SPDF_RULE = 0x4,
1356 SPDF_DISPLAYTEXT = 0x8,
1357 SPDF_LEXICALFORM = 0x10,
1358 SPDF_PRONUNCIATION = 0x20,
1359 SPDF_AUDIO = 0x40,
1360 SPDF_ALTERNATES = 0x80,
1361 SPDF_ALL = 0xff
1362} SPVALUETYPE;
1363typedef enum SPPHRASERNG {
1364 SPPR_ALL_ELEMENTS = -1
1365} SPPHRASERNG;
1366typedef enum SPVACTIONS {
1367 SPVA_Speak = 0,
1368 SPVA_Silence = 1,
1369 SPVA_Pronounce = 2,
1370 SPVA_Bookmark = 3,
1371 SPVA_SpellOut = 4,
1372 SPVA_Section = 5,
1373 SPVA_ParseUnknownTag = 6
1374} SPVACTIONS;
1375typedef enum SPRUNSTATE {
1376 SPRS_DONE = 1,
1377 SPRS_IS_SPEAKING = 2
1378} SPRUNSTATE;
1379typedef enum SPVLIMITS {
1380 SPMIN_VOLUME = 0,
1381 SPMAX_VOLUME = 100,
1382 SPMIN_RATE = -10,
1383 SPMAX_RATE = 10
1384} SPVLIMITS;
1385typedef enum SPVPRIORITY {
1386 SPVPRI_NORMAL = 0,
1387 SPVPRI_ALERT = 1,
1388 SPVPRI_OVER = 2
1389} SPVPRIORITY;
1390EXTERN_C const GUID SPDFID_Text;
1391EXTERN_C const GUID SPDFID_WaveFormatEx;
1392
1393#define SP_LOW_CONFIDENCE (-1)
1394
1395#define SP_NORMAL_CONFIDENCE (0)
1396
1397#define SP_HIGH_CONFIDENCE (+1)
1398
1399#define DEFAULT_WEIGHT (1)
1400
1401#define SP_MAX_WORD_LENGTH (128)
1402
1403#define SP_MAX_PRON_LENGTH (384)
1404
1405
1406#ifdef __cplusplus
1407interface ISpNotifyCallback {
1408 virtual HRESULT STDMETHODCALLTYPE NotifyCallback(WPARAM wParam, LPARAM lParam) = 0;
1409};
1410#else
1411typedef void *ISpNotifyCallback;
1412#endif
1413#if 0
1414typedef void *SPNOTIFYCALLBACK;
1415#else
1416typedef void __stdcall SPNOTIFYCALLBACK(WPARAM wParam, LPARAM lParam);
1417#endif
1418/*****************************************************************************
1419 * ISpNotifySource interface
1420 */
1421#ifndef __ISpNotifySource_INTERFACE_DEFINED__
1422#define __ISpNotifySource_INTERFACE_DEFINED__
1423
1424DEFINE_GUID(IID_ISpNotifySource, 0x5eff4aef, 0x8487, 0x11d2, 0x96,0x1c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
1425#if defined(__cplusplus) && !defined(CINTERFACE)
1426MIDL_INTERFACE("5eff4aef-8487-11d2-961c-00c04f8ee628")
1427ISpNotifySource : public IUnknown
1428{
1429 virtual HRESULT STDMETHODCALLTYPE SetNotifySink(
1430 ISpNotifySink *pNotifySink) = 0;
1431
1432 virtual HRESULT STDMETHODCALLTYPE SetNotifyWindowMessage(
1433 HWND hWnd,
1434 UINT Msg,
1435 WPARAM wParam,
1436 LPARAM lParam) = 0;
1437
1438 virtual HRESULT STDMETHODCALLTYPE SetNotifyCallbackFunction(
1439 SPNOTIFYCALLBACK *pfnCallback,
1440 WPARAM wParam,
1441 LPARAM lParam) = 0;
1442
1443 virtual HRESULT STDMETHODCALLTYPE SetNotifyCallbackInterface(
1444 ISpNotifyCallback *pSpCallback,
1445 WPARAM wParam,
1446 LPARAM lParam) = 0;
1447
1448 virtual HRESULT STDMETHODCALLTYPE SetNotifyWin32Event(
1449 ) = 0;
1450
1451 virtual HRESULT STDMETHODCALLTYPE WaitForNotifyEvent(
1452 DWORD dwMilliseconds) = 0;
1453
1454 virtual HANDLE STDMETHODCALLTYPE GetNotifyEventHandle(
1455 ) = 0;
1456
1457};
1458#ifdef __CRT_UUID_DECL
1459__CRT_UUID_DECL(ISpNotifySource, 0x5eff4aef, 0x8487, 0x11d2, 0x96,0x1c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
1460#endif
1461#else
1462typedef struct ISpNotifySourceVtbl {
1463 BEGIN_INTERFACE
1464
1465 /*** IUnknown methods ***/
1466 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1467 ISpNotifySource *This,
1468 REFIID riid,
1469 void **ppvObject);
1470
1471 ULONG (STDMETHODCALLTYPE *AddRef)(
1472 ISpNotifySource *This);
1473
1474 ULONG (STDMETHODCALLTYPE *Release)(
1475 ISpNotifySource *This);
1476
1477 /*** ISpNotifySource methods ***/
1478 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
1479 ISpNotifySource *This,
1480 ISpNotifySink *pNotifySink);
1481
1482 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
1483 ISpNotifySource *This,
1484 HWND hWnd,
1485 UINT Msg,
1486 WPARAM wParam,
1487 LPARAM lParam);
1488
1489 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
1490 ISpNotifySource *This,
1491 SPNOTIFYCALLBACK *pfnCallback,
1492 WPARAM wParam,
1493 LPARAM lParam);
1494
1495 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
1496 ISpNotifySource *This,
1497 ISpNotifyCallback *pSpCallback,
1498 WPARAM wParam,
1499 LPARAM lParam);
1500
1501 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
1502 ISpNotifySource *This);
1503
1504 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
1505 ISpNotifySource *This,
1506 DWORD dwMilliseconds);
1507
1508 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
1509 ISpNotifySource *This);
1510
1511 END_INTERFACE
1512} ISpNotifySourceVtbl;
1513
1514interface ISpNotifySource {
1515 CONST_VTBL ISpNotifySourceVtbl* lpVtbl;
1516};
1517
1518#ifdef COBJMACROS
1519#ifndef WIDL_C_INLINE_WRAPPERS
1520/*** IUnknown methods ***/
1521#define ISpNotifySource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1522#define ISpNotifySource_AddRef(This) (This)->lpVtbl->AddRef(This)
1523#define ISpNotifySource_Release(This) (This)->lpVtbl->Release(This)
1524/*** ISpNotifySource methods ***/
1525#define ISpNotifySource_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
1526#define ISpNotifySource_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
1527#define ISpNotifySource_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
1528#define ISpNotifySource_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
1529#define ISpNotifySource_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
1530#define ISpNotifySource_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
1531#define ISpNotifySource_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
1532#else
1533/*** IUnknown methods ***/
1534static inline HRESULT ISpNotifySource_QueryInterface(ISpNotifySource* This,REFIID riid,void **ppvObject) {
1535 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1536}
1537static inline ULONG ISpNotifySource_AddRef(ISpNotifySource* This) {
1538 return This->lpVtbl->AddRef(This);
1539}
1540static inline ULONG ISpNotifySource_Release(ISpNotifySource* This) {
1541 return This->lpVtbl->Release(This);
1542}
1543/*** ISpNotifySource methods ***/
1544static inline HRESULT ISpNotifySource_SetNotifySink(ISpNotifySource* This,ISpNotifySink *pNotifySink) {
1545 return This->lpVtbl->SetNotifySink(This,pNotifySink);
1546}
1547static inline HRESULT ISpNotifySource_SetNotifyWindowMessage(ISpNotifySource* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
1548 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
1549}
1550static inline HRESULT ISpNotifySource_SetNotifyCallbackFunction(ISpNotifySource* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
1551 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
1552}
1553static inline HRESULT ISpNotifySource_SetNotifyCallbackInterface(ISpNotifySource* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
1554 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
1555}
1556static inline HRESULT ISpNotifySource_SetNotifyWin32Event(ISpNotifySource* This) {
1557 return This->lpVtbl->SetNotifyWin32Event(This);
1558}
1559static inline HRESULT ISpNotifySource_WaitForNotifyEvent(ISpNotifySource* This,DWORD dwMilliseconds) {
1560 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
1561}
1562static inline HANDLE ISpNotifySource_GetNotifyEventHandle(ISpNotifySource* This) {
1563 return This->lpVtbl->GetNotifyEventHandle(This);
1564}
1565#endif
1566#endif
1567
1568#endif
1569
1570
1571#endif /* __ISpNotifySource_INTERFACE_DEFINED__ */
1572
1573/*****************************************************************************
1574 * ISpNotifySink interface
1575 */
1576#ifndef __ISpNotifySink_INTERFACE_DEFINED__
1577#define __ISpNotifySink_INTERFACE_DEFINED__
1578
1579DEFINE_GUID(IID_ISpNotifySink, 0x259684dc, 0x37c3, 0x11d2, 0x96,0x03, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
1580#if defined(__cplusplus) && !defined(CINTERFACE)
1581MIDL_INTERFACE("259684dc-37c3-11d2-9603-00c04f8ee628")
1582ISpNotifySink : public IUnknown
1583{
1584 virtual HRESULT STDMETHODCALLTYPE Notify(
1585 ) = 0;
1586
1587};
1588#ifdef __CRT_UUID_DECL
1589__CRT_UUID_DECL(ISpNotifySink, 0x259684dc, 0x37c3, 0x11d2, 0x96,0x03, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
1590#endif
1591#else
1592typedef struct ISpNotifySinkVtbl {
1593 BEGIN_INTERFACE
1594
1595 /*** IUnknown methods ***/
1596 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1597 ISpNotifySink *This,
1598 REFIID riid,
1599 void **ppvObject);
1600
1601 ULONG (STDMETHODCALLTYPE *AddRef)(
1602 ISpNotifySink *This);
1603
1604 ULONG (STDMETHODCALLTYPE *Release)(
1605 ISpNotifySink *This);
1606
1607 /*** ISpNotifySink methods ***/
1608 HRESULT (STDMETHODCALLTYPE *Notify)(
1609 ISpNotifySink *This);
1610
1611 END_INTERFACE
1612} ISpNotifySinkVtbl;
1613
1614interface ISpNotifySink {
1615 CONST_VTBL ISpNotifySinkVtbl* lpVtbl;
1616};
1617
1618#ifdef COBJMACROS
1619#ifndef WIDL_C_INLINE_WRAPPERS
1620/*** IUnknown methods ***/
1621#define ISpNotifySink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1622#define ISpNotifySink_AddRef(This) (This)->lpVtbl->AddRef(This)
1623#define ISpNotifySink_Release(This) (This)->lpVtbl->Release(This)
1624/*** ISpNotifySink methods ***/
1625#define ISpNotifySink_Notify(This) (This)->lpVtbl->Notify(This)
1626#else
1627/*** IUnknown methods ***/
1628static inline HRESULT ISpNotifySink_QueryInterface(ISpNotifySink* This,REFIID riid,void **ppvObject) {
1629 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1630}
1631static inline ULONG ISpNotifySink_AddRef(ISpNotifySink* This) {
1632 return This->lpVtbl->AddRef(This);
1633}
1634static inline ULONG ISpNotifySink_Release(ISpNotifySink* This) {
1635 return This->lpVtbl->Release(This);
1636}
1637/*** ISpNotifySink methods ***/
1638static inline HRESULT ISpNotifySink_Notify(ISpNotifySink* This) {
1639 return This->lpVtbl->Notify(This);
1640}
1641#endif
1642#endif
1643
1644#endif
1645
1646
1647#endif /* __ISpNotifySink_INTERFACE_DEFINED__ */
1648
1649/*****************************************************************************
1650 * ISpNotifyTranslator interface
1651 */
1652#ifndef __ISpNotifyTranslator_INTERFACE_DEFINED__
1653#define __ISpNotifyTranslator_INTERFACE_DEFINED__
1654
1655DEFINE_GUID(IID_ISpNotifyTranslator, 0xaca16614, 0x5d3d, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
1656#if defined(__cplusplus) && !defined(CINTERFACE)
1657MIDL_INTERFACE("aca16614-5d3d-11d2-960e-00c04f8ee628")
1658ISpNotifyTranslator : public ISpNotifySink
1659{
1660 virtual HRESULT STDMETHODCALLTYPE InitWindowMessage(
1661 HWND hWnd,
1662 UINT Msg,
1663 WPARAM wParam,
1664 LPARAM lParam) = 0;
1665
1666 virtual HRESULT STDMETHODCALLTYPE InitCallback(
1667 SPNOTIFYCALLBACK *pfnCallback,
1668 WPARAM wParam,
1669 LPARAM lParam) = 0;
1670
1671 virtual HRESULT STDMETHODCALLTYPE InitSpNotifyCallback(
1672 ISpNotifyCallback *pSpCallback,
1673 WPARAM wParam,
1674 LPARAM lParam) = 0;
1675
1676 virtual HRESULT STDMETHODCALLTYPE InitWin32Event(
1677 HANDLE hEvent,
1678 WINBOOL fCloseHandleOnRelease) = 0;
1679
1680 virtual HRESULT STDMETHODCALLTYPE Wait(
1681 DWORD dwMilliseconds) = 0;
1682
1683 virtual HANDLE STDMETHODCALLTYPE GetEventHandle(
1684 ) = 0;
1685
1686};
1687#ifdef __CRT_UUID_DECL
1688__CRT_UUID_DECL(ISpNotifyTranslator, 0xaca16614, 0x5d3d, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
1689#endif
1690#else
1691typedef struct ISpNotifyTranslatorVtbl {
1692 BEGIN_INTERFACE
1693
1694 /*** IUnknown methods ***/
1695 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1696 ISpNotifyTranslator *This,
1697 REFIID riid,
1698 void **ppvObject);
1699
1700 ULONG (STDMETHODCALLTYPE *AddRef)(
1701 ISpNotifyTranslator *This);
1702
1703 ULONG (STDMETHODCALLTYPE *Release)(
1704 ISpNotifyTranslator *This);
1705
1706 /*** ISpNotifySink methods ***/
1707 HRESULT (STDMETHODCALLTYPE *Notify)(
1708 ISpNotifyTranslator *This);
1709
1710 /*** ISpNotifyTranslator methods ***/
1711 HRESULT (STDMETHODCALLTYPE *InitWindowMessage)(
1712 ISpNotifyTranslator *This,
1713 HWND hWnd,
1714 UINT Msg,
1715 WPARAM wParam,
1716 LPARAM lParam);
1717
1718 HRESULT (STDMETHODCALLTYPE *InitCallback)(
1719 ISpNotifyTranslator *This,
1720 SPNOTIFYCALLBACK *pfnCallback,
1721 WPARAM wParam,
1722 LPARAM lParam);
1723
1724 HRESULT (STDMETHODCALLTYPE *InitSpNotifyCallback)(
1725 ISpNotifyTranslator *This,
1726 ISpNotifyCallback *pSpCallback,
1727 WPARAM wParam,
1728 LPARAM lParam);
1729
1730 HRESULT (STDMETHODCALLTYPE *InitWin32Event)(
1731 ISpNotifyTranslator *This,
1732 HANDLE hEvent,
1733 WINBOOL fCloseHandleOnRelease);
1734
1735 HRESULT (STDMETHODCALLTYPE *Wait)(
1736 ISpNotifyTranslator *This,
1737 DWORD dwMilliseconds);
1738
1739 HANDLE (STDMETHODCALLTYPE *GetEventHandle)(
1740 ISpNotifyTranslator *This);
1741
1742 END_INTERFACE
1743} ISpNotifyTranslatorVtbl;
1744
1745interface ISpNotifyTranslator {
1746 CONST_VTBL ISpNotifyTranslatorVtbl* lpVtbl;
1747};
1748
1749#ifdef COBJMACROS
1750#ifndef WIDL_C_INLINE_WRAPPERS
1751/*** IUnknown methods ***/
1752#define ISpNotifyTranslator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1753#define ISpNotifyTranslator_AddRef(This) (This)->lpVtbl->AddRef(This)
1754#define ISpNotifyTranslator_Release(This) (This)->lpVtbl->Release(This)
1755/*** ISpNotifySink methods ***/
1756#define ISpNotifyTranslator_Notify(This) (This)->lpVtbl->Notify(This)
1757/*** ISpNotifyTranslator methods ***/
1758#define ISpNotifyTranslator_InitWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->InitWindowMessage(This,hWnd,Msg,wParam,lParam)
1759#define ISpNotifyTranslator_InitCallback(This,pfnCallback,wParam,lParam) (This)->lpVtbl->InitCallback(This,pfnCallback,wParam,lParam)
1760#define ISpNotifyTranslator_InitSpNotifyCallback(This,pSpCallback,wParam,lParam) (This)->lpVtbl->InitSpNotifyCallback(This,pSpCallback,wParam,lParam)
1761#define ISpNotifyTranslator_InitWin32Event(This,hEvent,fCloseHandleOnRelease) (This)->lpVtbl->InitWin32Event(This,hEvent,fCloseHandleOnRelease)
1762#define ISpNotifyTranslator_Wait(This,dwMilliseconds) (This)->lpVtbl->Wait(This,dwMilliseconds)
1763#define ISpNotifyTranslator_GetEventHandle(This) (This)->lpVtbl->GetEventHandle(This)
1764#else
1765/*** IUnknown methods ***/
1766static inline HRESULT ISpNotifyTranslator_QueryInterface(ISpNotifyTranslator* This,REFIID riid,void **ppvObject) {
1767 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1768}
1769static inline ULONG ISpNotifyTranslator_AddRef(ISpNotifyTranslator* This) {
1770 return This->lpVtbl->AddRef(This);
1771}
1772static inline ULONG ISpNotifyTranslator_Release(ISpNotifyTranslator* This) {
1773 return This->lpVtbl->Release(This);
1774}
1775/*** ISpNotifySink methods ***/
1776static inline HRESULT ISpNotifyTranslator_Notify(ISpNotifyTranslator* This) {
1777 return This->lpVtbl->Notify(This);
1778}
1779/*** ISpNotifyTranslator methods ***/
1780static inline HRESULT ISpNotifyTranslator_InitWindowMessage(ISpNotifyTranslator* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
1781 return This->lpVtbl->InitWindowMessage(This,hWnd,Msg,wParam,lParam);
1782}
1783static inline HRESULT ISpNotifyTranslator_InitCallback(ISpNotifyTranslator* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
1784 return This->lpVtbl->InitCallback(This,pfnCallback,wParam,lParam);
1785}
1786static inline HRESULT ISpNotifyTranslator_InitSpNotifyCallback(ISpNotifyTranslator* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
1787 return This->lpVtbl->InitSpNotifyCallback(This,pSpCallback,wParam,lParam);
1788}
1789static inline HRESULT ISpNotifyTranslator_InitWin32Event(ISpNotifyTranslator* This,HANDLE hEvent,WINBOOL fCloseHandleOnRelease) {
1790 return This->lpVtbl->InitWin32Event(This,hEvent,fCloseHandleOnRelease);
1791}
1792static inline HRESULT ISpNotifyTranslator_Wait(ISpNotifyTranslator* This,DWORD dwMilliseconds) {
1793 return This->lpVtbl->Wait(This,dwMilliseconds);
1794}
1795static inline HANDLE ISpNotifyTranslator_GetEventHandle(ISpNotifyTranslator* This) {
1796 return This->lpVtbl->GetEventHandle(This);
1797}
1798#endif
1799#endif
1800
1801#endif
1802
1803
1804#endif /* __ISpNotifyTranslator_INTERFACE_DEFINED__ */
1805
1806/*****************************************************************************
1807 * ISpDataKey interface
1808 */
1809#ifndef __ISpDataKey_INTERFACE_DEFINED__
1810#define __ISpDataKey_INTERFACE_DEFINED__
1811
1812DEFINE_GUID(IID_ISpDataKey, 0x14056581, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
1813#if defined(__cplusplus) && !defined(CINTERFACE)
1814MIDL_INTERFACE("14056581-e16c-11d2-bb90-00c04f8ee6c0")
1815ISpDataKey : public IUnknown
1816{
1817 virtual HRESULT STDMETHODCALLTYPE SetData(
1818 LPCWSTR pszValueName,
1819 ULONG cbData,
1820 const BYTE *pData) = 0;
1821
1822 virtual HRESULT STDMETHODCALLTYPE GetData(
1823 LPCWSTR pszValueName,
1824 ULONG *pcbData,
1825 BYTE *pData) = 0;
1826
1827 virtual HRESULT STDMETHODCALLTYPE SetStringValue(
1828 LPCWSTR pszValueName,
1829 LPCWSTR pszValue) = 0;
1830
1831 virtual HRESULT STDMETHODCALLTYPE GetStringValue(
1832 LPCWSTR pszValueName,
1833 LPWSTR *ppszValue) = 0;
1834
1835 virtual HRESULT STDMETHODCALLTYPE SetDWORD(
1836 LPCWSTR pszValueName,
1837 DWORD dwValue) = 0;
1838
1839 virtual HRESULT STDMETHODCALLTYPE GetDWORD(
1840 LPCWSTR pszValueName,
1841 DWORD *pdwValue) = 0;
1842
1843 virtual HRESULT STDMETHODCALLTYPE OpenKey(
1844 LPCWSTR pszSubKeyName,
1845 ISpDataKey **ppSubKey) = 0;
1846
1847 virtual HRESULT STDMETHODCALLTYPE CreateKey(
1848 LPCWSTR pszSubKey,
1849 ISpDataKey **ppSubKey) = 0;
1850
1851 virtual HRESULT STDMETHODCALLTYPE DeleteKey(
1852 LPCWSTR pszSubKey) = 0;
1853
1854 virtual HRESULT STDMETHODCALLTYPE DeleteValue(
1855 LPCWSTR pszValueName) = 0;
1856
1857 virtual HRESULT STDMETHODCALLTYPE EnumKeys(
1858 ULONG Index,
1859 LPWSTR *ppszSubKeyName) = 0;
1860
1861 virtual HRESULT STDMETHODCALLTYPE EnumValues(
1862 ULONG Index,
1863 LPWSTR *ppszValueName) = 0;
1864
1865};
1866#ifdef __CRT_UUID_DECL
1867__CRT_UUID_DECL(ISpDataKey, 0x14056581, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
1868#endif
1869#else
1870typedef struct ISpDataKeyVtbl {
1871 BEGIN_INTERFACE
1872
1873 /*** IUnknown methods ***/
1874 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1875 ISpDataKey *This,
1876 REFIID riid,
1877 void **ppvObject);
1878
1879 ULONG (STDMETHODCALLTYPE *AddRef)(
1880 ISpDataKey *This);
1881
1882 ULONG (STDMETHODCALLTYPE *Release)(
1883 ISpDataKey *This);
1884
1885 /*** ISpDataKey methods ***/
1886 HRESULT (STDMETHODCALLTYPE *SetData)(
1887 ISpDataKey *This,
1888 LPCWSTR pszValueName,
1889 ULONG cbData,
1890 const BYTE *pData);
1891
1892 HRESULT (STDMETHODCALLTYPE *GetData)(
1893 ISpDataKey *This,
1894 LPCWSTR pszValueName,
1895 ULONG *pcbData,
1896 BYTE *pData);
1897
1898 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
1899 ISpDataKey *This,
1900 LPCWSTR pszValueName,
1901 LPCWSTR pszValue);
1902
1903 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
1904 ISpDataKey *This,
1905 LPCWSTR pszValueName,
1906 LPWSTR *ppszValue);
1907
1908 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
1909 ISpDataKey *This,
1910 LPCWSTR pszValueName,
1911 DWORD dwValue);
1912
1913 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
1914 ISpDataKey *This,
1915 LPCWSTR pszValueName,
1916 DWORD *pdwValue);
1917
1918 HRESULT (STDMETHODCALLTYPE *OpenKey)(
1919 ISpDataKey *This,
1920 LPCWSTR pszSubKeyName,
1921 ISpDataKey **ppSubKey);
1922
1923 HRESULT (STDMETHODCALLTYPE *CreateKey)(
1924 ISpDataKey *This,
1925 LPCWSTR pszSubKey,
1926 ISpDataKey **ppSubKey);
1927
1928 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
1929 ISpDataKey *This,
1930 LPCWSTR pszSubKey);
1931
1932 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
1933 ISpDataKey *This,
1934 LPCWSTR pszValueName);
1935
1936 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
1937 ISpDataKey *This,
1938 ULONG Index,
1939 LPWSTR *ppszSubKeyName);
1940
1941 HRESULT (STDMETHODCALLTYPE *EnumValues)(
1942 ISpDataKey *This,
1943 ULONG Index,
1944 LPWSTR *ppszValueName);
1945
1946 END_INTERFACE
1947} ISpDataKeyVtbl;
1948
1949interface ISpDataKey {
1950 CONST_VTBL ISpDataKeyVtbl* lpVtbl;
1951};
1952
1953#ifdef COBJMACROS
1954#ifndef WIDL_C_INLINE_WRAPPERS
1955/*** IUnknown methods ***/
1956#define ISpDataKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1957#define ISpDataKey_AddRef(This) (This)->lpVtbl->AddRef(This)
1958#define ISpDataKey_Release(This) (This)->lpVtbl->Release(This)
1959/*** ISpDataKey methods ***/
1960#define ISpDataKey_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
1961#define ISpDataKey_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
1962#define ISpDataKey_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
1963#define ISpDataKey_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
1964#define ISpDataKey_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
1965#define ISpDataKey_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
1966#define ISpDataKey_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
1967#define ISpDataKey_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
1968#define ISpDataKey_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
1969#define ISpDataKey_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
1970#define ISpDataKey_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
1971#define ISpDataKey_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
1972#else
1973/*** IUnknown methods ***/
1974static inline HRESULT ISpDataKey_QueryInterface(ISpDataKey* This,REFIID riid,void **ppvObject) {
1975 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1976}
1977static inline ULONG ISpDataKey_AddRef(ISpDataKey* This) {
1978 return This->lpVtbl->AddRef(This);
1979}
1980static inline ULONG ISpDataKey_Release(ISpDataKey* This) {
1981 return This->lpVtbl->Release(This);
1982}
1983/*** ISpDataKey methods ***/
1984static inline HRESULT ISpDataKey_SetData(ISpDataKey* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
1985 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
1986}
1987static inline HRESULT ISpDataKey_GetData(ISpDataKey* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
1988 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
1989}
1990static inline HRESULT ISpDataKey_SetStringValue(ISpDataKey* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
1991 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
1992}
1993static inline HRESULT ISpDataKey_GetStringValue(ISpDataKey* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
1994 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
1995}
1996static inline HRESULT ISpDataKey_SetDWORD(ISpDataKey* This,LPCWSTR pszValueName,DWORD dwValue) {
1997 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
1998}
1999static inline HRESULT ISpDataKey_GetDWORD(ISpDataKey* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2000 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2001}
2002static inline HRESULT ISpDataKey_OpenKey(ISpDataKey* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2003 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2004}
2005static inline HRESULT ISpDataKey_CreateKey(ISpDataKey* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2006 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2007}
2008static inline HRESULT ISpDataKey_DeleteKey(ISpDataKey* This,LPCWSTR pszSubKey) {
2009 return This->lpVtbl->DeleteKey(This,pszSubKey);
2010}
2011static inline HRESULT ISpDataKey_DeleteValue(ISpDataKey* This,LPCWSTR pszValueName) {
2012 return This->lpVtbl->DeleteValue(This,pszValueName);
2013}
2014static inline HRESULT ISpDataKey_EnumKeys(ISpDataKey* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2015 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2016}
2017static inline HRESULT ISpDataKey_EnumValues(ISpDataKey* This,ULONG Index,LPWSTR *ppszValueName) {
2018 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2019}
2020#endif
2021#endif
2022
2023#endif
2024
2025
2026#endif /* __ISpDataKey_INTERFACE_DEFINED__ */
2027
2028/*****************************************************************************
2029 * ISpObjectWithToken interface
2030 */
2031#ifndef __ISpObjectWithToken_INTERFACE_DEFINED__
2032#define __ISpObjectWithToken_INTERFACE_DEFINED__
2033
2034DEFINE_GUID(IID_ISpObjectWithToken, 0x5b559f40, 0xe952, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
2035#if defined(__cplusplus) && !defined(CINTERFACE)
2036MIDL_INTERFACE("5b559f40-e952-11d2-bb91-00c04f8ee6c0")
2037ISpObjectWithToken : public IUnknown
2038{
2039 virtual HRESULT STDMETHODCALLTYPE SetObjectToken(
2040 ISpObjectToken *pToken) = 0;
2041
2042 virtual HRESULT STDMETHODCALLTYPE GetObjectToken(
2043 ISpObjectToken **ppToken) = 0;
2044
2045};
2046#ifdef __CRT_UUID_DECL
2047__CRT_UUID_DECL(ISpObjectWithToken, 0x5b559f40, 0xe952, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
2048#endif
2049#else
2050typedef struct ISpObjectWithTokenVtbl {
2051 BEGIN_INTERFACE
2052
2053 /*** IUnknown methods ***/
2054 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2055 ISpObjectWithToken *This,
2056 REFIID riid,
2057 void **ppvObject);
2058
2059 ULONG (STDMETHODCALLTYPE *AddRef)(
2060 ISpObjectWithToken *This);
2061
2062 ULONG (STDMETHODCALLTYPE *Release)(
2063 ISpObjectWithToken *This);
2064
2065 /*** ISpObjectWithToken methods ***/
2066 HRESULT (STDMETHODCALLTYPE *SetObjectToken)(
2067 ISpObjectWithToken *This,
2068 ISpObjectToken *pToken);
2069
2070 HRESULT (STDMETHODCALLTYPE *GetObjectToken)(
2071 ISpObjectWithToken *This,
2072 ISpObjectToken **ppToken);
2073
2074 END_INTERFACE
2075} ISpObjectWithTokenVtbl;
2076
2077interface ISpObjectWithToken {
2078 CONST_VTBL ISpObjectWithTokenVtbl* lpVtbl;
2079};
2080
2081#ifdef COBJMACROS
2082#ifndef WIDL_C_INLINE_WRAPPERS
2083/*** IUnknown methods ***/
2084#define ISpObjectWithToken_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2085#define ISpObjectWithToken_AddRef(This) (This)->lpVtbl->AddRef(This)
2086#define ISpObjectWithToken_Release(This) (This)->lpVtbl->Release(This)
2087/*** ISpObjectWithToken methods ***/
2088#define ISpObjectWithToken_SetObjectToken(This,pToken) (This)->lpVtbl->SetObjectToken(This,pToken)
2089#define ISpObjectWithToken_GetObjectToken(This,ppToken) (This)->lpVtbl->GetObjectToken(This,ppToken)
2090#else
2091/*** IUnknown methods ***/
2092static inline HRESULT ISpObjectWithToken_QueryInterface(ISpObjectWithToken* This,REFIID riid,void **ppvObject) {
2093 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2094}
2095static inline ULONG ISpObjectWithToken_AddRef(ISpObjectWithToken* This) {
2096 return This->lpVtbl->AddRef(This);
2097}
2098static inline ULONG ISpObjectWithToken_Release(ISpObjectWithToken* This) {
2099 return This->lpVtbl->Release(This);
2100}
2101/*** ISpObjectWithToken methods ***/
2102static inline HRESULT ISpObjectWithToken_SetObjectToken(ISpObjectWithToken* This,ISpObjectToken *pToken) {
2103 return This->lpVtbl->SetObjectToken(This,pToken);
2104}
2105static inline HRESULT ISpObjectWithToken_GetObjectToken(ISpObjectWithToken* This,ISpObjectToken **ppToken) {
2106 return This->lpVtbl->GetObjectToken(This,ppToken);
2107}
2108#endif
2109#endif
2110
2111#endif
2112
2113
2114#endif /* __ISpObjectWithToken_INTERFACE_DEFINED__ */
2115
2116/*****************************************************************************
2117 * IEnumSpObjectTokens interface
2118 */
2119#ifndef __IEnumSpObjectTokens_INTERFACE_DEFINED__
2120#define __IEnumSpObjectTokens_INTERFACE_DEFINED__
2121
2122DEFINE_GUID(IID_IEnumSpObjectTokens, 0x06b64f9e, 0x7fda, 0x11d2, 0xb4,0xf2, 0x00,0xc0,0x4f,0x79,0x73,0x96);
2123#if defined(__cplusplus) && !defined(CINTERFACE)
2124MIDL_INTERFACE("06b64f9e-7fda-11d2-b4f2-00c04f797396")
2125IEnumSpObjectTokens : public IUnknown
2126{
2127 virtual HRESULT STDMETHODCALLTYPE Next(
2128 ULONG celt,
2129 ISpObjectToken **pelt,
2130 ULONG *pceltFetched) = 0;
2131
2132 virtual HRESULT STDMETHODCALLTYPE Skip(
2133 ULONG celt) = 0;
2134
2135 virtual HRESULT STDMETHODCALLTYPE Reset(
2136 ) = 0;
2137
2138 virtual HRESULT STDMETHODCALLTYPE Clone(
2139 IEnumSpObjectTokens **ppEnum) = 0;
2140
2141 virtual HRESULT STDMETHODCALLTYPE Item(
2142 ULONG Index,
2143 ISpObjectToken **ppToken) = 0;
2144
2145 virtual HRESULT STDMETHODCALLTYPE GetCount(
2146 ULONG *pCount) = 0;
2147
2148};
2149#ifdef __CRT_UUID_DECL
2150__CRT_UUID_DECL(IEnumSpObjectTokens, 0x06b64f9e, 0x7fda, 0x11d2, 0xb4,0xf2, 0x00,0xc0,0x4f,0x79,0x73,0x96)
2151#endif
2152#else
2153typedef struct IEnumSpObjectTokensVtbl {
2154 BEGIN_INTERFACE
2155
2156 /*** IUnknown methods ***/
2157 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2158 IEnumSpObjectTokens *This,
2159 REFIID riid,
2160 void **ppvObject);
2161
2162 ULONG (STDMETHODCALLTYPE *AddRef)(
2163 IEnumSpObjectTokens *This);
2164
2165 ULONG (STDMETHODCALLTYPE *Release)(
2166 IEnumSpObjectTokens *This);
2167
2168 /*** IEnumSpObjectTokens methods ***/
2169 HRESULT (STDMETHODCALLTYPE *Next)(
2170 IEnumSpObjectTokens *This,
2171 ULONG celt,
2172 ISpObjectToken **pelt,
2173 ULONG *pceltFetched);
2174
2175 HRESULT (STDMETHODCALLTYPE *Skip)(
2176 IEnumSpObjectTokens *This,
2177 ULONG celt);
2178
2179 HRESULT (STDMETHODCALLTYPE *Reset)(
2180 IEnumSpObjectTokens *This);
2181
2182 HRESULT (STDMETHODCALLTYPE *Clone)(
2183 IEnumSpObjectTokens *This,
2184 IEnumSpObjectTokens **ppEnum);
2185
2186 HRESULT (STDMETHODCALLTYPE *Item)(
2187 IEnumSpObjectTokens *This,
2188 ULONG Index,
2189 ISpObjectToken **ppToken);
2190
2191 HRESULT (STDMETHODCALLTYPE *GetCount)(
2192 IEnumSpObjectTokens *This,
2193 ULONG *pCount);
2194
2195 END_INTERFACE
2196} IEnumSpObjectTokensVtbl;
2197
2198interface IEnumSpObjectTokens {
2199 CONST_VTBL IEnumSpObjectTokensVtbl* lpVtbl;
2200};
2201
2202#ifdef COBJMACROS
2203#ifndef WIDL_C_INLINE_WRAPPERS
2204/*** IUnknown methods ***/
2205#define IEnumSpObjectTokens_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2206#define IEnumSpObjectTokens_AddRef(This) (This)->lpVtbl->AddRef(This)
2207#define IEnumSpObjectTokens_Release(This) (This)->lpVtbl->Release(This)
2208/*** IEnumSpObjectTokens methods ***/
2209#define IEnumSpObjectTokens_Next(This,celt,pelt,pceltFetched) (This)->lpVtbl->Next(This,celt,pelt,pceltFetched)
2210#define IEnumSpObjectTokens_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
2211#define IEnumSpObjectTokens_Reset(This) (This)->lpVtbl->Reset(This)
2212#define IEnumSpObjectTokens_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
2213#define IEnumSpObjectTokens_Item(This,Index,ppToken) (This)->lpVtbl->Item(This,Index,ppToken)
2214#define IEnumSpObjectTokens_GetCount(This,pCount) (This)->lpVtbl->GetCount(This,pCount)
2215#else
2216/*** IUnknown methods ***/
2217static inline HRESULT IEnumSpObjectTokens_QueryInterface(IEnumSpObjectTokens* This,REFIID riid,void **ppvObject) {
2218 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2219}
2220static inline ULONG IEnumSpObjectTokens_AddRef(IEnumSpObjectTokens* This) {
2221 return This->lpVtbl->AddRef(This);
2222}
2223static inline ULONG IEnumSpObjectTokens_Release(IEnumSpObjectTokens* This) {
2224 return This->lpVtbl->Release(This);
2225}
2226/*** IEnumSpObjectTokens methods ***/
2227static inline HRESULT IEnumSpObjectTokens_Next(IEnumSpObjectTokens* This,ULONG celt,ISpObjectToken **pelt,ULONG *pceltFetched) {
2228 return This->lpVtbl->Next(This,celt,pelt,pceltFetched);
2229}
2230static inline HRESULT IEnumSpObjectTokens_Skip(IEnumSpObjectTokens* This,ULONG celt) {
2231 return This->lpVtbl->Skip(This,celt);
2232}
2233static inline HRESULT IEnumSpObjectTokens_Reset(IEnumSpObjectTokens* This) {
2234 return This->lpVtbl->Reset(This);
2235}
2236static inline HRESULT IEnumSpObjectTokens_Clone(IEnumSpObjectTokens* This,IEnumSpObjectTokens **ppEnum) {
2237 return This->lpVtbl->Clone(This,ppEnum);
2238}
2239static inline HRESULT IEnumSpObjectTokens_Item(IEnumSpObjectTokens* This,ULONG Index,ISpObjectToken **ppToken) {
2240 return This->lpVtbl->Item(This,Index,ppToken);
2241}
2242static inline HRESULT IEnumSpObjectTokens_GetCount(IEnumSpObjectTokens* This,ULONG *pCount) {
2243 return This->lpVtbl->GetCount(This,pCount);
2244}
2245#endif
2246#endif
2247
2248#endif
2249
2250
2251#endif /* __IEnumSpObjectTokens_INTERFACE_DEFINED__ */
2252
2253/*****************************************************************************
2254 * ISpRegDataKey interface
2255 */
2256#ifndef __ISpRegDataKey_INTERFACE_DEFINED__
2257#define __ISpRegDataKey_INTERFACE_DEFINED__
2258
2259DEFINE_GUID(IID_ISpRegDataKey, 0x92a66e2b, 0xc830, 0x4149, 0x83,0xdf, 0x6f,0xc2,0xba,0x1e,0x7a,0x5b);
2260#if defined(__cplusplus) && !defined(CINTERFACE)
2261MIDL_INTERFACE("92a66e2b-c830-4149-83df-6fc2ba1e7a5b")
2262ISpRegDataKey : public ISpDataKey
2263{
2264 virtual HRESULT STDMETHODCALLTYPE SetKey(
2265 HKEY hkey,
2266 WINBOOL fReadOnly) = 0;
2267
2268};
2269#ifdef __CRT_UUID_DECL
2270__CRT_UUID_DECL(ISpRegDataKey, 0x92a66e2b, 0xc830, 0x4149, 0x83,0xdf, 0x6f,0xc2,0xba,0x1e,0x7a,0x5b)
2271#endif
2272#else
2273typedef struct ISpRegDataKeyVtbl {
2274 BEGIN_INTERFACE
2275
2276 /*** IUnknown methods ***/
2277 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2278 ISpRegDataKey *This,
2279 REFIID riid,
2280 void **ppvObject);
2281
2282 ULONG (STDMETHODCALLTYPE *AddRef)(
2283 ISpRegDataKey *This);
2284
2285 ULONG (STDMETHODCALLTYPE *Release)(
2286 ISpRegDataKey *This);
2287
2288 /*** ISpDataKey methods ***/
2289 HRESULT (STDMETHODCALLTYPE *SetData)(
2290 ISpRegDataKey *This,
2291 LPCWSTR pszValueName,
2292 ULONG cbData,
2293 const BYTE *pData);
2294
2295 HRESULT (STDMETHODCALLTYPE *GetData)(
2296 ISpRegDataKey *This,
2297 LPCWSTR pszValueName,
2298 ULONG *pcbData,
2299 BYTE *pData);
2300
2301 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
2302 ISpRegDataKey *This,
2303 LPCWSTR pszValueName,
2304 LPCWSTR pszValue);
2305
2306 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2307 ISpRegDataKey *This,
2308 LPCWSTR pszValueName,
2309 LPWSTR *ppszValue);
2310
2311 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
2312 ISpRegDataKey *This,
2313 LPCWSTR pszValueName,
2314 DWORD dwValue);
2315
2316 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
2317 ISpRegDataKey *This,
2318 LPCWSTR pszValueName,
2319 DWORD *pdwValue);
2320
2321 HRESULT (STDMETHODCALLTYPE *OpenKey)(
2322 ISpRegDataKey *This,
2323 LPCWSTR pszSubKeyName,
2324 ISpDataKey **ppSubKey);
2325
2326 HRESULT (STDMETHODCALLTYPE *CreateKey)(
2327 ISpRegDataKey *This,
2328 LPCWSTR pszSubKey,
2329 ISpDataKey **ppSubKey);
2330
2331 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
2332 ISpRegDataKey *This,
2333 LPCWSTR pszSubKey);
2334
2335 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
2336 ISpRegDataKey *This,
2337 LPCWSTR pszValueName);
2338
2339 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
2340 ISpRegDataKey *This,
2341 ULONG Index,
2342 LPWSTR *ppszSubKeyName);
2343
2344 HRESULT (STDMETHODCALLTYPE *EnumValues)(
2345 ISpRegDataKey *This,
2346 ULONG Index,
2347 LPWSTR *ppszValueName);
2348
2349 /*** ISpRegDataKey methods ***/
2350 HRESULT (STDMETHODCALLTYPE *SetKey)(
2351 ISpRegDataKey *This,
2352 HKEY hkey,
2353 WINBOOL fReadOnly);
2354
2355 END_INTERFACE
2356} ISpRegDataKeyVtbl;
2357
2358interface ISpRegDataKey {
2359 CONST_VTBL ISpRegDataKeyVtbl* lpVtbl;
2360};
2361
2362#ifdef COBJMACROS
2363#ifndef WIDL_C_INLINE_WRAPPERS
2364/*** IUnknown methods ***/
2365#define ISpRegDataKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2366#define ISpRegDataKey_AddRef(This) (This)->lpVtbl->AddRef(This)
2367#define ISpRegDataKey_Release(This) (This)->lpVtbl->Release(This)
2368/*** ISpDataKey methods ***/
2369#define ISpRegDataKey_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
2370#define ISpRegDataKey_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
2371#define ISpRegDataKey_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
2372#define ISpRegDataKey_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
2373#define ISpRegDataKey_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
2374#define ISpRegDataKey_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
2375#define ISpRegDataKey_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
2376#define ISpRegDataKey_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
2377#define ISpRegDataKey_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
2378#define ISpRegDataKey_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
2379#define ISpRegDataKey_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
2380#define ISpRegDataKey_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
2381/*** ISpRegDataKey methods ***/
2382#define ISpRegDataKey_SetKey(This,hkey,fReadOnly) (This)->lpVtbl->SetKey(This,hkey,fReadOnly)
2383#else
2384/*** IUnknown methods ***/
2385static inline HRESULT ISpRegDataKey_QueryInterface(ISpRegDataKey* This,REFIID riid,void **ppvObject) {
2386 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2387}
2388static inline ULONG ISpRegDataKey_AddRef(ISpRegDataKey* This) {
2389 return This->lpVtbl->AddRef(This);
2390}
2391static inline ULONG ISpRegDataKey_Release(ISpRegDataKey* This) {
2392 return This->lpVtbl->Release(This);
2393}
2394/*** ISpDataKey methods ***/
2395static inline HRESULT ISpRegDataKey_SetData(ISpRegDataKey* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
2396 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
2397}
2398static inline HRESULT ISpRegDataKey_GetData(ISpRegDataKey* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
2399 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
2400}
2401static inline HRESULT ISpRegDataKey_SetStringValue(ISpRegDataKey* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
2402 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
2403}
2404static inline HRESULT ISpRegDataKey_GetStringValue(ISpRegDataKey* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
2405 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
2406}
2407static inline HRESULT ISpRegDataKey_SetDWORD(ISpRegDataKey* This,LPCWSTR pszValueName,DWORD dwValue) {
2408 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
2409}
2410static inline HRESULT ISpRegDataKey_GetDWORD(ISpRegDataKey* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2411 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2412}
2413static inline HRESULT ISpRegDataKey_OpenKey(ISpRegDataKey* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2414 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2415}
2416static inline HRESULT ISpRegDataKey_CreateKey(ISpRegDataKey* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2417 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2418}
2419static inline HRESULT ISpRegDataKey_DeleteKey(ISpRegDataKey* This,LPCWSTR pszSubKey) {
2420 return This->lpVtbl->DeleteKey(This,pszSubKey);
2421}
2422static inline HRESULT ISpRegDataKey_DeleteValue(ISpRegDataKey* This,LPCWSTR pszValueName) {
2423 return This->lpVtbl->DeleteValue(This,pszValueName);
2424}
2425static inline HRESULT ISpRegDataKey_EnumKeys(ISpRegDataKey* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2426 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2427}
2428static inline HRESULT ISpRegDataKey_EnumValues(ISpRegDataKey* This,ULONG Index,LPWSTR *ppszValueName) {
2429 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2430}
2431/*** ISpRegDataKey methods ***/
2432static inline HRESULT ISpRegDataKey_SetKey(ISpRegDataKey* This,HKEY hkey,WINBOOL fReadOnly) {
2433 return This->lpVtbl->SetKey(This,hkey,fReadOnly);
2434}
2435#endif
2436#endif
2437
2438#endif
2439
2440
2441#endif /* __ISpRegDataKey_INTERFACE_DEFINED__ */
2442
2443/*****************************************************************************
2444 * ISpObjectTokenCategory interface
2445 */
2446#ifndef __ISpObjectTokenCategory_INTERFACE_DEFINED__
2447#define __ISpObjectTokenCategory_INTERFACE_DEFINED__
2448
2449DEFINE_GUID(IID_ISpObjectTokenCategory, 0x2d3d3845, 0x39af, 0x4850, 0xbb,0xf9, 0x40,0xb4,0x97,0x80,0x01,0x1d);
2450#if defined(__cplusplus) && !defined(CINTERFACE)
2451MIDL_INTERFACE("2d3d3845-39af-4850-bbf9-40b49780011d")
2452ISpObjectTokenCategory : public ISpDataKey
2453{
2454 virtual HRESULT STDMETHODCALLTYPE SetId(
2455 LPCWSTR pszCategoryId,
2456 WINBOOL fCreateIfNotExist) = 0;
2457
2458 virtual HRESULT STDMETHODCALLTYPE GetId(
2459 LPWSTR *ppszCoMemCategoryId) = 0;
2460
2461 virtual HRESULT STDMETHODCALLTYPE GetDataKey(
2462 SPDATAKEYLOCATION spdkl,
2463 ISpDataKey **ppDataKey) = 0;
2464
2465 virtual HRESULT STDMETHODCALLTYPE EnumTokens(
2466 LPCWSTR pzsReqAttribs,
2467 LPCWSTR pszOptAttribs,
2468 IEnumSpObjectTokens **ppEnum) = 0;
2469
2470 virtual HRESULT STDMETHODCALLTYPE SetDefaultTokenId(
2471 LPCWSTR pszTokenId) = 0;
2472
2473 virtual HRESULT STDMETHODCALLTYPE GetDefaultTokenId(
2474 LPWSTR *ppszCoMemTokenId) = 0;
2475
2476};
2477#ifdef __CRT_UUID_DECL
2478__CRT_UUID_DECL(ISpObjectTokenCategory, 0x2d3d3845, 0x39af, 0x4850, 0xbb,0xf9, 0x40,0xb4,0x97,0x80,0x01,0x1d)
2479#endif
2480#else
2481typedef struct ISpObjectTokenCategoryVtbl {
2482 BEGIN_INTERFACE
2483
2484 /*** IUnknown methods ***/
2485 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2486 ISpObjectTokenCategory *This,
2487 REFIID riid,
2488 void **ppvObject);
2489
2490 ULONG (STDMETHODCALLTYPE *AddRef)(
2491 ISpObjectTokenCategory *This);
2492
2493 ULONG (STDMETHODCALLTYPE *Release)(
2494 ISpObjectTokenCategory *This);
2495
2496 /*** ISpDataKey methods ***/
2497 HRESULT (STDMETHODCALLTYPE *SetData)(
2498 ISpObjectTokenCategory *This,
2499 LPCWSTR pszValueName,
2500 ULONG cbData,
2501 const BYTE *pData);
2502
2503 HRESULT (STDMETHODCALLTYPE *GetData)(
2504 ISpObjectTokenCategory *This,
2505 LPCWSTR pszValueName,
2506 ULONG *pcbData,
2507 BYTE *pData);
2508
2509 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
2510 ISpObjectTokenCategory *This,
2511 LPCWSTR pszValueName,
2512 LPCWSTR pszValue);
2513
2514 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2515 ISpObjectTokenCategory *This,
2516 LPCWSTR pszValueName,
2517 LPWSTR *ppszValue);
2518
2519 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
2520 ISpObjectTokenCategory *This,
2521 LPCWSTR pszValueName,
2522 DWORD dwValue);
2523
2524 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
2525 ISpObjectTokenCategory *This,
2526 LPCWSTR pszValueName,
2527 DWORD *pdwValue);
2528
2529 HRESULT (STDMETHODCALLTYPE *OpenKey)(
2530 ISpObjectTokenCategory *This,
2531 LPCWSTR pszSubKeyName,
2532 ISpDataKey **ppSubKey);
2533
2534 HRESULT (STDMETHODCALLTYPE *CreateKey)(
2535 ISpObjectTokenCategory *This,
2536 LPCWSTR pszSubKey,
2537 ISpDataKey **ppSubKey);
2538
2539 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
2540 ISpObjectTokenCategory *This,
2541 LPCWSTR pszSubKey);
2542
2543 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
2544 ISpObjectTokenCategory *This,
2545 LPCWSTR pszValueName);
2546
2547 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
2548 ISpObjectTokenCategory *This,
2549 ULONG Index,
2550 LPWSTR *ppszSubKeyName);
2551
2552 HRESULT (STDMETHODCALLTYPE *EnumValues)(
2553 ISpObjectTokenCategory *This,
2554 ULONG Index,
2555 LPWSTR *ppszValueName);
2556
2557 /*** ISpObjectTokenCategory methods ***/
2558 HRESULT (STDMETHODCALLTYPE *SetId)(
2559 ISpObjectTokenCategory *This,
2560 LPCWSTR pszCategoryId,
2561 WINBOOL fCreateIfNotExist);
2562
2563 HRESULT (STDMETHODCALLTYPE *GetId)(
2564 ISpObjectTokenCategory *This,
2565 LPWSTR *ppszCoMemCategoryId);
2566
2567 HRESULT (STDMETHODCALLTYPE *GetDataKey)(
2568 ISpObjectTokenCategory *This,
2569 SPDATAKEYLOCATION spdkl,
2570 ISpDataKey **ppDataKey);
2571
2572 HRESULT (STDMETHODCALLTYPE *EnumTokens)(
2573 ISpObjectTokenCategory *This,
2574 LPCWSTR pzsReqAttribs,
2575 LPCWSTR pszOptAttribs,
2576 IEnumSpObjectTokens **ppEnum);
2577
2578 HRESULT (STDMETHODCALLTYPE *SetDefaultTokenId)(
2579 ISpObjectTokenCategory *This,
2580 LPCWSTR pszTokenId);
2581
2582 HRESULT (STDMETHODCALLTYPE *GetDefaultTokenId)(
2583 ISpObjectTokenCategory *This,
2584 LPWSTR *ppszCoMemTokenId);
2585
2586 END_INTERFACE
2587} ISpObjectTokenCategoryVtbl;
2588
2589interface ISpObjectTokenCategory {
2590 CONST_VTBL ISpObjectTokenCategoryVtbl* lpVtbl;
2591};
2592
2593#ifdef COBJMACROS
2594#ifndef WIDL_C_INLINE_WRAPPERS
2595/*** IUnknown methods ***/
2596#define ISpObjectTokenCategory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2597#define ISpObjectTokenCategory_AddRef(This) (This)->lpVtbl->AddRef(This)
2598#define ISpObjectTokenCategory_Release(This) (This)->lpVtbl->Release(This)
2599/*** ISpDataKey methods ***/
2600#define ISpObjectTokenCategory_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
2601#define ISpObjectTokenCategory_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
2602#define ISpObjectTokenCategory_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
2603#define ISpObjectTokenCategory_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
2604#define ISpObjectTokenCategory_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
2605#define ISpObjectTokenCategory_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
2606#define ISpObjectTokenCategory_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
2607#define ISpObjectTokenCategory_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
2608#define ISpObjectTokenCategory_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
2609#define ISpObjectTokenCategory_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
2610#define ISpObjectTokenCategory_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
2611#define ISpObjectTokenCategory_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
2612/*** ISpObjectTokenCategory methods ***/
2613#define ISpObjectTokenCategory_SetId(This,pszCategoryId,fCreateIfNotExist) (This)->lpVtbl->SetId(This,pszCategoryId,fCreateIfNotExist)
2614#define ISpObjectTokenCategory_GetId(This,ppszCoMemCategoryId) (This)->lpVtbl->GetId(This,ppszCoMemCategoryId)
2615#define ISpObjectTokenCategory_GetDataKey(This,spdkl,ppDataKey) (This)->lpVtbl->GetDataKey(This,spdkl,ppDataKey)
2616#define ISpObjectTokenCategory_EnumTokens(This,pzsReqAttribs,pszOptAttribs,ppEnum) (This)->lpVtbl->EnumTokens(This,pzsReqAttribs,pszOptAttribs,ppEnum)
2617#define ISpObjectTokenCategory_SetDefaultTokenId(This,pszTokenId) (This)->lpVtbl->SetDefaultTokenId(This,pszTokenId)
2618#define ISpObjectTokenCategory_GetDefaultTokenId(This,ppszCoMemTokenId) (This)->lpVtbl->GetDefaultTokenId(This,ppszCoMemTokenId)
2619#else
2620/*** IUnknown methods ***/
2621static inline HRESULT ISpObjectTokenCategory_QueryInterface(ISpObjectTokenCategory* This,REFIID riid,void **ppvObject) {
2622 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2623}
2624static inline ULONG ISpObjectTokenCategory_AddRef(ISpObjectTokenCategory* This) {
2625 return This->lpVtbl->AddRef(This);
2626}
2627static inline ULONG ISpObjectTokenCategory_Release(ISpObjectTokenCategory* This) {
2628 return This->lpVtbl->Release(This);
2629}
2630/*** ISpDataKey methods ***/
2631static inline HRESULT ISpObjectTokenCategory_SetData(ISpObjectTokenCategory* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
2632 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
2633}
2634static inline HRESULT ISpObjectTokenCategory_GetData(ISpObjectTokenCategory* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
2635 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
2636}
2637static inline HRESULT ISpObjectTokenCategory_SetStringValue(ISpObjectTokenCategory* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
2638 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
2639}
2640static inline HRESULT ISpObjectTokenCategory_GetStringValue(ISpObjectTokenCategory* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
2641 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
2642}
2643static inline HRESULT ISpObjectTokenCategory_SetDWORD(ISpObjectTokenCategory* This,LPCWSTR pszValueName,DWORD dwValue) {
2644 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
2645}
2646static inline HRESULT ISpObjectTokenCategory_GetDWORD(ISpObjectTokenCategory* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2647 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2648}
2649static inline HRESULT ISpObjectTokenCategory_OpenKey(ISpObjectTokenCategory* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2650 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2651}
2652static inline HRESULT ISpObjectTokenCategory_CreateKey(ISpObjectTokenCategory* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2653 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2654}
2655static inline HRESULT ISpObjectTokenCategory_DeleteKey(ISpObjectTokenCategory* This,LPCWSTR pszSubKey) {
2656 return This->lpVtbl->DeleteKey(This,pszSubKey);
2657}
2658static inline HRESULT ISpObjectTokenCategory_DeleteValue(ISpObjectTokenCategory* This,LPCWSTR pszValueName) {
2659 return This->lpVtbl->DeleteValue(This,pszValueName);
2660}
2661static inline HRESULT ISpObjectTokenCategory_EnumKeys(ISpObjectTokenCategory* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2662 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2663}
2664static inline HRESULT ISpObjectTokenCategory_EnumValues(ISpObjectTokenCategory* This,ULONG Index,LPWSTR *ppszValueName) {
2665 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2666}
2667/*** ISpObjectTokenCategory methods ***/
2668static inline HRESULT ISpObjectTokenCategory_SetId(ISpObjectTokenCategory* This,LPCWSTR pszCategoryId,WINBOOL fCreateIfNotExist) {
2669 return This->lpVtbl->SetId(This,pszCategoryId,fCreateIfNotExist);
2670}
2671static inline HRESULT ISpObjectTokenCategory_GetId(ISpObjectTokenCategory* This,LPWSTR *ppszCoMemCategoryId) {
2672 return This->lpVtbl->GetId(This,ppszCoMemCategoryId);
2673}
2674static inline HRESULT ISpObjectTokenCategory_GetDataKey(ISpObjectTokenCategory* This,SPDATAKEYLOCATION spdkl,ISpDataKey **ppDataKey) {
2675 return This->lpVtbl->GetDataKey(This,spdkl,ppDataKey);
2676}
2677static inline HRESULT ISpObjectTokenCategory_EnumTokens(ISpObjectTokenCategory* This,LPCWSTR pzsReqAttribs,LPCWSTR pszOptAttribs,IEnumSpObjectTokens **ppEnum) {
2678 return This->lpVtbl->EnumTokens(This,pzsReqAttribs,pszOptAttribs,ppEnum);
2679}
2680static inline HRESULT ISpObjectTokenCategory_SetDefaultTokenId(ISpObjectTokenCategory* This,LPCWSTR pszTokenId) {
2681 return This->lpVtbl->SetDefaultTokenId(This,pszTokenId);
2682}
2683static inline HRESULT ISpObjectTokenCategory_GetDefaultTokenId(ISpObjectTokenCategory* This,LPWSTR *ppszCoMemTokenId) {
2684 return This->lpVtbl->GetDefaultTokenId(This,ppszCoMemTokenId);
2685}
2686#endif
2687#endif
2688
2689#endif
2690
2691
2692#endif /* __ISpObjectTokenCategory_INTERFACE_DEFINED__ */
2693
2694/*****************************************************************************
2695 * ISpObjectToken interface
2696 */
2697#ifndef __ISpObjectToken_INTERFACE_DEFINED__
2698#define __ISpObjectToken_INTERFACE_DEFINED__
2699
2700DEFINE_GUID(IID_ISpObjectToken, 0x14056589, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
2701#if defined(__cplusplus) && !defined(CINTERFACE)
2702MIDL_INTERFACE("14056589-e16c-11d2-bb90-00c04f8ee6c0")
2703ISpObjectToken : public ISpDataKey
2704{
2705 virtual HRESULT STDMETHODCALLTYPE SetId(
2706 LPCWSTR pszCategoryId,
2707 LPCWSTR pszTokenId,
2708 WINBOOL fCreateIfNotExist) = 0;
2709
2710 virtual HRESULT STDMETHODCALLTYPE GetId(
2711 LPWSTR *ppszCoMemTokenId) = 0;
2712
2713 virtual HRESULT STDMETHODCALLTYPE GetCategory(
2714 ISpObjectTokenCategory **ppTokenCategory) = 0;
2715
2716 virtual HRESULT STDMETHODCALLTYPE CreateInstance(
2717 IUnknown *pUnkOuter,
2718 DWORD dwClsContext,
2719 REFIID riid,
2720 void **ppvObject) = 0;
2721
2722 virtual HRESULT STDMETHODCALLTYPE GetStorageFileName(
2723 REFCLSID clsidCaller,
2724 LPCWSTR pszValueName,
2725 LPCWSTR pszFileNameSpecifier,
2726 ULONG nFolder,
2727 LPWSTR *ppszFilePath) = 0;
2728
2729 virtual HRESULT STDMETHODCALLTYPE RemoveStorageFileName(
2730 REFCLSID clsidCaller,
2731 LPCWSTR pszKeyName,
2732 WINBOOL fDeleteFile) = 0;
2733
2734 virtual HRESULT STDMETHODCALLTYPE Remove(
2735 const CLSID *pclsidCaller) = 0;
2736
2737 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
2738 LPCWSTR pszTypeOfUI,
2739 void *pvExtraData,
2740 ULONG cbExtraData,
2741 IUnknown *punkObject,
2742 WINBOOL *pfSupported) = 0;
2743
2744 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
2745 HWND hwndParent,
2746 LPCWSTR pszTitle,
2747 LPCWSTR pszTypeOfUI,
2748 void *pvExtraData,
2749 ULONG cbExtraData,
2750 IUnknown *punkObject) = 0;
2751
2752 virtual HRESULT STDMETHODCALLTYPE MatchesAttributes(
2753 LPCWSTR pszAttributes,
2754 WINBOOL *pfMatches) = 0;
2755
2756};
2757#ifdef __CRT_UUID_DECL
2758__CRT_UUID_DECL(ISpObjectToken, 0x14056589, 0xe16c, 0x11d2, 0xbb,0x90, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
2759#endif
2760#else
2761typedef struct ISpObjectTokenVtbl {
2762 BEGIN_INTERFACE
2763
2764 /*** IUnknown methods ***/
2765 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2766 ISpObjectToken *This,
2767 REFIID riid,
2768 void **ppvObject);
2769
2770 ULONG (STDMETHODCALLTYPE *AddRef)(
2771 ISpObjectToken *This);
2772
2773 ULONG (STDMETHODCALLTYPE *Release)(
2774 ISpObjectToken *This);
2775
2776 /*** ISpDataKey methods ***/
2777 HRESULT (STDMETHODCALLTYPE *SetData)(
2778 ISpObjectToken *This,
2779 LPCWSTR pszValueName,
2780 ULONG cbData,
2781 const BYTE *pData);
2782
2783 HRESULT (STDMETHODCALLTYPE *GetData)(
2784 ISpObjectToken *This,
2785 LPCWSTR pszValueName,
2786 ULONG *pcbData,
2787 BYTE *pData);
2788
2789 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
2790 ISpObjectToken *This,
2791 LPCWSTR pszValueName,
2792 LPCWSTR pszValue);
2793
2794 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2795 ISpObjectToken *This,
2796 LPCWSTR pszValueName,
2797 LPWSTR *ppszValue);
2798
2799 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
2800 ISpObjectToken *This,
2801 LPCWSTR pszValueName,
2802 DWORD dwValue);
2803
2804 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
2805 ISpObjectToken *This,
2806 LPCWSTR pszValueName,
2807 DWORD *pdwValue);
2808
2809 HRESULT (STDMETHODCALLTYPE *OpenKey)(
2810 ISpObjectToken *This,
2811 LPCWSTR pszSubKeyName,
2812 ISpDataKey **ppSubKey);
2813
2814 HRESULT (STDMETHODCALLTYPE *CreateKey)(
2815 ISpObjectToken *This,
2816 LPCWSTR pszSubKey,
2817 ISpDataKey **ppSubKey);
2818
2819 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
2820 ISpObjectToken *This,
2821 LPCWSTR pszSubKey);
2822
2823 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
2824 ISpObjectToken *This,
2825 LPCWSTR pszValueName);
2826
2827 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
2828 ISpObjectToken *This,
2829 ULONG Index,
2830 LPWSTR *ppszSubKeyName);
2831
2832 HRESULT (STDMETHODCALLTYPE *EnumValues)(
2833 ISpObjectToken *This,
2834 ULONG Index,
2835 LPWSTR *ppszValueName);
2836
2837 /*** ISpObjectToken methods ***/
2838 HRESULT (STDMETHODCALLTYPE *SetId)(
2839 ISpObjectToken *This,
2840 LPCWSTR pszCategoryId,
2841 LPCWSTR pszTokenId,
2842 WINBOOL fCreateIfNotExist);
2843
2844 HRESULT (STDMETHODCALLTYPE *GetId)(
2845 ISpObjectToken *This,
2846 LPWSTR *ppszCoMemTokenId);
2847
2848 HRESULT (STDMETHODCALLTYPE *GetCategory)(
2849 ISpObjectToken *This,
2850 ISpObjectTokenCategory **ppTokenCategory);
2851
2852 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
2853 ISpObjectToken *This,
2854 IUnknown *pUnkOuter,
2855 DWORD dwClsContext,
2856 REFIID riid,
2857 void **ppvObject);
2858
2859 HRESULT (STDMETHODCALLTYPE *GetStorageFileName)(
2860 ISpObjectToken *This,
2861 REFCLSID clsidCaller,
2862 LPCWSTR pszValueName,
2863 LPCWSTR pszFileNameSpecifier,
2864 ULONG nFolder,
2865 LPWSTR *ppszFilePath);
2866
2867 HRESULT (STDMETHODCALLTYPE *RemoveStorageFileName)(
2868 ISpObjectToken *This,
2869 REFCLSID clsidCaller,
2870 LPCWSTR pszKeyName,
2871 WINBOOL fDeleteFile);
2872
2873 HRESULT (STDMETHODCALLTYPE *Remove)(
2874 ISpObjectToken *This,
2875 const CLSID *pclsidCaller);
2876
2877 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
2878 ISpObjectToken *This,
2879 LPCWSTR pszTypeOfUI,
2880 void *pvExtraData,
2881 ULONG cbExtraData,
2882 IUnknown *punkObject,
2883 WINBOOL *pfSupported);
2884
2885 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
2886 ISpObjectToken *This,
2887 HWND hwndParent,
2888 LPCWSTR pszTitle,
2889 LPCWSTR pszTypeOfUI,
2890 void *pvExtraData,
2891 ULONG cbExtraData,
2892 IUnknown *punkObject);
2893
2894 HRESULT (STDMETHODCALLTYPE *MatchesAttributes)(
2895 ISpObjectToken *This,
2896 LPCWSTR pszAttributes,
2897 WINBOOL *pfMatches);
2898
2899 END_INTERFACE
2900} ISpObjectTokenVtbl;
2901
2902interface ISpObjectToken {
2903 CONST_VTBL ISpObjectTokenVtbl* lpVtbl;
2904};
2905
2906#ifdef COBJMACROS
2907#ifndef WIDL_C_INLINE_WRAPPERS
2908/*** IUnknown methods ***/
2909#define ISpObjectToken_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2910#define ISpObjectToken_AddRef(This) (This)->lpVtbl->AddRef(This)
2911#define ISpObjectToken_Release(This) (This)->lpVtbl->Release(This)
2912/*** ISpDataKey methods ***/
2913#define ISpObjectToken_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
2914#define ISpObjectToken_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
2915#define ISpObjectToken_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
2916#define ISpObjectToken_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
2917#define ISpObjectToken_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
2918#define ISpObjectToken_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
2919#define ISpObjectToken_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
2920#define ISpObjectToken_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
2921#define ISpObjectToken_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
2922#define ISpObjectToken_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
2923#define ISpObjectToken_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
2924#define ISpObjectToken_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
2925/*** ISpObjectToken methods ***/
2926#define ISpObjectToken_SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist) (This)->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist)
2927#define ISpObjectToken_GetId(This,ppszCoMemTokenId) (This)->lpVtbl->GetId(This,ppszCoMemTokenId)
2928#define ISpObjectToken_GetCategory(This,ppTokenCategory) (This)->lpVtbl->GetCategory(This,ppTokenCategory)
2929#define ISpObjectToken_CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject)
2930#define ISpObjectToken_GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath) (This)->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath)
2931#define ISpObjectToken_RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile) (This)->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile)
2932#define ISpObjectToken_Remove(This,pclsidCaller) (This)->lpVtbl->Remove(This,pclsidCaller)
2933#define ISpObjectToken_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported)
2934#define ISpObjectToken_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject)
2935#define ISpObjectToken_MatchesAttributes(This,pszAttributes,pfMatches) (This)->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches)
2936#else
2937/*** IUnknown methods ***/
2938static inline HRESULT ISpObjectToken_QueryInterface(ISpObjectToken* This,REFIID riid,void **ppvObject) {
2939 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2940}
2941static inline ULONG ISpObjectToken_AddRef(ISpObjectToken* This) {
2942 return This->lpVtbl->AddRef(This);
2943}
2944static inline ULONG ISpObjectToken_Release(ISpObjectToken* This) {
2945 return This->lpVtbl->Release(This);
2946}
2947/*** ISpDataKey methods ***/
2948static inline HRESULT ISpObjectToken_SetData(ISpObjectToken* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
2949 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
2950}
2951static inline HRESULT ISpObjectToken_GetData(ISpObjectToken* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
2952 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
2953}
2954static inline HRESULT ISpObjectToken_SetStringValue(ISpObjectToken* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
2955 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
2956}
2957static inline HRESULT ISpObjectToken_GetStringValue(ISpObjectToken* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
2958 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
2959}
2960static inline HRESULT ISpObjectToken_SetDWORD(ISpObjectToken* This,LPCWSTR pszValueName,DWORD dwValue) {
2961 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
2962}
2963static inline HRESULT ISpObjectToken_GetDWORD(ISpObjectToken* This,LPCWSTR pszValueName,DWORD *pdwValue) {
2964 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
2965}
2966static inline HRESULT ISpObjectToken_OpenKey(ISpObjectToken* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
2967 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
2968}
2969static inline HRESULT ISpObjectToken_CreateKey(ISpObjectToken* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
2970 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
2971}
2972static inline HRESULT ISpObjectToken_DeleteKey(ISpObjectToken* This,LPCWSTR pszSubKey) {
2973 return This->lpVtbl->DeleteKey(This,pszSubKey);
2974}
2975static inline HRESULT ISpObjectToken_DeleteValue(ISpObjectToken* This,LPCWSTR pszValueName) {
2976 return This->lpVtbl->DeleteValue(This,pszValueName);
2977}
2978static inline HRESULT ISpObjectToken_EnumKeys(ISpObjectToken* This,ULONG Index,LPWSTR *ppszSubKeyName) {
2979 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
2980}
2981static inline HRESULT ISpObjectToken_EnumValues(ISpObjectToken* This,ULONG Index,LPWSTR *ppszValueName) {
2982 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
2983}
2984/*** ISpObjectToken methods ***/
2985static inline HRESULT ISpObjectToken_SetId(ISpObjectToken* This,LPCWSTR pszCategoryId,LPCWSTR pszTokenId,WINBOOL fCreateIfNotExist) {
2986 return This->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist);
2987}
2988static inline HRESULT ISpObjectToken_GetId(ISpObjectToken* This,LPWSTR *ppszCoMemTokenId) {
2989 return This->lpVtbl->GetId(This,ppszCoMemTokenId);
2990}
2991static inline HRESULT ISpObjectToken_GetCategory(ISpObjectToken* This,ISpObjectTokenCategory **ppTokenCategory) {
2992 return This->lpVtbl->GetCategory(This,ppTokenCategory);
2993}
2994static inline HRESULT ISpObjectToken_CreateInstance(ISpObjectToken* This,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,void **ppvObject) {
2995 return This->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject);
2996}
2997static inline HRESULT ISpObjectToken_GetStorageFileName(ISpObjectToken* This,REFCLSID clsidCaller,LPCWSTR pszValueName,LPCWSTR pszFileNameSpecifier,ULONG nFolder,LPWSTR *ppszFilePath) {
2998 return This->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath);
2999}
3000static inline HRESULT ISpObjectToken_RemoveStorageFileName(ISpObjectToken* This,REFCLSID clsidCaller,LPCWSTR pszKeyName,WINBOOL fDeleteFile) {
3001 return This->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile);
3002}
3003static inline HRESULT ISpObjectToken_Remove(ISpObjectToken* This,const CLSID *pclsidCaller) {
3004 return This->lpVtbl->Remove(This,pclsidCaller);
3005}
3006static inline HRESULT ISpObjectToken_IsUISupported(ISpObjectToken* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject,WINBOOL *pfSupported) {
3007 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported);
3008}
3009static inline HRESULT ISpObjectToken_DisplayUI(ISpObjectToken* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject) {
3010 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject);
3011}
3012static inline HRESULT ISpObjectToken_MatchesAttributes(ISpObjectToken* This,LPCWSTR pszAttributes,WINBOOL *pfMatches) {
3013 return This->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches);
3014}
3015#endif
3016#endif
3017
3018#endif
3019
3020
3021#endif /* __ISpObjectToken_INTERFACE_DEFINED__ */
3022
3023/*****************************************************************************
3024 * ISpObjectTokenInit interface
3025 */
3026#ifndef __ISpObjectTokenInit_INTERFACE_DEFINED__
3027#define __ISpObjectTokenInit_INTERFACE_DEFINED__
3028
3029DEFINE_GUID(IID_ISpObjectTokenInit, 0xb8aab0cf, 0x346f, 0x49d8, 0x94,0x99, 0xc8,0xb0,0x3f,0x16,0x1d,0x51);
3030#if defined(__cplusplus) && !defined(CINTERFACE)
3031MIDL_INTERFACE("b8aab0cf-346f-49d8-9499-c8b03f161d51")
3032ISpObjectTokenInit : public ISpObjectToken
3033{
3034 virtual HRESULT STDMETHODCALLTYPE InitFromDataKey(
3035 LPCWSTR pszCategoryId,
3036 LPCWSTR pszTokenId,
3037 ISpDataKey *pDataKey) = 0;
3038
3039};
3040#ifdef __CRT_UUID_DECL
3041__CRT_UUID_DECL(ISpObjectTokenInit, 0xb8aab0cf, 0x346f, 0x49d8, 0x94,0x99, 0xc8,0xb0,0x3f,0x16,0x1d,0x51)
3042#endif
3043#else
3044typedef struct ISpObjectTokenInitVtbl {
3045 BEGIN_INTERFACE
3046
3047 /*** IUnknown methods ***/
3048 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3049 ISpObjectTokenInit *This,
3050 REFIID riid,
3051 void **ppvObject);
3052
3053 ULONG (STDMETHODCALLTYPE *AddRef)(
3054 ISpObjectTokenInit *This);
3055
3056 ULONG (STDMETHODCALLTYPE *Release)(
3057 ISpObjectTokenInit *This);
3058
3059 /*** ISpDataKey methods ***/
3060 HRESULT (STDMETHODCALLTYPE *SetData)(
3061 ISpObjectTokenInit *This,
3062 LPCWSTR pszValueName,
3063 ULONG cbData,
3064 const BYTE *pData);
3065
3066 HRESULT (STDMETHODCALLTYPE *GetData)(
3067 ISpObjectTokenInit *This,
3068 LPCWSTR pszValueName,
3069 ULONG *pcbData,
3070 BYTE *pData);
3071
3072 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
3073 ISpObjectTokenInit *This,
3074 LPCWSTR pszValueName,
3075 LPCWSTR pszValue);
3076
3077 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
3078 ISpObjectTokenInit *This,
3079 LPCWSTR pszValueName,
3080 LPWSTR *ppszValue);
3081
3082 HRESULT (STDMETHODCALLTYPE *SetDWORD)(
3083 ISpObjectTokenInit *This,
3084 LPCWSTR pszValueName,
3085 DWORD dwValue);
3086
3087 HRESULT (STDMETHODCALLTYPE *GetDWORD)(
3088 ISpObjectTokenInit *This,
3089 LPCWSTR pszValueName,
3090 DWORD *pdwValue);
3091
3092 HRESULT (STDMETHODCALLTYPE *OpenKey)(
3093 ISpObjectTokenInit *This,
3094 LPCWSTR pszSubKeyName,
3095 ISpDataKey **ppSubKey);
3096
3097 HRESULT (STDMETHODCALLTYPE *CreateKey)(
3098 ISpObjectTokenInit *This,
3099 LPCWSTR pszSubKey,
3100 ISpDataKey **ppSubKey);
3101
3102 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
3103 ISpObjectTokenInit *This,
3104 LPCWSTR pszSubKey);
3105
3106 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
3107 ISpObjectTokenInit *This,
3108 LPCWSTR pszValueName);
3109
3110 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
3111 ISpObjectTokenInit *This,
3112 ULONG Index,
3113 LPWSTR *ppszSubKeyName);
3114
3115 HRESULT (STDMETHODCALLTYPE *EnumValues)(
3116 ISpObjectTokenInit *This,
3117 ULONG Index,
3118 LPWSTR *ppszValueName);
3119
3120 /*** ISpObjectToken methods ***/
3121 HRESULT (STDMETHODCALLTYPE *SetId)(
3122 ISpObjectTokenInit *This,
3123 LPCWSTR pszCategoryId,
3124 LPCWSTR pszTokenId,
3125 WINBOOL fCreateIfNotExist);
3126
3127 HRESULT (STDMETHODCALLTYPE *GetId)(
3128 ISpObjectTokenInit *This,
3129 LPWSTR *ppszCoMemTokenId);
3130
3131 HRESULT (STDMETHODCALLTYPE *GetCategory)(
3132 ISpObjectTokenInit *This,
3133 ISpObjectTokenCategory **ppTokenCategory);
3134
3135 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
3136 ISpObjectTokenInit *This,
3137 IUnknown *pUnkOuter,
3138 DWORD dwClsContext,
3139 REFIID riid,
3140 void **ppvObject);
3141
3142 HRESULT (STDMETHODCALLTYPE *GetStorageFileName)(
3143 ISpObjectTokenInit *This,
3144 REFCLSID clsidCaller,
3145 LPCWSTR pszValueName,
3146 LPCWSTR pszFileNameSpecifier,
3147 ULONG nFolder,
3148 LPWSTR *ppszFilePath);
3149
3150 HRESULT (STDMETHODCALLTYPE *RemoveStorageFileName)(
3151 ISpObjectTokenInit *This,
3152 REFCLSID clsidCaller,
3153 LPCWSTR pszKeyName,
3154 WINBOOL fDeleteFile);
3155
3156 HRESULT (STDMETHODCALLTYPE *Remove)(
3157 ISpObjectTokenInit *This,
3158 const CLSID *pclsidCaller);
3159
3160 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
3161 ISpObjectTokenInit *This,
3162 LPCWSTR pszTypeOfUI,
3163 void *pvExtraData,
3164 ULONG cbExtraData,
3165 IUnknown *punkObject,
3166 WINBOOL *pfSupported);
3167
3168 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
3169 ISpObjectTokenInit *This,
3170 HWND hwndParent,
3171 LPCWSTR pszTitle,
3172 LPCWSTR pszTypeOfUI,
3173 void *pvExtraData,
3174 ULONG cbExtraData,
3175 IUnknown *punkObject);
3176
3177 HRESULT (STDMETHODCALLTYPE *MatchesAttributes)(
3178 ISpObjectTokenInit *This,
3179 LPCWSTR pszAttributes,
3180 WINBOOL *pfMatches);
3181
3182 /*** ISpObjectTokenInit methods ***/
3183 HRESULT (STDMETHODCALLTYPE *InitFromDataKey)(
3184 ISpObjectTokenInit *This,
3185 LPCWSTR pszCategoryId,
3186 LPCWSTR pszTokenId,
3187 ISpDataKey *pDataKey);
3188
3189 END_INTERFACE
3190} ISpObjectTokenInitVtbl;
3191
3192interface ISpObjectTokenInit {
3193 CONST_VTBL ISpObjectTokenInitVtbl* lpVtbl;
3194};
3195
3196#ifdef COBJMACROS
3197#ifndef WIDL_C_INLINE_WRAPPERS
3198/*** IUnknown methods ***/
3199#define ISpObjectTokenInit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3200#define ISpObjectTokenInit_AddRef(This) (This)->lpVtbl->AddRef(This)
3201#define ISpObjectTokenInit_Release(This) (This)->lpVtbl->Release(This)
3202/*** ISpDataKey methods ***/
3203#define ISpObjectTokenInit_SetData(This,pszValueName,cbData,pData) (This)->lpVtbl->SetData(This,pszValueName,cbData,pData)
3204#define ISpObjectTokenInit_GetData(This,pszValueName,pcbData,pData) (This)->lpVtbl->GetData(This,pszValueName,pcbData,pData)
3205#define ISpObjectTokenInit_SetStringValue(This,pszValueName,pszValue) (This)->lpVtbl->SetStringValue(This,pszValueName,pszValue)
3206#define ISpObjectTokenInit_GetStringValue(This,pszValueName,ppszValue) (This)->lpVtbl->GetStringValue(This,pszValueName,ppszValue)
3207#define ISpObjectTokenInit_SetDWORD(This,pszValueName,dwValue) (This)->lpVtbl->SetDWORD(This,pszValueName,dwValue)
3208#define ISpObjectTokenInit_GetDWORD(This,pszValueName,pdwValue) (This)->lpVtbl->GetDWORD(This,pszValueName,pdwValue)
3209#define ISpObjectTokenInit_OpenKey(This,pszSubKeyName,ppSubKey) (This)->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey)
3210#define ISpObjectTokenInit_CreateKey(This,pszSubKey,ppSubKey) (This)->lpVtbl->CreateKey(This,pszSubKey,ppSubKey)
3211#define ISpObjectTokenInit_DeleteKey(This,pszSubKey) (This)->lpVtbl->DeleteKey(This,pszSubKey)
3212#define ISpObjectTokenInit_DeleteValue(This,pszValueName) (This)->lpVtbl->DeleteValue(This,pszValueName)
3213#define ISpObjectTokenInit_EnumKeys(This,Index,ppszSubKeyName) (This)->lpVtbl->EnumKeys(This,Index,ppszSubKeyName)
3214#define ISpObjectTokenInit_EnumValues(This,Index,ppszValueName) (This)->lpVtbl->EnumValues(This,Index,ppszValueName)
3215/*** ISpObjectToken methods ***/
3216#define ISpObjectTokenInit_SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist) (This)->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist)
3217#define ISpObjectTokenInit_GetId(This,ppszCoMemTokenId) (This)->lpVtbl->GetId(This,ppszCoMemTokenId)
3218#define ISpObjectTokenInit_GetCategory(This,ppTokenCategory) (This)->lpVtbl->GetCategory(This,ppTokenCategory)
3219#define ISpObjectTokenInit_CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject) (This)->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject)
3220#define ISpObjectTokenInit_GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath) (This)->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath)
3221#define ISpObjectTokenInit_RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile) (This)->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile)
3222#define ISpObjectTokenInit_Remove(This,pclsidCaller) (This)->lpVtbl->Remove(This,pclsidCaller)
3223#define ISpObjectTokenInit_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported)
3224#define ISpObjectTokenInit_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject)
3225#define ISpObjectTokenInit_MatchesAttributes(This,pszAttributes,pfMatches) (This)->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches)
3226/*** ISpObjectTokenInit methods ***/
3227#define ISpObjectTokenInit_InitFromDataKey(This,pszCategoryId,pszTokenId,pDataKey) (This)->lpVtbl->InitFromDataKey(This,pszCategoryId,pszTokenId,pDataKey)
3228#else
3229/*** IUnknown methods ***/
3230static inline HRESULT ISpObjectTokenInit_QueryInterface(ISpObjectTokenInit* This,REFIID riid,void **ppvObject) {
3231 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3232}
3233static inline ULONG ISpObjectTokenInit_AddRef(ISpObjectTokenInit* This) {
3234 return This->lpVtbl->AddRef(This);
3235}
3236static inline ULONG ISpObjectTokenInit_Release(ISpObjectTokenInit* This) {
3237 return This->lpVtbl->Release(This);
3238}
3239/*** ISpDataKey methods ***/
3240static inline HRESULT ISpObjectTokenInit_SetData(ISpObjectTokenInit* This,LPCWSTR pszValueName,ULONG cbData,const BYTE *pData) {
3241 return This->lpVtbl->SetData(This,pszValueName,cbData,pData);
3242}
3243static inline HRESULT ISpObjectTokenInit_GetData(ISpObjectTokenInit* This,LPCWSTR pszValueName,ULONG *pcbData,BYTE *pData) {
3244 return This->lpVtbl->GetData(This,pszValueName,pcbData,pData);
3245}
3246static inline HRESULT ISpObjectTokenInit_SetStringValue(ISpObjectTokenInit* This,LPCWSTR pszValueName,LPCWSTR pszValue) {
3247 return This->lpVtbl->SetStringValue(This,pszValueName,pszValue);
3248}
3249static inline HRESULT ISpObjectTokenInit_GetStringValue(ISpObjectTokenInit* This,LPCWSTR pszValueName,LPWSTR *ppszValue) {
3250 return This->lpVtbl->GetStringValue(This,pszValueName,ppszValue);
3251}
3252static inline HRESULT ISpObjectTokenInit_SetDWORD(ISpObjectTokenInit* This,LPCWSTR pszValueName,DWORD dwValue) {
3253 return This->lpVtbl->SetDWORD(This,pszValueName,dwValue);
3254}
3255static inline HRESULT ISpObjectTokenInit_GetDWORD(ISpObjectTokenInit* This,LPCWSTR pszValueName,DWORD *pdwValue) {
3256 return This->lpVtbl->GetDWORD(This,pszValueName,pdwValue);
3257}
3258static inline HRESULT ISpObjectTokenInit_OpenKey(ISpObjectTokenInit* This,LPCWSTR pszSubKeyName,ISpDataKey **ppSubKey) {
3259 return This->lpVtbl->OpenKey(This,pszSubKeyName,ppSubKey);
3260}
3261static inline HRESULT ISpObjectTokenInit_CreateKey(ISpObjectTokenInit* This,LPCWSTR pszSubKey,ISpDataKey **ppSubKey) {
3262 return This->lpVtbl->CreateKey(This,pszSubKey,ppSubKey);
3263}
3264static inline HRESULT ISpObjectTokenInit_DeleteKey(ISpObjectTokenInit* This,LPCWSTR pszSubKey) {
3265 return This->lpVtbl->DeleteKey(This,pszSubKey);
3266}
3267static inline HRESULT ISpObjectTokenInit_DeleteValue(ISpObjectTokenInit* This,LPCWSTR pszValueName) {
3268 return This->lpVtbl->DeleteValue(This,pszValueName);
3269}
3270static inline HRESULT ISpObjectTokenInit_EnumKeys(ISpObjectTokenInit* This,ULONG Index,LPWSTR *ppszSubKeyName) {
3271 return This->lpVtbl->EnumKeys(This,Index,ppszSubKeyName);
3272}
3273static inline HRESULT ISpObjectTokenInit_EnumValues(ISpObjectTokenInit* This,ULONG Index,LPWSTR *ppszValueName) {
3274 return This->lpVtbl->EnumValues(This,Index,ppszValueName);
3275}
3276/*** ISpObjectToken methods ***/
3277static inline HRESULT ISpObjectTokenInit_SetId(ISpObjectTokenInit* This,LPCWSTR pszCategoryId,LPCWSTR pszTokenId,WINBOOL fCreateIfNotExist) {
3278 return This->lpVtbl->SetId(This,pszCategoryId,pszTokenId,fCreateIfNotExist);
3279}
3280static inline HRESULT ISpObjectTokenInit_GetId(ISpObjectTokenInit* This,LPWSTR *ppszCoMemTokenId) {
3281 return This->lpVtbl->GetId(This,ppszCoMemTokenId);
3282}
3283static inline HRESULT ISpObjectTokenInit_GetCategory(ISpObjectTokenInit* This,ISpObjectTokenCategory **ppTokenCategory) {
3284 return This->lpVtbl->GetCategory(This,ppTokenCategory);
3285}
3286static inline HRESULT ISpObjectTokenInit_CreateInstance(ISpObjectTokenInit* This,IUnknown *pUnkOuter,DWORD dwClsContext,REFIID riid,void **ppvObject) {
3287 return This->lpVtbl->CreateInstance(This,pUnkOuter,dwClsContext,riid,ppvObject);
3288}
3289static inline HRESULT ISpObjectTokenInit_GetStorageFileName(ISpObjectTokenInit* This,REFCLSID clsidCaller,LPCWSTR pszValueName,LPCWSTR pszFileNameSpecifier,ULONG nFolder,LPWSTR *ppszFilePath) {
3290 return This->lpVtbl->GetStorageFileName(This,clsidCaller,pszValueName,pszFileNameSpecifier,nFolder,ppszFilePath);
3291}
3292static inline HRESULT ISpObjectTokenInit_RemoveStorageFileName(ISpObjectTokenInit* This,REFCLSID clsidCaller,LPCWSTR pszKeyName,WINBOOL fDeleteFile) {
3293 return This->lpVtbl->RemoveStorageFileName(This,clsidCaller,pszKeyName,fDeleteFile);
3294}
3295static inline HRESULT ISpObjectTokenInit_Remove(ISpObjectTokenInit* This,const CLSID *pclsidCaller) {
3296 return This->lpVtbl->Remove(This,pclsidCaller);
3297}
3298static inline HRESULT ISpObjectTokenInit_IsUISupported(ISpObjectTokenInit* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject,WINBOOL *pfSupported) {
3299 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,punkObject,pfSupported);
3300}
3301static inline HRESULT ISpObjectTokenInit_DisplayUI(ISpObjectTokenInit* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,IUnknown *punkObject) {
3302 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData,punkObject);
3303}
3304static inline HRESULT ISpObjectTokenInit_MatchesAttributes(ISpObjectTokenInit* This,LPCWSTR pszAttributes,WINBOOL *pfMatches) {
3305 return This->lpVtbl->MatchesAttributes(This,pszAttributes,pfMatches);
3306}
3307/*** ISpObjectTokenInit methods ***/
3308static inline HRESULT ISpObjectTokenInit_InitFromDataKey(ISpObjectTokenInit* This,LPCWSTR pszCategoryId,LPCWSTR pszTokenId,ISpDataKey *pDataKey) {
3309 return This->lpVtbl->InitFromDataKey(This,pszCategoryId,pszTokenId,pDataKey);
3310}
3311#endif
3312#endif
3313
3314#endif
3315
3316
3317#endif /* __ISpObjectTokenInit_INTERFACE_DEFINED__ */
3318
3319/*****************************************************************************
3320 * ISpResourceManager interface
3321 */
3322#ifndef __ISpResourceManager_INTERFACE_DEFINED__
3323#define __ISpResourceManager_INTERFACE_DEFINED__
3324
3325DEFINE_GUID(IID_ISpResourceManager, 0x93384e18, 0x5014, 0x43d5, 0xad,0xbb, 0xa7,0x8e,0x05,0x59,0x26,0xbd);
3326#if defined(__cplusplus) && !defined(CINTERFACE)
3327MIDL_INTERFACE("93384e18-5014-43d5-adbb-a78e055926bd")
3328ISpResourceManager : public IServiceProvider
3329{
3330 virtual HRESULT STDMETHODCALLTYPE SetObject(
3331 REFGUID guidServiceId,
3332 IUnknown *pUnkObject) = 0;
3333
3334 virtual HRESULT STDMETHODCALLTYPE GetObject(
3335 REFGUID guidServiceId,
3336 REFCLSID ObjectCLSID,
3337 REFIID ObjectIID,
3338 WINBOOL fReleaseWhenLastExternalRefReleased,
3339 void **ppObject) = 0;
3340
3341};
3342#ifdef __CRT_UUID_DECL
3343__CRT_UUID_DECL(ISpResourceManager, 0x93384e18, 0x5014, 0x43d5, 0xad,0xbb, 0xa7,0x8e,0x05,0x59,0x26,0xbd)
3344#endif
3345#else
3346typedef struct ISpResourceManagerVtbl {
3347 BEGIN_INTERFACE
3348
3349 /*** IUnknown methods ***/
3350 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3351 ISpResourceManager *This,
3352 REFIID riid,
3353 void **ppvObject);
3354
3355 ULONG (STDMETHODCALLTYPE *AddRef)(
3356 ISpResourceManager *This);
3357
3358 ULONG (STDMETHODCALLTYPE *Release)(
3359 ISpResourceManager *This);
3360
3361 /*** IServiceProvider methods ***/
3362 HRESULT (STDMETHODCALLTYPE *QueryService)(
3363 ISpResourceManager *This,
3364 REFGUID guidService,
3365 REFIID riid,
3366 void **ppvObject);
3367
3368 /*** ISpResourceManager methods ***/
3369 HRESULT (STDMETHODCALLTYPE *SetObject)(
3370 ISpResourceManager *This,
3371 REFGUID guidServiceId,
3372 IUnknown *pUnkObject);
3373
3374 HRESULT (STDMETHODCALLTYPE *GetObject)(
3375 ISpResourceManager *This,
3376 REFGUID guidServiceId,
3377 REFCLSID ObjectCLSID,
3378 REFIID ObjectIID,
3379 WINBOOL fReleaseWhenLastExternalRefReleased,
3380 void **ppObject);
3381
3382 END_INTERFACE
3383} ISpResourceManagerVtbl;
3384
3385interface ISpResourceManager {
3386 CONST_VTBL ISpResourceManagerVtbl* lpVtbl;
3387};
3388
3389#ifdef COBJMACROS
3390#ifndef WIDL_C_INLINE_WRAPPERS
3391/*** IUnknown methods ***/
3392#define ISpResourceManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3393#define ISpResourceManager_AddRef(This) (This)->lpVtbl->AddRef(This)
3394#define ISpResourceManager_Release(This) (This)->lpVtbl->Release(This)
3395/*** IServiceProvider methods ***/
3396#define ISpResourceManager_QueryService(This,guidService,riid,ppvObject) (This)->lpVtbl->QueryService(This,guidService,riid,ppvObject)
3397/*** ISpResourceManager methods ***/
3398#define ISpResourceManager_SetObject(This,guidServiceId,pUnkObject) (This)->lpVtbl->SetObject(This,guidServiceId,pUnkObject)
3399#define ISpResourceManager_GetObject(This,guidServiceId,ObjectCLSID,ObjectIID,fReleaseWhenLastExternalRefReleased,ppObject) (This)->lpVtbl->GetObject(This,guidServiceId,ObjectCLSID,ObjectIID,fReleaseWhenLastExternalRefReleased,ppObject)
3400#else
3401/*** IUnknown methods ***/
3402static inline HRESULT ISpResourceManager_QueryInterface(ISpResourceManager* This,REFIID riid,void **ppvObject) {
3403 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3404}
3405static inline ULONG ISpResourceManager_AddRef(ISpResourceManager* This) {
3406 return This->lpVtbl->AddRef(This);
3407}
3408static inline ULONG ISpResourceManager_Release(ISpResourceManager* This) {
3409 return This->lpVtbl->Release(This);
3410}
3411/*** IServiceProvider methods ***/
3412static inline HRESULT ISpResourceManager_QueryService(ISpResourceManager* This,REFGUID guidService,REFIID riid,void **ppvObject) {
3413 return This->lpVtbl->QueryService(This,guidService,riid,ppvObject);
3414}
3415/*** ISpResourceManager methods ***/
3416static inline HRESULT ISpResourceManager_SetObject(ISpResourceManager* This,REFGUID guidServiceId,IUnknown *pUnkObject) {
3417 return This->lpVtbl->SetObject(This,guidServiceId,pUnkObject);
3418}
3419static inline HRESULT ISpResourceManager_GetObject(ISpResourceManager* This,REFGUID guidServiceId,REFCLSID ObjectCLSID,REFIID ObjectIID,WINBOOL fReleaseWhenLastExternalRefReleased,void **ppObject) {
3420 return This->lpVtbl->GetObject(This,guidServiceId,ObjectCLSID,ObjectIID,fReleaseWhenLastExternalRefReleased,ppObject);
3421}
3422#endif
3423#endif
3424
3425#endif
3426
3427
3428#endif /* __ISpResourceManager_INTERFACE_DEFINED__ */
3429
3430#if 0
3431typedef struct SPEVENT {
3432 WORD eEventId;
3433 WORD elParamType;
3434 ULONG ulStreamNum;
3435 ULONGLONG ullAudioStreamOffset;
3436 WPARAM wParam;
3437 LPARAM lParam;
3438} SPEVENT;
3439typedef struct SPSERIALIZEDEVENT {
3440 WORD eEventId;
3441 WORD elParamType;
3442 ULONG ulStreamNum;
3443 ULONGLONG ullAudioStreamOffset;
3444 ULONG SerializedwParam;
3445 LONG SerializedlParam;
3446} SPSERIALIZEDEVENT;
3447typedef struct SPSERIALIZEDEVENT64 {
3448 WORD eEventId;
3449 WORD elParamType;
3450 ULONG ulStreamNum;
3451 ULONGLONG ullAudioStreamOffset;
3452 ULONGLONG SerializedwParam;
3453 LONGLONG SerializedlParam;
3454} SPSERIALIZEDEVENT64;
3455#else
3456typedef struct SPEVENT {
3457 SPEVENTENUM eEventId : 16;
3458 SPEVENTLPARAMTYPE elParamType : 16;
3459 ULONG ulStreamNum;
3460 ULONGLONG ullAudioStreamOffset;
3461 WPARAM wParam;
3462 LPARAM lParam;
3463} SPEVENT;
3464
3465typedef struct SPSERIALIZEDEVENT {
3466 SPEVENTENUM eEventId : 16;
3467 SPEVENTLPARAMTYPE elParamType : 16;
3468 ULONG ulStreamNum;
3469 ULONGLONG ullAudioStreamOffset;
3470 ULONG SerializedwParam;
3471 LONG SerializedlParam;
3472} SPSERIALIZEDEVENT;
3473
3474typedef struct SPSERIALIZEDEVENT64 {
3475 SPEVENTENUM eEventId : 16;
3476 SPEVENTLPARAMTYPE elParamType : 16;
3477 ULONG ulStreamNum;
3478 ULONGLONG ullAudioStreamOffset;
3479 ULONGLONG SerializedwParam;
3480 LONGLONG SerializedlParam;
3481} SPSERIALIZEDEVENT64;
3482#endif
3483typedef struct SPEVENTSOURCEINFO {
3484 ULONGLONG ullEventInterest;
3485 ULONGLONG ullQueuedInterest;
3486 ULONG ulCount;
3487} SPEVENTSOURCEINFO;
3488/*****************************************************************************
3489 * ISpEventSource interface
3490 */
3491#ifndef __ISpEventSource_INTERFACE_DEFINED__
3492#define __ISpEventSource_INTERFACE_DEFINED__
3493
3494DEFINE_GUID(IID_ISpEventSource, 0xbe7a9cce, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
3495#if defined(__cplusplus) && !defined(CINTERFACE)
3496MIDL_INTERFACE("be7a9cce-5f9e-11d2-960f-00c04f8ee628")
3497ISpEventSource : public ISpNotifySource
3498{
3499 virtual HRESULT STDMETHODCALLTYPE SetInterest(
3500 ULONGLONG ullEventInterest,
3501 ULONGLONG ullQueuedInterest) = 0;
3502
3503 virtual HRESULT STDMETHODCALLTYPE GetEvents(
3504 ULONG ulCount,
3505 SPEVENT *pEventArray,
3506 ULONG *pulFetched) = 0;
3507
3508 virtual HRESULT STDMETHODCALLTYPE GetInfo(
3509 SPEVENTSOURCEINFO *pInfo) = 0;
3510
3511};
3512#ifdef __CRT_UUID_DECL
3513__CRT_UUID_DECL(ISpEventSource, 0xbe7a9cce, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
3514#endif
3515#else
3516typedef struct ISpEventSourceVtbl {
3517 BEGIN_INTERFACE
3518
3519 /*** IUnknown methods ***/
3520 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3521 ISpEventSource *This,
3522 REFIID riid,
3523 void **ppvObject);
3524
3525 ULONG (STDMETHODCALLTYPE *AddRef)(
3526 ISpEventSource *This);
3527
3528 ULONG (STDMETHODCALLTYPE *Release)(
3529 ISpEventSource *This);
3530
3531 /*** ISpNotifySource methods ***/
3532 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
3533 ISpEventSource *This,
3534 ISpNotifySink *pNotifySink);
3535
3536 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
3537 ISpEventSource *This,
3538 HWND hWnd,
3539 UINT Msg,
3540 WPARAM wParam,
3541 LPARAM lParam);
3542
3543 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
3544 ISpEventSource *This,
3545 SPNOTIFYCALLBACK *pfnCallback,
3546 WPARAM wParam,
3547 LPARAM lParam);
3548
3549 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
3550 ISpEventSource *This,
3551 ISpNotifyCallback *pSpCallback,
3552 WPARAM wParam,
3553 LPARAM lParam);
3554
3555 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
3556 ISpEventSource *This);
3557
3558 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
3559 ISpEventSource *This,
3560 DWORD dwMilliseconds);
3561
3562 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
3563 ISpEventSource *This);
3564
3565 /*** ISpEventSource methods ***/
3566 HRESULT (STDMETHODCALLTYPE *SetInterest)(
3567 ISpEventSource *This,
3568 ULONGLONG ullEventInterest,
3569 ULONGLONG ullQueuedInterest);
3570
3571 HRESULT (STDMETHODCALLTYPE *GetEvents)(
3572 ISpEventSource *This,
3573 ULONG ulCount,
3574 SPEVENT *pEventArray,
3575 ULONG *pulFetched);
3576
3577 HRESULT (STDMETHODCALLTYPE *GetInfo)(
3578 ISpEventSource *This,
3579 SPEVENTSOURCEINFO *pInfo);
3580
3581 END_INTERFACE
3582} ISpEventSourceVtbl;
3583
3584interface ISpEventSource {
3585 CONST_VTBL ISpEventSourceVtbl* lpVtbl;
3586};
3587
3588#ifdef COBJMACROS
3589#ifndef WIDL_C_INLINE_WRAPPERS
3590/*** IUnknown methods ***/
3591#define ISpEventSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3592#define ISpEventSource_AddRef(This) (This)->lpVtbl->AddRef(This)
3593#define ISpEventSource_Release(This) (This)->lpVtbl->Release(This)
3594/*** ISpNotifySource methods ***/
3595#define ISpEventSource_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
3596#define ISpEventSource_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
3597#define ISpEventSource_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
3598#define ISpEventSource_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
3599#define ISpEventSource_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
3600#define ISpEventSource_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
3601#define ISpEventSource_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
3602/*** ISpEventSource methods ***/
3603#define ISpEventSource_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
3604#define ISpEventSource_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
3605#define ISpEventSource_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
3606#else
3607/*** IUnknown methods ***/
3608static inline HRESULT ISpEventSource_QueryInterface(ISpEventSource* This,REFIID riid,void **ppvObject) {
3609 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3610}
3611static inline ULONG ISpEventSource_AddRef(ISpEventSource* This) {
3612 return This->lpVtbl->AddRef(This);
3613}
3614static inline ULONG ISpEventSource_Release(ISpEventSource* This) {
3615 return This->lpVtbl->Release(This);
3616}
3617/*** ISpNotifySource methods ***/
3618static inline HRESULT ISpEventSource_SetNotifySink(ISpEventSource* This,ISpNotifySink *pNotifySink) {
3619 return This->lpVtbl->SetNotifySink(This,pNotifySink);
3620}
3621static inline HRESULT ISpEventSource_SetNotifyWindowMessage(ISpEventSource* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
3622 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
3623}
3624static inline HRESULT ISpEventSource_SetNotifyCallbackFunction(ISpEventSource* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
3625 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
3626}
3627static inline HRESULT ISpEventSource_SetNotifyCallbackInterface(ISpEventSource* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
3628 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
3629}
3630static inline HRESULT ISpEventSource_SetNotifyWin32Event(ISpEventSource* This) {
3631 return This->lpVtbl->SetNotifyWin32Event(This);
3632}
3633static inline HRESULT ISpEventSource_WaitForNotifyEvent(ISpEventSource* This,DWORD dwMilliseconds) {
3634 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
3635}
3636static inline HANDLE ISpEventSource_GetNotifyEventHandle(ISpEventSource* This) {
3637 return This->lpVtbl->GetNotifyEventHandle(This);
3638}
3639/*** ISpEventSource methods ***/
3640static inline HRESULT ISpEventSource_SetInterest(ISpEventSource* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
3641 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
3642}
3643static inline HRESULT ISpEventSource_GetEvents(ISpEventSource* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
3644 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
3645}
3646static inline HRESULT ISpEventSource_GetInfo(ISpEventSource* This,SPEVENTSOURCEINFO *pInfo) {
3647 return This->lpVtbl->GetInfo(This,pInfo);
3648}
3649#endif
3650#endif
3651
3652#endif
3653
3654
3655#endif /* __ISpEventSource_INTERFACE_DEFINED__ */
3656
3657/*****************************************************************************
3658 * ISpEventSink interface
3659 */
3660#ifndef __ISpEventSink_INTERFACE_DEFINED__
3661#define __ISpEventSink_INTERFACE_DEFINED__
3662
3663DEFINE_GUID(IID_ISpEventSink, 0xbe7a9cc9, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
3664#if defined(__cplusplus) && !defined(CINTERFACE)
3665MIDL_INTERFACE("be7a9cc9-5f9e-11d2-960f-00c04f8ee628")
3666ISpEventSink : public IUnknown
3667{
3668 virtual HRESULT STDMETHODCALLTYPE AddEvents(
3669 const SPEVENT *pEventArray,
3670 ULONG ulCount) = 0;
3671
3672 virtual HRESULT STDMETHODCALLTYPE GetEventInterest(
3673 ULONGLONG *pullEventInterest) = 0;
3674
3675};
3676#ifdef __CRT_UUID_DECL
3677__CRT_UUID_DECL(ISpEventSink, 0xbe7a9cc9, 0x5f9e, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
3678#endif
3679#else
3680typedef struct ISpEventSinkVtbl {
3681 BEGIN_INTERFACE
3682
3683 /*** IUnknown methods ***/
3684 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3685 ISpEventSink *This,
3686 REFIID riid,
3687 void **ppvObject);
3688
3689 ULONG (STDMETHODCALLTYPE *AddRef)(
3690 ISpEventSink *This);
3691
3692 ULONG (STDMETHODCALLTYPE *Release)(
3693 ISpEventSink *This);
3694
3695 /*** ISpEventSink methods ***/
3696 HRESULT (STDMETHODCALLTYPE *AddEvents)(
3697 ISpEventSink *This,
3698 const SPEVENT *pEventArray,
3699 ULONG ulCount);
3700
3701 HRESULT (STDMETHODCALLTYPE *GetEventInterest)(
3702 ISpEventSink *This,
3703 ULONGLONG *pullEventInterest);
3704
3705 END_INTERFACE
3706} ISpEventSinkVtbl;
3707
3708interface ISpEventSink {
3709 CONST_VTBL ISpEventSinkVtbl* lpVtbl;
3710};
3711
3712#ifdef COBJMACROS
3713#ifndef WIDL_C_INLINE_WRAPPERS
3714/*** IUnknown methods ***/
3715#define ISpEventSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3716#define ISpEventSink_AddRef(This) (This)->lpVtbl->AddRef(This)
3717#define ISpEventSink_Release(This) (This)->lpVtbl->Release(This)
3718/*** ISpEventSink methods ***/
3719#define ISpEventSink_AddEvents(This,pEventArray,ulCount) (This)->lpVtbl->AddEvents(This,pEventArray,ulCount)
3720#define ISpEventSink_GetEventInterest(This,pullEventInterest) (This)->lpVtbl->GetEventInterest(This,pullEventInterest)
3721#else
3722/*** IUnknown methods ***/
3723static inline HRESULT ISpEventSink_QueryInterface(ISpEventSink* This,REFIID riid,void **ppvObject) {
3724 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3725}
3726static inline ULONG ISpEventSink_AddRef(ISpEventSink* This) {
3727 return This->lpVtbl->AddRef(This);
3728}
3729static inline ULONG ISpEventSink_Release(ISpEventSink* This) {
3730 return This->lpVtbl->Release(This);
3731}
3732/*** ISpEventSink methods ***/
3733static inline HRESULT ISpEventSink_AddEvents(ISpEventSink* This,const SPEVENT *pEventArray,ULONG ulCount) {
3734 return This->lpVtbl->AddEvents(This,pEventArray,ulCount);
3735}
3736static inline HRESULT ISpEventSink_GetEventInterest(ISpEventSink* This,ULONGLONG *pullEventInterest) {
3737 return This->lpVtbl->GetEventInterest(This,pullEventInterest);
3738}
3739#endif
3740#endif
3741
3742#endif
3743
3744
3745#endif /* __ISpEventSink_INTERFACE_DEFINED__ */
3746
3747/*****************************************************************************
3748 * ISpStreamFormat interface
3749 */
3750#ifndef __ISpStreamFormat_INTERFACE_DEFINED__
3751#define __ISpStreamFormat_INTERFACE_DEFINED__
3752
3753DEFINE_GUID(IID_ISpStreamFormat, 0xbed530be, 0x2606, 0x4f4d, 0xa1,0xc0, 0x54,0xc5,0xcd,0xa5,0x56,0x6f);
3754#if defined(__cplusplus) && !defined(CINTERFACE)
3755MIDL_INTERFACE("bed530be-2606-4f4d-a1c0-54c5cda5566f")
3756ISpStreamFormat : public IStream
3757{
3758 virtual HRESULT STDMETHODCALLTYPE GetFormat(
3759 GUID *pguidFormatId,
3760 WAVEFORMATEX **ppCoMemWaveFormatEx) = 0;
3761
3762};
3763#ifdef __CRT_UUID_DECL
3764__CRT_UUID_DECL(ISpStreamFormat, 0xbed530be, 0x2606, 0x4f4d, 0xa1,0xc0, 0x54,0xc5,0xcd,0xa5,0x56,0x6f)
3765#endif
3766#else
3767typedef struct ISpStreamFormatVtbl {
3768 BEGIN_INTERFACE
3769
3770 /*** IUnknown methods ***/
3771 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3772 ISpStreamFormat *This,
3773 REFIID riid,
3774 void **ppvObject);
3775
3776 ULONG (STDMETHODCALLTYPE *AddRef)(
3777 ISpStreamFormat *This);
3778
3779 ULONG (STDMETHODCALLTYPE *Release)(
3780 ISpStreamFormat *This);
3781
3782 /*** ISequentialStream methods ***/
3783 HRESULT (STDMETHODCALLTYPE *Read)(
3784 ISpStreamFormat *This,
3785 void *pv,
3786 ULONG cb,
3787 ULONG *pcbRead);
3788
3789 HRESULT (STDMETHODCALLTYPE *Write)(
3790 ISpStreamFormat *This,
3791 const void *pv,
3792 ULONG cb,
3793 ULONG *pcbWritten);
3794
3795 /*** IStream methods ***/
3796 HRESULT (STDMETHODCALLTYPE *Seek)(
3797 ISpStreamFormat *This,
3798 LARGE_INTEGER dlibMove,
3799 DWORD dwOrigin,
3800 ULARGE_INTEGER *plibNewPosition);
3801
3802 HRESULT (STDMETHODCALLTYPE *SetSize)(
3803 ISpStreamFormat *This,
3804 ULARGE_INTEGER libNewSize);
3805
3806 HRESULT (STDMETHODCALLTYPE *CopyTo)(
3807 ISpStreamFormat *This,
3808 IStream *pstm,
3809 ULARGE_INTEGER cb,
3810 ULARGE_INTEGER *pcbRead,
3811 ULARGE_INTEGER *pcbWritten);
3812
3813 HRESULT (STDMETHODCALLTYPE *Commit)(
3814 ISpStreamFormat *This,
3815 DWORD grfCommitFlags);
3816
3817 HRESULT (STDMETHODCALLTYPE *Revert)(
3818 ISpStreamFormat *This);
3819
3820 HRESULT (STDMETHODCALLTYPE *LockRegion)(
3821 ISpStreamFormat *This,
3822 ULARGE_INTEGER libOffset,
3823 ULARGE_INTEGER cb,
3824 DWORD dwLockType);
3825
3826 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
3827 ISpStreamFormat *This,
3828 ULARGE_INTEGER libOffset,
3829 ULARGE_INTEGER cb,
3830 DWORD dwLockType);
3831
3832 HRESULT (STDMETHODCALLTYPE *Stat)(
3833 ISpStreamFormat *This,
3834 STATSTG *pstatstg,
3835 DWORD grfStatFlag);
3836
3837 HRESULT (STDMETHODCALLTYPE *Clone)(
3838 ISpStreamFormat *This,
3839 IStream **ppstm);
3840
3841 /*** ISpStreamFormat methods ***/
3842 HRESULT (STDMETHODCALLTYPE *GetFormat)(
3843 ISpStreamFormat *This,
3844 GUID *pguidFormatId,
3845 WAVEFORMATEX **ppCoMemWaveFormatEx);
3846
3847 END_INTERFACE
3848} ISpStreamFormatVtbl;
3849
3850interface ISpStreamFormat {
3851 CONST_VTBL ISpStreamFormatVtbl* lpVtbl;
3852};
3853
3854#ifdef COBJMACROS
3855#ifndef WIDL_C_INLINE_WRAPPERS
3856/*** IUnknown methods ***/
3857#define ISpStreamFormat_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3858#define ISpStreamFormat_AddRef(This) (This)->lpVtbl->AddRef(This)
3859#define ISpStreamFormat_Release(This) (This)->lpVtbl->Release(This)
3860/*** ISequentialStream methods ***/
3861#define ISpStreamFormat_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
3862#define ISpStreamFormat_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
3863/*** IStream methods ***/
3864#define ISpStreamFormat_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
3865#define ISpStreamFormat_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
3866#define ISpStreamFormat_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
3867#define ISpStreamFormat_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
3868#define ISpStreamFormat_Revert(This) (This)->lpVtbl->Revert(This)
3869#define ISpStreamFormat_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
3870#define ISpStreamFormat_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
3871#define ISpStreamFormat_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
3872#define ISpStreamFormat_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
3873/*** ISpStreamFormat methods ***/
3874#define ISpStreamFormat_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
3875#else
3876/*** IUnknown methods ***/
3877static inline HRESULT ISpStreamFormat_QueryInterface(ISpStreamFormat* This,REFIID riid,void **ppvObject) {
3878 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3879}
3880static inline ULONG ISpStreamFormat_AddRef(ISpStreamFormat* This) {
3881 return This->lpVtbl->AddRef(This);
3882}
3883static inline ULONG ISpStreamFormat_Release(ISpStreamFormat* This) {
3884 return This->lpVtbl->Release(This);
3885}
3886/*** ISequentialStream methods ***/
3887static inline HRESULT ISpStreamFormat_Read(ISpStreamFormat* This,void *pv,ULONG cb,ULONG *pcbRead) {
3888 return This->lpVtbl->Read(This,pv,cb,pcbRead);
3889}
3890static inline HRESULT ISpStreamFormat_Write(ISpStreamFormat* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
3891 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
3892}
3893/*** IStream methods ***/
3894static inline HRESULT ISpStreamFormat_Seek(ISpStreamFormat* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
3895 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
3896}
3897static inline HRESULT ISpStreamFormat_SetSize(ISpStreamFormat* This,ULARGE_INTEGER libNewSize) {
3898 return This->lpVtbl->SetSize(This,libNewSize);
3899}
3900static inline HRESULT ISpStreamFormat_CopyTo(ISpStreamFormat* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
3901 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
3902}
3903static inline HRESULT ISpStreamFormat_Commit(ISpStreamFormat* This,DWORD grfCommitFlags) {
3904 return This->lpVtbl->Commit(This,grfCommitFlags);
3905}
3906static inline HRESULT ISpStreamFormat_Revert(ISpStreamFormat* This) {
3907 return This->lpVtbl->Revert(This);
3908}
3909static inline HRESULT ISpStreamFormat_LockRegion(ISpStreamFormat* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
3910 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
3911}
3912static inline HRESULT ISpStreamFormat_UnlockRegion(ISpStreamFormat* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
3913 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
3914}
3915static inline HRESULT ISpStreamFormat_Stat(ISpStreamFormat* This,STATSTG *pstatstg,DWORD grfStatFlag) {
3916 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
3917}
3918static inline HRESULT ISpStreamFormat_Clone(ISpStreamFormat* This,IStream **ppstm) {
3919 return This->lpVtbl->Clone(This,ppstm);
3920}
3921/*** ISpStreamFormat methods ***/
3922static inline HRESULT ISpStreamFormat_GetFormat(ISpStreamFormat* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
3923 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
3924}
3925#endif
3926#endif
3927
3928#endif
3929
3930
3931#endif /* __ISpStreamFormat_INTERFACE_DEFINED__ */
3932
3933/*****************************************************************************
3934 * ISpStream interface
3935 */
3936#ifndef __ISpStream_INTERFACE_DEFINED__
3937#define __ISpStream_INTERFACE_DEFINED__
3938
3939DEFINE_GUID(IID_ISpStream, 0x12e3cca9, 0x7518, 0x44c5, 0xa5,0xe7, 0xba,0x5a,0x79,0xcb,0x92,0x9e);
3940#if defined(__cplusplus) && !defined(CINTERFACE)
3941MIDL_INTERFACE("12e3cca9-7518-44c5-a5e7-ba5a79cb929e")
3942ISpStream : public ISpStreamFormat
3943{
3944 virtual HRESULT STDMETHODCALLTYPE SetBaseStream(
3945 IStream *pStream,
3946 REFGUID rguidFormat,
3947 const WAVEFORMATEX *pWaveFormatEx) = 0;
3948
3949 virtual HRESULT STDMETHODCALLTYPE GetBaseStream(
3950 IStream **ppStream) = 0;
3951
3952 virtual HRESULT STDMETHODCALLTYPE BindToFile(
3953 LPCWSTR pszFileName,
3954 SPFILEMODE eMode,
3955 const GUID *pFormatId,
3956 const WAVEFORMATEX *pWaveFormatEx,
3957 ULONGLONG ullEventInterest) = 0;
3958
3959 virtual HRESULT STDMETHODCALLTYPE Close(
3960 ) = 0;
3961
3962};
3963#ifdef __CRT_UUID_DECL
3964__CRT_UUID_DECL(ISpStream, 0x12e3cca9, 0x7518, 0x44c5, 0xa5,0xe7, 0xba,0x5a,0x79,0xcb,0x92,0x9e)
3965#endif
3966#else
3967typedef struct ISpStreamVtbl {
3968 BEGIN_INTERFACE
3969
3970 /*** IUnknown methods ***/
3971 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3972 ISpStream *This,
3973 REFIID riid,
3974 void **ppvObject);
3975
3976 ULONG (STDMETHODCALLTYPE *AddRef)(
3977 ISpStream *This);
3978
3979 ULONG (STDMETHODCALLTYPE *Release)(
3980 ISpStream *This);
3981
3982 /*** ISequentialStream methods ***/
3983 HRESULT (STDMETHODCALLTYPE *Read)(
3984 ISpStream *This,
3985 void *pv,
3986 ULONG cb,
3987 ULONG *pcbRead);
3988
3989 HRESULT (STDMETHODCALLTYPE *Write)(
3990 ISpStream *This,
3991 const void *pv,
3992 ULONG cb,
3993 ULONG *pcbWritten);
3994
3995 /*** IStream methods ***/
3996 HRESULT (STDMETHODCALLTYPE *Seek)(
3997 ISpStream *This,
3998 LARGE_INTEGER dlibMove,
3999 DWORD dwOrigin,
4000 ULARGE_INTEGER *plibNewPosition);
4001
4002 HRESULT (STDMETHODCALLTYPE *SetSize)(
4003 ISpStream *This,
4004 ULARGE_INTEGER libNewSize);
4005
4006 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4007 ISpStream *This,
4008 IStream *pstm,
4009 ULARGE_INTEGER cb,
4010 ULARGE_INTEGER *pcbRead,
4011 ULARGE_INTEGER *pcbWritten);
4012
4013 HRESULT (STDMETHODCALLTYPE *Commit)(
4014 ISpStream *This,
4015 DWORD grfCommitFlags);
4016
4017 HRESULT (STDMETHODCALLTYPE *Revert)(
4018 ISpStream *This);
4019
4020 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4021 ISpStream *This,
4022 ULARGE_INTEGER libOffset,
4023 ULARGE_INTEGER cb,
4024 DWORD dwLockType);
4025
4026 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4027 ISpStream *This,
4028 ULARGE_INTEGER libOffset,
4029 ULARGE_INTEGER cb,
4030 DWORD dwLockType);
4031
4032 HRESULT (STDMETHODCALLTYPE *Stat)(
4033 ISpStream *This,
4034 STATSTG *pstatstg,
4035 DWORD grfStatFlag);
4036
4037 HRESULT (STDMETHODCALLTYPE *Clone)(
4038 ISpStream *This,
4039 IStream **ppstm);
4040
4041 /*** ISpStreamFormat methods ***/
4042 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4043 ISpStream *This,
4044 GUID *pguidFormatId,
4045 WAVEFORMATEX **ppCoMemWaveFormatEx);
4046
4047 /*** ISpStream methods ***/
4048 HRESULT (STDMETHODCALLTYPE *SetBaseStream)(
4049 ISpStream *This,
4050 IStream *pStream,
4051 REFGUID rguidFormat,
4052 const WAVEFORMATEX *pWaveFormatEx);
4053
4054 HRESULT (STDMETHODCALLTYPE *GetBaseStream)(
4055 ISpStream *This,
4056 IStream **ppStream);
4057
4058 HRESULT (STDMETHODCALLTYPE *BindToFile)(
4059 ISpStream *This,
4060 LPCWSTR pszFileName,
4061 SPFILEMODE eMode,
4062 const GUID *pFormatId,
4063 const WAVEFORMATEX *pWaveFormatEx,
4064 ULONGLONG ullEventInterest);
4065
4066 HRESULT (STDMETHODCALLTYPE *Close)(
4067 ISpStream *This);
4068
4069 END_INTERFACE
4070} ISpStreamVtbl;
4071
4072interface ISpStream {
4073 CONST_VTBL ISpStreamVtbl* lpVtbl;
4074};
4075
4076#ifdef COBJMACROS
4077#ifndef WIDL_C_INLINE_WRAPPERS
4078/*** IUnknown methods ***/
4079#define ISpStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4080#define ISpStream_AddRef(This) (This)->lpVtbl->AddRef(This)
4081#define ISpStream_Release(This) (This)->lpVtbl->Release(This)
4082/*** ISequentialStream methods ***/
4083#define ISpStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4084#define ISpStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4085/*** IStream methods ***/
4086#define ISpStream_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4087#define ISpStream_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4088#define ISpStream_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4089#define ISpStream_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4090#define ISpStream_Revert(This) (This)->lpVtbl->Revert(This)
4091#define ISpStream_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4092#define ISpStream_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4093#define ISpStream_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4094#define ISpStream_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4095/*** ISpStreamFormat methods ***/
4096#define ISpStream_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4097/*** ISpStream methods ***/
4098#define ISpStream_SetBaseStream(This,pStream,rguidFormat,pWaveFormatEx) (This)->lpVtbl->SetBaseStream(This,pStream,rguidFormat,pWaveFormatEx)
4099#define ISpStream_GetBaseStream(This,ppStream) (This)->lpVtbl->GetBaseStream(This,ppStream)
4100#define ISpStream_BindToFile(This,pszFileName,eMode,pFormatId,pWaveFormatEx,ullEventInterest) (This)->lpVtbl->BindToFile(This,pszFileName,eMode,pFormatId,pWaveFormatEx,ullEventInterest)
4101#define ISpStream_Close(This) (This)->lpVtbl->Close(This)
4102#else
4103/*** IUnknown methods ***/
4104static inline HRESULT ISpStream_QueryInterface(ISpStream* This,REFIID riid,void **ppvObject) {
4105 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4106}
4107static inline ULONG ISpStream_AddRef(ISpStream* This) {
4108 return This->lpVtbl->AddRef(This);
4109}
4110static inline ULONG ISpStream_Release(ISpStream* This) {
4111 return This->lpVtbl->Release(This);
4112}
4113/*** ISequentialStream methods ***/
4114static inline HRESULT ISpStream_Read(ISpStream* This,void *pv,ULONG cb,ULONG *pcbRead) {
4115 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4116}
4117static inline HRESULT ISpStream_Write(ISpStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4118 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
4119}
4120/*** IStream methods ***/
4121static inline HRESULT ISpStream_Seek(ISpStream* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
4122 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
4123}
4124static inline HRESULT ISpStream_SetSize(ISpStream* This,ULARGE_INTEGER libNewSize) {
4125 return This->lpVtbl->SetSize(This,libNewSize);
4126}
4127static inline HRESULT ISpStream_CopyTo(ISpStream* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
4128 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
4129}
4130static inline HRESULT ISpStream_Commit(ISpStream* This,DWORD grfCommitFlags) {
4131 return This->lpVtbl->Commit(This,grfCommitFlags);
4132}
4133static inline HRESULT ISpStream_Revert(ISpStream* This) {
4134 return This->lpVtbl->Revert(This);
4135}
4136static inline HRESULT ISpStream_LockRegion(ISpStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4137 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
4138}
4139static inline HRESULT ISpStream_UnlockRegion(ISpStream* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4140 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
4141}
4142static inline HRESULT ISpStream_Stat(ISpStream* This,STATSTG *pstatstg,DWORD grfStatFlag) {
4143 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
4144}
4145static inline HRESULT ISpStream_Clone(ISpStream* This,IStream **ppstm) {
4146 return This->lpVtbl->Clone(This,ppstm);
4147}
4148/*** ISpStreamFormat methods ***/
4149static inline HRESULT ISpStream_GetFormat(ISpStream* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4150 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
4151}
4152/*** ISpStream methods ***/
4153static inline HRESULT ISpStream_SetBaseStream(ISpStream* This,IStream *pStream,REFGUID rguidFormat,const WAVEFORMATEX *pWaveFormatEx) {
4154 return This->lpVtbl->SetBaseStream(This,pStream,rguidFormat,pWaveFormatEx);
4155}
4156static inline HRESULT ISpStream_GetBaseStream(ISpStream* This,IStream **ppStream) {
4157 return This->lpVtbl->GetBaseStream(This,ppStream);
4158}
4159static inline HRESULT ISpStream_BindToFile(ISpStream* This,LPCWSTR pszFileName,SPFILEMODE eMode,const GUID *pFormatId,const WAVEFORMATEX *pWaveFormatEx,ULONGLONG ullEventInterest) {
4160 return This->lpVtbl->BindToFile(This,pszFileName,eMode,pFormatId,pWaveFormatEx,ullEventInterest);
4161}
4162static inline HRESULT ISpStream_Close(ISpStream* This) {
4163 return This->lpVtbl->Close(This);
4164}
4165#endif
4166#endif
4167
4168#endif
4169
4170
4171#endif /* __ISpStream_INTERFACE_DEFINED__ */
4172
4173/*****************************************************************************
4174 * ISpStreamFormatConverter interface
4175 */
4176#ifndef __ISpStreamFormatConverter_INTERFACE_DEFINED__
4177#define __ISpStreamFormatConverter_INTERFACE_DEFINED__
4178
4179DEFINE_GUID(IID_ISpStreamFormatConverter, 0x678a932c, 0xea71, 0x4446, 0x9b,0x41, 0x78,0xfd,0xa6,0x28,0x0a,0x29);
4180#if defined(__cplusplus) && !defined(CINTERFACE)
4181MIDL_INTERFACE("678a932c-ea71-4446-9b41-78fda6280a29")
4182ISpStreamFormatConverter : public ISpStreamFormat
4183{
4184 virtual HRESULT STDMETHODCALLTYPE SetBaseStream(
4185 ISpStreamFormat *pStream,
4186 WINBOOL fSetFormatToBaseStreamFormat,
4187 WINBOOL fWriteToBaseStream) = 0;
4188
4189 virtual HRESULT STDMETHODCALLTYPE GetBaseStream(
4190 ISpStreamFormat **ppStream) = 0;
4191
4192 virtual HRESULT STDMETHODCALLTYPE SetFormat(
4193 REFGUID rguidFormatIdOfConvertedStream,
4194 const WAVEFORMATEX *pWaveFormatExOfConvertedStream) = 0;
4195
4196 virtual HRESULT STDMETHODCALLTYPE ResetSeekPosition(
4197 ) = 0;
4198
4199 virtual HRESULT STDMETHODCALLTYPE ScaleConvertedToBaseOffset(
4200 ULONGLONG ullOffsetConvertedStream,
4201 ULONGLONG *pullOffsetBaseStream) = 0;
4202
4203 virtual HRESULT STDMETHODCALLTYPE ScaleBaseToConvertedOffset(
4204 ULONGLONG ullOffsetBaseStream,
4205 ULONGLONG *pullOffsetConvertedStream) = 0;
4206
4207};
4208#ifdef __CRT_UUID_DECL
4209__CRT_UUID_DECL(ISpStreamFormatConverter, 0x678a932c, 0xea71, 0x4446, 0x9b,0x41, 0x78,0xfd,0xa6,0x28,0x0a,0x29)
4210#endif
4211#else
4212typedef struct ISpStreamFormatConverterVtbl {
4213 BEGIN_INTERFACE
4214
4215 /*** IUnknown methods ***/
4216 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4217 ISpStreamFormatConverter *This,
4218 REFIID riid,
4219 void **ppvObject);
4220
4221 ULONG (STDMETHODCALLTYPE *AddRef)(
4222 ISpStreamFormatConverter *This);
4223
4224 ULONG (STDMETHODCALLTYPE *Release)(
4225 ISpStreamFormatConverter *This);
4226
4227 /*** ISequentialStream methods ***/
4228 HRESULT (STDMETHODCALLTYPE *Read)(
4229 ISpStreamFormatConverter *This,
4230 void *pv,
4231 ULONG cb,
4232 ULONG *pcbRead);
4233
4234 HRESULT (STDMETHODCALLTYPE *Write)(
4235 ISpStreamFormatConverter *This,
4236 const void *pv,
4237 ULONG cb,
4238 ULONG *pcbWritten);
4239
4240 /*** IStream methods ***/
4241 HRESULT (STDMETHODCALLTYPE *Seek)(
4242 ISpStreamFormatConverter *This,
4243 LARGE_INTEGER dlibMove,
4244 DWORD dwOrigin,
4245 ULARGE_INTEGER *plibNewPosition);
4246
4247 HRESULT (STDMETHODCALLTYPE *SetSize)(
4248 ISpStreamFormatConverter *This,
4249 ULARGE_INTEGER libNewSize);
4250
4251 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4252 ISpStreamFormatConverter *This,
4253 IStream *pstm,
4254 ULARGE_INTEGER cb,
4255 ULARGE_INTEGER *pcbRead,
4256 ULARGE_INTEGER *pcbWritten);
4257
4258 HRESULT (STDMETHODCALLTYPE *Commit)(
4259 ISpStreamFormatConverter *This,
4260 DWORD grfCommitFlags);
4261
4262 HRESULT (STDMETHODCALLTYPE *Revert)(
4263 ISpStreamFormatConverter *This);
4264
4265 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4266 ISpStreamFormatConverter *This,
4267 ULARGE_INTEGER libOffset,
4268 ULARGE_INTEGER cb,
4269 DWORD dwLockType);
4270
4271 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4272 ISpStreamFormatConverter *This,
4273 ULARGE_INTEGER libOffset,
4274 ULARGE_INTEGER cb,
4275 DWORD dwLockType);
4276
4277 HRESULT (STDMETHODCALLTYPE *Stat)(
4278 ISpStreamFormatConverter *This,
4279 STATSTG *pstatstg,
4280 DWORD grfStatFlag);
4281
4282 HRESULT (STDMETHODCALLTYPE *Clone)(
4283 ISpStreamFormatConverter *This,
4284 IStream **ppstm);
4285
4286 /*** ISpStreamFormat methods ***/
4287 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4288 ISpStreamFormatConverter *This,
4289 GUID *pguidFormatId,
4290 WAVEFORMATEX **ppCoMemWaveFormatEx);
4291
4292 /*** ISpStreamFormatConverter methods ***/
4293 HRESULT (STDMETHODCALLTYPE *SetBaseStream)(
4294 ISpStreamFormatConverter *This,
4295 ISpStreamFormat *pStream,
4296 WINBOOL fSetFormatToBaseStreamFormat,
4297 WINBOOL fWriteToBaseStream);
4298
4299 HRESULT (STDMETHODCALLTYPE *GetBaseStream)(
4300 ISpStreamFormatConverter *This,
4301 ISpStreamFormat **ppStream);
4302
4303 HRESULT (STDMETHODCALLTYPE *SetFormat)(
4304 ISpStreamFormatConverter *This,
4305 REFGUID rguidFormatIdOfConvertedStream,
4306 const WAVEFORMATEX *pWaveFormatExOfConvertedStream);
4307
4308 HRESULT (STDMETHODCALLTYPE *ResetSeekPosition)(
4309 ISpStreamFormatConverter *This);
4310
4311 HRESULT (STDMETHODCALLTYPE *ScaleConvertedToBaseOffset)(
4312 ISpStreamFormatConverter *This,
4313 ULONGLONG ullOffsetConvertedStream,
4314 ULONGLONG *pullOffsetBaseStream);
4315
4316 HRESULT (STDMETHODCALLTYPE *ScaleBaseToConvertedOffset)(
4317 ISpStreamFormatConverter *This,
4318 ULONGLONG ullOffsetBaseStream,
4319 ULONGLONG *pullOffsetConvertedStream);
4320
4321 END_INTERFACE
4322} ISpStreamFormatConverterVtbl;
4323
4324interface ISpStreamFormatConverter {
4325 CONST_VTBL ISpStreamFormatConverterVtbl* lpVtbl;
4326};
4327
4328#ifdef COBJMACROS
4329#ifndef WIDL_C_INLINE_WRAPPERS
4330/*** IUnknown methods ***/
4331#define ISpStreamFormatConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4332#define ISpStreamFormatConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
4333#define ISpStreamFormatConverter_Release(This) (This)->lpVtbl->Release(This)
4334/*** ISequentialStream methods ***/
4335#define ISpStreamFormatConverter_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4336#define ISpStreamFormatConverter_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4337/*** IStream methods ***/
4338#define ISpStreamFormatConverter_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4339#define ISpStreamFormatConverter_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4340#define ISpStreamFormatConverter_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4341#define ISpStreamFormatConverter_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4342#define ISpStreamFormatConverter_Revert(This) (This)->lpVtbl->Revert(This)
4343#define ISpStreamFormatConverter_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4344#define ISpStreamFormatConverter_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4345#define ISpStreamFormatConverter_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4346#define ISpStreamFormatConverter_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4347/*** ISpStreamFormat methods ***/
4348#define ISpStreamFormatConverter_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4349/*** ISpStreamFormatConverter methods ***/
4350#define ISpStreamFormatConverter_SetBaseStream(This,pStream,fSetFormatToBaseStreamFormat,fWriteToBaseStream) (This)->lpVtbl->SetBaseStream(This,pStream,fSetFormatToBaseStreamFormat,fWriteToBaseStream)
4351#define ISpStreamFormatConverter_GetBaseStream(This,ppStream) (This)->lpVtbl->GetBaseStream(This,ppStream)
4352#define ISpStreamFormatConverter_SetFormat(This,rguidFormatIdOfConvertedStream,pWaveFormatExOfConvertedStream) (This)->lpVtbl->SetFormat(This,rguidFormatIdOfConvertedStream,pWaveFormatExOfConvertedStream)
4353#define ISpStreamFormatConverter_ResetSeekPosition(This) (This)->lpVtbl->ResetSeekPosition(This)
4354#define ISpStreamFormatConverter_ScaleConvertedToBaseOffset(This,ullOffsetConvertedStream,pullOffsetBaseStream) (This)->lpVtbl->ScaleConvertedToBaseOffset(This,ullOffsetConvertedStream,pullOffsetBaseStream)
4355#define ISpStreamFormatConverter_ScaleBaseToConvertedOffset(This,ullOffsetBaseStream,pullOffsetConvertedStream) (This)->lpVtbl->ScaleBaseToConvertedOffset(This,ullOffsetBaseStream,pullOffsetConvertedStream)
4356#else
4357/*** IUnknown methods ***/
4358static inline HRESULT ISpStreamFormatConverter_QueryInterface(ISpStreamFormatConverter* This,REFIID riid,void **ppvObject) {
4359 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4360}
4361static inline ULONG ISpStreamFormatConverter_AddRef(ISpStreamFormatConverter* This) {
4362 return This->lpVtbl->AddRef(This);
4363}
4364static inline ULONG ISpStreamFormatConverter_Release(ISpStreamFormatConverter* This) {
4365 return This->lpVtbl->Release(This);
4366}
4367/*** ISequentialStream methods ***/
4368static inline HRESULT ISpStreamFormatConverter_Read(ISpStreamFormatConverter* This,void *pv,ULONG cb,ULONG *pcbRead) {
4369 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4370}
4371static inline HRESULT ISpStreamFormatConverter_Write(ISpStreamFormatConverter* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4372 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
4373}
4374/*** IStream methods ***/
4375static inline HRESULT ISpStreamFormatConverter_Seek(ISpStreamFormatConverter* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
4376 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
4377}
4378static inline HRESULT ISpStreamFormatConverter_SetSize(ISpStreamFormatConverter* This,ULARGE_INTEGER libNewSize) {
4379 return This->lpVtbl->SetSize(This,libNewSize);
4380}
4381static inline HRESULT ISpStreamFormatConverter_CopyTo(ISpStreamFormatConverter* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
4382 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
4383}
4384static inline HRESULT ISpStreamFormatConverter_Commit(ISpStreamFormatConverter* This,DWORD grfCommitFlags) {
4385 return This->lpVtbl->Commit(This,grfCommitFlags);
4386}
4387static inline HRESULT ISpStreamFormatConverter_Revert(ISpStreamFormatConverter* This) {
4388 return This->lpVtbl->Revert(This);
4389}
4390static inline HRESULT ISpStreamFormatConverter_LockRegion(ISpStreamFormatConverter* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4391 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
4392}
4393static inline HRESULT ISpStreamFormatConverter_UnlockRegion(ISpStreamFormatConverter* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4394 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
4395}
4396static inline HRESULT ISpStreamFormatConverter_Stat(ISpStreamFormatConverter* This,STATSTG *pstatstg,DWORD grfStatFlag) {
4397 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
4398}
4399static inline HRESULT ISpStreamFormatConverter_Clone(ISpStreamFormatConverter* This,IStream **ppstm) {
4400 return This->lpVtbl->Clone(This,ppstm);
4401}
4402/*** ISpStreamFormat methods ***/
4403static inline HRESULT ISpStreamFormatConverter_GetFormat(ISpStreamFormatConverter* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4404 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
4405}
4406/*** ISpStreamFormatConverter methods ***/
4407static inline HRESULT ISpStreamFormatConverter_SetBaseStream(ISpStreamFormatConverter* This,ISpStreamFormat *pStream,WINBOOL fSetFormatToBaseStreamFormat,WINBOOL fWriteToBaseStream) {
4408 return This->lpVtbl->SetBaseStream(This,pStream,fSetFormatToBaseStreamFormat,fWriteToBaseStream);
4409}
4410static inline HRESULT ISpStreamFormatConverter_GetBaseStream(ISpStreamFormatConverter* This,ISpStreamFormat **ppStream) {
4411 return This->lpVtbl->GetBaseStream(This,ppStream);
4412}
4413static inline HRESULT ISpStreamFormatConverter_SetFormat(ISpStreamFormatConverter* This,REFGUID rguidFormatIdOfConvertedStream,const WAVEFORMATEX *pWaveFormatExOfConvertedStream) {
4414 return This->lpVtbl->SetFormat(This,rguidFormatIdOfConvertedStream,pWaveFormatExOfConvertedStream);
4415}
4416static inline HRESULT ISpStreamFormatConverter_ResetSeekPosition(ISpStreamFormatConverter* This) {
4417 return This->lpVtbl->ResetSeekPosition(This);
4418}
4419static inline HRESULT ISpStreamFormatConverter_ScaleConvertedToBaseOffset(ISpStreamFormatConverter* This,ULONGLONG ullOffsetConvertedStream,ULONGLONG *pullOffsetBaseStream) {
4420 return This->lpVtbl->ScaleConvertedToBaseOffset(This,ullOffsetConvertedStream,pullOffsetBaseStream);
4421}
4422static inline HRESULT ISpStreamFormatConverter_ScaleBaseToConvertedOffset(ISpStreamFormatConverter* This,ULONGLONG ullOffsetBaseStream,ULONGLONG *pullOffsetConvertedStream) {
4423 return This->lpVtbl->ScaleBaseToConvertedOffset(This,ullOffsetBaseStream,pullOffsetConvertedStream);
4424}
4425#endif
4426#endif
4427
4428#endif
4429
4430
4431#endif /* __ISpStreamFormatConverter_INTERFACE_DEFINED__ */
4432
4433typedef struct SPAUDIOSTATUS {
4434 LONG cbFreeBuffSpace;
4435 ULONG cbNonBlockingIO;
4436 SPAUDIOSTATE State;
4437 ULONGLONG CurSeekPos;
4438 ULONGLONG CurDevicePos;
4439 DWORD dwAudioLevel;
4440 DWORD dwReserved2;
4441} SPAUDIOSTATUS;
4442typedef struct SPAUDIOBUFFERINFO {
4443 ULONG ulMsMinNotification;
4444 ULONG ulMsBufferSize;
4445 ULONG ulMsEventBias;
4446} SPAUDIOBUFFERINFO;
4447/*****************************************************************************
4448 * ISpAudio interface
4449 */
4450#ifndef __ISpAudio_INTERFACE_DEFINED__
4451#define __ISpAudio_INTERFACE_DEFINED__
4452
4453DEFINE_GUID(IID_ISpAudio, 0xc05c768f, 0xfae8, 0x4ec2, 0x8e,0x07, 0x33,0x83,0x21,0xc1,0x24,0x52);
4454#if defined(__cplusplus) && !defined(CINTERFACE)
4455MIDL_INTERFACE("c05c768f-fae8-4ec2-8e07-338321c12452")
4456ISpAudio : public ISpStreamFormat
4457{
4458 virtual HRESULT STDMETHODCALLTYPE SetState(
4459 SPAUDIOSTATE NewState,
4460 ULONGLONG ullReserved) = 0;
4461
4462 virtual HRESULT STDMETHODCALLTYPE SetFormat(
4463 REFGUID rguidFmtId,
4464 const WAVEFORMATEX *pWaveFormatEx) = 0;
4465
4466 virtual HRESULT STDMETHODCALLTYPE GetStatus(
4467 SPAUDIOSTATUS *pStatus) = 0;
4468
4469 virtual HRESULT STDMETHODCALLTYPE SetBufferInfo(
4470 const SPAUDIOBUFFERINFO *pBuffInfo) = 0;
4471
4472 virtual HRESULT STDMETHODCALLTYPE GetBufferInfo(
4473 SPAUDIOBUFFERINFO *pBuffInfo) = 0;
4474
4475 virtual HRESULT STDMETHODCALLTYPE GetDefaultFormat(
4476 GUID *pFormatId,
4477 WAVEFORMATEX **ppCoMemWaveFormatEx) = 0;
4478
4479 virtual HANDLE STDMETHODCALLTYPE EventHandle(
4480 ) = 0;
4481
4482 virtual HRESULT STDMETHODCALLTYPE GetVolumeLevel(
4483 ULONG *pLevel) = 0;
4484
4485 virtual HRESULT STDMETHODCALLTYPE SetVolumeLevel(
4486 ULONG Level) = 0;
4487
4488 virtual HRESULT STDMETHODCALLTYPE GetBufferNotifySize(
4489 ULONG *pcbSize) = 0;
4490
4491 virtual HRESULT STDMETHODCALLTYPE SetBufferNotifySize(
4492 ULONG cbSize) = 0;
4493
4494};
4495#ifdef __CRT_UUID_DECL
4496__CRT_UUID_DECL(ISpAudio, 0xc05c768f, 0xfae8, 0x4ec2, 0x8e,0x07, 0x33,0x83,0x21,0xc1,0x24,0x52)
4497#endif
4498#else
4499typedef struct ISpAudioVtbl {
4500 BEGIN_INTERFACE
4501
4502 /*** IUnknown methods ***/
4503 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4504 ISpAudio *This,
4505 REFIID riid,
4506 void **ppvObject);
4507
4508 ULONG (STDMETHODCALLTYPE *AddRef)(
4509 ISpAudio *This);
4510
4511 ULONG (STDMETHODCALLTYPE *Release)(
4512 ISpAudio *This);
4513
4514 /*** ISequentialStream methods ***/
4515 HRESULT (STDMETHODCALLTYPE *Read)(
4516 ISpAudio *This,
4517 void *pv,
4518 ULONG cb,
4519 ULONG *pcbRead);
4520
4521 HRESULT (STDMETHODCALLTYPE *Write)(
4522 ISpAudio *This,
4523 const void *pv,
4524 ULONG cb,
4525 ULONG *pcbWritten);
4526
4527 /*** IStream methods ***/
4528 HRESULT (STDMETHODCALLTYPE *Seek)(
4529 ISpAudio *This,
4530 LARGE_INTEGER dlibMove,
4531 DWORD dwOrigin,
4532 ULARGE_INTEGER *plibNewPosition);
4533
4534 HRESULT (STDMETHODCALLTYPE *SetSize)(
4535 ISpAudio *This,
4536 ULARGE_INTEGER libNewSize);
4537
4538 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4539 ISpAudio *This,
4540 IStream *pstm,
4541 ULARGE_INTEGER cb,
4542 ULARGE_INTEGER *pcbRead,
4543 ULARGE_INTEGER *pcbWritten);
4544
4545 HRESULT (STDMETHODCALLTYPE *Commit)(
4546 ISpAudio *This,
4547 DWORD grfCommitFlags);
4548
4549 HRESULT (STDMETHODCALLTYPE *Revert)(
4550 ISpAudio *This);
4551
4552 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4553 ISpAudio *This,
4554 ULARGE_INTEGER libOffset,
4555 ULARGE_INTEGER cb,
4556 DWORD dwLockType);
4557
4558 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4559 ISpAudio *This,
4560 ULARGE_INTEGER libOffset,
4561 ULARGE_INTEGER cb,
4562 DWORD dwLockType);
4563
4564 HRESULT (STDMETHODCALLTYPE *Stat)(
4565 ISpAudio *This,
4566 STATSTG *pstatstg,
4567 DWORD grfStatFlag);
4568
4569 HRESULT (STDMETHODCALLTYPE *Clone)(
4570 ISpAudio *This,
4571 IStream **ppstm);
4572
4573 /*** ISpStreamFormat methods ***/
4574 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4575 ISpAudio *This,
4576 GUID *pguidFormatId,
4577 WAVEFORMATEX **ppCoMemWaveFormatEx);
4578
4579 /*** ISpAudio methods ***/
4580 HRESULT (STDMETHODCALLTYPE *SetState)(
4581 ISpAudio *This,
4582 SPAUDIOSTATE NewState,
4583 ULONGLONG ullReserved);
4584
4585 HRESULT (STDMETHODCALLTYPE *SetFormat)(
4586 ISpAudio *This,
4587 REFGUID rguidFmtId,
4588 const WAVEFORMATEX *pWaveFormatEx);
4589
4590 HRESULT (STDMETHODCALLTYPE *GetStatus)(
4591 ISpAudio *This,
4592 SPAUDIOSTATUS *pStatus);
4593
4594 HRESULT (STDMETHODCALLTYPE *SetBufferInfo)(
4595 ISpAudio *This,
4596 const SPAUDIOBUFFERINFO *pBuffInfo);
4597
4598 HRESULT (STDMETHODCALLTYPE *GetBufferInfo)(
4599 ISpAudio *This,
4600 SPAUDIOBUFFERINFO *pBuffInfo);
4601
4602 HRESULT (STDMETHODCALLTYPE *GetDefaultFormat)(
4603 ISpAudio *This,
4604 GUID *pFormatId,
4605 WAVEFORMATEX **ppCoMemWaveFormatEx);
4606
4607 HANDLE (STDMETHODCALLTYPE *EventHandle)(
4608 ISpAudio *This);
4609
4610 HRESULT (STDMETHODCALLTYPE *GetVolumeLevel)(
4611 ISpAudio *This,
4612 ULONG *pLevel);
4613
4614 HRESULT (STDMETHODCALLTYPE *SetVolumeLevel)(
4615 ISpAudio *This,
4616 ULONG Level);
4617
4618 HRESULT (STDMETHODCALLTYPE *GetBufferNotifySize)(
4619 ISpAudio *This,
4620 ULONG *pcbSize);
4621
4622 HRESULT (STDMETHODCALLTYPE *SetBufferNotifySize)(
4623 ISpAudio *This,
4624 ULONG cbSize);
4625
4626 END_INTERFACE
4627} ISpAudioVtbl;
4628
4629interface ISpAudio {
4630 CONST_VTBL ISpAudioVtbl* lpVtbl;
4631};
4632
4633#ifdef COBJMACROS
4634#ifndef WIDL_C_INLINE_WRAPPERS
4635/*** IUnknown methods ***/
4636#define ISpAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4637#define ISpAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
4638#define ISpAudio_Release(This) (This)->lpVtbl->Release(This)
4639/*** ISequentialStream methods ***/
4640#define ISpAudio_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4641#define ISpAudio_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4642/*** IStream methods ***/
4643#define ISpAudio_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4644#define ISpAudio_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4645#define ISpAudio_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4646#define ISpAudio_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4647#define ISpAudio_Revert(This) (This)->lpVtbl->Revert(This)
4648#define ISpAudio_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4649#define ISpAudio_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4650#define ISpAudio_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4651#define ISpAudio_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4652/*** ISpStreamFormat methods ***/
4653#define ISpAudio_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4654/*** ISpAudio methods ***/
4655#define ISpAudio_SetState(This,NewState,ullReserved) (This)->lpVtbl->SetState(This,NewState,ullReserved)
4656#define ISpAudio_SetFormat(This,rguidFmtId,pWaveFormatEx) (This)->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx)
4657#define ISpAudio_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
4658#define ISpAudio_SetBufferInfo(This,pBuffInfo) (This)->lpVtbl->SetBufferInfo(This,pBuffInfo)
4659#define ISpAudio_GetBufferInfo(This,pBuffInfo) (This)->lpVtbl->GetBufferInfo(This,pBuffInfo)
4660#define ISpAudio_GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx)
4661#define ISpAudio_EventHandle(This) (This)->lpVtbl->EventHandle(This)
4662#define ISpAudio_GetVolumeLevel(This,pLevel) (This)->lpVtbl->GetVolumeLevel(This,pLevel)
4663#define ISpAudio_SetVolumeLevel(This,Level) (This)->lpVtbl->SetVolumeLevel(This,Level)
4664#define ISpAudio_GetBufferNotifySize(This,pcbSize) (This)->lpVtbl->GetBufferNotifySize(This,pcbSize)
4665#define ISpAudio_SetBufferNotifySize(This,cbSize) (This)->lpVtbl->SetBufferNotifySize(This,cbSize)
4666#else
4667/*** IUnknown methods ***/
4668static inline HRESULT ISpAudio_QueryInterface(ISpAudio* This,REFIID riid,void **ppvObject) {
4669 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4670}
4671static inline ULONG ISpAudio_AddRef(ISpAudio* This) {
4672 return This->lpVtbl->AddRef(This);
4673}
4674static inline ULONG ISpAudio_Release(ISpAudio* This) {
4675 return This->lpVtbl->Release(This);
4676}
4677/*** ISequentialStream methods ***/
4678static inline HRESULT ISpAudio_Read(ISpAudio* This,void *pv,ULONG cb,ULONG *pcbRead) {
4679 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4680}
4681static inline HRESULT ISpAudio_Write(ISpAudio* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4682 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
4683}
4684/*** IStream methods ***/
4685static inline HRESULT ISpAudio_Seek(ISpAudio* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
4686 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
4687}
4688static inline HRESULT ISpAudio_SetSize(ISpAudio* This,ULARGE_INTEGER libNewSize) {
4689 return This->lpVtbl->SetSize(This,libNewSize);
4690}
4691static inline HRESULT ISpAudio_CopyTo(ISpAudio* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
4692 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
4693}
4694static inline HRESULT ISpAudio_Commit(ISpAudio* This,DWORD grfCommitFlags) {
4695 return This->lpVtbl->Commit(This,grfCommitFlags);
4696}
4697static inline HRESULT ISpAudio_Revert(ISpAudio* This) {
4698 return This->lpVtbl->Revert(This);
4699}
4700static inline HRESULT ISpAudio_LockRegion(ISpAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4701 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
4702}
4703static inline HRESULT ISpAudio_UnlockRegion(ISpAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
4704 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
4705}
4706static inline HRESULT ISpAudio_Stat(ISpAudio* This,STATSTG *pstatstg,DWORD grfStatFlag) {
4707 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
4708}
4709static inline HRESULT ISpAudio_Clone(ISpAudio* This,IStream **ppstm) {
4710 return This->lpVtbl->Clone(This,ppstm);
4711}
4712/*** ISpStreamFormat methods ***/
4713static inline HRESULT ISpAudio_GetFormat(ISpAudio* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4714 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
4715}
4716/*** ISpAudio methods ***/
4717static inline HRESULT ISpAudio_SetState(ISpAudio* This,SPAUDIOSTATE NewState,ULONGLONG ullReserved) {
4718 return This->lpVtbl->SetState(This,NewState,ullReserved);
4719}
4720static inline HRESULT ISpAudio_SetFormat(ISpAudio* This,REFGUID rguidFmtId,const WAVEFORMATEX *pWaveFormatEx) {
4721 return This->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx);
4722}
4723static inline HRESULT ISpAudio_GetStatus(ISpAudio* This,SPAUDIOSTATUS *pStatus) {
4724 return This->lpVtbl->GetStatus(This,pStatus);
4725}
4726static inline HRESULT ISpAudio_SetBufferInfo(ISpAudio* This,const SPAUDIOBUFFERINFO *pBuffInfo) {
4727 return This->lpVtbl->SetBufferInfo(This,pBuffInfo);
4728}
4729static inline HRESULT ISpAudio_GetBufferInfo(ISpAudio* This,SPAUDIOBUFFERINFO *pBuffInfo) {
4730 return This->lpVtbl->GetBufferInfo(This,pBuffInfo);
4731}
4732static inline HRESULT ISpAudio_GetDefaultFormat(ISpAudio* This,GUID *pFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
4733 return This->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx);
4734}
4735static inline HANDLE ISpAudio_EventHandle(ISpAudio* This) {
4736 return This->lpVtbl->EventHandle(This);
4737}
4738static inline HRESULT ISpAudio_GetVolumeLevel(ISpAudio* This,ULONG *pLevel) {
4739 return This->lpVtbl->GetVolumeLevel(This,pLevel);
4740}
4741static inline HRESULT ISpAudio_SetVolumeLevel(ISpAudio* This,ULONG Level) {
4742 return This->lpVtbl->SetVolumeLevel(This,Level);
4743}
4744static inline HRESULT ISpAudio_GetBufferNotifySize(ISpAudio* This,ULONG *pcbSize) {
4745 return This->lpVtbl->GetBufferNotifySize(This,pcbSize);
4746}
4747static inline HRESULT ISpAudio_SetBufferNotifySize(ISpAudio* This,ULONG cbSize) {
4748 return This->lpVtbl->SetBufferNotifySize(This,cbSize);
4749}
4750#endif
4751#endif
4752
4753#endif
4754
4755
4756#endif /* __ISpAudio_INTERFACE_DEFINED__ */
4757
4758/*****************************************************************************
4759 * ISpMMSysAudio interface
4760 */
4761#ifndef __ISpMMSysAudio_INTERFACE_DEFINED__
4762#define __ISpMMSysAudio_INTERFACE_DEFINED__
4763
4764DEFINE_GUID(IID_ISpMMSysAudio, 0x15806f6e, 0x1d70, 0x4b48, 0x98,0xe6, 0x3b,0x1a,0x00,0x75,0x09,0xab);
4765#if defined(__cplusplus) && !defined(CINTERFACE)
4766MIDL_INTERFACE("15806f6e-1d70-4b48-98e6-3b1a007509ab")
4767ISpMMSysAudio : public ISpAudio
4768{
4769 virtual HRESULT STDMETHODCALLTYPE GetDeviceId(
4770 UINT *puDeviceId) = 0;
4771
4772 virtual HRESULT STDMETHODCALLTYPE SetDeviceId(
4773 UINT uDeviceId) = 0;
4774
4775 virtual HRESULT STDMETHODCALLTYPE GetMMHandle(
4776 void **pHandle) = 0;
4777
4778 virtual HRESULT STDMETHODCALLTYPE GetLineId(
4779 UINT *puLineId) = 0;
4780
4781 virtual HRESULT STDMETHODCALLTYPE SetLineId(
4782 UINT uLineId) = 0;
4783
4784};
4785#ifdef __CRT_UUID_DECL
4786__CRT_UUID_DECL(ISpMMSysAudio, 0x15806f6e, 0x1d70, 0x4b48, 0x98,0xe6, 0x3b,0x1a,0x00,0x75,0x09,0xab)
4787#endif
4788#else
4789typedef struct ISpMMSysAudioVtbl {
4790 BEGIN_INTERFACE
4791
4792 /*** IUnknown methods ***/
4793 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4794 ISpMMSysAudio *This,
4795 REFIID riid,
4796 void **ppvObject);
4797
4798 ULONG (STDMETHODCALLTYPE *AddRef)(
4799 ISpMMSysAudio *This);
4800
4801 ULONG (STDMETHODCALLTYPE *Release)(
4802 ISpMMSysAudio *This);
4803
4804 /*** ISequentialStream methods ***/
4805 HRESULT (STDMETHODCALLTYPE *Read)(
4806 ISpMMSysAudio *This,
4807 void *pv,
4808 ULONG cb,
4809 ULONG *pcbRead);
4810
4811 HRESULT (STDMETHODCALLTYPE *Write)(
4812 ISpMMSysAudio *This,
4813 const void *pv,
4814 ULONG cb,
4815 ULONG *pcbWritten);
4816
4817 /*** IStream methods ***/
4818 HRESULT (STDMETHODCALLTYPE *Seek)(
4819 ISpMMSysAudio *This,
4820 LARGE_INTEGER dlibMove,
4821 DWORD dwOrigin,
4822 ULARGE_INTEGER *plibNewPosition);
4823
4824 HRESULT (STDMETHODCALLTYPE *SetSize)(
4825 ISpMMSysAudio *This,
4826 ULARGE_INTEGER libNewSize);
4827
4828 HRESULT (STDMETHODCALLTYPE *CopyTo)(
4829 ISpMMSysAudio *This,
4830 IStream *pstm,
4831 ULARGE_INTEGER cb,
4832 ULARGE_INTEGER *pcbRead,
4833 ULARGE_INTEGER *pcbWritten);
4834
4835 HRESULT (STDMETHODCALLTYPE *Commit)(
4836 ISpMMSysAudio *This,
4837 DWORD grfCommitFlags);
4838
4839 HRESULT (STDMETHODCALLTYPE *Revert)(
4840 ISpMMSysAudio *This);
4841
4842 HRESULT (STDMETHODCALLTYPE *LockRegion)(
4843 ISpMMSysAudio *This,
4844 ULARGE_INTEGER libOffset,
4845 ULARGE_INTEGER cb,
4846 DWORD dwLockType);
4847
4848 HRESULT (STDMETHODCALLTYPE *UnlockRegion)(
4849 ISpMMSysAudio *This,
4850 ULARGE_INTEGER libOffset,
4851 ULARGE_INTEGER cb,
4852 DWORD dwLockType);
4853
4854 HRESULT (STDMETHODCALLTYPE *Stat)(
4855 ISpMMSysAudio *This,
4856 STATSTG *pstatstg,
4857 DWORD grfStatFlag);
4858
4859 HRESULT (STDMETHODCALLTYPE *Clone)(
4860 ISpMMSysAudio *This,
4861 IStream **ppstm);
4862
4863 /*** ISpStreamFormat methods ***/
4864 HRESULT (STDMETHODCALLTYPE *GetFormat)(
4865 ISpMMSysAudio *This,
4866 GUID *pguidFormatId,
4867 WAVEFORMATEX **ppCoMemWaveFormatEx);
4868
4869 /*** ISpAudio methods ***/
4870 HRESULT (STDMETHODCALLTYPE *SetState)(
4871 ISpMMSysAudio *This,
4872 SPAUDIOSTATE NewState,
4873 ULONGLONG ullReserved);
4874
4875 HRESULT (STDMETHODCALLTYPE *SetFormat)(
4876 ISpMMSysAudio *This,
4877 REFGUID rguidFmtId,
4878 const WAVEFORMATEX *pWaveFormatEx);
4879
4880 HRESULT (STDMETHODCALLTYPE *GetStatus)(
4881 ISpMMSysAudio *This,
4882 SPAUDIOSTATUS *pStatus);
4883
4884 HRESULT (STDMETHODCALLTYPE *SetBufferInfo)(
4885 ISpMMSysAudio *This,
4886 const SPAUDIOBUFFERINFO *pBuffInfo);
4887
4888 HRESULT (STDMETHODCALLTYPE *GetBufferInfo)(
4889 ISpMMSysAudio *This,
4890 SPAUDIOBUFFERINFO *pBuffInfo);
4891
4892 HRESULT (STDMETHODCALLTYPE *GetDefaultFormat)(
4893 ISpMMSysAudio *This,
4894 GUID *pFormatId,
4895 WAVEFORMATEX **ppCoMemWaveFormatEx);
4896
4897 HANDLE (STDMETHODCALLTYPE *EventHandle)(
4898 ISpMMSysAudio *This);
4899
4900 HRESULT (STDMETHODCALLTYPE *GetVolumeLevel)(
4901 ISpMMSysAudio *This,
4902 ULONG *pLevel);
4903
4904 HRESULT (STDMETHODCALLTYPE *SetVolumeLevel)(
4905 ISpMMSysAudio *This,
4906 ULONG Level);
4907
4908 HRESULT (STDMETHODCALLTYPE *GetBufferNotifySize)(
4909 ISpMMSysAudio *This,
4910 ULONG *pcbSize);
4911
4912 HRESULT (STDMETHODCALLTYPE *SetBufferNotifySize)(
4913 ISpMMSysAudio *This,
4914 ULONG cbSize);
4915
4916 /*** ISpMMSysAudio methods ***/
4917 HRESULT (STDMETHODCALLTYPE *GetDeviceId)(
4918 ISpMMSysAudio *This,
4919 UINT *puDeviceId);
4920
4921 HRESULT (STDMETHODCALLTYPE *SetDeviceId)(
4922 ISpMMSysAudio *This,
4923 UINT uDeviceId);
4924
4925 HRESULT (STDMETHODCALLTYPE *GetMMHandle)(
4926 ISpMMSysAudio *This,
4927 void **pHandle);
4928
4929 HRESULT (STDMETHODCALLTYPE *GetLineId)(
4930 ISpMMSysAudio *This,
4931 UINT *puLineId);
4932
4933 HRESULT (STDMETHODCALLTYPE *SetLineId)(
4934 ISpMMSysAudio *This,
4935 UINT uLineId);
4936
4937 END_INTERFACE
4938} ISpMMSysAudioVtbl;
4939
4940interface ISpMMSysAudio {
4941 CONST_VTBL ISpMMSysAudioVtbl* lpVtbl;
4942};
4943
4944#ifdef COBJMACROS
4945#ifndef WIDL_C_INLINE_WRAPPERS
4946/*** IUnknown methods ***/
4947#define ISpMMSysAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4948#define ISpMMSysAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
4949#define ISpMMSysAudio_Release(This) (This)->lpVtbl->Release(This)
4950/*** ISequentialStream methods ***/
4951#define ISpMMSysAudio_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
4952#define ISpMMSysAudio_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
4953/*** IStream methods ***/
4954#define ISpMMSysAudio_Seek(This,dlibMove,dwOrigin,plibNewPosition) (This)->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition)
4955#define ISpMMSysAudio_SetSize(This,libNewSize) (This)->lpVtbl->SetSize(This,libNewSize)
4956#define ISpMMSysAudio_CopyTo(This,pstm,cb,pcbRead,pcbWritten) (This)->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten)
4957#define ISpMMSysAudio_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags)
4958#define ISpMMSysAudio_Revert(This) (This)->lpVtbl->Revert(This)
4959#define ISpMMSysAudio_LockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->LockRegion(This,libOffset,cb,dwLockType)
4960#define ISpMMSysAudio_UnlockRegion(This,libOffset,cb,dwLockType) (This)->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType)
4961#define ISpMMSysAudio_Stat(This,pstatstg,grfStatFlag) (This)->lpVtbl->Stat(This,pstatstg,grfStatFlag)
4962#define ISpMMSysAudio_Clone(This,ppstm) (This)->lpVtbl->Clone(This,ppstm)
4963/*** ISpStreamFormat methods ***/
4964#define ISpMMSysAudio_GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx)
4965/*** ISpAudio methods ***/
4966#define ISpMMSysAudio_SetState(This,NewState,ullReserved) (This)->lpVtbl->SetState(This,NewState,ullReserved)
4967#define ISpMMSysAudio_SetFormat(This,rguidFmtId,pWaveFormatEx) (This)->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx)
4968#define ISpMMSysAudio_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
4969#define ISpMMSysAudio_SetBufferInfo(This,pBuffInfo) (This)->lpVtbl->SetBufferInfo(This,pBuffInfo)
4970#define ISpMMSysAudio_GetBufferInfo(This,pBuffInfo) (This)->lpVtbl->GetBufferInfo(This,pBuffInfo)
4971#define ISpMMSysAudio_GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx) (This)->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx)
4972#define ISpMMSysAudio_EventHandle(This) (This)->lpVtbl->EventHandle(This)
4973#define ISpMMSysAudio_GetVolumeLevel(This,pLevel) (This)->lpVtbl->GetVolumeLevel(This,pLevel)
4974#define ISpMMSysAudio_SetVolumeLevel(This,Level) (This)->lpVtbl->SetVolumeLevel(This,Level)
4975#define ISpMMSysAudio_GetBufferNotifySize(This,pcbSize) (This)->lpVtbl->GetBufferNotifySize(This,pcbSize)
4976#define ISpMMSysAudio_SetBufferNotifySize(This,cbSize) (This)->lpVtbl->SetBufferNotifySize(This,cbSize)
4977/*** ISpMMSysAudio methods ***/
4978#define ISpMMSysAudio_GetDeviceId(This,puDeviceId) (This)->lpVtbl->GetDeviceId(This,puDeviceId)
4979#define ISpMMSysAudio_SetDeviceId(This,uDeviceId) (This)->lpVtbl->SetDeviceId(This,uDeviceId)
4980#define ISpMMSysAudio_GetMMHandle(This,pHandle) (This)->lpVtbl->GetMMHandle(This,pHandle)
4981#define ISpMMSysAudio_GetLineId(This,puLineId) (This)->lpVtbl->GetLineId(This,puLineId)
4982#define ISpMMSysAudio_SetLineId(This,uLineId) (This)->lpVtbl->SetLineId(This,uLineId)
4983#else
4984/*** IUnknown methods ***/
4985static inline HRESULT ISpMMSysAudio_QueryInterface(ISpMMSysAudio* This,REFIID riid,void **ppvObject) {
4986 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4987}
4988static inline ULONG ISpMMSysAudio_AddRef(ISpMMSysAudio* This) {
4989 return This->lpVtbl->AddRef(This);
4990}
4991static inline ULONG ISpMMSysAudio_Release(ISpMMSysAudio* This) {
4992 return This->lpVtbl->Release(This);
4993}
4994/*** ISequentialStream methods ***/
4995static inline HRESULT ISpMMSysAudio_Read(ISpMMSysAudio* This,void *pv,ULONG cb,ULONG *pcbRead) {
4996 return This->lpVtbl->Read(This,pv,cb,pcbRead);
4997}
4998static inline HRESULT ISpMMSysAudio_Write(ISpMMSysAudio* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
4999 return This->lpVtbl->Write(This,pv,cb,pcbWritten);
5000}
5001/*** IStream methods ***/
5002static inline HRESULT ISpMMSysAudio_Seek(ISpMMSysAudio* This,LARGE_INTEGER dlibMove,DWORD dwOrigin,ULARGE_INTEGER *plibNewPosition) {
5003 return This->lpVtbl->Seek(This,dlibMove,dwOrigin,plibNewPosition);
5004}
5005static inline HRESULT ISpMMSysAudio_SetSize(ISpMMSysAudio* This,ULARGE_INTEGER libNewSize) {
5006 return This->lpVtbl->SetSize(This,libNewSize);
5007}
5008static inline HRESULT ISpMMSysAudio_CopyTo(ISpMMSysAudio* This,IStream *pstm,ULARGE_INTEGER cb,ULARGE_INTEGER *pcbRead,ULARGE_INTEGER *pcbWritten) {
5009 return This->lpVtbl->CopyTo(This,pstm,cb,pcbRead,pcbWritten);
5010}
5011static inline HRESULT ISpMMSysAudio_Commit(ISpMMSysAudio* This,DWORD grfCommitFlags) {
5012 return This->lpVtbl->Commit(This,grfCommitFlags);
5013}
5014static inline HRESULT ISpMMSysAudio_Revert(ISpMMSysAudio* This) {
5015 return This->lpVtbl->Revert(This);
5016}
5017static inline HRESULT ISpMMSysAudio_LockRegion(ISpMMSysAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5018 return This->lpVtbl->LockRegion(This,libOffset,cb,dwLockType);
5019}
5020static inline HRESULT ISpMMSysAudio_UnlockRegion(ISpMMSysAudio* This,ULARGE_INTEGER libOffset,ULARGE_INTEGER cb,DWORD dwLockType) {
5021 return This->lpVtbl->UnlockRegion(This,libOffset,cb,dwLockType);
5022}
5023static inline HRESULT ISpMMSysAudio_Stat(ISpMMSysAudio* This,STATSTG *pstatstg,DWORD grfStatFlag) {
5024 return This->lpVtbl->Stat(This,pstatstg,grfStatFlag);
5025}
5026static inline HRESULT ISpMMSysAudio_Clone(ISpMMSysAudio* This,IStream **ppstm) {
5027 return This->lpVtbl->Clone(This,ppstm);
5028}
5029/*** ISpStreamFormat methods ***/
5030static inline HRESULT ISpMMSysAudio_GetFormat(ISpMMSysAudio* This,GUID *pguidFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5031 return This->lpVtbl->GetFormat(This,pguidFormatId,ppCoMemWaveFormatEx);
5032}
5033/*** ISpAudio methods ***/
5034static inline HRESULT ISpMMSysAudio_SetState(ISpMMSysAudio* This,SPAUDIOSTATE NewState,ULONGLONG ullReserved) {
5035 return This->lpVtbl->SetState(This,NewState,ullReserved);
5036}
5037static inline HRESULT ISpMMSysAudio_SetFormat(ISpMMSysAudio* This,REFGUID rguidFmtId,const WAVEFORMATEX *pWaveFormatEx) {
5038 return This->lpVtbl->SetFormat(This,rguidFmtId,pWaveFormatEx);
5039}
5040static inline HRESULT ISpMMSysAudio_GetStatus(ISpMMSysAudio* This,SPAUDIOSTATUS *pStatus) {
5041 return This->lpVtbl->GetStatus(This,pStatus);
5042}
5043static inline HRESULT ISpMMSysAudio_SetBufferInfo(ISpMMSysAudio* This,const SPAUDIOBUFFERINFO *pBuffInfo) {
5044 return This->lpVtbl->SetBufferInfo(This,pBuffInfo);
5045}
5046static inline HRESULT ISpMMSysAudio_GetBufferInfo(ISpMMSysAudio* This,SPAUDIOBUFFERINFO *pBuffInfo) {
5047 return This->lpVtbl->GetBufferInfo(This,pBuffInfo);
5048}
5049static inline HRESULT ISpMMSysAudio_GetDefaultFormat(ISpMMSysAudio* This,GUID *pFormatId,WAVEFORMATEX **ppCoMemWaveFormatEx) {
5050 return This->lpVtbl->GetDefaultFormat(This,pFormatId,ppCoMemWaveFormatEx);
5051}
5052static inline HANDLE ISpMMSysAudio_EventHandle(ISpMMSysAudio* This) {
5053 return This->lpVtbl->EventHandle(This);
5054}
5055static inline HRESULT ISpMMSysAudio_GetVolumeLevel(ISpMMSysAudio* This,ULONG *pLevel) {
5056 return This->lpVtbl->GetVolumeLevel(This,pLevel);
5057}
5058static inline HRESULT ISpMMSysAudio_SetVolumeLevel(ISpMMSysAudio* This,ULONG Level) {
5059 return This->lpVtbl->SetVolumeLevel(This,Level);
5060}
5061static inline HRESULT ISpMMSysAudio_GetBufferNotifySize(ISpMMSysAudio* This,ULONG *pcbSize) {
5062 return This->lpVtbl->GetBufferNotifySize(This,pcbSize);
5063}
5064static inline HRESULT ISpMMSysAudio_SetBufferNotifySize(ISpMMSysAudio* This,ULONG cbSize) {
5065 return This->lpVtbl->SetBufferNotifySize(This,cbSize);
5066}
5067/*** ISpMMSysAudio methods ***/
5068static inline HRESULT ISpMMSysAudio_GetDeviceId(ISpMMSysAudio* This,UINT *puDeviceId) {
5069 return This->lpVtbl->GetDeviceId(This,puDeviceId);
5070}
5071static inline HRESULT ISpMMSysAudio_SetDeviceId(ISpMMSysAudio* This,UINT uDeviceId) {
5072 return This->lpVtbl->SetDeviceId(This,uDeviceId);
5073}
5074static inline HRESULT ISpMMSysAudio_GetMMHandle(ISpMMSysAudio* This,void **pHandle) {
5075 return This->lpVtbl->GetMMHandle(This,pHandle);
5076}
5077static inline HRESULT ISpMMSysAudio_GetLineId(ISpMMSysAudio* This,UINT *puLineId) {
5078 return This->lpVtbl->GetLineId(This,puLineId);
5079}
5080static inline HRESULT ISpMMSysAudio_SetLineId(ISpMMSysAudio* This,UINT uLineId) {
5081 return This->lpVtbl->SetLineId(This,uLineId);
5082}
5083#endif
5084#endif
5085
5086#endif
5087
5088
5089#endif /* __ISpMMSysAudio_INTERFACE_DEFINED__ */
5090
5091/*****************************************************************************
5092 * ISpTranscript interface
5093 */
5094#ifndef __ISpTranscript_INTERFACE_DEFINED__
5095#define __ISpTranscript_INTERFACE_DEFINED__
5096
5097DEFINE_GUID(IID_ISpTranscript, 0x10f63bce, 0x201a, 0x11d3, 0xac,0x70, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
5098#if defined(__cplusplus) && !defined(CINTERFACE)
5099MIDL_INTERFACE("10f63bce-201a-11d3-ac70-00c04f8ee6c0")
5100ISpTranscript : public IUnknown
5101{
5102 virtual HRESULT STDMETHODCALLTYPE GetTranscript(
5103 LPWSTR *ppszTranscript) = 0;
5104
5105 virtual HRESULT STDMETHODCALLTYPE AppendTranscript(
5106 LPCWSTR pszTranscript) = 0;
5107
5108};
5109#ifdef __CRT_UUID_DECL
5110__CRT_UUID_DECL(ISpTranscript, 0x10f63bce, 0x201a, 0x11d3, 0xac,0x70, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
5111#endif
5112#else
5113typedef struct ISpTranscriptVtbl {
5114 BEGIN_INTERFACE
5115
5116 /*** IUnknown methods ***/
5117 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5118 ISpTranscript *This,
5119 REFIID riid,
5120 void **ppvObject);
5121
5122 ULONG (STDMETHODCALLTYPE *AddRef)(
5123 ISpTranscript *This);
5124
5125 ULONG (STDMETHODCALLTYPE *Release)(
5126 ISpTranscript *This);
5127
5128 /*** ISpTranscript methods ***/
5129 HRESULT (STDMETHODCALLTYPE *GetTranscript)(
5130 ISpTranscript *This,
5131 LPWSTR *ppszTranscript);
5132
5133 HRESULT (STDMETHODCALLTYPE *AppendTranscript)(
5134 ISpTranscript *This,
5135 LPCWSTR pszTranscript);
5136
5137 END_INTERFACE
5138} ISpTranscriptVtbl;
5139
5140interface ISpTranscript {
5141 CONST_VTBL ISpTranscriptVtbl* lpVtbl;
5142};
5143
5144#ifdef COBJMACROS
5145#ifndef WIDL_C_INLINE_WRAPPERS
5146/*** IUnknown methods ***/
5147#define ISpTranscript_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5148#define ISpTranscript_AddRef(This) (This)->lpVtbl->AddRef(This)
5149#define ISpTranscript_Release(This) (This)->lpVtbl->Release(This)
5150/*** ISpTranscript methods ***/
5151#define ISpTranscript_GetTranscript(This,ppszTranscript) (This)->lpVtbl->GetTranscript(This,ppszTranscript)
5152#define ISpTranscript_AppendTranscript(This,pszTranscript) (This)->lpVtbl->AppendTranscript(This,pszTranscript)
5153#else
5154/*** IUnknown methods ***/
5155static inline HRESULT ISpTranscript_QueryInterface(ISpTranscript* This,REFIID riid,void **ppvObject) {
5156 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5157}
5158static inline ULONG ISpTranscript_AddRef(ISpTranscript* This) {
5159 return This->lpVtbl->AddRef(This);
5160}
5161static inline ULONG ISpTranscript_Release(ISpTranscript* This) {
5162 return This->lpVtbl->Release(This);
5163}
5164/*** ISpTranscript methods ***/
5165static inline HRESULT ISpTranscript_GetTranscript(ISpTranscript* This,LPWSTR *ppszTranscript) {
5166 return This->lpVtbl->GetTranscript(This,ppszTranscript);
5167}
5168static inline HRESULT ISpTranscript_AppendTranscript(ISpTranscript* This,LPCWSTR pszTranscript) {
5169 return This->lpVtbl->AppendTranscript(This,pszTranscript);
5170}
5171#endif
5172#endif
5173
5174#endif
5175
5176
5177#endif /* __ISpTranscript_INTERFACE_DEFINED__ */
5178
5179typedef WCHAR SPPHONEID;
5180typedef LPWSTR PSPPHONEID;
5181typedef LPCWSTR PCSPPHONEID;
5182typedef struct SPPHRASEELEMENT {
5183 ULONG ulAudioTimeOffset;
5184 ULONG ulAudioSizeTime;
5185 ULONG ulAudioStreamOffset;
5186 ULONG ulAudioSizeBytes;
5187 ULONG ulRetainedStreamOffset;
5188 ULONG ulRetainedSizeBytes;
5189 LPCWSTR pszDisplayText;
5190 LPCWSTR pszLexicalForm;
5191 const SPPHONEID *pszPronunciation;
5192 BYTE bDisplayAttributes;
5193 signed char RequiredConfidence;
5194 signed char ActualConfidence;
5195 BYTE Reserved;
5196 float SREngineConfidence;
5197} SPPHRASEELEMENT;
5198typedef struct SPPHRASERULE SPPHRASERULE;
5199typedef struct SPPHRASEPROPERTY SPPHRASEPROPERTY;
5200struct SPPHRASERULE {
5201 LPCWSTR pszName;
5202 ULONG ulId;
5203 ULONG ulFirstElement;
5204 ULONG ulCountOfElements;
5205 const SPPHRASERULE *pNextSibling;
5206 const SPPHRASERULE *pFirstChild;
5207 float SREngineConfidence;
5208 signed char Confidence;
5209};
5210struct SPPHRASEPROPERTY {
5211 LPCWSTR pszName;
5212 __C89_NAMELESS union {
5213 ULONG ulId;
5214 __C89_NAMELESS struct {
5215 byte bType;
5216 byte bReserved;
5217 unsigned short usArrayIndex;
5218 } __C89_NAMELESSSTRUCTNAME;
5219 } __C89_NAMELESSUNIONNAME;
5220 LPCWSTR pszValue;
5221 VARIANT vValue;
5222 ULONG ulFirstElement;
5223 ULONG ulCountOfElements;
5224 const SPPHRASEPROPERTY *pNextSibling;
5225 const SPPHRASEPROPERTY *pFirstChild;
5226 float SREngineConfidence;
5227 signed char Confidence;
5228};
5229typedef struct SPPHRASEREPLACEMENT {
5230 BYTE bDisplayAttributes;
5231 LPCWSTR pszReplacementText;
5232 ULONG ulFirstElement;
5233 ULONG ulCountOfElements;
5234} SPPHRASEREPLACEMENT;
5235typedef struct SPPHRASE {
5236 ULONG cbSize;
5237 WORD LangID;
5238 WORD wHomophoneGroupId;
5239 ULONGLONG ullGrammarID;
5240 ULONGLONG ftStartTime;
5241 ULONGLONG ullAudioStreamPosition;
5242 ULONG ulAudioSizeBytes;
5243 ULONG ulRetainedSizeBytes;
5244 ULONG ulAudioSizeTime;
5245 SPPHRASERULE Rule;
5246 const SPPHRASEPROPERTY *pProperties;
5247 const SPPHRASEELEMENT *pElements;
5248 ULONG cReplacements;
5249 const SPPHRASEREPLACEMENT *pReplacements;
5250 GUID SREngineID;
5251 ULONG ulSREnginePrivateDataSize;
5252 const BYTE *pSREnginePrivateData;
5253} SPPHRASE;
5254typedef struct SPSERIALIZEDPHRASE {
5255 ULONG ulSerializedSize;
5256} SPSERIALIZEDPHRASE;
5257typedef struct SPBINARYGRAMMAR {
5258 ULONG ulTotalSerializedSize;
5259} SPBINARYGRAMMAR;
5260#if 0
5261typedef void *SPSTATEHANDLE;
5262#else
5263DECLARE_HANDLE(SPSTATEHANDLE);
5264#endif
5265typedef struct SPWORDPRONUNCIATION {
5266 struct SPWORDPRONUNCIATION *pNextWordPronunciation;
5267 SPLEXICONTYPE eLexiconType;
5268 WORD LangID;
5269 WORD wPronunciationFlags;
5270 SPPARTOFSPEECH ePartOfSpeech;
5271 SPPHONEID szPronunciation[1];
5272} SPWORDPRONUNCIATION;
5273typedef struct SPWORDPRONUNCIATIONLIST {
5274 ULONG ulSize;
5275 BYTE *pvBuffer;
5276 SPWORDPRONUNCIATION *pFirstWordPronunciation;
5277} SPWORDPRONUNCIATIONLIST;
5278typedef struct SPWORD {
5279 struct SPWORD *pNextWord;
5280 WORD LangID;
5281 WORD wReserved;
5282 SPWORDTYPE eWordType;
5283 LPWSTR pszWord;
5284 SPWORDPRONUNCIATION *pFirstWordPronunciation;
5285} SPWORD;
5286typedef struct SPWORDLIST {
5287 ULONG ulSize;
5288 BYTE *pvBuffer;
5289 SPWORD *pFirstWord;
5290} SPWORDLIST;
5291/*****************************************************************************
5292 * ISpLexicon interface
5293 */
5294#ifndef __ISpLexicon_INTERFACE_DEFINED__
5295#define __ISpLexicon_INTERFACE_DEFINED__
5296
5297DEFINE_GUID(IID_ISpLexicon, 0xda41a7c2, 0x5383, 0x4db2, 0x91,0x6b, 0x6c,0x17,0x19,0xe3,0xdb,0x58);
5298#if defined(__cplusplus) && !defined(CINTERFACE)
5299MIDL_INTERFACE("da41a7c2-5383-4db2-916b-6c1719e3db58")
5300ISpLexicon : public IUnknown
5301{
5302 virtual HRESULT STDMETHODCALLTYPE GetPronunciations(
5303 LPCWSTR pszWord,
5304 WORD LangID,
5305 DWORD dwFlags,
5306 SPWORDPRONUNCIATIONLIST *pWordPronunciationList) = 0;
5307
5308 virtual HRESULT STDMETHODCALLTYPE AddPronunciation(
5309 LPCWSTR pszWord,
5310 WORD LangID,
5311 SPPARTOFSPEECH ePartOfSpeech,
5312 PCSPPHONEID pszPronunciation) = 0;
5313
5314 virtual HRESULT STDMETHODCALLTYPE RemovePronunciation(
5315 LPCWSTR pszWord,
5316 WORD LangID,
5317 SPPARTOFSPEECH ePartOfSpeech,
5318 PCSPPHONEID pszPronunciation) = 0;
5319
5320 virtual HRESULT STDMETHODCALLTYPE GetGeneration(
5321 DWORD *pdwGeneration) = 0;
5322
5323 virtual HRESULT STDMETHODCALLTYPE GetGenerationChange(
5324 DWORD dwFlags,
5325 DWORD *pdwGeneration,
5326 SPWORDLIST *pWordList) = 0;
5327
5328 virtual HRESULT STDMETHODCALLTYPE GetWords(
5329 DWORD dwFlags,
5330 DWORD *pdwGeneration,
5331 DWORD *pdwCookie,
5332 SPWORDLIST *pWordList) = 0;
5333
5334};
5335#ifdef __CRT_UUID_DECL
5336__CRT_UUID_DECL(ISpLexicon, 0xda41a7c2, 0x5383, 0x4db2, 0x91,0x6b, 0x6c,0x17,0x19,0xe3,0xdb,0x58)
5337#endif
5338#else
5339typedef struct ISpLexiconVtbl {
5340 BEGIN_INTERFACE
5341
5342 /*** IUnknown methods ***/
5343 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5344 ISpLexicon *This,
5345 REFIID riid,
5346 void **ppvObject);
5347
5348 ULONG (STDMETHODCALLTYPE *AddRef)(
5349 ISpLexicon *This);
5350
5351 ULONG (STDMETHODCALLTYPE *Release)(
5352 ISpLexicon *This);
5353
5354 /*** ISpLexicon methods ***/
5355 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
5356 ISpLexicon *This,
5357 LPCWSTR pszWord,
5358 WORD LangID,
5359 DWORD dwFlags,
5360 SPWORDPRONUNCIATIONLIST *pWordPronunciationList);
5361
5362 HRESULT (STDMETHODCALLTYPE *AddPronunciation)(
5363 ISpLexicon *This,
5364 LPCWSTR pszWord,
5365 WORD LangID,
5366 SPPARTOFSPEECH ePartOfSpeech,
5367 PCSPPHONEID pszPronunciation);
5368
5369 HRESULT (STDMETHODCALLTYPE *RemovePronunciation)(
5370 ISpLexicon *This,
5371 LPCWSTR pszWord,
5372 WORD LangID,
5373 SPPARTOFSPEECH ePartOfSpeech,
5374 PCSPPHONEID pszPronunciation);
5375
5376 HRESULT (STDMETHODCALLTYPE *GetGeneration)(
5377 ISpLexicon *This,
5378 DWORD *pdwGeneration);
5379
5380 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
5381 ISpLexicon *This,
5382 DWORD dwFlags,
5383 DWORD *pdwGeneration,
5384 SPWORDLIST *pWordList);
5385
5386 HRESULT (STDMETHODCALLTYPE *GetWords)(
5387 ISpLexicon *This,
5388 DWORD dwFlags,
5389 DWORD *pdwGeneration,
5390 DWORD *pdwCookie,
5391 SPWORDLIST *pWordList);
5392
5393 END_INTERFACE
5394} ISpLexiconVtbl;
5395
5396interface ISpLexicon {
5397 CONST_VTBL ISpLexiconVtbl* lpVtbl;
5398};
5399
5400#ifdef COBJMACROS
5401#ifndef WIDL_C_INLINE_WRAPPERS
5402/*** IUnknown methods ***/
5403#define ISpLexicon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5404#define ISpLexicon_AddRef(This) (This)->lpVtbl->AddRef(This)
5405#define ISpLexicon_Release(This) (This)->lpVtbl->Release(This)
5406/*** ISpLexicon methods ***/
5407#define ISpLexicon_GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList) (This)->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList)
5408#define ISpLexicon_AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
5409#define ISpLexicon_RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
5410#define ISpLexicon_GetGeneration(This,pdwGeneration) (This)->lpVtbl->GetGeneration(This,pdwGeneration)
5411#define ISpLexicon_GetGenerationChange(This,dwFlags,pdwGeneration,pWordList) (This)->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList)
5412#define ISpLexicon_GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList) (This)->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList)
5413#else
5414/*** IUnknown methods ***/
5415static inline HRESULT ISpLexicon_QueryInterface(ISpLexicon* This,REFIID riid,void **ppvObject) {
5416 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5417}
5418static inline ULONG ISpLexicon_AddRef(ISpLexicon* This) {
5419 return This->lpVtbl->AddRef(This);
5420}
5421static inline ULONG ISpLexicon_Release(ISpLexicon* This) {
5422 return This->lpVtbl->Release(This);
5423}
5424/*** ISpLexicon methods ***/
5425static inline HRESULT ISpLexicon_GetPronunciations(ISpLexicon* This,LPCWSTR pszWord,WORD LangID,DWORD dwFlags,SPWORDPRONUNCIATIONLIST *pWordPronunciationList) {
5426 return This->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList);
5427}
5428static inline HRESULT ISpLexicon_AddPronunciation(ISpLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
5429 return This->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
5430}
5431static inline HRESULT ISpLexicon_RemovePronunciation(ISpLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
5432 return This->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
5433}
5434static inline HRESULT ISpLexicon_GetGeneration(ISpLexicon* This,DWORD *pdwGeneration) {
5435 return This->lpVtbl->GetGeneration(This,pdwGeneration);
5436}
5437static inline HRESULT ISpLexicon_GetGenerationChange(ISpLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,SPWORDLIST *pWordList) {
5438 return This->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList);
5439}
5440static inline HRESULT ISpLexicon_GetWords(ISpLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,DWORD *pdwCookie,SPWORDLIST *pWordList) {
5441 return This->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList);
5442}
5443#endif
5444#endif
5445
5446#endif
5447
5448
5449#endif /* __ISpLexicon_INTERFACE_DEFINED__ */
5450
5451/*****************************************************************************
5452 * ISpContainerLexicon interface
5453 */
5454#ifndef __ISpContainerLexicon_INTERFACE_DEFINED__
5455#define __ISpContainerLexicon_INTERFACE_DEFINED__
5456
5457DEFINE_GUID(IID_ISpContainerLexicon, 0x8565572f, 0xc094, 0x41cc, 0xb5,0x6e, 0x10,0xbd,0x9c,0x3f,0xf0,0x44);
5458#if defined(__cplusplus) && !defined(CINTERFACE)
5459MIDL_INTERFACE("8565572f-c094-41cc-b56e-10bd9c3ff044")
5460ISpContainerLexicon : public ISpLexicon
5461{
5462 virtual HRESULT STDMETHODCALLTYPE AddLexicon(
5463 ISpLexicon *pAddLexicon,
5464 DWORD dwFlags) = 0;
5465
5466};
5467#ifdef __CRT_UUID_DECL
5468__CRT_UUID_DECL(ISpContainerLexicon, 0x8565572f, 0xc094, 0x41cc, 0xb5,0x6e, 0x10,0xbd,0x9c,0x3f,0xf0,0x44)
5469#endif
5470#else
5471typedef struct ISpContainerLexiconVtbl {
5472 BEGIN_INTERFACE
5473
5474 /*** IUnknown methods ***/
5475 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5476 ISpContainerLexicon *This,
5477 REFIID riid,
5478 void **ppvObject);
5479
5480 ULONG (STDMETHODCALLTYPE *AddRef)(
5481 ISpContainerLexicon *This);
5482
5483 ULONG (STDMETHODCALLTYPE *Release)(
5484 ISpContainerLexicon *This);
5485
5486 /*** ISpLexicon methods ***/
5487 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
5488 ISpContainerLexicon *This,
5489 LPCWSTR pszWord,
5490 WORD LangID,
5491 DWORD dwFlags,
5492 SPWORDPRONUNCIATIONLIST *pWordPronunciationList);
5493
5494 HRESULT (STDMETHODCALLTYPE *AddPronunciation)(
5495 ISpContainerLexicon *This,
5496 LPCWSTR pszWord,
5497 WORD LangID,
5498 SPPARTOFSPEECH ePartOfSpeech,
5499 PCSPPHONEID pszPronunciation);
5500
5501 HRESULT (STDMETHODCALLTYPE *RemovePronunciation)(
5502 ISpContainerLexicon *This,
5503 LPCWSTR pszWord,
5504 WORD LangID,
5505 SPPARTOFSPEECH ePartOfSpeech,
5506 PCSPPHONEID pszPronunciation);
5507
5508 HRESULT (STDMETHODCALLTYPE *GetGeneration)(
5509 ISpContainerLexicon *This,
5510 DWORD *pdwGeneration);
5511
5512 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
5513 ISpContainerLexicon *This,
5514 DWORD dwFlags,
5515 DWORD *pdwGeneration,
5516 SPWORDLIST *pWordList);
5517
5518 HRESULT (STDMETHODCALLTYPE *GetWords)(
5519 ISpContainerLexicon *This,
5520 DWORD dwFlags,
5521 DWORD *pdwGeneration,
5522 DWORD *pdwCookie,
5523 SPWORDLIST *pWordList);
5524
5525 /*** ISpContainerLexicon methods ***/
5526 HRESULT (STDMETHODCALLTYPE *AddLexicon)(
5527 ISpContainerLexicon *This,
5528 ISpLexicon *pAddLexicon,
5529 DWORD dwFlags);
5530
5531 END_INTERFACE
5532} ISpContainerLexiconVtbl;
5533
5534interface ISpContainerLexicon {
5535 CONST_VTBL ISpContainerLexiconVtbl* lpVtbl;
5536};
5537
5538#ifdef COBJMACROS
5539#ifndef WIDL_C_INLINE_WRAPPERS
5540/*** IUnknown methods ***/
5541#define ISpContainerLexicon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5542#define ISpContainerLexicon_AddRef(This) (This)->lpVtbl->AddRef(This)
5543#define ISpContainerLexicon_Release(This) (This)->lpVtbl->Release(This)
5544/*** ISpLexicon methods ***/
5545#define ISpContainerLexicon_GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList) (This)->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList)
5546#define ISpContainerLexicon_AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
5547#define ISpContainerLexicon_RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation) (This)->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation)
5548#define ISpContainerLexicon_GetGeneration(This,pdwGeneration) (This)->lpVtbl->GetGeneration(This,pdwGeneration)
5549#define ISpContainerLexicon_GetGenerationChange(This,dwFlags,pdwGeneration,pWordList) (This)->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList)
5550#define ISpContainerLexicon_GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList) (This)->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList)
5551/*** ISpContainerLexicon methods ***/
5552#define ISpContainerLexicon_AddLexicon(This,pAddLexicon,dwFlags) (This)->lpVtbl->AddLexicon(This,pAddLexicon,dwFlags)
5553#else
5554/*** IUnknown methods ***/
5555static inline HRESULT ISpContainerLexicon_QueryInterface(ISpContainerLexicon* This,REFIID riid,void **ppvObject) {
5556 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5557}
5558static inline ULONG ISpContainerLexicon_AddRef(ISpContainerLexicon* This) {
5559 return This->lpVtbl->AddRef(This);
5560}
5561static inline ULONG ISpContainerLexicon_Release(ISpContainerLexicon* This) {
5562 return This->lpVtbl->Release(This);
5563}
5564/*** ISpLexicon methods ***/
5565static inline HRESULT ISpContainerLexicon_GetPronunciations(ISpContainerLexicon* This,LPCWSTR pszWord,WORD LangID,DWORD dwFlags,SPWORDPRONUNCIATIONLIST *pWordPronunciationList) {
5566 return This->lpVtbl->GetPronunciations(This,pszWord,LangID,dwFlags,pWordPronunciationList);
5567}
5568static inline HRESULT ISpContainerLexicon_AddPronunciation(ISpContainerLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
5569 return This->lpVtbl->AddPronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
5570}
5571static inline HRESULT ISpContainerLexicon_RemovePronunciation(ISpContainerLexicon* This,LPCWSTR pszWord,WORD LangID,SPPARTOFSPEECH ePartOfSpeech,PCSPPHONEID pszPronunciation) {
5572 return This->lpVtbl->RemovePronunciation(This,pszWord,LangID,ePartOfSpeech,pszPronunciation);
5573}
5574static inline HRESULT ISpContainerLexicon_GetGeneration(ISpContainerLexicon* This,DWORD *pdwGeneration) {
5575 return This->lpVtbl->GetGeneration(This,pdwGeneration);
5576}
5577static inline HRESULT ISpContainerLexicon_GetGenerationChange(ISpContainerLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,SPWORDLIST *pWordList) {
5578 return This->lpVtbl->GetGenerationChange(This,dwFlags,pdwGeneration,pWordList);
5579}
5580static inline HRESULT ISpContainerLexicon_GetWords(ISpContainerLexicon* This,DWORD dwFlags,DWORD *pdwGeneration,DWORD *pdwCookie,SPWORDLIST *pWordList) {
5581 return This->lpVtbl->GetWords(This,dwFlags,pdwGeneration,pdwCookie,pWordList);
5582}
5583/*** ISpContainerLexicon methods ***/
5584static inline HRESULT ISpContainerLexicon_AddLexicon(ISpContainerLexicon* This,ISpLexicon *pAddLexicon,DWORD dwFlags) {
5585 return This->lpVtbl->AddLexicon(This,pAddLexicon,dwFlags);
5586}
5587#endif
5588#endif
5589
5590#endif
5591
5592
5593#endif /* __ISpContainerLexicon_INTERFACE_DEFINED__ */
5594
5595/*****************************************************************************
5596 * ISpPhoneConverter interface
5597 */
5598#ifndef __ISpPhoneConverter_INTERFACE_DEFINED__
5599#define __ISpPhoneConverter_INTERFACE_DEFINED__
5600
5601DEFINE_GUID(IID_ISpPhoneConverter, 0x8445c581, 0x0cac, 0x4a38, 0xab,0xfe, 0x9b,0x2c,0xe2,0x82,0x64,0x55);
5602#if defined(__cplusplus) && !defined(CINTERFACE)
5603MIDL_INTERFACE("8445c581-0cac-4a38-abfe-9b2ce2826455")
5604ISpPhoneConverter : public ISpObjectWithToken
5605{
5606 virtual HRESULT STDMETHODCALLTYPE PhoneToId(
5607 LPCWSTR pszPhone,
5608 SPPHONEID *pId) = 0;
5609
5610 virtual HRESULT STDMETHODCALLTYPE IdToPhone(
5611 PCSPPHONEID pId,
5612 WCHAR *pszPhone) = 0;
5613
5614};
5615#ifdef __CRT_UUID_DECL
5616__CRT_UUID_DECL(ISpPhoneConverter, 0x8445c581, 0x0cac, 0x4a38, 0xab,0xfe, 0x9b,0x2c,0xe2,0x82,0x64,0x55)
5617#endif
5618#else
5619typedef struct ISpPhoneConverterVtbl {
5620 BEGIN_INTERFACE
5621
5622 /*** IUnknown methods ***/
5623 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5624 ISpPhoneConverter *This,
5625 REFIID riid,
5626 void **ppvObject);
5627
5628 ULONG (STDMETHODCALLTYPE *AddRef)(
5629 ISpPhoneConverter *This);
5630
5631 ULONG (STDMETHODCALLTYPE *Release)(
5632 ISpPhoneConverter *This);
5633
5634 /*** ISpObjectWithToken methods ***/
5635 HRESULT (STDMETHODCALLTYPE *SetObjectToken)(
5636 ISpPhoneConverter *This,
5637 ISpObjectToken *pToken);
5638
5639 HRESULT (STDMETHODCALLTYPE *GetObjectToken)(
5640 ISpPhoneConverter *This,
5641 ISpObjectToken **ppToken);
5642
5643 /*** ISpPhoneConverter methods ***/
5644 HRESULT (STDMETHODCALLTYPE *PhoneToId)(
5645 ISpPhoneConverter *This,
5646 LPCWSTR pszPhone,
5647 SPPHONEID *pId);
5648
5649 HRESULT (STDMETHODCALLTYPE *IdToPhone)(
5650 ISpPhoneConverter *This,
5651 PCSPPHONEID pId,
5652 WCHAR *pszPhone);
5653
5654 END_INTERFACE
5655} ISpPhoneConverterVtbl;
5656
5657interface ISpPhoneConverter {
5658 CONST_VTBL ISpPhoneConverterVtbl* lpVtbl;
5659};
5660
5661#ifdef COBJMACROS
5662#ifndef WIDL_C_INLINE_WRAPPERS
5663/*** IUnknown methods ***/
5664#define ISpPhoneConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5665#define ISpPhoneConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
5666#define ISpPhoneConverter_Release(This) (This)->lpVtbl->Release(This)
5667/*** ISpObjectWithToken methods ***/
5668#define ISpPhoneConverter_SetObjectToken(This,pToken) (This)->lpVtbl->SetObjectToken(This,pToken)
5669#define ISpPhoneConverter_GetObjectToken(This,ppToken) (This)->lpVtbl->GetObjectToken(This,ppToken)
5670/*** ISpPhoneConverter methods ***/
5671#define ISpPhoneConverter_PhoneToId(This,pszPhone,pId) (This)->lpVtbl->PhoneToId(This,pszPhone,pId)
5672#define ISpPhoneConverter_IdToPhone(This,pId,pszPhone) (This)->lpVtbl->IdToPhone(This,pId,pszPhone)
5673#else
5674/*** IUnknown methods ***/
5675static inline HRESULT ISpPhoneConverter_QueryInterface(ISpPhoneConverter* This,REFIID riid,void **ppvObject) {
5676 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5677}
5678static inline ULONG ISpPhoneConverter_AddRef(ISpPhoneConverter* This) {
5679 return This->lpVtbl->AddRef(This);
5680}
5681static inline ULONG ISpPhoneConverter_Release(ISpPhoneConverter* This) {
5682 return This->lpVtbl->Release(This);
5683}
5684/*** ISpObjectWithToken methods ***/
5685static inline HRESULT ISpPhoneConverter_SetObjectToken(ISpPhoneConverter* This,ISpObjectToken *pToken) {
5686 return This->lpVtbl->SetObjectToken(This,pToken);
5687}
5688static inline HRESULT ISpPhoneConverter_GetObjectToken(ISpPhoneConverter* This,ISpObjectToken **ppToken) {
5689 return This->lpVtbl->GetObjectToken(This,ppToken);
5690}
5691/*** ISpPhoneConverter methods ***/
5692static inline HRESULT ISpPhoneConverter_PhoneToId(ISpPhoneConverter* This,LPCWSTR pszPhone,SPPHONEID *pId) {
5693 return This->lpVtbl->PhoneToId(This,pszPhone,pId);
5694}
5695static inline HRESULT ISpPhoneConverter_IdToPhone(ISpPhoneConverter* This,PCSPPHONEID pId,WCHAR *pszPhone) {
5696 return This->lpVtbl->IdToPhone(This,pId,pszPhone);
5697}
5698#endif
5699#endif
5700
5701#endif
5702
5703
5704#endif /* __ISpPhoneConverter_INTERFACE_DEFINED__ */
5705
5706typedef struct SPVPITCH {
5707 LONG MiddleAdj;
5708 LONG RangeAdj;
5709} SPVPITCH;
5710typedef struct SPVCONTEXT {
5711 LPCWSTR pCategory;
5712 LPCWSTR pBefore;
5713 LPCWSTR pAfter;
5714} SPVCONTEXT;
5715typedef struct SPVSTATE {
5716 SPVACTIONS eAction;
5717 WORD LangID;
5718 WORD wReserved;
5719 LONG EmphAdj;
5720 LONG RateAdj;
5721 ULONG Volume;
5722 SPVPITCH PitchAdj;
5723 ULONG SilenceMSecs;
5724 SPPHONEID *pPhoneIds;
5725 SPPARTOFSPEECH ePartOfSpeech;
5726 SPVCONTEXT Context;
5727} SPVSTATE;
5728typedef struct SPVOICESTATUS {
5729 ULONG ulCurrentStream;
5730 ULONG ulLastStreamQueued;
5731 HRESULT hrLastResult;
5732 DWORD dwRunningState;
5733 ULONG ulInputWordPos;
5734 ULONG ulInputWordLen;
5735 ULONG ulInputSentPos;
5736 ULONG ulInputSentLen;
5737 LONG lBookmarkId;
5738 SPPHONEID PhonemeId;
5739 SPVISEMES VisemeId;
5740 DWORD dwReserved1;
5741 DWORD dwReserved2;
5742} SPVOICESTATUS;
5743typedef enum SPEAKFLAGS {
5744 SPF_DEFAULT = 0,
5745 SPF_ASYNC = 1,
5746 SPF_PURGEBEFORESPEAK = 2,
5747 SPF_IS_FILENAME = 4,
5748 SPF_IS_XML = 8,
5749 SPF_IS_NOT_XML = 0x10,
5750 SPF_PERSIST_XML = 0x20,
5751 SPF_NLP_SPEAK_PUNC = 0x40,
5752 SPF_NLP_MASK = SPF_NLP_SPEAK_PUNC,
5753 SPF_VOICE_MASK = (((((SPF_ASYNC | SPF_PURGEBEFORESPEAK) | SPF_IS_FILENAME) | SPF_IS_XML) | SPF_IS_NOT_XML) | SPF_NLP_MASK) | SPF_PERSIST_XML,
5754 SPF_UNUSED_FLAGS = ~SPF_VOICE_MASK
5755} SPEAKFLAGS;
5756/*****************************************************************************
5757 * ISpVoice interface
5758 */
5759#ifndef __ISpVoice_INTERFACE_DEFINED__
5760#define __ISpVoice_INTERFACE_DEFINED__
5761
5762DEFINE_GUID(IID_ISpVoice, 0x6c44df74, 0x72b9, 0x4992, 0xa1,0xec, 0xef,0x99,0x6e,0x04,0x22,0xd4);
5763#if defined(__cplusplus) && !defined(CINTERFACE)
5764MIDL_INTERFACE("6c44df74-72b9-4992-a1ec-ef996e0422d4")
5765ISpVoice : public ISpEventSource
5766{
5767 virtual HRESULT STDMETHODCALLTYPE SetOutput(
5768 IUnknown *pUnkOutput,
5769 WINBOOL fAllowFormatChanges) = 0;
5770
5771 virtual HRESULT STDMETHODCALLTYPE GetOutputObjectToken(
5772 ISpObjectToken **ppObjectToken) = 0;
5773
5774 virtual HRESULT STDMETHODCALLTYPE GetOutputStream(
5775 ISpStreamFormat **ppStream) = 0;
5776
5777 virtual HRESULT STDMETHODCALLTYPE Pause(
5778 ) = 0;
5779
5780 virtual HRESULT STDMETHODCALLTYPE Resume(
5781 ) = 0;
5782
5783 virtual HRESULT STDMETHODCALLTYPE SetVoice(
5784 ISpObjectToken *pToken) = 0;
5785
5786 virtual HRESULT STDMETHODCALLTYPE GetVoice(
5787 ISpObjectToken **ppToken) = 0;
5788
5789 virtual HRESULT STDMETHODCALLTYPE Speak(
5790 LPCWSTR pwcs,
5791 DWORD dwFlags,
5792 ULONG *pulStreamNumber) = 0;
5793
5794 virtual HRESULT STDMETHODCALLTYPE SpeakStream(
5795 IStream *pStream,
5796 DWORD dwFlags,
5797 ULONG *pulStreamNumber) = 0;
5798
5799 virtual HRESULT STDMETHODCALLTYPE GetStatus(
5800 SPVOICESTATUS *pStatus,
5801 LPWSTR *ppszLastBookmark) = 0;
5802
5803 virtual HRESULT STDMETHODCALLTYPE Skip(
5804 LPCWSTR pItemType,
5805 LONG lNumItems,
5806 ULONG *pulNumSkipped) = 0;
5807
5808 virtual HRESULT STDMETHODCALLTYPE SetPriority(
5809 SPVPRIORITY ePriority) = 0;
5810
5811 virtual HRESULT STDMETHODCALLTYPE GetPriority(
5812 SPVPRIORITY *pePriority) = 0;
5813
5814 virtual HRESULT STDMETHODCALLTYPE SetAlertBoundary(
5815 SPEVENTENUM eBoundary) = 0;
5816
5817 virtual HRESULT STDMETHODCALLTYPE GetAlertBoundary(
5818 SPEVENTENUM *peBoundary) = 0;
5819
5820 virtual HRESULT STDMETHODCALLTYPE SetRate(
5821 LONG RateAdjust) = 0;
5822
5823 virtual HRESULT STDMETHODCALLTYPE GetRate(
5824 LONG *pRateAdjust) = 0;
5825
5826 virtual HRESULT STDMETHODCALLTYPE SetVolume(
5827 USHORT usVolume) = 0;
5828
5829 virtual HRESULT STDMETHODCALLTYPE GetVolume(
5830 USHORT *pusVolume) = 0;
5831
5832 virtual HRESULT STDMETHODCALLTYPE WaitUntilDone(
5833 ULONG msTimeout) = 0;
5834
5835 virtual HRESULT STDMETHODCALLTYPE SetSyncSpeakTimeout(
5836 ULONG msTimeout) = 0;
5837
5838 virtual HRESULT STDMETHODCALLTYPE GetSyncSpeakTimeout(
5839 ULONG *pmsTimeout) = 0;
5840
5841 virtual HANDLE STDMETHODCALLTYPE SpeakCompleteEvent(
5842 ) = 0;
5843
5844 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
5845 LPCWSTR pszTypeOfUI,
5846 void *pvExtraData,
5847 ULONG cbExtraData,
5848 WINBOOL *pfSupported) = 0;
5849
5850 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
5851 HWND hwndParent,
5852 LPCWSTR pszTitle,
5853 LPCWSTR pszTypeOfUI,
5854 void *pvExtraData,
5855 ULONG cbExtraData) = 0;
5856
5857};
5858#ifdef __CRT_UUID_DECL
5859__CRT_UUID_DECL(ISpVoice, 0x6c44df74, 0x72b9, 0x4992, 0xa1,0xec, 0xef,0x99,0x6e,0x04,0x22,0xd4)
5860#endif
5861#else
5862typedef struct ISpVoiceVtbl {
5863 BEGIN_INTERFACE
5864
5865 /*** IUnknown methods ***/
5866 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5867 ISpVoice *This,
5868 REFIID riid,
5869 void **ppvObject);
5870
5871 ULONG (STDMETHODCALLTYPE *AddRef)(
5872 ISpVoice *This);
5873
5874 ULONG (STDMETHODCALLTYPE *Release)(
5875 ISpVoice *This);
5876
5877 /*** ISpNotifySource methods ***/
5878 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
5879 ISpVoice *This,
5880 ISpNotifySink *pNotifySink);
5881
5882 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
5883 ISpVoice *This,
5884 HWND hWnd,
5885 UINT Msg,
5886 WPARAM wParam,
5887 LPARAM lParam);
5888
5889 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
5890 ISpVoice *This,
5891 SPNOTIFYCALLBACK *pfnCallback,
5892 WPARAM wParam,
5893 LPARAM lParam);
5894
5895 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
5896 ISpVoice *This,
5897 ISpNotifyCallback *pSpCallback,
5898 WPARAM wParam,
5899 LPARAM lParam);
5900
5901 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
5902 ISpVoice *This);
5903
5904 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
5905 ISpVoice *This,
5906 DWORD dwMilliseconds);
5907
5908 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
5909 ISpVoice *This);
5910
5911 /*** ISpEventSource methods ***/
5912 HRESULT (STDMETHODCALLTYPE *SetInterest)(
5913 ISpVoice *This,
5914 ULONGLONG ullEventInterest,
5915 ULONGLONG ullQueuedInterest);
5916
5917 HRESULT (STDMETHODCALLTYPE *GetEvents)(
5918 ISpVoice *This,
5919 ULONG ulCount,
5920 SPEVENT *pEventArray,
5921 ULONG *pulFetched);
5922
5923 HRESULT (STDMETHODCALLTYPE *GetInfo)(
5924 ISpVoice *This,
5925 SPEVENTSOURCEINFO *pInfo);
5926
5927 /*** ISpVoice methods ***/
5928 HRESULT (STDMETHODCALLTYPE *SetOutput)(
5929 ISpVoice *This,
5930 IUnknown *pUnkOutput,
5931 WINBOOL fAllowFormatChanges);
5932
5933 HRESULT (STDMETHODCALLTYPE *GetOutputObjectToken)(
5934 ISpVoice *This,
5935 ISpObjectToken **ppObjectToken);
5936
5937 HRESULT (STDMETHODCALLTYPE *GetOutputStream)(
5938 ISpVoice *This,
5939 ISpStreamFormat **ppStream);
5940
5941 HRESULT (STDMETHODCALLTYPE *Pause)(
5942 ISpVoice *This);
5943
5944 HRESULT (STDMETHODCALLTYPE *Resume)(
5945 ISpVoice *This);
5946
5947 HRESULT (STDMETHODCALLTYPE *SetVoice)(
5948 ISpVoice *This,
5949 ISpObjectToken *pToken);
5950
5951 HRESULT (STDMETHODCALLTYPE *GetVoice)(
5952 ISpVoice *This,
5953 ISpObjectToken **ppToken);
5954
5955 HRESULT (STDMETHODCALLTYPE *Speak)(
5956 ISpVoice *This,
5957 LPCWSTR pwcs,
5958 DWORD dwFlags,
5959 ULONG *pulStreamNumber);
5960
5961 HRESULT (STDMETHODCALLTYPE *SpeakStream)(
5962 ISpVoice *This,
5963 IStream *pStream,
5964 DWORD dwFlags,
5965 ULONG *pulStreamNumber);
5966
5967 HRESULT (STDMETHODCALLTYPE *GetStatus)(
5968 ISpVoice *This,
5969 SPVOICESTATUS *pStatus,
5970 LPWSTR *ppszLastBookmark);
5971
5972 HRESULT (STDMETHODCALLTYPE *Skip)(
5973 ISpVoice *This,
5974 LPCWSTR pItemType,
5975 LONG lNumItems,
5976 ULONG *pulNumSkipped);
5977
5978 HRESULT (STDMETHODCALLTYPE *SetPriority)(
5979 ISpVoice *This,
5980 SPVPRIORITY ePriority);
5981
5982 HRESULT (STDMETHODCALLTYPE *GetPriority)(
5983 ISpVoice *This,
5984 SPVPRIORITY *pePriority);
5985
5986 HRESULT (STDMETHODCALLTYPE *SetAlertBoundary)(
5987 ISpVoice *This,
5988 SPEVENTENUM eBoundary);
5989
5990 HRESULT (STDMETHODCALLTYPE *GetAlertBoundary)(
5991 ISpVoice *This,
5992 SPEVENTENUM *peBoundary);
5993
5994 HRESULT (STDMETHODCALLTYPE *SetRate)(
5995 ISpVoice *This,
5996 LONG RateAdjust);
5997
5998 HRESULT (STDMETHODCALLTYPE *GetRate)(
5999 ISpVoice *This,
6000 LONG *pRateAdjust);
6001
6002 HRESULT (STDMETHODCALLTYPE *SetVolume)(
6003 ISpVoice *This,
6004 USHORT usVolume);
6005
6006 HRESULT (STDMETHODCALLTYPE *GetVolume)(
6007 ISpVoice *This,
6008 USHORT *pusVolume);
6009
6010 HRESULT (STDMETHODCALLTYPE *WaitUntilDone)(
6011 ISpVoice *This,
6012 ULONG msTimeout);
6013
6014 HRESULT (STDMETHODCALLTYPE *SetSyncSpeakTimeout)(
6015 ISpVoice *This,
6016 ULONG msTimeout);
6017
6018 HRESULT (STDMETHODCALLTYPE *GetSyncSpeakTimeout)(
6019 ISpVoice *This,
6020 ULONG *pmsTimeout);
6021
6022 HANDLE (STDMETHODCALLTYPE *SpeakCompleteEvent)(
6023 ISpVoice *This);
6024
6025 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
6026 ISpVoice *This,
6027 LPCWSTR pszTypeOfUI,
6028 void *pvExtraData,
6029 ULONG cbExtraData,
6030 WINBOOL *pfSupported);
6031
6032 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
6033 ISpVoice *This,
6034 HWND hwndParent,
6035 LPCWSTR pszTitle,
6036 LPCWSTR pszTypeOfUI,
6037 void *pvExtraData,
6038 ULONG cbExtraData);
6039
6040 END_INTERFACE
6041} ISpVoiceVtbl;
6042
6043interface ISpVoice {
6044 CONST_VTBL ISpVoiceVtbl* lpVtbl;
6045};
6046
6047#ifdef COBJMACROS
6048#ifndef WIDL_C_INLINE_WRAPPERS
6049/*** IUnknown methods ***/
6050#define ISpVoice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6051#define ISpVoice_AddRef(This) (This)->lpVtbl->AddRef(This)
6052#define ISpVoice_Release(This) (This)->lpVtbl->Release(This)
6053/*** ISpNotifySource methods ***/
6054#define ISpVoice_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
6055#define ISpVoice_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
6056#define ISpVoice_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
6057#define ISpVoice_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
6058#define ISpVoice_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
6059#define ISpVoice_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
6060#define ISpVoice_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
6061/*** ISpEventSource methods ***/
6062#define ISpVoice_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
6063#define ISpVoice_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
6064#define ISpVoice_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
6065/*** ISpVoice methods ***/
6066#define ISpVoice_SetOutput(This,pUnkOutput,fAllowFormatChanges) (This)->lpVtbl->SetOutput(This,pUnkOutput,fAllowFormatChanges)
6067#define ISpVoice_GetOutputObjectToken(This,ppObjectToken) (This)->lpVtbl->GetOutputObjectToken(This,ppObjectToken)
6068#define ISpVoice_GetOutputStream(This,ppStream) (This)->lpVtbl->GetOutputStream(This,ppStream)
6069#define ISpVoice_Pause(This) (This)->lpVtbl->Pause(This)
6070#define ISpVoice_Resume(This) (This)->lpVtbl->Resume(This)
6071#define ISpVoice_SetVoice(This,pToken) (This)->lpVtbl->SetVoice(This,pToken)
6072#define ISpVoice_GetVoice(This,ppToken) (This)->lpVtbl->GetVoice(This,ppToken)
6073#define ISpVoice_Speak(This,pwcs,dwFlags,pulStreamNumber) (This)->lpVtbl->Speak(This,pwcs,dwFlags,pulStreamNumber)
6074#define ISpVoice_SpeakStream(This,pStream,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakStream(This,pStream,dwFlags,pulStreamNumber)
6075#define ISpVoice_GetStatus(This,pStatus,ppszLastBookmark) (This)->lpVtbl->GetStatus(This,pStatus,ppszLastBookmark)
6076#define ISpVoice_Skip(This,pItemType,lNumItems,pulNumSkipped) (This)->lpVtbl->Skip(This,pItemType,lNumItems,pulNumSkipped)
6077#define ISpVoice_SetPriority(This,ePriority) (This)->lpVtbl->SetPriority(This,ePriority)
6078#define ISpVoice_GetPriority(This,pePriority) (This)->lpVtbl->GetPriority(This,pePriority)
6079#define ISpVoice_SetAlertBoundary(This,eBoundary) (This)->lpVtbl->SetAlertBoundary(This,eBoundary)
6080#define ISpVoice_GetAlertBoundary(This,peBoundary) (This)->lpVtbl->GetAlertBoundary(This,peBoundary)
6081#define ISpVoice_SetRate(This,RateAdjust) (This)->lpVtbl->SetRate(This,RateAdjust)
6082#define ISpVoice_GetRate(This,pRateAdjust) (This)->lpVtbl->GetRate(This,pRateAdjust)
6083#define ISpVoice_SetVolume(This,usVolume) (This)->lpVtbl->SetVolume(This,usVolume)
6084#define ISpVoice_GetVolume(This,pusVolume) (This)->lpVtbl->GetVolume(This,pusVolume)
6085#define ISpVoice_WaitUntilDone(This,msTimeout) (This)->lpVtbl->WaitUntilDone(This,msTimeout)
6086#define ISpVoice_SetSyncSpeakTimeout(This,msTimeout) (This)->lpVtbl->SetSyncSpeakTimeout(This,msTimeout)
6087#define ISpVoice_GetSyncSpeakTimeout(This,pmsTimeout) (This)->lpVtbl->GetSyncSpeakTimeout(This,pmsTimeout)
6088#define ISpVoice_SpeakCompleteEvent(This) (This)->lpVtbl->SpeakCompleteEvent(This)
6089#define ISpVoice_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported)
6090#define ISpVoice_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData)
6091#else
6092/*** IUnknown methods ***/
6093static inline HRESULT ISpVoice_QueryInterface(ISpVoice* This,REFIID riid,void **ppvObject) {
6094 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6095}
6096static inline ULONG ISpVoice_AddRef(ISpVoice* This) {
6097 return This->lpVtbl->AddRef(This);
6098}
6099static inline ULONG ISpVoice_Release(ISpVoice* This) {
6100 return This->lpVtbl->Release(This);
6101}
6102/*** ISpNotifySource methods ***/
6103static inline HRESULT ISpVoice_SetNotifySink(ISpVoice* This,ISpNotifySink *pNotifySink) {
6104 return This->lpVtbl->SetNotifySink(This,pNotifySink);
6105}
6106static inline HRESULT ISpVoice_SetNotifyWindowMessage(ISpVoice* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
6107 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
6108}
6109static inline HRESULT ISpVoice_SetNotifyCallbackFunction(ISpVoice* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
6110 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
6111}
6112static inline HRESULT ISpVoice_SetNotifyCallbackInterface(ISpVoice* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
6113 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
6114}
6115static inline HRESULT ISpVoice_SetNotifyWin32Event(ISpVoice* This) {
6116 return This->lpVtbl->SetNotifyWin32Event(This);
6117}
6118static inline HRESULT ISpVoice_WaitForNotifyEvent(ISpVoice* This,DWORD dwMilliseconds) {
6119 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
6120}
6121static inline HANDLE ISpVoice_GetNotifyEventHandle(ISpVoice* This) {
6122 return This->lpVtbl->GetNotifyEventHandle(This);
6123}
6124/*** ISpEventSource methods ***/
6125static inline HRESULT ISpVoice_SetInterest(ISpVoice* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
6126 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
6127}
6128static inline HRESULT ISpVoice_GetEvents(ISpVoice* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
6129 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
6130}
6131static inline HRESULT ISpVoice_GetInfo(ISpVoice* This,SPEVENTSOURCEINFO *pInfo) {
6132 return This->lpVtbl->GetInfo(This,pInfo);
6133}
6134/*** ISpVoice methods ***/
6135static inline HRESULT ISpVoice_SetOutput(ISpVoice* This,IUnknown *pUnkOutput,WINBOOL fAllowFormatChanges) {
6136 return This->lpVtbl->SetOutput(This,pUnkOutput,fAllowFormatChanges);
6137}
6138static inline HRESULT ISpVoice_GetOutputObjectToken(ISpVoice* This,ISpObjectToken **ppObjectToken) {
6139 return This->lpVtbl->GetOutputObjectToken(This,ppObjectToken);
6140}
6141static inline HRESULT ISpVoice_GetOutputStream(ISpVoice* This,ISpStreamFormat **ppStream) {
6142 return This->lpVtbl->GetOutputStream(This,ppStream);
6143}
6144static inline HRESULT ISpVoice_Pause(ISpVoice* This) {
6145 return This->lpVtbl->Pause(This);
6146}
6147static inline HRESULT ISpVoice_Resume(ISpVoice* This) {
6148 return This->lpVtbl->Resume(This);
6149}
6150static inline HRESULT ISpVoice_SetVoice(ISpVoice* This,ISpObjectToken *pToken) {
6151 return This->lpVtbl->SetVoice(This,pToken);
6152}
6153static inline HRESULT ISpVoice_GetVoice(ISpVoice* This,ISpObjectToken **ppToken) {
6154 return This->lpVtbl->GetVoice(This,ppToken);
6155}
6156static inline HRESULT ISpVoice_Speak(ISpVoice* This,LPCWSTR pwcs,DWORD dwFlags,ULONG *pulStreamNumber) {
6157 return This->lpVtbl->Speak(This,pwcs,dwFlags,pulStreamNumber);
6158}
6159static inline HRESULT ISpVoice_SpeakStream(ISpVoice* This,IStream *pStream,DWORD dwFlags,ULONG *pulStreamNumber) {
6160 return This->lpVtbl->SpeakStream(This,pStream,dwFlags,pulStreamNumber);
6161}
6162static inline HRESULT ISpVoice_GetStatus(ISpVoice* This,SPVOICESTATUS *pStatus,LPWSTR *ppszLastBookmark) {
6163 return This->lpVtbl->GetStatus(This,pStatus,ppszLastBookmark);
6164}
6165static inline HRESULT ISpVoice_Skip(ISpVoice* This,LPCWSTR pItemType,LONG lNumItems,ULONG *pulNumSkipped) {
6166 return This->lpVtbl->Skip(This,pItemType,lNumItems,pulNumSkipped);
6167}
6168static inline HRESULT ISpVoice_SetPriority(ISpVoice* This,SPVPRIORITY ePriority) {
6169 return This->lpVtbl->SetPriority(This,ePriority);
6170}
6171static inline HRESULT ISpVoice_GetPriority(ISpVoice* This,SPVPRIORITY *pePriority) {
6172 return This->lpVtbl->GetPriority(This,pePriority);
6173}
6174static inline HRESULT ISpVoice_SetAlertBoundary(ISpVoice* This,SPEVENTENUM eBoundary) {
6175 return This->lpVtbl->SetAlertBoundary(This,eBoundary);
6176}
6177static inline HRESULT ISpVoice_GetAlertBoundary(ISpVoice* This,SPEVENTENUM *peBoundary) {
6178 return This->lpVtbl->GetAlertBoundary(This,peBoundary);
6179}
6180static inline HRESULT ISpVoice_SetRate(ISpVoice* This,LONG RateAdjust) {
6181 return This->lpVtbl->SetRate(This,RateAdjust);
6182}
6183static inline HRESULT ISpVoice_GetRate(ISpVoice* This,LONG *pRateAdjust) {
6184 return This->lpVtbl->GetRate(This,pRateAdjust);
6185}
6186static inline HRESULT ISpVoice_SetVolume(ISpVoice* This,USHORT usVolume) {
6187 return This->lpVtbl->SetVolume(This,usVolume);
6188}
6189static inline HRESULT ISpVoice_GetVolume(ISpVoice* This,USHORT *pusVolume) {
6190 return This->lpVtbl->GetVolume(This,pusVolume);
6191}
6192static inline HRESULT ISpVoice_WaitUntilDone(ISpVoice* This,ULONG msTimeout) {
6193 return This->lpVtbl->WaitUntilDone(This,msTimeout);
6194}
6195static inline HRESULT ISpVoice_SetSyncSpeakTimeout(ISpVoice* This,ULONG msTimeout) {
6196 return This->lpVtbl->SetSyncSpeakTimeout(This,msTimeout);
6197}
6198static inline HRESULT ISpVoice_GetSyncSpeakTimeout(ISpVoice* This,ULONG *pmsTimeout) {
6199 return This->lpVtbl->GetSyncSpeakTimeout(This,pmsTimeout);
6200}
6201static inline HANDLE ISpVoice_SpeakCompleteEvent(ISpVoice* This) {
6202 return This->lpVtbl->SpeakCompleteEvent(This);
6203}
6204static inline HRESULT ISpVoice_IsUISupported(ISpVoice* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,WINBOOL *pfSupported) {
6205 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported);
6206}
6207static inline HRESULT ISpVoice_DisplayUI(ISpVoice* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData) {
6208 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData);
6209}
6210#endif
6211#endif
6212
6213#endif
6214
6215
6216#endif /* __ISpVoice_INTERFACE_DEFINED__ */
6217
6218/*****************************************************************************
6219 * ISpPhrase interface
6220 */
6221#ifndef __ISpPhrase_INTERFACE_DEFINED__
6222#define __ISpPhrase_INTERFACE_DEFINED__
6223
6224DEFINE_GUID(IID_ISpPhrase, 0x1a5c0354, 0xb621, 0x4b5a, 0x87,0x91, 0xd3,0x06,0xed,0x37,0x9e,0x53);
6225#if defined(__cplusplus) && !defined(CINTERFACE)
6226MIDL_INTERFACE("1a5c0354-b621-4b5a-8791-d306ed379e53")
6227ISpPhrase : public IUnknown
6228{
6229 virtual HRESULT STDMETHODCALLTYPE GetPhrase(
6230 SPPHRASE **ppCoMemPhrase) = 0;
6231
6232 virtual HRESULT STDMETHODCALLTYPE GetSerializedPhrase(
6233 SPSERIALIZEDPHRASE **ppCoMemPhrase) = 0;
6234
6235 virtual HRESULT STDMETHODCALLTYPE GetText(
6236 ULONG ulStart,
6237 ULONG ulCount,
6238 WINBOOL fUseTextReplacements,
6239 LPWSTR *ppszCoMemText,
6240 BYTE *pbDisplayAttributes) = 0;
6241
6242 virtual HRESULT STDMETHODCALLTYPE Discard(
6243 DWORD dwValueTypes) = 0;
6244
6245};
6246#ifdef __CRT_UUID_DECL
6247__CRT_UUID_DECL(ISpPhrase, 0x1a5c0354, 0xb621, 0x4b5a, 0x87,0x91, 0xd3,0x06,0xed,0x37,0x9e,0x53)
6248#endif
6249#else
6250typedef struct ISpPhraseVtbl {
6251 BEGIN_INTERFACE
6252
6253 /*** IUnknown methods ***/
6254 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6255 ISpPhrase *This,
6256 REFIID riid,
6257 void **ppvObject);
6258
6259 ULONG (STDMETHODCALLTYPE *AddRef)(
6260 ISpPhrase *This);
6261
6262 ULONG (STDMETHODCALLTYPE *Release)(
6263 ISpPhrase *This);
6264
6265 /*** ISpPhrase methods ***/
6266 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
6267 ISpPhrase *This,
6268 SPPHRASE **ppCoMemPhrase);
6269
6270 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
6271 ISpPhrase *This,
6272 SPSERIALIZEDPHRASE **ppCoMemPhrase);
6273
6274 HRESULT (STDMETHODCALLTYPE *GetText)(
6275 ISpPhrase *This,
6276 ULONG ulStart,
6277 ULONG ulCount,
6278 WINBOOL fUseTextReplacements,
6279 LPWSTR *ppszCoMemText,
6280 BYTE *pbDisplayAttributes);
6281
6282 HRESULT (STDMETHODCALLTYPE *Discard)(
6283 ISpPhrase *This,
6284 DWORD dwValueTypes);
6285
6286 END_INTERFACE
6287} ISpPhraseVtbl;
6288
6289interface ISpPhrase {
6290 CONST_VTBL ISpPhraseVtbl* lpVtbl;
6291};
6292
6293#ifdef COBJMACROS
6294#ifndef WIDL_C_INLINE_WRAPPERS
6295/*** IUnknown methods ***/
6296#define ISpPhrase_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6297#define ISpPhrase_AddRef(This) (This)->lpVtbl->AddRef(This)
6298#define ISpPhrase_Release(This) (This)->lpVtbl->Release(This)
6299/*** ISpPhrase methods ***/
6300#define ISpPhrase_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
6301#define ISpPhrase_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
6302#define ISpPhrase_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
6303#define ISpPhrase_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
6304#else
6305/*** IUnknown methods ***/
6306static inline HRESULT ISpPhrase_QueryInterface(ISpPhrase* This,REFIID riid,void **ppvObject) {
6307 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6308}
6309static inline ULONG ISpPhrase_AddRef(ISpPhrase* This) {
6310 return This->lpVtbl->AddRef(This);
6311}
6312static inline ULONG ISpPhrase_Release(ISpPhrase* This) {
6313 return This->lpVtbl->Release(This);
6314}
6315/*** ISpPhrase methods ***/
6316static inline HRESULT ISpPhrase_GetPhrase(ISpPhrase* This,SPPHRASE **ppCoMemPhrase) {
6317 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
6318}
6319static inline HRESULT ISpPhrase_GetSerializedPhrase(ISpPhrase* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
6320 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
6321}
6322static inline HRESULT ISpPhrase_GetText(ISpPhrase* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
6323 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
6324}
6325static inline HRESULT ISpPhrase_Discard(ISpPhrase* This,DWORD dwValueTypes) {
6326 return This->lpVtbl->Discard(This,dwValueTypes);
6327}
6328#endif
6329#endif
6330
6331#endif
6332
6333
6334#endif /* __ISpPhrase_INTERFACE_DEFINED__ */
6335
6336/*****************************************************************************
6337 * ISpPhraseAlt interface
6338 */
6339#ifndef __ISpPhraseAlt_INTERFACE_DEFINED__
6340#define __ISpPhraseAlt_INTERFACE_DEFINED__
6341
6342DEFINE_GUID(IID_ISpPhraseAlt, 0x8fcebc98, 0x4e49, 0x4067, 0x9c,0x6c, 0xd8,0x6a,0x0e,0x09,0x2e,0x3d);
6343#if defined(__cplusplus) && !defined(CINTERFACE)
6344MIDL_INTERFACE("8fcebc98-4e49-4067-9c6c-d86a0e092e3d")
6345ISpPhraseAlt : public ISpPhrase
6346{
6347 virtual HRESULT STDMETHODCALLTYPE GetAltInfo(
6348 ISpPhrase **ppParent,
6349 ULONG *pulStartElementInParent,
6350 ULONG *pcElementsInParent,
6351 ULONG *pcElementsInAlt) = 0;
6352
6353 virtual HRESULT STDMETHODCALLTYPE Commit(
6354 ) = 0;
6355
6356};
6357#ifdef __CRT_UUID_DECL
6358__CRT_UUID_DECL(ISpPhraseAlt, 0x8fcebc98, 0x4e49, 0x4067, 0x9c,0x6c, 0xd8,0x6a,0x0e,0x09,0x2e,0x3d)
6359#endif
6360#else
6361typedef struct ISpPhraseAltVtbl {
6362 BEGIN_INTERFACE
6363
6364 /*** IUnknown methods ***/
6365 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6366 ISpPhraseAlt *This,
6367 REFIID riid,
6368 void **ppvObject);
6369
6370 ULONG (STDMETHODCALLTYPE *AddRef)(
6371 ISpPhraseAlt *This);
6372
6373 ULONG (STDMETHODCALLTYPE *Release)(
6374 ISpPhraseAlt *This);
6375
6376 /*** ISpPhrase methods ***/
6377 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
6378 ISpPhraseAlt *This,
6379 SPPHRASE **ppCoMemPhrase);
6380
6381 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
6382 ISpPhraseAlt *This,
6383 SPSERIALIZEDPHRASE **ppCoMemPhrase);
6384
6385 HRESULT (STDMETHODCALLTYPE *GetText)(
6386 ISpPhraseAlt *This,
6387 ULONG ulStart,
6388 ULONG ulCount,
6389 WINBOOL fUseTextReplacements,
6390 LPWSTR *ppszCoMemText,
6391 BYTE *pbDisplayAttributes);
6392
6393 HRESULT (STDMETHODCALLTYPE *Discard)(
6394 ISpPhraseAlt *This,
6395 DWORD dwValueTypes);
6396
6397 /*** ISpPhraseAlt methods ***/
6398 HRESULT (STDMETHODCALLTYPE *GetAltInfo)(
6399 ISpPhraseAlt *This,
6400 ISpPhrase **ppParent,
6401 ULONG *pulStartElementInParent,
6402 ULONG *pcElementsInParent,
6403 ULONG *pcElementsInAlt);
6404
6405 HRESULT (STDMETHODCALLTYPE *Commit)(
6406 ISpPhraseAlt *This);
6407
6408 END_INTERFACE
6409} ISpPhraseAltVtbl;
6410
6411interface ISpPhraseAlt {
6412 CONST_VTBL ISpPhraseAltVtbl* lpVtbl;
6413};
6414
6415#ifdef COBJMACROS
6416#ifndef WIDL_C_INLINE_WRAPPERS
6417/*** IUnknown methods ***/
6418#define ISpPhraseAlt_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6419#define ISpPhraseAlt_AddRef(This) (This)->lpVtbl->AddRef(This)
6420#define ISpPhraseAlt_Release(This) (This)->lpVtbl->Release(This)
6421/*** ISpPhrase methods ***/
6422#define ISpPhraseAlt_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
6423#define ISpPhraseAlt_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
6424#define ISpPhraseAlt_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
6425#define ISpPhraseAlt_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
6426/*** ISpPhraseAlt methods ***/
6427#define ISpPhraseAlt_GetAltInfo(This,ppParent,pulStartElementInParent,pcElementsInParent,pcElementsInAlt) (This)->lpVtbl->GetAltInfo(This,ppParent,pulStartElementInParent,pcElementsInParent,pcElementsInAlt)
6428#define ISpPhraseAlt_Commit(This) (This)->lpVtbl->Commit(This)
6429#else
6430/*** IUnknown methods ***/
6431static inline HRESULT ISpPhraseAlt_QueryInterface(ISpPhraseAlt* This,REFIID riid,void **ppvObject) {
6432 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6433}
6434static inline ULONG ISpPhraseAlt_AddRef(ISpPhraseAlt* This) {
6435 return This->lpVtbl->AddRef(This);
6436}
6437static inline ULONG ISpPhraseAlt_Release(ISpPhraseAlt* This) {
6438 return This->lpVtbl->Release(This);
6439}
6440/*** ISpPhrase methods ***/
6441static inline HRESULT ISpPhraseAlt_GetPhrase(ISpPhraseAlt* This,SPPHRASE **ppCoMemPhrase) {
6442 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
6443}
6444static inline HRESULT ISpPhraseAlt_GetSerializedPhrase(ISpPhraseAlt* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
6445 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
6446}
6447static inline HRESULT ISpPhraseAlt_GetText(ISpPhraseAlt* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
6448 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
6449}
6450static inline HRESULT ISpPhraseAlt_Discard(ISpPhraseAlt* This,DWORD dwValueTypes) {
6451 return This->lpVtbl->Discard(This,dwValueTypes);
6452}
6453/*** ISpPhraseAlt methods ***/
6454static inline HRESULT ISpPhraseAlt_GetAltInfo(ISpPhraseAlt* This,ISpPhrase **ppParent,ULONG *pulStartElementInParent,ULONG *pcElementsInParent,ULONG *pcElementsInAlt) {
6455 return This->lpVtbl->GetAltInfo(This,ppParent,pulStartElementInParent,pcElementsInParent,pcElementsInAlt);
6456}
6457static inline HRESULT ISpPhraseAlt_Commit(ISpPhraseAlt* This) {
6458 return This->lpVtbl->Commit(This);
6459}
6460#endif
6461#endif
6462
6463#endif
6464
6465
6466#endif /* __ISpPhraseAlt_INTERFACE_DEFINED__ */
6467
6468typedef struct SPRECORESULTTIMES {
6469 FILETIME ftStreamTime;
6470 ULONGLONG ullLength;
6471 DWORD dwTickCount;
6472 ULONGLONG ullStart;
6473} SPRECORESULTTIMES;
6474typedef struct SPSERIALIZEDRESULT {
6475 ULONG ulSerializedSize;
6476} SPSERIALIZEDRESULT;
6477/*****************************************************************************
6478 * ISpRecoResult interface
6479 */
6480#ifndef __ISpRecoResult_INTERFACE_DEFINED__
6481#define __ISpRecoResult_INTERFACE_DEFINED__
6482
6483DEFINE_GUID(IID_ISpRecoResult, 0x20b053be, 0xe235, 0x43cd, 0x9a,0x2a, 0x8d,0x17,0xa4,0x8b,0x78,0x42);
6484#if defined(__cplusplus) && !defined(CINTERFACE)
6485MIDL_INTERFACE("20b053be-e235-43cd-9a2a-8d17a48b7842")
6486ISpRecoResult : public ISpPhrase
6487{
6488 virtual HRESULT STDMETHODCALLTYPE GetResultTimes(
6489 SPRECORESULTTIMES *pTimes) = 0;
6490
6491 virtual HRESULT STDMETHODCALLTYPE GetAlternates(
6492 ULONG ulStartElement,
6493 ULONG cElements,
6494 ULONG ulRequestCount,
6495 ISpPhraseAlt **ppPhrases,
6496 ULONG *pcPhrasesReturned) = 0;
6497
6498 virtual HRESULT STDMETHODCALLTYPE GetAudio(
6499 ULONG ulStartElement,
6500 ULONG cElements,
6501 ISpStreamFormat **ppStream) = 0;
6502
6503 virtual HRESULT STDMETHODCALLTYPE SpeakAudio(
6504 ULONG ulStartElement,
6505 ULONG cElements,
6506 DWORD dwFlags,
6507 ULONG *pulStreamNumber) = 0;
6508
6509 virtual HRESULT STDMETHODCALLTYPE Serialize(
6510 SPSERIALIZEDRESULT **ppCoMemSerializedResult) = 0;
6511
6512 virtual HRESULT STDMETHODCALLTYPE ScaleAudio(
6513 const GUID *pAudioFormatId,
6514 const WAVEFORMATEX *pWaveFormatEx) = 0;
6515
6516 virtual HRESULT STDMETHODCALLTYPE GetRecoContext(
6517 ISpRecoContext **ppRecoContext) = 0;
6518
6519};
6520#ifdef __CRT_UUID_DECL
6521__CRT_UUID_DECL(ISpRecoResult, 0x20b053be, 0xe235, 0x43cd, 0x9a,0x2a, 0x8d,0x17,0xa4,0x8b,0x78,0x42)
6522#endif
6523#else
6524typedef struct ISpRecoResultVtbl {
6525 BEGIN_INTERFACE
6526
6527 /*** IUnknown methods ***/
6528 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6529 ISpRecoResult *This,
6530 REFIID riid,
6531 void **ppvObject);
6532
6533 ULONG (STDMETHODCALLTYPE *AddRef)(
6534 ISpRecoResult *This);
6535
6536 ULONG (STDMETHODCALLTYPE *Release)(
6537 ISpRecoResult *This);
6538
6539 /*** ISpPhrase methods ***/
6540 HRESULT (STDMETHODCALLTYPE *GetPhrase)(
6541 ISpRecoResult *This,
6542 SPPHRASE **ppCoMemPhrase);
6543
6544 HRESULT (STDMETHODCALLTYPE *GetSerializedPhrase)(
6545 ISpRecoResult *This,
6546 SPSERIALIZEDPHRASE **ppCoMemPhrase);
6547
6548 HRESULT (STDMETHODCALLTYPE *GetText)(
6549 ISpRecoResult *This,
6550 ULONG ulStart,
6551 ULONG ulCount,
6552 WINBOOL fUseTextReplacements,
6553 LPWSTR *ppszCoMemText,
6554 BYTE *pbDisplayAttributes);
6555
6556 HRESULT (STDMETHODCALLTYPE *Discard)(
6557 ISpRecoResult *This,
6558 DWORD dwValueTypes);
6559
6560 /*** ISpRecoResult methods ***/
6561 HRESULT (STDMETHODCALLTYPE *GetResultTimes)(
6562 ISpRecoResult *This,
6563 SPRECORESULTTIMES *pTimes);
6564
6565 HRESULT (STDMETHODCALLTYPE *GetAlternates)(
6566 ISpRecoResult *This,
6567 ULONG ulStartElement,
6568 ULONG cElements,
6569 ULONG ulRequestCount,
6570 ISpPhraseAlt **ppPhrases,
6571 ULONG *pcPhrasesReturned);
6572
6573 HRESULT (STDMETHODCALLTYPE *GetAudio)(
6574 ISpRecoResult *This,
6575 ULONG ulStartElement,
6576 ULONG cElements,
6577 ISpStreamFormat **ppStream);
6578
6579 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
6580 ISpRecoResult *This,
6581 ULONG ulStartElement,
6582 ULONG cElements,
6583 DWORD dwFlags,
6584 ULONG *pulStreamNumber);
6585
6586 HRESULT (STDMETHODCALLTYPE *Serialize)(
6587 ISpRecoResult *This,
6588 SPSERIALIZEDRESULT **ppCoMemSerializedResult);
6589
6590 HRESULT (STDMETHODCALLTYPE *ScaleAudio)(
6591 ISpRecoResult *This,
6592 const GUID *pAudioFormatId,
6593 const WAVEFORMATEX *pWaveFormatEx);
6594
6595 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
6596 ISpRecoResult *This,
6597 ISpRecoContext **ppRecoContext);
6598
6599 END_INTERFACE
6600} ISpRecoResultVtbl;
6601
6602interface ISpRecoResult {
6603 CONST_VTBL ISpRecoResultVtbl* lpVtbl;
6604};
6605
6606#ifdef COBJMACROS
6607#ifndef WIDL_C_INLINE_WRAPPERS
6608/*** IUnknown methods ***/
6609#define ISpRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6610#define ISpRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
6611#define ISpRecoResult_Release(This) (This)->lpVtbl->Release(This)
6612/*** ISpPhrase methods ***/
6613#define ISpRecoResult_GetPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetPhrase(This,ppCoMemPhrase)
6614#define ISpRecoResult_GetSerializedPhrase(This,ppCoMemPhrase) (This)->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase)
6615#define ISpRecoResult_GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes) (This)->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes)
6616#define ISpRecoResult_Discard(This,dwValueTypes) (This)->lpVtbl->Discard(This,dwValueTypes)
6617/*** ISpRecoResult methods ***/
6618#define ISpRecoResult_GetResultTimes(This,pTimes) (This)->lpVtbl->GetResultTimes(This,pTimes)
6619#define ISpRecoResult_GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned) (This)->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned)
6620#define ISpRecoResult_GetAudio(This,ulStartElement,cElements,ppStream) (This)->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream)
6621#define ISpRecoResult_SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber) (This)->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber)
6622#define ISpRecoResult_Serialize(This,ppCoMemSerializedResult) (This)->lpVtbl->Serialize(This,ppCoMemSerializedResult)
6623#define ISpRecoResult_ScaleAudio(This,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx)
6624#define ISpRecoResult_GetRecoContext(This,ppRecoContext) (This)->lpVtbl->GetRecoContext(This,ppRecoContext)
6625#else
6626/*** IUnknown methods ***/
6627static inline HRESULT ISpRecoResult_QueryInterface(ISpRecoResult* This,REFIID riid,void **ppvObject) {
6628 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6629}
6630static inline ULONG ISpRecoResult_AddRef(ISpRecoResult* This) {
6631 return This->lpVtbl->AddRef(This);
6632}
6633static inline ULONG ISpRecoResult_Release(ISpRecoResult* This) {
6634 return This->lpVtbl->Release(This);
6635}
6636/*** ISpPhrase methods ***/
6637static inline HRESULT ISpRecoResult_GetPhrase(ISpRecoResult* This,SPPHRASE **ppCoMemPhrase) {
6638 return This->lpVtbl->GetPhrase(This,ppCoMemPhrase);
6639}
6640static inline HRESULT ISpRecoResult_GetSerializedPhrase(ISpRecoResult* This,SPSERIALIZEDPHRASE **ppCoMemPhrase) {
6641 return This->lpVtbl->GetSerializedPhrase(This,ppCoMemPhrase);
6642}
6643static inline HRESULT ISpRecoResult_GetText(ISpRecoResult* This,ULONG ulStart,ULONG ulCount,WINBOOL fUseTextReplacements,LPWSTR *ppszCoMemText,BYTE *pbDisplayAttributes) {
6644 return This->lpVtbl->GetText(This,ulStart,ulCount,fUseTextReplacements,ppszCoMemText,pbDisplayAttributes);
6645}
6646static inline HRESULT ISpRecoResult_Discard(ISpRecoResult* This,DWORD dwValueTypes) {
6647 return This->lpVtbl->Discard(This,dwValueTypes);
6648}
6649/*** ISpRecoResult methods ***/
6650static inline HRESULT ISpRecoResult_GetResultTimes(ISpRecoResult* This,SPRECORESULTTIMES *pTimes) {
6651 return This->lpVtbl->GetResultTimes(This,pTimes);
6652}
6653static inline HRESULT ISpRecoResult_GetAlternates(ISpRecoResult* This,ULONG ulStartElement,ULONG cElements,ULONG ulRequestCount,ISpPhraseAlt **ppPhrases,ULONG *pcPhrasesReturned) {
6654 return This->lpVtbl->GetAlternates(This,ulStartElement,cElements,ulRequestCount,ppPhrases,pcPhrasesReturned);
6655}
6656static inline HRESULT ISpRecoResult_GetAudio(ISpRecoResult* This,ULONG ulStartElement,ULONG cElements,ISpStreamFormat **ppStream) {
6657 return This->lpVtbl->GetAudio(This,ulStartElement,cElements,ppStream);
6658}
6659static inline HRESULT ISpRecoResult_SpeakAudio(ISpRecoResult* This,ULONG ulStartElement,ULONG cElements,DWORD dwFlags,ULONG *pulStreamNumber) {
6660 return This->lpVtbl->SpeakAudio(This,ulStartElement,cElements,dwFlags,pulStreamNumber);
6661}
6662static inline HRESULT ISpRecoResult_Serialize(ISpRecoResult* This,SPSERIALIZEDRESULT **ppCoMemSerializedResult) {
6663 return This->lpVtbl->Serialize(This,ppCoMemSerializedResult);
6664}
6665static inline HRESULT ISpRecoResult_ScaleAudio(ISpRecoResult* This,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
6666 return This->lpVtbl->ScaleAudio(This,pAudioFormatId,pWaveFormatEx);
6667}
6668static inline HRESULT ISpRecoResult_GetRecoContext(ISpRecoResult* This,ISpRecoContext **ppRecoContext) {
6669 return This->lpVtbl->GetRecoContext(This,ppRecoContext);
6670}
6671#endif
6672#endif
6673
6674#endif
6675
6676
6677#endif /* __ISpRecoResult_INTERFACE_DEFINED__ */
6678
6679typedef struct tagSPTEXTSELECTIONINFO {
6680 ULONG ulStartActiveOffset;
6681 ULONG cchActiveChars;
6682 ULONG ulStartSelection;
6683 ULONG cchSelection;
6684} SPTEXTSELECTIONINFO;
6685typedef enum SPWORDPRONOUNCEABLE {
6686 SPWP_UNKNOWN_WORD_UNPRONOUNCEABLE = 0,
6687 SPWP_UNKNOWN_WORD_PRONOUNCEABLE = 1,
6688 SPWP_KNOWN_WORD_PRONOUNCEABLE = 2
6689} SPWORDPRONOUNCEABLE;
6690typedef enum SPGRAMMARSTATE {
6691 SPGS_DISABLED = 0,
6692 SPGS_ENABLED = 1,
6693 SPGS_EXCLUSIVE = 3
6694} SPGRAMMARSTATE;
6695typedef enum SPCONTEXTSTATE {
6696 SPCS_DISABLED = 0,
6697 SPCS_ENABLED = 1
6698} SPCONTEXTSTATE;
6699typedef enum SPRULESTATE {
6700 SPRS_INACTIVE = 0,
6701 SPRS_ACTIVE = 1,
6702 SPRS_ACTIVE_WITH_AUTO_PAUSE = 3
6703} SPRULESTATE;
6704#define SP_STREAMPOS_ASAP (0)
6705
6706#define SP_STREAMPOS_REALTIME (-1)
6707
6708#define SPRULETRANS_TEXTBUFFER (SPSTATEHANDLE) (-1)
6709#define SPRULETRANS_WILDCARD (SPSTATEHANDLE) (-2)
6710#define SPRULETRANS_DICTATION (SPSTATEHANDLE) (-3)
6711typedef enum SPGRAMMARWORDTYPE {
6712 SPWT_DISPLAY = 0,
6713 SPWT_LEXICAL = 1,
6714 SPWT_PRONUNCIATION = 2
6715} SPGRAMMARWORDTYPE;
6716typedef struct tagSPPROPERTYINFO {
6717 LPCWSTR pszName;
6718 ULONG ulId;
6719 LPCWSTR pszValue;
6720 VARIANT vValue;
6721} SPPROPERTYINFO;
6722typedef enum SPCFGRULEATTRIBUTES {
6723 SPRAF_TopLevel = 0x1,
6724 SPRAF_Active = 0x2,
6725 SPRAF_Export = 0x4,
6726 SPRAF_Import = 0x8,
6727 SPRAF_Interpreter = 0x10,
6728 SPRAF_Dynamic = 0x20,
6729 SPRAF_AutoPause = 0x10000
6730} SPCFGRULEATTRIBUTES;
6731/*****************************************************************************
6732 * ISpGrammarBuilder interface
6733 */
6734#ifndef __ISpGrammarBuilder_INTERFACE_DEFINED__
6735#define __ISpGrammarBuilder_INTERFACE_DEFINED__
6736
6737DEFINE_GUID(IID_ISpGrammarBuilder, 0x8137828f, 0x591a, 0x4a42, 0xbe,0x58, 0x49,0xea,0x7e,0xba,0xac,0x68);
6738#if defined(__cplusplus) && !defined(CINTERFACE)
6739MIDL_INTERFACE("8137828f-591a-4a42-be58-49ea7ebaac68")
6740ISpGrammarBuilder : public IUnknown
6741{
6742 virtual HRESULT STDMETHODCALLTYPE ResetGrammar(
6743 WORD NewLanguage) = 0;
6744
6745 virtual HRESULT STDMETHODCALLTYPE GetRule(
6746 LPCWSTR pszRuleName,
6747 DWORD dwRuleId,
6748 DWORD dwAttributes,
6749 WINBOOL fCreateIfNotExist,
6750 SPSTATEHANDLE *phInitialState) = 0;
6751
6752 virtual HRESULT STDMETHODCALLTYPE ClearRule(
6753 SPSTATEHANDLE hState) = 0;
6754
6755 virtual HRESULT STDMETHODCALLTYPE CreateNewState(
6756 SPSTATEHANDLE hState,
6757 SPSTATEHANDLE *phState) = 0;
6758
6759 virtual HRESULT STDMETHODCALLTYPE AddWordTransition(
6760 SPSTATEHANDLE hFromState,
6761 SPSTATEHANDLE hToState,
6762 LPCWSTR psz,
6763 LPCWSTR pszSeparators,
6764 SPGRAMMARWORDTYPE eWordType,
6765 float Weight,
6766 const SPPROPERTYINFO *pPropInfo) = 0;
6767
6768 virtual HRESULT STDMETHODCALLTYPE AddRuleTransition(
6769 SPSTATEHANDLE hFromState,
6770 SPSTATEHANDLE hToState,
6771 SPSTATEHANDLE hRule,
6772 float Weight,
6773 const SPPROPERTYINFO *pPropInfo) = 0;
6774
6775 virtual HRESULT STDMETHODCALLTYPE AddResource(
6776 SPSTATEHANDLE hRuleState,
6777 LPCWSTR pszResourceName,
6778 LPCWSTR pszResourceValue) = 0;
6779
6780 virtual HRESULT STDMETHODCALLTYPE Commit(
6781 DWORD dwReserved) = 0;
6782
6783};
6784#ifdef __CRT_UUID_DECL
6785__CRT_UUID_DECL(ISpGrammarBuilder, 0x8137828f, 0x591a, 0x4a42, 0xbe,0x58, 0x49,0xea,0x7e,0xba,0xac,0x68)
6786#endif
6787#else
6788typedef struct ISpGrammarBuilderVtbl {
6789 BEGIN_INTERFACE
6790
6791 /*** IUnknown methods ***/
6792 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6793 ISpGrammarBuilder *This,
6794 REFIID riid,
6795 void **ppvObject);
6796
6797 ULONG (STDMETHODCALLTYPE *AddRef)(
6798 ISpGrammarBuilder *This);
6799
6800 ULONG (STDMETHODCALLTYPE *Release)(
6801 ISpGrammarBuilder *This);
6802
6803 /*** ISpGrammarBuilder methods ***/
6804 HRESULT (STDMETHODCALLTYPE *ResetGrammar)(
6805 ISpGrammarBuilder *This,
6806 WORD NewLanguage);
6807
6808 HRESULT (STDMETHODCALLTYPE *GetRule)(
6809 ISpGrammarBuilder *This,
6810 LPCWSTR pszRuleName,
6811 DWORD dwRuleId,
6812 DWORD dwAttributes,
6813 WINBOOL fCreateIfNotExist,
6814 SPSTATEHANDLE *phInitialState);
6815
6816 HRESULT (STDMETHODCALLTYPE *ClearRule)(
6817 ISpGrammarBuilder *This,
6818 SPSTATEHANDLE hState);
6819
6820 HRESULT (STDMETHODCALLTYPE *CreateNewState)(
6821 ISpGrammarBuilder *This,
6822 SPSTATEHANDLE hState,
6823 SPSTATEHANDLE *phState);
6824
6825 HRESULT (STDMETHODCALLTYPE *AddWordTransition)(
6826 ISpGrammarBuilder *This,
6827 SPSTATEHANDLE hFromState,
6828 SPSTATEHANDLE hToState,
6829 LPCWSTR psz,
6830 LPCWSTR pszSeparators,
6831 SPGRAMMARWORDTYPE eWordType,
6832 float Weight,
6833 const SPPROPERTYINFO *pPropInfo);
6834
6835 HRESULT (STDMETHODCALLTYPE *AddRuleTransition)(
6836 ISpGrammarBuilder *This,
6837 SPSTATEHANDLE hFromState,
6838 SPSTATEHANDLE hToState,
6839 SPSTATEHANDLE hRule,
6840 float Weight,
6841 const SPPROPERTYINFO *pPropInfo);
6842
6843 HRESULT (STDMETHODCALLTYPE *AddResource)(
6844 ISpGrammarBuilder *This,
6845 SPSTATEHANDLE hRuleState,
6846 LPCWSTR pszResourceName,
6847 LPCWSTR pszResourceValue);
6848
6849 HRESULT (STDMETHODCALLTYPE *Commit)(
6850 ISpGrammarBuilder *This,
6851 DWORD dwReserved);
6852
6853 END_INTERFACE
6854} ISpGrammarBuilderVtbl;
6855
6856interface ISpGrammarBuilder {
6857 CONST_VTBL ISpGrammarBuilderVtbl* lpVtbl;
6858};
6859
6860#ifdef COBJMACROS
6861#ifndef WIDL_C_INLINE_WRAPPERS
6862/*** IUnknown methods ***/
6863#define ISpGrammarBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6864#define ISpGrammarBuilder_AddRef(This) (This)->lpVtbl->AddRef(This)
6865#define ISpGrammarBuilder_Release(This) (This)->lpVtbl->Release(This)
6866/*** ISpGrammarBuilder methods ***/
6867#define ISpGrammarBuilder_ResetGrammar(This,NewLanguage) (This)->lpVtbl->ResetGrammar(This,NewLanguage)
6868#define ISpGrammarBuilder_GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState) (This)->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState)
6869#define ISpGrammarBuilder_ClearRule(This,hState) (This)->lpVtbl->ClearRule(This,hState)
6870#define ISpGrammarBuilder_CreateNewState(This,hState,phState) (This)->lpVtbl->CreateNewState(This,hState,phState)
6871#define ISpGrammarBuilder_AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo) (This)->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo)
6872#define ISpGrammarBuilder_AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo) (This)->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo)
6873#define ISpGrammarBuilder_AddResource(This,hRuleState,pszResourceName,pszResourceValue) (This)->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue)
6874#define ISpGrammarBuilder_Commit(This,dwReserved) (This)->lpVtbl->Commit(This,dwReserved)
6875#else
6876/*** IUnknown methods ***/
6877static inline HRESULT ISpGrammarBuilder_QueryInterface(ISpGrammarBuilder* This,REFIID riid,void **ppvObject) {
6878 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6879}
6880static inline ULONG ISpGrammarBuilder_AddRef(ISpGrammarBuilder* This) {
6881 return This->lpVtbl->AddRef(This);
6882}
6883static inline ULONG ISpGrammarBuilder_Release(ISpGrammarBuilder* This) {
6884 return This->lpVtbl->Release(This);
6885}
6886/*** ISpGrammarBuilder methods ***/
6887static inline HRESULT ISpGrammarBuilder_ResetGrammar(ISpGrammarBuilder* This,WORD NewLanguage) {
6888 return This->lpVtbl->ResetGrammar(This,NewLanguage);
6889}
6890static inline HRESULT ISpGrammarBuilder_GetRule(ISpGrammarBuilder* This,LPCWSTR pszRuleName,DWORD dwRuleId,DWORD dwAttributes,WINBOOL fCreateIfNotExist,SPSTATEHANDLE *phInitialState) {
6891 return This->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState);
6892}
6893static inline HRESULT ISpGrammarBuilder_ClearRule(ISpGrammarBuilder* This,SPSTATEHANDLE hState) {
6894 return This->lpVtbl->ClearRule(This,hState);
6895}
6896static inline HRESULT ISpGrammarBuilder_CreateNewState(ISpGrammarBuilder* This,SPSTATEHANDLE hState,SPSTATEHANDLE *phState) {
6897 return This->lpVtbl->CreateNewState(This,hState,phState);
6898}
6899static inline HRESULT ISpGrammarBuilder_AddWordTransition(ISpGrammarBuilder* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,LPCWSTR psz,LPCWSTR pszSeparators,SPGRAMMARWORDTYPE eWordType,float Weight,const SPPROPERTYINFO *pPropInfo) {
6900 return This->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo);
6901}
6902static inline HRESULT ISpGrammarBuilder_AddRuleTransition(ISpGrammarBuilder* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,SPSTATEHANDLE hRule,float Weight,const SPPROPERTYINFO *pPropInfo) {
6903 return This->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo);
6904}
6905static inline HRESULT ISpGrammarBuilder_AddResource(ISpGrammarBuilder* This,SPSTATEHANDLE hRuleState,LPCWSTR pszResourceName,LPCWSTR pszResourceValue) {
6906 return This->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue);
6907}
6908static inline HRESULT ISpGrammarBuilder_Commit(ISpGrammarBuilder* This,DWORD dwReserved) {
6909 return This->lpVtbl->Commit(This,dwReserved);
6910}
6911#endif
6912#endif
6913
6914#endif
6915
6916
6917#endif /* __ISpGrammarBuilder_INTERFACE_DEFINED__ */
6918
6919typedef enum SPLOADOPTIONS {
6920 SPLO_STATIC = 0,
6921 SPLO_DYNAMIC = 1
6922} SPLOADOPTIONS;
6923/*****************************************************************************
6924 * ISpRecoGrammar interface
6925 */
6926#ifndef __ISpRecoGrammar_INTERFACE_DEFINED__
6927#define __ISpRecoGrammar_INTERFACE_DEFINED__
6928
6929DEFINE_GUID(IID_ISpRecoGrammar, 0x2177db29, 0x7f45, 0x47d0, 0x85,0x54, 0x06,0x7e,0x91,0xc8,0x05,0x02);
6930#if defined(__cplusplus) && !defined(CINTERFACE)
6931MIDL_INTERFACE("2177db29-7f45-47d0-8554-067e91c80502")
6932ISpRecoGrammar : public ISpGrammarBuilder
6933{
6934 virtual HRESULT STDMETHODCALLTYPE GetGrammarId(
6935 ULONGLONG *pullGrammarId) = 0;
6936
6937 virtual HRESULT STDMETHODCALLTYPE GetRecoContext(
6938 ISpRecoContext **ppRecoCtxt) = 0;
6939
6940 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromFile(
6941 LPCWSTR pszFileName,
6942 SPLOADOPTIONS Options) = 0;
6943
6944 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromObject(
6945 REFCLSID rcid,
6946 LPCWSTR pszGrammarName,
6947 SPLOADOPTIONS Options) = 0;
6948
6949 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromResource(
6950 HMODULE hModule,
6951 LPCWSTR pszResourceName,
6952 LPCWSTR pszResourceType,
6953 WORD wLanguage,
6954 SPLOADOPTIONS Options) = 0;
6955
6956 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromMemory(
6957 const SPBINARYGRAMMAR *pGrammar,
6958 SPLOADOPTIONS Options) = 0;
6959
6960 virtual HRESULT STDMETHODCALLTYPE LoadCmdFromProprietaryGrammar(
6961 REFGUID rguidParam,
6962 LPCWSTR pszStringParam,
6963 const void *pvDataPrarm,
6964 ULONG cbDataSize,
6965 SPLOADOPTIONS Options) = 0;
6966
6967 virtual HRESULT STDMETHODCALLTYPE SetRuleState(
6968 LPCWSTR pszName,
6969 void *pReserved,
6970 SPRULESTATE NewState) = 0;
6971
6972 virtual HRESULT STDMETHODCALLTYPE SetRuleIdState(
6973 ULONG ulRuleId,
6974 SPRULESTATE NewState) = 0;
6975
6976 virtual HRESULT STDMETHODCALLTYPE LoadDictation(
6977 LPCWSTR pszTopicName,
6978 SPLOADOPTIONS Options) = 0;
6979
6980 virtual HRESULT STDMETHODCALLTYPE UnloadDictation(
6981 ) = 0;
6982
6983 virtual HRESULT STDMETHODCALLTYPE SetDictationState(
6984 SPRULESTATE NewState) = 0;
6985
6986 virtual HRESULT STDMETHODCALLTYPE SetWordSequenceData(
6987 const WCHAR *pText,
6988 ULONG cchText,
6989 const SPTEXTSELECTIONINFO *pInfo) = 0;
6990
6991 virtual HRESULT STDMETHODCALLTYPE SetTextSelection(
6992 const SPTEXTSELECTIONINFO *pInfo) = 0;
6993
6994 virtual HRESULT STDMETHODCALLTYPE IsPronounceable(
6995 LPCWSTR pszWord,
6996 SPWORDPRONOUNCEABLE *pWordPronounceable) = 0;
6997
6998 virtual HRESULT STDMETHODCALLTYPE SetGrammarState(
6999 SPGRAMMARSTATE eGrammarState) = 0;
7000
7001 virtual HRESULT STDMETHODCALLTYPE SaveCmd(
7002 IStream *pStream,
7003 LPWSTR *ppszCoMemErrorText) = 0;
7004
7005 virtual HRESULT STDMETHODCALLTYPE GetGrammarState(
7006 SPGRAMMARSTATE *peGrammarState) = 0;
7007
7008};
7009#ifdef __CRT_UUID_DECL
7010__CRT_UUID_DECL(ISpRecoGrammar, 0x2177db29, 0x7f45, 0x47d0, 0x85,0x54, 0x06,0x7e,0x91,0xc8,0x05,0x02)
7011#endif
7012#else
7013typedef struct ISpRecoGrammarVtbl {
7014 BEGIN_INTERFACE
7015
7016 /*** IUnknown methods ***/
7017 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7018 ISpRecoGrammar *This,
7019 REFIID riid,
7020 void **ppvObject);
7021
7022 ULONG (STDMETHODCALLTYPE *AddRef)(
7023 ISpRecoGrammar *This);
7024
7025 ULONG (STDMETHODCALLTYPE *Release)(
7026 ISpRecoGrammar *This);
7027
7028 /*** ISpGrammarBuilder methods ***/
7029 HRESULT (STDMETHODCALLTYPE *ResetGrammar)(
7030 ISpRecoGrammar *This,
7031 WORD NewLanguage);
7032
7033 HRESULT (STDMETHODCALLTYPE *GetRule)(
7034 ISpRecoGrammar *This,
7035 LPCWSTR pszRuleName,
7036 DWORD dwRuleId,
7037 DWORD dwAttributes,
7038 WINBOOL fCreateIfNotExist,
7039 SPSTATEHANDLE *phInitialState);
7040
7041 HRESULT (STDMETHODCALLTYPE *ClearRule)(
7042 ISpRecoGrammar *This,
7043 SPSTATEHANDLE hState);
7044
7045 HRESULT (STDMETHODCALLTYPE *CreateNewState)(
7046 ISpRecoGrammar *This,
7047 SPSTATEHANDLE hState,
7048 SPSTATEHANDLE *phState);
7049
7050 HRESULT (STDMETHODCALLTYPE *AddWordTransition)(
7051 ISpRecoGrammar *This,
7052 SPSTATEHANDLE hFromState,
7053 SPSTATEHANDLE hToState,
7054 LPCWSTR psz,
7055 LPCWSTR pszSeparators,
7056 SPGRAMMARWORDTYPE eWordType,
7057 float Weight,
7058 const SPPROPERTYINFO *pPropInfo);
7059
7060 HRESULT (STDMETHODCALLTYPE *AddRuleTransition)(
7061 ISpRecoGrammar *This,
7062 SPSTATEHANDLE hFromState,
7063 SPSTATEHANDLE hToState,
7064 SPSTATEHANDLE hRule,
7065 float Weight,
7066 const SPPROPERTYINFO *pPropInfo);
7067
7068 HRESULT (STDMETHODCALLTYPE *AddResource)(
7069 ISpRecoGrammar *This,
7070 SPSTATEHANDLE hRuleState,
7071 LPCWSTR pszResourceName,
7072 LPCWSTR pszResourceValue);
7073
7074 HRESULT (STDMETHODCALLTYPE *Commit)(
7075 ISpRecoGrammar *This,
7076 DWORD dwReserved);
7077
7078 /*** ISpRecoGrammar methods ***/
7079 HRESULT (STDMETHODCALLTYPE *GetGrammarId)(
7080 ISpRecoGrammar *This,
7081 ULONGLONG *pullGrammarId);
7082
7083 HRESULT (STDMETHODCALLTYPE *GetRecoContext)(
7084 ISpRecoGrammar *This,
7085 ISpRecoContext **ppRecoCtxt);
7086
7087 HRESULT (STDMETHODCALLTYPE *LoadCmdFromFile)(
7088 ISpRecoGrammar *This,
7089 LPCWSTR pszFileName,
7090 SPLOADOPTIONS Options);
7091
7092 HRESULT (STDMETHODCALLTYPE *LoadCmdFromObject)(
7093 ISpRecoGrammar *This,
7094 REFCLSID rcid,
7095 LPCWSTR pszGrammarName,
7096 SPLOADOPTIONS Options);
7097
7098 HRESULT (STDMETHODCALLTYPE *LoadCmdFromResource)(
7099 ISpRecoGrammar *This,
7100 HMODULE hModule,
7101 LPCWSTR pszResourceName,
7102 LPCWSTR pszResourceType,
7103 WORD wLanguage,
7104 SPLOADOPTIONS Options);
7105
7106 HRESULT (STDMETHODCALLTYPE *LoadCmdFromMemory)(
7107 ISpRecoGrammar *This,
7108 const SPBINARYGRAMMAR *pGrammar,
7109 SPLOADOPTIONS Options);
7110
7111 HRESULT (STDMETHODCALLTYPE *LoadCmdFromProprietaryGrammar)(
7112 ISpRecoGrammar *This,
7113 REFGUID rguidParam,
7114 LPCWSTR pszStringParam,
7115 const void *pvDataPrarm,
7116 ULONG cbDataSize,
7117 SPLOADOPTIONS Options);
7118
7119 HRESULT (STDMETHODCALLTYPE *SetRuleState)(
7120 ISpRecoGrammar *This,
7121 LPCWSTR pszName,
7122 void *pReserved,
7123 SPRULESTATE NewState);
7124
7125 HRESULT (STDMETHODCALLTYPE *SetRuleIdState)(
7126 ISpRecoGrammar *This,
7127 ULONG ulRuleId,
7128 SPRULESTATE NewState);
7129
7130 HRESULT (STDMETHODCALLTYPE *LoadDictation)(
7131 ISpRecoGrammar *This,
7132 LPCWSTR pszTopicName,
7133 SPLOADOPTIONS Options);
7134
7135 HRESULT (STDMETHODCALLTYPE *UnloadDictation)(
7136 ISpRecoGrammar *This);
7137
7138 HRESULT (STDMETHODCALLTYPE *SetDictationState)(
7139 ISpRecoGrammar *This,
7140 SPRULESTATE NewState);
7141
7142 HRESULT (STDMETHODCALLTYPE *SetWordSequenceData)(
7143 ISpRecoGrammar *This,
7144 const WCHAR *pText,
7145 ULONG cchText,
7146 const SPTEXTSELECTIONINFO *pInfo);
7147
7148 HRESULT (STDMETHODCALLTYPE *SetTextSelection)(
7149 ISpRecoGrammar *This,
7150 const SPTEXTSELECTIONINFO *pInfo);
7151
7152 HRESULT (STDMETHODCALLTYPE *IsPronounceable)(
7153 ISpRecoGrammar *This,
7154 LPCWSTR pszWord,
7155 SPWORDPRONOUNCEABLE *pWordPronounceable);
7156
7157 HRESULT (STDMETHODCALLTYPE *SetGrammarState)(
7158 ISpRecoGrammar *This,
7159 SPGRAMMARSTATE eGrammarState);
7160
7161 HRESULT (STDMETHODCALLTYPE *SaveCmd)(
7162 ISpRecoGrammar *This,
7163 IStream *pStream,
7164 LPWSTR *ppszCoMemErrorText);
7165
7166 HRESULT (STDMETHODCALLTYPE *GetGrammarState)(
7167 ISpRecoGrammar *This,
7168 SPGRAMMARSTATE *peGrammarState);
7169
7170 END_INTERFACE
7171} ISpRecoGrammarVtbl;
7172
7173interface ISpRecoGrammar {
7174 CONST_VTBL ISpRecoGrammarVtbl* lpVtbl;
7175};
7176
7177#ifdef COBJMACROS
7178#ifndef WIDL_C_INLINE_WRAPPERS
7179/*** IUnknown methods ***/
7180#define ISpRecoGrammar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7181#define ISpRecoGrammar_AddRef(This) (This)->lpVtbl->AddRef(This)
7182#define ISpRecoGrammar_Release(This) (This)->lpVtbl->Release(This)
7183/*** ISpGrammarBuilder methods ***/
7184#define ISpRecoGrammar_ResetGrammar(This,NewLanguage) (This)->lpVtbl->ResetGrammar(This,NewLanguage)
7185#define ISpRecoGrammar_GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState) (This)->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState)
7186#define ISpRecoGrammar_ClearRule(This,hState) (This)->lpVtbl->ClearRule(This,hState)
7187#define ISpRecoGrammar_CreateNewState(This,hState,phState) (This)->lpVtbl->CreateNewState(This,hState,phState)
7188#define ISpRecoGrammar_AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo) (This)->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo)
7189#define ISpRecoGrammar_AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo) (This)->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo)
7190#define ISpRecoGrammar_AddResource(This,hRuleState,pszResourceName,pszResourceValue) (This)->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue)
7191#define ISpRecoGrammar_Commit(This,dwReserved) (This)->lpVtbl->Commit(This,dwReserved)
7192/*** ISpRecoGrammar methods ***/
7193#define ISpRecoGrammar_GetGrammarId(This,pullGrammarId) (This)->lpVtbl->GetGrammarId(This,pullGrammarId)
7194#define ISpRecoGrammar_GetRecoContext(This,ppRecoCtxt) (This)->lpVtbl->GetRecoContext(This,ppRecoCtxt)
7195#define ISpRecoGrammar_LoadCmdFromFile(This,pszFileName,Options) (This)->lpVtbl->LoadCmdFromFile(This,pszFileName,Options)
7196#define ISpRecoGrammar_LoadCmdFromObject(This,rcid,pszGrammarName,Options) (This)->lpVtbl->LoadCmdFromObject(This,rcid,pszGrammarName,Options)
7197#define ISpRecoGrammar_LoadCmdFromResource(This,hModule,pszResourceName,pszResourceType,wLanguage,Options) (This)->lpVtbl->LoadCmdFromResource(This,hModule,pszResourceName,pszResourceType,wLanguage,Options)
7198#define ISpRecoGrammar_LoadCmdFromMemory(This,pGrammar,Options) (This)->lpVtbl->LoadCmdFromMemory(This,pGrammar,Options)
7199#define ISpRecoGrammar_LoadCmdFromProprietaryGrammar(This,rguidParam,pszStringParam,pvDataPrarm,cbDataSize,Options) (This)->lpVtbl->LoadCmdFromProprietaryGrammar(This,rguidParam,pszStringParam,pvDataPrarm,cbDataSize,Options)
7200#define ISpRecoGrammar_SetRuleState(This,pszName,pReserved,NewState) (This)->lpVtbl->SetRuleState(This,pszName,pReserved,NewState)
7201#define ISpRecoGrammar_SetRuleIdState(This,ulRuleId,NewState) (This)->lpVtbl->SetRuleIdState(This,ulRuleId,NewState)
7202#define ISpRecoGrammar_LoadDictation(This,pszTopicName,Options) (This)->lpVtbl->LoadDictation(This,pszTopicName,Options)
7203#define ISpRecoGrammar_UnloadDictation(This) (This)->lpVtbl->UnloadDictation(This)
7204#define ISpRecoGrammar_SetDictationState(This,NewState) (This)->lpVtbl->SetDictationState(This,NewState)
7205#define ISpRecoGrammar_SetWordSequenceData(This,pText,cchText,pInfo) (This)->lpVtbl->SetWordSequenceData(This,pText,cchText,pInfo)
7206#define ISpRecoGrammar_SetTextSelection(This,pInfo) (This)->lpVtbl->SetTextSelection(This,pInfo)
7207#define ISpRecoGrammar_IsPronounceable(This,pszWord,pWordPronounceable) (This)->lpVtbl->IsPronounceable(This,pszWord,pWordPronounceable)
7208#define ISpRecoGrammar_SetGrammarState(This,eGrammarState) (This)->lpVtbl->SetGrammarState(This,eGrammarState)
7209#define ISpRecoGrammar_SaveCmd(This,pStream,ppszCoMemErrorText) (This)->lpVtbl->SaveCmd(This,pStream,ppszCoMemErrorText)
7210#define ISpRecoGrammar_GetGrammarState(This,peGrammarState) (This)->lpVtbl->GetGrammarState(This,peGrammarState)
7211#else
7212/*** IUnknown methods ***/
7213static inline HRESULT ISpRecoGrammar_QueryInterface(ISpRecoGrammar* This,REFIID riid,void **ppvObject) {
7214 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7215}
7216static inline ULONG ISpRecoGrammar_AddRef(ISpRecoGrammar* This) {
7217 return This->lpVtbl->AddRef(This);
7218}
7219static inline ULONG ISpRecoGrammar_Release(ISpRecoGrammar* This) {
7220 return This->lpVtbl->Release(This);
7221}
7222/*** ISpGrammarBuilder methods ***/
7223static inline HRESULT ISpRecoGrammar_ResetGrammar(ISpRecoGrammar* This,WORD NewLanguage) {
7224 return This->lpVtbl->ResetGrammar(This,NewLanguage);
7225}
7226static inline HRESULT ISpRecoGrammar_GetRule(ISpRecoGrammar* This,LPCWSTR pszRuleName,DWORD dwRuleId,DWORD dwAttributes,WINBOOL fCreateIfNotExist,SPSTATEHANDLE *phInitialState) {
7227 return This->lpVtbl->GetRule(This,pszRuleName,dwRuleId,dwAttributes,fCreateIfNotExist,phInitialState);
7228}
7229static inline HRESULT ISpRecoGrammar_ClearRule(ISpRecoGrammar* This,SPSTATEHANDLE hState) {
7230 return This->lpVtbl->ClearRule(This,hState);
7231}
7232static inline HRESULT ISpRecoGrammar_CreateNewState(ISpRecoGrammar* This,SPSTATEHANDLE hState,SPSTATEHANDLE *phState) {
7233 return This->lpVtbl->CreateNewState(This,hState,phState);
7234}
7235static inline HRESULT ISpRecoGrammar_AddWordTransition(ISpRecoGrammar* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,LPCWSTR psz,LPCWSTR pszSeparators,SPGRAMMARWORDTYPE eWordType,float Weight,const SPPROPERTYINFO *pPropInfo) {
7236 return This->lpVtbl->AddWordTransition(This,hFromState,hToState,psz,pszSeparators,eWordType,Weight,pPropInfo);
7237}
7238static inline HRESULT ISpRecoGrammar_AddRuleTransition(ISpRecoGrammar* This,SPSTATEHANDLE hFromState,SPSTATEHANDLE hToState,SPSTATEHANDLE hRule,float Weight,const SPPROPERTYINFO *pPropInfo) {
7239 return This->lpVtbl->AddRuleTransition(This,hFromState,hToState,hRule,Weight,pPropInfo);
7240}
7241static inline HRESULT ISpRecoGrammar_AddResource(ISpRecoGrammar* This,SPSTATEHANDLE hRuleState,LPCWSTR pszResourceName,LPCWSTR pszResourceValue) {
7242 return This->lpVtbl->AddResource(This,hRuleState,pszResourceName,pszResourceValue);
7243}
7244static inline HRESULT ISpRecoGrammar_Commit(ISpRecoGrammar* This,DWORD dwReserved) {
7245 return This->lpVtbl->Commit(This,dwReserved);
7246}
7247/*** ISpRecoGrammar methods ***/
7248static inline HRESULT ISpRecoGrammar_GetGrammarId(ISpRecoGrammar* This,ULONGLONG *pullGrammarId) {
7249 return This->lpVtbl->GetGrammarId(This,pullGrammarId);
7250}
7251static inline HRESULT ISpRecoGrammar_GetRecoContext(ISpRecoGrammar* This,ISpRecoContext **ppRecoCtxt) {
7252 return This->lpVtbl->GetRecoContext(This,ppRecoCtxt);
7253}
7254static inline HRESULT ISpRecoGrammar_LoadCmdFromFile(ISpRecoGrammar* This,LPCWSTR pszFileName,SPLOADOPTIONS Options) {
7255 return This->lpVtbl->LoadCmdFromFile(This,pszFileName,Options);
7256}
7257static inline HRESULT ISpRecoGrammar_LoadCmdFromObject(ISpRecoGrammar* This,REFCLSID rcid,LPCWSTR pszGrammarName,SPLOADOPTIONS Options) {
7258 return This->lpVtbl->LoadCmdFromObject(This,rcid,pszGrammarName,Options);
7259}
7260static inline HRESULT ISpRecoGrammar_LoadCmdFromResource(ISpRecoGrammar* This,HMODULE hModule,LPCWSTR pszResourceName,LPCWSTR pszResourceType,WORD wLanguage,SPLOADOPTIONS Options) {
7261 return This->lpVtbl->LoadCmdFromResource(This,hModule,pszResourceName,pszResourceType,wLanguage,Options);
7262}
7263static inline HRESULT ISpRecoGrammar_LoadCmdFromMemory(ISpRecoGrammar* This,const SPBINARYGRAMMAR *pGrammar,SPLOADOPTIONS Options) {
7264 return This->lpVtbl->LoadCmdFromMemory(This,pGrammar,Options);
7265}
7266static inline HRESULT ISpRecoGrammar_LoadCmdFromProprietaryGrammar(ISpRecoGrammar* This,REFGUID rguidParam,LPCWSTR pszStringParam,const void *pvDataPrarm,ULONG cbDataSize,SPLOADOPTIONS Options) {
7267 return This->lpVtbl->LoadCmdFromProprietaryGrammar(This,rguidParam,pszStringParam,pvDataPrarm,cbDataSize,Options);
7268}
7269static inline HRESULT ISpRecoGrammar_SetRuleState(ISpRecoGrammar* This,LPCWSTR pszName,void *pReserved,SPRULESTATE NewState) {
7270 return This->lpVtbl->SetRuleState(This,pszName,pReserved,NewState);
7271}
7272static inline HRESULT ISpRecoGrammar_SetRuleIdState(ISpRecoGrammar* This,ULONG ulRuleId,SPRULESTATE NewState) {
7273 return This->lpVtbl->SetRuleIdState(This,ulRuleId,NewState);
7274}
7275static inline HRESULT ISpRecoGrammar_LoadDictation(ISpRecoGrammar* This,LPCWSTR pszTopicName,SPLOADOPTIONS Options) {
7276 return This->lpVtbl->LoadDictation(This,pszTopicName,Options);
7277}
7278static inline HRESULT ISpRecoGrammar_UnloadDictation(ISpRecoGrammar* This) {
7279 return This->lpVtbl->UnloadDictation(This);
7280}
7281static inline HRESULT ISpRecoGrammar_SetDictationState(ISpRecoGrammar* This,SPRULESTATE NewState) {
7282 return This->lpVtbl->SetDictationState(This,NewState);
7283}
7284static inline HRESULT ISpRecoGrammar_SetWordSequenceData(ISpRecoGrammar* This,const WCHAR *pText,ULONG cchText,const SPTEXTSELECTIONINFO *pInfo) {
7285 return This->lpVtbl->SetWordSequenceData(This,pText,cchText,pInfo);
7286}
7287static inline HRESULT ISpRecoGrammar_SetTextSelection(ISpRecoGrammar* This,const SPTEXTSELECTIONINFO *pInfo) {
7288 return This->lpVtbl->SetTextSelection(This,pInfo);
7289}
7290static inline HRESULT ISpRecoGrammar_IsPronounceable(ISpRecoGrammar* This,LPCWSTR pszWord,SPWORDPRONOUNCEABLE *pWordPronounceable) {
7291 return This->lpVtbl->IsPronounceable(This,pszWord,pWordPronounceable);
7292}
7293static inline HRESULT ISpRecoGrammar_SetGrammarState(ISpRecoGrammar* This,SPGRAMMARSTATE eGrammarState) {
7294 return This->lpVtbl->SetGrammarState(This,eGrammarState);
7295}
7296static inline HRESULT ISpRecoGrammar_SaveCmd(ISpRecoGrammar* This,IStream *pStream,LPWSTR *ppszCoMemErrorText) {
7297 return This->lpVtbl->SaveCmd(This,pStream,ppszCoMemErrorText);
7298}
7299static inline HRESULT ISpRecoGrammar_GetGrammarState(ISpRecoGrammar* This,SPGRAMMARSTATE *peGrammarState) {
7300 return This->lpVtbl->GetGrammarState(This,peGrammarState);
7301}
7302#endif
7303#endif
7304
7305#endif
7306
7307
7308#endif /* __ISpRecoGrammar_INTERFACE_DEFINED__ */
7309
7310typedef struct SPRECOCONTEXTSTATUS {
7311 SPINTERFERENCE eInterference;
7312 WCHAR szRequestTypeOfUI[255];
7313 DWORD dwReserved1;
7314 DWORD dwReserved2;
7315} SPRECOCONTEXTSTATUS;
7316typedef enum SPBOOKMARKOPTIONS {
7317 SPBO_NONE = 0,
7318 SPBO_PAUSE = 0x1
7319} SPBOOKMARKOPTIONS;
7320typedef enum SPAUDIOOPTIONS {
7321 SPAO_NONE = 0,
7322 SPAO_RETAIN_AUDIO = 0x1
7323} SPAUDIOOPTIONS;
7324/*****************************************************************************
7325 * ISpRecoContext interface
7326 */
7327#ifndef __ISpRecoContext_INTERFACE_DEFINED__
7328#define __ISpRecoContext_INTERFACE_DEFINED__
7329
7330DEFINE_GUID(IID_ISpRecoContext, 0xf740a62f, 0x7c15, 0x489e, 0x82,0x34, 0x94,0x0a,0x33,0xd9,0x27,0x2d);
7331#if defined(__cplusplus) && !defined(CINTERFACE)
7332MIDL_INTERFACE("f740a62f-7c15-489e-8234-940a33d9272d")
7333ISpRecoContext : public ISpEventSource
7334{
7335 virtual HRESULT STDMETHODCALLTYPE GetRecognizer(
7336 ISpRecognizer **ppRecognizer) = 0;
7337
7338 virtual HRESULT STDMETHODCALLTYPE CreateGrammar(
7339 ULONGLONG ullGrammarId,
7340 ISpRecoGrammar **ppGrammar) = 0;
7341
7342 virtual HRESULT STDMETHODCALLTYPE GetStatus(
7343 SPRECOCONTEXTSTATUS *pStatus) = 0;
7344
7345 virtual HRESULT STDMETHODCALLTYPE GetMaxAlternates(
7346 ULONG *pcAlternates) = 0;
7347
7348 virtual HRESULT STDMETHODCALLTYPE SetMaxAlternates(
7349 ULONG cAlternates) = 0;
7350
7351 virtual HRESULT STDMETHODCALLTYPE SetAudioOptions(
7352 SPAUDIOOPTIONS Options,
7353 const GUID *pAudioFormatId,
7354 const WAVEFORMATEX *pWaveFormatEx) = 0;
7355
7356 virtual HRESULT STDMETHODCALLTYPE GetAudioOptions(
7357 SPAUDIOOPTIONS *pOptions,
7358 GUID *pAudioFormatId,
7359 WAVEFORMATEX **ppCoMemWFEX) = 0;
7360
7361 virtual HRESULT STDMETHODCALLTYPE DeserializeResult(
7362 const SPSERIALIZEDRESULT *pSerializedResult,
7363 ISpRecoResult **ppResult) = 0;
7364
7365 virtual HRESULT STDMETHODCALLTYPE Bookmark(
7366 SPBOOKMARKOPTIONS Options,
7367 ULONGLONG ullStreamPosition,
7368 LPARAM lparamEvent) = 0;
7369
7370 virtual HRESULT STDMETHODCALLTYPE SetAdaptationData(
7371 LPCWSTR pAdaptationData,
7372 const ULONG cch) = 0;
7373
7374 virtual HRESULT STDMETHODCALLTYPE Pause(
7375 DWORD dwReserved) = 0;
7376
7377 virtual HRESULT STDMETHODCALLTYPE Resume(
7378 DWORD dwReserved) = 0;
7379
7380 virtual HRESULT STDMETHODCALLTYPE SetVoice(
7381 ISpVoice *pVoice,
7382 WINBOOL fAllowFormatChanges) = 0;
7383
7384 virtual HRESULT STDMETHODCALLTYPE GetVoice(
7385 ISpVoice **ppVoice) = 0;
7386
7387 virtual HRESULT STDMETHODCALLTYPE SetVoicePurgeEvent(
7388 ULONGLONG ullEventInterest) = 0;
7389
7390 virtual HRESULT STDMETHODCALLTYPE GetVoicePurgeEvent(
7391 ULONGLONG *pullEventInterest) = 0;
7392
7393 virtual HRESULT STDMETHODCALLTYPE SetContextState(
7394 SPCONTEXTSTATE eContextState) = 0;
7395
7396 virtual HRESULT STDMETHODCALLTYPE GetContextState(
7397 SPCONTEXTSTATE *peContextState) = 0;
7398
7399};
7400#ifdef __CRT_UUID_DECL
7401__CRT_UUID_DECL(ISpRecoContext, 0xf740a62f, 0x7c15, 0x489e, 0x82,0x34, 0x94,0x0a,0x33,0xd9,0x27,0x2d)
7402#endif
7403#else
7404typedef struct ISpRecoContextVtbl {
7405 BEGIN_INTERFACE
7406
7407 /*** IUnknown methods ***/
7408 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7409 ISpRecoContext *This,
7410 REFIID riid,
7411 void **ppvObject);
7412
7413 ULONG (STDMETHODCALLTYPE *AddRef)(
7414 ISpRecoContext *This);
7415
7416 ULONG (STDMETHODCALLTYPE *Release)(
7417 ISpRecoContext *This);
7418
7419 /*** ISpNotifySource methods ***/
7420 HRESULT (STDMETHODCALLTYPE *SetNotifySink)(
7421 ISpRecoContext *This,
7422 ISpNotifySink *pNotifySink);
7423
7424 HRESULT (STDMETHODCALLTYPE *SetNotifyWindowMessage)(
7425 ISpRecoContext *This,
7426 HWND hWnd,
7427 UINT Msg,
7428 WPARAM wParam,
7429 LPARAM lParam);
7430
7431 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackFunction)(
7432 ISpRecoContext *This,
7433 SPNOTIFYCALLBACK *pfnCallback,
7434 WPARAM wParam,
7435 LPARAM lParam);
7436
7437 HRESULT (STDMETHODCALLTYPE *SetNotifyCallbackInterface)(
7438 ISpRecoContext *This,
7439 ISpNotifyCallback *pSpCallback,
7440 WPARAM wParam,
7441 LPARAM lParam);
7442
7443 HRESULT (STDMETHODCALLTYPE *SetNotifyWin32Event)(
7444 ISpRecoContext *This);
7445
7446 HRESULT (STDMETHODCALLTYPE *WaitForNotifyEvent)(
7447 ISpRecoContext *This,
7448 DWORD dwMilliseconds);
7449
7450 HANDLE (STDMETHODCALLTYPE *GetNotifyEventHandle)(
7451 ISpRecoContext *This);
7452
7453 /*** ISpEventSource methods ***/
7454 HRESULT (STDMETHODCALLTYPE *SetInterest)(
7455 ISpRecoContext *This,
7456 ULONGLONG ullEventInterest,
7457 ULONGLONG ullQueuedInterest);
7458
7459 HRESULT (STDMETHODCALLTYPE *GetEvents)(
7460 ISpRecoContext *This,
7461 ULONG ulCount,
7462 SPEVENT *pEventArray,
7463 ULONG *pulFetched);
7464
7465 HRESULT (STDMETHODCALLTYPE *GetInfo)(
7466 ISpRecoContext *This,
7467 SPEVENTSOURCEINFO *pInfo);
7468
7469 /*** ISpRecoContext methods ***/
7470 HRESULT (STDMETHODCALLTYPE *GetRecognizer)(
7471 ISpRecoContext *This,
7472 ISpRecognizer **ppRecognizer);
7473
7474 HRESULT (STDMETHODCALLTYPE *CreateGrammar)(
7475 ISpRecoContext *This,
7476 ULONGLONG ullGrammarId,
7477 ISpRecoGrammar **ppGrammar);
7478
7479 HRESULT (STDMETHODCALLTYPE *GetStatus)(
7480 ISpRecoContext *This,
7481 SPRECOCONTEXTSTATUS *pStatus);
7482
7483 HRESULT (STDMETHODCALLTYPE *GetMaxAlternates)(
7484 ISpRecoContext *This,
7485 ULONG *pcAlternates);
7486
7487 HRESULT (STDMETHODCALLTYPE *SetMaxAlternates)(
7488 ISpRecoContext *This,
7489 ULONG cAlternates);
7490
7491 HRESULT (STDMETHODCALLTYPE *SetAudioOptions)(
7492 ISpRecoContext *This,
7493 SPAUDIOOPTIONS Options,
7494 const GUID *pAudioFormatId,
7495 const WAVEFORMATEX *pWaveFormatEx);
7496
7497 HRESULT (STDMETHODCALLTYPE *GetAudioOptions)(
7498 ISpRecoContext *This,
7499 SPAUDIOOPTIONS *pOptions,
7500 GUID *pAudioFormatId,
7501 WAVEFORMATEX **ppCoMemWFEX);
7502
7503 HRESULT (STDMETHODCALLTYPE *DeserializeResult)(
7504 ISpRecoContext *This,
7505 const SPSERIALIZEDRESULT *pSerializedResult,
7506 ISpRecoResult **ppResult);
7507
7508 HRESULT (STDMETHODCALLTYPE *Bookmark)(
7509 ISpRecoContext *This,
7510 SPBOOKMARKOPTIONS Options,
7511 ULONGLONG ullStreamPosition,
7512 LPARAM lparamEvent);
7513
7514 HRESULT (STDMETHODCALLTYPE *SetAdaptationData)(
7515 ISpRecoContext *This,
7516 LPCWSTR pAdaptationData,
7517 const ULONG cch);
7518
7519 HRESULT (STDMETHODCALLTYPE *Pause)(
7520 ISpRecoContext *This,
7521 DWORD dwReserved);
7522
7523 HRESULT (STDMETHODCALLTYPE *Resume)(
7524 ISpRecoContext *This,
7525 DWORD dwReserved);
7526
7527 HRESULT (STDMETHODCALLTYPE *SetVoice)(
7528 ISpRecoContext *This,
7529 ISpVoice *pVoice,
7530 WINBOOL fAllowFormatChanges);
7531
7532 HRESULT (STDMETHODCALLTYPE *GetVoice)(
7533 ISpRecoContext *This,
7534 ISpVoice **ppVoice);
7535
7536 HRESULT (STDMETHODCALLTYPE *SetVoicePurgeEvent)(
7537 ISpRecoContext *This,
7538 ULONGLONG ullEventInterest);
7539
7540 HRESULT (STDMETHODCALLTYPE *GetVoicePurgeEvent)(
7541 ISpRecoContext *This,
7542 ULONGLONG *pullEventInterest);
7543
7544 HRESULT (STDMETHODCALLTYPE *SetContextState)(
7545 ISpRecoContext *This,
7546 SPCONTEXTSTATE eContextState);
7547
7548 HRESULT (STDMETHODCALLTYPE *GetContextState)(
7549 ISpRecoContext *This,
7550 SPCONTEXTSTATE *peContextState);
7551
7552 END_INTERFACE
7553} ISpRecoContextVtbl;
7554
7555interface ISpRecoContext {
7556 CONST_VTBL ISpRecoContextVtbl* lpVtbl;
7557};
7558
7559#ifdef COBJMACROS
7560#ifndef WIDL_C_INLINE_WRAPPERS
7561/*** IUnknown methods ***/
7562#define ISpRecoContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7563#define ISpRecoContext_AddRef(This) (This)->lpVtbl->AddRef(This)
7564#define ISpRecoContext_Release(This) (This)->lpVtbl->Release(This)
7565/*** ISpNotifySource methods ***/
7566#define ISpRecoContext_SetNotifySink(This,pNotifySink) (This)->lpVtbl->SetNotifySink(This,pNotifySink)
7567#define ISpRecoContext_SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam) (This)->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam)
7568#define ISpRecoContext_SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam)
7569#define ISpRecoContext_SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam) (This)->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam)
7570#define ISpRecoContext_SetNotifyWin32Event(This) (This)->lpVtbl->SetNotifyWin32Event(This)
7571#define ISpRecoContext_WaitForNotifyEvent(This,dwMilliseconds) (This)->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds)
7572#define ISpRecoContext_GetNotifyEventHandle(This) (This)->lpVtbl->GetNotifyEventHandle(This)
7573/*** ISpEventSource methods ***/
7574#define ISpRecoContext_SetInterest(This,ullEventInterest,ullQueuedInterest) (This)->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest)
7575#define ISpRecoContext_GetEvents(This,ulCount,pEventArray,pulFetched) (This)->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched)
7576#define ISpRecoContext_GetInfo(This,pInfo) (This)->lpVtbl->GetInfo(This,pInfo)
7577/*** ISpRecoContext methods ***/
7578#define ISpRecoContext_GetRecognizer(This,ppRecognizer) (This)->lpVtbl->GetRecognizer(This,ppRecognizer)
7579#define ISpRecoContext_CreateGrammar(This,ullGrammarId,ppGrammar) (This)->lpVtbl->CreateGrammar(This,ullGrammarId,ppGrammar)
7580#define ISpRecoContext_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
7581#define ISpRecoContext_GetMaxAlternates(This,pcAlternates) (This)->lpVtbl->GetMaxAlternates(This,pcAlternates)
7582#define ISpRecoContext_SetMaxAlternates(This,cAlternates) (This)->lpVtbl->SetMaxAlternates(This,cAlternates)
7583#define ISpRecoContext_SetAudioOptions(This,Options,pAudioFormatId,pWaveFormatEx) (This)->lpVtbl->SetAudioOptions(This,Options,pAudioFormatId,pWaveFormatEx)
7584#define ISpRecoContext_GetAudioOptions(This,pOptions,pAudioFormatId,ppCoMemWFEX) (This)->lpVtbl->GetAudioOptions(This,pOptions,pAudioFormatId,ppCoMemWFEX)
7585#define ISpRecoContext_DeserializeResult(This,pSerializedResult,ppResult) (This)->lpVtbl->DeserializeResult(This,pSerializedResult,ppResult)
7586#define ISpRecoContext_Bookmark(This,Options,ullStreamPosition,lparamEvent) (This)->lpVtbl->Bookmark(This,Options,ullStreamPosition,lparamEvent)
7587#define ISpRecoContext_SetAdaptationData(This,pAdaptationData,cch) (This)->lpVtbl->SetAdaptationData(This,pAdaptationData,cch)
7588#define ISpRecoContext_Pause(This,dwReserved) (This)->lpVtbl->Pause(This,dwReserved)
7589#define ISpRecoContext_Resume(This,dwReserved) (This)->lpVtbl->Resume(This,dwReserved)
7590#define ISpRecoContext_SetVoice(This,pVoice,fAllowFormatChanges) (This)->lpVtbl->SetVoice(This,pVoice,fAllowFormatChanges)
7591#define ISpRecoContext_GetVoice(This,ppVoice) (This)->lpVtbl->GetVoice(This,ppVoice)
7592#define ISpRecoContext_SetVoicePurgeEvent(This,ullEventInterest) (This)->lpVtbl->SetVoicePurgeEvent(This,ullEventInterest)
7593#define ISpRecoContext_GetVoicePurgeEvent(This,pullEventInterest) (This)->lpVtbl->GetVoicePurgeEvent(This,pullEventInterest)
7594#define ISpRecoContext_SetContextState(This,eContextState) (This)->lpVtbl->SetContextState(This,eContextState)
7595#define ISpRecoContext_GetContextState(This,peContextState) (This)->lpVtbl->GetContextState(This,peContextState)
7596#else
7597/*** IUnknown methods ***/
7598static inline HRESULT ISpRecoContext_QueryInterface(ISpRecoContext* This,REFIID riid,void **ppvObject) {
7599 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7600}
7601static inline ULONG ISpRecoContext_AddRef(ISpRecoContext* This) {
7602 return This->lpVtbl->AddRef(This);
7603}
7604static inline ULONG ISpRecoContext_Release(ISpRecoContext* This) {
7605 return This->lpVtbl->Release(This);
7606}
7607/*** ISpNotifySource methods ***/
7608static inline HRESULT ISpRecoContext_SetNotifySink(ISpRecoContext* This,ISpNotifySink *pNotifySink) {
7609 return This->lpVtbl->SetNotifySink(This,pNotifySink);
7610}
7611static inline HRESULT ISpRecoContext_SetNotifyWindowMessage(ISpRecoContext* This,HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam) {
7612 return This->lpVtbl->SetNotifyWindowMessage(This,hWnd,Msg,wParam,lParam);
7613}
7614static inline HRESULT ISpRecoContext_SetNotifyCallbackFunction(ISpRecoContext* This,SPNOTIFYCALLBACK *pfnCallback,WPARAM wParam,LPARAM lParam) {
7615 return This->lpVtbl->SetNotifyCallbackFunction(This,pfnCallback,wParam,lParam);
7616}
7617static inline HRESULT ISpRecoContext_SetNotifyCallbackInterface(ISpRecoContext* This,ISpNotifyCallback *pSpCallback,WPARAM wParam,LPARAM lParam) {
7618 return This->lpVtbl->SetNotifyCallbackInterface(This,pSpCallback,wParam,lParam);
7619}
7620static inline HRESULT ISpRecoContext_SetNotifyWin32Event(ISpRecoContext* This) {
7621 return This->lpVtbl->SetNotifyWin32Event(This);
7622}
7623static inline HRESULT ISpRecoContext_WaitForNotifyEvent(ISpRecoContext* This,DWORD dwMilliseconds) {
7624 return This->lpVtbl->WaitForNotifyEvent(This,dwMilliseconds);
7625}
7626static inline HANDLE ISpRecoContext_GetNotifyEventHandle(ISpRecoContext* This) {
7627 return This->lpVtbl->GetNotifyEventHandle(This);
7628}
7629/*** ISpEventSource methods ***/
7630static inline HRESULT ISpRecoContext_SetInterest(ISpRecoContext* This,ULONGLONG ullEventInterest,ULONGLONG ullQueuedInterest) {
7631 return This->lpVtbl->SetInterest(This,ullEventInterest,ullQueuedInterest);
7632}
7633static inline HRESULT ISpRecoContext_GetEvents(ISpRecoContext* This,ULONG ulCount,SPEVENT *pEventArray,ULONG *pulFetched) {
7634 return This->lpVtbl->GetEvents(This,ulCount,pEventArray,pulFetched);
7635}
7636static inline HRESULT ISpRecoContext_GetInfo(ISpRecoContext* This,SPEVENTSOURCEINFO *pInfo) {
7637 return This->lpVtbl->GetInfo(This,pInfo);
7638}
7639/*** ISpRecoContext methods ***/
7640static inline HRESULT ISpRecoContext_GetRecognizer(ISpRecoContext* This,ISpRecognizer **ppRecognizer) {
7641 return This->lpVtbl->GetRecognizer(This,ppRecognizer);
7642}
7643static inline HRESULT ISpRecoContext_CreateGrammar(ISpRecoContext* This,ULONGLONG ullGrammarId,ISpRecoGrammar **ppGrammar) {
7644 return This->lpVtbl->CreateGrammar(This,ullGrammarId,ppGrammar);
7645}
7646static inline HRESULT ISpRecoContext_GetStatus(ISpRecoContext* This,SPRECOCONTEXTSTATUS *pStatus) {
7647 return This->lpVtbl->GetStatus(This,pStatus);
7648}
7649static inline HRESULT ISpRecoContext_GetMaxAlternates(ISpRecoContext* This,ULONG *pcAlternates) {
7650 return This->lpVtbl->GetMaxAlternates(This,pcAlternates);
7651}
7652static inline HRESULT ISpRecoContext_SetMaxAlternates(ISpRecoContext* This,ULONG cAlternates) {
7653 return This->lpVtbl->SetMaxAlternates(This,cAlternates);
7654}
7655static inline HRESULT ISpRecoContext_SetAudioOptions(ISpRecoContext* This,SPAUDIOOPTIONS Options,const GUID *pAudioFormatId,const WAVEFORMATEX *pWaveFormatEx) {
7656 return This->lpVtbl->SetAudioOptions(This,Options,pAudioFormatId,pWaveFormatEx);
7657}
7658static inline HRESULT ISpRecoContext_GetAudioOptions(ISpRecoContext* This,SPAUDIOOPTIONS *pOptions,GUID *pAudioFormatId,WAVEFORMATEX **ppCoMemWFEX) {
7659 return This->lpVtbl->GetAudioOptions(This,pOptions,pAudioFormatId,ppCoMemWFEX);
7660}
7661static inline HRESULT ISpRecoContext_DeserializeResult(ISpRecoContext* This,const SPSERIALIZEDRESULT *pSerializedResult,ISpRecoResult **ppResult) {
7662 return This->lpVtbl->DeserializeResult(This,pSerializedResult,ppResult);
7663}
7664static inline HRESULT ISpRecoContext_Bookmark(ISpRecoContext* This,SPBOOKMARKOPTIONS Options,ULONGLONG ullStreamPosition,LPARAM lparamEvent) {
7665 return This->lpVtbl->Bookmark(This,Options,ullStreamPosition,lparamEvent);
7666}
7667static inline HRESULT ISpRecoContext_SetAdaptationData(ISpRecoContext* This,LPCWSTR pAdaptationData,const ULONG cch) {
7668 return This->lpVtbl->SetAdaptationData(This,pAdaptationData,cch);
7669}
7670static inline HRESULT ISpRecoContext_Pause(ISpRecoContext* This,DWORD dwReserved) {
7671 return This->lpVtbl->Pause(This,dwReserved);
7672}
7673static inline HRESULT ISpRecoContext_Resume(ISpRecoContext* This,DWORD dwReserved) {
7674 return This->lpVtbl->Resume(This,dwReserved);
7675}
7676static inline HRESULT ISpRecoContext_SetVoice(ISpRecoContext* This,ISpVoice *pVoice,WINBOOL fAllowFormatChanges) {
7677 return This->lpVtbl->SetVoice(This,pVoice,fAllowFormatChanges);
7678}
7679static inline HRESULT ISpRecoContext_GetVoice(ISpRecoContext* This,ISpVoice **ppVoice) {
7680 return This->lpVtbl->GetVoice(This,ppVoice);
7681}
7682static inline HRESULT ISpRecoContext_SetVoicePurgeEvent(ISpRecoContext* This,ULONGLONG ullEventInterest) {
7683 return This->lpVtbl->SetVoicePurgeEvent(This,ullEventInterest);
7684}
7685static inline HRESULT ISpRecoContext_GetVoicePurgeEvent(ISpRecoContext* This,ULONGLONG *pullEventInterest) {
7686 return This->lpVtbl->GetVoicePurgeEvent(This,pullEventInterest);
7687}
7688static inline HRESULT ISpRecoContext_SetContextState(ISpRecoContext* This,SPCONTEXTSTATE eContextState) {
7689 return This->lpVtbl->SetContextState(This,eContextState);
7690}
7691static inline HRESULT ISpRecoContext_GetContextState(ISpRecoContext* This,SPCONTEXTSTATE *peContextState) {
7692 return This->lpVtbl->GetContextState(This,peContextState);
7693}
7694#endif
7695#endif
7696
7697#endif
7698
7699
7700#endif /* __ISpRecoContext_INTERFACE_DEFINED__ */
7701
7702/*****************************************************************************
7703 * ISpProperties interface
7704 */
7705#ifndef __ISpProperties_INTERFACE_DEFINED__
7706#define __ISpProperties_INTERFACE_DEFINED__
7707
7708DEFINE_GUID(IID_ISpProperties, 0x5b4fb971, 0xb115, 0x4de1, 0xad,0x97, 0xe4,0x82,0xe3,0xbf,0x6e,0xe4);
7709#if defined(__cplusplus) && !defined(CINTERFACE)
7710MIDL_INTERFACE("5b4fb971-b115-4de1-ad97-e482e3bf6ee4")
7711ISpProperties : public IUnknown
7712{
7713 virtual HRESULT STDMETHODCALLTYPE SetPropertyNum(
7714 LPCWSTR pName,
7715 LONG lValue) = 0;
7716
7717 virtual HRESULT STDMETHODCALLTYPE GetPropertyNum(
7718 LPCWSTR pName,
7719 LONG *plValue) = 0;
7720
7721 virtual HRESULT STDMETHODCALLTYPE SetPropertyString(
7722 LPCWSTR pName,
7723 LPCWSTR pValue) = 0;
7724
7725 virtual HRESULT STDMETHODCALLTYPE GetPropertyString(
7726 LPCWSTR pName,
7727 LPWSTR *ppCoMemValue) = 0;
7728
7729};
7730#ifdef __CRT_UUID_DECL
7731__CRT_UUID_DECL(ISpProperties, 0x5b4fb971, 0xb115, 0x4de1, 0xad,0x97, 0xe4,0x82,0xe3,0xbf,0x6e,0xe4)
7732#endif
7733#else
7734typedef struct ISpPropertiesVtbl {
7735 BEGIN_INTERFACE
7736
7737 /*** IUnknown methods ***/
7738 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7739 ISpProperties *This,
7740 REFIID riid,
7741 void **ppvObject);
7742
7743 ULONG (STDMETHODCALLTYPE *AddRef)(
7744 ISpProperties *This);
7745
7746 ULONG (STDMETHODCALLTYPE *Release)(
7747 ISpProperties *This);
7748
7749 /*** ISpProperties methods ***/
7750 HRESULT (STDMETHODCALLTYPE *SetPropertyNum)(
7751 ISpProperties *This,
7752 LPCWSTR pName,
7753 LONG lValue);
7754
7755 HRESULT (STDMETHODCALLTYPE *GetPropertyNum)(
7756 ISpProperties *This,
7757 LPCWSTR pName,
7758 LONG *plValue);
7759
7760 HRESULT (STDMETHODCALLTYPE *SetPropertyString)(
7761 ISpProperties *This,
7762 LPCWSTR pName,
7763 LPCWSTR pValue);
7764
7765 HRESULT (STDMETHODCALLTYPE *GetPropertyString)(
7766 ISpProperties *This,
7767 LPCWSTR pName,
7768 LPWSTR *ppCoMemValue);
7769
7770 END_INTERFACE
7771} ISpPropertiesVtbl;
7772
7773interface ISpProperties {
7774 CONST_VTBL ISpPropertiesVtbl* lpVtbl;
7775};
7776
7777#ifdef COBJMACROS
7778#ifndef WIDL_C_INLINE_WRAPPERS
7779/*** IUnknown methods ***/
7780#define ISpProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7781#define ISpProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
7782#define ISpProperties_Release(This) (This)->lpVtbl->Release(This)
7783/*** ISpProperties methods ***/
7784#define ISpProperties_SetPropertyNum(This,pName,lValue) (This)->lpVtbl->SetPropertyNum(This,pName,lValue)
7785#define ISpProperties_GetPropertyNum(This,pName,plValue) (This)->lpVtbl->GetPropertyNum(This,pName,plValue)
7786#define ISpProperties_SetPropertyString(This,pName,pValue) (This)->lpVtbl->SetPropertyString(This,pName,pValue)
7787#define ISpProperties_GetPropertyString(This,pName,ppCoMemValue) (This)->lpVtbl->GetPropertyString(This,pName,ppCoMemValue)
7788#else
7789/*** IUnknown methods ***/
7790static inline HRESULT ISpProperties_QueryInterface(ISpProperties* This,REFIID riid,void **ppvObject) {
7791 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7792}
7793static inline ULONG ISpProperties_AddRef(ISpProperties* This) {
7794 return This->lpVtbl->AddRef(This);
7795}
7796static inline ULONG ISpProperties_Release(ISpProperties* This) {
7797 return This->lpVtbl->Release(This);
7798}
7799/*** ISpProperties methods ***/
7800static inline HRESULT ISpProperties_SetPropertyNum(ISpProperties* This,LPCWSTR pName,LONG lValue) {
7801 return This->lpVtbl->SetPropertyNum(This,pName,lValue);
7802}
7803static inline HRESULT ISpProperties_GetPropertyNum(ISpProperties* This,LPCWSTR pName,LONG *plValue) {
7804 return This->lpVtbl->GetPropertyNum(This,pName,plValue);
7805}
7806static inline HRESULT ISpProperties_SetPropertyString(ISpProperties* This,LPCWSTR pName,LPCWSTR pValue) {
7807 return This->lpVtbl->SetPropertyString(This,pName,pValue);
7808}
7809static inline HRESULT ISpProperties_GetPropertyString(ISpProperties* This,LPCWSTR pName,LPWSTR *ppCoMemValue) {
7810 return This->lpVtbl->GetPropertyString(This,pName,ppCoMemValue);
7811}
7812#endif
7813#endif
7814
7815#endif
7816
7817
7818#endif /* __ISpProperties_INTERFACE_DEFINED__ */
7819
7820#define SP_MAX_LANGIDS (20)
7821
7822typedef struct SPRECOGNIZERSTATUS {
7823 SPAUDIOSTATUS AudioStatus;
7824 ULONGLONG ullRecognitionStreamPos;
7825 ULONG ulStreamNumber;
7826 ULONG ulNumActive;
7827 CLSID clsidEngine;
7828 ULONG cLangIDs;
7829 WORD aLangID[20];
7830 ULONGLONG ullRecognitionStreamTime;
7831} SPRECOGNIZERSTATUS;
7832typedef enum SPWAVEFORMATTYPE {
7833 SPWF_INPUT = 0,
7834 SPWF_SRENGINE = 1
7835} SPSTREAMFORMATTYPE;
7836typedef enum SPRECOSTATE {
7837 SPRST_INACTIVE = 0,
7838 SPRST_ACTIVE = 1,
7839 SPRST_ACTIVE_ALWAYS = 2,
7840 SPRST_INACTIVE_WITH_PURGE = 3,
7841 SPRST_NUM_STATES = 4
7842} SPRECOSTATE;
7843/*****************************************************************************
7844 * ISpRecognizer interface
7845 */
7846#ifndef __ISpRecognizer_INTERFACE_DEFINED__
7847#define __ISpRecognizer_INTERFACE_DEFINED__
7848
7849DEFINE_GUID(IID_ISpRecognizer, 0xc2b5f241, 0xdaa0, 0x4507, 0x9e,0x16, 0x5a,0x1e,0xaa,0x2b,0x7a,0x5c);
7850#if defined(__cplusplus) && !defined(CINTERFACE)
7851MIDL_INTERFACE("c2b5f241-daa0-4507-9e16-5a1eaa2b7a5c")
7852ISpRecognizer : public ISpProperties
7853{
7854 virtual HRESULT STDMETHODCALLTYPE SetRecognizer(
7855 ISpObjectToken *pRecognizer) = 0;
7856
7857 virtual HRESULT STDMETHODCALLTYPE GetRecognizer(
7858 ISpObjectToken **ppRecognizer) = 0;
7859
7860 virtual HRESULT STDMETHODCALLTYPE SetInput(
7861 IUnknown *pUnkInput,
7862 WINBOOL fAllowFormatChanges) = 0;
7863
7864 virtual HRESULT STDMETHODCALLTYPE GetInputObjectToken(
7865 ISpObjectToken **ppToken) = 0;
7866
7867 virtual HRESULT STDMETHODCALLTYPE GetInputStream(
7868 ISpStreamFormat **ppStream) = 0;
7869
7870 virtual HRESULT STDMETHODCALLTYPE CreateRecoContext(
7871 ISpRecoContext **ppNewCtxt) = 0;
7872
7873 virtual HRESULT STDMETHODCALLTYPE GetRecoProfile(
7874 ISpObjectToken **ppToken) = 0;
7875
7876 virtual HRESULT STDMETHODCALLTYPE SetRecoProfile(
7877 ISpObjectToken *pToken) = 0;
7878
7879 virtual HRESULT STDMETHODCALLTYPE IsSharedInstance(
7880 ) = 0;
7881
7882 virtual HRESULT STDMETHODCALLTYPE GetRecoState(
7883 SPRECOSTATE *pState) = 0;
7884
7885 virtual HRESULT STDMETHODCALLTYPE SetRecoState(
7886 SPRECOSTATE NewState) = 0;
7887
7888 virtual HRESULT STDMETHODCALLTYPE GetStatus(
7889 SPRECOGNIZERSTATUS *pStatus) = 0;
7890
7891 virtual HRESULT STDMETHODCALLTYPE GetFormat(
7892 SPSTREAMFORMATTYPE WaveFormatType,
7893 GUID *pFormatId,
7894 WAVEFORMATEX **ppCoMemWFEX) = 0;
7895
7896 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
7897 LPCWSTR pszTypeOfUI,
7898 void *pvExtraData,
7899 ULONG cbExtraData,
7900 WINBOOL *pfSupported) = 0;
7901
7902 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
7903 HWND hwndParent,
7904 LPCWSTR pszTitle,
7905 LPCWSTR pszTypeOfUI,
7906 void *pvExtraData,
7907 ULONG cbExtraData) = 0;
7908
7909 virtual HRESULT STDMETHODCALLTYPE EmulateRecognition(
7910 ISpPhrase *pPhrase) = 0;
7911
7912};
7913#ifdef __CRT_UUID_DECL
7914__CRT_UUID_DECL(ISpRecognizer, 0xc2b5f241, 0xdaa0, 0x4507, 0x9e,0x16, 0x5a,0x1e,0xaa,0x2b,0x7a,0x5c)
7915#endif
7916#else
7917typedef struct ISpRecognizerVtbl {
7918 BEGIN_INTERFACE
7919
7920 /*** IUnknown methods ***/
7921 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7922 ISpRecognizer *This,
7923 REFIID riid,
7924 void **ppvObject);
7925
7926 ULONG (STDMETHODCALLTYPE *AddRef)(
7927 ISpRecognizer *This);
7928
7929 ULONG (STDMETHODCALLTYPE *Release)(
7930 ISpRecognizer *This);
7931
7932 /*** ISpProperties methods ***/
7933 HRESULT (STDMETHODCALLTYPE *SetPropertyNum)(
7934 ISpRecognizer *This,
7935 LPCWSTR pName,
7936 LONG lValue);
7937
7938 HRESULT (STDMETHODCALLTYPE *GetPropertyNum)(
7939 ISpRecognizer *This,
7940 LPCWSTR pName,
7941 LONG *plValue);
7942
7943 HRESULT (STDMETHODCALLTYPE *SetPropertyString)(
7944 ISpRecognizer *This,
7945 LPCWSTR pName,
7946 LPCWSTR pValue);
7947
7948 HRESULT (STDMETHODCALLTYPE *GetPropertyString)(
7949 ISpRecognizer *This,
7950 LPCWSTR pName,
7951 LPWSTR *ppCoMemValue);
7952
7953 /*** ISpRecognizer methods ***/
7954 HRESULT (STDMETHODCALLTYPE *SetRecognizer)(
7955 ISpRecognizer *This,
7956 ISpObjectToken *pRecognizer);
7957
7958 HRESULT (STDMETHODCALLTYPE *GetRecognizer)(
7959 ISpRecognizer *This,
7960 ISpObjectToken **ppRecognizer);
7961
7962 HRESULT (STDMETHODCALLTYPE *SetInput)(
7963 ISpRecognizer *This,
7964 IUnknown *pUnkInput,
7965 WINBOOL fAllowFormatChanges);
7966
7967 HRESULT (STDMETHODCALLTYPE *GetInputObjectToken)(
7968 ISpRecognizer *This,
7969 ISpObjectToken **ppToken);
7970
7971 HRESULT (STDMETHODCALLTYPE *GetInputStream)(
7972 ISpRecognizer *This,
7973 ISpStreamFormat **ppStream);
7974
7975 HRESULT (STDMETHODCALLTYPE *CreateRecoContext)(
7976 ISpRecognizer *This,
7977 ISpRecoContext **ppNewCtxt);
7978
7979 HRESULT (STDMETHODCALLTYPE *GetRecoProfile)(
7980 ISpRecognizer *This,
7981 ISpObjectToken **ppToken);
7982
7983 HRESULT (STDMETHODCALLTYPE *SetRecoProfile)(
7984 ISpRecognizer *This,
7985 ISpObjectToken *pToken);
7986
7987 HRESULT (STDMETHODCALLTYPE *IsSharedInstance)(
7988 ISpRecognizer *This);
7989
7990 HRESULT (STDMETHODCALLTYPE *GetRecoState)(
7991 ISpRecognizer *This,
7992 SPRECOSTATE *pState);
7993
7994 HRESULT (STDMETHODCALLTYPE *SetRecoState)(
7995 ISpRecognizer *This,
7996 SPRECOSTATE NewState);
7997
7998 HRESULT (STDMETHODCALLTYPE *GetStatus)(
7999 ISpRecognizer *This,
8000 SPRECOGNIZERSTATUS *pStatus);
8001
8002 HRESULT (STDMETHODCALLTYPE *GetFormat)(
8003 ISpRecognizer *This,
8004 SPSTREAMFORMATTYPE WaveFormatType,
8005 GUID *pFormatId,
8006 WAVEFORMATEX **ppCoMemWFEX);
8007
8008 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
8009 ISpRecognizer *This,
8010 LPCWSTR pszTypeOfUI,
8011 void *pvExtraData,
8012 ULONG cbExtraData,
8013 WINBOOL *pfSupported);
8014
8015 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
8016 ISpRecognizer *This,
8017 HWND hwndParent,
8018 LPCWSTR pszTitle,
8019 LPCWSTR pszTypeOfUI,
8020 void *pvExtraData,
8021 ULONG cbExtraData);
8022
8023 HRESULT (STDMETHODCALLTYPE *EmulateRecognition)(
8024 ISpRecognizer *This,
8025 ISpPhrase *pPhrase);
8026
8027 END_INTERFACE
8028} ISpRecognizerVtbl;
8029
8030interface ISpRecognizer {
8031 CONST_VTBL ISpRecognizerVtbl* lpVtbl;
8032};
8033
8034#ifdef COBJMACROS
8035#ifndef WIDL_C_INLINE_WRAPPERS
8036/*** IUnknown methods ***/
8037#define ISpRecognizer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8038#define ISpRecognizer_AddRef(This) (This)->lpVtbl->AddRef(This)
8039#define ISpRecognizer_Release(This) (This)->lpVtbl->Release(This)
8040/*** ISpProperties methods ***/
8041#define ISpRecognizer_SetPropertyNum(This,pName,lValue) (This)->lpVtbl->SetPropertyNum(This,pName,lValue)
8042#define ISpRecognizer_GetPropertyNum(This,pName,plValue) (This)->lpVtbl->GetPropertyNum(This,pName,plValue)
8043#define ISpRecognizer_SetPropertyString(This,pName,pValue) (This)->lpVtbl->SetPropertyString(This,pName,pValue)
8044#define ISpRecognizer_GetPropertyString(This,pName,ppCoMemValue) (This)->lpVtbl->GetPropertyString(This,pName,ppCoMemValue)
8045/*** ISpRecognizer methods ***/
8046#define ISpRecognizer_SetRecognizer(This,pRecognizer) (This)->lpVtbl->SetRecognizer(This,pRecognizer)
8047#define ISpRecognizer_GetRecognizer(This,ppRecognizer) (This)->lpVtbl->GetRecognizer(This,ppRecognizer)
8048#define ISpRecognizer_SetInput(This,pUnkInput,fAllowFormatChanges) (This)->lpVtbl->SetInput(This,pUnkInput,fAllowFormatChanges)
8049#define ISpRecognizer_GetInputObjectToken(This,ppToken) (This)->lpVtbl->GetInputObjectToken(This,ppToken)
8050#define ISpRecognizer_GetInputStream(This,ppStream) (This)->lpVtbl->GetInputStream(This,ppStream)
8051#define ISpRecognizer_CreateRecoContext(This,ppNewCtxt) (This)->lpVtbl->CreateRecoContext(This,ppNewCtxt)
8052#define ISpRecognizer_GetRecoProfile(This,ppToken) (This)->lpVtbl->GetRecoProfile(This,ppToken)
8053#define ISpRecognizer_SetRecoProfile(This,pToken) (This)->lpVtbl->SetRecoProfile(This,pToken)
8054#define ISpRecognizer_IsSharedInstance(This) (This)->lpVtbl->IsSharedInstance(This)
8055#define ISpRecognizer_GetRecoState(This,pState) (This)->lpVtbl->GetRecoState(This,pState)
8056#define ISpRecognizer_SetRecoState(This,NewState) (This)->lpVtbl->SetRecoState(This,NewState)
8057#define ISpRecognizer_GetStatus(This,pStatus) (This)->lpVtbl->GetStatus(This,pStatus)
8058#define ISpRecognizer_GetFormat(This,WaveFormatType,pFormatId,ppCoMemWFEX) (This)->lpVtbl->GetFormat(This,WaveFormatType,pFormatId,ppCoMemWFEX)
8059#define ISpRecognizer_IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported) (This)->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported)
8060#define ISpRecognizer_DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData) (This)->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData)
8061#define ISpRecognizer_EmulateRecognition(This,pPhrase) (This)->lpVtbl->EmulateRecognition(This,pPhrase)
8062#else
8063/*** IUnknown methods ***/
8064static inline HRESULT ISpRecognizer_QueryInterface(ISpRecognizer* This,REFIID riid,void **ppvObject) {
8065 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8066}
8067static inline ULONG ISpRecognizer_AddRef(ISpRecognizer* This) {
8068 return This->lpVtbl->AddRef(This);
8069}
8070static inline ULONG ISpRecognizer_Release(ISpRecognizer* This) {
8071 return This->lpVtbl->Release(This);
8072}
8073/*** ISpProperties methods ***/
8074static inline HRESULT ISpRecognizer_SetPropertyNum(ISpRecognizer* This,LPCWSTR pName,LONG lValue) {
8075 return This->lpVtbl->SetPropertyNum(This,pName,lValue);
8076}
8077static inline HRESULT ISpRecognizer_GetPropertyNum(ISpRecognizer* This,LPCWSTR pName,LONG *plValue) {
8078 return This->lpVtbl->GetPropertyNum(This,pName,plValue);
8079}
8080static inline HRESULT ISpRecognizer_SetPropertyString(ISpRecognizer* This,LPCWSTR pName,LPCWSTR pValue) {
8081 return This->lpVtbl->SetPropertyString(This,pName,pValue);
8082}
8083static inline HRESULT ISpRecognizer_GetPropertyString(ISpRecognizer* This,LPCWSTR pName,LPWSTR *ppCoMemValue) {
8084 return This->lpVtbl->GetPropertyString(This,pName,ppCoMemValue);
8085}
8086/*** ISpRecognizer methods ***/
8087static inline HRESULT ISpRecognizer_SetRecognizer(ISpRecognizer* This,ISpObjectToken *pRecognizer) {
8088 return This->lpVtbl->SetRecognizer(This,pRecognizer);
8089}
8090static inline HRESULT ISpRecognizer_GetRecognizer(ISpRecognizer* This,ISpObjectToken **ppRecognizer) {
8091 return This->lpVtbl->GetRecognizer(This,ppRecognizer);
8092}
8093static inline HRESULT ISpRecognizer_SetInput(ISpRecognizer* This,IUnknown *pUnkInput,WINBOOL fAllowFormatChanges) {
8094 return This->lpVtbl->SetInput(This,pUnkInput,fAllowFormatChanges);
8095}
8096static inline HRESULT ISpRecognizer_GetInputObjectToken(ISpRecognizer* This,ISpObjectToken **ppToken) {
8097 return This->lpVtbl->GetInputObjectToken(This,ppToken);
8098}
8099static inline HRESULT ISpRecognizer_GetInputStream(ISpRecognizer* This,ISpStreamFormat **ppStream) {
8100 return This->lpVtbl->GetInputStream(This,ppStream);
8101}
8102static inline HRESULT ISpRecognizer_CreateRecoContext(ISpRecognizer* This,ISpRecoContext **ppNewCtxt) {
8103 return This->lpVtbl->CreateRecoContext(This,ppNewCtxt);
8104}
8105static inline HRESULT ISpRecognizer_GetRecoProfile(ISpRecognizer* This,ISpObjectToken **ppToken) {
8106 return This->lpVtbl->GetRecoProfile(This,ppToken);
8107}
8108static inline HRESULT ISpRecognizer_SetRecoProfile(ISpRecognizer* This,ISpObjectToken *pToken) {
8109 return This->lpVtbl->SetRecoProfile(This,pToken);
8110}
8111static inline HRESULT ISpRecognizer_IsSharedInstance(ISpRecognizer* This) {
8112 return This->lpVtbl->IsSharedInstance(This);
8113}
8114static inline HRESULT ISpRecognizer_GetRecoState(ISpRecognizer* This,SPRECOSTATE *pState) {
8115 return This->lpVtbl->GetRecoState(This,pState);
8116}
8117static inline HRESULT ISpRecognizer_SetRecoState(ISpRecognizer* This,SPRECOSTATE NewState) {
8118 return This->lpVtbl->SetRecoState(This,NewState);
8119}
8120static inline HRESULT ISpRecognizer_GetStatus(ISpRecognizer* This,SPRECOGNIZERSTATUS *pStatus) {
8121 return This->lpVtbl->GetStatus(This,pStatus);
8122}
8123static inline HRESULT ISpRecognizer_GetFormat(ISpRecognizer* This,SPSTREAMFORMATTYPE WaveFormatType,GUID *pFormatId,WAVEFORMATEX **ppCoMemWFEX) {
8124 return This->lpVtbl->GetFormat(This,WaveFormatType,pFormatId,ppCoMemWFEX);
8125}
8126static inline HRESULT ISpRecognizer_IsUISupported(ISpRecognizer* This,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData,WINBOOL *pfSupported) {
8127 return This->lpVtbl->IsUISupported(This,pszTypeOfUI,pvExtraData,cbExtraData,pfSupported);
8128}
8129static inline HRESULT ISpRecognizer_DisplayUI(ISpRecognizer* This,HWND hwndParent,LPCWSTR pszTitle,LPCWSTR pszTypeOfUI,void *pvExtraData,ULONG cbExtraData) {
8130 return This->lpVtbl->DisplayUI(This,hwndParent,pszTitle,pszTypeOfUI,pvExtraData,cbExtraData);
8131}
8132static inline HRESULT ISpRecognizer_EmulateRecognition(ISpRecognizer* This,ISpPhrase *pPhrase) {
8133 return This->lpVtbl->EmulateRecognition(This,pPhrase);
8134}
8135#endif
8136#endif
8137
8138#endif
8139
8140
8141#endif /* __ISpRecognizer_INTERFACE_DEFINED__ */
8142
8143#ifndef __SpeechLib_LIBRARY_DEFINED__
8144#define __SpeechLib_LIBRARY_DEFINED__
8145
8146DEFINE_GUID(LIBID_SpeechLib, 0xc866ca3a, 0x32f7, 0x11d2, 0x96,0x02, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
8147
8148#ifndef __ISpeechDataKey_FWD_DEFINED__
8149#define __ISpeechDataKey_FWD_DEFINED__
8150typedef interface ISpeechDataKey ISpeechDataKey;
8151#ifdef __cplusplus
8152interface ISpeechDataKey;
8153#endif /* __cplusplus */
8154#endif
8155
8156#ifndef __ISpeechObjectToken_FWD_DEFINED__
8157#define __ISpeechObjectToken_FWD_DEFINED__
8158typedef interface ISpeechObjectToken ISpeechObjectToken;
8159#ifdef __cplusplus
8160interface ISpeechObjectToken;
8161#endif /* __cplusplus */
8162#endif
8163
8164#ifndef __ISpeechObjectTokens_FWD_DEFINED__
8165#define __ISpeechObjectTokens_FWD_DEFINED__
8166typedef interface ISpeechObjectTokens ISpeechObjectTokens;
8167#ifdef __cplusplus
8168interface ISpeechObjectTokens;
8169#endif /* __cplusplus */
8170#endif
8171
8172#ifndef __ISpeechObjectTokenCategory_FWD_DEFINED__
8173#define __ISpeechObjectTokenCategory_FWD_DEFINED__
8174typedef interface ISpeechObjectTokenCategory ISpeechObjectTokenCategory;
8175#ifdef __cplusplus
8176interface ISpeechObjectTokenCategory;
8177#endif /* __cplusplus */
8178#endif
8179
8180#ifndef __ISpeechAudioBufferInfo_FWD_DEFINED__
8181#define __ISpeechAudioBufferInfo_FWD_DEFINED__
8182typedef interface ISpeechAudioBufferInfo ISpeechAudioBufferInfo;
8183#ifdef __cplusplus
8184interface ISpeechAudioBufferInfo;
8185#endif /* __cplusplus */
8186#endif
8187
8188#ifndef __ISpeechAudioStatus_FWD_DEFINED__
8189#define __ISpeechAudioStatus_FWD_DEFINED__
8190typedef interface ISpeechAudioStatus ISpeechAudioStatus;
8191#ifdef __cplusplus
8192interface ISpeechAudioStatus;
8193#endif /* __cplusplus */
8194#endif
8195
8196#ifndef __ISpeechAudioFormat_FWD_DEFINED__
8197#define __ISpeechAudioFormat_FWD_DEFINED__
8198typedef interface ISpeechAudioFormat ISpeechAudioFormat;
8199#ifdef __cplusplus
8200interface ISpeechAudioFormat;
8201#endif /* __cplusplus */
8202#endif
8203
8204#ifndef __ISpeechWaveFormatEx_FWD_DEFINED__
8205#define __ISpeechWaveFormatEx_FWD_DEFINED__
8206typedef interface ISpeechWaveFormatEx ISpeechWaveFormatEx;
8207#ifdef __cplusplus
8208interface ISpeechWaveFormatEx;
8209#endif /* __cplusplus */
8210#endif
8211
8212#ifndef __ISpeechBaseStream_FWD_DEFINED__
8213#define __ISpeechBaseStream_FWD_DEFINED__
8214typedef interface ISpeechBaseStream ISpeechBaseStream;
8215#ifdef __cplusplus
8216interface ISpeechBaseStream;
8217#endif /* __cplusplus */
8218#endif
8219
8220#ifndef __ISpeechFileStream_FWD_DEFINED__
8221#define __ISpeechFileStream_FWD_DEFINED__
8222typedef interface ISpeechFileStream ISpeechFileStream;
8223#ifdef __cplusplus
8224interface ISpeechFileStream;
8225#endif /* __cplusplus */
8226#endif
8227
8228#ifndef __ISpeechMemoryStream_FWD_DEFINED__
8229#define __ISpeechMemoryStream_FWD_DEFINED__
8230typedef interface ISpeechMemoryStream ISpeechMemoryStream;
8231#ifdef __cplusplus
8232interface ISpeechMemoryStream;
8233#endif /* __cplusplus */
8234#endif
8235
8236#ifndef __ISpeechCustomStream_FWD_DEFINED__
8237#define __ISpeechCustomStream_FWD_DEFINED__
8238typedef interface ISpeechCustomStream ISpeechCustomStream;
8239#ifdef __cplusplus
8240interface ISpeechCustomStream;
8241#endif /* __cplusplus */
8242#endif
8243
8244#ifndef __ISpeechAudio_FWD_DEFINED__
8245#define __ISpeechAudio_FWD_DEFINED__
8246typedef interface ISpeechAudio ISpeechAudio;
8247#ifdef __cplusplus
8248interface ISpeechAudio;
8249#endif /* __cplusplus */
8250#endif
8251
8252#ifndef __ISpeechMMSysAudio_FWD_DEFINED__
8253#define __ISpeechMMSysAudio_FWD_DEFINED__
8254typedef interface ISpeechMMSysAudio ISpeechMMSysAudio;
8255#ifdef __cplusplus
8256interface ISpeechMMSysAudio;
8257#endif /* __cplusplus */
8258#endif
8259
8260#ifndef __ISpeechVoice_FWD_DEFINED__
8261#define __ISpeechVoice_FWD_DEFINED__
8262typedef interface ISpeechVoice ISpeechVoice;
8263#ifdef __cplusplus
8264interface ISpeechVoice;
8265#endif /* __cplusplus */
8266#endif
8267
8268#ifndef __ISpeechVoiceStatus_FWD_DEFINED__
8269#define __ISpeechVoiceStatus_FWD_DEFINED__
8270typedef interface ISpeechVoiceStatus ISpeechVoiceStatus;
8271#ifdef __cplusplus
8272interface ISpeechVoiceStatus;
8273#endif /* __cplusplus */
8274#endif
8275
8276#ifndef ___ISpeechVoiceEvents_FWD_DEFINED__
8277#define ___ISpeechVoiceEvents_FWD_DEFINED__
8278typedef interface _ISpeechVoiceEvents _ISpeechVoiceEvents;
8279#ifdef __cplusplus
8280interface _ISpeechVoiceEvents;
8281#endif /* __cplusplus */
8282#endif
8283
8284#ifndef __ISpeechRecognizer_FWD_DEFINED__
8285#define __ISpeechRecognizer_FWD_DEFINED__
8286typedef interface ISpeechRecognizer ISpeechRecognizer;
8287#ifdef __cplusplus
8288interface ISpeechRecognizer;
8289#endif /* __cplusplus */
8290#endif
8291
8292#ifndef __ISpeechRecognizerStatus_FWD_DEFINED__
8293#define __ISpeechRecognizerStatus_FWD_DEFINED__
8294typedef interface ISpeechRecognizerStatus ISpeechRecognizerStatus;
8295#ifdef __cplusplus
8296interface ISpeechRecognizerStatus;
8297#endif /* __cplusplus */
8298#endif
8299
8300#ifndef __ISpeechRecoContext_FWD_DEFINED__
8301#define __ISpeechRecoContext_FWD_DEFINED__
8302typedef interface ISpeechRecoContext ISpeechRecoContext;
8303#ifdef __cplusplus
8304interface ISpeechRecoContext;
8305#endif /* __cplusplus */
8306#endif
8307
8308#ifndef __ISpeechRecoGrammar_FWD_DEFINED__
8309#define __ISpeechRecoGrammar_FWD_DEFINED__
8310typedef interface ISpeechRecoGrammar ISpeechRecoGrammar;
8311#ifdef __cplusplus
8312interface ISpeechRecoGrammar;
8313#endif /* __cplusplus */
8314#endif
8315
8316#ifndef ___ISpeechRecoContextEvents_FWD_DEFINED__
8317#define ___ISpeechRecoContextEvents_FWD_DEFINED__
8318typedef interface _ISpeechRecoContextEvents _ISpeechRecoContextEvents;
8319#ifdef __cplusplus
8320interface _ISpeechRecoContextEvents;
8321#endif /* __cplusplus */
8322#endif
8323
8324#ifndef __ISpeechGrammarRule_FWD_DEFINED__
8325#define __ISpeechGrammarRule_FWD_DEFINED__
8326typedef interface ISpeechGrammarRule ISpeechGrammarRule;
8327#ifdef __cplusplus
8328interface ISpeechGrammarRule;
8329#endif /* __cplusplus */
8330#endif
8331
8332#ifndef __ISpeechGrammarRules_FWD_DEFINED__
8333#define __ISpeechGrammarRules_FWD_DEFINED__
8334typedef interface ISpeechGrammarRules ISpeechGrammarRules;
8335#ifdef __cplusplus
8336interface ISpeechGrammarRules;
8337#endif /* __cplusplus */
8338#endif
8339
8340#ifndef __ISpeechGrammarRuleState_FWD_DEFINED__
8341#define __ISpeechGrammarRuleState_FWD_DEFINED__
8342typedef interface ISpeechGrammarRuleState ISpeechGrammarRuleState;
8343#ifdef __cplusplus
8344interface ISpeechGrammarRuleState;
8345#endif /* __cplusplus */
8346#endif
8347
8348#ifndef __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
8349#define __ISpeechGrammarRuleStateTransition_FWD_DEFINED__
8350typedef interface ISpeechGrammarRuleStateTransition ISpeechGrammarRuleStateTransition;
8351#ifdef __cplusplus
8352interface ISpeechGrammarRuleStateTransition;
8353#endif /* __cplusplus */
8354#endif
8355
8356#ifndef __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
8357#define __ISpeechGrammarRuleStateTransitions_FWD_DEFINED__
8358typedef interface ISpeechGrammarRuleStateTransitions ISpeechGrammarRuleStateTransitions;
8359#ifdef __cplusplus
8360interface ISpeechGrammarRuleStateTransitions;
8361#endif /* __cplusplus */
8362#endif
8363
8364#ifndef __ISpeechTextSelectionInformation_FWD_DEFINED__
8365#define __ISpeechTextSelectionInformation_FWD_DEFINED__
8366typedef interface ISpeechTextSelectionInformation ISpeechTextSelectionInformation;
8367#ifdef __cplusplus
8368interface ISpeechTextSelectionInformation;
8369#endif /* __cplusplus */
8370#endif
8371
8372#ifndef __ISpeechRecoResult_FWD_DEFINED__
8373#define __ISpeechRecoResult_FWD_DEFINED__
8374typedef interface ISpeechRecoResult ISpeechRecoResult;
8375#ifdef __cplusplus
8376interface ISpeechRecoResult;
8377#endif /* __cplusplus */
8378#endif
8379
8380#ifndef __ISpeechRecoResultTimes_FWD_DEFINED__
8381#define __ISpeechRecoResultTimes_FWD_DEFINED__
8382typedef interface ISpeechRecoResultTimes ISpeechRecoResultTimes;
8383#ifdef __cplusplus
8384interface ISpeechRecoResultTimes;
8385#endif /* __cplusplus */
8386#endif
8387
8388#ifndef __ISpeechPhraseAlternate_FWD_DEFINED__
8389#define __ISpeechPhraseAlternate_FWD_DEFINED__
8390typedef interface ISpeechPhraseAlternate ISpeechPhraseAlternate;
8391#ifdef __cplusplus
8392interface ISpeechPhraseAlternate;
8393#endif /* __cplusplus */
8394#endif
8395
8396#ifndef __ISpeechPhraseAlternates_FWD_DEFINED__
8397#define __ISpeechPhraseAlternates_FWD_DEFINED__
8398typedef interface ISpeechPhraseAlternates ISpeechPhraseAlternates;
8399#ifdef __cplusplus
8400interface ISpeechPhraseAlternates;
8401#endif /* __cplusplus */
8402#endif
8403
8404#ifndef __ISpeechPhraseInfo_FWD_DEFINED__
8405#define __ISpeechPhraseInfo_FWD_DEFINED__
8406typedef interface ISpeechPhraseInfo ISpeechPhraseInfo;
8407#ifdef __cplusplus
8408interface ISpeechPhraseInfo;
8409#endif /* __cplusplus */
8410#endif
8411
8412#ifndef __ISpeechPhraseElement_FWD_DEFINED__
8413#define __ISpeechPhraseElement_FWD_DEFINED__
8414typedef interface ISpeechPhraseElement ISpeechPhraseElement;
8415#ifdef __cplusplus
8416interface ISpeechPhraseElement;
8417#endif /* __cplusplus */
8418#endif
8419
8420#ifndef __ISpeechPhraseElements_FWD_DEFINED__
8421#define __ISpeechPhraseElements_FWD_DEFINED__
8422typedef interface ISpeechPhraseElements ISpeechPhraseElements;
8423#ifdef __cplusplus
8424interface ISpeechPhraseElements;
8425#endif /* __cplusplus */
8426#endif
8427
8428#ifndef __ISpeechPhraseReplacement_FWD_DEFINED__
8429#define __ISpeechPhraseReplacement_FWD_DEFINED__
8430typedef interface ISpeechPhraseReplacement ISpeechPhraseReplacement;
8431#ifdef __cplusplus
8432interface ISpeechPhraseReplacement;
8433#endif /* __cplusplus */
8434#endif
8435
8436#ifndef __ISpeechPhraseReplacements_FWD_DEFINED__
8437#define __ISpeechPhraseReplacements_FWD_DEFINED__
8438typedef interface ISpeechPhraseReplacements ISpeechPhraseReplacements;
8439#ifdef __cplusplus
8440interface ISpeechPhraseReplacements;
8441#endif /* __cplusplus */
8442#endif
8443
8444#ifndef __ISpeechPhraseProperty_FWD_DEFINED__
8445#define __ISpeechPhraseProperty_FWD_DEFINED__
8446typedef interface ISpeechPhraseProperty ISpeechPhraseProperty;
8447#ifdef __cplusplus
8448interface ISpeechPhraseProperty;
8449#endif /* __cplusplus */
8450#endif
8451
8452#ifndef __ISpeechPhraseProperties_FWD_DEFINED__
8453#define __ISpeechPhraseProperties_FWD_DEFINED__
8454typedef interface ISpeechPhraseProperties ISpeechPhraseProperties;
8455#ifdef __cplusplus
8456interface ISpeechPhraseProperties;
8457#endif /* __cplusplus */
8458#endif
8459
8460#ifndef __ISpeechPhraseRule_FWD_DEFINED__
8461#define __ISpeechPhraseRule_FWD_DEFINED__
8462typedef interface ISpeechPhraseRule ISpeechPhraseRule;
8463#ifdef __cplusplus
8464interface ISpeechPhraseRule;
8465#endif /* __cplusplus */
8466#endif
8467
8468#ifndef __ISpeechPhraseRules_FWD_DEFINED__
8469#define __ISpeechPhraseRules_FWD_DEFINED__
8470typedef interface ISpeechPhraseRules ISpeechPhraseRules;
8471#ifdef __cplusplus
8472interface ISpeechPhraseRules;
8473#endif /* __cplusplus */
8474#endif
8475
8476#ifndef __ISpeechLexicon_FWD_DEFINED__
8477#define __ISpeechLexicon_FWD_DEFINED__
8478typedef interface ISpeechLexicon ISpeechLexicon;
8479#ifdef __cplusplus
8480interface ISpeechLexicon;
8481#endif /* __cplusplus */
8482#endif
8483
8484#ifndef __ISpeechLexiconWords_FWD_DEFINED__
8485#define __ISpeechLexiconWords_FWD_DEFINED__
8486typedef interface ISpeechLexiconWords ISpeechLexiconWords;
8487#ifdef __cplusplus
8488interface ISpeechLexiconWords;
8489#endif /* __cplusplus */
8490#endif
8491
8492#ifndef __ISpeechLexiconWord_FWD_DEFINED__
8493#define __ISpeechLexiconWord_FWD_DEFINED__
8494typedef interface ISpeechLexiconWord ISpeechLexiconWord;
8495#ifdef __cplusplus
8496interface ISpeechLexiconWord;
8497#endif /* __cplusplus */
8498#endif
8499
8500#ifndef __ISpeechLexiconPronunciations_FWD_DEFINED__
8501#define __ISpeechLexiconPronunciations_FWD_DEFINED__
8502typedef interface ISpeechLexiconPronunciations ISpeechLexiconPronunciations;
8503#ifdef __cplusplus
8504interface ISpeechLexiconPronunciations;
8505#endif /* __cplusplus */
8506#endif
8507
8508#ifndef __ISpeechLexiconPronunciation_FWD_DEFINED__
8509#define __ISpeechLexiconPronunciation_FWD_DEFINED__
8510typedef interface ISpeechLexiconPronunciation ISpeechLexiconPronunciation;
8511#ifdef __cplusplus
8512interface ISpeechLexiconPronunciation;
8513#endif /* __cplusplus */
8514#endif
8515
8516typedef LONG SpeechLanguageId;
8517#define __SpeechStringConstants_MODULE_DEFINED__
8518#ifndef __SpeechStringConstants_MODULE_DEFINED__
8519#define __SpeechStringConstants_MODULE_DEFINED__
8520#define SpeechRegistryUserRoot (L"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Speech")
8521
8522#define SpeechRegistryLocalMachineRoot (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech")
8523
8524#define SpeechCategoryAudioOut (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\AudioOutput")
8525
8526#define SpeechCategoryAudioIn (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\AudioInput")
8527
8528#define SpeechCategoryVoices (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices")
8529
8530#define SpeechCategoryRecognizers (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Recognizers")
8531
8532#define SpeechCategoryAppLexicons (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\AppLexicons")
8533
8534#define SpeechCategoryPhoneConverters (L"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\PhoneConverters")
8535
8536#define SpeechCategoryRecoProfiles (L"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Speech\RecoProfiles")
8537
8538#define SpeechTokenIdUserLexicon (L"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Speech\CurrentUserLexicon")
8539
8540#define SpeechTokenValueCLSID (L"CLSID")
8541
8542#define SpeechTokenKeyFiles (L"Files")
8543
8544#define SpeechTokenKeyUI (L"UI")
8545
8546#define SpeechTokenKeyAttributes (L"Attributes")
8547
8548#define SpeechVoiceCategoryTTSRate (L"DefaultTTSRate")
8549
8550#define SpeechPropertyResourceUsage (L"ResourceUsage")
8551
8552#define SpeechPropertyHighConfidenceThreshold (L"HighConfidenceThreshold")
8553
8554#define SpeechPropertyNormalConfidenceThreshold (L"NormalConfidenceThreshold")
8555
8556#define SpeechPropertyLowConfidenceThreshold (L"LowConfidenceThreshold")
8557
8558#define SpeechPropertyResponseSpeed (L"ResponseSpeed")
8559
8560#define SpeechPropertyComplexResponseSpeed (L"ComplexResponseSpeed")
8561
8562#define SpeechPropertyAdaptationOn (L"AdaptationOn")
8563
8564#define SpeechDictationTopicSpelling (L"Spelling")
8565
8566#define SpeechGrammarTagWildcard (L"...")
8567
8568#define SpeechGrammarTagDictation (L"*")
8569
8570#define SpeechGrammarTagUnlimitedDictation (L"*+")
8571
8572#define SpeechEngineProperties (L"EngineProperties")
8573
8574#define SpeechAddRemoveWord (L"AddRemoveWord")
8575
8576#define SpeechUserTraining (L"UserTraining")
8577
8578#define SpeechMicTraining (L"MicTraining")
8579
8580#define SpeechRecoProfileProperties (L"RecoProfileProperties")
8581
8582#define SpeechAudioProperties (L"AudioProperties")
8583
8584#define SpeechAudioVolume (L"AudioVolume")
8585
8586#define SpeechVoiceSkipTypeSentence (L"Sentence")
8587
8588#define SpeechAudioFormatGUIDWave (L"{C31ADBAE-527F-4ff5-A230-F62BB61FF70C}")
8589
8590#define SpeechAudioFormatGUIDText (L"{7CEEF9F9-3D13-11d2-9EE7-00C04F797396}")
8591
8592#endif /* __SpeechStringConstants_MODULE_DEFINED__ */
8593#ifndef __SpeechConstants_MODULE_DEFINED__
8594#define __SpeechConstants_MODULE_DEFINED__
8595#define Speech_Default_Weight (DEFAULT_WEIGHT)
8596
8597#define Speech_Max_Word_Length (SP_MAX_WORD_LENGTH)
8598
8599#define Speech_Max_Pron_Length (SP_MAX_PRON_LENGTH)
8600
8601#define Speech_StreamPos_Asap (SP_STREAMPOS_ASAP)
8602
8603#define Speech_StreamPos_RealTime (SP_STREAMPOS_REALTIME)
8604
8605#define SpeechAllElements (SPPR_ALL_ELEMENTS)
8606
8607#endif /* __SpeechConstants_MODULE_DEFINED__ */
8608typedef enum DISPID_SpeechDataKey {
8609 DISPID_SDKSetBinaryValue = 1,
8610 DISPID_SDKGetBinaryValue = 2,
8611 DISPID_SDKSetStringValue = 3,
8612 DISPID_SDKGetStringValue = 4,
8613 DISPID_SDKSetLongValue = 5,
8614 DISPID_SDKGetlongValue = 6,
8615 DISPID_SDKOpenKey = 7,
8616 DISPID_SDKCreateKey = 8,
8617 DISPID_SDKDeleteKey = 9,
8618 DISPID_SDKDeleteValue = 10,
8619 DISPID_SDKEnumKeys = 11,
8620 DISPID_SDKEnumValues = 12
8621} DISPID_SpeechDataKey;
8622typedef enum DISPID_SpeechObjectToken {
8623 DISPID_SOTId = 1,
8624 DISPID_SOTDataKey = 2,
8625 DISPID_SOTCategory = 3,
8626 DISPID_SOTGetDescription = 4,
8627 DISPID_SOTSetId = 5,
8628 DISPID_SOTGetAttribute = 6,
8629 DISPID_SOTCreateInstance = 7,
8630 DISPID_SOTRemove = 8,
8631 DISPID_SOTGetStorageFileName = 9,
8632 DISPID_SOTRemoveStorageFileName = 10,
8633 DISPID_SOTIsUISupported = 11,
8634 DISPID_SOTDisplayUI = 12,
8635 DISPID_SOTMatchesAttributes = 13
8636} DISPID_SpeechObjectToken;
8637typedef enum SpeechDataKeyLocation {
8638 SDKLDefaultLocation = SPDKL_DefaultLocation,
8639 SDKLCurrentUser = SPDKL_CurrentUser,
8640 SDKLLocalMachine = SPDKL_LocalMachine,
8641 SDKLCurrentConfig = SPDKL_CurrentConfig
8642} SpeechDataKeyLocation;
8643typedef enum SpeechTokenContext {
8644 STCInprocServer = CLSCTX_INPROC_SERVER,
8645 STCInprocHandler = CLSCTX_INPROC_HANDLER,
8646 STCLocalServer = CLSCTX_LOCAL_SERVER,
8647 STCRemoteServer = CLSCTX_REMOTE_SERVER,
8648 STCAll = ((CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER) | CLSCTX_LOCAL_SERVER) | CLSCTX_REMOTE_SERVER
8649} SpeechTokenContext;
8650typedef enum SpeechTokenShellFolder {
8651 STSF_AppData = 0x1a,
8652 STSF_LocalAppData = 0x1c,
8653 STSF_CommonAppData = 0x23,
8654 STSF_FlagCreate = 0x8000
8655} SpeechTokenShellFolder;
8656typedef enum DISPID_SpeechObjectTokens {
8657 DISPID_SOTsCount = 1,
8658 DISPID_SOTsItem = DISPID_VALUE,
8659 DISPID_SOTs_NewEnum = DISPID_NEWENUM
8660} DISPID_SpeechObjectTokens;
8661typedef enum DISPID_SpeechObjectTokenCategory {
8662 DISPID_SOTCId = 1,
8663 DISPID_SOTCDefault = 2,
8664 DISPID_SOTCSetId = 3,
8665 DISPID_SOTCGetDataKey = 4,
8666 DISPID_SOTCEnumerateTokens = 5
8667} DISPID_SpeechObjectTokenCategory;
8668/*****************************************************************************
8669 * ISpeechDataKey interface
8670 */
8671#ifndef __ISpeechDataKey_INTERFACE_DEFINED__
8672#define __ISpeechDataKey_INTERFACE_DEFINED__
8673
8674DEFINE_GUID(IID_ISpeechDataKey, 0xce17c09b, 0x4efa, 0x44d5, 0xa4,0xc9, 0x59,0xd9,0x58,0x5a,0xb0,0xcd);
8675#if defined(__cplusplus) && !defined(CINTERFACE)
8676MIDL_INTERFACE("ce17c09b-4efa-44d5-a4c9-59d9585ab0cd")
8677ISpeechDataKey : public IDispatch
8678{
8679 virtual HRESULT STDMETHODCALLTYPE SetBinaryValue(
8680 const BSTR ValueName,
8681 VARIANT Value) = 0;
8682
8683 virtual HRESULT STDMETHODCALLTYPE GetBinaryValue(
8684 const BSTR ValueName,
8685 VARIANT *Value) = 0;
8686
8687 virtual HRESULT STDMETHODCALLTYPE SetStringValue(
8688 const BSTR ValueName,
8689 const BSTR Value) = 0;
8690
8691 virtual HRESULT STDMETHODCALLTYPE GetStringValue(
8692 const BSTR ValueName,
8693 BSTR *Value) = 0;
8694
8695 virtual HRESULT STDMETHODCALLTYPE SetLongValue(
8696 const BSTR ValueName,
8697 LONG Value) = 0;
8698
8699 virtual HRESULT STDMETHODCALLTYPE GetLongValue(
8700 const BSTR ValueName,
8701 LONG *Value) = 0;
8702
8703 virtual HRESULT STDMETHODCALLTYPE OpenKey(
8704 const BSTR SubKeyName,
8705 ISpeechDataKey **SubKey) = 0;
8706
8707 virtual HRESULT STDMETHODCALLTYPE CreateKey(
8708 const BSTR SubKeyName,
8709 ISpeechDataKey **SubKey) = 0;
8710
8711 virtual HRESULT STDMETHODCALLTYPE DeleteKey(
8712 const BSTR SubKeyName) = 0;
8713
8714 virtual HRESULT STDMETHODCALLTYPE DeleteValue(
8715 const BSTR ValueName) = 0;
8716
8717 virtual HRESULT STDMETHODCALLTYPE EnumKeys(
8718 LONG Index,
8719 BSTR *SubKeyName) = 0;
8720
8721 virtual HRESULT STDMETHODCALLTYPE EnumValues(
8722 LONG Index,
8723 BSTR *ValueName) = 0;
8724
8725};
8726#ifdef __CRT_UUID_DECL
8727__CRT_UUID_DECL(ISpeechDataKey, 0xce17c09b, 0x4efa, 0x44d5, 0xa4,0xc9, 0x59,0xd9,0x58,0x5a,0xb0,0xcd)
8728#endif
8729#else
8730typedef struct ISpeechDataKeyVtbl {
8731 BEGIN_INTERFACE
8732
8733 /*** IUnknown methods ***/
8734 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8735 ISpeechDataKey *This,
8736 REFIID riid,
8737 void **ppvObject);
8738
8739 ULONG (STDMETHODCALLTYPE *AddRef)(
8740 ISpeechDataKey *This);
8741
8742 ULONG (STDMETHODCALLTYPE *Release)(
8743 ISpeechDataKey *This);
8744
8745 /*** IDispatch methods ***/
8746 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
8747 ISpeechDataKey *This,
8748 UINT *pctinfo);
8749
8750 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
8751 ISpeechDataKey *This,
8752 UINT iTInfo,
8753 LCID lcid,
8754 ITypeInfo **ppTInfo);
8755
8756 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
8757 ISpeechDataKey *This,
8758 REFIID riid,
8759 LPOLESTR *rgszNames,
8760 UINT cNames,
8761 LCID lcid,
8762 DISPID *rgDispId);
8763
8764 HRESULT (STDMETHODCALLTYPE *Invoke)(
8765 ISpeechDataKey *This,
8766 DISPID dispIdMember,
8767 REFIID riid,
8768 LCID lcid,
8769 WORD wFlags,
8770 DISPPARAMS *pDispParams,
8771 VARIANT *pVarResult,
8772 EXCEPINFO *pExcepInfo,
8773 UINT *puArgErr);
8774
8775 /*** ISpeechDataKey methods ***/
8776 HRESULT (STDMETHODCALLTYPE *SetBinaryValue)(
8777 ISpeechDataKey *This,
8778 const BSTR ValueName,
8779 VARIANT Value);
8780
8781 HRESULT (STDMETHODCALLTYPE *GetBinaryValue)(
8782 ISpeechDataKey *This,
8783 const BSTR ValueName,
8784 VARIANT *Value);
8785
8786 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
8787 ISpeechDataKey *This,
8788 const BSTR ValueName,
8789 const BSTR Value);
8790
8791 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
8792 ISpeechDataKey *This,
8793 const BSTR ValueName,
8794 BSTR *Value);
8795
8796 HRESULT (STDMETHODCALLTYPE *SetLongValue)(
8797 ISpeechDataKey *This,
8798 const BSTR ValueName,
8799 LONG Value);
8800
8801 HRESULT (STDMETHODCALLTYPE *GetLongValue)(
8802 ISpeechDataKey *This,
8803 const BSTR ValueName,
8804 LONG *Value);
8805
8806 HRESULT (STDMETHODCALLTYPE *OpenKey)(
8807 ISpeechDataKey *This,
8808 const BSTR SubKeyName,
8809 ISpeechDataKey **SubKey);
8810
8811 HRESULT (STDMETHODCALLTYPE *CreateKey)(
8812 ISpeechDataKey *This,
8813 const BSTR SubKeyName,
8814 ISpeechDataKey **SubKey);
8815
8816 HRESULT (STDMETHODCALLTYPE *DeleteKey)(
8817 ISpeechDataKey *This,
8818 const BSTR SubKeyName);
8819
8820 HRESULT (STDMETHODCALLTYPE *DeleteValue)(
8821 ISpeechDataKey *This,
8822 const BSTR ValueName);
8823
8824 HRESULT (STDMETHODCALLTYPE *EnumKeys)(
8825 ISpeechDataKey *This,
8826 LONG Index,
8827 BSTR *SubKeyName);
8828
8829 HRESULT (STDMETHODCALLTYPE *EnumValues)(
8830 ISpeechDataKey *This,
8831 LONG Index,
8832 BSTR *ValueName);
8833
8834 END_INTERFACE
8835} ISpeechDataKeyVtbl;
8836
8837interface ISpeechDataKey {
8838 CONST_VTBL ISpeechDataKeyVtbl* lpVtbl;
8839};
8840
8841#ifdef COBJMACROS
8842#ifndef WIDL_C_INLINE_WRAPPERS
8843/*** IUnknown methods ***/
8844#define ISpeechDataKey_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8845#define ISpeechDataKey_AddRef(This) (This)->lpVtbl->AddRef(This)
8846#define ISpeechDataKey_Release(This) (This)->lpVtbl->Release(This)
8847/*** IDispatch methods ***/
8848#define ISpeechDataKey_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
8849#define ISpeechDataKey_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
8850#define ISpeechDataKey_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
8851#define ISpeechDataKey_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
8852/*** ISpeechDataKey methods ***/
8853#define ISpeechDataKey_SetBinaryValue(This,ValueName,Value) (This)->lpVtbl->SetBinaryValue(This,ValueName,Value)
8854#define ISpeechDataKey_GetBinaryValue(This,ValueName,Value) (This)->lpVtbl->GetBinaryValue(This,ValueName,Value)
8855#define ISpeechDataKey_SetStringValue(This,ValueName,Value) (This)->lpVtbl->SetStringValue(This,ValueName,Value)
8856#define ISpeechDataKey_GetStringValue(This,ValueName,Value) (This)->lpVtbl->GetStringValue(This,ValueName,Value)
8857#define ISpeechDataKey_SetLongValue(This,ValueName,Value) (This)->lpVtbl->SetLongValue(This,ValueName,Value)
8858#define ISpeechDataKey_GetLongValue(This,ValueName,Value) (This)->lpVtbl->GetLongValue(This,ValueName,Value)
8859#define ISpeechDataKey_OpenKey(This,SubKeyName,SubKey) (This)->lpVtbl->OpenKey(This,SubKeyName,SubKey)
8860#define ISpeechDataKey_CreateKey(This,SubKeyName,SubKey) (This)->lpVtbl->CreateKey(This,SubKeyName,SubKey)
8861#define ISpeechDataKey_DeleteKey(This,SubKeyName) (This)->lpVtbl->DeleteKey(This,SubKeyName)
8862#define ISpeechDataKey_DeleteValue(This,ValueName) (This)->lpVtbl->DeleteValue(This,ValueName)
8863#define ISpeechDataKey_EnumKeys(This,Index,SubKeyName) (This)->lpVtbl->EnumKeys(This,Index,SubKeyName)
8864#define ISpeechDataKey_EnumValues(This,Index,ValueName) (This)->lpVtbl->EnumValues(This,Index,ValueName)
8865#else
8866/*** IUnknown methods ***/
8867static inline HRESULT ISpeechDataKey_QueryInterface(ISpeechDataKey* This,REFIID riid,void **ppvObject) {
8868 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8869}
8870static inline ULONG ISpeechDataKey_AddRef(ISpeechDataKey* This) {
8871 return This->lpVtbl->AddRef(This);
8872}
8873static inline ULONG ISpeechDataKey_Release(ISpeechDataKey* This) {
8874 return This->lpVtbl->Release(This);
8875}
8876/*** IDispatch methods ***/
8877static inline HRESULT ISpeechDataKey_GetTypeInfoCount(ISpeechDataKey* This,UINT *pctinfo) {
8878 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
8879}
8880static inline HRESULT ISpeechDataKey_GetTypeInfo(ISpeechDataKey* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
8881 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
8882}
8883static inline HRESULT ISpeechDataKey_GetIDsOfNames(ISpeechDataKey* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
8884 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
8885}
8886static inline HRESULT ISpeechDataKey_Invoke(ISpeechDataKey* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
8887 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
8888}
8889/*** ISpeechDataKey methods ***/
8890static inline HRESULT ISpeechDataKey_SetBinaryValue(ISpeechDataKey* This,const BSTR ValueName,VARIANT Value) {
8891 return This->lpVtbl->SetBinaryValue(This,ValueName,Value);
8892}
8893static inline HRESULT ISpeechDataKey_GetBinaryValue(ISpeechDataKey* This,const BSTR ValueName,VARIANT *Value) {
8894 return This->lpVtbl->GetBinaryValue(This,ValueName,Value);
8895}
8896static inline HRESULT ISpeechDataKey_SetStringValue(ISpeechDataKey* This,const BSTR ValueName,const BSTR Value) {
8897 return This->lpVtbl->SetStringValue(This,ValueName,Value);
8898}
8899static inline HRESULT ISpeechDataKey_GetStringValue(ISpeechDataKey* This,const BSTR ValueName,BSTR *Value) {
8900 return This->lpVtbl->GetStringValue(This,ValueName,Value);
8901}
8902static inline HRESULT ISpeechDataKey_SetLongValue(ISpeechDataKey* This,const BSTR ValueName,LONG Value) {
8903 return This->lpVtbl->SetLongValue(This,ValueName,Value);
8904}
8905static inline HRESULT ISpeechDataKey_GetLongValue(ISpeechDataKey* This,const BSTR ValueName,LONG *Value) {
8906 return This->lpVtbl->GetLongValue(This,ValueName,Value);
8907}
8908static inline HRESULT ISpeechDataKey_OpenKey(ISpeechDataKey* This,const BSTR SubKeyName,ISpeechDataKey **SubKey) {
8909 return This->lpVtbl->OpenKey(This,SubKeyName,SubKey);
8910}
8911static inline HRESULT ISpeechDataKey_CreateKey(ISpeechDataKey* This,const BSTR SubKeyName,ISpeechDataKey **SubKey) {
8912 return This->lpVtbl->CreateKey(This,SubKeyName,SubKey);
8913}
8914static inline HRESULT ISpeechDataKey_DeleteKey(ISpeechDataKey* This,const BSTR SubKeyName) {
8915 return This->lpVtbl->DeleteKey(This,SubKeyName);
8916}
8917static inline HRESULT ISpeechDataKey_DeleteValue(ISpeechDataKey* This,const BSTR ValueName) {
8918 return This->lpVtbl->DeleteValue(This,ValueName);
8919}
8920static inline HRESULT ISpeechDataKey_EnumKeys(ISpeechDataKey* This,LONG Index,BSTR *SubKeyName) {
8921 return This->lpVtbl->EnumKeys(This,Index,SubKeyName);
8922}
8923static inline HRESULT ISpeechDataKey_EnumValues(ISpeechDataKey* This,LONG Index,BSTR *ValueName) {
8924 return This->lpVtbl->EnumValues(This,Index,ValueName);
8925}
8926#endif
8927#endif
8928
8929#endif
8930
8931
8932#endif /* __ISpeechDataKey_INTERFACE_DEFINED__ */
8933
8934/*****************************************************************************
8935 * ISpeechObjectToken interface
8936 */
8937#ifndef __ISpeechObjectToken_INTERFACE_DEFINED__
8938#define __ISpeechObjectToken_INTERFACE_DEFINED__
8939
8940DEFINE_GUID(IID_ISpeechObjectToken, 0xc74a3adc, 0xb727, 0x4500, 0xa8,0x4a, 0xb5,0x26,0x72,0x1c,0x8b,0x8c);
8941#if defined(__cplusplus) && !defined(CINTERFACE)
8942MIDL_INTERFACE("c74a3adc-b727-4500-a84a-b526721c8b8c")
8943ISpeechObjectToken : public IDispatch
8944{
8945 virtual HRESULT STDMETHODCALLTYPE get_Id(
8946 BSTR *ObjectId) = 0;
8947
8948 virtual HRESULT STDMETHODCALLTYPE get_DataKey(
8949 ISpeechDataKey **DataKey) = 0;
8950
8951 virtual HRESULT STDMETHODCALLTYPE get_Category(
8952 ISpeechObjectTokenCategory **Category) = 0;
8953
8954 virtual HRESULT STDMETHODCALLTYPE GetDescription(
8955 LONG Locale,
8956 BSTR *Description) = 0;
8957
8958 virtual HRESULT STDMETHODCALLTYPE SetId(
8959 BSTR Id,
8960 BSTR CategoryID = L"",
8961 VARIANT_BOOL CreateIfNotExist = 0) = 0;
8962
8963 virtual HRESULT STDMETHODCALLTYPE GetAttribute(
8964 BSTR AttributeName,
8965 BSTR *AttributeValue) = 0;
8966
8967 virtual HRESULT STDMETHODCALLTYPE CreateInstance(
8968 IUnknown *pUnkOuter,
8969 SpeechTokenContext ClsContext,
8970 IUnknown **Object) = 0;
8971
8972 virtual HRESULT STDMETHODCALLTYPE Remove(
8973 BSTR ObjectStorageCLSID) = 0;
8974
8975 virtual HRESULT STDMETHODCALLTYPE GetStorageFileName(
8976 BSTR ObjectStorageCLSID,
8977 BSTR KeyName,
8978 BSTR FileName,
8979 SpeechTokenShellFolder Folder,
8980 BSTR *FilePath) = 0;
8981
8982 virtual HRESULT STDMETHODCALLTYPE RemoveStorageFileName(
8983 BSTR ObjectStorageCLSID,
8984 BSTR KeyName,
8985 VARIANT_BOOL DeleteFile) = 0;
8986
8987 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
8988 const BSTR TypeOfUI,
8989 const VARIANT *ExtraData,
8990 IUnknown *Object,
8991 VARIANT_BOOL *Supported) = 0;
8992
8993 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
8994 LONG hWnd,
8995 BSTR Title,
8996 const BSTR TypeOfUI,
8997 const VARIANT *ExtraData = 0,
8998 IUnknown *Object = 0) = 0;
8999
9000 virtual HRESULT STDMETHODCALLTYPE MatchesAttributes(
9001 BSTR Attributes,
9002 VARIANT_BOOL *Matches) = 0;
9003
9004};
9005#ifdef __CRT_UUID_DECL
9006__CRT_UUID_DECL(ISpeechObjectToken, 0xc74a3adc, 0xb727, 0x4500, 0xa8,0x4a, 0xb5,0x26,0x72,0x1c,0x8b,0x8c)
9007#endif
9008#else
9009typedef struct ISpeechObjectTokenVtbl {
9010 BEGIN_INTERFACE
9011
9012 /*** IUnknown methods ***/
9013 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9014 ISpeechObjectToken *This,
9015 REFIID riid,
9016 void **ppvObject);
9017
9018 ULONG (STDMETHODCALLTYPE *AddRef)(
9019 ISpeechObjectToken *This);
9020
9021 ULONG (STDMETHODCALLTYPE *Release)(
9022 ISpeechObjectToken *This);
9023
9024 /*** IDispatch methods ***/
9025 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
9026 ISpeechObjectToken *This,
9027 UINT *pctinfo);
9028
9029 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
9030 ISpeechObjectToken *This,
9031 UINT iTInfo,
9032 LCID lcid,
9033 ITypeInfo **ppTInfo);
9034
9035 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
9036 ISpeechObjectToken *This,
9037 REFIID riid,
9038 LPOLESTR *rgszNames,
9039 UINT cNames,
9040 LCID lcid,
9041 DISPID *rgDispId);
9042
9043 HRESULT (STDMETHODCALLTYPE *Invoke)(
9044 ISpeechObjectToken *This,
9045 DISPID dispIdMember,
9046 REFIID riid,
9047 LCID lcid,
9048 WORD wFlags,
9049 DISPPARAMS *pDispParams,
9050 VARIANT *pVarResult,
9051 EXCEPINFO *pExcepInfo,
9052 UINT *puArgErr);
9053
9054 /*** ISpeechObjectToken methods ***/
9055 HRESULT (STDMETHODCALLTYPE *get_Id)(
9056 ISpeechObjectToken *This,
9057 BSTR *ObjectId);
9058
9059 HRESULT (STDMETHODCALLTYPE *get_DataKey)(
9060 ISpeechObjectToken *This,
9061 ISpeechDataKey **DataKey);
9062
9063 HRESULT (STDMETHODCALLTYPE *get_Category)(
9064 ISpeechObjectToken *This,
9065 ISpeechObjectTokenCategory **Category);
9066
9067 HRESULT (STDMETHODCALLTYPE *GetDescription)(
9068 ISpeechObjectToken *This,
9069 LONG Locale,
9070 BSTR *Description);
9071
9072 HRESULT (STDMETHODCALLTYPE *SetId)(
9073 ISpeechObjectToken *This,
9074 BSTR Id,
9075 BSTR CategoryID,
9076 VARIANT_BOOL CreateIfNotExist);
9077
9078 HRESULT (STDMETHODCALLTYPE *GetAttribute)(
9079 ISpeechObjectToken *This,
9080 BSTR AttributeName,
9081 BSTR *AttributeValue);
9082
9083 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
9084 ISpeechObjectToken *This,
9085 IUnknown *pUnkOuter,
9086 SpeechTokenContext ClsContext,
9087 IUnknown **Object);
9088
9089 HRESULT (STDMETHODCALLTYPE *Remove)(
9090 ISpeechObjectToken *This,
9091 BSTR ObjectStorageCLSID);
9092
9093 HRESULT (STDMETHODCALLTYPE *GetStorageFileName)(
9094 ISpeechObjectToken *This,
9095 BSTR ObjectStorageCLSID,
9096 BSTR KeyName,
9097 BSTR FileName,
9098 SpeechTokenShellFolder Folder,
9099 BSTR *FilePath);
9100
9101 HRESULT (STDMETHODCALLTYPE *RemoveStorageFileName)(
9102 ISpeechObjectToken *This,
9103 BSTR ObjectStorageCLSID,
9104 BSTR KeyName,
9105 VARIANT_BOOL DeleteFile);
9106
9107 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
9108 ISpeechObjectToken *This,
9109 const BSTR TypeOfUI,
9110 const VARIANT *ExtraData,
9111 IUnknown *Object,
9112 VARIANT_BOOL *Supported);
9113
9114 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
9115 ISpeechObjectToken *This,
9116 LONG hWnd,
9117 BSTR Title,
9118 const BSTR TypeOfUI,
9119 const VARIANT *ExtraData,
9120 IUnknown *Object);
9121
9122 HRESULT (STDMETHODCALLTYPE *MatchesAttributes)(
9123 ISpeechObjectToken *This,
9124 BSTR Attributes,
9125 VARIANT_BOOL *Matches);
9126
9127 END_INTERFACE
9128} ISpeechObjectTokenVtbl;
9129
9130interface ISpeechObjectToken {
9131 CONST_VTBL ISpeechObjectTokenVtbl* lpVtbl;
9132};
9133
9134#ifdef COBJMACROS
9135#ifndef WIDL_C_INLINE_WRAPPERS
9136/*** IUnknown methods ***/
9137#define ISpeechObjectToken_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9138#define ISpeechObjectToken_AddRef(This) (This)->lpVtbl->AddRef(This)
9139#define ISpeechObjectToken_Release(This) (This)->lpVtbl->Release(This)
9140/*** IDispatch methods ***/
9141#define ISpeechObjectToken_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
9142#define ISpeechObjectToken_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
9143#define ISpeechObjectToken_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
9144#define ISpeechObjectToken_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
9145/*** ISpeechObjectToken methods ***/
9146#define ISpeechObjectToken_get_Id(This,ObjectId) (This)->lpVtbl->get_Id(This,ObjectId)
9147#define ISpeechObjectToken_get_DataKey(This,DataKey) (This)->lpVtbl->get_DataKey(This,DataKey)
9148#define ISpeechObjectToken_get_Category(This,Category) (This)->lpVtbl->get_Category(This,Category)
9149#define ISpeechObjectToken_GetDescription(This,Locale,Description) (This)->lpVtbl->GetDescription(This,Locale,Description)
9150#define ISpeechObjectToken_SetId(This,Id,CategoryID,CreateIfNotExist) (This)->lpVtbl->SetId(This,Id,CategoryID,CreateIfNotExist)
9151#define ISpeechObjectToken_GetAttribute(This,AttributeName,AttributeValue) (This)->lpVtbl->GetAttribute(This,AttributeName,AttributeValue)
9152#define ISpeechObjectToken_CreateInstance(This,pUnkOuter,ClsContext,Object) (This)->lpVtbl->CreateInstance(This,pUnkOuter,ClsContext,Object)
9153#define ISpeechObjectToken_Remove(This,ObjectStorageCLSID) (This)->lpVtbl->Remove(This,ObjectStorageCLSID)
9154#define ISpeechObjectToken_GetStorageFileName(This,ObjectStorageCLSID,KeyName,FileName,Folder,FilePath) (This)->lpVtbl->GetStorageFileName(This,ObjectStorageCLSID,KeyName,FileName,Folder,FilePath)
9155#define ISpeechObjectToken_RemoveStorageFileName(This,ObjectStorageCLSID,KeyName,DeleteFile) (This)->lpVtbl->RemoveStorageFileName(This,ObjectStorageCLSID,KeyName,DeleteFile)
9156#define ISpeechObjectToken_IsUISupported(This,TypeOfUI,ExtraData,Object,Supported) (This)->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Object,Supported)
9157#define ISpeechObjectToken_DisplayUI(This,hWnd,Title,TypeOfUI,ExtraData,Object) (This)->lpVtbl->DisplayUI(This,hWnd,Title,TypeOfUI,ExtraData,Object)
9158#define ISpeechObjectToken_MatchesAttributes(This,Attributes,Matches) (This)->lpVtbl->MatchesAttributes(This,Attributes,Matches)
9159#else
9160/*** IUnknown methods ***/
9161static inline HRESULT ISpeechObjectToken_QueryInterface(ISpeechObjectToken* This,REFIID riid,void **ppvObject) {
9162 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9163}
9164static inline ULONG ISpeechObjectToken_AddRef(ISpeechObjectToken* This) {
9165 return This->lpVtbl->AddRef(This);
9166}
9167static inline ULONG ISpeechObjectToken_Release(ISpeechObjectToken* This) {
9168 return This->lpVtbl->Release(This);
9169}
9170/*** IDispatch methods ***/
9171static inline HRESULT ISpeechObjectToken_GetTypeInfoCount(ISpeechObjectToken* This,UINT *pctinfo) {
9172 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
9173}
9174static inline HRESULT ISpeechObjectToken_GetTypeInfo(ISpeechObjectToken* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
9175 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
9176}
9177static inline HRESULT ISpeechObjectToken_GetIDsOfNames(ISpeechObjectToken* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
9178 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
9179}
9180static inline HRESULT ISpeechObjectToken_Invoke(ISpeechObjectToken* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
9181 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
9182}
9183/*** ISpeechObjectToken methods ***/
9184static inline HRESULT ISpeechObjectToken_get_Id(ISpeechObjectToken* This,BSTR *ObjectId) {
9185 return This->lpVtbl->get_Id(This,ObjectId);
9186}
9187static inline HRESULT ISpeechObjectToken_get_DataKey(ISpeechObjectToken* This,ISpeechDataKey **DataKey) {
9188 return This->lpVtbl->get_DataKey(This,DataKey);
9189}
9190static inline HRESULT ISpeechObjectToken_get_Category(ISpeechObjectToken* This,ISpeechObjectTokenCategory **Category) {
9191 return This->lpVtbl->get_Category(This,Category);
9192}
9193static inline HRESULT ISpeechObjectToken_GetDescription(ISpeechObjectToken* This,LONG Locale,BSTR *Description) {
9194 return This->lpVtbl->GetDescription(This,Locale,Description);
9195}
9196static inline HRESULT ISpeechObjectToken_SetId(ISpeechObjectToken* This,BSTR Id,BSTR CategoryID,VARIANT_BOOL CreateIfNotExist) {
9197 return This->lpVtbl->SetId(This,Id,CategoryID,CreateIfNotExist);
9198}
9199static inline HRESULT ISpeechObjectToken_GetAttribute(ISpeechObjectToken* This,BSTR AttributeName,BSTR *AttributeValue) {
9200 return This->lpVtbl->GetAttribute(This,AttributeName,AttributeValue);
9201}
9202static inline HRESULT ISpeechObjectToken_CreateInstance(ISpeechObjectToken* This,IUnknown *pUnkOuter,SpeechTokenContext ClsContext,IUnknown **Object) {
9203 return This->lpVtbl->CreateInstance(This,pUnkOuter,ClsContext,Object);
9204}
9205static inline HRESULT ISpeechObjectToken_Remove(ISpeechObjectToken* This,BSTR ObjectStorageCLSID) {
9206 return This->lpVtbl->Remove(This,ObjectStorageCLSID);
9207}
9208static inline HRESULT ISpeechObjectToken_GetStorageFileName(ISpeechObjectToken* This,BSTR ObjectStorageCLSID,BSTR KeyName,BSTR FileName,SpeechTokenShellFolder Folder,BSTR *FilePath) {
9209 return This->lpVtbl->GetStorageFileName(This,ObjectStorageCLSID,KeyName,FileName,Folder,FilePath);
9210}
9211static inline HRESULT ISpeechObjectToken_RemoveStorageFileName(ISpeechObjectToken* This,BSTR ObjectStorageCLSID,BSTR KeyName,VARIANT_BOOL DeleteFile) {
9212 return This->lpVtbl->RemoveStorageFileName(This,ObjectStorageCLSID,KeyName,DeleteFile);
9213}
9214static inline HRESULT ISpeechObjectToken_IsUISupported(ISpeechObjectToken* This,const BSTR TypeOfUI,const VARIANT *ExtraData,IUnknown *Object,VARIANT_BOOL *Supported) {
9215 return This->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Object,Supported);
9216}
9217static inline HRESULT ISpeechObjectToken_DisplayUI(ISpeechObjectToken* This,LONG hWnd,BSTR Title,const BSTR TypeOfUI,const VARIANT *ExtraData,IUnknown *Object) {
9218 return This->lpVtbl->DisplayUI(This,hWnd,Title,TypeOfUI,ExtraData,Object);
9219}
9220static inline HRESULT ISpeechObjectToken_MatchesAttributes(ISpeechObjectToken* This,BSTR Attributes,VARIANT_BOOL *Matches) {
9221 return This->lpVtbl->MatchesAttributes(This,Attributes,Matches);
9222}
9223#endif
9224#endif
9225
9226#endif
9227
9228
9229#endif /* __ISpeechObjectToken_INTERFACE_DEFINED__ */
9230
9231/*****************************************************************************
9232 * ISpeechObjectTokens interface
9233 */
9234#ifndef __ISpeechObjectTokens_INTERFACE_DEFINED__
9235#define __ISpeechObjectTokens_INTERFACE_DEFINED__
9236
9237DEFINE_GUID(IID_ISpeechObjectTokens, 0x9285b776, 0x2e7b, 0x4bc0, 0xb5,0x3e, 0x58,0x0e,0xb6,0xfa,0x96,0x7f);
9238#if defined(__cplusplus) && !defined(CINTERFACE)
9239MIDL_INTERFACE("9285b776-2e7b-4bc0-b53e-580eb6fa967f")
9240ISpeechObjectTokens : public IDispatch
9241{
9242 virtual HRESULT STDMETHODCALLTYPE get_Count(
9243 LONG *Count) = 0;
9244
9245 virtual HRESULT STDMETHODCALLTYPE Item(
9246 LONG Index,
9247 ISpeechObjectToken **Token) = 0;
9248
9249 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
9250 IUnknown **ppEnumVARIANT) = 0;
9251
9252};
9253#ifdef __CRT_UUID_DECL
9254__CRT_UUID_DECL(ISpeechObjectTokens, 0x9285b776, 0x2e7b, 0x4bc0, 0xb5,0x3e, 0x58,0x0e,0xb6,0xfa,0x96,0x7f)
9255#endif
9256#else
9257typedef struct ISpeechObjectTokensVtbl {
9258 BEGIN_INTERFACE
9259
9260 /*** IUnknown methods ***/
9261 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9262 ISpeechObjectTokens *This,
9263 REFIID riid,
9264 void **ppvObject);
9265
9266 ULONG (STDMETHODCALLTYPE *AddRef)(
9267 ISpeechObjectTokens *This);
9268
9269 ULONG (STDMETHODCALLTYPE *Release)(
9270 ISpeechObjectTokens *This);
9271
9272 /*** IDispatch methods ***/
9273 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
9274 ISpeechObjectTokens *This,
9275 UINT *pctinfo);
9276
9277 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
9278 ISpeechObjectTokens *This,
9279 UINT iTInfo,
9280 LCID lcid,
9281 ITypeInfo **ppTInfo);
9282
9283 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
9284 ISpeechObjectTokens *This,
9285 REFIID riid,
9286 LPOLESTR *rgszNames,
9287 UINT cNames,
9288 LCID lcid,
9289 DISPID *rgDispId);
9290
9291 HRESULT (STDMETHODCALLTYPE *Invoke)(
9292 ISpeechObjectTokens *This,
9293 DISPID dispIdMember,
9294 REFIID riid,
9295 LCID lcid,
9296 WORD wFlags,
9297 DISPPARAMS *pDispParams,
9298 VARIANT *pVarResult,
9299 EXCEPINFO *pExcepInfo,
9300 UINT *puArgErr);
9301
9302 /*** ISpeechObjectTokens methods ***/
9303 HRESULT (STDMETHODCALLTYPE *get_Count)(
9304 ISpeechObjectTokens *This,
9305 LONG *Count);
9306
9307 HRESULT (STDMETHODCALLTYPE *Item)(
9308 ISpeechObjectTokens *This,
9309 LONG Index,
9310 ISpeechObjectToken **Token);
9311
9312 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
9313 ISpeechObjectTokens *This,
9314 IUnknown **ppEnumVARIANT);
9315
9316 END_INTERFACE
9317} ISpeechObjectTokensVtbl;
9318
9319interface ISpeechObjectTokens {
9320 CONST_VTBL ISpeechObjectTokensVtbl* lpVtbl;
9321};
9322
9323#ifdef COBJMACROS
9324#ifndef WIDL_C_INLINE_WRAPPERS
9325/*** IUnknown methods ***/
9326#define ISpeechObjectTokens_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9327#define ISpeechObjectTokens_AddRef(This) (This)->lpVtbl->AddRef(This)
9328#define ISpeechObjectTokens_Release(This) (This)->lpVtbl->Release(This)
9329/*** IDispatch methods ***/
9330#define ISpeechObjectTokens_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
9331#define ISpeechObjectTokens_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
9332#define ISpeechObjectTokens_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
9333#define ISpeechObjectTokens_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
9334/*** ISpeechObjectTokens methods ***/
9335#define ISpeechObjectTokens_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
9336#define ISpeechObjectTokens_Item(This,Index,Token) (This)->lpVtbl->Item(This,Index,Token)
9337#define ISpeechObjectTokens_get__NewEnum(This,ppEnumVARIANT) (This)->lpVtbl->get__NewEnum(This,ppEnumVARIANT)
9338#else
9339/*** IUnknown methods ***/
9340static inline HRESULT ISpeechObjectTokens_QueryInterface(ISpeechObjectTokens* This,REFIID riid,void **ppvObject) {
9341 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9342}
9343static inline ULONG ISpeechObjectTokens_AddRef(ISpeechObjectTokens* This) {
9344 return This->lpVtbl->AddRef(This);
9345}
9346static inline ULONG ISpeechObjectTokens_Release(ISpeechObjectTokens* This) {
9347 return This->lpVtbl->Release(This);
9348}
9349/*** IDispatch methods ***/
9350static inline HRESULT ISpeechObjectTokens_GetTypeInfoCount(ISpeechObjectTokens* This,UINT *pctinfo) {
9351 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
9352}
9353static inline HRESULT ISpeechObjectTokens_GetTypeInfo(ISpeechObjectTokens* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
9354 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
9355}
9356static inline HRESULT ISpeechObjectTokens_GetIDsOfNames(ISpeechObjectTokens* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
9357 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
9358}
9359static inline HRESULT ISpeechObjectTokens_Invoke(ISpeechObjectTokens* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
9360 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
9361}
9362/*** ISpeechObjectTokens methods ***/
9363static inline HRESULT ISpeechObjectTokens_get_Count(ISpeechObjectTokens* This,LONG *Count) {
9364 return This->lpVtbl->get_Count(This,Count);
9365}
9366static inline HRESULT ISpeechObjectTokens_Item(ISpeechObjectTokens* This,LONG Index,ISpeechObjectToken **Token) {
9367 return This->lpVtbl->Item(This,Index,Token);
9368}
9369static inline HRESULT ISpeechObjectTokens_get__NewEnum(ISpeechObjectTokens* This,IUnknown **ppEnumVARIANT) {
9370 return This->lpVtbl->get__NewEnum(This,ppEnumVARIANT);
9371}
9372#endif
9373#endif
9374
9375#endif
9376
9377
9378#endif /* __ISpeechObjectTokens_INTERFACE_DEFINED__ */
9379
9380/*****************************************************************************
9381 * ISpeechObjectTokenCategory interface
9382 */
9383#ifndef __ISpeechObjectTokenCategory_INTERFACE_DEFINED__
9384#define __ISpeechObjectTokenCategory_INTERFACE_DEFINED__
9385
9386DEFINE_GUID(IID_ISpeechObjectTokenCategory, 0xca7eac50, 0x2d01, 0x4145, 0x86,0xd4, 0x5a,0xe7,0xd7,0x0f,0x44,0x69);
9387#if defined(__cplusplus) && !defined(CINTERFACE)
9388MIDL_INTERFACE("ca7eac50-2d01-4145-86d4-5ae7d70f4469")
9389ISpeechObjectTokenCategory : public IDispatch
9390{
9391 virtual HRESULT STDMETHODCALLTYPE get_Id(
9392 BSTR *Id) = 0;
9393
9394 virtual HRESULT STDMETHODCALLTYPE put_Default(
9395 const BSTR TokenId) = 0;
9396
9397 virtual HRESULT STDMETHODCALLTYPE get_Default(
9398 BSTR *TokenId) = 0;
9399
9400 virtual HRESULT STDMETHODCALLTYPE SetId(
9401 const BSTR Id,
9402 VARIANT_BOOL CreateIfNotExist = 0) = 0;
9403
9404 virtual HRESULT STDMETHODCALLTYPE GetDataKey(
9405 SpeechDataKeyLocation Location,
9406 ISpeechDataKey **DataKey) = 0;
9407
9408 virtual HRESULT STDMETHODCALLTYPE EnumerateTokens(
9409 BSTR RequiredAttributes,
9410 BSTR OptionalAttributes,
9411 ISpeechObjectTokens **Tokens) = 0;
9412
9413};
9414#ifdef __CRT_UUID_DECL
9415__CRT_UUID_DECL(ISpeechObjectTokenCategory, 0xca7eac50, 0x2d01, 0x4145, 0x86,0xd4, 0x5a,0xe7,0xd7,0x0f,0x44,0x69)
9416#endif
9417#else
9418typedef struct ISpeechObjectTokenCategoryVtbl {
9419 BEGIN_INTERFACE
9420
9421 /*** IUnknown methods ***/
9422 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9423 ISpeechObjectTokenCategory *This,
9424 REFIID riid,
9425 void **ppvObject);
9426
9427 ULONG (STDMETHODCALLTYPE *AddRef)(
9428 ISpeechObjectTokenCategory *This);
9429
9430 ULONG (STDMETHODCALLTYPE *Release)(
9431 ISpeechObjectTokenCategory *This);
9432
9433 /*** IDispatch methods ***/
9434 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
9435 ISpeechObjectTokenCategory *This,
9436 UINT *pctinfo);
9437
9438 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
9439 ISpeechObjectTokenCategory *This,
9440 UINT iTInfo,
9441 LCID lcid,
9442 ITypeInfo **ppTInfo);
9443
9444 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
9445 ISpeechObjectTokenCategory *This,
9446 REFIID riid,
9447 LPOLESTR *rgszNames,
9448 UINT cNames,
9449 LCID lcid,
9450 DISPID *rgDispId);
9451
9452 HRESULT (STDMETHODCALLTYPE *Invoke)(
9453 ISpeechObjectTokenCategory *This,
9454 DISPID dispIdMember,
9455 REFIID riid,
9456 LCID lcid,
9457 WORD wFlags,
9458 DISPPARAMS *pDispParams,
9459 VARIANT *pVarResult,
9460 EXCEPINFO *pExcepInfo,
9461 UINT *puArgErr);
9462
9463 /*** ISpeechObjectTokenCategory methods ***/
9464 HRESULT (STDMETHODCALLTYPE *get_Id)(
9465 ISpeechObjectTokenCategory *This,
9466 BSTR *Id);
9467
9468 HRESULT (STDMETHODCALLTYPE *put_Default)(
9469 ISpeechObjectTokenCategory *This,
9470 const BSTR TokenId);
9471
9472 HRESULT (STDMETHODCALLTYPE *get_Default)(
9473 ISpeechObjectTokenCategory *This,
9474 BSTR *TokenId);
9475
9476 HRESULT (STDMETHODCALLTYPE *SetId)(
9477 ISpeechObjectTokenCategory *This,
9478 const BSTR Id,
9479 VARIANT_BOOL CreateIfNotExist);
9480
9481 HRESULT (STDMETHODCALLTYPE *GetDataKey)(
9482 ISpeechObjectTokenCategory *This,
9483 SpeechDataKeyLocation Location,
9484 ISpeechDataKey **DataKey);
9485
9486 HRESULT (STDMETHODCALLTYPE *EnumerateTokens)(
9487 ISpeechObjectTokenCategory *This,
9488 BSTR RequiredAttributes,
9489 BSTR OptionalAttributes,
9490 ISpeechObjectTokens **Tokens);
9491
9492 END_INTERFACE
9493} ISpeechObjectTokenCategoryVtbl;
9494
9495interface ISpeechObjectTokenCategory {
9496 CONST_VTBL ISpeechObjectTokenCategoryVtbl* lpVtbl;
9497};
9498
9499#ifdef COBJMACROS
9500#ifndef WIDL_C_INLINE_WRAPPERS
9501/*** IUnknown methods ***/
9502#define ISpeechObjectTokenCategory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9503#define ISpeechObjectTokenCategory_AddRef(This) (This)->lpVtbl->AddRef(This)
9504#define ISpeechObjectTokenCategory_Release(This) (This)->lpVtbl->Release(This)
9505/*** IDispatch methods ***/
9506#define ISpeechObjectTokenCategory_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
9507#define ISpeechObjectTokenCategory_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
9508#define ISpeechObjectTokenCategory_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
9509#define ISpeechObjectTokenCategory_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
9510/*** ISpeechObjectTokenCategory methods ***/
9511#define ISpeechObjectTokenCategory_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
9512#define ISpeechObjectTokenCategory_put_Default(This,TokenId) (This)->lpVtbl->put_Default(This,TokenId)
9513#define ISpeechObjectTokenCategory_get_Default(This,TokenId) (This)->lpVtbl->get_Default(This,TokenId)
9514#define ISpeechObjectTokenCategory_SetId(This,Id,CreateIfNotExist) (This)->lpVtbl->SetId(This,Id,CreateIfNotExist)
9515#define ISpeechObjectTokenCategory_GetDataKey(This,Location,DataKey) (This)->lpVtbl->GetDataKey(This,Location,DataKey)
9516#define ISpeechObjectTokenCategory_EnumerateTokens(This,RequiredAttributes,OptionalAttributes,Tokens) (This)->lpVtbl->EnumerateTokens(This,RequiredAttributes,OptionalAttributes,Tokens)
9517#else
9518/*** IUnknown methods ***/
9519static inline HRESULT ISpeechObjectTokenCategory_QueryInterface(ISpeechObjectTokenCategory* This,REFIID riid,void **ppvObject) {
9520 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9521}
9522static inline ULONG ISpeechObjectTokenCategory_AddRef(ISpeechObjectTokenCategory* This) {
9523 return This->lpVtbl->AddRef(This);
9524}
9525static inline ULONG ISpeechObjectTokenCategory_Release(ISpeechObjectTokenCategory* This) {
9526 return This->lpVtbl->Release(This);
9527}
9528/*** IDispatch methods ***/
9529static inline HRESULT ISpeechObjectTokenCategory_GetTypeInfoCount(ISpeechObjectTokenCategory* This,UINT *pctinfo) {
9530 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
9531}
9532static inline HRESULT ISpeechObjectTokenCategory_GetTypeInfo(ISpeechObjectTokenCategory* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
9533 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
9534}
9535static inline HRESULT ISpeechObjectTokenCategory_GetIDsOfNames(ISpeechObjectTokenCategory* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
9536 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
9537}
9538static inline HRESULT ISpeechObjectTokenCategory_Invoke(ISpeechObjectTokenCategory* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
9539 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
9540}
9541/*** ISpeechObjectTokenCategory methods ***/
9542static inline HRESULT ISpeechObjectTokenCategory_get_Id(ISpeechObjectTokenCategory* This,BSTR *Id) {
9543 return This->lpVtbl->get_Id(This,Id);
9544}
9545static inline HRESULT ISpeechObjectTokenCategory_put_Default(ISpeechObjectTokenCategory* This,const BSTR TokenId) {
9546 return This->lpVtbl->put_Default(This,TokenId);
9547}
9548static inline HRESULT ISpeechObjectTokenCategory_get_Default(ISpeechObjectTokenCategory* This,BSTR *TokenId) {
9549 return This->lpVtbl->get_Default(This,TokenId);
9550}
9551static inline HRESULT ISpeechObjectTokenCategory_SetId(ISpeechObjectTokenCategory* This,const BSTR Id,VARIANT_BOOL CreateIfNotExist) {
9552 return This->lpVtbl->SetId(This,Id,CreateIfNotExist);
9553}
9554static inline HRESULT ISpeechObjectTokenCategory_GetDataKey(ISpeechObjectTokenCategory* This,SpeechDataKeyLocation Location,ISpeechDataKey **DataKey) {
9555 return This->lpVtbl->GetDataKey(This,Location,DataKey);
9556}
9557static inline HRESULT ISpeechObjectTokenCategory_EnumerateTokens(ISpeechObjectTokenCategory* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **Tokens) {
9558 return This->lpVtbl->EnumerateTokens(This,RequiredAttributes,OptionalAttributes,Tokens);
9559}
9560#endif
9561#endif
9562
9563#endif
9564
9565
9566#endif /* __ISpeechObjectTokenCategory_INTERFACE_DEFINED__ */
9567
9568typedef enum SpeechAudioFormatType {
9569 SAFTDefault = -1,
9570 SAFTNoAssignedFormat = 0,
9571 SAFTText = 1,
9572 SAFTNonStandardFormat = 2,
9573 SAFTExtendedAudioFormat = 3,
9574 SAFT8kHz8BitMono = 4,
9575 SAFT8kHz8BitStereo = 5,
9576 SAFT8kHz16BitMono = 6,
9577 SAFT8kHz16BitStereo = 7,
9578 SAFT11kHz8BitMono = 8,
9579 SAFT11kHz8BitStereo = 9,
9580 SAFT11kHz16BitMono = 10,
9581 SAFT11kHz16BitStereo = 11,
9582 SAFT12kHz8BitMono = 12,
9583 SAFT12kHz8BitStereo = 13,
9584 SAFT12kHz16BitMono = 14,
9585 SAFT12kHz16BitStereo = 15,
9586 SAFT16kHz8BitMono = 16,
9587 SAFT16kHz8BitStereo = 17,
9588 SAFT16kHz16BitMono = 18,
9589 SAFT16kHz16BitStereo = 19,
9590 SAFT22kHz8BitMono = 20,
9591 SAFT22kHz8BitStereo = 21,
9592 SAFT22kHz16BitMono = 22,
9593 SAFT22kHz16BitStereo = 23,
9594 SAFT24kHz8BitMono = 24,
9595 SAFT24kHz8BitStereo = 25,
9596 SAFT24kHz16BitMono = 26,
9597 SAFT24kHz16BitStereo = 27,
9598 SAFT32kHz8BitMono = 28,
9599 SAFT32kHz8BitStereo = 29,
9600 SAFT32kHz16BitMono = 30,
9601 SAFT32kHz16BitStereo = 31,
9602 SAFT44kHz8BitMono = 32,
9603 SAFT44kHz8BitStereo = 33,
9604 SAFT44kHz16BitMono = 34,
9605 SAFT44kHz16BitStereo = 35,
9606 SAFT48kHz8BitMono = 36,
9607 SAFT48kHz8BitStereo = 37,
9608 SAFT48kHz16BitMono = 38,
9609 SAFT48kHz16BitStereo = 39,
9610 SAFTTrueSpeech_8kHz1BitMono = 40,
9611 SAFTCCITT_ALaw_8kHzMono = 41,
9612 SAFTCCITT_ALaw_8kHzStereo = 42,
9613 SAFTCCITT_ALaw_11kHzMono = 43,
9614 SAFTCCITT_ALaw_11kHzStereo = 44,
9615 SAFTCCITT_ALaw_22kHzMono = 45,
9616 SAFTCCITT_ALaw_22kHzStereo = 46,
9617 SAFTCCITT_ALaw_44kHzMono = 47,
9618 SAFTCCITT_ALaw_44kHzStereo = 48,
9619 SAFTCCITT_uLaw_8kHzMono = 49,
9620 SAFTCCITT_uLaw_8kHzStereo = 50,
9621 SAFTCCITT_uLaw_11kHzMono = 51,
9622 SAFTCCITT_uLaw_11kHzStereo = 52,
9623 SAFTCCITT_uLaw_22kHzMono = 53,
9624 SAFTCCITT_uLaw_22kHzStereo = 54,
9625 SAFTCCITT_uLaw_44kHzMono = 55,
9626 SAFTCCITT_uLaw_44kHzStereo = 56,
9627 SAFTADPCM_8kHzMono = 57,
9628 SAFTADPCM_8kHzStereo = 58,
9629 SAFTADPCM_11kHzMono = 59,
9630 SAFTADPCM_11kHzStereo = 60,
9631 SAFTADPCM_22kHzMono = 61,
9632 SAFTADPCM_22kHzStereo = 62,
9633 SAFTADPCM_44kHzMono = 63,
9634 SAFTADPCM_44kHzStereo = 64,
9635 SAFTGSM610_8kHzMono = 65,
9636 SAFTGSM610_11kHzMono = 66,
9637 SAFTGSM610_22kHzMono = 67,
9638 SAFTGSM610_44kHzMono = 68
9639} SpeechAudioFormatType;
9640typedef enum DISPID_SpeechAudioFormat {
9641 DISPID_SAFType = 1,
9642 DISPID_SAFGuid = 2,
9643 DISPID_SAFGetWaveFormatEx = 3,
9644 DISPID_SAFSetWaveFormatEx = 4
9645} DISPID_SpeechAudioFormat;
9646typedef enum DISPID_SpeechBaseStream {
9647 DISPID_SBSFormat = 1,
9648 DISPID_SBSRead = 2,
9649 DISPID_SBSWrite = 3,
9650 DISPID_SBSSeek = 4
9651} DISPID_SpeechBaseStream;
9652typedef enum SpeechStreamSeekPositionType {
9653 SSSPTRelativeToStart = STREAM_SEEK_SET,
9654 SSSPTRelativeToCurrentPosition = STREAM_SEEK_CUR,
9655 SSSPTRelativeToEnd = STREAM_SEEK_END
9656} SpeechStreamSeekPositionType;
9657typedef enum DISPID_SpeechAudio {
9658 DISPID_SAStatus = 200,
9659 DISPID_SABufferInfo = 201,
9660 DISPID_SADefaultFormat = 202,
9661 DISPID_SAVolume = 203,
9662 DISPID_SABufferNotifySize = 204,
9663 DISPID_SAEventHandle = 205,
9664 DISPID_SASetState = 206
9665} DISPID_SpeechAudio;
9666typedef enum SpeechAudioState {
9667 SASClosed = SPAS_CLOSED,
9668 SASStop = SPAS_STOP,
9669 SASPause = SPAS_PAUSE,
9670 SASRun = SPAS_RUN
9671} SpeechAudioState;
9672typedef enum DISPID_SpeechMMSysAudio {
9673 DISPID_SMSADeviceId = 300,
9674 DISPID_SMSALineId = 301,
9675 DISPID_SMSAMMHandle = 302
9676} DISPID_SpeechMMSysAudio;
9677typedef enum DISPID_SpeechFileStream {
9678 DISPID_SFSOpen = 100,
9679 DISPID_SFSClose = 101
9680} DISPID_SpeechFileStream;
9681typedef enum SpeechStreamFileMode {
9682 SSFMOpenForRead = SPFM_OPEN_READONLY,
9683 SSFMOpenReadWrite = SPFM_OPEN_READWRITE,
9684 SSFMCreate = SPFM_CREATE,
9685 SSFMCreateForWrite = SPFM_CREATE_ALWAYS
9686} SpeechStreamFileMode;
9687typedef enum DISPID_SpeechCustomStream {
9688 DISPID_SCSBaseStream = 100
9689} DISPID_SpeechCustomStream;
9690typedef enum DISPID_SpeechMemoryStream {
9691 DISPID_SMSSetData = 100,
9692 DISPID_SMSGetData = 101
9693} DISPID_SpeechMemoryStream;
9694typedef enum DISPID_SpeechAudioStatus {
9695 DISPID_SASFreeBufferSpace = 1,
9696 DISPID_SASNonBlockingIO = 2,
9697 DISPID_SASState = 3,
9698 DISPID_SASCurrentSeekPosition = 4,
9699 DISPID_SASCurrentDevicePosition = 5
9700} DISPID_SpeechAudioStatus;
9701typedef enum DISPID_SpeechAudioBufferInfo {
9702 DISPID_SABIMinNotification = 1,
9703 DISPID_SABIBufferSize = 2,
9704 DISPID_SABIEventBias = 3
9705} DISPID_SpeechAudioBufferInfo;
9706typedef enum DISPID_SpeechWaveFormatEx {
9707 DISPID_SWFEFormatTag = 1,
9708 DISPID_SWFEChannels = 2,
9709 DISPID_SWFESamplesPerSec = 3,
9710 DISPID_SWFEAvgBytesPerSec = 4,
9711 DISPID_SWFEBlockAlign = 5,
9712 DISPID_SWFEBitsPerSample = 6,
9713 DISPID_SWFEExtraData = 7
9714} DISPID_SpeechWaveFormatEx;
9715typedef enum DISPID_SpeechVoice {
9716 DISPID_SVStatus = 1,
9717 DISPID_SVVoice = 2,
9718 DISPID_SVAudioOutput = 3,
9719 DISPID_SVAudioOutputStream = 4,
9720 DISPID_SVRate = 5,
9721 DISPID_SVVolume = 6,
9722 DISPID_SVAllowAudioOuputFormatChangesOnNextSet = 7,
9723 DISPID_SVEventInterests = 8,
9724 DISPID_SVPriority = 9,
9725 DISPID_SVAlertBoundary = 10,
9726 DISPID_SVSyncronousSpeakTimeout = 11,
9727 DISPID_SVSpeak = 12,
9728 DISPID_SVSpeakStream = 13,
9729 DISPID_SVPause = 14,
9730 DISPID_SVResume = 15,
9731 DISPID_SVSkip = 16,
9732 DISPID_SVGetVoices = 17,
9733 DISPID_SVGetAudioOutputs = 18,
9734 DISPID_SVWaitUntilDone = 19,
9735 DISPID_SVSpeakCompleteEvent = 20,
9736 DISPID_SVIsUISupported = 21,
9737 DISPID_SVDisplayUI = 22
9738} DISPID_SpeechVoice;
9739typedef enum SpeechVoicePriority {
9740 SVPNormal = SPVPRI_NORMAL,
9741 SVPAlert = SPVPRI_ALERT,
9742 SVPOver = SPVPRI_OVER
9743} SpeechVoicePriority;
9744typedef enum SpeechVoiceSpeakFlags {
9745 SVSFDefault = SPF_DEFAULT,
9746 SVSFlagsAsync = SPF_ASYNC,
9747 SVSFPurgeBeforeSpeak = SPF_PURGEBEFORESPEAK,
9748 SVSFIsFilename = SPF_IS_FILENAME,
9749 SVSFIsXML = SPF_IS_XML,
9750 SVSFIsNotXML = SPF_IS_NOT_XML,
9751 SVSFPersistXML = SPF_PERSIST_XML,
9752 SVSFNLPSpeakPunc = SPF_NLP_SPEAK_PUNC,
9753 SVSFNLPMask = SPF_NLP_MASK,
9754 SVSFVoiceMask = SPF_VOICE_MASK,
9755 SVSFUnusedFlags = SPF_UNUSED_FLAGS
9756} SpeechVoiceSpeakFlags;
9757typedef enum SpeechVoiceEvents {
9758 SVEStartInputStream = 0x2,
9759 SVEEndInputStream = 0x4,
9760 SVEVoiceChange = 0x8,
9761 SVEBookmark = 0x10,
9762 SVEWordBoundary = 0x20,
9763 SVEPhoneme = 0x40,
9764 SVESentenceBoundary = 0x80,
9765 SVEViseme = 0x100,
9766 SVEAudioLevel = 0x200,
9767 SVEPrivate = 0x8000,
9768 SVEAllEvents = 0x83fe
9769} SpeechVoiceEvents;
9770typedef enum DISPID_SpeechVoiceStatus {
9771 DISPID_SVSCurrentStreamNumber = 1,
9772 DISPID_SVSLastStreamNumberQueued = 2,
9773 DISPID_SVSLastResult = 3,
9774 DISPID_SVSRunningState = 4,
9775 DISPID_SVSInputWordPosition = 5,
9776 DISPID_SVSInputWordLength = 6,
9777 DISPID_SVSInputSentencePosition = 7,
9778 DISPID_SVSInputSentenceLength = 8,
9779 DISPID_SVSLastBookmark = 9,
9780 DISPID_SVSLastBookmarkId = 10,
9781 DISPID_SVSPhonemeId = 11,
9782 DISPID_SVSVisemeId = 12
9783} DISPID_SpeechVoiceStatus;
9784typedef enum SpeechRunState {
9785 SRSEDone = SPRS_DONE,
9786 SRSEIsSpeaking = SPRS_IS_SPEAKING
9787} SpeechRunState;
9788/*****************************************************************************
9789 * ISpeechAudioFormat interface
9790 */
9791#ifndef __ISpeechAudioFormat_INTERFACE_DEFINED__
9792#define __ISpeechAudioFormat_INTERFACE_DEFINED__
9793
9794DEFINE_GUID(IID_ISpeechAudioFormat, 0xe6e9c590, 0x3e18, 0x40e3, 0x82,0x99, 0x06,0x1f,0x98,0xbd,0xe7,0xc7);
9795#if defined(__cplusplus) && !defined(CINTERFACE)
9796MIDL_INTERFACE("e6e9c590-3e18-40e3-8299-061f98bde7c7")
9797ISpeechAudioFormat : public IDispatch
9798{
9799 virtual HRESULT STDMETHODCALLTYPE get_Type(
9800 SpeechAudioFormatType *AudioFormat) = 0;
9801
9802 virtual HRESULT STDMETHODCALLTYPE put_Type(
9803 SpeechAudioFormatType AudioFormat) = 0;
9804
9805 virtual HRESULT STDMETHODCALLTYPE get_Guid(
9806 BSTR *Guid) = 0;
9807
9808 virtual HRESULT STDMETHODCALLTYPE put_Guid(
9809 BSTR Guid) = 0;
9810
9811 virtual HRESULT STDMETHODCALLTYPE GetWaveFormatEx(
9812 ISpeechWaveFormatEx **SpeechWaveFormatEx) = 0;
9813
9814 virtual HRESULT STDMETHODCALLTYPE SetWaveFormatEx(
9815 ISpeechWaveFormatEx *SpeechWaveFormatEx) = 0;
9816
9817};
9818#ifdef __CRT_UUID_DECL
9819__CRT_UUID_DECL(ISpeechAudioFormat, 0xe6e9c590, 0x3e18, 0x40e3, 0x82,0x99, 0x06,0x1f,0x98,0xbd,0xe7,0xc7)
9820#endif
9821#else
9822typedef struct ISpeechAudioFormatVtbl {
9823 BEGIN_INTERFACE
9824
9825 /*** IUnknown methods ***/
9826 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
9827 ISpeechAudioFormat *This,
9828 REFIID riid,
9829 void **ppvObject);
9830
9831 ULONG (STDMETHODCALLTYPE *AddRef)(
9832 ISpeechAudioFormat *This);
9833
9834 ULONG (STDMETHODCALLTYPE *Release)(
9835 ISpeechAudioFormat *This);
9836
9837 /*** IDispatch methods ***/
9838 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
9839 ISpeechAudioFormat *This,
9840 UINT *pctinfo);
9841
9842 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
9843 ISpeechAudioFormat *This,
9844 UINT iTInfo,
9845 LCID lcid,
9846 ITypeInfo **ppTInfo);
9847
9848 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
9849 ISpeechAudioFormat *This,
9850 REFIID riid,
9851 LPOLESTR *rgszNames,
9852 UINT cNames,
9853 LCID lcid,
9854 DISPID *rgDispId);
9855
9856 HRESULT (STDMETHODCALLTYPE *Invoke)(
9857 ISpeechAudioFormat *This,
9858 DISPID dispIdMember,
9859 REFIID riid,
9860 LCID lcid,
9861 WORD wFlags,
9862 DISPPARAMS *pDispParams,
9863 VARIANT *pVarResult,
9864 EXCEPINFO *pExcepInfo,
9865 UINT *puArgErr);
9866
9867 /*** ISpeechAudioFormat methods ***/
9868 HRESULT (STDMETHODCALLTYPE *get_Type)(
9869 ISpeechAudioFormat *This,
9870 SpeechAudioFormatType *AudioFormat);
9871
9872 HRESULT (STDMETHODCALLTYPE *put_Type)(
9873 ISpeechAudioFormat *This,
9874 SpeechAudioFormatType AudioFormat);
9875
9876 HRESULT (STDMETHODCALLTYPE *get_Guid)(
9877 ISpeechAudioFormat *This,
9878 BSTR *Guid);
9879
9880 HRESULT (STDMETHODCALLTYPE *put_Guid)(
9881 ISpeechAudioFormat *This,
9882 BSTR Guid);
9883
9884 HRESULT (STDMETHODCALLTYPE *GetWaveFormatEx)(
9885 ISpeechAudioFormat *This,
9886 ISpeechWaveFormatEx **SpeechWaveFormatEx);
9887
9888 HRESULT (STDMETHODCALLTYPE *SetWaveFormatEx)(
9889 ISpeechAudioFormat *This,
9890 ISpeechWaveFormatEx *SpeechWaveFormatEx);
9891
9892 END_INTERFACE
9893} ISpeechAudioFormatVtbl;
9894
9895interface ISpeechAudioFormat {
9896 CONST_VTBL ISpeechAudioFormatVtbl* lpVtbl;
9897};
9898
9899#ifdef COBJMACROS
9900#ifndef WIDL_C_INLINE_WRAPPERS
9901/*** IUnknown methods ***/
9902#define ISpeechAudioFormat_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9903#define ISpeechAudioFormat_AddRef(This) (This)->lpVtbl->AddRef(This)
9904#define ISpeechAudioFormat_Release(This) (This)->lpVtbl->Release(This)
9905/*** IDispatch methods ***/
9906#define ISpeechAudioFormat_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
9907#define ISpeechAudioFormat_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
9908#define ISpeechAudioFormat_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
9909#define ISpeechAudioFormat_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
9910/*** ISpeechAudioFormat methods ***/
9911#define ISpeechAudioFormat_get_Type(This,AudioFormat) (This)->lpVtbl->get_Type(This,AudioFormat)
9912#define ISpeechAudioFormat_put_Type(This,AudioFormat) (This)->lpVtbl->put_Type(This,AudioFormat)
9913#define ISpeechAudioFormat_get_Guid(This,Guid) (This)->lpVtbl->get_Guid(This,Guid)
9914#define ISpeechAudioFormat_put_Guid(This,Guid) (This)->lpVtbl->put_Guid(This,Guid)
9915#define ISpeechAudioFormat_GetWaveFormatEx(This,SpeechWaveFormatEx) (This)->lpVtbl->GetWaveFormatEx(This,SpeechWaveFormatEx)
9916#define ISpeechAudioFormat_SetWaveFormatEx(This,SpeechWaveFormatEx) (This)->lpVtbl->SetWaveFormatEx(This,SpeechWaveFormatEx)
9917#else
9918/*** IUnknown methods ***/
9919static inline HRESULT ISpeechAudioFormat_QueryInterface(ISpeechAudioFormat* This,REFIID riid,void **ppvObject) {
9920 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9921}
9922static inline ULONG ISpeechAudioFormat_AddRef(ISpeechAudioFormat* This) {
9923 return This->lpVtbl->AddRef(This);
9924}
9925static inline ULONG ISpeechAudioFormat_Release(ISpeechAudioFormat* This) {
9926 return This->lpVtbl->Release(This);
9927}
9928/*** IDispatch methods ***/
9929static inline HRESULT ISpeechAudioFormat_GetTypeInfoCount(ISpeechAudioFormat* This,UINT *pctinfo) {
9930 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
9931}
9932static inline HRESULT ISpeechAudioFormat_GetTypeInfo(ISpeechAudioFormat* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
9933 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
9934}
9935static inline HRESULT ISpeechAudioFormat_GetIDsOfNames(ISpeechAudioFormat* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
9936 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
9937}
9938static inline HRESULT ISpeechAudioFormat_Invoke(ISpeechAudioFormat* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
9939 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
9940}
9941/*** ISpeechAudioFormat methods ***/
9942static inline HRESULT ISpeechAudioFormat_get_Type(ISpeechAudioFormat* This,SpeechAudioFormatType *AudioFormat) {
9943 return This->lpVtbl->get_Type(This,AudioFormat);
9944}
9945static inline HRESULT ISpeechAudioFormat_put_Type(ISpeechAudioFormat* This,SpeechAudioFormatType AudioFormat) {
9946 return This->lpVtbl->put_Type(This,AudioFormat);
9947}
9948static inline HRESULT ISpeechAudioFormat_get_Guid(ISpeechAudioFormat* This,BSTR *Guid) {
9949 return This->lpVtbl->get_Guid(This,Guid);
9950}
9951static inline HRESULT ISpeechAudioFormat_put_Guid(ISpeechAudioFormat* This,BSTR Guid) {
9952 return This->lpVtbl->put_Guid(This,Guid);
9953}
9954static inline HRESULT ISpeechAudioFormat_GetWaveFormatEx(ISpeechAudioFormat* This,ISpeechWaveFormatEx **SpeechWaveFormatEx) {
9955 return This->lpVtbl->GetWaveFormatEx(This,SpeechWaveFormatEx);
9956}
9957static inline HRESULT ISpeechAudioFormat_SetWaveFormatEx(ISpeechAudioFormat* This,ISpeechWaveFormatEx *SpeechWaveFormatEx) {
9958 return This->lpVtbl->SetWaveFormatEx(This,SpeechWaveFormatEx);
9959}
9960#endif
9961#endif
9962
9963#endif
9964
9965
9966#endif /* __ISpeechAudioFormat_INTERFACE_DEFINED__ */
9967
9968/*****************************************************************************
9969 * ISpeechBaseStream interface
9970 */
9971#ifndef __ISpeechBaseStream_INTERFACE_DEFINED__
9972#define __ISpeechBaseStream_INTERFACE_DEFINED__
9973
9974DEFINE_GUID(IID_ISpeechBaseStream, 0x6450336f, 0x7d49, 0x4ced, 0x80,0x97, 0x49,0xd6,0xde,0xe3,0x72,0x94);
9975#if defined(__cplusplus) && !defined(CINTERFACE)
9976MIDL_INTERFACE("6450336f-7d49-4ced-8097-49d6dee37294")
9977ISpeechBaseStream : public IDispatch
9978{
9979 virtual HRESULT STDMETHODCALLTYPE get_Format(
9980 ISpeechAudioFormat **AudioFormat) = 0;
9981
9982 virtual HRESULT STDMETHODCALLTYPE putref_Format(
9983 ISpeechAudioFormat *AudioFormat) = 0;
9984
9985 virtual HRESULT STDMETHODCALLTYPE Read(
9986 VARIANT *Buffer,
9987 LONG NumberOfBytes,
9988 LONG *BytesRead) = 0;
9989
9990 virtual HRESULT STDMETHODCALLTYPE Write(
9991 VARIANT Buffer,
9992 LONG *BytesWritten) = 0;
9993
9994 virtual HRESULT STDMETHODCALLTYPE Seek(
9995 VARIANT Position,
9996 SpeechStreamSeekPositionType Origin,
9997 VARIANT *NewPosition) = 0;
9998
9999};
10000#ifdef __CRT_UUID_DECL
10001__CRT_UUID_DECL(ISpeechBaseStream, 0x6450336f, 0x7d49, 0x4ced, 0x80,0x97, 0x49,0xd6,0xde,0xe3,0x72,0x94)
10002#endif
10003#else
10004typedef struct ISpeechBaseStreamVtbl {
10005 BEGIN_INTERFACE
10006
10007 /*** IUnknown methods ***/
10008 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10009 ISpeechBaseStream *This,
10010 REFIID riid,
10011 void **ppvObject);
10012
10013 ULONG (STDMETHODCALLTYPE *AddRef)(
10014 ISpeechBaseStream *This);
10015
10016 ULONG (STDMETHODCALLTYPE *Release)(
10017 ISpeechBaseStream *This);
10018
10019 /*** IDispatch methods ***/
10020 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10021 ISpeechBaseStream *This,
10022 UINT *pctinfo);
10023
10024 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10025 ISpeechBaseStream *This,
10026 UINT iTInfo,
10027 LCID lcid,
10028 ITypeInfo **ppTInfo);
10029
10030 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10031 ISpeechBaseStream *This,
10032 REFIID riid,
10033 LPOLESTR *rgszNames,
10034 UINT cNames,
10035 LCID lcid,
10036 DISPID *rgDispId);
10037
10038 HRESULT (STDMETHODCALLTYPE *Invoke)(
10039 ISpeechBaseStream *This,
10040 DISPID dispIdMember,
10041 REFIID riid,
10042 LCID lcid,
10043 WORD wFlags,
10044 DISPPARAMS *pDispParams,
10045 VARIANT *pVarResult,
10046 EXCEPINFO *pExcepInfo,
10047 UINT *puArgErr);
10048
10049 /*** ISpeechBaseStream methods ***/
10050 HRESULT (STDMETHODCALLTYPE *get_Format)(
10051 ISpeechBaseStream *This,
10052 ISpeechAudioFormat **AudioFormat);
10053
10054 HRESULT (STDMETHODCALLTYPE *putref_Format)(
10055 ISpeechBaseStream *This,
10056 ISpeechAudioFormat *AudioFormat);
10057
10058 HRESULT (STDMETHODCALLTYPE *Read)(
10059 ISpeechBaseStream *This,
10060 VARIANT *Buffer,
10061 LONG NumberOfBytes,
10062 LONG *BytesRead);
10063
10064 HRESULT (STDMETHODCALLTYPE *Write)(
10065 ISpeechBaseStream *This,
10066 VARIANT Buffer,
10067 LONG *BytesWritten);
10068
10069 HRESULT (STDMETHODCALLTYPE *Seek)(
10070 ISpeechBaseStream *This,
10071 VARIANT Position,
10072 SpeechStreamSeekPositionType Origin,
10073 VARIANT *NewPosition);
10074
10075 END_INTERFACE
10076} ISpeechBaseStreamVtbl;
10077
10078interface ISpeechBaseStream {
10079 CONST_VTBL ISpeechBaseStreamVtbl* lpVtbl;
10080};
10081
10082#ifdef COBJMACROS
10083#ifndef WIDL_C_INLINE_WRAPPERS
10084/*** IUnknown methods ***/
10085#define ISpeechBaseStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10086#define ISpeechBaseStream_AddRef(This) (This)->lpVtbl->AddRef(This)
10087#define ISpeechBaseStream_Release(This) (This)->lpVtbl->Release(This)
10088/*** IDispatch methods ***/
10089#define ISpeechBaseStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
10090#define ISpeechBaseStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
10091#define ISpeechBaseStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
10092#define ISpeechBaseStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
10093/*** ISpeechBaseStream methods ***/
10094#define ISpeechBaseStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
10095#define ISpeechBaseStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
10096#define ISpeechBaseStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
10097#define ISpeechBaseStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
10098#define ISpeechBaseStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
10099#else
10100/*** IUnknown methods ***/
10101static inline HRESULT ISpeechBaseStream_QueryInterface(ISpeechBaseStream* This,REFIID riid,void **ppvObject) {
10102 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10103}
10104static inline ULONG ISpeechBaseStream_AddRef(ISpeechBaseStream* This) {
10105 return This->lpVtbl->AddRef(This);
10106}
10107static inline ULONG ISpeechBaseStream_Release(ISpeechBaseStream* This) {
10108 return This->lpVtbl->Release(This);
10109}
10110/*** IDispatch methods ***/
10111static inline HRESULT ISpeechBaseStream_GetTypeInfoCount(ISpeechBaseStream* This,UINT *pctinfo) {
10112 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
10113}
10114static inline HRESULT ISpeechBaseStream_GetTypeInfo(ISpeechBaseStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
10115 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
10116}
10117static inline HRESULT ISpeechBaseStream_GetIDsOfNames(ISpeechBaseStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
10118 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
10119}
10120static inline HRESULT ISpeechBaseStream_Invoke(ISpeechBaseStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
10121 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
10122}
10123/*** ISpeechBaseStream methods ***/
10124static inline HRESULT ISpeechBaseStream_get_Format(ISpeechBaseStream* This,ISpeechAudioFormat **AudioFormat) {
10125 return This->lpVtbl->get_Format(This,AudioFormat);
10126}
10127static inline HRESULT ISpeechBaseStream_putref_Format(ISpeechBaseStream* This,ISpeechAudioFormat *AudioFormat) {
10128 return This->lpVtbl->putref_Format(This,AudioFormat);
10129}
10130static inline HRESULT ISpeechBaseStream_Read(ISpeechBaseStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
10131 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
10132}
10133static inline HRESULT ISpeechBaseStream_Write(ISpeechBaseStream* This,VARIANT Buffer,LONG *BytesWritten) {
10134 return This->lpVtbl->Write(This,Buffer,BytesWritten);
10135}
10136static inline HRESULT ISpeechBaseStream_Seek(ISpeechBaseStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
10137 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
10138}
10139#endif
10140#endif
10141
10142#endif
10143
10144
10145#endif /* __ISpeechBaseStream_INTERFACE_DEFINED__ */
10146
10147/*****************************************************************************
10148 * ISpeechAudio interface
10149 */
10150#ifndef __ISpeechAudio_INTERFACE_DEFINED__
10151#define __ISpeechAudio_INTERFACE_DEFINED__
10152
10153DEFINE_GUID(IID_ISpeechAudio, 0xcff8e175, 0x019e, 0x11d3, 0xa0,0x8e, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5);
10154#if defined(__cplusplus) && !defined(CINTERFACE)
10155MIDL_INTERFACE("cff8e175-019e-11d3-a08e-00c04f8ef9b5")
10156ISpeechAudio : public ISpeechBaseStream
10157{
10158 virtual HRESULT STDMETHODCALLTYPE get_Status(
10159 ISpeechAudioStatus **Status) = 0;
10160
10161 virtual HRESULT STDMETHODCALLTYPE get_BufferInfo(
10162 ISpeechAudioBufferInfo **BufferInfo) = 0;
10163
10164 virtual HRESULT STDMETHODCALLTYPE get_DefaultFormat(
10165 ISpeechAudioFormat **StreamFormat) = 0;
10166
10167 virtual HRESULT STDMETHODCALLTYPE get_Volume(
10168 LONG *Volume) = 0;
10169
10170 virtual HRESULT STDMETHODCALLTYPE put_Volume(
10171 LONG Volume) = 0;
10172
10173 virtual HRESULT STDMETHODCALLTYPE get_BufferNotifySize(
10174 LONG *BufferNotifySize) = 0;
10175
10176 virtual HRESULT STDMETHODCALLTYPE put_BufferNotifySize(
10177 LONG BufferNotifySize) = 0;
10178
10179 virtual HRESULT STDMETHODCALLTYPE get_EventHandle(
10180 LONG *EventHandle) = 0;
10181
10182 virtual HRESULT STDMETHODCALLTYPE SetState(
10183 SpeechAudioState State) = 0;
10184
10185};
10186#ifdef __CRT_UUID_DECL
10187__CRT_UUID_DECL(ISpeechAudio, 0xcff8e175, 0x019e, 0x11d3, 0xa0,0x8e, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5)
10188#endif
10189#else
10190typedef struct ISpeechAudioVtbl {
10191 BEGIN_INTERFACE
10192
10193 /*** IUnknown methods ***/
10194 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10195 ISpeechAudio *This,
10196 REFIID riid,
10197 void **ppvObject);
10198
10199 ULONG (STDMETHODCALLTYPE *AddRef)(
10200 ISpeechAudio *This);
10201
10202 ULONG (STDMETHODCALLTYPE *Release)(
10203 ISpeechAudio *This);
10204
10205 /*** IDispatch methods ***/
10206 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10207 ISpeechAudio *This,
10208 UINT *pctinfo);
10209
10210 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10211 ISpeechAudio *This,
10212 UINT iTInfo,
10213 LCID lcid,
10214 ITypeInfo **ppTInfo);
10215
10216 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10217 ISpeechAudio *This,
10218 REFIID riid,
10219 LPOLESTR *rgszNames,
10220 UINT cNames,
10221 LCID lcid,
10222 DISPID *rgDispId);
10223
10224 HRESULT (STDMETHODCALLTYPE *Invoke)(
10225 ISpeechAudio *This,
10226 DISPID dispIdMember,
10227 REFIID riid,
10228 LCID lcid,
10229 WORD wFlags,
10230 DISPPARAMS *pDispParams,
10231 VARIANT *pVarResult,
10232 EXCEPINFO *pExcepInfo,
10233 UINT *puArgErr);
10234
10235 /*** ISpeechBaseStream methods ***/
10236 HRESULT (STDMETHODCALLTYPE *get_Format)(
10237 ISpeechAudio *This,
10238 ISpeechAudioFormat **AudioFormat);
10239
10240 HRESULT (STDMETHODCALLTYPE *putref_Format)(
10241 ISpeechAudio *This,
10242 ISpeechAudioFormat *AudioFormat);
10243
10244 HRESULT (STDMETHODCALLTYPE *Read)(
10245 ISpeechAudio *This,
10246 VARIANT *Buffer,
10247 LONG NumberOfBytes,
10248 LONG *BytesRead);
10249
10250 HRESULT (STDMETHODCALLTYPE *Write)(
10251 ISpeechAudio *This,
10252 VARIANT Buffer,
10253 LONG *BytesWritten);
10254
10255 HRESULT (STDMETHODCALLTYPE *Seek)(
10256 ISpeechAudio *This,
10257 VARIANT Position,
10258 SpeechStreamSeekPositionType Origin,
10259 VARIANT *NewPosition);
10260
10261 /*** ISpeechAudio methods ***/
10262 HRESULT (STDMETHODCALLTYPE *get_Status)(
10263 ISpeechAudio *This,
10264 ISpeechAudioStatus **Status);
10265
10266 HRESULT (STDMETHODCALLTYPE *get_BufferInfo)(
10267 ISpeechAudio *This,
10268 ISpeechAudioBufferInfo **BufferInfo);
10269
10270 HRESULT (STDMETHODCALLTYPE *get_DefaultFormat)(
10271 ISpeechAudio *This,
10272 ISpeechAudioFormat **StreamFormat);
10273
10274 HRESULT (STDMETHODCALLTYPE *get_Volume)(
10275 ISpeechAudio *This,
10276 LONG *Volume);
10277
10278 HRESULT (STDMETHODCALLTYPE *put_Volume)(
10279 ISpeechAudio *This,
10280 LONG Volume);
10281
10282 HRESULT (STDMETHODCALLTYPE *get_BufferNotifySize)(
10283 ISpeechAudio *This,
10284 LONG *BufferNotifySize);
10285
10286 HRESULT (STDMETHODCALLTYPE *put_BufferNotifySize)(
10287 ISpeechAudio *This,
10288 LONG BufferNotifySize);
10289
10290 HRESULT (STDMETHODCALLTYPE *get_EventHandle)(
10291 ISpeechAudio *This,
10292 LONG *EventHandle);
10293
10294 HRESULT (STDMETHODCALLTYPE *SetState)(
10295 ISpeechAudio *This,
10296 SpeechAudioState State);
10297
10298 END_INTERFACE
10299} ISpeechAudioVtbl;
10300
10301interface ISpeechAudio {
10302 CONST_VTBL ISpeechAudioVtbl* lpVtbl;
10303};
10304
10305#ifdef COBJMACROS
10306#ifndef WIDL_C_INLINE_WRAPPERS
10307/*** IUnknown methods ***/
10308#define ISpeechAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10309#define ISpeechAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
10310#define ISpeechAudio_Release(This) (This)->lpVtbl->Release(This)
10311/*** IDispatch methods ***/
10312#define ISpeechAudio_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
10313#define ISpeechAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
10314#define ISpeechAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
10315#define ISpeechAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
10316/*** ISpeechBaseStream methods ***/
10317#define ISpeechAudio_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
10318#define ISpeechAudio_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
10319#define ISpeechAudio_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
10320#define ISpeechAudio_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
10321#define ISpeechAudio_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
10322/*** ISpeechAudio methods ***/
10323#define ISpeechAudio_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
10324#define ISpeechAudio_get_BufferInfo(This,BufferInfo) (This)->lpVtbl->get_BufferInfo(This,BufferInfo)
10325#define ISpeechAudio_get_DefaultFormat(This,StreamFormat) (This)->lpVtbl->get_DefaultFormat(This,StreamFormat)
10326#define ISpeechAudio_get_Volume(This,Volume) (This)->lpVtbl->get_Volume(This,Volume)
10327#define ISpeechAudio_put_Volume(This,Volume) (This)->lpVtbl->put_Volume(This,Volume)
10328#define ISpeechAudio_get_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->get_BufferNotifySize(This,BufferNotifySize)
10329#define ISpeechAudio_put_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->put_BufferNotifySize(This,BufferNotifySize)
10330#define ISpeechAudio_get_EventHandle(This,EventHandle) (This)->lpVtbl->get_EventHandle(This,EventHandle)
10331#define ISpeechAudio_SetState(This,State) (This)->lpVtbl->SetState(This,State)
10332#else
10333/*** IUnknown methods ***/
10334static inline HRESULT ISpeechAudio_QueryInterface(ISpeechAudio* This,REFIID riid,void **ppvObject) {
10335 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10336}
10337static inline ULONG ISpeechAudio_AddRef(ISpeechAudio* This) {
10338 return This->lpVtbl->AddRef(This);
10339}
10340static inline ULONG ISpeechAudio_Release(ISpeechAudio* This) {
10341 return This->lpVtbl->Release(This);
10342}
10343/*** IDispatch methods ***/
10344static inline HRESULT ISpeechAudio_GetTypeInfoCount(ISpeechAudio* This,UINT *pctinfo) {
10345 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
10346}
10347static inline HRESULT ISpeechAudio_GetTypeInfo(ISpeechAudio* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
10348 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
10349}
10350static inline HRESULT ISpeechAudio_GetIDsOfNames(ISpeechAudio* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
10351 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
10352}
10353static inline HRESULT ISpeechAudio_Invoke(ISpeechAudio* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
10354 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
10355}
10356/*** ISpeechBaseStream methods ***/
10357static inline HRESULT ISpeechAudio_get_Format(ISpeechAudio* This,ISpeechAudioFormat **AudioFormat) {
10358 return This->lpVtbl->get_Format(This,AudioFormat);
10359}
10360static inline HRESULT ISpeechAudio_putref_Format(ISpeechAudio* This,ISpeechAudioFormat *AudioFormat) {
10361 return This->lpVtbl->putref_Format(This,AudioFormat);
10362}
10363static inline HRESULT ISpeechAudio_Read(ISpeechAudio* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
10364 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
10365}
10366static inline HRESULT ISpeechAudio_Write(ISpeechAudio* This,VARIANT Buffer,LONG *BytesWritten) {
10367 return This->lpVtbl->Write(This,Buffer,BytesWritten);
10368}
10369static inline HRESULT ISpeechAudio_Seek(ISpeechAudio* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
10370 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
10371}
10372/*** ISpeechAudio methods ***/
10373static inline HRESULT ISpeechAudio_get_Status(ISpeechAudio* This,ISpeechAudioStatus **Status) {
10374 return This->lpVtbl->get_Status(This,Status);
10375}
10376static inline HRESULT ISpeechAudio_get_BufferInfo(ISpeechAudio* This,ISpeechAudioBufferInfo **BufferInfo) {
10377 return This->lpVtbl->get_BufferInfo(This,BufferInfo);
10378}
10379static inline HRESULT ISpeechAudio_get_DefaultFormat(ISpeechAudio* This,ISpeechAudioFormat **StreamFormat) {
10380 return This->lpVtbl->get_DefaultFormat(This,StreamFormat);
10381}
10382static inline HRESULT ISpeechAudio_get_Volume(ISpeechAudio* This,LONG *Volume) {
10383 return This->lpVtbl->get_Volume(This,Volume);
10384}
10385static inline HRESULT ISpeechAudio_put_Volume(ISpeechAudio* This,LONG Volume) {
10386 return This->lpVtbl->put_Volume(This,Volume);
10387}
10388static inline HRESULT ISpeechAudio_get_BufferNotifySize(ISpeechAudio* This,LONG *BufferNotifySize) {
10389 return This->lpVtbl->get_BufferNotifySize(This,BufferNotifySize);
10390}
10391static inline HRESULT ISpeechAudio_put_BufferNotifySize(ISpeechAudio* This,LONG BufferNotifySize) {
10392 return This->lpVtbl->put_BufferNotifySize(This,BufferNotifySize);
10393}
10394static inline HRESULT ISpeechAudio_get_EventHandle(ISpeechAudio* This,LONG *EventHandle) {
10395 return This->lpVtbl->get_EventHandle(This,EventHandle);
10396}
10397static inline HRESULT ISpeechAudio_SetState(ISpeechAudio* This,SpeechAudioState State) {
10398 return This->lpVtbl->SetState(This,State);
10399}
10400#endif
10401#endif
10402
10403#endif
10404
10405
10406#endif /* __ISpeechAudio_INTERFACE_DEFINED__ */
10407
10408/*****************************************************************************
10409 * ISpeechMMSysAudio interface
10410 */
10411#ifndef __ISpeechMMSysAudio_INTERFACE_DEFINED__
10412#define __ISpeechMMSysAudio_INTERFACE_DEFINED__
10413
10414DEFINE_GUID(IID_ISpeechMMSysAudio, 0x3c76af6d, 0x1fd7, 0x4831, 0x81,0xd1, 0x3b,0x71,0xd5,0xa1,0x3c,0x44);
10415#if defined(__cplusplus) && !defined(CINTERFACE)
10416MIDL_INTERFACE("3c76af6d-1fd7-4831-81d1-3b71d5a13c44")
10417ISpeechMMSysAudio : public ISpeechAudio
10418{
10419 virtual HRESULT STDMETHODCALLTYPE get_DeviceId(
10420 LONG *DeviceId) = 0;
10421
10422 virtual HRESULT STDMETHODCALLTYPE put_DeviceId(
10423 LONG DeviceId) = 0;
10424
10425 virtual HRESULT STDMETHODCALLTYPE get_LineId(
10426 LONG *LineId) = 0;
10427
10428 virtual HRESULT STDMETHODCALLTYPE put_LineId(
10429 LONG LineId) = 0;
10430
10431 virtual HRESULT STDMETHODCALLTYPE get_MMHandle(
10432 LONG *Handle) = 0;
10433
10434};
10435#ifdef __CRT_UUID_DECL
10436__CRT_UUID_DECL(ISpeechMMSysAudio, 0x3c76af6d, 0x1fd7, 0x4831, 0x81,0xd1, 0x3b,0x71,0xd5,0xa1,0x3c,0x44)
10437#endif
10438#else
10439typedef struct ISpeechMMSysAudioVtbl {
10440 BEGIN_INTERFACE
10441
10442 /*** IUnknown methods ***/
10443 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10444 ISpeechMMSysAudio *This,
10445 REFIID riid,
10446 void **ppvObject);
10447
10448 ULONG (STDMETHODCALLTYPE *AddRef)(
10449 ISpeechMMSysAudio *This);
10450
10451 ULONG (STDMETHODCALLTYPE *Release)(
10452 ISpeechMMSysAudio *This);
10453
10454 /*** IDispatch methods ***/
10455 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10456 ISpeechMMSysAudio *This,
10457 UINT *pctinfo);
10458
10459 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10460 ISpeechMMSysAudio *This,
10461 UINT iTInfo,
10462 LCID lcid,
10463 ITypeInfo **ppTInfo);
10464
10465 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10466 ISpeechMMSysAudio *This,
10467 REFIID riid,
10468 LPOLESTR *rgszNames,
10469 UINT cNames,
10470 LCID lcid,
10471 DISPID *rgDispId);
10472
10473 HRESULT (STDMETHODCALLTYPE *Invoke)(
10474 ISpeechMMSysAudio *This,
10475 DISPID dispIdMember,
10476 REFIID riid,
10477 LCID lcid,
10478 WORD wFlags,
10479 DISPPARAMS *pDispParams,
10480 VARIANT *pVarResult,
10481 EXCEPINFO *pExcepInfo,
10482 UINT *puArgErr);
10483
10484 /*** ISpeechBaseStream methods ***/
10485 HRESULT (STDMETHODCALLTYPE *get_Format)(
10486 ISpeechMMSysAudio *This,
10487 ISpeechAudioFormat **AudioFormat);
10488
10489 HRESULT (STDMETHODCALLTYPE *putref_Format)(
10490 ISpeechMMSysAudio *This,
10491 ISpeechAudioFormat *AudioFormat);
10492
10493 HRESULT (STDMETHODCALLTYPE *Read)(
10494 ISpeechMMSysAudio *This,
10495 VARIANT *Buffer,
10496 LONG NumberOfBytes,
10497 LONG *BytesRead);
10498
10499 HRESULT (STDMETHODCALLTYPE *Write)(
10500 ISpeechMMSysAudio *This,
10501 VARIANT Buffer,
10502 LONG *BytesWritten);
10503
10504 HRESULT (STDMETHODCALLTYPE *Seek)(
10505 ISpeechMMSysAudio *This,
10506 VARIANT Position,
10507 SpeechStreamSeekPositionType Origin,
10508 VARIANT *NewPosition);
10509
10510 /*** ISpeechAudio methods ***/
10511 HRESULT (STDMETHODCALLTYPE *get_Status)(
10512 ISpeechMMSysAudio *This,
10513 ISpeechAudioStatus **Status);
10514
10515 HRESULT (STDMETHODCALLTYPE *get_BufferInfo)(
10516 ISpeechMMSysAudio *This,
10517 ISpeechAudioBufferInfo **BufferInfo);
10518
10519 HRESULT (STDMETHODCALLTYPE *get_DefaultFormat)(
10520 ISpeechMMSysAudio *This,
10521 ISpeechAudioFormat **StreamFormat);
10522
10523 HRESULT (STDMETHODCALLTYPE *get_Volume)(
10524 ISpeechMMSysAudio *This,
10525 LONG *Volume);
10526
10527 HRESULT (STDMETHODCALLTYPE *put_Volume)(
10528 ISpeechMMSysAudio *This,
10529 LONG Volume);
10530
10531 HRESULT (STDMETHODCALLTYPE *get_BufferNotifySize)(
10532 ISpeechMMSysAudio *This,
10533 LONG *BufferNotifySize);
10534
10535 HRESULT (STDMETHODCALLTYPE *put_BufferNotifySize)(
10536 ISpeechMMSysAudio *This,
10537 LONG BufferNotifySize);
10538
10539 HRESULT (STDMETHODCALLTYPE *get_EventHandle)(
10540 ISpeechMMSysAudio *This,
10541 LONG *EventHandle);
10542
10543 HRESULT (STDMETHODCALLTYPE *SetState)(
10544 ISpeechMMSysAudio *This,
10545 SpeechAudioState State);
10546
10547 /*** ISpeechMMSysAudio methods ***/
10548 HRESULT (STDMETHODCALLTYPE *get_DeviceId)(
10549 ISpeechMMSysAudio *This,
10550 LONG *DeviceId);
10551
10552 HRESULT (STDMETHODCALLTYPE *put_DeviceId)(
10553 ISpeechMMSysAudio *This,
10554 LONG DeviceId);
10555
10556 HRESULT (STDMETHODCALLTYPE *get_LineId)(
10557 ISpeechMMSysAudio *This,
10558 LONG *LineId);
10559
10560 HRESULT (STDMETHODCALLTYPE *put_LineId)(
10561 ISpeechMMSysAudio *This,
10562 LONG LineId);
10563
10564 HRESULT (STDMETHODCALLTYPE *get_MMHandle)(
10565 ISpeechMMSysAudio *This,
10566 LONG *Handle);
10567
10568 END_INTERFACE
10569} ISpeechMMSysAudioVtbl;
10570
10571interface ISpeechMMSysAudio {
10572 CONST_VTBL ISpeechMMSysAudioVtbl* lpVtbl;
10573};
10574
10575#ifdef COBJMACROS
10576#ifndef WIDL_C_INLINE_WRAPPERS
10577/*** IUnknown methods ***/
10578#define ISpeechMMSysAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10579#define ISpeechMMSysAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
10580#define ISpeechMMSysAudio_Release(This) (This)->lpVtbl->Release(This)
10581/*** IDispatch methods ***/
10582#define ISpeechMMSysAudio_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
10583#define ISpeechMMSysAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
10584#define ISpeechMMSysAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
10585#define ISpeechMMSysAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
10586/*** ISpeechBaseStream methods ***/
10587#define ISpeechMMSysAudio_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
10588#define ISpeechMMSysAudio_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
10589#define ISpeechMMSysAudio_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
10590#define ISpeechMMSysAudio_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
10591#define ISpeechMMSysAudio_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
10592/*** ISpeechAudio methods ***/
10593#define ISpeechMMSysAudio_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
10594#define ISpeechMMSysAudio_get_BufferInfo(This,BufferInfo) (This)->lpVtbl->get_BufferInfo(This,BufferInfo)
10595#define ISpeechMMSysAudio_get_DefaultFormat(This,StreamFormat) (This)->lpVtbl->get_DefaultFormat(This,StreamFormat)
10596#define ISpeechMMSysAudio_get_Volume(This,Volume) (This)->lpVtbl->get_Volume(This,Volume)
10597#define ISpeechMMSysAudio_put_Volume(This,Volume) (This)->lpVtbl->put_Volume(This,Volume)
10598#define ISpeechMMSysAudio_get_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->get_BufferNotifySize(This,BufferNotifySize)
10599#define ISpeechMMSysAudio_put_BufferNotifySize(This,BufferNotifySize) (This)->lpVtbl->put_BufferNotifySize(This,BufferNotifySize)
10600#define ISpeechMMSysAudio_get_EventHandle(This,EventHandle) (This)->lpVtbl->get_EventHandle(This,EventHandle)
10601#define ISpeechMMSysAudio_SetState(This,State) (This)->lpVtbl->SetState(This,State)
10602/*** ISpeechMMSysAudio methods ***/
10603#define ISpeechMMSysAudio_get_DeviceId(This,DeviceId) (This)->lpVtbl->get_DeviceId(This,DeviceId)
10604#define ISpeechMMSysAudio_put_DeviceId(This,DeviceId) (This)->lpVtbl->put_DeviceId(This,DeviceId)
10605#define ISpeechMMSysAudio_get_LineId(This,LineId) (This)->lpVtbl->get_LineId(This,LineId)
10606#define ISpeechMMSysAudio_put_LineId(This,LineId) (This)->lpVtbl->put_LineId(This,LineId)
10607#define ISpeechMMSysAudio_get_MMHandle(This,Handle) (This)->lpVtbl->get_MMHandle(This,Handle)
10608#else
10609/*** IUnknown methods ***/
10610static inline HRESULT ISpeechMMSysAudio_QueryInterface(ISpeechMMSysAudio* This,REFIID riid,void **ppvObject) {
10611 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10612}
10613static inline ULONG ISpeechMMSysAudio_AddRef(ISpeechMMSysAudio* This) {
10614 return This->lpVtbl->AddRef(This);
10615}
10616static inline ULONG ISpeechMMSysAudio_Release(ISpeechMMSysAudio* This) {
10617 return This->lpVtbl->Release(This);
10618}
10619/*** IDispatch methods ***/
10620static inline HRESULT ISpeechMMSysAudio_GetTypeInfoCount(ISpeechMMSysAudio* This,UINT *pctinfo) {
10621 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
10622}
10623static inline HRESULT ISpeechMMSysAudio_GetTypeInfo(ISpeechMMSysAudio* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
10624 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
10625}
10626static inline HRESULT ISpeechMMSysAudio_GetIDsOfNames(ISpeechMMSysAudio* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
10627 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
10628}
10629static inline HRESULT ISpeechMMSysAudio_Invoke(ISpeechMMSysAudio* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
10630 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
10631}
10632/*** ISpeechBaseStream methods ***/
10633static inline HRESULT ISpeechMMSysAudio_get_Format(ISpeechMMSysAudio* This,ISpeechAudioFormat **AudioFormat) {
10634 return This->lpVtbl->get_Format(This,AudioFormat);
10635}
10636static inline HRESULT ISpeechMMSysAudio_putref_Format(ISpeechMMSysAudio* This,ISpeechAudioFormat *AudioFormat) {
10637 return This->lpVtbl->putref_Format(This,AudioFormat);
10638}
10639static inline HRESULT ISpeechMMSysAudio_Read(ISpeechMMSysAudio* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
10640 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
10641}
10642static inline HRESULT ISpeechMMSysAudio_Write(ISpeechMMSysAudio* This,VARIANT Buffer,LONG *BytesWritten) {
10643 return This->lpVtbl->Write(This,Buffer,BytesWritten);
10644}
10645static inline HRESULT ISpeechMMSysAudio_Seek(ISpeechMMSysAudio* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
10646 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
10647}
10648/*** ISpeechAudio methods ***/
10649static inline HRESULT ISpeechMMSysAudio_get_Status(ISpeechMMSysAudio* This,ISpeechAudioStatus **Status) {
10650 return This->lpVtbl->get_Status(This,Status);
10651}
10652static inline HRESULT ISpeechMMSysAudio_get_BufferInfo(ISpeechMMSysAudio* This,ISpeechAudioBufferInfo **BufferInfo) {
10653 return This->lpVtbl->get_BufferInfo(This,BufferInfo);
10654}
10655static inline HRESULT ISpeechMMSysAudio_get_DefaultFormat(ISpeechMMSysAudio* This,ISpeechAudioFormat **StreamFormat) {
10656 return This->lpVtbl->get_DefaultFormat(This,StreamFormat);
10657}
10658static inline HRESULT ISpeechMMSysAudio_get_Volume(ISpeechMMSysAudio* This,LONG *Volume) {
10659 return This->lpVtbl->get_Volume(This,Volume);
10660}
10661static inline HRESULT ISpeechMMSysAudio_put_Volume(ISpeechMMSysAudio* This,LONG Volume) {
10662 return This->lpVtbl->put_Volume(This,Volume);
10663}
10664static inline HRESULT ISpeechMMSysAudio_get_BufferNotifySize(ISpeechMMSysAudio* This,LONG *BufferNotifySize) {
10665 return This->lpVtbl->get_BufferNotifySize(This,BufferNotifySize);
10666}
10667static inline HRESULT ISpeechMMSysAudio_put_BufferNotifySize(ISpeechMMSysAudio* This,LONG BufferNotifySize) {
10668 return This->lpVtbl->put_BufferNotifySize(This,BufferNotifySize);
10669}
10670static inline HRESULT ISpeechMMSysAudio_get_EventHandle(ISpeechMMSysAudio* This,LONG *EventHandle) {
10671 return This->lpVtbl->get_EventHandle(This,EventHandle);
10672}
10673static inline HRESULT ISpeechMMSysAudio_SetState(ISpeechMMSysAudio* This,SpeechAudioState State) {
10674 return This->lpVtbl->SetState(This,State);
10675}
10676/*** ISpeechMMSysAudio methods ***/
10677static inline HRESULT ISpeechMMSysAudio_get_DeviceId(ISpeechMMSysAudio* This,LONG *DeviceId) {
10678 return This->lpVtbl->get_DeviceId(This,DeviceId);
10679}
10680static inline HRESULT ISpeechMMSysAudio_put_DeviceId(ISpeechMMSysAudio* This,LONG DeviceId) {
10681 return This->lpVtbl->put_DeviceId(This,DeviceId);
10682}
10683static inline HRESULT ISpeechMMSysAudio_get_LineId(ISpeechMMSysAudio* This,LONG *LineId) {
10684 return This->lpVtbl->get_LineId(This,LineId);
10685}
10686static inline HRESULT ISpeechMMSysAudio_put_LineId(ISpeechMMSysAudio* This,LONG LineId) {
10687 return This->lpVtbl->put_LineId(This,LineId);
10688}
10689static inline HRESULT ISpeechMMSysAudio_get_MMHandle(ISpeechMMSysAudio* This,LONG *Handle) {
10690 return This->lpVtbl->get_MMHandle(This,Handle);
10691}
10692#endif
10693#endif
10694
10695#endif
10696
10697
10698#endif /* __ISpeechMMSysAudio_INTERFACE_DEFINED__ */
10699
10700/*****************************************************************************
10701 * ISpeechFileStream interface
10702 */
10703#ifndef __ISpeechFileStream_INTERFACE_DEFINED__
10704#define __ISpeechFileStream_INTERFACE_DEFINED__
10705
10706DEFINE_GUID(IID_ISpeechFileStream, 0xaf67f125, 0xab39, 0x4e93, 0xb4,0xa2, 0xcc,0x2e,0x66,0xe1,0x82,0xa7);
10707#if defined(__cplusplus) && !defined(CINTERFACE)
10708MIDL_INTERFACE("af67f125-ab39-4e93-b4a2-cc2e66e182a7")
10709ISpeechFileStream : public ISpeechBaseStream
10710{
10711 virtual HRESULT STDMETHODCALLTYPE Open(
10712 BSTR FileName,
10713 SpeechStreamFileMode FileMode = SSFMOpenForRead,
10714 VARIANT_BOOL DoEvents = 0) = 0;
10715
10716 virtual HRESULT STDMETHODCALLTYPE Close(
10717 ) = 0;
10718
10719};
10720#ifdef __CRT_UUID_DECL
10721__CRT_UUID_DECL(ISpeechFileStream, 0xaf67f125, 0xab39, 0x4e93, 0xb4,0xa2, 0xcc,0x2e,0x66,0xe1,0x82,0xa7)
10722#endif
10723#else
10724typedef struct ISpeechFileStreamVtbl {
10725 BEGIN_INTERFACE
10726
10727 /*** IUnknown methods ***/
10728 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10729 ISpeechFileStream *This,
10730 REFIID riid,
10731 void **ppvObject);
10732
10733 ULONG (STDMETHODCALLTYPE *AddRef)(
10734 ISpeechFileStream *This);
10735
10736 ULONG (STDMETHODCALLTYPE *Release)(
10737 ISpeechFileStream *This);
10738
10739 /*** IDispatch methods ***/
10740 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10741 ISpeechFileStream *This,
10742 UINT *pctinfo);
10743
10744 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10745 ISpeechFileStream *This,
10746 UINT iTInfo,
10747 LCID lcid,
10748 ITypeInfo **ppTInfo);
10749
10750 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10751 ISpeechFileStream *This,
10752 REFIID riid,
10753 LPOLESTR *rgszNames,
10754 UINT cNames,
10755 LCID lcid,
10756 DISPID *rgDispId);
10757
10758 HRESULT (STDMETHODCALLTYPE *Invoke)(
10759 ISpeechFileStream *This,
10760 DISPID dispIdMember,
10761 REFIID riid,
10762 LCID lcid,
10763 WORD wFlags,
10764 DISPPARAMS *pDispParams,
10765 VARIANT *pVarResult,
10766 EXCEPINFO *pExcepInfo,
10767 UINT *puArgErr);
10768
10769 /*** ISpeechBaseStream methods ***/
10770 HRESULT (STDMETHODCALLTYPE *get_Format)(
10771 ISpeechFileStream *This,
10772 ISpeechAudioFormat **AudioFormat);
10773
10774 HRESULT (STDMETHODCALLTYPE *putref_Format)(
10775 ISpeechFileStream *This,
10776 ISpeechAudioFormat *AudioFormat);
10777
10778 HRESULT (STDMETHODCALLTYPE *Read)(
10779 ISpeechFileStream *This,
10780 VARIANT *Buffer,
10781 LONG NumberOfBytes,
10782 LONG *BytesRead);
10783
10784 HRESULT (STDMETHODCALLTYPE *Write)(
10785 ISpeechFileStream *This,
10786 VARIANT Buffer,
10787 LONG *BytesWritten);
10788
10789 HRESULT (STDMETHODCALLTYPE *Seek)(
10790 ISpeechFileStream *This,
10791 VARIANT Position,
10792 SpeechStreamSeekPositionType Origin,
10793 VARIANT *NewPosition);
10794
10795 /*** ISpeechFileStream methods ***/
10796 HRESULT (STDMETHODCALLTYPE *Open)(
10797 ISpeechFileStream *This,
10798 BSTR FileName,
10799 SpeechStreamFileMode FileMode,
10800 VARIANT_BOOL DoEvents);
10801
10802 HRESULT (STDMETHODCALLTYPE *Close)(
10803 ISpeechFileStream *This);
10804
10805 END_INTERFACE
10806} ISpeechFileStreamVtbl;
10807
10808interface ISpeechFileStream {
10809 CONST_VTBL ISpeechFileStreamVtbl* lpVtbl;
10810};
10811
10812#ifdef COBJMACROS
10813#ifndef WIDL_C_INLINE_WRAPPERS
10814/*** IUnknown methods ***/
10815#define ISpeechFileStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10816#define ISpeechFileStream_AddRef(This) (This)->lpVtbl->AddRef(This)
10817#define ISpeechFileStream_Release(This) (This)->lpVtbl->Release(This)
10818/*** IDispatch methods ***/
10819#define ISpeechFileStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
10820#define ISpeechFileStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
10821#define ISpeechFileStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
10822#define ISpeechFileStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
10823/*** ISpeechBaseStream methods ***/
10824#define ISpeechFileStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
10825#define ISpeechFileStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
10826#define ISpeechFileStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
10827#define ISpeechFileStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
10828#define ISpeechFileStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
10829/*** ISpeechFileStream methods ***/
10830#define ISpeechFileStream_Open(This,FileName,FileMode,DoEvents) (This)->lpVtbl->Open(This,FileName,FileMode,DoEvents)
10831#define ISpeechFileStream_Close(This) (This)->lpVtbl->Close(This)
10832#else
10833/*** IUnknown methods ***/
10834static inline HRESULT ISpeechFileStream_QueryInterface(ISpeechFileStream* This,REFIID riid,void **ppvObject) {
10835 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10836}
10837static inline ULONG ISpeechFileStream_AddRef(ISpeechFileStream* This) {
10838 return This->lpVtbl->AddRef(This);
10839}
10840static inline ULONG ISpeechFileStream_Release(ISpeechFileStream* This) {
10841 return This->lpVtbl->Release(This);
10842}
10843/*** IDispatch methods ***/
10844static inline HRESULT ISpeechFileStream_GetTypeInfoCount(ISpeechFileStream* This,UINT *pctinfo) {
10845 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
10846}
10847static inline HRESULT ISpeechFileStream_GetTypeInfo(ISpeechFileStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
10848 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
10849}
10850static inline HRESULT ISpeechFileStream_GetIDsOfNames(ISpeechFileStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
10851 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
10852}
10853static inline HRESULT ISpeechFileStream_Invoke(ISpeechFileStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
10854 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
10855}
10856/*** ISpeechBaseStream methods ***/
10857static inline HRESULT ISpeechFileStream_get_Format(ISpeechFileStream* This,ISpeechAudioFormat **AudioFormat) {
10858 return This->lpVtbl->get_Format(This,AudioFormat);
10859}
10860static inline HRESULT ISpeechFileStream_putref_Format(ISpeechFileStream* This,ISpeechAudioFormat *AudioFormat) {
10861 return This->lpVtbl->putref_Format(This,AudioFormat);
10862}
10863static inline HRESULT ISpeechFileStream_Read(ISpeechFileStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
10864 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
10865}
10866static inline HRESULT ISpeechFileStream_Write(ISpeechFileStream* This,VARIANT Buffer,LONG *BytesWritten) {
10867 return This->lpVtbl->Write(This,Buffer,BytesWritten);
10868}
10869static inline HRESULT ISpeechFileStream_Seek(ISpeechFileStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
10870 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
10871}
10872/*** ISpeechFileStream methods ***/
10873static inline HRESULT ISpeechFileStream_Open(ISpeechFileStream* This,BSTR FileName,SpeechStreamFileMode FileMode,VARIANT_BOOL DoEvents) {
10874 return This->lpVtbl->Open(This,FileName,FileMode,DoEvents);
10875}
10876static inline HRESULT ISpeechFileStream_Close(ISpeechFileStream* This) {
10877 return This->lpVtbl->Close(This);
10878}
10879#endif
10880#endif
10881
10882#endif
10883
10884
10885#endif /* __ISpeechFileStream_INTERFACE_DEFINED__ */
10886
10887/*****************************************************************************
10888 * ISpeechCustomStream interface
10889 */
10890#ifndef __ISpeechCustomStream_INTERFACE_DEFINED__
10891#define __ISpeechCustomStream_INTERFACE_DEFINED__
10892
10893DEFINE_GUID(IID_ISpeechCustomStream, 0x1a9e9f4f, 0x104f, 0x4db8, 0xa1,0x15, 0xef,0xd7,0xfd,0x0c,0x97,0xae);
10894#if defined(__cplusplus) && !defined(CINTERFACE)
10895MIDL_INTERFACE("1a9e9f4f-104f-4db8-a115-efd7fd0c97ae")
10896ISpeechCustomStream : public ISpeechBaseStream
10897{
10898 virtual HRESULT STDMETHODCALLTYPE get_BaseStream(
10899 IUnknown **ppUnkStream) = 0;
10900
10901 virtual HRESULT STDMETHODCALLTYPE putref_BaseStream(
10902 IUnknown *pUnkStream) = 0;
10903
10904};
10905#ifdef __CRT_UUID_DECL
10906__CRT_UUID_DECL(ISpeechCustomStream, 0x1a9e9f4f, 0x104f, 0x4db8, 0xa1,0x15, 0xef,0xd7,0xfd,0x0c,0x97,0xae)
10907#endif
10908#else
10909typedef struct ISpeechCustomStreamVtbl {
10910 BEGIN_INTERFACE
10911
10912 /*** IUnknown methods ***/
10913 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10914 ISpeechCustomStream *This,
10915 REFIID riid,
10916 void **ppvObject);
10917
10918 ULONG (STDMETHODCALLTYPE *AddRef)(
10919 ISpeechCustomStream *This);
10920
10921 ULONG (STDMETHODCALLTYPE *Release)(
10922 ISpeechCustomStream *This);
10923
10924 /*** IDispatch methods ***/
10925 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10926 ISpeechCustomStream *This,
10927 UINT *pctinfo);
10928
10929 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10930 ISpeechCustomStream *This,
10931 UINT iTInfo,
10932 LCID lcid,
10933 ITypeInfo **ppTInfo);
10934
10935 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10936 ISpeechCustomStream *This,
10937 REFIID riid,
10938 LPOLESTR *rgszNames,
10939 UINT cNames,
10940 LCID lcid,
10941 DISPID *rgDispId);
10942
10943 HRESULT (STDMETHODCALLTYPE *Invoke)(
10944 ISpeechCustomStream *This,
10945 DISPID dispIdMember,
10946 REFIID riid,
10947 LCID lcid,
10948 WORD wFlags,
10949 DISPPARAMS *pDispParams,
10950 VARIANT *pVarResult,
10951 EXCEPINFO *pExcepInfo,
10952 UINT *puArgErr);
10953
10954 /*** ISpeechBaseStream methods ***/
10955 HRESULT (STDMETHODCALLTYPE *get_Format)(
10956 ISpeechCustomStream *This,
10957 ISpeechAudioFormat **AudioFormat);
10958
10959 HRESULT (STDMETHODCALLTYPE *putref_Format)(
10960 ISpeechCustomStream *This,
10961 ISpeechAudioFormat *AudioFormat);
10962
10963 HRESULT (STDMETHODCALLTYPE *Read)(
10964 ISpeechCustomStream *This,
10965 VARIANT *Buffer,
10966 LONG NumberOfBytes,
10967 LONG *BytesRead);
10968
10969 HRESULT (STDMETHODCALLTYPE *Write)(
10970 ISpeechCustomStream *This,
10971 VARIANT Buffer,
10972 LONG *BytesWritten);
10973
10974 HRESULT (STDMETHODCALLTYPE *Seek)(
10975 ISpeechCustomStream *This,
10976 VARIANT Position,
10977 SpeechStreamSeekPositionType Origin,
10978 VARIANT *NewPosition);
10979
10980 /*** ISpeechCustomStream methods ***/
10981 HRESULT (STDMETHODCALLTYPE *get_BaseStream)(
10982 ISpeechCustomStream *This,
10983 IUnknown **ppUnkStream);
10984
10985 HRESULT (STDMETHODCALLTYPE *putref_BaseStream)(
10986 ISpeechCustomStream *This,
10987 IUnknown *pUnkStream);
10988
10989 END_INTERFACE
10990} ISpeechCustomStreamVtbl;
10991
10992interface ISpeechCustomStream {
10993 CONST_VTBL ISpeechCustomStreamVtbl* lpVtbl;
10994};
10995
10996#ifdef COBJMACROS
10997#ifndef WIDL_C_INLINE_WRAPPERS
10998/*** IUnknown methods ***/
10999#define ISpeechCustomStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11000#define ISpeechCustomStream_AddRef(This) (This)->lpVtbl->AddRef(This)
11001#define ISpeechCustomStream_Release(This) (This)->lpVtbl->Release(This)
11002/*** IDispatch methods ***/
11003#define ISpeechCustomStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11004#define ISpeechCustomStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11005#define ISpeechCustomStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11006#define ISpeechCustomStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11007/*** ISpeechBaseStream methods ***/
11008#define ISpeechCustomStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
11009#define ISpeechCustomStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
11010#define ISpeechCustomStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
11011#define ISpeechCustomStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
11012#define ISpeechCustomStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
11013/*** ISpeechCustomStream methods ***/
11014#define ISpeechCustomStream_get_BaseStream(This,ppUnkStream) (This)->lpVtbl->get_BaseStream(This,ppUnkStream)
11015#define ISpeechCustomStream_putref_BaseStream(This,pUnkStream) (This)->lpVtbl->putref_BaseStream(This,pUnkStream)
11016#else
11017/*** IUnknown methods ***/
11018static inline HRESULT ISpeechCustomStream_QueryInterface(ISpeechCustomStream* This,REFIID riid,void **ppvObject) {
11019 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11020}
11021static inline ULONG ISpeechCustomStream_AddRef(ISpeechCustomStream* This) {
11022 return This->lpVtbl->AddRef(This);
11023}
11024static inline ULONG ISpeechCustomStream_Release(ISpeechCustomStream* This) {
11025 return This->lpVtbl->Release(This);
11026}
11027/*** IDispatch methods ***/
11028static inline HRESULT ISpeechCustomStream_GetTypeInfoCount(ISpeechCustomStream* This,UINT *pctinfo) {
11029 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11030}
11031static inline HRESULT ISpeechCustomStream_GetTypeInfo(ISpeechCustomStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11032 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11033}
11034static inline HRESULT ISpeechCustomStream_GetIDsOfNames(ISpeechCustomStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11035 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11036}
11037static inline HRESULT ISpeechCustomStream_Invoke(ISpeechCustomStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11038 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11039}
11040/*** ISpeechBaseStream methods ***/
11041static inline HRESULT ISpeechCustomStream_get_Format(ISpeechCustomStream* This,ISpeechAudioFormat **AudioFormat) {
11042 return This->lpVtbl->get_Format(This,AudioFormat);
11043}
11044static inline HRESULT ISpeechCustomStream_putref_Format(ISpeechCustomStream* This,ISpeechAudioFormat *AudioFormat) {
11045 return This->lpVtbl->putref_Format(This,AudioFormat);
11046}
11047static inline HRESULT ISpeechCustomStream_Read(ISpeechCustomStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
11048 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
11049}
11050static inline HRESULT ISpeechCustomStream_Write(ISpeechCustomStream* This,VARIANT Buffer,LONG *BytesWritten) {
11051 return This->lpVtbl->Write(This,Buffer,BytesWritten);
11052}
11053static inline HRESULT ISpeechCustomStream_Seek(ISpeechCustomStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
11054 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
11055}
11056/*** ISpeechCustomStream methods ***/
11057static inline HRESULT ISpeechCustomStream_get_BaseStream(ISpeechCustomStream* This,IUnknown **ppUnkStream) {
11058 return This->lpVtbl->get_BaseStream(This,ppUnkStream);
11059}
11060static inline HRESULT ISpeechCustomStream_putref_BaseStream(ISpeechCustomStream* This,IUnknown *pUnkStream) {
11061 return This->lpVtbl->putref_BaseStream(This,pUnkStream);
11062}
11063#endif
11064#endif
11065
11066#endif
11067
11068
11069#endif /* __ISpeechCustomStream_INTERFACE_DEFINED__ */
11070
11071/*****************************************************************************
11072 * ISpeechMemoryStream interface
11073 */
11074#ifndef __ISpeechMemoryStream_INTERFACE_DEFINED__
11075#define __ISpeechMemoryStream_INTERFACE_DEFINED__
11076
11077DEFINE_GUID(IID_ISpeechMemoryStream, 0xeeb14b68, 0x808b, 0x4abe, 0xa5,0xea, 0xb5,0x1d,0xa7,0x58,0x80,0x08);
11078#if defined(__cplusplus) && !defined(CINTERFACE)
11079MIDL_INTERFACE("eeb14b68-808b-4abe-a5ea-b51da7588008")
11080ISpeechMemoryStream : public ISpeechBaseStream
11081{
11082 virtual HRESULT STDMETHODCALLTYPE SetData(
11083 VARIANT Data) = 0;
11084
11085 virtual HRESULT STDMETHODCALLTYPE GetData(
11086 VARIANT *pData) = 0;
11087
11088};
11089#ifdef __CRT_UUID_DECL
11090__CRT_UUID_DECL(ISpeechMemoryStream, 0xeeb14b68, 0x808b, 0x4abe, 0xa5,0xea, 0xb5,0x1d,0xa7,0x58,0x80,0x08)
11091#endif
11092#else
11093typedef struct ISpeechMemoryStreamVtbl {
11094 BEGIN_INTERFACE
11095
11096 /*** IUnknown methods ***/
11097 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11098 ISpeechMemoryStream *This,
11099 REFIID riid,
11100 void **ppvObject);
11101
11102 ULONG (STDMETHODCALLTYPE *AddRef)(
11103 ISpeechMemoryStream *This);
11104
11105 ULONG (STDMETHODCALLTYPE *Release)(
11106 ISpeechMemoryStream *This);
11107
11108 /*** IDispatch methods ***/
11109 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11110 ISpeechMemoryStream *This,
11111 UINT *pctinfo);
11112
11113 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11114 ISpeechMemoryStream *This,
11115 UINT iTInfo,
11116 LCID lcid,
11117 ITypeInfo **ppTInfo);
11118
11119 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11120 ISpeechMemoryStream *This,
11121 REFIID riid,
11122 LPOLESTR *rgszNames,
11123 UINT cNames,
11124 LCID lcid,
11125 DISPID *rgDispId);
11126
11127 HRESULT (STDMETHODCALLTYPE *Invoke)(
11128 ISpeechMemoryStream *This,
11129 DISPID dispIdMember,
11130 REFIID riid,
11131 LCID lcid,
11132 WORD wFlags,
11133 DISPPARAMS *pDispParams,
11134 VARIANT *pVarResult,
11135 EXCEPINFO *pExcepInfo,
11136 UINT *puArgErr);
11137
11138 /*** ISpeechBaseStream methods ***/
11139 HRESULT (STDMETHODCALLTYPE *get_Format)(
11140 ISpeechMemoryStream *This,
11141 ISpeechAudioFormat **AudioFormat);
11142
11143 HRESULT (STDMETHODCALLTYPE *putref_Format)(
11144 ISpeechMemoryStream *This,
11145 ISpeechAudioFormat *AudioFormat);
11146
11147 HRESULT (STDMETHODCALLTYPE *Read)(
11148 ISpeechMemoryStream *This,
11149 VARIANT *Buffer,
11150 LONG NumberOfBytes,
11151 LONG *BytesRead);
11152
11153 HRESULT (STDMETHODCALLTYPE *Write)(
11154 ISpeechMemoryStream *This,
11155 VARIANT Buffer,
11156 LONG *BytesWritten);
11157
11158 HRESULT (STDMETHODCALLTYPE *Seek)(
11159 ISpeechMemoryStream *This,
11160 VARIANT Position,
11161 SpeechStreamSeekPositionType Origin,
11162 VARIANT *NewPosition);
11163
11164 /*** ISpeechMemoryStream methods ***/
11165 HRESULT (STDMETHODCALLTYPE *SetData)(
11166 ISpeechMemoryStream *This,
11167 VARIANT Data);
11168
11169 HRESULT (STDMETHODCALLTYPE *GetData)(
11170 ISpeechMemoryStream *This,
11171 VARIANT *pData);
11172
11173 END_INTERFACE
11174} ISpeechMemoryStreamVtbl;
11175
11176interface ISpeechMemoryStream {
11177 CONST_VTBL ISpeechMemoryStreamVtbl* lpVtbl;
11178};
11179
11180#ifdef COBJMACROS
11181#ifndef WIDL_C_INLINE_WRAPPERS
11182/*** IUnknown methods ***/
11183#define ISpeechMemoryStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11184#define ISpeechMemoryStream_AddRef(This) (This)->lpVtbl->AddRef(This)
11185#define ISpeechMemoryStream_Release(This) (This)->lpVtbl->Release(This)
11186/*** IDispatch methods ***/
11187#define ISpeechMemoryStream_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11188#define ISpeechMemoryStream_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11189#define ISpeechMemoryStream_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11190#define ISpeechMemoryStream_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11191/*** ISpeechBaseStream methods ***/
11192#define ISpeechMemoryStream_get_Format(This,AudioFormat) (This)->lpVtbl->get_Format(This,AudioFormat)
11193#define ISpeechMemoryStream_putref_Format(This,AudioFormat) (This)->lpVtbl->putref_Format(This,AudioFormat)
11194#define ISpeechMemoryStream_Read(This,Buffer,NumberOfBytes,BytesRead) (This)->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead)
11195#define ISpeechMemoryStream_Write(This,Buffer,BytesWritten) (This)->lpVtbl->Write(This,Buffer,BytesWritten)
11196#define ISpeechMemoryStream_Seek(This,Position,Origin,NewPosition) (This)->lpVtbl->Seek(This,Position,Origin,NewPosition)
11197/*** ISpeechMemoryStream methods ***/
11198#define ISpeechMemoryStream_SetData(This,Data) (This)->lpVtbl->SetData(This,Data)
11199#define ISpeechMemoryStream_GetData(This,pData) (This)->lpVtbl->GetData(This,pData)
11200#else
11201/*** IUnknown methods ***/
11202static inline HRESULT ISpeechMemoryStream_QueryInterface(ISpeechMemoryStream* This,REFIID riid,void **ppvObject) {
11203 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11204}
11205static inline ULONG ISpeechMemoryStream_AddRef(ISpeechMemoryStream* This) {
11206 return This->lpVtbl->AddRef(This);
11207}
11208static inline ULONG ISpeechMemoryStream_Release(ISpeechMemoryStream* This) {
11209 return This->lpVtbl->Release(This);
11210}
11211/*** IDispatch methods ***/
11212static inline HRESULT ISpeechMemoryStream_GetTypeInfoCount(ISpeechMemoryStream* This,UINT *pctinfo) {
11213 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11214}
11215static inline HRESULT ISpeechMemoryStream_GetTypeInfo(ISpeechMemoryStream* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11216 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11217}
11218static inline HRESULT ISpeechMemoryStream_GetIDsOfNames(ISpeechMemoryStream* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11219 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11220}
11221static inline HRESULT ISpeechMemoryStream_Invoke(ISpeechMemoryStream* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11222 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11223}
11224/*** ISpeechBaseStream methods ***/
11225static inline HRESULT ISpeechMemoryStream_get_Format(ISpeechMemoryStream* This,ISpeechAudioFormat **AudioFormat) {
11226 return This->lpVtbl->get_Format(This,AudioFormat);
11227}
11228static inline HRESULT ISpeechMemoryStream_putref_Format(ISpeechMemoryStream* This,ISpeechAudioFormat *AudioFormat) {
11229 return This->lpVtbl->putref_Format(This,AudioFormat);
11230}
11231static inline HRESULT ISpeechMemoryStream_Read(ISpeechMemoryStream* This,VARIANT *Buffer,LONG NumberOfBytes,LONG *BytesRead) {
11232 return This->lpVtbl->Read(This,Buffer,NumberOfBytes,BytesRead);
11233}
11234static inline HRESULT ISpeechMemoryStream_Write(ISpeechMemoryStream* This,VARIANT Buffer,LONG *BytesWritten) {
11235 return This->lpVtbl->Write(This,Buffer,BytesWritten);
11236}
11237static inline HRESULT ISpeechMemoryStream_Seek(ISpeechMemoryStream* This,VARIANT Position,SpeechStreamSeekPositionType Origin,VARIANT *NewPosition) {
11238 return This->lpVtbl->Seek(This,Position,Origin,NewPosition);
11239}
11240/*** ISpeechMemoryStream methods ***/
11241static inline HRESULT ISpeechMemoryStream_SetData(ISpeechMemoryStream* This,VARIANT Data) {
11242 return This->lpVtbl->SetData(This,Data);
11243}
11244static inline HRESULT ISpeechMemoryStream_GetData(ISpeechMemoryStream* This,VARIANT *pData) {
11245 return This->lpVtbl->GetData(This,pData);
11246}
11247#endif
11248#endif
11249
11250#endif
11251
11252
11253#endif /* __ISpeechMemoryStream_INTERFACE_DEFINED__ */
11254
11255/*****************************************************************************
11256 * ISpeechAudioStatus interface
11257 */
11258#ifndef __ISpeechAudioStatus_INTERFACE_DEFINED__
11259#define __ISpeechAudioStatus_INTERFACE_DEFINED__
11260
11261DEFINE_GUID(IID_ISpeechAudioStatus, 0xc62d9c91, 0x7458, 0x47f6, 0x86,0x2d, 0x1e,0xf8,0x6f,0xb0,0xb2,0x78);
11262#if defined(__cplusplus) && !defined(CINTERFACE)
11263MIDL_INTERFACE("c62d9c91-7458-47f6-862d-1ef86fb0b278")
11264ISpeechAudioStatus : public IDispatch
11265{
11266 virtual HRESULT STDMETHODCALLTYPE get_FreeBufferSpace(
11267 LONG *FreeBufferSpace) = 0;
11268
11269 virtual HRESULT STDMETHODCALLTYPE get_NonBlockingIO(
11270 LONG *NonBlockingIO) = 0;
11271
11272 virtual HRESULT STDMETHODCALLTYPE get_State(
11273 SpeechAudioState *State) = 0;
11274
11275 virtual HRESULT STDMETHODCALLTYPE get_CurrentSeekPosition(
11276 VARIANT *CurrentSeekPosition) = 0;
11277
11278 virtual HRESULT STDMETHODCALLTYPE get_CurrentDevicePosition(
11279 VARIANT *CurrentDevicePosition) = 0;
11280
11281};
11282#ifdef __CRT_UUID_DECL
11283__CRT_UUID_DECL(ISpeechAudioStatus, 0xc62d9c91, 0x7458, 0x47f6, 0x86,0x2d, 0x1e,0xf8,0x6f,0xb0,0xb2,0x78)
11284#endif
11285#else
11286typedef struct ISpeechAudioStatusVtbl {
11287 BEGIN_INTERFACE
11288
11289 /*** IUnknown methods ***/
11290 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11291 ISpeechAudioStatus *This,
11292 REFIID riid,
11293 void **ppvObject);
11294
11295 ULONG (STDMETHODCALLTYPE *AddRef)(
11296 ISpeechAudioStatus *This);
11297
11298 ULONG (STDMETHODCALLTYPE *Release)(
11299 ISpeechAudioStatus *This);
11300
11301 /*** IDispatch methods ***/
11302 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11303 ISpeechAudioStatus *This,
11304 UINT *pctinfo);
11305
11306 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11307 ISpeechAudioStatus *This,
11308 UINT iTInfo,
11309 LCID lcid,
11310 ITypeInfo **ppTInfo);
11311
11312 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11313 ISpeechAudioStatus *This,
11314 REFIID riid,
11315 LPOLESTR *rgszNames,
11316 UINT cNames,
11317 LCID lcid,
11318 DISPID *rgDispId);
11319
11320 HRESULT (STDMETHODCALLTYPE *Invoke)(
11321 ISpeechAudioStatus *This,
11322 DISPID dispIdMember,
11323 REFIID riid,
11324 LCID lcid,
11325 WORD wFlags,
11326 DISPPARAMS *pDispParams,
11327 VARIANT *pVarResult,
11328 EXCEPINFO *pExcepInfo,
11329 UINT *puArgErr);
11330
11331 /*** ISpeechAudioStatus methods ***/
11332 HRESULT (STDMETHODCALLTYPE *get_FreeBufferSpace)(
11333 ISpeechAudioStatus *This,
11334 LONG *FreeBufferSpace);
11335
11336 HRESULT (STDMETHODCALLTYPE *get_NonBlockingIO)(
11337 ISpeechAudioStatus *This,
11338 LONG *NonBlockingIO);
11339
11340 HRESULT (STDMETHODCALLTYPE *get_State)(
11341 ISpeechAudioStatus *This,
11342 SpeechAudioState *State);
11343
11344 HRESULT (STDMETHODCALLTYPE *get_CurrentSeekPosition)(
11345 ISpeechAudioStatus *This,
11346 VARIANT *CurrentSeekPosition);
11347
11348 HRESULT (STDMETHODCALLTYPE *get_CurrentDevicePosition)(
11349 ISpeechAudioStatus *This,
11350 VARIANT *CurrentDevicePosition);
11351
11352 END_INTERFACE
11353} ISpeechAudioStatusVtbl;
11354
11355interface ISpeechAudioStatus {
11356 CONST_VTBL ISpeechAudioStatusVtbl* lpVtbl;
11357};
11358
11359#ifdef COBJMACROS
11360#ifndef WIDL_C_INLINE_WRAPPERS
11361/*** IUnknown methods ***/
11362#define ISpeechAudioStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11363#define ISpeechAudioStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
11364#define ISpeechAudioStatus_Release(This) (This)->lpVtbl->Release(This)
11365/*** IDispatch methods ***/
11366#define ISpeechAudioStatus_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11367#define ISpeechAudioStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11368#define ISpeechAudioStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11369#define ISpeechAudioStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11370/*** ISpeechAudioStatus methods ***/
11371#define ISpeechAudioStatus_get_FreeBufferSpace(This,FreeBufferSpace) (This)->lpVtbl->get_FreeBufferSpace(This,FreeBufferSpace)
11372#define ISpeechAudioStatus_get_NonBlockingIO(This,NonBlockingIO) (This)->lpVtbl->get_NonBlockingIO(This,NonBlockingIO)
11373#define ISpeechAudioStatus_get_State(This,State) (This)->lpVtbl->get_State(This,State)
11374#define ISpeechAudioStatus_get_CurrentSeekPosition(This,CurrentSeekPosition) (This)->lpVtbl->get_CurrentSeekPosition(This,CurrentSeekPosition)
11375#define ISpeechAudioStatus_get_CurrentDevicePosition(This,CurrentDevicePosition) (This)->lpVtbl->get_CurrentDevicePosition(This,CurrentDevicePosition)
11376#else
11377/*** IUnknown methods ***/
11378static inline HRESULT ISpeechAudioStatus_QueryInterface(ISpeechAudioStatus* This,REFIID riid,void **ppvObject) {
11379 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11380}
11381static inline ULONG ISpeechAudioStatus_AddRef(ISpeechAudioStatus* This) {
11382 return This->lpVtbl->AddRef(This);
11383}
11384static inline ULONG ISpeechAudioStatus_Release(ISpeechAudioStatus* This) {
11385 return This->lpVtbl->Release(This);
11386}
11387/*** IDispatch methods ***/
11388static inline HRESULT ISpeechAudioStatus_GetTypeInfoCount(ISpeechAudioStatus* This,UINT *pctinfo) {
11389 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11390}
11391static inline HRESULT ISpeechAudioStatus_GetTypeInfo(ISpeechAudioStatus* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11392 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11393}
11394static inline HRESULT ISpeechAudioStatus_GetIDsOfNames(ISpeechAudioStatus* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11395 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11396}
11397static inline HRESULT ISpeechAudioStatus_Invoke(ISpeechAudioStatus* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11398 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11399}
11400/*** ISpeechAudioStatus methods ***/
11401static inline HRESULT ISpeechAudioStatus_get_FreeBufferSpace(ISpeechAudioStatus* This,LONG *FreeBufferSpace) {
11402 return This->lpVtbl->get_FreeBufferSpace(This,FreeBufferSpace);
11403}
11404static inline HRESULT ISpeechAudioStatus_get_NonBlockingIO(ISpeechAudioStatus* This,LONG *NonBlockingIO) {
11405 return This->lpVtbl->get_NonBlockingIO(This,NonBlockingIO);
11406}
11407static inline HRESULT ISpeechAudioStatus_get_State(ISpeechAudioStatus* This,SpeechAudioState *State) {
11408 return This->lpVtbl->get_State(This,State);
11409}
11410static inline HRESULT ISpeechAudioStatus_get_CurrentSeekPosition(ISpeechAudioStatus* This,VARIANT *CurrentSeekPosition) {
11411 return This->lpVtbl->get_CurrentSeekPosition(This,CurrentSeekPosition);
11412}
11413static inline HRESULT ISpeechAudioStatus_get_CurrentDevicePosition(ISpeechAudioStatus* This,VARIANT *CurrentDevicePosition) {
11414 return This->lpVtbl->get_CurrentDevicePosition(This,CurrentDevicePosition);
11415}
11416#endif
11417#endif
11418
11419#endif
11420
11421
11422#endif /* __ISpeechAudioStatus_INTERFACE_DEFINED__ */
11423
11424/*****************************************************************************
11425 * ISpeechAudioBufferInfo interface
11426 */
11427#ifndef __ISpeechAudioBufferInfo_INTERFACE_DEFINED__
11428#define __ISpeechAudioBufferInfo_INTERFACE_DEFINED__
11429
11430DEFINE_GUID(IID_ISpeechAudioBufferInfo, 0x11b103d8, 0x1142, 0x4edf, 0xa0,0x93, 0x82,0xfb,0x39,0x15,0xf8,0xcc);
11431#if defined(__cplusplus) && !defined(CINTERFACE)
11432MIDL_INTERFACE("11b103d8-1142-4edf-a093-82fb3915f8cc")
11433ISpeechAudioBufferInfo : public IDispatch
11434{
11435 virtual HRESULT STDMETHODCALLTYPE get_MinNotification(
11436 LONG *MinNotification) = 0;
11437
11438 virtual HRESULT STDMETHODCALLTYPE put_MinNotification(
11439 LONG MinNotification) = 0;
11440
11441 virtual HRESULT STDMETHODCALLTYPE get_BufferSize(
11442 LONG *BufferSize) = 0;
11443
11444 virtual HRESULT STDMETHODCALLTYPE put_BufferSize(
11445 LONG BufferSize) = 0;
11446
11447 virtual HRESULT STDMETHODCALLTYPE get_EventBias(
11448 LONG *EventBias) = 0;
11449
11450 virtual HRESULT STDMETHODCALLTYPE put_EventBias(
11451 LONG EventBias) = 0;
11452
11453};
11454#ifdef __CRT_UUID_DECL
11455__CRT_UUID_DECL(ISpeechAudioBufferInfo, 0x11b103d8, 0x1142, 0x4edf, 0xa0,0x93, 0x82,0xfb,0x39,0x15,0xf8,0xcc)
11456#endif
11457#else
11458typedef struct ISpeechAudioBufferInfoVtbl {
11459 BEGIN_INTERFACE
11460
11461 /*** IUnknown methods ***/
11462 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11463 ISpeechAudioBufferInfo *This,
11464 REFIID riid,
11465 void **ppvObject);
11466
11467 ULONG (STDMETHODCALLTYPE *AddRef)(
11468 ISpeechAudioBufferInfo *This);
11469
11470 ULONG (STDMETHODCALLTYPE *Release)(
11471 ISpeechAudioBufferInfo *This);
11472
11473 /*** IDispatch methods ***/
11474 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11475 ISpeechAudioBufferInfo *This,
11476 UINT *pctinfo);
11477
11478 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11479 ISpeechAudioBufferInfo *This,
11480 UINT iTInfo,
11481 LCID lcid,
11482 ITypeInfo **ppTInfo);
11483
11484 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11485 ISpeechAudioBufferInfo *This,
11486 REFIID riid,
11487 LPOLESTR *rgszNames,
11488 UINT cNames,
11489 LCID lcid,
11490 DISPID *rgDispId);
11491
11492 HRESULT (STDMETHODCALLTYPE *Invoke)(
11493 ISpeechAudioBufferInfo *This,
11494 DISPID dispIdMember,
11495 REFIID riid,
11496 LCID lcid,
11497 WORD wFlags,
11498 DISPPARAMS *pDispParams,
11499 VARIANT *pVarResult,
11500 EXCEPINFO *pExcepInfo,
11501 UINT *puArgErr);
11502
11503 /*** ISpeechAudioBufferInfo methods ***/
11504 HRESULT (STDMETHODCALLTYPE *get_MinNotification)(
11505 ISpeechAudioBufferInfo *This,
11506 LONG *MinNotification);
11507
11508 HRESULT (STDMETHODCALLTYPE *put_MinNotification)(
11509 ISpeechAudioBufferInfo *This,
11510 LONG MinNotification);
11511
11512 HRESULT (STDMETHODCALLTYPE *get_BufferSize)(
11513 ISpeechAudioBufferInfo *This,
11514 LONG *BufferSize);
11515
11516 HRESULT (STDMETHODCALLTYPE *put_BufferSize)(
11517 ISpeechAudioBufferInfo *This,
11518 LONG BufferSize);
11519
11520 HRESULT (STDMETHODCALLTYPE *get_EventBias)(
11521 ISpeechAudioBufferInfo *This,
11522 LONG *EventBias);
11523
11524 HRESULT (STDMETHODCALLTYPE *put_EventBias)(
11525 ISpeechAudioBufferInfo *This,
11526 LONG EventBias);
11527
11528 END_INTERFACE
11529} ISpeechAudioBufferInfoVtbl;
11530
11531interface ISpeechAudioBufferInfo {
11532 CONST_VTBL ISpeechAudioBufferInfoVtbl* lpVtbl;
11533};
11534
11535#ifdef COBJMACROS
11536#ifndef WIDL_C_INLINE_WRAPPERS
11537/*** IUnknown methods ***/
11538#define ISpeechAudioBufferInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11539#define ISpeechAudioBufferInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
11540#define ISpeechAudioBufferInfo_Release(This) (This)->lpVtbl->Release(This)
11541/*** IDispatch methods ***/
11542#define ISpeechAudioBufferInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11543#define ISpeechAudioBufferInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11544#define ISpeechAudioBufferInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11545#define ISpeechAudioBufferInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11546/*** ISpeechAudioBufferInfo methods ***/
11547#define ISpeechAudioBufferInfo_get_MinNotification(This,MinNotification) (This)->lpVtbl->get_MinNotification(This,MinNotification)
11548#define ISpeechAudioBufferInfo_put_MinNotification(This,MinNotification) (This)->lpVtbl->put_MinNotification(This,MinNotification)
11549#define ISpeechAudioBufferInfo_get_BufferSize(This,BufferSize) (This)->lpVtbl->get_BufferSize(This,BufferSize)
11550#define ISpeechAudioBufferInfo_put_BufferSize(This,BufferSize) (This)->lpVtbl->put_BufferSize(This,BufferSize)
11551#define ISpeechAudioBufferInfo_get_EventBias(This,EventBias) (This)->lpVtbl->get_EventBias(This,EventBias)
11552#define ISpeechAudioBufferInfo_put_EventBias(This,EventBias) (This)->lpVtbl->put_EventBias(This,EventBias)
11553#else
11554/*** IUnknown methods ***/
11555static inline HRESULT ISpeechAudioBufferInfo_QueryInterface(ISpeechAudioBufferInfo* This,REFIID riid,void **ppvObject) {
11556 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11557}
11558static inline ULONG ISpeechAudioBufferInfo_AddRef(ISpeechAudioBufferInfo* This) {
11559 return This->lpVtbl->AddRef(This);
11560}
11561static inline ULONG ISpeechAudioBufferInfo_Release(ISpeechAudioBufferInfo* This) {
11562 return This->lpVtbl->Release(This);
11563}
11564/*** IDispatch methods ***/
11565static inline HRESULT ISpeechAudioBufferInfo_GetTypeInfoCount(ISpeechAudioBufferInfo* This,UINT *pctinfo) {
11566 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11567}
11568static inline HRESULT ISpeechAudioBufferInfo_GetTypeInfo(ISpeechAudioBufferInfo* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11569 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11570}
11571static inline HRESULT ISpeechAudioBufferInfo_GetIDsOfNames(ISpeechAudioBufferInfo* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11572 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11573}
11574static inline HRESULT ISpeechAudioBufferInfo_Invoke(ISpeechAudioBufferInfo* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11575 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11576}
11577/*** ISpeechAudioBufferInfo methods ***/
11578static inline HRESULT ISpeechAudioBufferInfo_get_MinNotification(ISpeechAudioBufferInfo* This,LONG *MinNotification) {
11579 return This->lpVtbl->get_MinNotification(This,MinNotification);
11580}
11581static inline HRESULT ISpeechAudioBufferInfo_put_MinNotification(ISpeechAudioBufferInfo* This,LONG MinNotification) {
11582 return This->lpVtbl->put_MinNotification(This,MinNotification);
11583}
11584static inline HRESULT ISpeechAudioBufferInfo_get_BufferSize(ISpeechAudioBufferInfo* This,LONG *BufferSize) {
11585 return This->lpVtbl->get_BufferSize(This,BufferSize);
11586}
11587static inline HRESULT ISpeechAudioBufferInfo_put_BufferSize(ISpeechAudioBufferInfo* This,LONG BufferSize) {
11588 return This->lpVtbl->put_BufferSize(This,BufferSize);
11589}
11590static inline HRESULT ISpeechAudioBufferInfo_get_EventBias(ISpeechAudioBufferInfo* This,LONG *EventBias) {
11591 return This->lpVtbl->get_EventBias(This,EventBias);
11592}
11593static inline HRESULT ISpeechAudioBufferInfo_put_EventBias(ISpeechAudioBufferInfo* This,LONG EventBias) {
11594 return This->lpVtbl->put_EventBias(This,EventBias);
11595}
11596#endif
11597#endif
11598
11599#endif
11600
11601
11602#endif /* __ISpeechAudioBufferInfo_INTERFACE_DEFINED__ */
11603
11604/*****************************************************************************
11605 * ISpeechWaveFormatEx interface
11606 */
11607#ifndef __ISpeechWaveFormatEx_INTERFACE_DEFINED__
11608#define __ISpeechWaveFormatEx_INTERFACE_DEFINED__
11609
11610DEFINE_GUID(IID_ISpeechWaveFormatEx, 0x7a1ef0d5, 0x1581, 0x4741, 0x88,0xe4, 0x20,0x9a,0x49,0xf1,0x1a,0x10);
11611#if defined(__cplusplus) && !defined(CINTERFACE)
11612MIDL_INTERFACE("7a1ef0d5-1581-4741-88e4-209a49f11a10")
11613ISpeechWaveFormatEx : public IDispatch
11614{
11615 virtual HRESULT STDMETHODCALLTYPE get_FormatTag(
11616 short *FormatTag) = 0;
11617
11618 virtual HRESULT STDMETHODCALLTYPE put_FormatTag(
11619 short FormatTag) = 0;
11620
11621 virtual HRESULT STDMETHODCALLTYPE get_Channels(
11622 short *Channels) = 0;
11623
11624 virtual HRESULT STDMETHODCALLTYPE put_Channels(
11625 short Channels) = 0;
11626
11627 virtual HRESULT STDMETHODCALLTYPE get_SamplesPerSec(
11628 LONG *SamplesPerSec) = 0;
11629
11630 virtual HRESULT STDMETHODCALLTYPE put_SamplesPerSec(
11631 LONG SamplesPerSec) = 0;
11632
11633 virtual HRESULT STDMETHODCALLTYPE get_AvgBytesPerSec(
11634 LONG *AvgBytesPerSec) = 0;
11635
11636 virtual HRESULT STDMETHODCALLTYPE put_AvgBytesPerSec(
11637 LONG AvgBytesPerSec) = 0;
11638
11639 virtual HRESULT STDMETHODCALLTYPE get_BlockAlign(
11640 short *BlockAlign) = 0;
11641
11642 virtual HRESULT STDMETHODCALLTYPE put_BlockAlign(
11643 short BlockAlign) = 0;
11644
11645 virtual HRESULT STDMETHODCALLTYPE get_BitsPerSample(
11646 short *BitsPerSample) = 0;
11647
11648 virtual HRESULT STDMETHODCALLTYPE put_BitsPerSample(
11649 short BitsPerSample) = 0;
11650
11651 virtual HRESULT STDMETHODCALLTYPE get_ExtraData(
11652 VARIANT *ExtraData) = 0;
11653
11654 virtual HRESULT STDMETHODCALLTYPE put_ExtraData(
11655 VARIANT ExtraData) = 0;
11656
11657};
11658#ifdef __CRT_UUID_DECL
11659__CRT_UUID_DECL(ISpeechWaveFormatEx, 0x7a1ef0d5, 0x1581, 0x4741, 0x88,0xe4, 0x20,0x9a,0x49,0xf1,0x1a,0x10)
11660#endif
11661#else
11662typedef struct ISpeechWaveFormatExVtbl {
11663 BEGIN_INTERFACE
11664
11665 /*** IUnknown methods ***/
11666 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11667 ISpeechWaveFormatEx *This,
11668 REFIID riid,
11669 void **ppvObject);
11670
11671 ULONG (STDMETHODCALLTYPE *AddRef)(
11672 ISpeechWaveFormatEx *This);
11673
11674 ULONG (STDMETHODCALLTYPE *Release)(
11675 ISpeechWaveFormatEx *This);
11676
11677 /*** IDispatch methods ***/
11678 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11679 ISpeechWaveFormatEx *This,
11680 UINT *pctinfo);
11681
11682 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11683 ISpeechWaveFormatEx *This,
11684 UINT iTInfo,
11685 LCID lcid,
11686 ITypeInfo **ppTInfo);
11687
11688 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11689 ISpeechWaveFormatEx *This,
11690 REFIID riid,
11691 LPOLESTR *rgszNames,
11692 UINT cNames,
11693 LCID lcid,
11694 DISPID *rgDispId);
11695
11696 HRESULT (STDMETHODCALLTYPE *Invoke)(
11697 ISpeechWaveFormatEx *This,
11698 DISPID dispIdMember,
11699 REFIID riid,
11700 LCID lcid,
11701 WORD wFlags,
11702 DISPPARAMS *pDispParams,
11703 VARIANT *pVarResult,
11704 EXCEPINFO *pExcepInfo,
11705 UINT *puArgErr);
11706
11707 /*** ISpeechWaveFormatEx methods ***/
11708 HRESULT (STDMETHODCALLTYPE *get_FormatTag)(
11709 ISpeechWaveFormatEx *This,
11710 short *FormatTag);
11711
11712 HRESULT (STDMETHODCALLTYPE *put_FormatTag)(
11713 ISpeechWaveFormatEx *This,
11714 short FormatTag);
11715
11716 HRESULT (STDMETHODCALLTYPE *get_Channels)(
11717 ISpeechWaveFormatEx *This,
11718 short *Channels);
11719
11720 HRESULT (STDMETHODCALLTYPE *put_Channels)(
11721 ISpeechWaveFormatEx *This,
11722 short Channels);
11723
11724 HRESULT (STDMETHODCALLTYPE *get_SamplesPerSec)(
11725 ISpeechWaveFormatEx *This,
11726 LONG *SamplesPerSec);
11727
11728 HRESULT (STDMETHODCALLTYPE *put_SamplesPerSec)(
11729 ISpeechWaveFormatEx *This,
11730 LONG SamplesPerSec);
11731
11732 HRESULT (STDMETHODCALLTYPE *get_AvgBytesPerSec)(
11733 ISpeechWaveFormatEx *This,
11734 LONG *AvgBytesPerSec);
11735
11736 HRESULT (STDMETHODCALLTYPE *put_AvgBytesPerSec)(
11737 ISpeechWaveFormatEx *This,
11738 LONG AvgBytesPerSec);
11739
11740 HRESULT (STDMETHODCALLTYPE *get_BlockAlign)(
11741 ISpeechWaveFormatEx *This,
11742 short *BlockAlign);
11743
11744 HRESULT (STDMETHODCALLTYPE *put_BlockAlign)(
11745 ISpeechWaveFormatEx *This,
11746 short BlockAlign);
11747
11748 HRESULT (STDMETHODCALLTYPE *get_BitsPerSample)(
11749 ISpeechWaveFormatEx *This,
11750 short *BitsPerSample);
11751
11752 HRESULT (STDMETHODCALLTYPE *put_BitsPerSample)(
11753 ISpeechWaveFormatEx *This,
11754 short BitsPerSample);
11755
11756 HRESULT (STDMETHODCALLTYPE *get_ExtraData)(
11757 ISpeechWaveFormatEx *This,
11758 VARIANT *ExtraData);
11759
11760 HRESULT (STDMETHODCALLTYPE *put_ExtraData)(
11761 ISpeechWaveFormatEx *This,
11762 VARIANT ExtraData);
11763
11764 END_INTERFACE
11765} ISpeechWaveFormatExVtbl;
11766
11767interface ISpeechWaveFormatEx {
11768 CONST_VTBL ISpeechWaveFormatExVtbl* lpVtbl;
11769};
11770
11771#ifdef COBJMACROS
11772#ifndef WIDL_C_INLINE_WRAPPERS
11773/*** IUnknown methods ***/
11774#define ISpeechWaveFormatEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11775#define ISpeechWaveFormatEx_AddRef(This) (This)->lpVtbl->AddRef(This)
11776#define ISpeechWaveFormatEx_Release(This) (This)->lpVtbl->Release(This)
11777/*** IDispatch methods ***/
11778#define ISpeechWaveFormatEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11779#define ISpeechWaveFormatEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11780#define ISpeechWaveFormatEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11781#define ISpeechWaveFormatEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11782/*** ISpeechWaveFormatEx methods ***/
11783#define ISpeechWaveFormatEx_get_FormatTag(This,FormatTag) (This)->lpVtbl->get_FormatTag(This,FormatTag)
11784#define ISpeechWaveFormatEx_put_FormatTag(This,FormatTag) (This)->lpVtbl->put_FormatTag(This,FormatTag)
11785#define ISpeechWaveFormatEx_get_Channels(This,Channels) (This)->lpVtbl->get_Channels(This,Channels)
11786#define ISpeechWaveFormatEx_put_Channels(This,Channels) (This)->lpVtbl->put_Channels(This,Channels)
11787#define ISpeechWaveFormatEx_get_SamplesPerSec(This,SamplesPerSec) (This)->lpVtbl->get_SamplesPerSec(This,SamplesPerSec)
11788#define ISpeechWaveFormatEx_put_SamplesPerSec(This,SamplesPerSec) (This)->lpVtbl->put_SamplesPerSec(This,SamplesPerSec)
11789#define ISpeechWaveFormatEx_get_AvgBytesPerSec(This,AvgBytesPerSec) (This)->lpVtbl->get_AvgBytesPerSec(This,AvgBytesPerSec)
11790#define ISpeechWaveFormatEx_put_AvgBytesPerSec(This,AvgBytesPerSec) (This)->lpVtbl->put_AvgBytesPerSec(This,AvgBytesPerSec)
11791#define ISpeechWaveFormatEx_get_BlockAlign(This,BlockAlign) (This)->lpVtbl->get_BlockAlign(This,BlockAlign)
11792#define ISpeechWaveFormatEx_put_BlockAlign(This,BlockAlign) (This)->lpVtbl->put_BlockAlign(This,BlockAlign)
11793#define ISpeechWaveFormatEx_get_BitsPerSample(This,BitsPerSample) (This)->lpVtbl->get_BitsPerSample(This,BitsPerSample)
11794#define ISpeechWaveFormatEx_put_BitsPerSample(This,BitsPerSample) (This)->lpVtbl->put_BitsPerSample(This,BitsPerSample)
11795#define ISpeechWaveFormatEx_get_ExtraData(This,ExtraData) (This)->lpVtbl->get_ExtraData(This,ExtraData)
11796#define ISpeechWaveFormatEx_put_ExtraData(This,ExtraData) (This)->lpVtbl->put_ExtraData(This,ExtraData)
11797#else
11798/*** IUnknown methods ***/
11799static inline HRESULT ISpeechWaveFormatEx_QueryInterface(ISpeechWaveFormatEx* This,REFIID riid,void **ppvObject) {
11800 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11801}
11802static inline ULONG ISpeechWaveFormatEx_AddRef(ISpeechWaveFormatEx* This) {
11803 return This->lpVtbl->AddRef(This);
11804}
11805static inline ULONG ISpeechWaveFormatEx_Release(ISpeechWaveFormatEx* This) {
11806 return This->lpVtbl->Release(This);
11807}
11808/*** IDispatch methods ***/
11809static inline HRESULT ISpeechWaveFormatEx_GetTypeInfoCount(ISpeechWaveFormatEx* This,UINT *pctinfo) {
11810 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11811}
11812static inline HRESULT ISpeechWaveFormatEx_GetTypeInfo(ISpeechWaveFormatEx* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11813 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11814}
11815static inline HRESULT ISpeechWaveFormatEx_GetIDsOfNames(ISpeechWaveFormatEx* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11816 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11817}
11818static inline HRESULT ISpeechWaveFormatEx_Invoke(ISpeechWaveFormatEx* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11819 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11820}
11821/*** ISpeechWaveFormatEx methods ***/
11822static inline HRESULT ISpeechWaveFormatEx_get_FormatTag(ISpeechWaveFormatEx* This,short *FormatTag) {
11823 return This->lpVtbl->get_FormatTag(This,FormatTag);
11824}
11825static inline HRESULT ISpeechWaveFormatEx_put_FormatTag(ISpeechWaveFormatEx* This,short FormatTag) {
11826 return This->lpVtbl->put_FormatTag(This,FormatTag);
11827}
11828static inline HRESULT ISpeechWaveFormatEx_get_Channels(ISpeechWaveFormatEx* This,short *Channels) {
11829 return This->lpVtbl->get_Channels(This,Channels);
11830}
11831static inline HRESULT ISpeechWaveFormatEx_put_Channels(ISpeechWaveFormatEx* This,short Channels) {
11832 return This->lpVtbl->put_Channels(This,Channels);
11833}
11834static inline HRESULT ISpeechWaveFormatEx_get_SamplesPerSec(ISpeechWaveFormatEx* This,LONG *SamplesPerSec) {
11835 return This->lpVtbl->get_SamplesPerSec(This,SamplesPerSec);
11836}
11837static inline HRESULT ISpeechWaveFormatEx_put_SamplesPerSec(ISpeechWaveFormatEx* This,LONG SamplesPerSec) {
11838 return This->lpVtbl->put_SamplesPerSec(This,SamplesPerSec);
11839}
11840static inline HRESULT ISpeechWaveFormatEx_get_AvgBytesPerSec(ISpeechWaveFormatEx* This,LONG *AvgBytesPerSec) {
11841 return This->lpVtbl->get_AvgBytesPerSec(This,AvgBytesPerSec);
11842}
11843static inline HRESULT ISpeechWaveFormatEx_put_AvgBytesPerSec(ISpeechWaveFormatEx* This,LONG AvgBytesPerSec) {
11844 return This->lpVtbl->put_AvgBytesPerSec(This,AvgBytesPerSec);
11845}
11846static inline HRESULT ISpeechWaveFormatEx_get_BlockAlign(ISpeechWaveFormatEx* This,short *BlockAlign) {
11847 return This->lpVtbl->get_BlockAlign(This,BlockAlign);
11848}
11849static inline HRESULT ISpeechWaveFormatEx_put_BlockAlign(ISpeechWaveFormatEx* This,short BlockAlign) {
11850 return This->lpVtbl->put_BlockAlign(This,BlockAlign);
11851}
11852static inline HRESULT ISpeechWaveFormatEx_get_BitsPerSample(ISpeechWaveFormatEx* This,short *BitsPerSample) {
11853 return This->lpVtbl->get_BitsPerSample(This,BitsPerSample);
11854}
11855static inline HRESULT ISpeechWaveFormatEx_put_BitsPerSample(ISpeechWaveFormatEx* This,short BitsPerSample) {
11856 return This->lpVtbl->put_BitsPerSample(This,BitsPerSample);
11857}
11858static inline HRESULT ISpeechWaveFormatEx_get_ExtraData(ISpeechWaveFormatEx* This,VARIANT *ExtraData) {
11859 return This->lpVtbl->get_ExtraData(This,ExtraData);
11860}
11861static inline HRESULT ISpeechWaveFormatEx_put_ExtraData(ISpeechWaveFormatEx* This,VARIANT ExtraData) {
11862 return This->lpVtbl->put_ExtraData(This,ExtraData);
11863}
11864#endif
11865#endif
11866
11867#endif
11868
11869
11870#endif /* __ISpeechWaveFormatEx_INTERFACE_DEFINED__ */
11871
11872/*****************************************************************************
11873 * ISpeechVoice interface
11874 */
11875#ifndef __ISpeechVoice_INTERFACE_DEFINED__
11876#define __ISpeechVoice_INTERFACE_DEFINED__
11877
11878DEFINE_GUID(IID_ISpeechVoice, 0x269316d8, 0x57bd, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96);
11879#if defined(__cplusplus) && !defined(CINTERFACE)
11880MIDL_INTERFACE("269316d8-57bd-11d2-9eee-00c04f797396")
11881ISpeechVoice : public IDispatch
11882{
11883 virtual HRESULT STDMETHODCALLTYPE get_Status(
11884 ISpeechVoiceStatus **Status) = 0;
11885
11886 virtual HRESULT STDMETHODCALLTYPE get_Voice(
11887 ISpeechObjectToken **Voice) = 0;
11888
11889 virtual HRESULT STDMETHODCALLTYPE putref_Voice(
11890 ISpeechObjectToken *Voice) = 0;
11891
11892 virtual HRESULT STDMETHODCALLTYPE get_AudioOutput(
11893 ISpeechObjectToken **AudioOutput) = 0;
11894
11895 virtual HRESULT STDMETHODCALLTYPE putref_AudioOutput(
11896 ISpeechObjectToken *AudioOutput) = 0;
11897
11898 virtual HRESULT STDMETHODCALLTYPE get_AudioOutputStream(
11899 ISpeechBaseStream **AudioOutputStream) = 0;
11900
11901 virtual HRESULT STDMETHODCALLTYPE putref_AudioOutputStream(
11902 ISpeechBaseStream *AudioOutputStream) = 0;
11903
11904 virtual HRESULT STDMETHODCALLTYPE get_Rate(
11905 LONG *Rate) = 0;
11906
11907 virtual HRESULT STDMETHODCALLTYPE put_Rate(
11908 LONG Rate) = 0;
11909
11910 virtual HRESULT STDMETHODCALLTYPE get_Volume(
11911 LONG *Volume) = 0;
11912
11913 virtual HRESULT STDMETHODCALLTYPE put_Volume(
11914 LONG Volume) = 0;
11915
11916 virtual HRESULT STDMETHODCALLTYPE put_AllowAudioOutputFormatChangesOnNextSet(
11917 VARIANT_BOOL Allow) = 0;
11918
11919 virtual HRESULT STDMETHODCALLTYPE get_AllowAudioOutputFormatChangesOnNextSet(
11920 VARIANT_BOOL *Allow) = 0;
11921
11922 virtual HRESULT STDMETHODCALLTYPE get_EventInterests(
11923 SpeechVoiceEvents *EventInterestFlags) = 0;
11924
11925 virtual HRESULT STDMETHODCALLTYPE put_EventInterests(
11926 SpeechVoiceEvents EventInterestFlags) = 0;
11927
11928 virtual HRESULT STDMETHODCALLTYPE put_Priority(
11929 SpeechVoicePriority Priority) = 0;
11930
11931 virtual HRESULT STDMETHODCALLTYPE get_Priority(
11932 SpeechVoicePriority *Priority) = 0;
11933
11934 virtual HRESULT STDMETHODCALLTYPE put_AlertBoundary(
11935 SpeechVoiceEvents Boundary) = 0;
11936
11937 virtual HRESULT STDMETHODCALLTYPE get_AlertBoundary(
11938 SpeechVoiceEvents *Boundary) = 0;
11939
11940 virtual HRESULT STDMETHODCALLTYPE put_SynchronousSpeakTimeout(
11941 LONG msTimeout) = 0;
11942
11943 virtual HRESULT STDMETHODCALLTYPE get_SynchronousSpeakTimeout(
11944 LONG *msTimeout) = 0;
11945
11946 virtual HRESULT STDMETHODCALLTYPE Speak(
11947 BSTR Text,
11948 SpeechVoiceSpeakFlags Flags,
11949 LONG *StreamNumber) = 0;
11950
11951 virtual HRESULT STDMETHODCALLTYPE SpeakStream(
11952 ISpeechBaseStream *Stream,
11953 SpeechVoiceSpeakFlags Flags,
11954 LONG *StreamNumber) = 0;
11955
11956 virtual HRESULT STDMETHODCALLTYPE Pause(
11957 ) = 0;
11958
11959 virtual HRESULT STDMETHODCALLTYPE Resume(
11960 ) = 0;
11961
11962 virtual HRESULT STDMETHODCALLTYPE Skip(
11963 const BSTR Type,
11964 LONG NumItems,
11965 LONG *NumSkipped) = 0;
11966
11967 virtual HRESULT STDMETHODCALLTYPE GetVoices(
11968 BSTR RequiredAttributes,
11969 BSTR OptionalAttributes,
11970 ISpeechObjectTokens **ObjectTokens) = 0;
11971
11972 virtual HRESULT STDMETHODCALLTYPE GetAudioOutputs(
11973 BSTR RequiredAttributes,
11974 BSTR OptionalAttributes,
11975 ISpeechObjectTokens **ObjectTokens) = 0;
11976
11977 virtual HRESULT STDMETHODCALLTYPE WaitUntilDone(
11978 LONG msTimeout,
11979 VARIANT_BOOL *Done) = 0;
11980
11981 virtual HRESULT STDMETHODCALLTYPE SpeakCompleteEvent(
11982 LONG *Handle) = 0;
11983
11984 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
11985 const BSTR TypeOfUI,
11986 const VARIANT *ExtraData,
11987 VARIANT_BOOL *Supported) = 0;
11988
11989 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
11990 LONG hWndParent,
11991 BSTR Title,
11992 const BSTR TypeOfUI,
11993 const VARIANT *ExtraData = 0) = 0;
11994
11995};
11996#ifdef __CRT_UUID_DECL
11997__CRT_UUID_DECL(ISpeechVoice, 0x269316d8, 0x57bd, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96)
11998#endif
11999#else
12000typedef struct ISpeechVoiceVtbl {
12001 BEGIN_INTERFACE
12002
12003 /*** IUnknown methods ***/
12004 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12005 ISpeechVoice *This,
12006 REFIID riid,
12007 void **ppvObject);
12008
12009 ULONG (STDMETHODCALLTYPE *AddRef)(
12010 ISpeechVoice *This);
12011
12012 ULONG (STDMETHODCALLTYPE *Release)(
12013 ISpeechVoice *This);
12014
12015 /*** IDispatch methods ***/
12016 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12017 ISpeechVoice *This,
12018 UINT *pctinfo);
12019
12020 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12021 ISpeechVoice *This,
12022 UINT iTInfo,
12023 LCID lcid,
12024 ITypeInfo **ppTInfo);
12025
12026 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12027 ISpeechVoice *This,
12028 REFIID riid,
12029 LPOLESTR *rgszNames,
12030 UINT cNames,
12031 LCID lcid,
12032 DISPID *rgDispId);
12033
12034 HRESULT (STDMETHODCALLTYPE *Invoke)(
12035 ISpeechVoice *This,
12036 DISPID dispIdMember,
12037 REFIID riid,
12038 LCID lcid,
12039 WORD wFlags,
12040 DISPPARAMS *pDispParams,
12041 VARIANT *pVarResult,
12042 EXCEPINFO *pExcepInfo,
12043 UINT *puArgErr);
12044
12045 /*** ISpeechVoice methods ***/
12046 HRESULT (STDMETHODCALLTYPE *get_Status)(
12047 ISpeechVoice *This,
12048 ISpeechVoiceStatus **Status);
12049
12050 HRESULT (STDMETHODCALLTYPE *get_Voice)(
12051 ISpeechVoice *This,
12052 ISpeechObjectToken **Voice);
12053
12054 HRESULT (STDMETHODCALLTYPE *putref_Voice)(
12055 ISpeechVoice *This,
12056 ISpeechObjectToken *Voice);
12057
12058 HRESULT (STDMETHODCALLTYPE *get_AudioOutput)(
12059 ISpeechVoice *This,
12060 ISpeechObjectToken **AudioOutput);
12061
12062 HRESULT (STDMETHODCALLTYPE *putref_AudioOutput)(
12063 ISpeechVoice *This,
12064 ISpeechObjectToken *AudioOutput);
12065
12066 HRESULT (STDMETHODCALLTYPE *get_AudioOutputStream)(
12067 ISpeechVoice *This,
12068 ISpeechBaseStream **AudioOutputStream);
12069
12070 HRESULT (STDMETHODCALLTYPE *putref_AudioOutputStream)(
12071 ISpeechVoice *This,
12072 ISpeechBaseStream *AudioOutputStream);
12073
12074 HRESULT (STDMETHODCALLTYPE *get_Rate)(
12075 ISpeechVoice *This,
12076 LONG *Rate);
12077
12078 HRESULT (STDMETHODCALLTYPE *put_Rate)(
12079 ISpeechVoice *This,
12080 LONG Rate);
12081
12082 HRESULT (STDMETHODCALLTYPE *get_Volume)(
12083 ISpeechVoice *This,
12084 LONG *Volume);
12085
12086 HRESULT (STDMETHODCALLTYPE *put_Volume)(
12087 ISpeechVoice *This,
12088 LONG Volume);
12089
12090 HRESULT (STDMETHODCALLTYPE *put_AllowAudioOutputFormatChangesOnNextSet)(
12091 ISpeechVoice *This,
12092 VARIANT_BOOL Allow);
12093
12094 HRESULT (STDMETHODCALLTYPE *get_AllowAudioOutputFormatChangesOnNextSet)(
12095 ISpeechVoice *This,
12096 VARIANT_BOOL *Allow);
12097
12098 HRESULT (STDMETHODCALLTYPE *get_EventInterests)(
12099 ISpeechVoice *This,
12100 SpeechVoiceEvents *EventInterestFlags);
12101
12102 HRESULT (STDMETHODCALLTYPE *put_EventInterests)(
12103 ISpeechVoice *This,
12104 SpeechVoiceEvents EventInterestFlags);
12105
12106 HRESULT (STDMETHODCALLTYPE *put_Priority)(
12107 ISpeechVoice *This,
12108 SpeechVoicePriority Priority);
12109
12110 HRESULT (STDMETHODCALLTYPE *get_Priority)(
12111 ISpeechVoice *This,
12112 SpeechVoicePriority *Priority);
12113
12114 HRESULT (STDMETHODCALLTYPE *put_AlertBoundary)(
12115 ISpeechVoice *This,
12116 SpeechVoiceEvents Boundary);
12117
12118 HRESULT (STDMETHODCALLTYPE *get_AlertBoundary)(
12119 ISpeechVoice *This,
12120 SpeechVoiceEvents *Boundary);
12121
12122 HRESULT (STDMETHODCALLTYPE *put_SynchronousSpeakTimeout)(
12123 ISpeechVoice *This,
12124 LONG msTimeout);
12125
12126 HRESULT (STDMETHODCALLTYPE *get_SynchronousSpeakTimeout)(
12127 ISpeechVoice *This,
12128 LONG *msTimeout);
12129
12130 HRESULT (STDMETHODCALLTYPE *Speak)(
12131 ISpeechVoice *This,
12132 BSTR Text,
12133 SpeechVoiceSpeakFlags Flags,
12134 LONG *StreamNumber);
12135
12136 HRESULT (STDMETHODCALLTYPE *SpeakStream)(
12137 ISpeechVoice *This,
12138 ISpeechBaseStream *Stream,
12139 SpeechVoiceSpeakFlags Flags,
12140 LONG *StreamNumber);
12141
12142 HRESULT (STDMETHODCALLTYPE *Pause)(
12143 ISpeechVoice *This);
12144
12145 HRESULT (STDMETHODCALLTYPE *Resume)(
12146 ISpeechVoice *This);
12147
12148 HRESULT (STDMETHODCALLTYPE *Skip)(
12149 ISpeechVoice *This,
12150 const BSTR Type,
12151 LONG NumItems,
12152 LONG *NumSkipped);
12153
12154 HRESULT (STDMETHODCALLTYPE *GetVoices)(
12155 ISpeechVoice *This,
12156 BSTR RequiredAttributes,
12157 BSTR OptionalAttributes,
12158 ISpeechObjectTokens **ObjectTokens);
12159
12160 HRESULT (STDMETHODCALLTYPE *GetAudioOutputs)(
12161 ISpeechVoice *This,
12162 BSTR RequiredAttributes,
12163 BSTR OptionalAttributes,
12164 ISpeechObjectTokens **ObjectTokens);
12165
12166 HRESULT (STDMETHODCALLTYPE *WaitUntilDone)(
12167 ISpeechVoice *This,
12168 LONG msTimeout,
12169 VARIANT_BOOL *Done);
12170
12171 HRESULT (STDMETHODCALLTYPE *SpeakCompleteEvent)(
12172 ISpeechVoice *This,
12173 LONG *Handle);
12174
12175 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
12176 ISpeechVoice *This,
12177 const BSTR TypeOfUI,
12178 const VARIANT *ExtraData,
12179 VARIANT_BOOL *Supported);
12180
12181 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
12182 ISpeechVoice *This,
12183 LONG hWndParent,
12184 BSTR Title,
12185 const BSTR TypeOfUI,
12186 const VARIANT *ExtraData);
12187
12188 END_INTERFACE
12189} ISpeechVoiceVtbl;
12190
12191interface ISpeechVoice {
12192 CONST_VTBL ISpeechVoiceVtbl* lpVtbl;
12193};
12194
12195#ifdef COBJMACROS
12196#ifndef WIDL_C_INLINE_WRAPPERS
12197/*** IUnknown methods ***/
12198#define ISpeechVoice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12199#define ISpeechVoice_AddRef(This) (This)->lpVtbl->AddRef(This)
12200#define ISpeechVoice_Release(This) (This)->lpVtbl->Release(This)
12201/*** IDispatch methods ***/
12202#define ISpeechVoice_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12203#define ISpeechVoice_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12204#define ISpeechVoice_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12205#define ISpeechVoice_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12206/*** ISpeechVoice methods ***/
12207#define ISpeechVoice_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
12208#define ISpeechVoice_get_Voice(This,Voice) (This)->lpVtbl->get_Voice(This,Voice)
12209#define ISpeechVoice_putref_Voice(This,Voice) (This)->lpVtbl->putref_Voice(This,Voice)
12210#define ISpeechVoice_get_AudioOutput(This,AudioOutput) (This)->lpVtbl->get_AudioOutput(This,AudioOutput)
12211#define ISpeechVoice_putref_AudioOutput(This,AudioOutput) (This)->lpVtbl->putref_AudioOutput(This,AudioOutput)
12212#define ISpeechVoice_get_AudioOutputStream(This,AudioOutputStream) (This)->lpVtbl->get_AudioOutputStream(This,AudioOutputStream)
12213#define ISpeechVoice_putref_AudioOutputStream(This,AudioOutputStream) (This)->lpVtbl->putref_AudioOutputStream(This,AudioOutputStream)
12214#define ISpeechVoice_get_Rate(This,Rate) (This)->lpVtbl->get_Rate(This,Rate)
12215#define ISpeechVoice_put_Rate(This,Rate) (This)->lpVtbl->put_Rate(This,Rate)
12216#define ISpeechVoice_get_Volume(This,Volume) (This)->lpVtbl->get_Volume(This,Volume)
12217#define ISpeechVoice_put_Volume(This,Volume) (This)->lpVtbl->put_Volume(This,Volume)
12218#define ISpeechVoice_put_AllowAudioOutputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->put_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
12219#define ISpeechVoice_get_AllowAudioOutputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->get_AllowAudioOutputFormatChangesOnNextSet(This,Allow)
12220#define ISpeechVoice_get_EventInterests(This,EventInterestFlags) (This)->lpVtbl->get_EventInterests(This,EventInterestFlags)
12221#define ISpeechVoice_put_EventInterests(This,EventInterestFlags) (This)->lpVtbl->put_EventInterests(This,EventInterestFlags)
12222#define ISpeechVoice_put_Priority(This,Priority) (This)->lpVtbl->put_Priority(This,Priority)
12223#define ISpeechVoice_get_Priority(This,Priority) (This)->lpVtbl->get_Priority(This,Priority)
12224#define ISpeechVoice_put_AlertBoundary(This,Boundary) (This)->lpVtbl->put_AlertBoundary(This,Boundary)
12225#define ISpeechVoice_get_AlertBoundary(This,Boundary) (This)->lpVtbl->get_AlertBoundary(This,Boundary)
12226#define ISpeechVoice_put_SynchronousSpeakTimeout(This,msTimeout) (This)->lpVtbl->put_SynchronousSpeakTimeout(This,msTimeout)
12227#define ISpeechVoice_get_SynchronousSpeakTimeout(This,msTimeout) (This)->lpVtbl->get_SynchronousSpeakTimeout(This,msTimeout)
12228#define ISpeechVoice_Speak(This,Text,Flags,StreamNumber) (This)->lpVtbl->Speak(This,Text,Flags,StreamNumber)
12229#define ISpeechVoice_SpeakStream(This,Stream,Flags,StreamNumber) (This)->lpVtbl->SpeakStream(This,Stream,Flags,StreamNumber)
12230#define ISpeechVoice_Pause(This) (This)->lpVtbl->Pause(This)
12231#define ISpeechVoice_Resume(This) (This)->lpVtbl->Resume(This)
12232#define ISpeechVoice_Skip(This,Type,NumItems,NumSkipped) (This)->lpVtbl->Skip(This,Type,NumItems,NumSkipped)
12233#define ISpeechVoice_GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
12234#define ISpeechVoice_GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
12235#define ISpeechVoice_WaitUntilDone(This,msTimeout,Done) (This)->lpVtbl->WaitUntilDone(This,msTimeout,Done)
12236#define ISpeechVoice_SpeakCompleteEvent(This,Handle) (This)->lpVtbl->SpeakCompleteEvent(This,Handle)
12237#define ISpeechVoice_IsUISupported(This,TypeOfUI,ExtraData,Supported) (This)->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported)
12238#define ISpeechVoice_DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData) (This)->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
12239#else
12240/*** IUnknown methods ***/
12241static inline HRESULT ISpeechVoice_QueryInterface(ISpeechVoice* This,REFIID riid,void **ppvObject) {
12242 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12243}
12244static inline ULONG ISpeechVoice_AddRef(ISpeechVoice* This) {
12245 return This->lpVtbl->AddRef(This);
12246}
12247static inline ULONG ISpeechVoice_Release(ISpeechVoice* This) {
12248 return This->lpVtbl->Release(This);
12249}
12250/*** IDispatch methods ***/
12251static inline HRESULT ISpeechVoice_GetTypeInfoCount(ISpeechVoice* This,UINT *pctinfo) {
12252 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12253}
12254static inline HRESULT ISpeechVoice_GetTypeInfo(ISpeechVoice* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12255 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12256}
12257static inline HRESULT ISpeechVoice_GetIDsOfNames(ISpeechVoice* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12258 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12259}
12260static inline HRESULT ISpeechVoice_Invoke(ISpeechVoice* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12261 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12262}
12263/*** ISpeechVoice methods ***/
12264static inline HRESULT ISpeechVoice_get_Status(ISpeechVoice* This,ISpeechVoiceStatus **Status) {
12265 return This->lpVtbl->get_Status(This,Status);
12266}
12267static inline HRESULT ISpeechVoice_get_Voice(ISpeechVoice* This,ISpeechObjectToken **Voice) {
12268 return This->lpVtbl->get_Voice(This,Voice);
12269}
12270static inline HRESULT ISpeechVoice_putref_Voice(ISpeechVoice* This,ISpeechObjectToken *Voice) {
12271 return This->lpVtbl->putref_Voice(This,Voice);
12272}
12273static inline HRESULT ISpeechVoice_get_AudioOutput(ISpeechVoice* This,ISpeechObjectToken **AudioOutput) {
12274 return This->lpVtbl->get_AudioOutput(This,AudioOutput);
12275}
12276static inline HRESULT ISpeechVoice_putref_AudioOutput(ISpeechVoice* This,ISpeechObjectToken *AudioOutput) {
12277 return This->lpVtbl->putref_AudioOutput(This,AudioOutput);
12278}
12279static inline HRESULT ISpeechVoice_get_AudioOutputStream(ISpeechVoice* This,ISpeechBaseStream **AudioOutputStream) {
12280 return This->lpVtbl->get_AudioOutputStream(This,AudioOutputStream);
12281}
12282static inline HRESULT ISpeechVoice_putref_AudioOutputStream(ISpeechVoice* This,ISpeechBaseStream *AudioOutputStream) {
12283 return This->lpVtbl->putref_AudioOutputStream(This,AudioOutputStream);
12284}
12285static inline HRESULT ISpeechVoice_get_Rate(ISpeechVoice* This,LONG *Rate) {
12286 return This->lpVtbl->get_Rate(This,Rate);
12287}
12288static inline HRESULT ISpeechVoice_put_Rate(ISpeechVoice* This,LONG Rate) {
12289 return This->lpVtbl->put_Rate(This,Rate);
12290}
12291static inline HRESULT ISpeechVoice_get_Volume(ISpeechVoice* This,LONG *Volume) {
12292 return This->lpVtbl->get_Volume(This,Volume);
12293}
12294static inline HRESULT ISpeechVoice_put_Volume(ISpeechVoice* This,LONG Volume) {
12295 return This->lpVtbl->put_Volume(This,Volume);
12296}
12297static inline HRESULT ISpeechVoice_put_AllowAudioOutputFormatChangesOnNextSet(ISpeechVoice* This,VARIANT_BOOL Allow) {
12298 return This->lpVtbl->put_AllowAudioOutputFormatChangesOnNextSet(This,Allow);
12299}
12300static inline HRESULT ISpeechVoice_get_AllowAudioOutputFormatChangesOnNextSet(ISpeechVoice* This,VARIANT_BOOL *Allow) {
12301 return This->lpVtbl->get_AllowAudioOutputFormatChangesOnNextSet(This,Allow);
12302}
12303static inline HRESULT ISpeechVoice_get_EventInterests(ISpeechVoice* This,SpeechVoiceEvents *EventInterestFlags) {
12304 return This->lpVtbl->get_EventInterests(This,EventInterestFlags);
12305}
12306static inline HRESULT ISpeechVoice_put_EventInterests(ISpeechVoice* This,SpeechVoiceEvents EventInterestFlags) {
12307 return This->lpVtbl->put_EventInterests(This,EventInterestFlags);
12308}
12309static inline HRESULT ISpeechVoice_put_Priority(ISpeechVoice* This,SpeechVoicePriority Priority) {
12310 return This->lpVtbl->put_Priority(This,Priority);
12311}
12312static inline HRESULT ISpeechVoice_get_Priority(ISpeechVoice* This,SpeechVoicePriority *Priority) {
12313 return This->lpVtbl->get_Priority(This,Priority);
12314}
12315static inline HRESULT ISpeechVoice_put_AlertBoundary(ISpeechVoice* This,SpeechVoiceEvents Boundary) {
12316 return This->lpVtbl->put_AlertBoundary(This,Boundary);
12317}
12318static inline HRESULT ISpeechVoice_get_AlertBoundary(ISpeechVoice* This,SpeechVoiceEvents *Boundary) {
12319 return This->lpVtbl->get_AlertBoundary(This,Boundary);
12320}
12321static inline HRESULT ISpeechVoice_put_SynchronousSpeakTimeout(ISpeechVoice* This,LONG msTimeout) {
12322 return This->lpVtbl->put_SynchronousSpeakTimeout(This,msTimeout);
12323}
12324static inline HRESULT ISpeechVoice_get_SynchronousSpeakTimeout(ISpeechVoice* This,LONG *msTimeout) {
12325 return This->lpVtbl->get_SynchronousSpeakTimeout(This,msTimeout);
12326}
12327static inline HRESULT ISpeechVoice_Speak(ISpeechVoice* This,BSTR Text,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
12328 return This->lpVtbl->Speak(This,Text,Flags,StreamNumber);
12329}
12330static inline HRESULT ISpeechVoice_SpeakStream(ISpeechVoice* This,ISpeechBaseStream *Stream,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
12331 return This->lpVtbl->SpeakStream(This,Stream,Flags,StreamNumber);
12332}
12333static inline HRESULT ISpeechVoice_Pause(ISpeechVoice* This) {
12334 return This->lpVtbl->Pause(This);
12335}
12336static inline HRESULT ISpeechVoice_Resume(ISpeechVoice* This) {
12337 return This->lpVtbl->Resume(This);
12338}
12339static inline HRESULT ISpeechVoice_Skip(ISpeechVoice* This,const BSTR Type,LONG NumItems,LONG *NumSkipped) {
12340 return This->lpVtbl->Skip(This,Type,NumItems,NumSkipped);
12341}
12342static inline HRESULT ISpeechVoice_GetVoices(ISpeechVoice* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
12343 return This->lpVtbl->GetVoices(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
12344}
12345static inline HRESULT ISpeechVoice_GetAudioOutputs(ISpeechVoice* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
12346 return This->lpVtbl->GetAudioOutputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
12347}
12348static inline HRESULT ISpeechVoice_WaitUntilDone(ISpeechVoice* This,LONG msTimeout,VARIANT_BOOL *Done) {
12349 return This->lpVtbl->WaitUntilDone(This,msTimeout,Done);
12350}
12351static inline HRESULT ISpeechVoice_SpeakCompleteEvent(ISpeechVoice* This,LONG *Handle) {
12352 return This->lpVtbl->SpeakCompleteEvent(This,Handle);
12353}
12354static inline HRESULT ISpeechVoice_IsUISupported(ISpeechVoice* This,const BSTR TypeOfUI,const VARIANT *ExtraData,VARIANT_BOOL *Supported) {
12355 return This->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported);
12356}
12357static inline HRESULT ISpeechVoice_DisplayUI(ISpeechVoice* This,LONG hWndParent,BSTR Title,const BSTR TypeOfUI,const VARIANT *ExtraData) {
12358 return This->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData);
12359}
12360#endif
12361#endif
12362
12363#endif
12364
12365
12366#endif /* __ISpeechVoice_INTERFACE_DEFINED__ */
12367
12368/*****************************************************************************
12369 * ISpeechVoiceStatus interface
12370 */
12371#ifndef __ISpeechVoiceStatus_INTERFACE_DEFINED__
12372#define __ISpeechVoiceStatus_INTERFACE_DEFINED__
12373
12374DEFINE_GUID(IID_ISpeechVoiceStatus, 0x8be47b07, 0x57f6, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96);
12375#if defined(__cplusplus) && !defined(CINTERFACE)
12376MIDL_INTERFACE("8be47b07-57f6-11d2-9eee-00c04f797396")
12377ISpeechVoiceStatus : public IDispatch
12378{
12379 virtual HRESULT STDMETHODCALLTYPE get_CurrentStreamNumber(
12380 LONG *StreamNumber) = 0;
12381
12382 virtual HRESULT STDMETHODCALLTYPE get_LastStreamNumberQueued(
12383 LONG *StreamNumber) = 0;
12384
12385 virtual HRESULT STDMETHODCALLTYPE get_LastHResult(
12386 LONG *HResult) = 0;
12387
12388 virtual HRESULT STDMETHODCALLTYPE get_RunningState(
12389 SpeechRunState *State) = 0;
12390
12391 virtual HRESULT STDMETHODCALLTYPE get_InputWordPosition(
12392 LONG *Position) = 0;
12393
12394 virtual HRESULT STDMETHODCALLTYPE get_InputWordLength(
12395 LONG *Length) = 0;
12396
12397 virtual HRESULT STDMETHODCALLTYPE get_InputSentencePosition(
12398 LONG *Position) = 0;
12399
12400 virtual HRESULT STDMETHODCALLTYPE get_InputSentenceLength(
12401 LONG *Length) = 0;
12402
12403 virtual HRESULT STDMETHODCALLTYPE get_LastBookmark(
12404 BSTR *Bookmark) = 0;
12405
12406 virtual HRESULT STDMETHODCALLTYPE get_LastBookmarkId(
12407 LONG *BookmarkId) = 0;
12408
12409 virtual HRESULT STDMETHODCALLTYPE get_PhonemeId(
12410 short *PhoneId) = 0;
12411
12412 virtual HRESULT STDMETHODCALLTYPE get_VisemeId(
12413 short *VisemeId) = 0;
12414
12415};
12416#ifdef __CRT_UUID_DECL
12417__CRT_UUID_DECL(ISpeechVoiceStatus, 0x8be47b07, 0x57f6, 0x11d2, 0x9e,0xee, 0x00,0xc0,0x4f,0x79,0x73,0x96)
12418#endif
12419#else
12420typedef struct ISpeechVoiceStatusVtbl {
12421 BEGIN_INTERFACE
12422
12423 /*** IUnknown methods ***/
12424 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12425 ISpeechVoiceStatus *This,
12426 REFIID riid,
12427 void **ppvObject);
12428
12429 ULONG (STDMETHODCALLTYPE *AddRef)(
12430 ISpeechVoiceStatus *This);
12431
12432 ULONG (STDMETHODCALLTYPE *Release)(
12433 ISpeechVoiceStatus *This);
12434
12435 /*** IDispatch methods ***/
12436 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12437 ISpeechVoiceStatus *This,
12438 UINT *pctinfo);
12439
12440 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12441 ISpeechVoiceStatus *This,
12442 UINT iTInfo,
12443 LCID lcid,
12444 ITypeInfo **ppTInfo);
12445
12446 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12447 ISpeechVoiceStatus *This,
12448 REFIID riid,
12449 LPOLESTR *rgszNames,
12450 UINT cNames,
12451 LCID lcid,
12452 DISPID *rgDispId);
12453
12454 HRESULT (STDMETHODCALLTYPE *Invoke)(
12455 ISpeechVoiceStatus *This,
12456 DISPID dispIdMember,
12457 REFIID riid,
12458 LCID lcid,
12459 WORD wFlags,
12460 DISPPARAMS *pDispParams,
12461 VARIANT *pVarResult,
12462 EXCEPINFO *pExcepInfo,
12463 UINT *puArgErr);
12464
12465 /*** ISpeechVoiceStatus methods ***/
12466 HRESULT (STDMETHODCALLTYPE *get_CurrentStreamNumber)(
12467 ISpeechVoiceStatus *This,
12468 LONG *StreamNumber);
12469
12470 HRESULT (STDMETHODCALLTYPE *get_LastStreamNumberQueued)(
12471 ISpeechVoiceStatus *This,
12472 LONG *StreamNumber);
12473
12474 HRESULT (STDMETHODCALLTYPE *get_LastHResult)(
12475 ISpeechVoiceStatus *This,
12476 LONG *HResult);
12477
12478 HRESULT (STDMETHODCALLTYPE *get_RunningState)(
12479 ISpeechVoiceStatus *This,
12480 SpeechRunState *State);
12481
12482 HRESULT (STDMETHODCALLTYPE *get_InputWordPosition)(
12483 ISpeechVoiceStatus *This,
12484 LONG *Position);
12485
12486 HRESULT (STDMETHODCALLTYPE *get_InputWordLength)(
12487 ISpeechVoiceStatus *This,
12488 LONG *Length);
12489
12490 HRESULT (STDMETHODCALLTYPE *get_InputSentencePosition)(
12491 ISpeechVoiceStatus *This,
12492 LONG *Position);
12493
12494 HRESULT (STDMETHODCALLTYPE *get_InputSentenceLength)(
12495 ISpeechVoiceStatus *This,
12496 LONG *Length);
12497
12498 HRESULT (STDMETHODCALLTYPE *get_LastBookmark)(
12499 ISpeechVoiceStatus *This,
12500 BSTR *Bookmark);
12501
12502 HRESULT (STDMETHODCALLTYPE *get_LastBookmarkId)(
12503 ISpeechVoiceStatus *This,
12504 LONG *BookmarkId);
12505
12506 HRESULT (STDMETHODCALLTYPE *get_PhonemeId)(
12507 ISpeechVoiceStatus *This,
12508 short *PhoneId);
12509
12510 HRESULT (STDMETHODCALLTYPE *get_VisemeId)(
12511 ISpeechVoiceStatus *This,
12512 short *VisemeId);
12513
12514 END_INTERFACE
12515} ISpeechVoiceStatusVtbl;
12516
12517interface ISpeechVoiceStatus {
12518 CONST_VTBL ISpeechVoiceStatusVtbl* lpVtbl;
12519};
12520
12521#ifdef COBJMACROS
12522#ifndef WIDL_C_INLINE_WRAPPERS
12523/*** IUnknown methods ***/
12524#define ISpeechVoiceStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12525#define ISpeechVoiceStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
12526#define ISpeechVoiceStatus_Release(This) (This)->lpVtbl->Release(This)
12527/*** IDispatch methods ***/
12528#define ISpeechVoiceStatus_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12529#define ISpeechVoiceStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12530#define ISpeechVoiceStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12531#define ISpeechVoiceStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12532/*** ISpeechVoiceStatus methods ***/
12533#define ISpeechVoiceStatus_get_CurrentStreamNumber(This,StreamNumber) (This)->lpVtbl->get_CurrentStreamNumber(This,StreamNumber)
12534#define ISpeechVoiceStatus_get_LastStreamNumberQueued(This,StreamNumber) (This)->lpVtbl->get_LastStreamNumberQueued(This,StreamNumber)
12535#define ISpeechVoiceStatus_get_LastHResult(This,HResult) (This)->lpVtbl->get_LastHResult(This,HResult)
12536#define ISpeechVoiceStatus_get_RunningState(This,State) (This)->lpVtbl->get_RunningState(This,State)
12537#define ISpeechVoiceStatus_get_InputWordPosition(This,Position) (This)->lpVtbl->get_InputWordPosition(This,Position)
12538#define ISpeechVoiceStatus_get_InputWordLength(This,Length) (This)->lpVtbl->get_InputWordLength(This,Length)
12539#define ISpeechVoiceStatus_get_InputSentencePosition(This,Position) (This)->lpVtbl->get_InputSentencePosition(This,Position)
12540#define ISpeechVoiceStatus_get_InputSentenceLength(This,Length) (This)->lpVtbl->get_InputSentenceLength(This,Length)
12541#define ISpeechVoiceStatus_get_LastBookmark(This,Bookmark) (This)->lpVtbl->get_LastBookmark(This,Bookmark)
12542#define ISpeechVoiceStatus_get_LastBookmarkId(This,BookmarkId) (This)->lpVtbl->get_LastBookmarkId(This,BookmarkId)
12543#define ISpeechVoiceStatus_get_PhonemeId(This,PhoneId) (This)->lpVtbl->get_PhonemeId(This,PhoneId)
12544#define ISpeechVoiceStatus_get_VisemeId(This,VisemeId) (This)->lpVtbl->get_VisemeId(This,VisemeId)
12545#else
12546/*** IUnknown methods ***/
12547static inline HRESULT ISpeechVoiceStatus_QueryInterface(ISpeechVoiceStatus* This,REFIID riid,void **ppvObject) {
12548 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12549}
12550static inline ULONG ISpeechVoiceStatus_AddRef(ISpeechVoiceStatus* This) {
12551 return This->lpVtbl->AddRef(This);
12552}
12553static inline ULONG ISpeechVoiceStatus_Release(ISpeechVoiceStatus* This) {
12554 return This->lpVtbl->Release(This);
12555}
12556/*** IDispatch methods ***/
12557static inline HRESULT ISpeechVoiceStatus_GetTypeInfoCount(ISpeechVoiceStatus* This,UINT *pctinfo) {
12558 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12559}
12560static inline HRESULT ISpeechVoiceStatus_GetTypeInfo(ISpeechVoiceStatus* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12561 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12562}
12563static inline HRESULT ISpeechVoiceStatus_GetIDsOfNames(ISpeechVoiceStatus* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12564 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12565}
12566static inline HRESULT ISpeechVoiceStatus_Invoke(ISpeechVoiceStatus* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12567 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12568}
12569/*** ISpeechVoiceStatus methods ***/
12570static inline HRESULT ISpeechVoiceStatus_get_CurrentStreamNumber(ISpeechVoiceStatus* This,LONG *StreamNumber) {
12571 return This->lpVtbl->get_CurrentStreamNumber(This,StreamNumber);
12572}
12573static inline HRESULT ISpeechVoiceStatus_get_LastStreamNumberQueued(ISpeechVoiceStatus* This,LONG *StreamNumber) {
12574 return This->lpVtbl->get_LastStreamNumberQueued(This,StreamNumber);
12575}
12576static inline HRESULT ISpeechVoiceStatus_get_LastHResult(ISpeechVoiceStatus* This,LONG *HResult) {
12577 return This->lpVtbl->get_LastHResult(This,HResult);
12578}
12579static inline HRESULT ISpeechVoiceStatus_get_RunningState(ISpeechVoiceStatus* This,SpeechRunState *State) {
12580 return This->lpVtbl->get_RunningState(This,State);
12581}
12582static inline HRESULT ISpeechVoiceStatus_get_InputWordPosition(ISpeechVoiceStatus* This,LONG *Position) {
12583 return This->lpVtbl->get_InputWordPosition(This,Position);
12584}
12585static inline HRESULT ISpeechVoiceStatus_get_InputWordLength(ISpeechVoiceStatus* This,LONG *Length) {
12586 return This->lpVtbl->get_InputWordLength(This,Length);
12587}
12588static inline HRESULT ISpeechVoiceStatus_get_InputSentencePosition(ISpeechVoiceStatus* This,LONG *Position) {
12589 return This->lpVtbl->get_InputSentencePosition(This,Position);
12590}
12591static inline HRESULT ISpeechVoiceStatus_get_InputSentenceLength(ISpeechVoiceStatus* This,LONG *Length) {
12592 return This->lpVtbl->get_InputSentenceLength(This,Length);
12593}
12594static inline HRESULT ISpeechVoiceStatus_get_LastBookmark(ISpeechVoiceStatus* This,BSTR *Bookmark) {
12595 return This->lpVtbl->get_LastBookmark(This,Bookmark);
12596}
12597static inline HRESULT ISpeechVoiceStatus_get_LastBookmarkId(ISpeechVoiceStatus* This,LONG *BookmarkId) {
12598 return This->lpVtbl->get_LastBookmarkId(This,BookmarkId);
12599}
12600static inline HRESULT ISpeechVoiceStatus_get_PhonemeId(ISpeechVoiceStatus* This,short *PhoneId) {
12601 return This->lpVtbl->get_PhonemeId(This,PhoneId);
12602}
12603static inline HRESULT ISpeechVoiceStatus_get_VisemeId(ISpeechVoiceStatus* This,short *VisemeId) {
12604 return This->lpVtbl->get_VisemeId(This,VisemeId);
12605}
12606#endif
12607#endif
12608
12609#endif
12610
12611
12612#endif /* __ISpeechVoiceStatus_INTERFACE_DEFINED__ */
12613
12614typedef enum SpeechVisemeType {
12615 SVP_0 = 0,
12616 SVP_1 = 1,
12617 SVP_2 = 2,
12618 SVP_3 = 3,
12619 SVP_4 = 4,
12620 SVP_5 = 5,
12621 SVP_6 = 6,
12622 SVP_7 = 7,
12623 SVP_8 = 8,
12624 SVP_9 = 9,
12625 SVP_10 = 10,
12626 SVP_11 = 11,
12627 SVP_12 = 12,
12628 SVP_13 = 13,
12629 SVP_14 = 14,
12630 SVP_15 = 15,
12631 SVP_16 = 16,
12632 SVP_17 = 17,
12633 SVP_18 = 18,
12634 SVP_19 = 19,
12635 SVP_20 = 20,
12636 SVP_21 = 21
12637} SpeechVisemeType;
12638typedef enum SpeechVisemeFeature {
12639 SVF_None = 0,
12640 SVF_Stressed = SPVFEATURE_STRESSED,
12641 SVF_Emphasis = SPVFEATURE_EMPHASIS
12642} SpeechVisemeFeature;
12643typedef enum DISPID_SpeechVoiceEvent {
12644 DISPID_SVEStreamStart = 1,
12645 DISPID_SVEStreamEnd = 2,
12646 DISPID_SVEVoiceChange = 3,
12647 DISPID_SVEBookmark = 4,
12648 DISPID_SVEWord = 5,
12649 DISPID_SVEPhoneme = 6,
12650 DISPID_SVESentenceBoundary = 7,
12651 DISPID_SVEViseme = 8,
12652 DISPID_SVEAudioLevel = 9,
12653 DISPID_SVEEnginePrivate = 10
12654} DISPID_SpeechVoiceEvent;
12655typedef enum DISPID_SpeechRecognizer {
12656 DISPID_SRRecognizer = 1,
12657 DISPID_SRAllowAudioInputFormatChangesOnNextSet = 2,
12658 DISPID_SRAudioInput = 3,
12659 DISPID_SRAudioInputStream = 4,
12660 DISPID_SRIsShared = 5,
12661 DISPID_SRState = 6,
12662 DISPID_SRStatus = 7,
12663 DISPID_SRProfile = 8,
12664 DISPID_SREmulateRecognition = 9,
12665 DISPID_SRCreateRecoContext = 10,
12666 DISPID_SRGetFormat = 11,
12667 DISPID_SRSetPropertyNumber = 12,
12668 DISPID_SRGetPropertyNumber = 13,
12669 DISPID_SRSetPropertyString = 14,
12670 DISPID_SRGetPropertyString = 15,
12671 DISPID_SRIsUISupported = 16,
12672 DISPID_SRDisplayUI = 17,
12673 DISPID_SRGetRecognizers = 18,
12674 DISPID_SVGetAudioInputs = 19,
12675 DISPID_SVGetProfiles = 20
12676} DISPID_SpeechRecognizer;
12677typedef enum SpeechRecognizerState {
12678 SRSInactive = SPRST_INACTIVE,
12679 SRSActive = SPRST_ACTIVE,
12680 SRSActiveAlways = SPRST_ACTIVE_ALWAYS,
12681 SRSInactiveWithPurge = SPRST_INACTIVE_WITH_PURGE
12682} SpeechRecognizerState;
12683typedef enum SpeechDisplayAttributes {
12684 SDA_No_Trailing_Space = 0,
12685 SDA_One_Trailing_Space = SPAF_ONE_TRAILING_SPACE,
12686 SDA_Two_Trailing_Spaces = SPAF_TWO_TRAILING_SPACES,
12687 SDA_Consume_Leading_Spaces = SPAF_CONSUME_LEADING_SPACES
12688} SpeechDisplayAttributes;
12689typedef enum SpeechFormatType {
12690 SFTInput = SPWF_INPUT,
12691 SFTSREngine = SPWF_SRENGINE
12692} SpeechFormatType;
12693typedef enum DISPID_SpeechRecognizerStatus {
12694 DISPID_SRSAudioStatus = 1,
12695 DISPID_SRSCurrentStreamPosition = 2,
12696 DISPID_SRSCurrentStreamNumber = 3,
12697 DISPID_SRSNumberOfActiveRules = 4,
12698 DISPID_SRSClsidEngine = 5,
12699 DISPID_SRSSupportedLanguages = 6
12700} DISPID_SpeechRecognizerStatus;
12701typedef enum DISPID_SpeechRecoContext {
12702 DISPID_SRCRecognizer = 1,
12703 DISPID_SRCAudioInInterferenceStatus = 2,
12704 DISPID_SRCRequestedUIType = 3,
12705 DISPID_SRCVoice = 4,
12706 DISPID_SRAllowVoiceFormatMatchingOnNextSet = 5,
12707 DISPID_SRCVoicePurgeEvent = 6,
12708 DISPID_SRCEventInterests = 7,
12709 DISPID_SRCCmdMaxAlternates = 8,
12710 DISPID_SRCState = 9,
12711 DISPID_SRCRetainedAudio = 10,
12712 DISPID_SRCRetainedAudioFormat = 11,
12713 DISPID_SRCPause = 12,
12714 DISPID_SRCResume = 13,
12715 DISPID_SRCCreateGrammar = 14,
12716 DISPID_SRCCreateResultFromMemory = 15,
12717 DISPID_SRCBookmark = 16,
12718 DISPID_SRCSetAdaptationData = 17
12719} DISPID_SpeechRecoContext;
12720typedef enum SpeechRetainedAudioOptions {
12721 SRAONone = SPAO_NONE,
12722 SRAORetainAudio = SPAO_RETAIN_AUDIO
12723} SpeechRetainedAudioOptions;
12724typedef enum SpeechBookmarkOptions {
12725 SBONone = SPBO_NONE,
12726 SBOPause = SPBO_PAUSE
12727} SpeechBookmarkOptions;
12728typedef enum SpeechInterference {
12729 SINone = SPINTERFERENCE_NONE,
12730 SINoise = SPINTERFERENCE_NOISE,
12731 SINoSignal = SPINTERFERENCE_NOSIGNAL,
12732 SITooLoud = SPINTERFERENCE_TOOLOUD,
12733 SITooQuiet = SPINTERFERENCE_TOOQUIET,
12734 SITooFast = SPINTERFERENCE_TOOFAST,
12735 SITooSlow = SPINTERFERENCE_TOOSLOW
12736} SpeechInterference;
12737typedef enum SpeechRecoEvents {
12738 SREStreamEnd = 0x1,
12739 SRESoundStart = 0x2,
12740 SRESoundEnd = 0x4,
12741 SREPhraseStart = 0x8,
12742 SRERecognition = 0x10,
12743 SREHypothesis = 0x20,
12744 SREBookmark = 0x40,
12745 SREPropertyNumChange = 0x80,
12746 SREPropertyStringChange = 0x100,
12747 SREFalseRecognition = 0x200,
12748 SREInterference = 0x400,
12749 SRERequestUI = 0x800,
12750 SREStateChange = 0x1000,
12751 SREAdaptation = 0x2000,
12752 SREStreamStart = 0x4000,
12753 SRERecoOtherContext = 0x8000,
12754 SREAudioLevel = 0x10000,
12755 SREPrivate = 0x40000,
12756 SREAllEvents = 0x5ffff
12757} SpeechRecoEvents;
12758typedef enum SpeechRecoContextState {
12759 SRCS_Disabled = SPCS_DISABLED,
12760 SRCS_Enabled = SPCS_ENABLED
12761} SpeechRecoContextState;
12762typedef enum DISPIDSPRG {
12763 DISPID_SRGId = 1,
12764 DISPID_SRGRecoContext = 2,
12765 DISPID_SRGState = 3,
12766 DISPID_SRGRules = 4,
12767 DISPID_SRGReset = 5,
12768 DISPID_SRGCommit = 6,
12769 DISPID_SRGCmdLoadFromFile = 7,
12770 DISPID_SRGCmdLoadFromObject = 8,
12771 DISPID_SRGCmdLoadFromResource = 9,
12772 DISPID_SRGCmdLoadFromMemory = 10,
12773 DISPID_SRGCmdLoadFromProprietaryGrammar = 11,
12774 DISPID_SRGCmdSetRuleState = 12,
12775 DISPID_SRGCmdSetRuleIdState = 13,
12776 DISPID_SRGDictationLoad = 14,
12777 DISPID_SRGDictationUnload = 15,
12778 DISPID_SRGDictationSetState = 16,
12779 DISPID_SRGSetWordSequenceData = 17,
12780 DISPID_SRGSetTextSelection = 18,
12781 DISPID_SRGIsPronounceable = 19
12782} DISPIDSPRG;
12783typedef enum SpeechLoadOption {
12784 SLOStatic = SPLO_STATIC,
12785 SLODynamic = SPLO_DYNAMIC
12786} SpeechLoadOption;
12787typedef enum SpeechWordPronounceable {
12788 SWPUnknownWordUnpronounceable = SPWP_UNKNOWN_WORD_UNPRONOUNCEABLE,
12789 SWPUnknownWordPronounceable = SPWP_UNKNOWN_WORD_PRONOUNCEABLE,
12790 SWPKnownWordPronounceable = SPWP_KNOWN_WORD_PRONOUNCEABLE
12791} SpeechWordPronounceable;
12792typedef enum SpeechGrammarState {
12793 SGSEnabled = SPGS_ENABLED,
12794 SGSDisabled = SPGS_DISABLED,
12795 SGSExclusive = SPGS_EXCLUSIVE
12796} SpeechGrammarState;
12797typedef enum SpeechRuleState {
12798 SGDSInactive = SPRS_INACTIVE,
12799 SGDSActive = SPRS_ACTIVE,
12800 SGDSActiveWithAutoPause = SPRS_ACTIVE_WITH_AUTO_PAUSE
12801} SpeechRuleState;
12802typedef enum SpeechRuleAttributes {
12803 SRATopLevel = SPRAF_TopLevel,
12804 SRADefaultToActive = SPRAF_Active,
12805 SRAExport = SPRAF_Export,
12806 SRAImport = SPRAF_Import,
12807 SRAInterpreter = SPRAF_Interpreter,
12808 SRADynamic = SPRAF_Dynamic
12809} SpeechRuleAttributes;
12810typedef enum SpeechGrammarWordType {
12811 SGDisplay = SPWT_DISPLAY,
12812 SGLexical = SPWT_LEXICAL,
12813 SGPronounciation = SPWT_PRONUNCIATION
12814} SpeechGrammarWordType;
12815typedef enum DISPID_SpeechRecoContextEvents {
12816 DISPID_SRCEStartStream = 1,
12817 DISPID_SRCEEndStream = 2,
12818 DISPID_SRCEBookmark = 3,
12819 DISPID_SRCESoundStart = 4,
12820 DISPID_SRCESoundEnd = 5,
12821 DISPID_SRCEPhraseStart = 6,
12822 DISPID_SRCERecognition = 7,
12823 DISPID_SRCEHypothesis = 8,
12824 DISPID_SRCEPropertyNumberChange = 9,
12825 DISPID_SRCEPropertyStringChange = 10,
12826 DISPID_SRCEFalseRecognition = 11,
12827 DISPID_SRCEInterference = 12,
12828 DISPID_SRCERequestUI = 13,
12829 DISPID_SRCERecognizerStateChange = 14,
12830 DISPID_SRCEAdaptation = 15,
12831 DISPID_SRCERecognitionForOtherContext = 16,
12832 DISPID_SRCEAudioLevel = 17,
12833 DISPID_SRCEEnginePrivate = 18
12834} DISPID_SpeechRecoContextEvents;
12835typedef enum SpeechRecognitionType {
12836 SRTStandard = 0,
12837 SRTAutopause = SPREF_AutoPause,
12838 SRTEmulated = SPREF_Emulated
12839} SpeechRecognitionType;
12840typedef enum DISPID_SpeechGrammarRule {
12841 DISPID_SGRAttributes = 1,
12842 DISPID_SGRInitialState = 2,
12843 DISPID_SGRName = 3,
12844 DISPID_SGRId = 4,
12845 DISPID_SGRClear = 5,
12846 DISPID_SGRAddResource = 6,
12847 DISPID_SGRAddState = 7
12848} DISPID_SpeechGrammarRule;
12849typedef enum DISPID_SpeechGrammarRules {
12850 DISPID_SGRsCount = 1,
12851 DISPID_SGRsDynamic = 2,
12852 DISPID_SGRsAdd = 3,
12853 DISPID_SGRsCommit = 4,
12854 DISPID_SGRsCommitAndSave = 5,
12855 DISPID_SGRsFindRule = 6,
12856 DISPID_SGRsItem = DISPID_VALUE,
12857 DISPID_SGRs_NewEnum = DISPID_NEWENUM
12858} DISPID_SpeechGrammarRules;
12859typedef enum DISPID_SpeechGrammarRuleState {
12860 DISPID_SGRSRule = 1,
12861 DISPID_SGRSTransitions = 2,
12862 DISPID_SGRSAddWordTransition = 3,
12863 DISPID_SGRSAddRuleTransition = 4,
12864 DISPID_SGRSAddSpecialTransition = 5
12865} DISPID_SpeechGrammarRuleState;
12866typedef enum SpeechSpecialTransitionType {
12867 SSTTWildcard = 1,
12868 SSTTDictation = 2,
12869 SSTTTextBuffer = 3
12870} SpeechSpecialTransitionType;
12871typedef enum DISPID_SpeechGrammarRuleStateTransitions {
12872 DISPID_SGRSTsCount = 1,
12873 DISPID_SGRSTsItem = DISPID_VALUE,
12874 DISPID_SGRSTs_NewEnum = DISPID_NEWENUM
12875} DISPID_SpeechGrammarRuleStateTransitions;
12876typedef enum DISPID_SpeechGrammarRuleStateTransition {
12877 DISPID_SGRSTType = 1,
12878 DISPID_SGRSTText = 2,
12879 DISPID_SGRSTRule = 3,
12880 DISPID_SGRSTWeight = 4,
12881 DISPID_SGRSTPropertyName = 5,
12882 DISPID_SGRSTPropertyId = 6,
12883 DISPID_SGRSTPropertyValue = 7,
12884 DISPID_SGRSTNextState = 8
12885} DISPID_SpeechGrammarRuleStateTransition;
12886typedef enum SpeechGrammarRuleStateTransitionType {
12887 SGRSTTEpsilon = 0,
12888 SGRSTTWord = 1,
12889 SGRSTTRule = 2,
12890 SGRSTTDictation = 3,
12891 SGRSTTWildcard = 4,
12892 SGRSTTTextBuffer = 5
12893} SpeechGrammarRuleStateTransitionType;
12894typedef enum DISPIDSPTSI {
12895 DISPIDSPTSI_ActiveOffset = 1,
12896 DISPIDSPTSI_ActiveLength = 2,
12897 DISPIDSPTSI_SelectionOffset = 3,
12898 DISPIDSPTSI_SelectionLength = 4
12899} DISPIDSPTSI;
12900typedef enum DISPID_SpeechRecoResult {
12901 DISPID_SRRRecoContext = 1,
12902 DISPID_SRRTimes = 2,
12903 DISPID_SRRAudioFormat = 3,
12904 DISPID_SRRPhraseInfo = 4,
12905 DISPID_SRRAlternates = 5,
12906 DISPID_SRRAudio = 6,
12907 DISPID_SRRSpeakAudio = 7,
12908 DISPID_SRRSaveToMemory = 8,
12909 DISPID_SRRDiscardResultInfo = 9
12910} DISPID_SpeechRecoResult;
12911typedef enum SpeechDiscardType {
12912 SDTProperty = SPDF_PROPERTY,
12913 SDTReplacement = SPDF_REPLACEMENT,
12914 SDTRule = SPDF_RULE,
12915 SDTDisplayText = SPDF_DISPLAYTEXT,
12916 SDTLexicalForm = SPDF_LEXICALFORM,
12917 SDTPronunciation = SPDF_PRONUNCIATION,
12918 SDTAudio = SPDF_AUDIO,
12919 SDTAlternates = SPDF_ALTERNATES,
12920 SDTAll = SPDF_ALL
12921} SpeechDiscardType;
12922typedef enum DISPID_SpeechPhraseBuilder {
12923 DISPID_SPPBRestorePhraseFromMemory = 1
12924} DISPID_SpeechPhraseBuilder;
12925typedef enum DISPID_SpeechRecoResultTimes {
12926 DISPID_SRRTStreamTime = 1,
12927 DISPID_SRRTLength = 2,
12928 DISPID_SRRTTickCount = 3,
12929 DISPID_SRRTOffsetFromStart = 4
12930} DISPID_SpeechRecoResultTimes;
12931typedef enum DISPID_SpeechPhraseAlternate {
12932 DISPID_SPARecoResult = 1,
12933 DISPID_SPAStartElementInResult = 2,
12934 DISPID_SPANumberOfElementsInResult = 3,
12935 DISPID_SPAPhraseInfo = 4,
12936 DISPID_SPACommit = 5
12937} DISPID_SpeechPhraseAlternate;
12938typedef enum DISPID_SpeechPhraseAlternates {
12939 DISPID_SPAsCount = 1,
12940 DISPID_SPAsItem = DISPID_VALUE,
12941 DISPID_SPAs_NewEnum = DISPID_NEWENUM
12942} DISPID_SpeechPhraseAlternates;
12943typedef enum DISPID_SpeechPhraseInfo {
12944 DISPID_SPILanguageId = 1,
12945 DISPID_SPIGrammarId = 2,
12946 DISPID_SPIStartTime = 3,
12947 DISPID_SPIAudioStreamPosition = 4,
12948 DISPID_SPIAudioSizeBytes = 5,
12949 DISPID_SPIRetainedSizeBytes = 6,
12950 DISPID_SPIAudioSizeTime = 7,
12951 DISPID_SPIRule = 8,
12952 DISPID_SPIProperties = 9,
12953 DISPID_SPIElements = 10,
12954 DISPID_SPIReplacements = 11,
12955 DISPID_SPIEngineId = 12,
12956 DISPID_SPIEnginePrivateData = 13,
12957 DISPID_SPISaveToMemory = 14,
12958 DISPID_SPIGetText = 15,
12959 DISPID_SPIGetDisplayAttributes = 16
12960} DISPID_SpeechPhraseInfo;
12961typedef enum DISPID_SpeechPhraseElement {
12962 DISPID_SPEAudioTimeOffset = 1,
12963 DISPID_SPEAudioSizeTime = 2,
12964 DISPID_SPEAudioStreamOffset = 3,
12965 DISPID_SPEAudioSizeBytes = 4,
12966 DISPID_SPERetainedStreamOffset = 5,
12967 DISPID_SPERetainedSizeBytes = 6,
12968 DISPID_SPEDisplayText = 7,
12969 DISPID_SPELexicalForm = 8,
12970 DISPID_SPEPronunciation = 9,
12971 DISPID_SPEDisplayAttributes = 10,
12972 DISPID_SPERequiredConfidence = 11,
12973 DISPID_SPEActualConfidence = 12,
12974 DISPID_SPEEngineConfidence = 13
12975} DISPID_SpeechPhraseElement;
12976typedef enum SpeechEngineConfidence {
12977 SECLowConfidence = -1,
12978 SECNormalConfidence = 0,
12979 SECHighConfidence = 1
12980} SpeechEngineConfidence;
12981typedef enum DISPID_SpeechPhraseElements {
12982 DISPID_SPEsCount = 1,
12983 DISPID_SPEsItem = DISPID_VALUE,
12984 DISPID_SPEs_NewEnum = DISPID_NEWENUM
12985} DISPID_SpeechPhraseElements;
12986typedef enum DISPID_SpeechPhraseReplacement {
12987 DISPID_SPRDisplayAttributes = 1,
12988 DISPID_SPRText = 2,
12989 DISPID_SPRFirstElement = 3,
12990 DISPID_SPRNumberOfElements = 4
12991} DISPID_SpeechPhraseReplacement;
12992typedef enum DISPID_SpeechPhraseReplacements {
12993 DISPID_SPRsCount = 1,
12994 DISPID_SPRsItem = DISPID_VALUE,
12995 DISPID_SPRs_NewEnum = DISPID_NEWENUM
12996} DISPID_SpeechPhraseReplacements;
12997typedef enum DISPID_SpeechPhraseProperty {
12998 DISPID_SPPName = 1,
12999 DISPID_SPPId = 2,
13000 DISPID_SPPValue = 3,
13001 DISPID_SPPFirstElement = 4,
13002 DISPID_SPPNumberOfElements = 5,
13003 DISPID_SPPEngineConfidence = 6,
13004 DISPID_SPPConfidence = 7,
13005 DISPID_SPPParent = 8,
13006 DISPID_SPPChildren = 9
13007} DISPID_SpeechPhraseProperty;
13008typedef enum DISPID_SpeechPhraseProperties {
13009 DISPID_SPPsCount = 1,
13010 DISPID_SPPsItem = DISPID_VALUE,
13011 DISPID_SPPs_NewEnum = DISPID_NEWENUM
13012} DISPID_SpeechPhraseProperties;
13013typedef enum DISPID_SpeechPhraseRule {
13014 DISPID_SPRuleName = 1,
13015 DISPID_SPRuleId = 2,
13016 DISPID_SPRuleFirstElement = 3,
13017 DISPID_SPRuleNumberOfElements = 4,
13018 DISPID_SPRuleParent = 5,
13019 DISPID_SPRuleChildren = 6,
13020 DISPID_SPRuleConfidence = 7,
13021 DISPID_SPRuleEngineConfidence = 8
13022} DISPID_SpeechPhraseRule;
13023typedef enum DISPID_SpeechPhraseRules {
13024 DISPID_SPRulesCount = 1,
13025 DISPID_SPRulesItem = DISPID_VALUE,
13026 DISPID_SPRules_NewEnum = DISPID_NEWENUM
13027} DISPID_SpeechPhraseRules;
13028typedef enum DISPID_SpeechLexicon {
13029 DISPID_SLGenerationId = 1,
13030 DISPID_SLGetWords = 2,
13031 DISPID_SLAddPronunciation = 3,
13032 DISPID_SLAddPronunciationByPhoneIds = 4,
13033 DISPID_SLRemovePronunciation = 5,
13034 DISPID_SLRemovePronunciationByPhoneIds = 6,
13035 DISPID_SLGetPronunciations = 7,
13036 DISPID_SLGetGenerationChange = 8
13037} DISPID_SpeechLexicon;
13038typedef enum SpeechLexiconType {
13039 SLTUser = eLEXTYPE_USER,
13040 SLTApp = eLEXTYPE_APP
13041} SpeechLexiconType;
13042typedef enum SpeechPartOfSpeech {
13043 SPSNotOverriden = SPPS_NotOverriden,
13044 SPSUnknown = SPPS_Unknown,
13045 SPSNoun = SPPS_Noun,
13046 SPSVerb = SPPS_Verb,
13047 SPSModifier = SPPS_Modifier,
13048 SPSFunction = SPPS_Function,
13049 SPSInterjection = SPPS_Interjection
13050} SpeechPartOfSpeech;
13051typedef enum DISPID_SpeechLexiconWords {
13052 DISPID_SLWsCount = 1,
13053 DISPID_SLWsItem = DISPID_VALUE,
13054 DISPID_SLWs_NewEnum = DISPID_NEWENUM
13055} DISPID_SpeechLexiconWords;
13056typedef enum SpeechWordType {
13057 SWTAdded = eWORDTYPE_ADDED,
13058 SWTDeleted = eWORDTYPE_DELETED
13059} SpeechWordType;
13060typedef enum DISPID_SpeechLexiconWord {
13061 DISPID_SLWLangId = 1,
13062 DISPID_SLWType = 2,
13063 DISPID_SLWWord = 3,
13064 DISPID_SLWPronunciations = 4
13065} DISPID_SpeechLexiconWord;
13066typedef enum DISPID_SpeechLexiconProns {
13067 DISPID_SLPsCount = 1,
13068 DISPID_SLPsItem = DISPID_VALUE,
13069 DISPID_SLPs_NewEnum = DISPID_NEWENUM
13070} DISPID_SpeechLexiconProns;
13071typedef enum DISPID_SpeechLexiconPronunciation {
13072 DISPID_SLPType = 1,
13073 DISPID_SLPLangId = 2,
13074 DISPID_SLPPartOfSpeech = 3,
13075 DISPID_SLPPhoneIds = 4,
13076 DISPID_SLPSymbolic = 5
13077} DISPID_SpeechLexiconPronunciation;
13078typedef enum DISPID_SpeechPhoneConverter {
13079 DISPID_SPCLangId = 1,
13080 DISPID_SPCPhoneToId = 2,
13081 DISPID_SPCIdToPhone = 3
13082} DISPID_SpeechPhoneConverter;
13083/*****************************************************************************
13084 * _ISpeechVoiceEvents dispinterface
13085 */
13086#ifndef ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__
13087#define ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__
13088
13089DEFINE_GUID(DIID__ISpeechVoiceEvents, 0xa372acd1, 0x3bef, 0x4bbd, 0x8f,0xfb, 0xcb,0x3e,0x2b,0x41,0x6a,0xf8);
13090#if defined(__cplusplus) && !defined(CINTERFACE)
13091MIDL_INTERFACE("a372acd1-3bef-4bbd-8ffb-cb3e2b416af8")
13092_ISpeechVoiceEvents : public IDispatch
13093{
13094};
13095#ifdef __CRT_UUID_DECL
13096__CRT_UUID_DECL(_ISpeechVoiceEvents, 0xa372acd1, 0x3bef, 0x4bbd, 0x8f,0xfb, 0xcb,0x3e,0x2b,0x41,0x6a,0xf8)
13097#endif
13098#else
13099typedef struct _ISpeechVoiceEventsVtbl {
13100 BEGIN_INTERFACE
13101
13102 /*** IUnknown methods ***/
13103 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13104 _ISpeechVoiceEvents *This,
13105 REFIID riid,
13106 void **ppvObject);
13107
13108 ULONG (STDMETHODCALLTYPE *AddRef)(
13109 _ISpeechVoiceEvents *This);
13110
13111 ULONG (STDMETHODCALLTYPE *Release)(
13112 _ISpeechVoiceEvents *This);
13113
13114 /*** IDispatch methods ***/
13115 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13116 _ISpeechVoiceEvents *This,
13117 UINT *pctinfo);
13118
13119 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13120 _ISpeechVoiceEvents *This,
13121 UINT iTInfo,
13122 LCID lcid,
13123 ITypeInfo **ppTInfo);
13124
13125 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13126 _ISpeechVoiceEvents *This,
13127 REFIID riid,
13128 LPOLESTR *rgszNames,
13129 UINT cNames,
13130 LCID lcid,
13131 DISPID *rgDispId);
13132
13133 HRESULT (STDMETHODCALLTYPE *Invoke)(
13134 _ISpeechVoiceEvents *This,
13135 DISPID dispIdMember,
13136 REFIID riid,
13137 LCID lcid,
13138 WORD wFlags,
13139 DISPPARAMS *pDispParams,
13140 VARIANT *pVarResult,
13141 EXCEPINFO *pExcepInfo,
13142 UINT *puArgErr);
13143
13144 END_INTERFACE
13145} _ISpeechVoiceEventsVtbl;
13146
13147interface _ISpeechVoiceEvents {
13148 CONST_VTBL _ISpeechVoiceEventsVtbl* lpVtbl;
13149};
13150
13151#ifdef COBJMACROS
13152#ifndef WIDL_C_INLINE_WRAPPERS
13153/*** IUnknown methods ***/
13154#define _ISpeechVoiceEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13155#define _ISpeechVoiceEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
13156#define _ISpeechVoiceEvents_Release(This) (This)->lpVtbl->Release(This)
13157/*** IDispatch methods ***/
13158#define _ISpeechVoiceEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13159#define _ISpeechVoiceEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13160#define _ISpeechVoiceEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13161#define _ISpeechVoiceEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13162#else
13163/*** IUnknown methods ***/
13164static inline HRESULT _ISpeechVoiceEvents_QueryInterface(_ISpeechVoiceEvents* This,REFIID riid,void **ppvObject) {
13165 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13166}
13167static inline ULONG _ISpeechVoiceEvents_AddRef(_ISpeechVoiceEvents* This) {
13168 return This->lpVtbl->AddRef(This);
13169}
13170static inline ULONG _ISpeechVoiceEvents_Release(_ISpeechVoiceEvents* This) {
13171 return This->lpVtbl->Release(This);
13172}
13173/*** IDispatch methods ***/
13174static inline HRESULT _ISpeechVoiceEvents_GetTypeInfoCount(_ISpeechVoiceEvents* This,UINT *pctinfo) {
13175 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13176}
13177static inline HRESULT _ISpeechVoiceEvents_GetTypeInfo(_ISpeechVoiceEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13178 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13179}
13180static inline HRESULT _ISpeechVoiceEvents_GetIDsOfNames(_ISpeechVoiceEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13181 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13182}
13183static inline HRESULT _ISpeechVoiceEvents_Invoke(_ISpeechVoiceEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13184 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13185}
13186#endif
13187#endif
13188
13189#endif
13190
13191#endif /* ___ISpeechVoiceEvents_DISPINTERFACE_DEFINED__ */
13192
13193/*****************************************************************************
13194 * ISpeechRecognizer interface
13195 */
13196#ifndef __ISpeechRecognizer_INTERFACE_DEFINED__
13197#define __ISpeechRecognizer_INTERFACE_DEFINED__
13198
13199DEFINE_GUID(IID_ISpeechRecognizer, 0x2d5f1c0c, 0xbd75, 0x4b08, 0x94,0x78, 0x3b,0x11,0xfe,0xa2,0x58,0x6c);
13200#if defined(__cplusplus) && !defined(CINTERFACE)
13201MIDL_INTERFACE("2d5f1c0c-bd75-4b08-9478-3b11fea2586c")
13202ISpeechRecognizer : public IDispatch
13203{
13204 virtual HRESULT STDMETHODCALLTYPE putref_Recognizer(
13205 ISpeechObjectToken *Recognizer) = 0;
13206
13207 virtual HRESULT STDMETHODCALLTYPE get_Recognizer(
13208 ISpeechObjectToken **Recognizer) = 0;
13209
13210 virtual HRESULT STDMETHODCALLTYPE put_AllowAudioInputFormatChangesOnNextSet(
13211 VARIANT_BOOL Allow) = 0;
13212
13213 virtual HRESULT STDMETHODCALLTYPE get_AllowAudioInputFormatChangesOnNextSet(
13214 VARIANT_BOOL *Allow) = 0;
13215
13216 virtual HRESULT STDMETHODCALLTYPE putref_AudioInput(
13217 ISpeechObjectToken *AudioInput = 0) = 0;
13218
13219 virtual HRESULT STDMETHODCALLTYPE get_AudioInput(
13220 ISpeechObjectToken **AudioInput) = 0;
13221
13222 virtual HRESULT STDMETHODCALLTYPE putref_AudioInputStream(
13223 ISpeechBaseStream *AudioInputStream = 0) = 0;
13224
13225 virtual HRESULT STDMETHODCALLTYPE get_AudioInputStream(
13226 ISpeechBaseStream **AudioInputStream) = 0;
13227
13228 virtual HRESULT STDMETHODCALLTYPE get_IsShared(
13229 VARIANT_BOOL *Shared) = 0;
13230
13231 virtual HRESULT STDMETHODCALLTYPE put_State(
13232 SpeechRecognizerState State) = 0;
13233
13234 virtual HRESULT STDMETHODCALLTYPE get_State(
13235 SpeechRecognizerState *State) = 0;
13236
13237 virtual HRESULT STDMETHODCALLTYPE get_Status(
13238 ISpeechRecognizerStatus **Status) = 0;
13239
13240 virtual HRESULT STDMETHODCALLTYPE putref_Profile(
13241 ISpeechObjectToken *Profile = 0) = 0;
13242
13243 virtual HRESULT STDMETHODCALLTYPE get_Profile(
13244 ISpeechObjectToken **Profile) = 0;
13245
13246 virtual HRESULT STDMETHODCALLTYPE EmulateRecognition(
13247 VARIANT TextElements,
13248 VARIANT *ElementDisplayAttributes = 0,
13249 LONG LanguageId = 0) = 0;
13250
13251 virtual HRESULT STDMETHODCALLTYPE CreateRecoContext(
13252 ISpeechRecoContext **NewContext) = 0;
13253
13254 virtual HRESULT STDMETHODCALLTYPE GetFormat(
13255 SpeechFormatType Type,
13256 ISpeechAudioFormat **Format) = 0;
13257
13258 virtual HRESULT STDMETHODCALLTYPE SetPropertyNumber(
13259 const BSTR Name,
13260 LONG Value,
13261 VARIANT_BOOL *Supported) = 0;
13262
13263 virtual HRESULT STDMETHODCALLTYPE GetPropertyNumber(
13264 const BSTR Name,
13265 LONG *Value,
13266 VARIANT_BOOL *Supported) = 0;
13267
13268 virtual HRESULT STDMETHODCALLTYPE SetPropertyString(
13269 const BSTR Name,
13270 const BSTR Value,
13271 VARIANT_BOOL *Supported) = 0;
13272
13273 virtual HRESULT STDMETHODCALLTYPE GetPropertyString(
13274 const BSTR Name,
13275 BSTR *Value,
13276 VARIANT_BOOL *Supported) = 0;
13277
13278 virtual HRESULT STDMETHODCALLTYPE IsUISupported(
13279 const BSTR TypeOfUI,
13280 const VARIANT *ExtraData,
13281 VARIANT_BOOL *Supported) = 0;
13282
13283 virtual HRESULT STDMETHODCALLTYPE DisplayUI(
13284 LONG hWndParent,
13285 BSTR Title,
13286 const BSTR TypeOfUI,
13287 const VARIANT *ExtraData = 0) = 0;
13288
13289 virtual HRESULT STDMETHODCALLTYPE GetRecognizers(
13290 BSTR RequiredAttributes,
13291 BSTR OptionalAttributes,
13292 ISpeechObjectTokens **ObjectTokens) = 0;
13293
13294 virtual HRESULT STDMETHODCALLTYPE GetAudioInputs(
13295 BSTR RequiredAttributes,
13296 BSTR OptionalAttributes,
13297 ISpeechObjectTokens **ObjectTokens) = 0;
13298
13299 virtual HRESULT STDMETHODCALLTYPE GetProfiles(
13300 BSTR RequiredAttributes,
13301 BSTR OptionalAttributes,
13302 ISpeechObjectTokens **ObjectTokens) = 0;
13303
13304};
13305#ifdef __CRT_UUID_DECL
13306__CRT_UUID_DECL(ISpeechRecognizer, 0x2d5f1c0c, 0xbd75, 0x4b08, 0x94,0x78, 0x3b,0x11,0xfe,0xa2,0x58,0x6c)
13307#endif
13308#else
13309typedef struct ISpeechRecognizerVtbl {
13310 BEGIN_INTERFACE
13311
13312 /*** IUnknown methods ***/
13313 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13314 ISpeechRecognizer *This,
13315 REFIID riid,
13316 void **ppvObject);
13317
13318 ULONG (STDMETHODCALLTYPE *AddRef)(
13319 ISpeechRecognizer *This);
13320
13321 ULONG (STDMETHODCALLTYPE *Release)(
13322 ISpeechRecognizer *This);
13323
13324 /*** IDispatch methods ***/
13325 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13326 ISpeechRecognizer *This,
13327 UINT *pctinfo);
13328
13329 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13330 ISpeechRecognizer *This,
13331 UINT iTInfo,
13332 LCID lcid,
13333 ITypeInfo **ppTInfo);
13334
13335 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13336 ISpeechRecognizer *This,
13337 REFIID riid,
13338 LPOLESTR *rgszNames,
13339 UINT cNames,
13340 LCID lcid,
13341 DISPID *rgDispId);
13342
13343 HRESULT (STDMETHODCALLTYPE *Invoke)(
13344 ISpeechRecognizer *This,
13345 DISPID dispIdMember,
13346 REFIID riid,
13347 LCID lcid,
13348 WORD wFlags,
13349 DISPPARAMS *pDispParams,
13350 VARIANT *pVarResult,
13351 EXCEPINFO *pExcepInfo,
13352 UINT *puArgErr);
13353
13354 /*** ISpeechRecognizer methods ***/
13355 HRESULT (STDMETHODCALLTYPE *putref_Recognizer)(
13356 ISpeechRecognizer *This,
13357 ISpeechObjectToken *Recognizer);
13358
13359 HRESULT (STDMETHODCALLTYPE *get_Recognizer)(
13360 ISpeechRecognizer *This,
13361 ISpeechObjectToken **Recognizer);
13362
13363 HRESULT (STDMETHODCALLTYPE *put_AllowAudioInputFormatChangesOnNextSet)(
13364 ISpeechRecognizer *This,
13365 VARIANT_BOOL Allow);
13366
13367 HRESULT (STDMETHODCALLTYPE *get_AllowAudioInputFormatChangesOnNextSet)(
13368 ISpeechRecognizer *This,
13369 VARIANT_BOOL *Allow);
13370
13371 HRESULT (STDMETHODCALLTYPE *putref_AudioInput)(
13372 ISpeechRecognizer *This,
13373 ISpeechObjectToken *AudioInput);
13374
13375 HRESULT (STDMETHODCALLTYPE *get_AudioInput)(
13376 ISpeechRecognizer *This,
13377 ISpeechObjectToken **AudioInput);
13378
13379 HRESULT (STDMETHODCALLTYPE *putref_AudioInputStream)(
13380 ISpeechRecognizer *This,
13381 ISpeechBaseStream *AudioInputStream);
13382
13383 HRESULT (STDMETHODCALLTYPE *get_AudioInputStream)(
13384 ISpeechRecognizer *This,
13385 ISpeechBaseStream **AudioInputStream);
13386
13387 HRESULT (STDMETHODCALLTYPE *get_IsShared)(
13388 ISpeechRecognizer *This,
13389 VARIANT_BOOL *Shared);
13390
13391 HRESULT (STDMETHODCALLTYPE *put_State)(
13392 ISpeechRecognizer *This,
13393 SpeechRecognizerState State);
13394
13395 HRESULT (STDMETHODCALLTYPE *get_State)(
13396 ISpeechRecognizer *This,
13397 SpeechRecognizerState *State);
13398
13399 HRESULT (STDMETHODCALLTYPE *get_Status)(
13400 ISpeechRecognizer *This,
13401 ISpeechRecognizerStatus **Status);
13402
13403 HRESULT (STDMETHODCALLTYPE *putref_Profile)(
13404 ISpeechRecognizer *This,
13405 ISpeechObjectToken *Profile);
13406
13407 HRESULT (STDMETHODCALLTYPE *get_Profile)(
13408 ISpeechRecognizer *This,
13409 ISpeechObjectToken **Profile);
13410
13411 HRESULT (STDMETHODCALLTYPE *EmulateRecognition)(
13412 ISpeechRecognizer *This,
13413 VARIANT TextElements,
13414 VARIANT *ElementDisplayAttributes,
13415 LONG LanguageId);
13416
13417 HRESULT (STDMETHODCALLTYPE *CreateRecoContext)(
13418 ISpeechRecognizer *This,
13419 ISpeechRecoContext **NewContext);
13420
13421 HRESULT (STDMETHODCALLTYPE *GetFormat)(
13422 ISpeechRecognizer *This,
13423 SpeechFormatType Type,
13424 ISpeechAudioFormat **Format);
13425
13426 HRESULT (STDMETHODCALLTYPE *SetPropertyNumber)(
13427 ISpeechRecognizer *This,
13428 const BSTR Name,
13429 LONG Value,
13430 VARIANT_BOOL *Supported);
13431
13432 HRESULT (STDMETHODCALLTYPE *GetPropertyNumber)(
13433 ISpeechRecognizer *This,
13434 const BSTR Name,
13435 LONG *Value,
13436 VARIANT_BOOL *Supported);
13437
13438 HRESULT (STDMETHODCALLTYPE *SetPropertyString)(
13439 ISpeechRecognizer *This,
13440 const BSTR Name,
13441 const BSTR Value,
13442 VARIANT_BOOL *Supported);
13443
13444 HRESULT (STDMETHODCALLTYPE *GetPropertyString)(
13445 ISpeechRecognizer *This,
13446 const BSTR Name,
13447 BSTR *Value,
13448 VARIANT_BOOL *Supported);
13449
13450 HRESULT (STDMETHODCALLTYPE *IsUISupported)(
13451 ISpeechRecognizer *This,
13452 const BSTR TypeOfUI,
13453 const VARIANT *ExtraData,
13454 VARIANT_BOOL *Supported);
13455
13456 HRESULT (STDMETHODCALLTYPE *DisplayUI)(
13457 ISpeechRecognizer *This,
13458 LONG hWndParent,
13459 BSTR Title,
13460 const BSTR TypeOfUI,
13461 const VARIANT *ExtraData);
13462
13463 HRESULT (STDMETHODCALLTYPE *GetRecognizers)(
13464 ISpeechRecognizer *This,
13465 BSTR RequiredAttributes,
13466 BSTR OptionalAttributes,
13467 ISpeechObjectTokens **ObjectTokens);
13468
13469 HRESULT (STDMETHODCALLTYPE *GetAudioInputs)(
13470 ISpeechRecognizer *This,
13471 BSTR RequiredAttributes,
13472 BSTR OptionalAttributes,
13473 ISpeechObjectTokens **ObjectTokens);
13474
13475 HRESULT (STDMETHODCALLTYPE *GetProfiles)(
13476 ISpeechRecognizer *This,
13477 BSTR RequiredAttributes,
13478 BSTR OptionalAttributes,
13479 ISpeechObjectTokens **ObjectTokens);
13480
13481 END_INTERFACE
13482} ISpeechRecognizerVtbl;
13483
13484interface ISpeechRecognizer {
13485 CONST_VTBL ISpeechRecognizerVtbl* lpVtbl;
13486};
13487
13488#ifdef COBJMACROS
13489#ifndef WIDL_C_INLINE_WRAPPERS
13490/*** IUnknown methods ***/
13491#define ISpeechRecognizer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13492#define ISpeechRecognizer_AddRef(This) (This)->lpVtbl->AddRef(This)
13493#define ISpeechRecognizer_Release(This) (This)->lpVtbl->Release(This)
13494/*** IDispatch methods ***/
13495#define ISpeechRecognizer_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13496#define ISpeechRecognizer_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13497#define ISpeechRecognizer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13498#define ISpeechRecognizer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13499/*** ISpeechRecognizer methods ***/
13500#define ISpeechRecognizer_putref_Recognizer(This,Recognizer) (This)->lpVtbl->putref_Recognizer(This,Recognizer)
13501#define ISpeechRecognizer_get_Recognizer(This,Recognizer) (This)->lpVtbl->get_Recognizer(This,Recognizer)
13502#define ISpeechRecognizer_put_AllowAudioInputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->put_AllowAudioInputFormatChangesOnNextSet(This,Allow)
13503#define ISpeechRecognizer_get_AllowAudioInputFormatChangesOnNextSet(This,Allow) (This)->lpVtbl->get_AllowAudioInputFormatChangesOnNextSet(This,Allow)
13504#define ISpeechRecognizer_putref_AudioInput(This,AudioInput) (This)->lpVtbl->putref_AudioInput(This,AudioInput)
13505#define ISpeechRecognizer_get_AudioInput(This,AudioInput) (This)->lpVtbl->get_AudioInput(This,AudioInput)
13506#define ISpeechRecognizer_putref_AudioInputStream(This,AudioInputStream) (This)->lpVtbl->putref_AudioInputStream(This,AudioInputStream)
13507#define ISpeechRecognizer_get_AudioInputStream(This,AudioInputStream) (This)->lpVtbl->get_AudioInputStream(This,AudioInputStream)
13508#define ISpeechRecognizer_get_IsShared(This,Shared) (This)->lpVtbl->get_IsShared(This,Shared)
13509#define ISpeechRecognizer_put_State(This,State) (This)->lpVtbl->put_State(This,State)
13510#define ISpeechRecognizer_get_State(This,State) (This)->lpVtbl->get_State(This,State)
13511#define ISpeechRecognizer_get_Status(This,Status) (This)->lpVtbl->get_Status(This,Status)
13512#define ISpeechRecognizer_putref_Profile(This,Profile) (This)->lpVtbl->putref_Profile(This,Profile)
13513#define ISpeechRecognizer_get_Profile(This,Profile) (This)->lpVtbl->get_Profile(This,Profile)
13514#define ISpeechRecognizer_EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId) (This)->lpVtbl->EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId)
13515#define ISpeechRecognizer_CreateRecoContext(This,NewContext) (This)->lpVtbl->CreateRecoContext(This,NewContext)
13516#define ISpeechRecognizer_GetFormat(This,Type,Format) (This)->lpVtbl->GetFormat(This,Type,Format)
13517#define ISpeechRecognizer_SetPropertyNumber(This,Name,Value,Supported) (This)->lpVtbl->SetPropertyNumber(This,Name,Value,Supported)
13518#define ISpeechRecognizer_GetPropertyNumber(This,Name,Value,Supported) (This)->lpVtbl->GetPropertyNumber(This,Name,Value,Supported)
13519#define ISpeechRecognizer_SetPropertyString(This,Name,Value,Supported) (This)->lpVtbl->SetPropertyString(This,Name,Value,Supported)
13520#define ISpeechRecognizer_GetPropertyString(This,Name,Value,Supported) (This)->lpVtbl->GetPropertyString(This,Name,Value,Supported)
13521#define ISpeechRecognizer_IsUISupported(This,TypeOfUI,ExtraData,Supported) (This)->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported)
13522#define ISpeechRecognizer_DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData) (This)->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData)
13523#define ISpeechRecognizer_GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
13524#define ISpeechRecognizer_GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
13525#define ISpeechRecognizer_GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens) (This)->lpVtbl->GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens)
13526#else
13527/*** IUnknown methods ***/
13528static inline HRESULT ISpeechRecognizer_QueryInterface(ISpeechRecognizer* This,REFIID riid,void **ppvObject) {
13529 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13530}
13531static inline ULONG ISpeechRecognizer_AddRef(ISpeechRecognizer* This) {
13532 return This->lpVtbl->AddRef(This);
13533}
13534static inline ULONG ISpeechRecognizer_Release(ISpeechRecognizer* This) {
13535 return This->lpVtbl->Release(This);
13536}
13537/*** IDispatch methods ***/
13538static inline HRESULT ISpeechRecognizer_GetTypeInfoCount(ISpeechRecognizer* This,UINT *pctinfo) {
13539 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13540}
13541static inline HRESULT ISpeechRecognizer_GetTypeInfo(ISpeechRecognizer* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13542 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13543}
13544static inline HRESULT ISpeechRecognizer_GetIDsOfNames(ISpeechRecognizer* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13545 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13546}
13547static inline HRESULT ISpeechRecognizer_Invoke(ISpeechRecognizer* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13548 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13549}
13550/*** ISpeechRecognizer methods ***/
13551static inline HRESULT ISpeechRecognizer_putref_Recognizer(ISpeechRecognizer* This,ISpeechObjectToken *Recognizer) {
13552 return This->lpVtbl->putref_Recognizer(This,Recognizer);
13553}
13554static inline HRESULT ISpeechRecognizer_get_Recognizer(ISpeechRecognizer* This,ISpeechObjectToken **Recognizer) {
13555 return This->lpVtbl->get_Recognizer(This,Recognizer);
13556}
13557static inline HRESULT ISpeechRecognizer_put_AllowAudioInputFormatChangesOnNextSet(ISpeechRecognizer* This,VARIANT_BOOL Allow) {
13558 return This->lpVtbl->put_AllowAudioInputFormatChangesOnNextSet(This,Allow);
13559}
13560static inline HRESULT ISpeechRecognizer_get_AllowAudioInputFormatChangesOnNextSet(ISpeechRecognizer* This,VARIANT_BOOL *Allow) {
13561 return This->lpVtbl->get_AllowAudioInputFormatChangesOnNextSet(This,Allow);
13562}
13563static inline HRESULT ISpeechRecognizer_putref_AudioInput(ISpeechRecognizer* This,ISpeechObjectToken *AudioInput) {
13564 return This->lpVtbl->putref_AudioInput(This,AudioInput);
13565}
13566static inline HRESULT ISpeechRecognizer_get_AudioInput(ISpeechRecognizer* This,ISpeechObjectToken **AudioInput) {
13567 return This->lpVtbl->get_AudioInput(This,AudioInput);
13568}
13569static inline HRESULT ISpeechRecognizer_putref_AudioInputStream(ISpeechRecognizer* This,ISpeechBaseStream *AudioInputStream) {
13570 return This->lpVtbl->putref_AudioInputStream(This,AudioInputStream);
13571}
13572static inline HRESULT ISpeechRecognizer_get_AudioInputStream(ISpeechRecognizer* This,ISpeechBaseStream **AudioInputStream) {
13573 return This->lpVtbl->get_AudioInputStream(This,AudioInputStream);
13574}
13575static inline HRESULT ISpeechRecognizer_get_IsShared(ISpeechRecognizer* This,VARIANT_BOOL *Shared) {
13576 return This->lpVtbl->get_IsShared(This,Shared);
13577}
13578static inline HRESULT ISpeechRecognizer_put_State(ISpeechRecognizer* This,SpeechRecognizerState State) {
13579 return This->lpVtbl->put_State(This,State);
13580}
13581static inline HRESULT ISpeechRecognizer_get_State(ISpeechRecognizer* This,SpeechRecognizerState *State) {
13582 return This->lpVtbl->get_State(This,State);
13583}
13584static inline HRESULT ISpeechRecognizer_get_Status(ISpeechRecognizer* This,ISpeechRecognizerStatus **Status) {
13585 return This->lpVtbl->get_Status(This,Status);
13586}
13587static inline HRESULT ISpeechRecognizer_putref_Profile(ISpeechRecognizer* This,ISpeechObjectToken *Profile) {
13588 return This->lpVtbl->putref_Profile(This,Profile);
13589}
13590static inline HRESULT ISpeechRecognizer_get_Profile(ISpeechRecognizer* This,ISpeechObjectToken **Profile) {
13591 return This->lpVtbl->get_Profile(This,Profile);
13592}
13593static inline HRESULT ISpeechRecognizer_EmulateRecognition(ISpeechRecognizer* This,VARIANT TextElements,VARIANT *ElementDisplayAttributes,LONG LanguageId) {
13594 return This->lpVtbl->EmulateRecognition(This,TextElements,ElementDisplayAttributes,LanguageId);
13595}
13596static inline HRESULT ISpeechRecognizer_CreateRecoContext(ISpeechRecognizer* This,ISpeechRecoContext **NewContext) {
13597 return This->lpVtbl->CreateRecoContext(This,NewContext);
13598}
13599static inline HRESULT ISpeechRecognizer_GetFormat(ISpeechRecognizer* This,SpeechFormatType Type,ISpeechAudioFormat **Format) {
13600 return This->lpVtbl->GetFormat(This,Type,Format);
13601}
13602static inline HRESULT ISpeechRecognizer_SetPropertyNumber(ISpeechRecognizer* This,const BSTR Name,LONG Value,VARIANT_BOOL *Supported) {
13603 return This->lpVtbl->SetPropertyNumber(This,Name,Value,Supported);
13604}
13605static inline HRESULT ISpeechRecognizer_GetPropertyNumber(ISpeechRecognizer* This,const BSTR Name,LONG *Value,VARIANT_BOOL *Supported) {
13606 return This->lpVtbl->GetPropertyNumber(This,Name,Value,Supported);
13607}
13608static inline HRESULT ISpeechRecognizer_SetPropertyString(ISpeechRecognizer* This,const BSTR Name,const BSTR Value,VARIANT_BOOL *Supported) {
13609 return This->lpVtbl->SetPropertyString(This,Name,Value,Supported);
13610}
13611static inline HRESULT ISpeechRecognizer_GetPropertyString(ISpeechRecognizer* This,const BSTR Name,BSTR *Value,VARIANT_BOOL *Supported) {
13612 return This->lpVtbl->GetPropertyString(This,Name,Value,Supported);
13613}
13614static inline HRESULT ISpeechRecognizer_IsUISupported(ISpeechRecognizer* This,const BSTR TypeOfUI,const VARIANT *ExtraData,VARIANT_BOOL *Supported) {
13615 return This->lpVtbl->IsUISupported(This,TypeOfUI,ExtraData,Supported);
13616}
13617static inline HRESULT ISpeechRecognizer_DisplayUI(ISpeechRecognizer* This,LONG hWndParent,BSTR Title,const BSTR TypeOfUI,const VARIANT *ExtraData) {
13618 return This->lpVtbl->DisplayUI(This,hWndParent,Title,TypeOfUI,ExtraData);
13619}
13620static inline HRESULT ISpeechRecognizer_GetRecognizers(ISpeechRecognizer* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
13621 return This->lpVtbl->GetRecognizers(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
13622}
13623static inline HRESULT ISpeechRecognizer_GetAudioInputs(ISpeechRecognizer* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
13624 return This->lpVtbl->GetAudioInputs(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
13625}
13626static inline HRESULT ISpeechRecognizer_GetProfiles(ISpeechRecognizer* This,BSTR RequiredAttributes,BSTR OptionalAttributes,ISpeechObjectTokens **ObjectTokens) {
13627 return This->lpVtbl->GetProfiles(This,RequiredAttributes,OptionalAttributes,ObjectTokens);
13628}
13629#endif
13630#endif
13631
13632#endif
13633
13634
13635#endif /* __ISpeechRecognizer_INTERFACE_DEFINED__ */
13636
13637/*****************************************************************************
13638 * ISpeechRecognizerStatus interface
13639 */
13640#ifndef __ISpeechRecognizerStatus_INTERFACE_DEFINED__
13641#define __ISpeechRecognizerStatus_INTERFACE_DEFINED__
13642
13643DEFINE_GUID(IID_ISpeechRecognizerStatus, 0xbff9e781, 0x53ec, 0x484e, 0xbb,0x8a, 0x0e,0x1b,0x55,0x51,0xe3,0x5c);
13644#if defined(__cplusplus) && !defined(CINTERFACE)
13645MIDL_INTERFACE("bff9e781-53ec-484e-bb8a-0e1b5551e35c")
13646ISpeechRecognizerStatus : public IDispatch
13647{
13648 virtual HRESULT STDMETHODCALLTYPE get_AudioStatus(
13649 ISpeechAudioStatus **AudioStatus) = 0;
13650
13651 virtual HRESULT STDMETHODCALLTYPE get_CurrentStreamPosition(
13652 VARIANT *pCurrentStreamPos) = 0;
13653
13654 virtual HRESULT STDMETHODCALLTYPE get_CurrentStreamNumber(
13655 LONG *StreamNumber) = 0;
13656
13657 virtual HRESULT STDMETHODCALLTYPE get_NumberOfActiveRules(
13658 LONG *NumberOfActiveRules) = 0;
13659
13660 virtual HRESULT STDMETHODCALLTYPE get_ClsidEngine(
13661 BSTR *ClsidEngine) = 0;
13662
13663 virtual HRESULT STDMETHODCALLTYPE get_SupportedLanguages(
13664 VARIANT *SupportedLanguages) = 0;
13665
13666};
13667#ifdef __CRT_UUID_DECL
13668__CRT_UUID_DECL(ISpeechRecognizerStatus, 0xbff9e781, 0x53ec, 0x484e, 0xbb,0x8a, 0x0e,0x1b,0x55,0x51,0xe3,0x5c)
13669#endif
13670#else
13671typedef struct ISpeechRecognizerStatusVtbl {
13672 BEGIN_INTERFACE
13673
13674 /*** IUnknown methods ***/
13675 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13676 ISpeechRecognizerStatus *This,
13677 REFIID riid,
13678 void **ppvObject);
13679
13680 ULONG (STDMETHODCALLTYPE *AddRef)(
13681 ISpeechRecognizerStatus *This);
13682
13683 ULONG (STDMETHODCALLTYPE *Release)(
13684 ISpeechRecognizerStatus *This);
13685
13686 /*** IDispatch methods ***/
13687 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13688 ISpeechRecognizerStatus *This,
13689 UINT *pctinfo);
13690
13691 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13692 ISpeechRecognizerStatus *This,
13693 UINT iTInfo,
13694 LCID lcid,
13695 ITypeInfo **ppTInfo);
13696
13697 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13698 ISpeechRecognizerStatus *This,
13699 REFIID riid,
13700 LPOLESTR *rgszNames,
13701 UINT cNames,
13702 LCID lcid,
13703 DISPID *rgDispId);
13704
13705 HRESULT (STDMETHODCALLTYPE *Invoke)(
13706 ISpeechRecognizerStatus *This,
13707 DISPID dispIdMember,
13708 REFIID riid,
13709 LCID lcid,
13710 WORD wFlags,
13711 DISPPARAMS *pDispParams,
13712 VARIANT *pVarResult,
13713 EXCEPINFO *pExcepInfo,
13714 UINT *puArgErr);
13715
13716 /*** ISpeechRecognizerStatus methods ***/
13717 HRESULT (STDMETHODCALLTYPE *get_AudioStatus)(
13718 ISpeechRecognizerStatus *This,
13719 ISpeechAudioStatus **AudioStatus);
13720
13721 HRESULT (STDMETHODCALLTYPE *get_CurrentStreamPosition)(
13722 ISpeechRecognizerStatus *This,
13723 VARIANT *pCurrentStreamPos);
13724
13725 HRESULT (STDMETHODCALLTYPE *get_CurrentStreamNumber)(
13726 ISpeechRecognizerStatus *This,
13727 LONG *StreamNumber);
13728
13729 HRESULT (STDMETHODCALLTYPE *get_NumberOfActiveRules)(
13730 ISpeechRecognizerStatus *This,
13731 LONG *NumberOfActiveRules);
13732
13733 HRESULT (STDMETHODCALLTYPE *get_ClsidEngine)(
13734 ISpeechRecognizerStatus *This,
13735 BSTR *ClsidEngine);
13736
13737 HRESULT (STDMETHODCALLTYPE *get_SupportedLanguages)(
13738 ISpeechRecognizerStatus *This,
13739 VARIANT *SupportedLanguages);
13740
13741 END_INTERFACE
13742} ISpeechRecognizerStatusVtbl;
13743
13744interface ISpeechRecognizerStatus {
13745 CONST_VTBL ISpeechRecognizerStatusVtbl* lpVtbl;
13746};
13747
13748#ifdef COBJMACROS
13749#ifndef WIDL_C_INLINE_WRAPPERS
13750/*** IUnknown methods ***/
13751#define ISpeechRecognizerStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13752#define ISpeechRecognizerStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
13753#define ISpeechRecognizerStatus_Release(This) (This)->lpVtbl->Release(This)
13754/*** IDispatch methods ***/
13755#define ISpeechRecognizerStatus_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13756#define ISpeechRecognizerStatus_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13757#define ISpeechRecognizerStatus_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13758#define ISpeechRecognizerStatus_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13759/*** ISpeechRecognizerStatus methods ***/
13760#define ISpeechRecognizerStatus_get_AudioStatus(This,AudioStatus) (This)->lpVtbl->get_AudioStatus(This,AudioStatus)
13761#define ISpeechRecognizerStatus_get_CurrentStreamPosition(This,pCurrentStreamPos) (This)->lpVtbl->get_CurrentStreamPosition(This,pCurrentStreamPos)
13762#define ISpeechRecognizerStatus_get_CurrentStreamNumber(This,StreamNumber) (This)->lpVtbl->get_CurrentStreamNumber(This,StreamNumber)
13763#define ISpeechRecognizerStatus_get_NumberOfActiveRules(This,NumberOfActiveRules) (This)->lpVtbl->get_NumberOfActiveRules(This,NumberOfActiveRules)
13764#define ISpeechRecognizerStatus_get_ClsidEngine(This,ClsidEngine) (This)->lpVtbl->get_ClsidEngine(This,ClsidEngine)
13765#define ISpeechRecognizerStatus_get_SupportedLanguages(This,SupportedLanguages) (This)->lpVtbl->get_SupportedLanguages(This,SupportedLanguages)
13766#else
13767/*** IUnknown methods ***/
13768static inline HRESULT ISpeechRecognizerStatus_QueryInterface(ISpeechRecognizerStatus* This,REFIID riid,void **ppvObject) {
13769 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13770}
13771static inline ULONG ISpeechRecognizerStatus_AddRef(ISpeechRecognizerStatus* This) {
13772 return This->lpVtbl->AddRef(This);
13773}
13774static inline ULONG ISpeechRecognizerStatus_Release(ISpeechRecognizerStatus* This) {
13775 return This->lpVtbl->Release(This);
13776}
13777/*** IDispatch methods ***/
13778static inline HRESULT ISpeechRecognizerStatus_GetTypeInfoCount(ISpeechRecognizerStatus* This,UINT *pctinfo) {
13779 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13780}
13781static inline HRESULT ISpeechRecognizerStatus_GetTypeInfo(ISpeechRecognizerStatus* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13782 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13783}
13784static inline HRESULT ISpeechRecognizerStatus_GetIDsOfNames(ISpeechRecognizerStatus* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13785 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13786}
13787static inline HRESULT ISpeechRecognizerStatus_Invoke(ISpeechRecognizerStatus* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13788 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13789}
13790/*** ISpeechRecognizerStatus methods ***/
13791static inline HRESULT ISpeechRecognizerStatus_get_AudioStatus(ISpeechRecognizerStatus* This,ISpeechAudioStatus **AudioStatus) {
13792 return This->lpVtbl->get_AudioStatus(This,AudioStatus);
13793}
13794static inline HRESULT ISpeechRecognizerStatus_get_CurrentStreamPosition(ISpeechRecognizerStatus* This,VARIANT *pCurrentStreamPos) {
13795 return This->lpVtbl->get_CurrentStreamPosition(This,pCurrentStreamPos);
13796}
13797static inline HRESULT ISpeechRecognizerStatus_get_CurrentStreamNumber(ISpeechRecognizerStatus* This,LONG *StreamNumber) {
13798 return This->lpVtbl->get_CurrentStreamNumber(This,StreamNumber);
13799}
13800static inline HRESULT ISpeechRecognizerStatus_get_NumberOfActiveRules(ISpeechRecognizerStatus* This,LONG *NumberOfActiveRules) {
13801 return This->lpVtbl->get_NumberOfActiveRules(This,NumberOfActiveRules);
13802}
13803static inline HRESULT ISpeechRecognizerStatus_get_ClsidEngine(ISpeechRecognizerStatus* This,BSTR *ClsidEngine) {
13804 return This->lpVtbl->get_ClsidEngine(This,ClsidEngine);
13805}
13806static inline HRESULT ISpeechRecognizerStatus_get_SupportedLanguages(ISpeechRecognizerStatus* This,VARIANT *SupportedLanguages) {
13807 return This->lpVtbl->get_SupportedLanguages(This,SupportedLanguages);
13808}
13809#endif
13810#endif
13811
13812#endif
13813
13814
13815#endif /* __ISpeechRecognizerStatus_INTERFACE_DEFINED__ */
13816
13817/*****************************************************************************
13818 * ISpeechRecoContext interface
13819 */
13820#ifndef __ISpeechRecoContext_INTERFACE_DEFINED__
13821#define __ISpeechRecoContext_INTERFACE_DEFINED__
13822
13823DEFINE_GUID(IID_ISpeechRecoContext, 0x580aa49d, 0x7e1e, 0x4809, 0xb8,0xe2, 0x57,0xda,0x80,0x61,0x04,0xb8);
13824#if defined(__cplusplus) && !defined(CINTERFACE)
13825MIDL_INTERFACE("580aa49d-7e1e-4809-b8e2-57da806104b8")
13826ISpeechRecoContext : public IDispatch
13827{
13828 virtual HRESULT STDMETHODCALLTYPE get_Recognizer(
13829 ISpeechRecognizer **Recognizer) = 0;
13830
13831 virtual HRESULT STDMETHODCALLTYPE get_AudioInputInterferenceStatus(
13832 SpeechInterference *Interference) = 0;
13833
13834 virtual HRESULT STDMETHODCALLTYPE get_RequestedUIType(
13835 BSTR *UIType) = 0;
13836
13837 virtual HRESULT STDMETHODCALLTYPE putref_Voice(
13838 ISpeechVoice *Voice) = 0;
13839
13840 virtual HRESULT STDMETHODCALLTYPE get_Voice(
13841 ISpeechVoice **Voice) = 0;
13842
13843 virtual HRESULT STDMETHODCALLTYPE put_AllowVoiceFormatMatchingOnNextSet(
13844 VARIANT_BOOL Allow) = 0;
13845
13846 virtual HRESULT STDMETHODCALLTYPE get_AllowVoiceFormatMatchingOnNextSet(
13847 VARIANT_BOOL *pAllow) = 0;
13848
13849 virtual HRESULT STDMETHODCALLTYPE put_VoicePurgeEvent(
13850 SpeechRecoEvents EventInterest) = 0;
13851
13852 virtual HRESULT STDMETHODCALLTYPE get_VoicePurgeEvent(
13853 SpeechRecoEvents *EventInterest) = 0;
13854
13855 virtual HRESULT STDMETHODCALLTYPE put_EventInterests(
13856 SpeechRecoEvents EventInterest) = 0;
13857
13858 virtual HRESULT STDMETHODCALLTYPE get_EventInterests(
13859 SpeechRecoEvents *EventInterest) = 0;
13860
13861 virtual HRESULT STDMETHODCALLTYPE put_CmdMaxAlternates(
13862 LONG MaxAlternates) = 0;
13863
13864 virtual HRESULT STDMETHODCALLTYPE get_CmdMaxAlternates(
13865 LONG *MaxAlternates) = 0;
13866
13867 virtual HRESULT STDMETHODCALLTYPE put_State(
13868 SpeechRecoContextState State) = 0;
13869
13870 virtual HRESULT STDMETHODCALLTYPE get_State(
13871 SpeechRecoContextState *State) = 0;
13872
13873 virtual HRESULT STDMETHODCALLTYPE put_RetainedAudio(
13874 SpeechRetainedAudioOptions Option) = 0;
13875
13876 virtual HRESULT STDMETHODCALLTYPE get_RetainedAudio(
13877 SpeechRetainedAudioOptions *Option) = 0;
13878
13879 virtual HRESULT STDMETHODCALLTYPE putref_RetainedAudioFormat(
13880 ISpeechAudioFormat *Format) = 0;
13881
13882 virtual HRESULT STDMETHODCALLTYPE get_RetainedAudioFormat(
13883 ISpeechAudioFormat **Format) = 0;
13884
13885 virtual HRESULT STDMETHODCALLTYPE Pause(
13886 ) = 0;
13887
13888 virtual HRESULT STDMETHODCALLTYPE Resume(
13889 ) = 0;
13890
13891 virtual HRESULT STDMETHODCALLTYPE CreateGrammar(
13892 VARIANT GrammarId,
13893 ISpeechRecoGrammar **Grammar) = 0;
13894
13895 virtual HRESULT STDMETHODCALLTYPE CreateResultFromMemory(
13896 VARIANT *ResultBlock,
13897 ISpeechRecoResult **Result) = 0;
13898
13899 virtual HRESULT STDMETHODCALLTYPE Bookmark(
13900 SpeechBookmarkOptions Options,
13901 VARIANT StreamPos,
13902 VARIANT BookmarkId) = 0;
13903
13904 virtual HRESULT STDMETHODCALLTYPE SetAdaptationData(
13905 BSTR AdaptationString) = 0;
13906
13907};
13908#ifdef __CRT_UUID_DECL
13909__CRT_UUID_DECL(ISpeechRecoContext, 0x580aa49d, 0x7e1e, 0x4809, 0xb8,0xe2, 0x57,0xda,0x80,0x61,0x04,0xb8)
13910#endif
13911#else
13912typedef struct ISpeechRecoContextVtbl {
13913 BEGIN_INTERFACE
13914
13915 /*** IUnknown methods ***/
13916 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13917 ISpeechRecoContext *This,
13918 REFIID riid,
13919 void **ppvObject);
13920
13921 ULONG (STDMETHODCALLTYPE *AddRef)(
13922 ISpeechRecoContext *This);
13923
13924 ULONG (STDMETHODCALLTYPE *Release)(
13925 ISpeechRecoContext *This);
13926
13927 /*** IDispatch methods ***/
13928 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13929 ISpeechRecoContext *This,
13930 UINT *pctinfo);
13931
13932 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13933 ISpeechRecoContext *This,
13934 UINT iTInfo,
13935 LCID lcid,
13936 ITypeInfo **ppTInfo);
13937
13938 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13939 ISpeechRecoContext *This,
13940 REFIID riid,
13941 LPOLESTR *rgszNames,
13942 UINT cNames,
13943 LCID lcid,
13944 DISPID *rgDispId);
13945
13946 HRESULT (STDMETHODCALLTYPE *Invoke)(
13947 ISpeechRecoContext *This,
13948 DISPID dispIdMember,
13949 REFIID riid,
13950 LCID lcid,
13951 WORD wFlags,
13952 DISPPARAMS *pDispParams,
13953 VARIANT *pVarResult,
13954 EXCEPINFO *pExcepInfo,
13955 UINT *puArgErr);
13956
13957 /*** ISpeechRecoContext methods ***/
13958 HRESULT (STDMETHODCALLTYPE *get_Recognizer)(
13959 ISpeechRecoContext *This,
13960 ISpeechRecognizer **Recognizer);
13961
13962 HRESULT (STDMETHODCALLTYPE *get_AudioInputInterferenceStatus)(
13963 ISpeechRecoContext *This,
13964 SpeechInterference *Interference);
13965
13966 HRESULT (STDMETHODCALLTYPE *get_RequestedUIType)(
13967 ISpeechRecoContext *This,
13968 BSTR *UIType);
13969
13970 HRESULT (STDMETHODCALLTYPE *putref_Voice)(
13971 ISpeechRecoContext *This,
13972 ISpeechVoice *Voice);
13973
13974 HRESULT (STDMETHODCALLTYPE *get_Voice)(
13975 ISpeechRecoContext *This,
13976 ISpeechVoice **Voice);
13977
13978 HRESULT (STDMETHODCALLTYPE *put_AllowVoiceFormatMatchingOnNextSet)(
13979 ISpeechRecoContext *This,
13980 VARIANT_BOOL Allow);
13981
13982 HRESULT (STDMETHODCALLTYPE *get_AllowVoiceFormatMatchingOnNextSet)(
13983 ISpeechRecoContext *This,
13984 VARIANT_BOOL *pAllow);
13985
13986 HRESULT (STDMETHODCALLTYPE *put_VoicePurgeEvent)(
13987 ISpeechRecoContext *This,
13988 SpeechRecoEvents EventInterest);
13989
13990 HRESULT (STDMETHODCALLTYPE *get_VoicePurgeEvent)(
13991 ISpeechRecoContext *This,
13992 SpeechRecoEvents *EventInterest);
13993
13994 HRESULT (STDMETHODCALLTYPE *put_EventInterests)(
13995 ISpeechRecoContext *This,
13996 SpeechRecoEvents EventInterest);
13997
13998 HRESULT (STDMETHODCALLTYPE *get_EventInterests)(
13999 ISpeechRecoContext *This,
14000 SpeechRecoEvents *EventInterest);
14001
14002 HRESULT (STDMETHODCALLTYPE *put_CmdMaxAlternates)(
14003 ISpeechRecoContext *This,
14004 LONG MaxAlternates);
14005
14006 HRESULT (STDMETHODCALLTYPE *get_CmdMaxAlternates)(
14007 ISpeechRecoContext *This,
14008 LONG *MaxAlternates);
14009
14010 HRESULT (STDMETHODCALLTYPE *put_State)(
14011 ISpeechRecoContext *This,
14012 SpeechRecoContextState State);
14013
14014 HRESULT (STDMETHODCALLTYPE *get_State)(
14015 ISpeechRecoContext *This,
14016 SpeechRecoContextState *State);
14017
14018 HRESULT (STDMETHODCALLTYPE *put_RetainedAudio)(
14019 ISpeechRecoContext *This,
14020 SpeechRetainedAudioOptions Option);
14021
14022 HRESULT (STDMETHODCALLTYPE *get_RetainedAudio)(
14023 ISpeechRecoContext *This,
14024 SpeechRetainedAudioOptions *Option);
14025
14026 HRESULT (STDMETHODCALLTYPE *putref_RetainedAudioFormat)(
14027 ISpeechRecoContext *This,
14028 ISpeechAudioFormat *Format);
14029
14030 HRESULT (STDMETHODCALLTYPE *get_RetainedAudioFormat)(
14031 ISpeechRecoContext *This,
14032 ISpeechAudioFormat **Format);
14033
14034 HRESULT (STDMETHODCALLTYPE *Pause)(
14035 ISpeechRecoContext *This);
14036
14037 HRESULT (STDMETHODCALLTYPE *Resume)(
14038 ISpeechRecoContext *This);
14039
14040 HRESULT (STDMETHODCALLTYPE *CreateGrammar)(
14041 ISpeechRecoContext *This,
14042 VARIANT GrammarId,
14043 ISpeechRecoGrammar **Grammar);
14044
14045 HRESULT (STDMETHODCALLTYPE *CreateResultFromMemory)(
14046 ISpeechRecoContext *This,
14047 VARIANT *ResultBlock,
14048 ISpeechRecoResult **Result);
14049
14050 HRESULT (STDMETHODCALLTYPE *Bookmark)(
14051 ISpeechRecoContext *This,
14052 SpeechBookmarkOptions Options,
14053 VARIANT StreamPos,
14054 VARIANT BookmarkId);
14055
14056 HRESULT (STDMETHODCALLTYPE *SetAdaptationData)(
14057 ISpeechRecoContext *This,
14058 BSTR AdaptationString);
14059
14060 END_INTERFACE
14061} ISpeechRecoContextVtbl;
14062
14063interface ISpeechRecoContext {
14064 CONST_VTBL ISpeechRecoContextVtbl* lpVtbl;
14065};
14066
14067#ifdef COBJMACROS
14068#ifndef WIDL_C_INLINE_WRAPPERS
14069/*** IUnknown methods ***/
14070#define ISpeechRecoContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14071#define ISpeechRecoContext_AddRef(This) (This)->lpVtbl->AddRef(This)
14072#define ISpeechRecoContext_Release(This) (This)->lpVtbl->Release(This)
14073/*** IDispatch methods ***/
14074#define ISpeechRecoContext_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14075#define ISpeechRecoContext_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14076#define ISpeechRecoContext_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14077#define ISpeechRecoContext_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14078/*** ISpeechRecoContext methods ***/
14079#define ISpeechRecoContext_get_Recognizer(This,Recognizer) (This)->lpVtbl->get_Recognizer(This,Recognizer)
14080#define ISpeechRecoContext_get_AudioInputInterferenceStatus(This,Interference) (This)->lpVtbl->get_AudioInputInterferenceStatus(This,Interference)
14081#define ISpeechRecoContext_get_RequestedUIType(This,UIType) (This)->lpVtbl->get_RequestedUIType(This,UIType)
14082#define ISpeechRecoContext_putref_Voice(This,Voice) (This)->lpVtbl->putref_Voice(This,Voice)
14083#define ISpeechRecoContext_get_Voice(This,Voice) (This)->lpVtbl->get_Voice(This,Voice)
14084#define ISpeechRecoContext_put_AllowVoiceFormatMatchingOnNextSet(This,Allow) (This)->lpVtbl->put_AllowVoiceFormatMatchingOnNextSet(This,Allow)
14085#define ISpeechRecoContext_get_AllowVoiceFormatMatchingOnNextSet(This,pAllow) (This)->lpVtbl->get_AllowVoiceFormatMatchingOnNextSet(This,pAllow)
14086#define ISpeechRecoContext_put_VoicePurgeEvent(This,EventInterest) (This)->lpVtbl->put_VoicePurgeEvent(This,EventInterest)
14087#define ISpeechRecoContext_get_VoicePurgeEvent(This,EventInterest) (This)->lpVtbl->get_VoicePurgeEvent(This,EventInterest)
14088#define ISpeechRecoContext_put_EventInterests(This,EventInterest) (This)->lpVtbl->put_EventInterests(This,EventInterest)
14089#define ISpeechRecoContext_get_EventInterests(This,EventInterest) (This)->lpVtbl->get_EventInterests(This,EventInterest)
14090#define ISpeechRecoContext_put_CmdMaxAlternates(This,MaxAlternates) (This)->lpVtbl->put_CmdMaxAlternates(This,MaxAlternates)
14091#define ISpeechRecoContext_get_CmdMaxAlternates(This,MaxAlternates) (This)->lpVtbl->get_CmdMaxAlternates(This,MaxAlternates)
14092#define ISpeechRecoContext_put_State(This,State) (This)->lpVtbl->put_State(This,State)
14093#define ISpeechRecoContext_get_State(This,State) (This)->lpVtbl->get_State(This,State)
14094#define ISpeechRecoContext_put_RetainedAudio(This,Option) (This)->lpVtbl->put_RetainedAudio(This,Option)
14095#define ISpeechRecoContext_get_RetainedAudio(This,Option) (This)->lpVtbl->get_RetainedAudio(This,Option)
14096#define ISpeechRecoContext_putref_RetainedAudioFormat(This,Format) (This)->lpVtbl->putref_RetainedAudioFormat(This,Format)
14097#define ISpeechRecoContext_get_RetainedAudioFormat(This,Format) (This)->lpVtbl->get_RetainedAudioFormat(This,Format)
14098#define ISpeechRecoContext_Pause(This) (This)->lpVtbl->Pause(This)
14099#define ISpeechRecoContext_Resume(This) (This)->lpVtbl->Resume(This)
14100#define ISpeechRecoContext_CreateGrammar(This,GrammarId,Grammar) (This)->lpVtbl->CreateGrammar(This,GrammarId,Grammar)
14101#define ISpeechRecoContext_CreateResultFromMemory(This,ResultBlock,Result) (This)->lpVtbl->CreateResultFromMemory(This,ResultBlock,Result)
14102#define ISpeechRecoContext_Bookmark(This,Options,StreamPos,BookmarkId) (This)->lpVtbl->Bookmark(This,Options,StreamPos,BookmarkId)
14103#define ISpeechRecoContext_SetAdaptationData(This,AdaptationString) (This)->lpVtbl->SetAdaptationData(This,AdaptationString)
14104#else
14105/*** IUnknown methods ***/
14106static inline HRESULT ISpeechRecoContext_QueryInterface(ISpeechRecoContext* This,REFIID riid,void **ppvObject) {
14107 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14108}
14109static inline ULONG ISpeechRecoContext_AddRef(ISpeechRecoContext* This) {
14110 return This->lpVtbl->AddRef(This);
14111}
14112static inline ULONG ISpeechRecoContext_Release(ISpeechRecoContext* This) {
14113 return This->lpVtbl->Release(This);
14114}
14115/*** IDispatch methods ***/
14116static inline HRESULT ISpeechRecoContext_GetTypeInfoCount(ISpeechRecoContext* This,UINT *pctinfo) {
14117 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14118}
14119static inline HRESULT ISpeechRecoContext_GetTypeInfo(ISpeechRecoContext* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14120 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14121}
14122static inline HRESULT ISpeechRecoContext_GetIDsOfNames(ISpeechRecoContext* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14123 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14124}
14125static inline HRESULT ISpeechRecoContext_Invoke(ISpeechRecoContext* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14126 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14127}
14128/*** ISpeechRecoContext methods ***/
14129static inline HRESULT ISpeechRecoContext_get_Recognizer(ISpeechRecoContext* This,ISpeechRecognizer **Recognizer) {
14130 return This->lpVtbl->get_Recognizer(This,Recognizer);
14131}
14132static inline HRESULT ISpeechRecoContext_get_AudioInputInterferenceStatus(ISpeechRecoContext* This,SpeechInterference *Interference) {
14133 return This->lpVtbl->get_AudioInputInterferenceStatus(This,Interference);
14134}
14135static inline HRESULT ISpeechRecoContext_get_RequestedUIType(ISpeechRecoContext* This,BSTR *UIType) {
14136 return This->lpVtbl->get_RequestedUIType(This,UIType);
14137}
14138static inline HRESULT ISpeechRecoContext_putref_Voice(ISpeechRecoContext* This,ISpeechVoice *Voice) {
14139 return This->lpVtbl->putref_Voice(This,Voice);
14140}
14141static inline HRESULT ISpeechRecoContext_get_Voice(ISpeechRecoContext* This,ISpeechVoice **Voice) {
14142 return This->lpVtbl->get_Voice(This,Voice);
14143}
14144static inline HRESULT ISpeechRecoContext_put_AllowVoiceFormatMatchingOnNextSet(ISpeechRecoContext* This,VARIANT_BOOL Allow) {
14145 return This->lpVtbl->put_AllowVoiceFormatMatchingOnNextSet(This,Allow);
14146}
14147static inline HRESULT ISpeechRecoContext_get_AllowVoiceFormatMatchingOnNextSet(ISpeechRecoContext* This,VARIANT_BOOL *pAllow) {
14148 return This->lpVtbl->get_AllowVoiceFormatMatchingOnNextSet(This,pAllow);
14149}
14150static inline HRESULT ISpeechRecoContext_put_VoicePurgeEvent(ISpeechRecoContext* This,SpeechRecoEvents EventInterest) {
14151 return This->lpVtbl->put_VoicePurgeEvent(This,EventInterest);
14152}
14153static inline HRESULT ISpeechRecoContext_get_VoicePurgeEvent(ISpeechRecoContext* This,SpeechRecoEvents *EventInterest) {
14154 return This->lpVtbl->get_VoicePurgeEvent(This,EventInterest);
14155}
14156static inline HRESULT ISpeechRecoContext_put_EventInterests(ISpeechRecoContext* This,SpeechRecoEvents EventInterest) {
14157 return This->lpVtbl->put_EventInterests(This,EventInterest);
14158}
14159static inline HRESULT ISpeechRecoContext_get_EventInterests(ISpeechRecoContext* This,SpeechRecoEvents *EventInterest) {
14160 return This->lpVtbl->get_EventInterests(This,EventInterest);
14161}
14162static inline HRESULT ISpeechRecoContext_put_CmdMaxAlternates(ISpeechRecoContext* This,LONG MaxAlternates) {
14163 return This->lpVtbl->put_CmdMaxAlternates(This,MaxAlternates);
14164}
14165static inline HRESULT ISpeechRecoContext_get_CmdMaxAlternates(ISpeechRecoContext* This,LONG *MaxAlternates) {
14166 return This->lpVtbl->get_CmdMaxAlternates(This,MaxAlternates);
14167}
14168static inline HRESULT ISpeechRecoContext_put_State(ISpeechRecoContext* This,SpeechRecoContextState State) {
14169 return This->lpVtbl->put_State(This,State);
14170}
14171static inline HRESULT ISpeechRecoContext_get_State(ISpeechRecoContext* This,SpeechRecoContextState *State) {
14172 return This->lpVtbl->get_State(This,State);
14173}
14174static inline HRESULT ISpeechRecoContext_put_RetainedAudio(ISpeechRecoContext* This,SpeechRetainedAudioOptions Option) {
14175 return This->lpVtbl->put_RetainedAudio(This,Option);
14176}
14177static inline HRESULT ISpeechRecoContext_get_RetainedAudio(ISpeechRecoContext* This,SpeechRetainedAudioOptions *Option) {
14178 return This->lpVtbl->get_RetainedAudio(This,Option);
14179}
14180static inline HRESULT ISpeechRecoContext_putref_RetainedAudioFormat(ISpeechRecoContext* This,ISpeechAudioFormat *Format) {
14181 return This->lpVtbl->putref_RetainedAudioFormat(This,Format);
14182}
14183static inline HRESULT ISpeechRecoContext_get_RetainedAudioFormat(ISpeechRecoContext* This,ISpeechAudioFormat **Format) {
14184 return This->lpVtbl->get_RetainedAudioFormat(This,Format);
14185}
14186static inline HRESULT ISpeechRecoContext_Pause(ISpeechRecoContext* This) {
14187 return This->lpVtbl->Pause(This);
14188}
14189static inline HRESULT ISpeechRecoContext_Resume(ISpeechRecoContext* This) {
14190 return This->lpVtbl->Resume(This);
14191}
14192static inline HRESULT ISpeechRecoContext_CreateGrammar(ISpeechRecoContext* This,VARIANT GrammarId,ISpeechRecoGrammar **Grammar) {
14193 return This->lpVtbl->CreateGrammar(This,GrammarId,Grammar);
14194}
14195static inline HRESULT ISpeechRecoContext_CreateResultFromMemory(ISpeechRecoContext* This,VARIANT *ResultBlock,ISpeechRecoResult **Result) {
14196 return This->lpVtbl->CreateResultFromMemory(This,ResultBlock,Result);
14197}
14198static inline HRESULT ISpeechRecoContext_Bookmark(ISpeechRecoContext* This,SpeechBookmarkOptions Options,VARIANT StreamPos,VARIANT BookmarkId) {
14199 return This->lpVtbl->Bookmark(This,Options,StreamPos,BookmarkId);
14200}
14201static inline HRESULT ISpeechRecoContext_SetAdaptationData(ISpeechRecoContext* This,BSTR AdaptationString) {
14202 return This->lpVtbl->SetAdaptationData(This,AdaptationString);
14203}
14204#endif
14205#endif
14206
14207#endif
14208
14209
14210#endif /* __ISpeechRecoContext_INTERFACE_DEFINED__ */
14211
14212/*****************************************************************************
14213 * ISpeechRecoGrammar interface
14214 */
14215#ifndef __ISpeechRecoGrammar_INTERFACE_DEFINED__
14216#define __ISpeechRecoGrammar_INTERFACE_DEFINED__
14217
14218DEFINE_GUID(IID_ISpeechRecoGrammar, 0xb6d6f79f, 0x2158, 0x4e50, 0xb5,0xbc, 0x9a,0x9c,0xcd,0x85,0x2a,0x09);
14219#if defined(__cplusplus) && !defined(CINTERFACE)
14220MIDL_INTERFACE("b6d6f79f-2158-4e50-b5bc-9a9ccd852a09")
14221ISpeechRecoGrammar : public IDispatch
14222{
14223 virtual HRESULT STDMETHODCALLTYPE get_Id(
14224 VARIANT *Id) = 0;
14225
14226 virtual HRESULT STDMETHODCALLTYPE get_RecoContext(
14227 ISpeechRecoContext **RecoContext) = 0;
14228
14229 virtual HRESULT STDMETHODCALLTYPE put_State(
14230 SpeechGrammarState State) = 0;
14231
14232 virtual HRESULT STDMETHODCALLTYPE get_State(
14233 SpeechGrammarState *State) = 0;
14234
14235 virtual HRESULT STDMETHODCALLTYPE get_Rules(
14236 ISpeechGrammarRules **Rules) = 0;
14237
14238 virtual HRESULT STDMETHODCALLTYPE Reset(
14239 SpeechLanguageId NewLanguage = 0) = 0;
14240
14241 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromFile(
14242 const BSTR FileName,
14243 SpeechLoadOption LoadOption = SLOStatic) = 0;
14244
14245 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromObject(
14246 const BSTR ClassId,
14247 const BSTR GrammarName,
14248 SpeechLoadOption LoadOption = SLOStatic) = 0;
14249
14250 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromResource(
14251 LONG hModule,
14252 VARIANT ResourceName,
14253 VARIANT ResourceType,
14254 SpeechLanguageId LanguageId,
14255 SpeechLoadOption LoadOption = SLOStatic) = 0;
14256
14257 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromMemory(
14258 VARIANT GrammarData,
14259 SpeechLoadOption LoadOption = SLOStatic) = 0;
14260
14261 virtual HRESULT STDMETHODCALLTYPE CmdLoadFromProprietaryGrammar(
14262 const BSTR ProprietaryGuid,
14263 const BSTR ProprietaryString,
14264 VARIANT ProprietaryData,
14265 SpeechLoadOption LoadOption = SLOStatic) = 0;
14266
14267 virtual HRESULT STDMETHODCALLTYPE CmdSetRuleState(
14268 const BSTR Name,
14269 SpeechRuleState State) = 0;
14270
14271 virtual HRESULT STDMETHODCALLTYPE CmdSetRuleIdState(
14272 LONG RuleId,
14273 SpeechRuleState State) = 0;
14274
14275 virtual HRESULT STDMETHODCALLTYPE DictationLoad(
14276 const BSTR TopicName = L"",
14277 SpeechLoadOption LoadOption = SLOStatic) = 0;
14278
14279 virtual HRESULT STDMETHODCALLTYPE DictationUnload(
14280 ) = 0;
14281
14282 virtual HRESULT STDMETHODCALLTYPE DictationSetState(
14283 SpeechRuleState State) = 0;
14284
14285 virtual HRESULT STDMETHODCALLTYPE SetWordSequenceData(
14286 const BSTR Text,
14287 LONG TextLength,
14288 ISpeechTextSelectionInformation *Info) = 0;
14289
14290 virtual HRESULT STDMETHODCALLTYPE SetTextSelection(
14291 ISpeechTextSelectionInformation *Info) = 0;
14292
14293 virtual HRESULT STDMETHODCALLTYPE IsPronounceable(
14294 const BSTR Word,
14295 SpeechWordPronounceable *WordPronounceable) = 0;
14296
14297};
14298#ifdef __CRT_UUID_DECL
14299__CRT_UUID_DECL(ISpeechRecoGrammar, 0xb6d6f79f, 0x2158, 0x4e50, 0xb5,0xbc, 0x9a,0x9c,0xcd,0x85,0x2a,0x09)
14300#endif
14301#else
14302typedef struct ISpeechRecoGrammarVtbl {
14303 BEGIN_INTERFACE
14304
14305 /*** IUnknown methods ***/
14306 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14307 ISpeechRecoGrammar *This,
14308 REFIID riid,
14309 void **ppvObject);
14310
14311 ULONG (STDMETHODCALLTYPE *AddRef)(
14312 ISpeechRecoGrammar *This);
14313
14314 ULONG (STDMETHODCALLTYPE *Release)(
14315 ISpeechRecoGrammar *This);
14316
14317 /*** IDispatch methods ***/
14318 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14319 ISpeechRecoGrammar *This,
14320 UINT *pctinfo);
14321
14322 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14323 ISpeechRecoGrammar *This,
14324 UINT iTInfo,
14325 LCID lcid,
14326 ITypeInfo **ppTInfo);
14327
14328 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14329 ISpeechRecoGrammar *This,
14330 REFIID riid,
14331 LPOLESTR *rgszNames,
14332 UINT cNames,
14333 LCID lcid,
14334 DISPID *rgDispId);
14335
14336 HRESULT (STDMETHODCALLTYPE *Invoke)(
14337 ISpeechRecoGrammar *This,
14338 DISPID dispIdMember,
14339 REFIID riid,
14340 LCID lcid,
14341 WORD wFlags,
14342 DISPPARAMS *pDispParams,
14343 VARIANT *pVarResult,
14344 EXCEPINFO *pExcepInfo,
14345 UINT *puArgErr);
14346
14347 /*** ISpeechRecoGrammar methods ***/
14348 HRESULT (STDMETHODCALLTYPE *get_Id)(
14349 ISpeechRecoGrammar *This,
14350 VARIANT *Id);
14351
14352 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
14353 ISpeechRecoGrammar *This,
14354 ISpeechRecoContext **RecoContext);
14355
14356 HRESULT (STDMETHODCALLTYPE *put_State)(
14357 ISpeechRecoGrammar *This,
14358 SpeechGrammarState State);
14359
14360 HRESULT (STDMETHODCALLTYPE *get_State)(
14361 ISpeechRecoGrammar *This,
14362 SpeechGrammarState *State);
14363
14364 HRESULT (STDMETHODCALLTYPE *get_Rules)(
14365 ISpeechRecoGrammar *This,
14366 ISpeechGrammarRules **Rules);
14367
14368 HRESULT (STDMETHODCALLTYPE *Reset)(
14369 ISpeechRecoGrammar *This,
14370 SpeechLanguageId NewLanguage);
14371
14372 HRESULT (STDMETHODCALLTYPE *CmdLoadFromFile)(
14373 ISpeechRecoGrammar *This,
14374 const BSTR FileName,
14375 SpeechLoadOption LoadOption);
14376
14377 HRESULT (STDMETHODCALLTYPE *CmdLoadFromObject)(
14378 ISpeechRecoGrammar *This,
14379 const BSTR ClassId,
14380 const BSTR GrammarName,
14381 SpeechLoadOption LoadOption);
14382
14383 HRESULT (STDMETHODCALLTYPE *CmdLoadFromResource)(
14384 ISpeechRecoGrammar *This,
14385 LONG hModule,
14386 VARIANT ResourceName,
14387 VARIANT ResourceType,
14388 SpeechLanguageId LanguageId,
14389 SpeechLoadOption LoadOption);
14390
14391 HRESULT (STDMETHODCALLTYPE *CmdLoadFromMemory)(
14392 ISpeechRecoGrammar *This,
14393 VARIANT GrammarData,
14394 SpeechLoadOption LoadOption);
14395
14396 HRESULT (STDMETHODCALLTYPE *CmdLoadFromProprietaryGrammar)(
14397 ISpeechRecoGrammar *This,
14398 const BSTR ProprietaryGuid,
14399 const BSTR ProprietaryString,
14400 VARIANT ProprietaryData,
14401 SpeechLoadOption LoadOption);
14402
14403 HRESULT (STDMETHODCALLTYPE *CmdSetRuleState)(
14404 ISpeechRecoGrammar *This,
14405 const BSTR Name,
14406 SpeechRuleState State);
14407
14408 HRESULT (STDMETHODCALLTYPE *CmdSetRuleIdState)(
14409 ISpeechRecoGrammar *This,
14410 LONG RuleId,
14411 SpeechRuleState State);
14412
14413 HRESULT (STDMETHODCALLTYPE *DictationLoad)(
14414 ISpeechRecoGrammar *This,
14415 const BSTR TopicName,
14416 SpeechLoadOption LoadOption);
14417
14418 HRESULT (STDMETHODCALLTYPE *DictationUnload)(
14419 ISpeechRecoGrammar *This);
14420
14421 HRESULT (STDMETHODCALLTYPE *DictationSetState)(
14422 ISpeechRecoGrammar *This,
14423 SpeechRuleState State);
14424
14425 HRESULT (STDMETHODCALLTYPE *SetWordSequenceData)(
14426 ISpeechRecoGrammar *This,
14427 const BSTR Text,
14428 LONG TextLength,
14429 ISpeechTextSelectionInformation *Info);
14430
14431 HRESULT (STDMETHODCALLTYPE *SetTextSelection)(
14432 ISpeechRecoGrammar *This,
14433 ISpeechTextSelectionInformation *Info);
14434
14435 HRESULT (STDMETHODCALLTYPE *IsPronounceable)(
14436 ISpeechRecoGrammar *This,
14437 const BSTR Word,
14438 SpeechWordPronounceable *WordPronounceable);
14439
14440 END_INTERFACE
14441} ISpeechRecoGrammarVtbl;
14442
14443interface ISpeechRecoGrammar {
14444 CONST_VTBL ISpeechRecoGrammarVtbl* lpVtbl;
14445};
14446
14447#ifdef COBJMACROS
14448#ifndef WIDL_C_INLINE_WRAPPERS
14449/*** IUnknown methods ***/
14450#define ISpeechRecoGrammar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14451#define ISpeechRecoGrammar_AddRef(This) (This)->lpVtbl->AddRef(This)
14452#define ISpeechRecoGrammar_Release(This) (This)->lpVtbl->Release(This)
14453/*** IDispatch methods ***/
14454#define ISpeechRecoGrammar_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14455#define ISpeechRecoGrammar_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14456#define ISpeechRecoGrammar_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14457#define ISpeechRecoGrammar_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14458/*** ISpeechRecoGrammar methods ***/
14459#define ISpeechRecoGrammar_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
14460#define ISpeechRecoGrammar_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
14461#define ISpeechRecoGrammar_put_State(This,State) (This)->lpVtbl->put_State(This,State)
14462#define ISpeechRecoGrammar_get_State(This,State) (This)->lpVtbl->get_State(This,State)
14463#define ISpeechRecoGrammar_get_Rules(This,Rules) (This)->lpVtbl->get_Rules(This,Rules)
14464#define ISpeechRecoGrammar_Reset(This,NewLanguage) (This)->lpVtbl->Reset(This,NewLanguage)
14465#define ISpeechRecoGrammar_CmdLoadFromFile(This,FileName,LoadOption) (This)->lpVtbl->CmdLoadFromFile(This,FileName,LoadOption)
14466#define ISpeechRecoGrammar_CmdLoadFromObject(This,ClassId,GrammarName,LoadOption) (This)->lpVtbl->CmdLoadFromObject(This,ClassId,GrammarName,LoadOption)
14467#define ISpeechRecoGrammar_CmdLoadFromResource(This,hModule,ResourceName,ResourceType,LanguageId,LoadOption) (This)->lpVtbl->CmdLoadFromResource(This,hModule,ResourceName,ResourceType,LanguageId,LoadOption)
14468#define ISpeechRecoGrammar_CmdLoadFromMemory(This,GrammarData,LoadOption) (This)->lpVtbl->CmdLoadFromMemory(This,GrammarData,LoadOption)
14469#define ISpeechRecoGrammar_CmdLoadFromProprietaryGrammar(This,ProprietaryGuid,ProprietaryString,ProprietaryData,LoadOption) (This)->lpVtbl->CmdLoadFromProprietaryGrammar(This,ProprietaryGuid,ProprietaryString,ProprietaryData,LoadOption)
14470#define ISpeechRecoGrammar_CmdSetRuleState(This,Name,State) (This)->lpVtbl->CmdSetRuleState(This,Name,State)
14471#define ISpeechRecoGrammar_CmdSetRuleIdState(This,RuleId,State) (This)->lpVtbl->CmdSetRuleIdState(This,RuleId,State)
14472#define ISpeechRecoGrammar_DictationLoad(This,TopicName,LoadOption) (This)->lpVtbl->DictationLoad(This,TopicName,LoadOption)
14473#define ISpeechRecoGrammar_DictationUnload(This) (This)->lpVtbl->DictationUnload(This)
14474#define ISpeechRecoGrammar_DictationSetState(This,State) (This)->lpVtbl->DictationSetState(This,State)
14475#define ISpeechRecoGrammar_SetWordSequenceData(This,Text,TextLength,Info) (This)->lpVtbl->SetWordSequenceData(This,Text,TextLength,Info)
14476#define ISpeechRecoGrammar_SetTextSelection(This,Info) (This)->lpVtbl->SetTextSelection(This,Info)
14477#define ISpeechRecoGrammar_IsPronounceable(This,Word,WordPronounceable) (This)->lpVtbl->IsPronounceable(This,Word,WordPronounceable)
14478#else
14479/*** IUnknown methods ***/
14480static inline HRESULT ISpeechRecoGrammar_QueryInterface(ISpeechRecoGrammar* This,REFIID riid,void **ppvObject) {
14481 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14482}
14483static inline ULONG ISpeechRecoGrammar_AddRef(ISpeechRecoGrammar* This) {
14484 return This->lpVtbl->AddRef(This);
14485}
14486static inline ULONG ISpeechRecoGrammar_Release(ISpeechRecoGrammar* This) {
14487 return This->lpVtbl->Release(This);
14488}
14489/*** IDispatch methods ***/
14490static inline HRESULT ISpeechRecoGrammar_GetTypeInfoCount(ISpeechRecoGrammar* This,UINT *pctinfo) {
14491 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14492}
14493static inline HRESULT ISpeechRecoGrammar_GetTypeInfo(ISpeechRecoGrammar* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14494 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14495}
14496static inline HRESULT ISpeechRecoGrammar_GetIDsOfNames(ISpeechRecoGrammar* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14497 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14498}
14499static inline HRESULT ISpeechRecoGrammar_Invoke(ISpeechRecoGrammar* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14500 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14501}
14502/*** ISpeechRecoGrammar methods ***/
14503static inline HRESULT ISpeechRecoGrammar_get_Id(ISpeechRecoGrammar* This,VARIANT *Id) {
14504 return This->lpVtbl->get_Id(This,Id);
14505}
14506static inline HRESULT ISpeechRecoGrammar_get_RecoContext(ISpeechRecoGrammar* This,ISpeechRecoContext **RecoContext) {
14507 return This->lpVtbl->get_RecoContext(This,RecoContext);
14508}
14509static inline HRESULT ISpeechRecoGrammar_put_State(ISpeechRecoGrammar* This,SpeechGrammarState State) {
14510 return This->lpVtbl->put_State(This,State);
14511}
14512static inline HRESULT ISpeechRecoGrammar_get_State(ISpeechRecoGrammar* This,SpeechGrammarState *State) {
14513 return This->lpVtbl->get_State(This,State);
14514}
14515static inline HRESULT ISpeechRecoGrammar_get_Rules(ISpeechRecoGrammar* This,ISpeechGrammarRules **Rules) {
14516 return This->lpVtbl->get_Rules(This,Rules);
14517}
14518static inline HRESULT ISpeechRecoGrammar_Reset(ISpeechRecoGrammar* This,SpeechLanguageId NewLanguage) {
14519 return This->lpVtbl->Reset(This,NewLanguage);
14520}
14521static inline HRESULT ISpeechRecoGrammar_CmdLoadFromFile(ISpeechRecoGrammar* This,const BSTR FileName,SpeechLoadOption LoadOption) {
14522 return This->lpVtbl->CmdLoadFromFile(This,FileName,LoadOption);
14523}
14524static inline HRESULT ISpeechRecoGrammar_CmdLoadFromObject(ISpeechRecoGrammar* This,const BSTR ClassId,const BSTR GrammarName,SpeechLoadOption LoadOption) {
14525 return This->lpVtbl->CmdLoadFromObject(This,ClassId,GrammarName,LoadOption);
14526}
14527static inline HRESULT ISpeechRecoGrammar_CmdLoadFromResource(ISpeechRecoGrammar* This,LONG hModule,VARIANT ResourceName,VARIANT ResourceType,SpeechLanguageId LanguageId,SpeechLoadOption LoadOption) {
14528 return This->lpVtbl->CmdLoadFromResource(This,hModule,ResourceName,ResourceType,LanguageId,LoadOption);
14529}
14530static inline HRESULT ISpeechRecoGrammar_CmdLoadFromMemory(ISpeechRecoGrammar* This,VARIANT GrammarData,SpeechLoadOption LoadOption) {
14531 return This->lpVtbl->CmdLoadFromMemory(This,GrammarData,LoadOption);
14532}
14533static inline HRESULT ISpeechRecoGrammar_CmdLoadFromProprietaryGrammar(ISpeechRecoGrammar* This,const BSTR ProprietaryGuid,const BSTR ProprietaryString,VARIANT ProprietaryData,SpeechLoadOption LoadOption) {
14534 return This->lpVtbl->CmdLoadFromProprietaryGrammar(This,ProprietaryGuid,ProprietaryString,ProprietaryData,LoadOption);
14535}
14536static inline HRESULT ISpeechRecoGrammar_CmdSetRuleState(ISpeechRecoGrammar* This,const BSTR Name,SpeechRuleState State) {
14537 return This->lpVtbl->CmdSetRuleState(This,Name,State);
14538}
14539static inline HRESULT ISpeechRecoGrammar_CmdSetRuleIdState(ISpeechRecoGrammar* This,LONG RuleId,SpeechRuleState State) {
14540 return This->lpVtbl->CmdSetRuleIdState(This,RuleId,State);
14541}
14542static inline HRESULT ISpeechRecoGrammar_DictationLoad(ISpeechRecoGrammar* This,const BSTR TopicName,SpeechLoadOption LoadOption) {
14543 return This->lpVtbl->DictationLoad(This,TopicName,LoadOption);
14544}
14545static inline HRESULT ISpeechRecoGrammar_DictationUnload(ISpeechRecoGrammar* This) {
14546 return This->lpVtbl->DictationUnload(This);
14547}
14548static inline HRESULT ISpeechRecoGrammar_DictationSetState(ISpeechRecoGrammar* This,SpeechRuleState State) {
14549 return This->lpVtbl->DictationSetState(This,State);
14550}
14551static inline HRESULT ISpeechRecoGrammar_SetWordSequenceData(ISpeechRecoGrammar* This,const BSTR Text,LONG TextLength,ISpeechTextSelectionInformation *Info) {
14552 return This->lpVtbl->SetWordSequenceData(This,Text,TextLength,Info);
14553}
14554static inline HRESULT ISpeechRecoGrammar_SetTextSelection(ISpeechRecoGrammar* This,ISpeechTextSelectionInformation *Info) {
14555 return This->lpVtbl->SetTextSelection(This,Info);
14556}
14557static inline HRESULT ISpeechRecoGrammar_IsPronounceable(ISpeechRecoGrammar* This,const BSTR Word,SpeechWordPronounceable *WordPronounceable) {
14558 return This->lpVtbl->IsPronounceable(This,Word,WordPronounceable);
14559}
14560#endif
14561#endif
14562
14563#endif
14564
14565
14566#endif /* __ISpeechRecoGrammar_INTERFACE_DEFINED__ */
14567
14568/*****************************************************************************
14569 * _ISpeechRecoContextEvents dispinterface
14570 */
14571#ifndef ___ISpeechRecoContextEvents_DISPINTERFACE_DEFINED__
14572#define ___ISpeechRecoContextEvents_DISPINTERFACE_DEFINED__
14573
14574DEFINE_GUID(DIID__ISpeechRecoContextEvents, 0x7b8fcb42, 0x0e9d, 0x4f00, 0xa0,0x48, 0x7b,0x04,0xd6,0x17,0x9d,0x3d);
14575#if defined(__cplusplus) && !defined(CINTERFACE)
14576MIDL_INTERFACE("7b8fcb42-0e9d-4f00-a048-7b04d6179d3d")
14577_ISpeechRecoContextEvents : public IDispatch
14578{
14579};
14580#ifdef __CRT_UUID_DECL
14581__CRT_UUID_DECL(_ISpeechRecoContextEvents, 0x7b8fcb42, 0x0e9d, 0x4f00, 0xa0,0x48, 0x7b,0x04,0xd6,0x17,0x9d,0x3d)
14582#endif
14583#else
14584typedef struct _ISpeechRecoContextEventsVtbl {
14585 BEGIN_INTERFACE
14586
14587 /*** IUnknown methods ***/
14588 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14589 _ISpeechRecoContextEvents *This,
14590 REFIID riid,
14591 void **ppvObject);
14592
14593 ULONG (STDMETHODCALLTYPE *AddRef)(
14594 _ISpeechRecoContextEvents *This);
14595
14596 ULONG (STDMETHODCALLTYPE *Release)(
14597 _ISpeechRecoContextEvents *This);
14598
14599 /*** IDispatch methods ***/
14600 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14601 _ISpeechRecoContextEvents *This,
14602 UINT *pctinfo);
14603
14604 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14605 _ISpeechRecoContextEvents *This,
14606 UINT iTInfo,
14607 LCID lcid,
14608 ITypeInfo **ppTInfo);
14609
14610 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14611 _ISpeechRecoContextEvents *This,
14612 REFIID riid,
14613 LPOLESTR *rgszNames,
14614 UINT cNames,
14615 LCID lcid,
14616 DISPID *rgDispId);
14617
14618 HRESULT (STDMETHODCALLTYPE *Invoke)(
14619 _ISpeechRecoContextEvents *This,
14620 DISPID dispIdMember,
14621 REFIID riid,
14622 LCID lcid,
14623 WORD wFlags,
14624 DISPPARAMS *pDispParams,
14625 VARIANT *pVarResult,
14626 EXCEPINFO *pExcepInfo,
14627 UINT *puArgErr);
14628
14629 END_INTERFACE
14630} _ISpeechRecoContextEventsVtbl;
14631
14632interface _ISpeechRecoContextEvents {
14633 CONST_VTBL _ISpeechRecoContextEventsVtbl* lpVtbl;
14634};
14635
14636#ifdef COBJMACROS
14637#ifndef WIDL_C_INLINE_WRAPPERS
14638/*** IUnknown methods ***/
14639#define _ISpeechRecoContextEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14640#define _ISpeechRecoContextEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
14641#define _ISpeechRecoContextEvents_Release(This) (This)->lpVtbl->Release(This)
14642/*** IDispatch methods ***/
14643#define _ISpeechRecoContextEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14644#define _ISpeechRecoContextEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14645#define _ISpeechRecoContextEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14646#define _ISpeechRecoContextEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14647#else
14648/*** IUnknown methods ***/
14649static inline HRESULT _ISpeechRecoContextEvents_QueryInterface(_ISpeechRecoContextEvents* This,REFIID riid,void **ppvObject) {
14650 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14651}
14652static inline ULONG _ISpeechRecoContextEvents_AddRef(_ISpeechRecoContextEvents* This) {
14653 return This->lpVtbl->AddRef(This);
14654}
14655static inline ULONG _ISpeechRecoContextEvents_Release(_ISpeechRecoContextEvents* This) {
14656 return This->lpVtbl->Release(This);
14657}
14658/*** IDispatch methods ***/
14659static inline HRESULT _ISpeechRecoContextEvents_GetTypeInfoCount(_ISpeechRecoContextEvents* This,UINT *pctinfo) {
14660 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14661}
14662static inline HRESULT _ISpeechRecoContextEvents_GetTypeInfo(_ISpeechRecoContextEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14663 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14664}
14665static inline HRESULT _ISpeechRecoContextEvents_GetIDsOfNames(_ISpeechRecoContextEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14666 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14667}
14668static inline HRESULT _ISpeechRecoContextEvents_Invoke(_ISpeechRecoContextEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14669 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14670}
14671#endif
14672#endif
14673
14674#endif
14675
14676#endif /* ___ISpeechRecoContextEvents_DISPINTERFACE_DEFINED__ */
14677
14678/*****************************************************************************
14679 * ISpeechGrammarRule interface
14680 */
14681#ifndef __ISpeechGrammarRule_INTERFACE_DEFINED__
14682#define __ISpeechGrammarRule_INTERFACE_DEFINED__
14683
14684DEFINE_GUID(IID_ISpeechGrammarRule, 0xafe719cf, 0x5dd1, 0x44f2, 0x99,0x9c, 0x7a,0x39,0x9f,0x1c,0xfc,0xcc);
14685#if defined(__cplusplus) && !defined(CINTERFACE)
14686MIDL_INTERFACE("afe719cf-5dd1-44f2-999c-7a399f1cfccc")
14687ISpeechGrammarRule : public IDispatch
14688{
14689 virtual HRESULT STDMETHODCALLTYPE get_Attributes(
14690 SpeechRuleAttributes *Attributes) = 0;
14691
14692 virtual HRESULT STDMETHODCALLTYPE get_InitialState(
14693 ISpeechGrammarRuleState **State) = 0;
14694
14695 virtual HRESULT STDMETHODCALLTYPE get_Name(
14696 BSTR *Name) = 0;
14697
14698 virtual HRESULT STDMETHODCALLTYPE get_Id(
14699 LONG *Id) = 0;
14700
14701 virtual HRESULT STDMETHODCALLTYPE Clear(
14702 ) = 0;
14703
14704 virtual HRESULT STDMETHODCALLTYPE AddResource(
14705 const BSTR ResourceName,
14706 const BSTR ResourceValue) = 0;
14707
14708 virtual HRESULT STDMETHODCALLTYPE AddState(
14709 ISpeechGrammarRuleState **State) = 0;
14710
14711};
14712#ifdef __CRT_UUID_DECL
14713__CRT_UUID_DECL(ISpeechGrammarRule, 0xafe719cf, 0x5dd1, 0x44f2, 0x99,0x9c, 0x7a,0x39,0x9f,0x1c,0xfc,0xcc)
14714#endif
14715#else
14716typedef struct ISpeechGrammarRuleVtbl {
14717 BEGIN_INTERFACE
14718
14719 /*** IUnknown methods ***/
14720 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14721 ISpeechGrammarRule *This,
14722 REFIID riid,
14723 void **ppvObject);
14724
14725 ULONG (STDMETHODCALLTYPE *AddRef)(
14726 ISpeechGrammarRule *This);
14727
14728 ULONG (STDMETHODCALLTYPE *Release)(
14729 ISpeechGrammarRule *This);
14730
14731 /*** IDispatch methods ***/
14732 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14733 ISpeechGrammarRule *This,
14734 UINT *pctinfo);
14735
14736 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14737 ISpeechGrammarRule *This,
14738 UINT iTInfo,
14739 LCID lcid,
14740 ITypeInfo **ppTInfo);
14741
14742 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14743 ISpeechGrammarRule *This,
14744 REFIID riid,
14745 LPOLESTR *rgszNames,
14746 UINT cNames,
14747 LCID lcid,
14748 DISPID *rgDispId);
14749
14750 HRESULT (STDMETHODCALLTYPE *Invoke)(
14751 ISpeechGrammarRule *This,
14752 DISPID dispIdMember,
14753 REFIID riid,
14754 LCID lcid,
14755 WORD wFlags,
14756 DISPPARAMS *pDispParams,
14757 VARIANT *pVarResult,
14758 EXCEPINFO *pExcepInfo,
14759 UINT *puArgErr);
14760
14761 /*** ISpeechGrammarRule methods ***/
14762 HRESULT (STDMETHODCALLTYPE *get_Attributes)(
14763 ISpeechGrammarRule *This,
14764 SpeechRuleAttributes *Attributes);
14765
14766 HRESULT (STDMETHODCALLTYPE *get_InitialState)(
14767 ISpeechGrammarRule *This,
14768 ISpeechGrammarRuleState **State);
14769
14770 HRESULT (STDMETHODCALLTYPE *get_Name)(
14771 ISpeechGrammarRule *This,
14772 BSTR *Name);
14773
14774 HRESULT (STDMETHODCALLTYPE *get_Id)(
14775 ISpeechGrammarRule *This,
14776 LONG *Id);
14777
14778 HRESULT (STDMETHODCALLTYPE *Clear)(
14779 ISpeechGrammarRule *This);
14780
14781 HRESULT (STDMETHODCALLTYPE *AddResource)(
14782 ISpeechGrammarRule *This,
14783 const BSTR ResourceName,
14784 const BSTR ResourceValue);
14785
14786 HRESULT (STDMETHODCALLTYPE *AddState)(
14787 ISpeechGrammarRule *This,
14788 ISpeechGrammarRuleState **State);
14789
14790 END_INTERFACE
14791} ISpeechGrammarRuleVtbl;
14792
14793interface ISpeechGrammarRule {
14794 CONST_VTBL ISpeechGrammarRuleVtbl* lpVtbl;
14795};
14796
14797#ifdef COBJMACROS
14798#ifndef WIDL_C_INLINE_WRAPPERS
14799/*** IUnknown methods ***/
14800#define ISpeechGrammarRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14801#define ISpeechGrammarRule_AddRef(This) (This)->lpVtbl->AddRef(This)
14802#define ISpeechGrammarRule_Release(This) (This)->lpVtbl->Release(This)
14803/*** IDispatch methods ***/
14804#define ISpeechGrammarRule_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14805#define ISpeechGrammarRule_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14806#define ISpeechGrammarRule_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14807#define ISpeechGrammarRule_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14808/*** ISpeechGrammarRule methods ***/
14809#define ISpeechGrammarRule_get_Attributes(This,Attributes) (This)->lpVtbl->get_Attributes(This,Attributes)
14810#define ISpeechGrammarRule_get_InitialState(This,State) (This)->lpVtbl->get_InitialState(This,State)
14811#define ISpeechGrammarRule_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
14812#define ISpeechGrammarRule_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
14813#define ISpeechGrammarRule_Clear(This) (This)->lpVtbl->Clear(This)
14814#define ISpeechGrammarRule_AddResource(This,ResourceName,ResourceValue) (This)->lpVtbl->AddResource(This,ResourceName,ResourceValue)
14815#define ISpeechGrammarRule_AddState(This,State) (This)->lpVtbl->AddState(This,State)
14816#else
14817/*** IUnknown methods ***/
14818static inline HRESULT ISpeechGrammarRule_QueryInterface(ISpeechGrammarRule* This,REFIID riid,void **ppvObject) {
14819 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14820}
14821static inline ULONG ISpeechGrammarRule_AddRef(ISpeechGrammarRule* This) {
14822 return This->lpVtbl->AddRef(This);
14823}
14824static inline ULONG ISpeechGrammarRule_Release(ISpeechGrammarRule* This) {
14825 return This->lpVtbl->Release(This);
14826}
14827/*** IDispatch methods ***/
14828static inline HRESULT ISpeechGrammarRule_GetTypeInfoCount(ISpeechGrammarRule* This,UINT *pctinfo) {
14829 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14830}
14831static inline HRESULT ISpeechGrammarRule_GetTypeInfo(ISpeechGrammarRule* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14832 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14833}
14834static inline HRESULT ISpeechGrammarRule_GetIDsOfNames(ISpeechGrammarRule* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14835 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14836}
14837static inline HRESULT ISpeechGrammarRule_Invoke(ISpeechGrammarRule* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14838 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14839}
14840/*** ISpeechGrammarRule methods ***/
14841static inline HRESULT ISpeechGrammarRule_get_Attributes(ISpeechGrammarRule* This,SpeechRuleAttributes *Attributes) {
14842 return This->lpVtbl->get_Attributes(This,Attributes);
14843}
14844static inline HRESULT ISpeechGrammarRule_get_InitialState(ISpeechGrammarRule* This,ISpeechGrammarRuleState **State) {
14845 return This->lpVtbl->get_InitialState(This,State);
14846}
14847static inline HRESULT ISpeechGrammarRule_get_Name(ISpeechGrammarRule* This,BSTR *Name) {
14848 return This->lpVtbl->get_Name(This,Name);
14849}
14850static inline HRESULT ISpeechGrammarRule_get_Id(ISpeechGrammarRule* This,LONG *Id) {
14851 return This->lpVtbl->get_Id(This,Id);
14852}
14853static inline HRESULT ISpeechGrammarRule_Clear(ISpeechGrammarRule* This) {
14854 return This->lpVtbl->Clear(This);
14855}
14856static inline HRESULT ISpeechGrammarRule_AddResource(ISpeechGrammarRule* This,const BSTR ResourceName,const BSTR ResourceValue) {
14857 return This->lpVtbl->AddResource(This,ResourceName,ResourceValue);
14858}
14859static inline HRESULT ISpeechGrammarRule_AddState(ISpeechGrammarRule* This,ISpeechGrammarRuleState **State) {
14860 return This->lpVtbl->AddState(This,State);
14861}
14862#endif
14863#endif
14864
14865#endif
14866
14867
14868#endif /* __ISpeechGrammarRule_INTERFACE_DEFINED__ */
14869
14870/*****************************************************************************
14871 * ISpeechGrammarRules interface
14872 */
14873#ifndef __ISpeechGrammarRules_INTERFACE_DEFINED__
14874#define __ISpeechGrammarRules_INTERFACE_DEFINED__
14875
14876DEFINE_GUID(IID_ISpeechGrammarRules, 0x6ffa3b44, 0xfc2d, 0x40d1, 0x8a,0xfc, 0x32,0x91,0x1c,0x7f,0x1a,0xd1);
14877#if defined(__cplusplus) && !defined(CINTERFACE)
14878MIDL_INTERFACE("6ffa3b44-fc2d-40d1-8afc-32911c7f1ad1")
14879ISpeechGrammarRules : public IDispatch
14880{
14881 virtual HRESULT STDMETHODCALLTYPE get_Count(
14882 LONG *Count) = 0;
14883
14884 virtual HRESULT STDMETHODCALLTYPE FindRule(
14885 VARIANT RuleNameOrId,
14886 ISpeechGrammarRule **Rule) = 0;
14887
14888 virtual HRESULT STDMETHODCALLTYPE Item(
14889 LONG Index,
14890 ISpeechGrammarRule **Rule) = 0;
14891
14892 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
14893 IUnknown **EnumVARIANT) = 0;
14894
14895 virtual HRESULT STDMETHODCALLTYPE get_Dynamic(
14896 VARIANT_BOOL *Dynamic) = 0;
14897
14898 virtual HRESULT STDMETHODCALLTYPE Add(
14899 BSTR RuleName,
14900 SpeechRuleAttributes Attributes,
14901 LONG RuleId,
14902 ISpeechGrammarRule **Rule) = 0;
14903
14904 virtual HRESULT STDMETHODCALLTYPE Commit(
14905 ) = 0;
14906
14907 virtual HRESULT STDMETHODCALLTYPE CommitAndSave(
14908 BSTR *ErrorText,
14909 VARIANT *SaveStream) = 0;
14910
14911};
14912#ifdef __CRT_UUID_DECL
14913__CRT_UUID_DECL(ISpeechGrammarRules, 0x6ffa3b44, 0xfc2d, 0x40d1, 0x8a,0xfc, 0x32,0x91,0x1c,0x7f,0x1a,0xd1)
14914#endif
14915#else
14916typedef struct ISpeechGrammarRulesVtbl {
14917 BEGIN_INTERFACE
14918
14919 /*** IUnknown methods ***/
14920 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14921 ISpeechGrammarRules *This,
14922 REFIID riid,
14923 void **ppvObject);
14924
14925 ULONG (STDMETHODCALLTYPE *AddRef)(
14926 ISpeechGrammarRules *This);
14927
14928 ULONG (STDMETHODCALLTYPE *Release)(
14929 ISpeechGrammarRules *This);
14930
14931 /*** IDispatch methods ***/
14932 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14933 ISpeechGrammarRules *This,
14934 UINT *pctinfo);
14935
14936 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14937 ISpeechGrammarRules *This,
14938 UINT iTInfo,
14939 LCID lcid,
14940 ITypeInfo **ppTInfo);
14941
14942 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14943 ISpeechGrammarRules *This,
14944 REFIID riid,
14945 LPOLESTR *rgszNames,
14946 UINT cNames,
14947 LCID lcid,
14948 DISPID *rgDispId);
14949
14950 HRESULT (STDMETHODCALLTYPE *Invoke)(
14951 ISpeechGrammarRules *This,
14952 DISPID dispIdMember,
14953 REFIID riid,
14954 LCID lcid,
14955 WORD wFlags,
14956 DISPPARAMS *pDispParams,
14957 VARIANT *pVarResult,
14958 EXCEPINFO *pExcepInfo,
14959 UINT *puArgErr);
14960
14961 /*** ISpeechGrammarRules methods ***/
14962 HRESULT (STDMETHODCALLTYPE *get_Count)(
14963 ISpeechGrammarRules *This,
14964 LONG *Count);
14965
14966 HRESULT (STDMETHODCALLTYPE *FindRule)(
14967 ISpeechGrammarRules *This,
14968 VARIANT RuleNameOrId,
14969 ISpeechGrammarRule **Rule);
14970
14971 HRESULT (STDMETHODCALLTYPE *Item)(
14972 ISpeechGrammarRules *This,
14973 LONG Index,
14974 ISpeechGrammarRule **Rule);
14975
14976 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
14977 ISpeechGrammarRules *This,
14978 IUnknown **EnumVARIANT);
14979
14980 HRESULT (STDMETHODCALLTYPE *get_Dynamic)(
14981 ISpeechGrammarRules *This,
14982 VARIANT_BOOL *Dynamic);
14983
14984 HRESULT (STDMETHODCALLTYPE *Add)(
14985 ISpeechGrammarRules *This,
14986 BSTR RuleName,
14987 SpeechRuleAttributes Attributes,
14988 LONG RuleId,
14989 ISpeechGrammarRule **Rule);
14990
14991 HRESULT (STDMETHODCALLTYPE *Commit)(
14992 ISpeechGrammarRules *This);
14993
14994 HRESULT (STDMETHODCALLTYPE *CommitAndSave)(
14995 ISpeechGrammarRules *This,
14996 BSTR *ErrorText,
14997 VARIANT *SaveStream);
14998
14999 END_INTERFACE
15000} ISpeechGrammarRulesVtbl;
15001
15002interface ISpeechGrammarRules {
15003 CONST_VTBL ISpeechGrammarRulesVtbl* lpVtbl;
15004};
15005
15006#ifdef COBJMACROS
15007#ifndef WIDL_C_INLINE_WRAPPERS
15008/*** IUnknown methods ***/
15009#define ISpeechGrammarRules_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15010#define ISpeechGrammarRules_AddRef(This) (This)->lpVtbl->AddRef(This)
15011#define ISpeechGrammarRules_Release(This) (This)->lpVtbl->Release(This)
15012/*** IDispatch methods ***/
15013#define ISpeechGrammarRules_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
15014#define ISpeechGrammarRules_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
15015#define ISpeechGrammarRules_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
15016#define ISpeechGrammarRules_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
15017/*** ISpeechGrammarRules methods ***/
15018#define ISpeechGrammarRules_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
15019#define ISpeechGrammarRules_FindRule(This,RuleNameOrId,Rule) (This)->lpVtbl->FindRule(This,RuleNameOrId,Rule)
15020#define ISpeechGrammarRules_Item(This,Index,Rule) (This)->lpVtbl->Item(This,Index,Rule)
15021#define ISpeechGrammarRules_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
15022#define ISpeechGrammarRules_get_Dynamic(This,Dynamic) (This)->lpVtbl->get_Dynamic(This,Dynamic)
15023#define ISpeechGrammarRules_Add(This,RuleName,Attributes,RuleId,Rule) (This)->lpVtbl->Add(This,RuleName,Attributes,RuleId,Rule)
15024#define ISpeechGrammarRules_Commit(This) (This)->lpVtbl->Commit(This)
15025#define ISpeechGrammarRules_CommitAndSave(This,ErrorText,SaveStream) (This)->lpVtbl->CommitAndSave(This,ErrorText,SaveStream)
15026#else
15027/*** IUnknown methods ***/
15028static inline HRESULT ISpeechGrammarRules_QueryInterface(ISpeechGrammarRules* This,REFIID riid,void **ppvObject) {
15029 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15030}
15031static inline ULONG ISpeechGrammarRules_AddRef(ISpeechGrammarRules* This) {
15032 return This->lpVtbl->AddRef(This);
15033}
15034static inline ULONG ISpeechGrammarRules_Release(ISpeechGrammarRules* This) {
15035 return This->lpVtbl->Release(This);
15036}
15037/*** IDispatch methods ***/
15038static inline HRESULT ISpeechGrammarRules_GetTypeInfoCount(ISpeechGrammarRules* This,UINT *pctinfo) {
15039 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
15040}
15041static inline HRESULT ISpeechGrammarRules_GetTypeInfo(ISpeechGrammarRules* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
15042 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
15043}
15044static inline HRESULT ISpeechGrammarRules_GetIDsOfNames(ISpeechGrammarRules* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
15045 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
15046}
15047static inline HRESULT ISpeechGrammarRules_Invoke(ISpeechGrammarRules* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
15048 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
15049}
15050/*** ISpeechGrammarRules methods ***/
15051static inline HRESULT ISpeechGrammarRules_get_Count(ISpeechGrammarRules* This,LONG *Count) {
15052 return This->lpVtbl->get_Count(This,Count);
15053}
15054static inline HRESULT ISpeechGrammarRules_FindRule(ISpeechGrammarRules* This,VARIANT RuleNameOrId,ISpeechGrammarRule **Rule) {
15055 return This->lpVtbl->FindRule(This,RuleNameOrId,Rule);
15056}
15057static inline HRESULT ISpeechGrammarRules_Item(ISpeechGrammarRules* This,LONG Index,ISpeechGrammarRule **Rule) {
15058 return This->lpVtbl->Item(This,Index,Rule);
15059}
15060static inline HRESULT ISpeechGrammarRules_get__NewEnum(ISpeechGrammarRules* This,IUnknown **EnumVARIANT) {
15061 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
15062}
15063static inline HRESULT ISpeechGrammarRules_get_Dynamic(ISpeechGrammarRules* This,VARIANT_BOOL *Dynamic) {
15064 return This->lpVtbl->get_Dynamic(This,Dynamic);
15065}
15066static inline HRESULT ISpeechGrammarRules_Add(ISpeechGrammarRules* This,BSTR RuleName,SpeechRuleAttributes Attributes,LONG RuleId,ISpeechGrammarRule **Rule) {
15067 return This->lpVtbl->Add(This,RuleName,Attributes,RuleId,Rule);
15068}
15069static inline HRESULT ISpeechGrammarRules_Commit(ISpeechGrammarRules* This) {
15070 return This->lpVtbl->Commit(This);
15071}
15072static inline HRESULT ISpeechGrammarRules_CommitAndSave(ISpeechGrammarRules* This,BSTR *ErrorText,VARIANT *SaveStream) {
15073 return This->lpVtbl->CommitAndSave(This,ErrorText,SaveStream);
15074}
15075#endif
15076#endif
15077
15078#endif
15079
15080
15081#endif /* __ISpeechGrammarRules_INTERFACE_DEFINED__ */
15082
15083/*****************************************************************************
15084 * ISpeechGrammarRuleState interface
15085 */
15086#ifndef __ISpeechGrammarRuleState_INTERFACE_DEFINED__
15087#define __ISpeechGrammarRuleState_INTERFACE_DEFINED__
15088
15089DEFINE_GUID(IID_ISpeechGrammarRuleState, 0xd4286f2c, 0xee67, 0x45ae, 0xb9,0x28, 0x28,0xd6,0x95,0x36,0x2e,0xda);
15090#if defined(__cplusplus) && !defined(CINTERFACE)
15091MIDL_INTERFACE("d4286f2c-ee67-45ae-b928-28d695362eda")
15092ISpeechGrammarRuleState : public IDispatch
15093{
15094 virtual HRESULT STDMETHODCALLTYPE get_Rule(
15095 ISpeechGrammarRule **Rule) = 0;
15096
15097 virtual HRESULT STDMETHODCALLTYPE get_Transitions(
15098 ISpeechGrammarRuleStateTransitions **Transitions) = 0;
15099
15100 virtual HRESULT STDMETHODCALLTYPE AddWordTransition(
15101 ISpeechGrammarRuleState *DestState,
15102 const BSTR Words,
15103 const BSTR Separators = L" ",
15104 SpeechGrammarWordType Type = SGLexical,
15105 const BSTR PropertyName = L"",
15106 LONG PropertyId = 0,
15107 VARIANT *PropertyValue = 0,
15108 float Weight = 1) = 0;
15109
15110 virtual HRESULT STDMETHODCALLTYPE AddRuleTransition(
15111 ISpeechGrammarRuleState *DestinationState,
15112 ISpeechGrammarRule *Rule,
15113 const BSTR PropertyName = L"",
15114 LONG PropertyId = 0,
15115 VARIANT *PropertyValue = 0,
15116 float Weight = 1) = 0;
15117
15118 virtual HRESULT STDMETHODCALLTYPE AddSpecialTransition(
15119 ISpeechGrammarRuleState *DestinationState,
15120 SpeechSpecialTransitionType Type,
15121 const BSTR PropertyName = L"",
15122 LONG PropertyId = 0,
15123 VARIANT *PropertyValue = 0,
15124 float Weight = 1) = 0;
15125
15126};
15127#ifdef __CRT_UUID_DECL
15128__CRT_UUID_DECL(ISpeechGrammarRuleState, 0xd4286f2c, 0xee67, 0x45ae, 0xb9,0x28, 0x28,0xd6,0x95,0x36,0x2e,0xda)
15129#endif
15130#else
15131typedef struct ISpeechGrammarRuleStateVtbl {
15132 BEGIN_INTERFACE
15133
15134 /*** IUnknown methods ***/
15135 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15136 ISpeechGrammarRuleState *This,
15137 REFIID riid,
15138 void **ppvObject);
15139
15140 ULONG (STDMETHODCALLTYPE *AddRef)(
15141 ISpeechGrammarRuleState *This);
15142
15143 ULONG (STDMETHODCALLTYPE *Release)(
15144 ISpeechGrammarRuleState *This);
15145
15146 /*** IDispatch methods ***/
15147 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
15148 ISpeechGrammarRuleState *This,
15149 UINT *pctinfo);
15150
15151 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
15152 ISpeechGrammarRuleState *This,
15153 UINT iTInfo,
15154 LCID lcid,
15155 ITypeInfo **ppTInfo);
15156
15157 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
15158 ISpeechGrammarRuleState *This,
15159 REFIID riid,
15160 LPOLESTR *rgszNames,
15161 UINT cNames,
15162 LCID lcid,
15163 DISPID *rgDispId);
15164
15165 HRESULT (STDMETHODCALLTYPE *Invoke)(
15166 ISpeechGrammarRuleState *This,
15167 DISPID dispIdMember,
15168 REFIID riid,
15169 LCID lcid,
15170 WORD wFlags,
15171 DISPPARAMS *pDispParams,
15172 VARIANT *pVarResult,
15173 EXCEPINFO *pExcepInfo,
15174 UINT *puArgErr);
15175
15176 /*** ISpeechGrammarRuleState methods ***/
15177 HRESULT (STDMETHODCALLTYPE *get_Rule)(
15178 ISpeechGrammarRuleState *This,
15179 ISpeechGrammarRule **Rule);
15180
15181 HRESULT (STDMETHODCALLTYPE *get_Transitions)(
15182 ISpeechGrammarRuleState *This,
15183 ISpeechGrammarRuleStateTransitions **Transitions);
15184
15185 HRESULT (STDMETHODCALLTYPE *AddWordTransition)(
15186 ISpeechGrammarRuleState *This,
15187 ISpeechGrammarRuleState *DestState,
15188 const BSTR Words,
15189 const BSTR Separators,
15190 SpeechGrammarWordType Type,
15191 const BSTR PropertyName,
15192 LONG PropertyId,
15193 VARIANT *PropertyValue,
15194 float Weight);
15195
15196 HRESULT (STDMETHODCALLTYPE *AddRuleTransition)(
15197 ISpeechGrammarRuleState *This,
15198 ISpeechGrammarRuleState *DestinationState,
15199 ISpeechGrammarRule *Rule,
15200 const BSTR PropertyName,
15201 LONG PropertyId,
15202 VARIANT *PropertyValue,
15203 float Weight);
15204
15205 HRESULT (STDMETHODCALLTYPE *AddSpecialTransition)(
15206 ISpeechGrammarRuleState *This,
15207 ISpeechGrammarRuleState *DestinationState,
15208 SpeechSpecialTransitionType Type,
15209 const BSTR PropertyName,
15210 LONG PropertyId,
15211 VARIANT *PropertyValue,
15212 float Weight);
15213
15214 END_INTERFACE
15215} ISpeechGrammarRuleStateVtbl;
15216
15217interface ISpeechGrammarRuleState {
15218 CONST_VTBL ISpeechGrammarRuleStateVtbl* lpVtbl;
15219};
15220
15221#ifdef COBJMACROS
15222#ifndef WIDL_C_INLINE_WRAPPERS
15223/*** IUnknown methods ***/
15224#define ISpeechGrammarRuleState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15225#define ISpeechGrammarRuleState_AddRef(This) (This)->lpVtbl->AddRef(This)
15226#define ISpeechGrammarRuleState_Release(This) (This)->lpVtbl->Release(This)
15227/*** IDispatch methods ***/
15228#define ISpeechGrammarRuleState_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
15229#define ISpeechGrammarRuleState_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
15230#define ISpeechGrammarRuleState_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
15231#define ISpeechGrammarRuleState_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
15232/*** ISpeechGrammarRuleState methods ***/
15233#define ISpeechGrammarRuleState_get_Rule(This,Rule) (This)->lpVtbl->get_Rule(This,Rule)
15234#define ISpeechGrammarRuleState_get_Transitions(This,Transitions) (This)->lpVtbl->get_Transitions(This,Transitions)
15235#define ISpeechGrammarRuleState_AddWordTransition(This,DestState,Words,Separators,Type,PropertyName,PropertyId,PropertyValue,Weight) (This)->lpVtbl->AddWordTransition(This,DestState,Words,Separators,Type,PropertyName,PropertyId,PropertyValue,Weight)
15236#define ISpeechGrammarRuleState_AddRuleTransition(This,DestinationState,Rule,PropertyName,PropertyId,PropertyValue,Weight) (This)->lpVtbl->AddRuleTransition(This,DestinationState,Rule,PropertyName,PropertyId,PropertyValue,Weight)
15237#define ISpeechGrammarRuleState_AddSpecialTransition(This,DestinationState,Type,PropertyName,PropertyId,PropertyValue,Weight) (This)->lpVtbl->AddSpecialTransition(This,DestinationState,Type,PropertyName,PropertyId,PropertyValue,Weight)
15238#else
15239/*** IUnknown methods ***/
15240static inline HRESULT ISpeechGrammarRuleState_QueryInterface(ISpeechGrammarRuleState* This,REFIID riid,void **ppvObject) {
15241 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15242}
15243static inline ULONG ISpeechGrammarRuleState_AddRef(ISpeechGrammarRuleState* This) {
15244 return This->lpVtbl->AddRef(This);
15245}
15246static inline ULONG ISpeechGrammarRuleState_Release(ISpeechGrammarRuleState* This) {
15247 return This->lpVtbl->Release(This);
15248}
15249/*** IDispatch methods ***/
15250static inline HRESULT ISpeechGrammarRuleState_GetTypeInfoCount(ISpeechGrammarRuleState* This,UINT *pctinfo) {
15251 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
15252}
15253static inline HRESULT ISpeechGrammarRuleState_GetTypeInfo(ISpeechGrammarRuleState* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
15254 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
15255}
15256static inline HRESULT ISpeechGrammarRuleState_GetIDsOfNames(ISpeechGrammarRuleState* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
15257 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
15258}
15259static inline HRESULT ISpeechGrammarRuleState_Invoke(ISpeechGrammarRuleState* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
15260 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
15261}
15262/*** ISpeechGrammarRuleState methods ***/
15263static inline HRESULT ISpeechGrammarRuleState_get_Rule(ISpeechGrammarRuleState* This,ISpeechGrammarRule **Rule) {
15264 return This->lpVtbl->get_Rule(This,Rule);
15265}
15266static inline HRESULT ISpeechGrammarRuleState_get_Transitions(ISpeechGrammarRuleState* This,ISpeechGrammarRuleStateTransitions **Transitions) {
15267 return This->lpVtbl->get_Transitions(This,Transitions);
15268}
15269static 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) {
15270 return This->lpVtbl->AddWordTransition(This,DestState,Words,Separators,Type,PropertyName,PropertyId,PropertyValue,Weight);
15271}
15272static inline HRESULT ISpeechGrammarRuleState_AddRuleTransition(ISpeechGrammarRuleState* This,ISpeechGrammarRuleState *DestinationState,ISpeechGrammarRule *Rule,const BSTR PropertyName,LONG PropertyId,VARIANT *PropertyValue,float Weight) {
15273 return This->lpVtbl->AddRuleTransition(This,DestinationState,Rule,PropertyName,PropertyId,PropertyValue,Weight);
15274}
15275static inline HRESULT ISpeechGrammarRuleState_AddSpecialTransition(ISpeechGrammarRuleState* This,ISpeechGrammarRuleState *DestinationState,SpeechSpecialTransitionType Type,const BSTR PropertyName,LONG PropertyId,VARIANT *PropertyValue,float Weight) {
15276 return This->lpVtbl->AddSpecialTransition(This,DestinationState,Type,PropertyName,PropertyId,PropertyValue,Weight);
15277}
15278#endif
15279#endif
15280
15281#endif
15282
15283
15284#endif /* __ISpeechGrammarRuleState_INTERFACE_DEFINED__ */
15285
15286/*****************************************************************************
15287 * ISpeechGrammarRuleStateTransitions interface
15288 */
15289#ifndef __ISpeechGrammarRuleStateTransitions_INTERFACE_DEFINED__
15290#define __ISpeechGrammarRuleStateTransitions_INTERFACE_DEFINED__
15291
15292DEFINE_GUID(IID_ISpeechGrammarRuleStateTransitions, 0xeabce657, 0x75bc, 0x44a2, 0xaa,0x7f, 0xc5,0x64,0x76,0x74,0x29,0x63);
15293#if defined(__cplusplus) && !defined(CINTERFACE)
15294MIDL_INTERFACE("eabce657-75bc-44a2-aa7f-c56476742963")
15295ISpeechGrammarRuleStateTransitions : public IDispatch
15296{
15297 virtual HRESULT STDMETHODCALLTYPE get_Count(
15298 LONG *Count) = 0;
15299
15300 virtual HRESULT STDMETHODCALLTYPE Item(
15301 LONG Index,
15302 ISpeechGrammarRuleStateTransition **Transition) = 0;
15303
15304 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
15305 IUnknown **EnumVARIANT) = 0;
15306
15307};
15308#ifdef __CRT_UUID_DECL
15309__CRT_UUID_DECL(ISpeechGrammarRuleStateTransitions, 0xeabce657, 0x75bc, 0x44a2, 0xaa,0x7f, 0xc5,0x64,0x76,0x74,0x29,0x63)
15310#endif
15311#else
15312typedef struct ISpeechGrammarRuleStateTransitionsVtbl {
15313 BEGIN_INTERFACE
15314
15315 /*** IUnknown methods ***/
15316 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15317 ISpeechGrammarRuleStateTransitions *This,
15318 REFIID riid,
15319 void **ppvObject);
15320
15321 ULONG (STDMETHODCALLTYPE *AddRef)(
15322 ISpeechGrammarRuleStateTransitions *This);
15323
15324 ULONG (STDMETHODCALLTYPE *Release)(
15325 ISpeechGrammarRuleStateTransitions *This);
15326
15327 /*** IDispatch methods ***/
15328 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
15329 ISpeechGrammarRuleStateTransitions *This,
15330 UINT *pctinfo);
15331
15332 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
15333 ISpeechGrammarRuleStateTransitions *This,
15334 UINT iTInfo,
15335 LCID lcid,
15336 ITypeInfo **ppTInfo);
15337
15338 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
15339 ISpeechGrammarRuleStateTransitions *This,
15340 REFIID riid,
15341 LPOLESTR *rgszNames,
15342 UINT cNames,
15343 LCID lcid,
15344 DISPID *rgDispId);
15345
15346 HRESULT (STDMETHODCALLTYPE *Invoke)(
15347 ISpeechGrammarRuleStateTransitions *This,
15348 DISPID dispIdMember,
15349 REFIID riid,
15350 LCID lcid,
15351 WORD wFlags,
15352 DISPPARAMS *pDispParams,
15353 VARIANT *pVarResult,
15354 EXCEPINFO *pExcepInfo,
15355 UINT *puArgErr);
15356
15357 /*** ISpeechGrammarRuleStateTransitions methods ***/
15358 HRESULT (STDMETHODCALLTYPE *get_Count)(
15359 ISpeechGrammarRuleStateTransitions *This,
15360 LONG *Count);
15361
15362 HRESULT (STDMETHODCALLTYPE *Item)(
15363 ISpeechGrammarRuleStateTransitions *This,
15364 LONG Index,
15365 ISpeechGrammarRuleStateTransition **Transition);
15366
15367 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
15368 ISpeechGrammarRuleStateTransitions *This,
15369 IUnknown **EnumVARIANT);
15370
15371 END_INTERFACE
15372} ISpeechGrammarRuleStateTransitionsVtbl;
15373
15374interface ISpeechGrammarRuleStateTransitions {
15375 CONST_VTBL ISpeechGrammarRuleStateTransitionsVtbl* lpVtbl;
15376};
15377
15378#ifdef COBJMACROS
15379#ifndef WIDL_C_INLINE_WRAPPERS
15380/*** IUnknown methods ***/
15381#define ISpeechGrammarRuleStateTransitions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15382#define ISpeechGrammarRuleStateTransitions_AddRef(This) (This)->lpVtbl->AddRef(This)
15383#define ISpeechGrammarRuleStateTransitions_Release(This) (This)->lpVtbl->Release(This)
15384/*** IDispatch methods ***/
15385#define ISpeechGrammarRuleStateTransitions_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
15386#define ISpeechGrammarRuleStateTransitions_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
15387#define ISpeechGrammarRuleStateTransitions_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
15388#define ISpeechGrammarRuleStateTransitions_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
15389/*** ISpeechGrammarRuleStateTransitions methods ***/
15390#define ISpeechGrammarRuleStateTransitions_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
15391#define ISpeechGrammarRuleStateTransitions_Item(This,Index,Transition) (This)->lpVtbl->Item(This,Index,Transition)
15392#define ISpeechGrammarRuleStateTransitions_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
15393#else
15394/*** IUnknown methods ***/
15395static inline HRESULT ISpeechGrammarRuleStateTransitions_QueryInterface(ISpeechGrammarRuleStateTransitions* This,REFIID riid,void **ppvObject) {
15396 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15397}
15398static inline ULONG ISpeechGrammarRuleStateTransitions_AddRef(ISpeechGrammarRuleStateTransitions* This) {
15399 return This->lpVtbl->AddRef(This);
15400}
15401static inline ULONG ISpeechGrammarRuleStateTransitions_Release(ISpeechGrammarRuleStateTransitions* This) {
15402 return This->lpVtbl->Release(This);
15403}
15404/*** IDispatch methods ***/
15405static inline HRESULT ISpeechGrammarRuleStateTransitions_GetTypeInfoCount(ISpeechGrammarRuleStateTransitions* This,UINT *pctinfo) {
15406 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
15407}
15408static inline HRESULT ISpeechGrammarRuleStateTransitions_GetTypeInfo(ISpeechGrammarRuleStateTransitions* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
15409 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
15410}
15411static inline HRESULT ISpeechGrammarRuleStateTransitions_GetIDsOfNames(ISpeechGrammarRuleStateTransitions* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
15412 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
15413}
15414static inline HRESULT ISpeechGrammarRuleStateTransitions_Invoke(ISpeechGrammarRuleStateTransitions* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
15415 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
15416}
15417/*** ISpeechGrammarRuleStateTransitions methods ***/
15418static inline HRESULT ISpeechGrammarRuleStateTransitions_get_Count(ISpeechGrammarRuleStateTransitions* This,LONG *Count) {
15419 return This->lpVtbl->get_Count(This,Count);
15420}
15421static inline HRESULT ISpeechGrammarRuleStateTransitions_Item(ISpeechGrammarRuleStateTransitions* This,LONG Index,ISpeechGrammarRuleStateTransition **Transition) {
15422 return This->lpVtbl->Item(This,Index,Transition);
15423}
15424static inline HRESULT ISpeechGrammarRuleStateTransitions_get__NewEnum(ISpeechGrammarRuleStateTransitions* This,IUnknown **EnumVARIANT) {
15425 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
15426}
15427#endif
15428#endif
15429
15430#endif
15431
15432
15433#endif /* __ISpeechGrammarRuleStateTransitions_INTERFACE_DEFINED__ */
15434
15435/*****************************************************************************
15436 * ISpeechGrammarRuleStateTransition interface
15437 */
15438#ifndef __ISpeechGrammarRuleStateTransition_INTERFACE_DEFINED__
15439#define __ISpeechGrammarRuleStateTransition_INTERFACE_DEFINED__
15440
15441DEFINE_GUID(IID_ISpeechGrammarRuleStateTransition, 0xcafd1db1, 0x41d1, 0x4a06, 0x98,0x63, 0xe2,0xe8,0x1d,0xa1,0x7a,0x9a);
15442#if defined(__cplusplus) && !defined(CINTERFACE)
15443MIDL_INTERFACE("cafd1db1-41d1-4a06-9863-e2e81da17a9a")
15444ISpeechGrammarRuleStateTransition : public IDispatch
15445{
15446 virtual HRESULT STDMETHODCALLTYPE get_Type(
15447 SpeechGrammarRuleStateTransitionType *Type) = 0;
15448
15449 virtual HRESULT STDMETHODCALLTYPE get_Text(
15450 BSTR *Text) = 0;
15451
15452 virtual HRESULT STDMETHODCALLTYPE get_Rule(
15453 ISpeechGrammarRule **Rule) = 0;
15454
15455 virtual HRESULT STDMETHODCALLTYPE get_Weight(
15456 VARIANT *Weight) = 0;
15457
15458 virtual HRESULT STDMETHODCALLTYPE get_PropertyName(
15459 BSTR *PropertyName) = 0;
15460
15461 virtual HRESULT STDMETHODCALLTYPE get_PropertyId(
15462 LONG *PropertyId) = 0;
15463
15464 virtual HRESULT STDMETHODCALLTYPE get_PropertyValue(
15465 VARIANT *PropertyValue) = 0;
15466
15467 virtual HRESULT STDMETHODCALLTYPE get_NextState(
15468 ISpeechGrammarRuleState **NextState) = 0;
15469
15470};
15471#ifdef __CRT_UUID_DECL
15472__CRT_UUID_DECL(ISpeechGrammarRuleStateTransition, 0xcafd1db1, 0x41d1, 0x4a06, 0x98,0x63, 0xe2,0xe8,0x1d,0xa1,0x7a,0x9a)
15473#endif
15474#else
15475typedef struct ISpeechGrammarRuleStateTransitionVtbl {
15476 BEGIN_INTERFACE
15477
15478 /*** IUnknown methods ***/
15479 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15480 ISpeechGrammarRuleStateTransition *This,
15481 REFIID riid,
15482 void **ppvObject);
15483
15484 ULONG (STDMETHODCALLTYPE *AddRef)(
15485 ISpeechGrammarRuleStateTransition *This);
15486
15487 ULONG (STDMETHODCALLTYPE *Release)(
15488 ISpeechGrammarRuleStateTransition *This);
15489
15490 /*** IDispatch methods ***/
15491 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
15492 ISpeechGrammarRuleStateTransition *This,
15493 UINT *pctinfo);
15494
15495 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
15496 ISpeechGrammarRuleStateTransition *This,
15497 UINT iTInfo,
15498 LCID lcid,
15499 ITypeInfo **ppTInfo);
15500
15501 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
15502 ISpeechGrammarRuleStateTransition *This,
15503 REFIID riid,
15504 LPOLESTR *rgszNames,
15505 UINT cNames,
15506 LCID lcid,
15507 DISPID *rgDispId);
15508
15509 HRESULT (STDMETHODCALLTYPE *Invoke)(
15510 ISpeechGrammarRuleStateTransition *This,
15511 DISPID dispIdMember,
15512 REFIID riid,
15513 LCID lcid,
15514 WORD wFlags,
15515 DISPPARAMS *pDispParams,
15516 VARIANT *pVarResult,
15517 EXCEPINFO *pExcepInfo,
15518 UINT *puArgErr);
15519
15520 /*** ISpeechGrammarRuleStateTransition methods ***/
15521 HRESULT (STDMETHODCALLTYPE *get_Type)(
15522 ISpeechGrammarRuleStateTransition *This,
15523 SpeechGrammarRuleStateTransitionType *Type);
15524
15525 HRESULT (STDMETHODCALLTYPE *get_Text)(
15526 ISpeechGrammarRuleStateTransition *This,
15527 BSTR *Text);
15528
15529 HRESULT (STDMETHODCALLTYPE *get_Rule)(
15530 ISpeechGrammarRuleStateTransition *This,
15531 ISpeechGrammarRule **Rule);
15532
15533 HRESULT (STDMETHODCALLTYPE *get_Weight)(
15534 ISpeechGrammarRuleStateTransition *This,
15535 VARIANT *Weight);
15536
15537 HRESULT (STDMETHODCALLTYPE *get_PropertyName)(
15538 ISpeechGrammarRuleStateTransition *This,
15539 BSTR *PropertyName);
15540
15541 HRESULT (STDMETHODCALLTYPE *get_PropertyId)(
15542 ISpeechGrammarRuleStateTransition *This,
15543 LONG *PropertyId);
15544
15545 HRESULT (STDMETHODCALLTYPE *get_PropertyValue)(
15546 ISpeechGrammarRuleStateTransition *This,
15547 VARIANT *PropertyValue);
15548
15549 HRESULT (STDMETHODCALLTYPE *get_NextState)(
15550 ISpeechGrammarRuleStateTransition *This,
15551 ISpeechGrammarRuleState **NextState);
15552
15553 END_INTERFACE
15554} ISpeechGrammarRuleStateTransitionVtbl;
15555
15556interface ISpeechGrammarRuleStateTransition {
15557 CONST_VTBL ISpeechGrammarRuleStateTransitionVtbl* lpVtbl;
15558};
15559
15560#ifdef COBJMACROS
15561#ifndef WIDL_C_INLINE_WRAPPERS
15562/*** IUnknown methods ***/
15563#define ISpeechGrammarRuleStateTransition_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15564#define ISpeechGrammarRuleStateTransition_AddRef(This) (This)->lpVtbl->AddRef(This)
15565#define ISpeechGrammarRuleStateTransition_Release(This) (This)->lpVtbl->Release(This)
15566/*** IDispatch methods ***/
15567#define ISpeechGrammarRuleStateTransition_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
15568#define ISpeechGrammarRuleStateTransition_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
15569#define ISpeechGrammarRuleStateTransition_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
15570#define ISpeechGrammarRuleStateTransition_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
15571/*** ISpeechGrammarRuleStateTransition methods ***/
15572#define ISpeechGrammarRuleStateTransition_get_Type(This,Type) (This)->lpVtbl->get_Type(This,Type)
15573#define ISpeechGrammarRuleStateTransition_get_Text(This,Text) (This)->lpVtbl->get_Text(This,Text)
15574#define ISpeechGrammarRuleStateTransition_get_Rule(This,Rule) (This)->lpVtbl->get_Rule(This,Rule)
15575#define ISpeechGrammarRuleStateTransition_get_Weight(This,Weight) (This)->lpVtbl->get_Weight(This,Weight)
15576#define ISpeechGrammarRuleStateTransition_get_PropertyName(This,PropertyName) (This)->lpVtbl->get_PropertyName(This,PropertyName)
15577#define ISpeechGrammarRuleStateTransition_get_PropertyId(This,PropertyId) (This)->lpVtbl->get_PropertyId(This,PropertyId)
15578#define ISpeechGrammarRuleStateTransition_get_PropertyValue(This,PropertyValue) (This)->lpVtbl->get_PropertyValue(This,PropertyValue)
15579#define ISpeechGrammarRuleStateTransition_get_NextState(This,NextState) (This)->lpVtbl->get_NextState(This,NextState)
15580#else
15581/*** IUnknown methods ***/
15582static inline HRESULT ISpeechGrammarRuleStateTransition_QueryInterface(ISpeechGrammarRuleStateTransition* This,REFIID riid,void **ppvObject) {
15583 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15584}
15585static inline ULONG ISpeechGrammarRuleStateTransition_AddRef(ISpeechGrammarRuleStateTransition* This) {
15586 return This->lpVtbl->AddRef(This);
15587}
15588static inline ULONG ISpeechGrammarRuleStateTransition_Release(ISpeechGrammarRuleStateTransition* This) {
15589 return This->lpVtbl->Release(This);
15590}
15591/*** IDispatch methods ***/
15592static inline HRESULT ISpeechGrammarRuleStateTransition_GetTypeInfoCount(ISpeechGrammarRuleStateTransition* This,UINT *pctinfo) {
15593 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
15594}
15595static inline HRESULT ISpeechGrammarRuleStateTransition_GetTypeInfo(ISpeechGrammarRuleStateTransition* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
15596 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
15597}
15598static inline HRESULT ISpeechGrammarRuleStateTransition_GetIDsOfNames(ISpeechGrammarRuleStateTransition* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
15599 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
15600}
15601static inline HRESULT ISpeechGrammarRuleStateTransition_Invoke(ISpeechGrammarRuleStateTransition* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
15602 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
15603}
15604/*** ISpeechGrammarRuleStateTransition methods ***/
15605static inline HRESULT ISpeechGrammarRuleStateTransition_get_Type(ISpeechGrammarRuleStateTransition* This,SpeechGrammarRuleStateTransitionType *Type) {
15606 return This->lpVtbl->get_Type(This,Type);
15607}
15608static inline HRESULT ISpeechGrammarRuleStateTransition_get_Text(ISpeechGrammarRuleStateTransition* This,BSTR *Text) {
15609 return This->lpVtbl->get_Text(This,Text);
15610}
15611static inline HRESULT ISpeechGrammarRuleStateTransition_get_Rule(ISpeechGrammarRuleStateTransition* This,ISpeechGrammarRule **Rule) {
15612 return This->lpVtbl->get_Rule(This,Rule);
15613}
15614static inline HRESULT ISpeechGrammarRuleStateTransition_get_Weight(ISpeechGrammarRuleStateTransition* This,VARIANT *Weight) {
15615 return This->lpVtbl->get_Weight(This,Weight);
15616}
15617static inline HRESULT ISpeechGrammarRuleStateTransition_get_PropertyName(ISpeechGrammarRuleStateTransition* This,BSTR *PropertyName) {
15618 return This->lpVtbl->get_PropertyName(This,PropertyName);
15619}
15620static inline HRESULT ISpeechGrammarRuleStateTransition_get_PropertyId(ISpeechGrammarRuleStateTransition* This,LONG *PropertyId) {
15621 return This->lpVtbl->get_PropertyId(This,PropertyId);
15622}
15623static inline HRESULT ISpeechGrammarRuleStateTransition_get_PropertyValue(ISpeechGrammarRuleStateTransition* This,VARIANT *PropertyValue) {
15624 return This->lpVtbl->get_PropertyValue(This,PropertyValue);
15625}
15626static inline HRESULT ISpeechGrammarRuleStateTransition_get_NextState(ISpeechGrammarRuleStateTransition* This,ISpeechGrammarRuleState **NextState) {
15627 return This->lpVtbl->get_NextState(This,NextState);
15628}
15629#endif
15630#endif
15631
15632#endif
15633
15634
15635#endif /* __ISpeechGrammarRuleStateTransition_INTERFACE_DEFINED__ */
15636
15637/*****************************************************************************
15638 * ISpeechTextSelectionInformation interface
15639 */
15640#ifndef __ISpeechTextSelectionInformation_INTERFACE_DEFINED__
15641#define __ISpeechTextSelectionInformation_INTERFACE_DEFINED__
15642
15643DEFINE_GUID(IID_ISpeechTextSelectionInformation, 0x3b9c7e7a, 0x6eee, 0x4ded, 0x90,0x92, 0x11,0x65,0x72,0x79,0xad,0xbe);
15644#if defined(__cplusplus) && !defined(CINTERFACE)
15645MIDL_INTERFACE("3b9c7e7a-6eee-4ded-9092-11657279adbe")
15646ISpeechTextSelectionInformation : public IDispatch
15647{
15648 virtual HRESULT STDMETHODCALLTYPE put_ActiveOffset(
15649 LONG ActiveOffset) = 0;
15650
15651 virtual HRESULT STDMETHODCALLTYPE get_ActiveOffset(
15652 LONG *ActiveOffset) = 0;
15653
15654 virtual HRESULT STDMETHODCALLTYPE put_ActiveLength(
15655 LONG ActiveLength) = 0;
15656
15657 virtual HRESULT STDMETHODCALLTYPE get_ActiveLength(
15658 LONG *ActiveLength) = 0;
15659
15660 virtual HRESULT STDMETHODCALLTYPE put_SelectionOffset(
15661 LONG SelectionOffset) = 0;
15662
15663 virtual HRESULT STDMETHODCALLTYPE get_SelectionOffset(
15664 LONG *SelectionOffset) = 0;
15665
15666 virtual HRESULT STDMETHODCALLTYPE put_SelectionLength(
15667 LONG SelectionLength) = 0;
15668
15669 virtual HRESULT STDMETHODCALLTYPE get_SelectionLength(
15670 LONG *SelectionLength) = 0;
15671
15672};
15673#ifdef __CRT_UUID_DECL
15674__CRT_UUID_DECL(ISpeechTextSelectionInformation, 0x3b9c7e7a, 0x6eee, 0x4ded, 0x90,0x92, 0x11,0x65,0x72,0x79,0xad,0xbe)
15675#endif
15676#else
15677typedef struct ISpeechTextSelectionInformationVtbl {
15678 BEGIN_INTERFACE
15679
15680 /*** IUnknown methods ***/
15681 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15682 ISpeechTextSelectionInformation *This,
15683 REFIID riid,
15684 void **ppvObject);
15685
15686 ULONG (STDMETHODCALLTYPE *AddRef)(
15687 ISpeechTextSelectionInformation *This);
15688
15689 ULONG (STDMETHODCALLTYPE *Release)(
15690 ISpeechTextSelectionInformation *This);
15691
15692 /*** IDispatch methods ***/
15693 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
15694 ISpeechTextSelectionInformation *This,
15695 UINT *pctinfo);
15696
15697 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
15698 ISpeechTextSelectionInformation *This,
15699 UINT iTInfo,
15700 LCID lcid,
15701 ITypeInfo **ppTInfo);
15702
15703 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
15704 ISpeechTextSelectionInformation *This,
15705 REFIID riid,
15706 LPOLESTR *rgszNames,
15707 UINT cNames,
15708 LCID lcid,
15709 DISPID *rgDispId);
15710
15711 HRESULT (STDMETHODCALLTYPE *Invoke)(
15712 ISpeechTextSelectionInformation *This,
15713 DISPID dispIdMember,
15714 REFIID riid,
15715 LCID lcid,
15716 WORD wFlags,
15717 DISPPARAMS *pDispParams,
15718 VARIANT *pVarResult,
15719 EXCEPINFO *pExcepInfo,
15720 UINT *puArgErr);
15721
15722 /*** ISpeechTextSelectionInformation methods ***/
15723 HRESULT (STDMETHODCALLTYPE *put_ActiveOffset)(
15724 ISpeechTextSelectionInformation *This,
15725 LONG ActiveOffset);
15726
15727 HRESULT (STDMETHODCALLTYPE *get_ActiveOffset)(
15728 ISpeechTextSelectionInformation *This,
15729 LONG *ActiveOffset);
15730
15731 HRESULT (STDMETHODCALLTYPE *put_ActiveLength)(
15732 ISpeechTextSelectionInformation *This,
15733 LONG ActiveLength);
15734
15735 HRESULT (STDMETHODCALLTYPE *get_ActiveLength)(
15736 ISpeechTextSelectionInformation *This,
15737 LONG *ActiveLength);
15738
15739 HRESULT (STDMETHODCALLTYPE *put_SelectionOffset)(
15740 ISpeechTextSelectionInformation *This,
15741 LONG SelectionOffset);
15742
15743 HRESULT (STDMETHODCALLTYPE *get_SelectionOffset)(
15744 ISpeechTextSelectionInformation *This,
15745 LONG *SelectionOffset);
15746
15747 HRESULT (STDMETHODCALLTYPE *put_SelectionLength)(
15748 ISpeechTextSelectionInformation *This,
15749 LONG SelectionLength);
15750
15751 HRESULT (STDMETHODCALLTYPE *get_SelectionLength)(
15752 ISpeechTextSelectionInformation *This,
15753 LONG *SelectionLength);
15754
15755 END_INTERFACE
15756} ISpeechTextSelectionInformationVtbl;
15757
15758interface ISpeechTextSelectionInformation {
15759 CONST_VTBL ISpeechTextSelectionInformationVtbl* lpVtbl;
15760};
15761
15762#ifdef COBJMACROS
15763#ifndef WIDL_C_INLINE_WRAPPERS
15764/*** IUnknown methods ***/
15765#define ISpeechTextSelectionInformation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15766#define ISpeechTextSelectionInformation_AddRef(This) (This)->lpVtbl->AddRef(This)
15767#define ISpeechTextSelectionInformation_Release(This) (This)->lpVtbl->Release(This)
15768/*** IDispatch methods ***/
15769#define ISpeechTextSelectionInformation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
15770#define ISpeechTextSelectionInformation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
15771#define ISpeechTextSelectionInformation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
15772#define ISpeechTextSelectionInformation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
15773/*** ISpeechTextSelectionInformation methods ***/
15774#define ISpeechTextSelectionInformation_put_ActiveOffset(This,ActiveOffset) (This)->lpVtbl->put_ActiveOffset(This,ActiveOffset)
15775#define ISpeechTextSelectionInformation_get_ActiveOffset(This,ActiveOffset) (This)->lpVtbl->get_ActiveOffset(This,ActiveOffset)
15776#define ISpeechTextSelectionInformation_put_ActiveLength(This,ActiveLength) (This)->lpVtbl->put_ActiveLength(This,ActiveLength)
15777#define ISpeechTextSelectionInformation_get_ActiveLength(This,ActiveLength) (This)->lpVtbl->get_ActiveLength(This,ActiveLength)
15778#define ISpeechTextSelectionInformation_put_SelectionOffset(This,SelectionOffset) (This)->lpVtbl->put_SelectionOffset(This,SelectionOffset)
15779#define ISpeechTextSelectionInformation_get_SelectionOffset(This,SelectionOffset) (This)->lpVtbl->get_SelectionOffset(This,SelectionOffset)
15780#define ISpeechTextSelectionInformation_put_SelectionLength(This,SelectionLength) (This)->lpVtbl->put_SelectionLength(This,SelectionLength)
15781#define ISpeechTextSelectionInformation_get_SelectionLength(This,SelectionLength) (This)->lpVtbl->get_SelectionLength(This,SelectionLength)
15782#else
15783/*** IUnknown methods ***/
15784static inline HRESULT ISpeechTextSelectionInformation_QueryInterface(ISpeechTextSelectionInformation* This,REFIID riid,void **ppvObject) {
15785 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15786}
15787static inline ULONG ISpeechTextSelectionInformation_AddRef(ISpeechTextSelectionInformation* This) {
15788 return This->lpVtbl->AddRef(This);
15789}
15790static inline ULONG ISpeechTextSelectionInformation_Release(ISpeechTextSelectionInformation* This) {
15791 return This->lpVtbl->Release(This);
15792}
15793/*** IDispatch methods ***/
15794static inline HRESULT ISpeechTextSelectionInformation_GetTypeInfoCount(ISpeechTextSelectionInformation* This,UINT *pctinfo) {
15795 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
15796}
15797static inline HRESULT ISpeechTextSelectionInformation_GetTypeInfo(ISpeechTextSelectionInformation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
15798 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
15799}
15800static inline HRESULT ISpeechTextSelectionInformation_GetIDsOfNames(ISpeechTextSelectionInformation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
15801 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
15802}
15803static inline HRESULT ISpeechTextSelectionInformation_Invoke(ISpeechTextSelectionInformation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
15804 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
15805}
15806/*** ISpeechTextSelectionInformation methods ***/
15807static inline HRESULT ISpeechTextSelectionInformation_put_ActiveOffset(ISpeechTextSelectionInformation* This,LONG ActiveOffset) {
15808 return This->lpVtbl->put_ActiveOffset(This,ActiveOffset);
15809}
15810static inline HRESULT ISpeechTextSelectionInformation_get_ActiveOffset(ISpeechTextSelectionInformation* This,LONG *ActiveOffset) {
15811 return This->lpVtbl->get_ActiveOffset(This,ActiveOffset);
15812}
15813static inline HRESULT ISpeechTextSelectionInformation_put_ActiveLength(ISpeechTextSelectionInformation* This,LONG ActiveLength) {
15814 return This->lpVtbl->put_ActiveLength(This,ActiveLength);
15815}
15816static inline HRESULT ISpeechTextSelectionInformation_get_ActiveLength(ISpeechTextSelectionInformation* This,LONG *ActiveLength) {
15817 return This->lpVtbl->get_ActiveLength(This,ActiveLength);
15818}
15819static inline HRESULT ISpeechTextSelectionInformation_put_SelectionOffset(ISpeechTextSelectionInformation* This,LONG SelectionOffset) {
15820 return This->lpVtbl->put_SelectionOffset(This,SelectionOffset);
15821}
15822static inline HRESULT ISpeechTextSelectionInformation_get_SelectionOffset(ISpeechTextSelectionInformation* This,LONG *SelectionOffset) {
15823 return This->lpVtbl->get_SelectionOffset(This,SelectionOffset);
15824}
15825static inline HRESULT ISpeechTextSelectionInformation_put_SelectionLength(ISpeechTextSelectionInformation* This,LONG SelectionLength) {
15826 return This->lpVtbl->put_SelectionLength(This,SelectionLength);
15827}
15828static inline HRESULT ISpeechTextSelectionInformation_get_SelectionLength(ISpeechTextSelectionInformation* This,LONG *SelectionLength) {
15829 return This->lpVtbl->get_SelectionLength(This,SelectionLength);
15830}
15831#endif
15832#endif
15833
15834#endif
15835
15836
15837#endif /* __ISpeechTextSelectionInformation_INTERFACE_DEFINED__ */
15838
15839/*****************************************************************************
15840 * ISpeechRecoResult interface
15841 */
15842#ifndef __ISpeechRecoResult_INTERFACE_DEFINED__
15843#define __ISpeechRecoResult_INTERFACE_DEFINED__
15844
15845DEFINE_GUID(IID_ISpeechRecoResult, 0xed2879cf, 0xced9, 0x4ee6, 0xa5,0x34, 0xde,0x01,0x91,0xd5,0x46,0x8d);
15846#if defined(__cplusplus) && !defined(CINTERFACE)
15847MIDL_INTERFACE("ed2879cf-ced9-4ee6-a534-de0191d5468d")
15848ISpeechRecoResult : public IDispatch
15849{
15850 virtual HRESULT STDMETHODCALLTYPE get_RecoContext(
15851 ISpeechRecoContext **RecoContext) = 0;
15852
15853 virtual HRESULT STDMETHODCALLTYPE get_Times(
15854 ISpeechRecoResultTimes **Times) = 0;
15855
15856 virtual HRESULT STDMETHODCALLTYPE putref_AudioFormat(
15857 ISpeechAudioFormat *Format) = 0;
15858
15859 virtual HRESULT STDMETHODCALLTYPE get_AudioFormat(
15860 ISpeechAudioFormat **Format) = 0;
15861
15862 virtual HRESULT STDMETHODCALLTYPE get_PhraseInfo(
15863 ISpeechPhraseInfo **PhraseInfo) = 0;
15864
15865 virtual HRESULT STDMETHODCALLTYPE Alternates(
15866 LONG RequestCount,
15867 LONG StartElement,
15868 LONG Elements,
15869 ISpeechPhraseAlternates **Alternates) = 0;
15870
15871 virtual HRESULT STDMETHODCALLTYPE Audio(
15872 LONG StartElement,
15873 LONG Elements,
15874 ISpeechMemoryStream **Stream) = 0;
15875
15876 virtual HRESULT STDMETHODCALLTYPE SpeakAudio(
15877 LONG StartElement,
15878 LONG Elements,
15879 SpeechVoiceSpeakFlags Flags,
15880 LONG *StreamNumber) = 0;
15881
15882 virtual HRESULT STDMETHODCALLTYPE SaveToMemory(
15883 VARIANT *ResultBlock) = 0;
15884
15885 virtual HRESULT STDMETHODCALLTYPE DiscardResultInfo(
15886 SpeechDiscardType ValueTypes) = 0;
15887
15888};
15889#ifdef __CRT_UUID_DECL
15890__CRT_UUID_DECL(ISpeechRecoResult, 0xed2879cf, 0xced9, 0x4ee6, 0xa5,0x34, 0xde,0x01,0x91,0xd5,0x46,0x8d)
15891#endif
15892#else
15893typedef struct ISpeechRecoResultVtbl {
15894 BEGIN_INTERFACE
15895
15896 /*** IUnknown methods ***/
15897 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15898 ISpeechRecoResult *This,
15899 REFIID riid,
15900 void **ppvObject);
15901
15902 ULONG (STDMETHODCALLTYPE *AddRef)(
15903 ISpeechRecoResult *This);
15904
15905 ULONG (STDMETHODCALLTYPE *Release)(
15906 ISpeechRecoResult *This);
15907
15908 /*** IDispatch methods ***/
15909 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
15910 ISpeechRecoResult *This,
15911 UINT *pctinfo);
15912
15913 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
15914 ISpeechRecoResult *This,
15915 UINT iTInfo,
15916 LCID lcid,
15917 ITypeInfo **ppTInfo);
15918
15919 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
15920 ISpeechRecoResult *This,
15921 REFIID riid,
15922 LPOLESTR *rgszNames,
15923 UINT cNames,
15924 LCID lcid,
15925 DISPID *rgDispId);
15926
15927 HRESULT (STDMETHODCALLTYPE *Invoke)(
15928 ISpeechRecoResult *This,
15929 DISPID dispIdMember,
15930 REFIID riid,
15931 LCID lcid,
15932 WORD wFlags,
15933 DISPPARAMS *pDispParams,
15934 VARIANT *pVarResult,
15935 EXCEPINFO *pExcepInfo,
15936 UINT *puArgErr);
15937
15938 /*** ISpeechRecoResult methods ***/
15939 HRESULT (STDMETHODCALLTYPE *get_RecoContext)(
15940 ISpeechRecoResult *This,
15941 ISpeechRecoContext **RecoContext);
15942
15943 HRESULT (STDMETHODCALLTYPE *get_Times)(
15944 ISpeechRecoResult *This,
15945 ISpeechRecoResultTimes **Times);
15946
15947 HRESULT (STDMETHODCALLTYPE *putref_AudioFormat)(
15948 ISpeechRecoResult *This,
15949 ISpeechAudioFormat *Format);
15950
15951 HRESULT (STDMETHODCALLTYPE *get_AudioFormat)(
15952 ISpeechRecoResult *This,
15953 ISpeechAudioFormat **Format);
15954
15955 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
15956 ISpeechRecoResult *This,
15957 ISpeechPhraseInfo **PhraseInfo);
15958
15959 HRESULT (STDMETHODCALLTYPE *Alternates)(
15960 ISpeechRecoResult *This,
15961 LONG RequestCount,
15962 LONG StartElement,
15963 LONG Elements,
15964 ISpeechPhraseAlternates **Alternates);
15965
15966 HRESULT (STDMETHODCALLTYPE *Audio)(
15967 ISpeechRecoResult *This,
15968 LONG StartElement,
15969 LONG Elements,
15970 ISpeechMemoryStream **Stream);
15971
15972 HRESULT (STDMETHODCALLTYPE *SpeakAudio)(
15973 ISpeechRecoResult *This,
15974 LONG StartElement,
15975 LONG Elements,
15976 SpeechVoiceSpeakFlags Flags,
15977 LONG *StreamNumber);
15978
15979 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
15980 ISpeechRecoResult *This,
15981 VARIANT *ResultBlock);
15982
15983 HRESULT (STDMETHODCALLTYPE *DiscardResultInfo)(
15984 ISpeechRecoResult *This,
15985 SpeechDiscardType ValueTypes);
15986
15987 END_INTERFACE
15988} ISpeechRecoResultVtbl;
15989
15990interface ISpeechRecoResult {
15991 CONST_VTBL ISpeechRecoResultVtbl* lpVtbl;
15992};
15993
15994#ifdef COBJMACROS
15995#ifndef WIDL_C_INLINE_WRAPPERS
15996/*** IUnknown methods ***/
15997#define ISpeechRecoResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15998#define ISpeechRecoResult_AddRef(This) (This)->lpVtbl->AddRef(This)
15999#define ISpeechRecoResult_Release(This) (This)->lpVtbl->Release(This)
16000/*** IDispatch methods ***/
16001#define ISpeechRecoResult_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16002#define ISpeechRecoResult_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16003#define ISpeechRecoResult_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16004#define ISpeechRecoResult_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16005/*** ISpeechRecoResult methods ***/
16006#define ISpeechRecoResult_get_RecoContext(This,RecoContext) (This)->lpVtbl->get_RecoContext(This,RecoContext)
16007#define ISpeechRecoResult_get_Times(This,Times) (This)->lpVtbl->get_Times(This,Times)
16008#define ISpeechRecoResult_putref_AudioFormat(This,Format) (This)->lpVtbl->putref_AudioFormat(This,Format)
16009#define ISpeechRecoResult_get_AudioFormat(This,Format) (This)->lpVtbl->get_AudioFormat(This,Format)
16010#define ISpeechRecoResult_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
16011#define ISpeechRecoResult_Alternates(This,RequestCount,StartElement,Elements,Alternates) (This)->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates)
16012#define ISpeechRecoResult_Audio(This,StartElement,Elements,Stream) (This)->lpVtbl->Audio(This,StartElement,Elements,Stream)
16013#define ISpeechRecoResult_SpeakAudio(This,StartElement,Elements,Flags,StreamNumber) (This)->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber)
16014#define ISpeechRecoResult_SaveToMemory(This,ResultBlock) (This)->lpVtbl->SaveToMemory(This,ResultBlock)
16015#define ISpeechRecoResult_DiscardResultInfo(This,ValueTypes) (This)->lpVtbl->DiscardResultInfo(This,ValueTypes)
16016#else
16017/*** IUnknown methods ***/
16018static inline HRESULT ISpeechRecoResult_QueryInterface(ISpeechRecoResult* This,REFIID riid,void **ppvObject) {
16019 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16020}
16021static inline ULONG ISpeechRecoResult_AddRef(ISpeechRecoResult* This) {
16022 return This->lpVtbl->AddRef(This);
16023}
16024static inline ULONG ISpeechRecoResult_Release(ISpeechRecoResult* This) {
16025 return This->lpVtbl->Release(This);
16026}
16027/*** IDispatch methods ***/
16028static inline HRESULT ISpeechRecoResult_GetTypeInfoCount(ISpeechRecoResult* This,UINT *pctinfo) {
16029 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16030}
16031static inline HRESULT ISpeechRecoResult_GetTypeInfo(ISpeechRecoResult* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16032 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16033}
16034static inline HRESULT ISpeechRecoResult_GetIDsOfNames(ISpeechRecoResult* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16035 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16036}
16037static inline HRESULT ISpeechRecoResult_Invoke(ISpeechRecoResult* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16038 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16039}
16040/*** ISpeechRecoResult methods ***/
16041static inline HRESULT ISpeechRecoResult_get_RecoContext(ISpeechRecoResult* This,ISpeechRecoContext **RecoContext) {
16042 return This->lpVtbl->get_RecoContext(This,RecoContext);
16043}
16044static inline HRESULT ISpeechRecoResult_get_Times(ISpeechRecoResult* This,ISpeechRecoResultTimes **Times) {
16045 return This->lpVtbl->get_Times(This,Times);
16046}
16047static inline HRESULT ISpeechRecoResult_putref_AudioFormat(ISpeechRecoResult* This,ISpeechAudioFormat *Format) {
16048 return This->lpVtbl->putref_AudioFormat(This,Format);
16049}
16050static inline HRESULT ISpeechRecoResult_get_AudioFormat(ISpeechRecoResult* This,ISpeechAudioFormat **Format) {
16051 return This->lpVtbl->get_AudioFormat(This,Format);
16052}
16053static inline HRESULT ISpeechRecoResult_get_PhraseInfo(ISpeechRecoResult* This,ISpeechPhraseInfo **PhraseInfo) {
16054 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
16055}
16056static inline HRESULT ISpeechRecoResult_Alternates(ISpeechRecoResult* This,LONG RequestCount,LONG StartElement,LONG Elements,ISpeechPhraseAlternates **Alternates) {
16057 return This->lpVtbl->Alternates(This,RequestCount,StartElement,Elements,Alternates);
16058}
16059static inline HRESULT ISpeechRecoResult_Audio(ISpeechRecoResult* This,LONG StartElement,LONG Elements,ISpeechMemoryStream **Stream) {
16060 return This->lpVtbl->Audio(This,StartElement,Elements,Stream);
16061}
16062static inline HRESULT ISpeechRecoResult_SpeakAudio(ISpeechRecoResult* This,LONG StartElement,LONG Elements,SpeechVoiceSpeakFlags Flags,LONG *StreamNumber) {
16063 return This->lpVtbl->SpeakAudio(This,StartElement,Elements,Flags,StreamNumber);
16064}
16065static inline HRESULT ISpeechRecoResult_SaveToMemory(ISpeechRecoResult* This,VARIANT *ResultBlock) {
16066 return This->lpVtbl->SaveToMemory(This,ResultBlock);
16067}
16068static inline HRESULT ISpeechRecoResult_DiscardResultInfo(ISpeechRecoResult* This,SpeechDiscardType ValueTypes) {
16069 return This->lpVtbl->DiscardResultInfo(This,ValueTypes);
16070}
16071#endif
16072#endif
16073
16074#endif
16075
16076
16077#endif /* __ISpeechRecoResult_INTERFACE_DEFINED__ */
16078
16079/*****************************************************************************
16080 * ISpeechPhraseInfoBuilder interface
16081 */
16082#ifndef __ISpeechPhraseInfoBuilder_INTERFACE_DEFINED__
16083#define __ISpeechPhraseInfoBuilder_INTERFACE_DEFINED__
16084
16085DEFINE_GUID(IID_ISpeechPhraseInfoBuilder, 0x3b151836, 0xdf3a, 0x4e0a, 0x84,0x6c, 0xd2,0xad,0xc9,0x33,0x43,0x33);
16086#if defined(__cplusplus) && !defined(CINTERFACE)
16087MIDL_INTERFACE("3b151836-df3a-4e0a-846c-d2adc9334333")
16088ISpeechPhraseInfoBuilder : public IDispatch
16089{
16090 virtual HRESULT STDMETHODCALLTYPE RestorePhraseFromMemory(
16091 VARIANT *PhraseInMemory,
16092 ISpeechPhraseInfo **PhraseInfo) = 0;
16093
16094};
16095#ifdef __CRT_UUID_DECL
16096__CRT_UUID_DECL(ISpeechPhraseInfoBuilder, 0x3b151836, 0xdf3a, 0x4e0a, 0x84,0x6c, 0xd2,0xad,0xc9,0x33,0x43,0x33)
16097#endif
16098#else
16099typedef struct ISpeechPhraseInfoBuilderVtbl {
16100 BEGIN_INTERFACE
16101
16102 /*** IUnknown methods ***/
16103 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16104 ISpeechPhraseInfoBuilder *This,
16105 REFIID riid,
16106 void **ppvObject);
16107
16108 ULONG (STDMETHODCALLTYPE *AddRef)(
16109 ISpeechPhraseInfoBuilder *This);
16110
16111 ULONG (STDMETHODCALLTYPE *Release)(
16112 ISpeechPhraseInfoBuilder *This);
16113
16114 /*** IDispatch methods ***/
16115 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16116 ISpeechPhraseInfoBuilder *This,
16117 UINT *pctinfo);
16118
16119 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16120 ISpeechPhraseInfoBuilder *This,
16121 UINT iTInfo,
16122 LCID lcid,
16123 ITypeInfo **ppTInfo);
16124
16125 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16126 ISpeechPhraseInfoBuilder *This,
16127 REFIID riid,
16128 LPOLESTR *rgszNames,
16129 UINT cNames,
16130 LCID lcid,
16131 DISPID *rgDispId);
16132
16133 HRESULT (STDMETHODCALLTYPE *Invoke)(
16134 ISpeechPhraseInfoBuilder *This,
16135 DISPID dispIdMember,
16136 REFIID riid,
16137 LCID lcid,
16138 WORD wFlags,
16139 DISPPARAMS *pDispParams,
16140 VARIANT *pVarResult,
16141 EXCEPINFO *pExcepInfo,
16142 UINT *puArgErr);
16143
16144 /*** ISpeechPhraseInfoBuilder methods ***/
16145 HRESULT (STDMETHODCALLTYPE *RestorePhraseFromMemory)(
16146 ISpeechPhraseInfoBuilder *This,
16147 VARIANT *PhraseInMemory,
16148 ISpeechPhraseInfo **PhraseInfo);
16149
16150 END_INTERFACE
16151} ISpeechPhraseInfoBuilderVtbl;
16152
16153interface ISpeechPhraseInfoBuilder {
16154 CONST_VTBL ISpeechPhraseInfoBuilderVtbl* lpVtbl;
16155};
16156
16157#ifdef COBJMACROS
16158#ifndef WIDL_C_INLINE_WRAPPERS
16159/*** IUnknown methods ***/
16160#define ISpeechPhraseInfoBuilder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16161#define ISpeechPhraseInfoBuilder_AddRef(This) (This)->lpVtbl->AddRef(This)
16162#define ISpeechPhraseInfoBuilder_Release(This) (This)->lpVtbl->Release(This)
16163/*** IDispatch methods ***/
16164#define ISpeechPhraseInfoBuilder_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16165#define ISpeechPhraseInfoBuilder_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16166#define ISpeechPhraseInfoBuilder_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16167#define ISpeechPhraseInfoBuilder_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16168/*** ISpeechPhraseInfoBuilder methods ***/
16169#define ISpeechPhraseInfoBuilder_RestorePhraseFromMemory(This,PhraseInMemory,PhraseInfo) (This)->lpVtbl->RestorePhraseFromMemory(This,PhraseInMemory,PhraseInfo)
16170#else
16171/*** IUnknown methods ***/
16172static inline HRESULT ISpeechPhraseInfoBuilder_QueryInterface(ISpeechPhraseInfoBuilder* This,REFIID riid,void **ppvObject) {
16173 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16174}
16175static inline ULONG ISpeechPhraseInfoBuilder_AddRef(ISpeechPhraseInfoBuilder* This) {
16176 return This->lpVtbl->AddRef(This);
16177}
16178static inline ULONG ISpeechPhraseInfoBuilder_Release(ISpeechPhraseInfoBuilder* This) {
16179 return This->lpVtbl->Release(This);
16180}
16181/*** IDispatch methods ***/
16182static inline HRESULT ISpeechPhraseInfoBuilder_GetTypeInfoCount(ISpeechPhraseInfoBuilder* This,UINT *pctinfo) {
16183 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16184}
16185static inline HRESULT ISpeechPhraseInfoBuilder_GetTypeInfo(ISpeechPhraseInfoBuilder* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16186 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16187}
16188static inline HRESULT ISpeechPhraseInfoBuilder_GetIDsOfNames(ISpeechPhraseInfoBuilder* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16189 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16190}
16191static inline HRESULT ISpeechPhraseInfoBuilder_Invoke(ISpeechPhraseInfoBuilder* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16192 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16193}
16194/*** ISpeechPhraseInfoBuilder methods ***/
16195static inline HRESULT ISpeechPhraseInfoBuilder_RestorePhraseFromMemory(ISpeechPhraseInfoBuilder* This,VARIANT *PhraseInMemory,ISpeechPhraseInfo **PhraseInfo) {
16196 return This->lpVtbl->RestorePhraseFromMemory(This,PhraseInMemory,PhraseInfo);
16197}
16198#endif
16199#endif
16200
16201#endif
16202
16203
16204#endif /* __ISpeechPhraseInfoBuilder_INTERFACE_DEFINED__ */
16205
16206/*****************************************************************************
16207 * ISpeechRecoResultTimes interface
16208 */
16209#ifndef __ISpeechRecoResultTimes_INTERFACE_DEFINED__
16210#define __ISpeechRecoResultTimes_INTERFACE_DEFINED__
16211
16212DEFINE_GUID(IID_ISpeechRecoResultTimes, 0x62b3b8fb, 0xf6e7, 0x41be, 0xbd,0xcb, 0x05,0x6b,0x1c,0x29,0xef,0xc0);
16213#if defined(__cplusplus) && !defined(CINTERFACE)
16214MIDL_INTERFACE("62b3b8fb-f6e7-41be-bdcb-056b1c29efc0")
16215ISpeechRecoResultTimes : public IDispatch
16216{
16217 virtual HRESULT STDMETHODCALLTYPE get_StreamTime(
16218 VARIANT *Time) = 0;
16219
16220 virtual HRESULT STDMETHODCALLTYPE get_Length(
16221 VARIANT *Length) = 0;
16222
16223 virtual HRESULT STDMETHODCALLTYPE get_TickCount(
16224 LONG *TickCount) = 0;
16225
16226 virtual HRESULT STDMETHODCALLTYPE get_OffsetFromStart(
16227 VARIANT *OffsetFromStart) = 0;
16228
16229};
16230#ifdef __CRT_UUID_DECL
16231__CRT_UUID_DECL(ISpeechRecoResultTimes, 0x62b3b8fb, 0xf6e7, 0x41be, 0xbd,0xcb, 0x05,0x6b,0x1c,0x29,0xef,0xc0)
16232#endif
16233#else
16234typedef struct ISpeechRecoResultTimesVtbl {
16235 BEGIN_INTERFACE
16236
16237 /*** IUnknown methods ***/
16238 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16239 ISpeechRecoResultTimes *This,
16240 REFIID riid,
16241 void **ppvObject);
16242
16243 ULONG (STDMETHODCALLTYPE *AddRef)(
16244 ISpeechRecoResultTimes *This);
16245
16246 ULONG (STDMETHODCALLTYPE *Release)(
16247 ISpeechRecoResultTimes *This);
16248
16249 /*** IDispatch methods ***/
16250 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16251 ISpeechRecoResultTimes *This,
16252 UINT *pctinfo);
16253
16254 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16255 ISpeechRecoResultTimes *This,
16256 UINT iTInfo,
16257 LCID lcid,
16258 ITypeInfo **ppTInfo);
16259
16260 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16261 ISpeechRecoResultTimes *This,
16262 REFIID riid,
16263 LPOLESTR *rgszNames,
16264 UINT cNames,
16265 LCID lcid,
16266 DISPID *rgDispId);
16267
16268 HRESULT (STDMETHODCALLTYPE *Invoke)(
16269 ISpeechRecoResultTimes *This,
16270 DISPID dispIdMember,
16271 REFIID riid,
16272 LCID lcid,
16273 WORD wFlags,
16274 DISPPARAMS *pDispParams,
16275 VARIANT *pVarResult,
16276 EXCEPINFO *pExcepInfo,
16277 UINT *puArgErr);
16278
16279 /*** ISpeechRecoResultTimes methods ***/
16280 HRESULT (STDMETHODCALLTYPE *get_StreamTime)(
16281 ISpeechRecoResultTimes *This,
16282 VARIANT *Time);
16283
16284 HRESULT (STDMETHODCALLTYPE *get_Length)(
16285 ISpeechRecoResultTimes *This,
16286 VARIANT *Length);
16287
16288 HRESULT (STDMETHODCALLTYPE *get_TickCount)(
16289 ISpeechRecoResultTimes *This,
16290 LONG *TickCount);
16291
16292 HRESULT (STDMETHODCALLTYPE *get_OffsetFromStart)(
16293 ISpeechRecoResultTimes *This,
16294 VARIANT *OffsetFromStart);
16295
16296 END_INTERFACE
16297} ISpeechRecoResultTimesVtbl;
16298
16299interface ISpeechRecoResultTimes {
16300 CONST_VTBL ISpeechRecoResultTimesVtbl* lpVtbl;
16301};
16302
16303#ifdef COBJMACROS
16304#ifndef WIDL_C_INLINE_WRAPPERS
16305/*** IUnknown methods ***/
16306#define ISpeechRecoResultTimes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16307#define ISpeechRecoResultTimes_AddRef(This) (This)->lpVtbl->AddRef(This)
16308#define ISpeechRecoResultTimes_Release(This) (This)->lpVtbl->Release(This)
16309/*** IDispatch methods ***/
16310#define ISpeechRecoResultTimes_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16311#define ISpeechRecoResultTimes_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16312#define ISpeechRecoResultTimes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16313#define ISpeechRecoResultTimes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16314/*** ISpeechRecoResultTimes methods ***/
16315#define ISpeechRecoResultTimes_get_StreamTime(This,Time) (This)->lpVtbl->get_StreamTime(This,Time)
16316#define ISpeechRecoResultTimes_get_Length(This,Length) (This)->lpVtbl->get_Length(This,Length)
16317#define ISpeechRecoResultTimes_get_TickCount(This,TickCount) (This)->lpVtbl->get_TickCount(This,TickCount)
16318#define ISpeechRecoResultTimes_get_OffsetFromStart(This,OffsetFromStart) (This)->lpVtbl->get_OffsetFromStart(This,OffsetFromStart)
16319#else
16320/*** IUnknown methods ***/
16321static inline HRESULT ISpeechRecoResultTimes_QueryInterface(ISpeechRecoResultTimes* This,REFIID riid,void **ppvObject) {
16322 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16323}
16324static inline ULONG ISpeechRecoResultTimes_AddRef(ISpeechRecoResultTimes* This) {
16325 return This->lpVtbl->AddRef(This);
16326}
16327static inline ULONG ISpeechRecoResultTimes_Release(ISpeechRecoResultTimes* This) {
16328 return This->lpVtbl->Release(This);
16329}
16330/*** IDispatch methods ***/
16331static inline HRESULT ISpeechRecoResultTimes_GetTypeInfoCount(ISpeechRecoResultTimes* This,UINT *pctinfo) {
16332 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16333}
16334static inline HRESULT ISpeechRecoResultTimes_GetTypeInfo(ISpeechRecoResultTimes* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16335 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16336}
16337static inline HRESULT ISpeechRecoResultTimes_GetIDsOfNames(ISpeechRecoResultTimes* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16338 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16339}
16340static inline HRESULT ISpeechRecoResultTimes_Invoke(ISpeechRecoResultTimes* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16341 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16342}
16343/*** ISpeechRecoResultTimes methods ***/
16344static inline HRESULT ISpeechRecoResultTimes_get_StreamTime(ISpeechRecoResultTimes* This,VARIANT *Time) {
16345 return This->lpVtbl->get_StreamTime(This,Time);
16346}
16347static inline HRESULT ISpeechRecoResultTimes_get_Length(ISpeechRecoResultTimes* This,VARIANT *Length) {
16348 return This->lpVtbl->get_Length(This,Length);
16349}
16350static inline HRESULT ISpeechRecoResultTimes_get_TickCount(ISpeechRecoResultTimes* This,LONG *TickCount) {
16351 return This->lpVtbl->get_TickCount(This,TickCount);
16352}
16353static inline HRESULT ISpeechRecoResultTimes_get_OffsetFromStart(ISpeechRecoResultTimes* This,VARIANT *OffsetFromStart) {
16354 return This->lpVtbl->get_OffsetFromStart(This,OffsetFromStart);
16355}
16356#endif
16357#endif
16358
16359#endif
16360
16361
16362#endif /* __ISpeechRecoResultTimes_INTERFACE_DEFINED__ */
16363
16364/*****************************************************************************
16365 * ISpeechPhraseAlternate interface
16366 */
16367#ifndef __ISpeechPhraseAlternate_INTERFACE_DEFINED__
16368#define __ISpeechPhraseAlternate_INTERFACE_DEFINED__
16369
16370DEFINE_GUID(IID_ISpeechPhraseAlternate, 0x27864a2a, 0x2b9f, 0x4cb8, 0x92,0xd3, 0x0d,0x27,0x22,0xfd,0x1e,0x73);
16371#if defined(__cplusplus) && !defined(CINTERFACE)
16372MIDL_INTERFACE("27864a2a-2b9f-4cb8-92d3-0d2722fd1e73")
16373ISpeechPhraseAlternate : public IDispatch
16374{
16375 virtual HRESULT STDMETHODCALLTYPE get_RecoResult(
16376 ISpeechRecoResult **RecoResult) = 0;
16377
16378 virtual HRESULT STDMETHODCALLTYPE get_StartElementInResult(
16379 LONG *StartElement) = 0;
16380
16381 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElementsInResult(
16382 LONG *NumberOfElements) = 0;
16383
16384 virtual HRESULT STDMETHODCALLTYPE get_PhraseInfo(
16385 ISpeechPhraseInfo **PhraseInfo) = 0;
16386
16387 virtual HRESULT STDMETHODCALLTYPE Commit(
16388 ) = 0;
16389
16390};
16391#ifdef __CRT_UUID_DECL
16392__CRT_UUID_DECL(ISpeechPhraseAlternate, 0x27864a2a, 0x2b9f, 0x4cb8, 0x92,0xd3, 0x0d,0x27,0x22,0xfd,0x1e,0x73)
16393#endif
16394#else
16395typedef struct ISpeechPhraseAlternateVtbl {
16396 BEGIN_INTERFACE
16397
16398 /*** IUnknown methods ***/
16399 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16400 ISpeechPhraseAlternate *This,
16401 REFIID riid,
16402 void **ppvObject);
16403
16404 ULONG (STDMETHODCALLTYPE *AddRef)(
16405 ISpeechPhraseAlternate *This);
16406
16407 ULONG (STDMETHODCALLTYPE *Release)(
16408 ISpeechPhraseAlternate *This);
16409
16410 /*** IDispatch methods ***/
16411 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16412 ISpeechPhraseAlternate *This,
16413 UINT *pctinfo);
16414
16415 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16416 ISpeechPhraseAlternate *This,
16417 UINT iTInfo,
16418 LCID lcid,
16419 ITypeInfo **ppTInfo);
16420
16421 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16422 ISpeechPhraseAlternate *This,
16423 REFIID riid,
16424 LPOLESTR *rgszNames,
16425 UINT cNames,
16426 LCID lcid,
16427 DISPID *rgDispId);
16428
16429 HRESULT (STDMETHODCALLTYPE *Invoke)(
16430 ISpeechPhraseAlternate *This,
16431 DISPID dispIdMember,
16432 REFIID riid,
16433 LCID lcid,
16434 WORD wFlags,
16435 DISPPARAMS *pDispParams,
16436 VARIANT *pVarResult,
16437 EXCEPINFO *pExcepInfo,
16438 UINT *puArgErr);
16439
16440 /*** ISpeechPhraseAlternate methods ***/
16441 HRESULT (STDMETHODCALLTYPE *get_RecoResult)(
16442 ISpeechPhraseAlternate *This,
16443 ISpeechRecoResult **RecoResult);
16444
16445 HRESULT (STDMETHODCALLTYPE *get_StartElementInResult)(
16446 ISpeechPhraseAlternate *This,
16447 LONG *StartElement);
16448
16449 HRESULT (STDMETHODCALLTYPE *get_NumberOfElementsInResult)(
16450 ISpeechPhraseAlternate *This,
16451 LONG *NumberOfElements);
16452
16453 HRESULT (STDMETHODCALLTYPE *get_PhraseInfo)(
16454 ISpeechPhraseAlternate *This,
16455 ISpeechPhraseInfo **PhraseInfo);
16456
16457 HRESULT (STDMETHODCALLTYPE *Commit)(
16458 ISpeechPhraseAlternate *This);
16459
16460 END_INTERFACE
16461} ISpeechPhraseAlternateVtbl;
16462
16463interface ISpeechPhraseAlternate {
16464 CONST_VTBL ISpeechPhraseAlternateVtbl* lpVtbl;
16465};
16466
16467#ifdef COBJMACROS
16468#ifndef WIDL_C_INLINE_WRAPPERS
16469/*** IUnknown methods ***/
16470#define ISpeechPhraseAlternate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16471#define ISpeechPhraseAlternate_AddRef(This) (This)->lpVtbl->AddRef(This)
16472#define ISpeechPhraseAlternate_Release(This) (This)->lpVtbl->Release(This)
16473/*** IDispatch methods ***/
16474#define ISpeechPhraseAlternate_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16475#define ISpeechPhraseAlternate_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16476#define ISpeechPhraseAlternate_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16477#define ISpeechPhraseAlternate_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16478/*** ISpeechPhraseAlternate methods ***/
16479#define ISpeechPhraseAlternate_get_RecoResult(This,RecoResult) (This)->lpVtbl->get_RecoResult(This,RecoResult)
16480#define ISpeechPhraseAlternate_get_StartElementInResult(This,StartElement) (This)->lpVtbl->get_StartElementInResult(This,StartElement)
16481#define ISpeechPhraseAlternate_get_NumberOfElementsInResult(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElementsInResult(This,NumberOfElements)
16482#define ISpeechPhraseAlternate_get_PhraseInfo(This,PhraseInfo) (This)->lpVtbl->get_PhraseInfo(This,PhraseInfo)
16483#define ISpeechPhraseAlternate_Commit(This) (This)->lpVtbl->Commit(This)
16484#else
16485/*** IUnknown methods ***/
16486static inline HRESULT ISpeechPhraseAlternate_QueryInterface(ISpeechPhraseAlternate* This,REFIID riid,void **ppvObject) {
16487 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16488}
16489static inline ULONG ISpeechPhraseAlternate_AddRef(ISpeechPhraseAlternate* This) {
16490 return This->lpVtbl->AddRef(This);
16491}
16492static inline ULONG ISpeechPhraseAlternate_Release(ISpeechPhraseAlternate* This) {
16493 return This->lpVtbl->Release(This);
16494}
16495/*** IDispatch methods ***/
16496static inline HRESULT ISpeechPhraseAlternate_GetTypeInfoCount(ISpeechPhraseAlternate* This,UINT *pctinfo) {
16497 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16498}
16499static inline HRESULT ISpeechPhraseAlternate_GetTypeInfo(ISpeechPhraseAlternate* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16500 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16501}
16502static inline HRESULT ISpeechPhraseAlternate_GetIDsOfNames(ISpeechPhraseAlternate* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16503 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16504}
16505static inline HRESULT ISpeechPhraseAlternate_Invoke(ISpeechPhraseAlternate* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16506 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16507}
16508/*** ISpeechPhraseAlternate methods ***/
16509static inline HRESULT ISpeechPhraseAlternate_get_RecoResult(ISpeechPhraseAlternate* This,ISpeechRecoResult **RecoResult) {
16510 return This->lpVtbl->get_RecoResult(This,RecoResult);
16511}
16512static inline HRESULT ISpeechPhraseAlternate_get_StartElementInResult(ISpeechPhraseAlternate* This,LONG *StartElement) {
16513 return This->lpVtbl->get_StartElementInResult(This,StartElement);
16514}
16515static inline HRESULT ISpeechPhraseAlternate_get_NumberOfElementsInResult(ISpeechPhraseAlternate* This,LONG *NumberOfElements) {
16516 return This->lpVtbl->get_NumberOfElementsInResult(This,NumberOfElements);
16517}
16518static inline HRESULT ISpeechPhraseAlternate_get_PhraseInfo(ISpeechPhraseAlternate* This,ISpeechPhraseInfo **PhraseInfo) {
16519 return This->lpVtbl->get_PhraseInfo(This,PhraseInfo);
16520}
16521static inline HRESULT ISpeechPhraseAlternate_Commit(ISpeechPhraseAlternate* This) {
16522 return This->lpVtbl->Commit(This);
16523}
16524#endif
16525#endif
16526
16527#endif
16528
16529
16530#endif /* __ISpeechPhraseAlternate_INTERFACE_DEFINED__ */
16531
16532/*****************************************************************************
16533 * ISpeechPhraseAlternates interface
16534 */
16535#ifndef __ISpeechPhraseAlternates_INTERFACE_DEFINED__
16536#define __ISpeechPhraseAlternates_INTERFACE_DEFINED__
16537
16538DEFINE_GUID(IID_ISpeechPhraseAlternates, 0xb238b6d5, 0xf276, 0x4c3d, 0xa6,0xc1, 0x29,0x74,0x80,0x1c,0x3c,0xc2);
16539#if defined(__cplusplus) && !defined(CINTERFACE)
16540MIDL_INTERFACE("b238b6d5-f276-4c3d-a6c1-2974801c3cc2")
16541ISpeechPhraseAlternates : public IDispatch
16542{
16543 virtual HRESULT STDMETHODCALLTYPE get_Count(
16544 LONG *Count) = 0;
16545
16546 virtual HRESULT STDMETHODCALLTYPE Item(
16547 LONG Index,
16548 ISpeechPhraseAlternate **PhraseAlternate) = 0;
16549
16550 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
16551 IUnknown **EnumVARIANT) = 0;
16552
16553};
16554#ifdef __CRT_UUID_DECL
16555__CRT_UUID_DECL(ISpeechPhraseAlternates, 0xb238b6d5, 0xf276, 0x4c3d, 0xa6,0xc1, 0x29,0x74,0x80,0x1c,0x3c,0xc2)
16556#endif
16557#else
16558typedef struct ISpeechPhraseAlternatesVtbl {
16559 BEGIN_INTERFACE
16560
16561 /*** IUnknown methods ***/
16562 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16563 ISpeechPhraseAlternates *This,
16564 REFIID riid,
16565 void **ppvObject);
16566
16567 ULONG (STDMETHODCALLTYPE *AddRef)(
16568 ISpeechPhraseAlternates *This);
16569
16570 ULONG (STDMETHODCALLTYPE *Release)(
16571 ISpeechPhraseAlternates *This);
16572
16573 /*** IDispatch methods ***/
16574 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16575 ISpeechPhraseAlternates *This,
16576 UINT *pctinfo);
16577
16578 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16579 ISpeechPhraseAlternates *This,
16580 UINT iTInfo,
16581 LCID lcid,
16582 ITypeInfo **ppTInfo);
16583
16584 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16585 ISpeechPhraseAlternates *This,
16586 REFIID riid,
16587 LPOLESTR *rgszNames,
16588 UINT cNames,
16589 LCID lcid,
16590 DISPID *rgDispId);
16591
16592 HRESULT (STDMETHODCALLTYPE *Invoke)(
16593 ISpeechPhraseAlternates *This,
16594 DISPID dispIdMember,
16595 REFIID riid,
16596 LCID lcid,
16597 WORD wFlags,
16598 DISPPARAMS *pDispParams,
16599 VARIANT *pVarResult,
16600 EXCEPINFO *pExcepInfo,
16601 UINT *puArgErr);
16602
16603 /*** ISpeechPhraseAlternates methods ***/
16604 HRESULT (STDMETHODCALLTYPE *get_Count)(
16605 ISpeechPhraseAlternates *This,
16606 LONG *Count);
16607
16608 HRESULT (STDMETHODCALLTYPE *Item)(
16609 ISpeechPhraseAlternates *This,
16610 LONG Index,
16611 ISpeechPhraseAlternate **PhraseAlternate);
16612
16613 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
16614 ISpeechPhraseAlternates *This,
16615 IUnknown **EnumVARIANT);
16616
16617 END_INTERFACE
16618} ISpeechPhraseAlternatesVtbl;
16619
16620interface ISpeechPhraseAlternates {
16621 CONST_VTBL ISpeechPhraseAlternatesVtbl* lpVtbl;
16622};
16623
16624#ifdef COBJMACROS
16625#ifndef WIDL_C_INLINE_WRAPPERS
16626/*** IUnknown methods ***/
16627#define ISpeechPhraseAlternates_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16628#define ISpeechPhraseAlternates_AddRef(This) (This)->lpVtbl->AddRef(This)
16629#define ISpeechPhraseAlternates_Release(This) (This)->lpVtbl->Release(This)
16630/*** IDispatch methods ***/
16631#define ISpeechPhraseAlternates_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16632#define ISpeechPhraseAlternates_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16633#define ISpeechPhraseAlternates_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16634#define ISpeechPhraseAlternates_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16635/*** ISpeechPhraseAlternates methods ***/
16636#define ISpeechPhraseAlternates_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
16637#define ISpeechPhraseAlternates_Item(This,Index,PhraseAlternate) (This)->lpVtbl->Item(This,Index,PhraseAlternate)
16638#define ISpeechPhraseAlternates_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
16639#else
16640/*** IUnknown methods ***/
16641static inline HRESULT ISpeechPhraseAlternates_QueryInterface(ISpeechPhraseAlternates* This,REFIID riid,void **ppvObject) {
16642 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16643}
16644static inline ULONG ISpeechPhraseAlternates_AddRef(ISpeechPhraseAlternates* This) {
16645 return This->lpVtbl->AddRef(This);
16646}
16647static inline ULONG ISpeechPhraseAlternates_Release(ISpeechPhraseAlternates* This) {
16648 return This->lpVtbl->Release(This);
16649}
16650/*** IDispatch methods ***/
16651static inline HRESULT ISpeechPhraseAlternates_GetTypeInfoCount(ISpeechPhraseAlternates* This,UINT *pctinfo) {
16652 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16653}
16654static inline HRESULT ISpeechPhraseAlternates_GetTypeInfo(ISpeechPhraseAlternates* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16655 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16656}
16657static inline HRESULT ISpeechPhraseAlternates_GetIDsOfNames(ISpeechPhraseAlternates* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16658 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16659}
16660static inline HRESULT ISpeechPhraseAlternates_Invoke(ISpeechPhraseAlternates* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16661 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16662}
16663/*** ISpeechPhraseAlternates methods ***/
16664static inline HRESULT ISpeechPhraseAlternates_get_Count(ISpeechPhraseAlternates* This,LONG *Count) {
16665 return This->lpVtbl->get_Count(This,Count);
16666}
16667static inline HRESULT ISpeechPhraseAlternates_Item(ISpeechPhraseAlternates* This,LONG Index,ISpeechPhraseAlternate **PhraseAlternate) {
16668 return This->lpVtbl->Item(This,Index,PhraseAlternate);
16669}
16670static inline HRESULT ISpeechPhraseAlternates_get__NewEnum(ISpeechPhraseAlternates* This,IUnknown **EnumVARIANT) {
16671 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
16672}
16673#endif
16674#endif
16675
16676#endif
16677
16678
16679#endif /* __ISpeechPhraseAlternates_INTERFACE_DEFINED__ */
16680
16681/*****************************************************************************
16682 * ISpeechPhraseInfo interface
16683 */
16684#ifndef __ISpeechPhraseInfo_INTERFACE_DEFINED__
16685#define __ISpeechPhraseInfo_INTERFACE_DEFINED__
16686
16687DEFINE_GUID(IID_ISpeechPhraseInfo, 0x961559cf, 0x4e67, 0x4662, 0x8b,0xf0, 0xd9,0x3f,0x1f,0xcd,0x61,0xb3);
16688#if defined(__cplusplus) && !defined(CINTERFACE)
16689MIDL_INTERFACE("961559cf-4e67-4662-8bf0-d93f1fcd61b3")
16690ISpeechPhraseInfo : public IDispatch
16691{
16692 virtual HRESULT STDMETHODCALLTYPE get_LanguageId(
16693 LONG *LanguageId) = 0;
16694
16695 virtual HRESULT STDMETHODCALLTYPE get_GrammarId(
16696 VARIANT *GrammarId) = 0;
16697
16698 virtual HRESULT STDMETHODCALLTYPE get_StartTime(
16699 VARIANT *StartTime) = 0;
16700
16701 virtual HRESULT STDMETHODCALLTYPE get_AudioStreamPosition(
16702 VARIANT *AudioStreamPosition) = 0;
16703
16704 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeBytes(
16705 LONG *pAudioSizeBytes) = 0;
16706
16707 virtual HRESULT STDMETHODCALLTYPE get_RetainedSizeBytes(
16708 LONG *RetainedSizeBytes) = 0;
16709
16710 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeTime(
16711 LONG *AudioSizeTime) = 0;
16712
16713 virtual HRESULT STDMETHODCALLTYPE get_Rule(
16714 ISpeechPhraseRule **Rule) = 0;
16715
16716 virtual HRESULT STDMETHODCALLTYPE get_Properties(
16717 ISpeechPhraseProperties **Properties) = 0;
16718
16719 virtual HRESULT STDMETHODCALLTYPE get_Elements(
16720 ISpeechPhraseElements **Elements) = 0;
16721
16722 virtual HRESULT STDMETHODCALLTYPE get_Replacements(
16723 ISpeechPhraseReplacements **Replacements) = 0;
16724
16725 virtual HRESULT STDMETHODCALLTYPE get_EngineId(
16726 BSTR *EngineIdGuid) = 0;
16727
16728 virtual HRESULT STDMETHODCALLTYPE get_EnginePrivateData(
16729 VARIANT *PrivateData) = 0;
16730
16731 virtual HRESULT STDMETHODCALLTYPE SaveToMemory(
16732 VARIANT *PhraseBlock) = 0;
16733
16734 virtual HRESULT STDMETHODCALLTYPE GetText(
16735 LONG StartElement,
16736 LONG Elements,
16737 VARIANT_BOOL UseReplacements,
16738 BSTR *Text) = 0;
16739
16740 virtual HRESULT STDMETHODCALLTYPE GetDisplayAttributes(
16741 LONG StartElement,
16742 LONG Elements,
16743 VARIANT_BOOL UseReplacements,
16744 SpeechDisplayAttributes *DisplayAttributes) = 0;
16745
16746};
16747#ifdef __CRT_UUID_DECL
16748__CRT_UUID_DECL(ISpeechPhraseInfo, 0x961559cf, 0x4e67, 0x4662, 0x8b,0xf0, 0xd9,0x3f,0x1f,0xcd,0x61,0xb3)
16749#endif
16750#else
16751typedef struct ISpeechPhraseInfoVtbl {
16752 BEGIN_INTERFACE
16753
16754 /*** IUnknown methods ***/
16755 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16756 ISpeechPhraseInfo *This,
16757 REFIID riid,
16758 void **ppvObject);
16759
16760 ULONG (STDMETHODCALLTYPE *AddRef)(
16761 ISpeechPhraseInfo *This);
16762
16763 ULONG (STDMETHODCALLTYPE *Release)(
16764 ISpeechPhraseInfo *This);
16765
16766 /*** IDispatch methods ***/
16767 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16768 ISpeechPhraseInfo *This,
16769 UINT *pctinfo);
16770
16771 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16772 ISpeechPhraseInfo *This,
16773 UINT iTInfo,
16774 LCID lcid,
16775 ITypeInfo **ppTInfo);
16776
16777 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16778 ISpeechPhraseInfo *This,
16779 REFIID riid,
16780 LPOLESTR *rgszNames,
16781 UINT cNames,
16782 LCID lcid,
16783 DISPID *rgDispId);
16784
16785 HRESULT (STDMETHODCALLTYPE *Invoke)(
16786 ISpeechPhraseInfo *This,
16787 DISPID dispIdMember,
16788 REFIID riid,
16789 LCID lcid,
16790 WORD wFlags,
16791 DISPPARAMS *pDispParams,
16792 VARIANT *pVarResult,
16793 EXCEPINFO *pExcepInfo,
16794 UINT *puArgErr);
16795
16796 /*** ISpeechPhraseInfo methods ***/
16797 HRESULT (STDMETHODCALLTYPE *get_LanguageId)(
16798 ISpeechPhraseInfo *This,
16799 LONG *LanguageId);
16800
16801 HRESULT (STDMETHODCALLTYPE *get_GrammarId)(
16802 ISpeechPhraseInfo *This,
16803 VARIANT *GrammarId);
16804
16805 HRESULT (STDMETHODCALLTYPE *get_StartTime)(
16806 ISpeechPhraseInfo *This,
16807 VARIANT *StartTime);
16808
16809 HRESULT (STDMETHODCALLTYPE *get_AudioStreamPosition)(
16810 ISpeechPhraseInfo *This,
16811 VARIANT *AudioStreamPosition);
16812
16813 HRESULT (STDMETHODCALLTYPE *get_AudioSizeBytes)(
16814 ISpeechPhraseInfo *This,
16815 LONG *pAudioSizeBytes);
16816
16817 HRESULT (STDMETHODCALLTYPE *get_RetainedSizeBytes)(
16818 ISpeechPhraseInfo *This,
16819 LONG *RetainedSizeBytes);
16820
16821 HRESULT (STDMETHODCALLTYPE *get_AudioSizeTime)(
16822 ISpeechPhraseInfo *This,
16823 LONG *AudioSizeTime);
16824
16825 HRESULT (STDMETHODCALLTYPE *get_Rule)(
16826 ISpeechPhraseInfo *This,
16827 ISpeechPhraseRule **Rule);
16828
16829 HRESULT (STDMETHODCALLTYPE *get_Properties)(
16830 ISpeechPhraseInfo *This,
16831 ISpeechPhraseProperties **Properties);
16832
16833 HRESULT (STDMETHODCALLTYPE *get_Elements)(
16834 ISpeechPhraseInfo *This,
16835 ISpeechPhraseElements **Elements);
16836
16837 HRESULT (STDMETHODCALLTYPE *get_Replacements)(
16838 ISpeechPhraseInfo *This,
16839 ISpeechPhraseReplacements **Replacements);
16840
16841 HRESULT (STDMETHODCALLTYPE *get_EngineId)(
16842 ISpeechPhraseInfo *This,
16843 BSTR *EngineIdGuid);
16844
16845 HRESULT (STDMETHODCALLTYPE *get_EnginePrivateData)(
16846 ISpeechPhraseInfo *This,
16847 VARIANT *PrivateData);
16848
16849 HRESULT (STDMETHODCALLTYPE *SaveToMemory)(
16850 ISpeechPhraseInfo *This,
16851 VARIANT *PhraseBlock);
16852
16853 HRESULT (STDMETHODCALLTYPE *GetText)(
16854 ISpeechPhraseInfo *This,
16855 LONG StartElement,
16856 LONG Elements,
16857 VARIANT_BOOL UseReplacements,
16858 BSTR *Text);
16859
16860 HRESULT (STDMETHODCALLTYPE *GetDisplayAttributes)(
16861 ISpeechPhraseInfo *This,
16862 LONG StartElement,
16863 LONG Elements,
16864 VARIANT_BOOL UseReplacements,
16865 SpeechDisplayAttributes *DisplayAttributes);
16866
16867 END_INTERFACE
16868} ISpeechPhraseInfoVtbl;
16869
16870interface ISpeechPhraseInfo {
16871 CONST_VTBL ISpeechPhraseInfoVtbl* lpVtbl;
16872};
16873
16874#ifdef COBJMACROS
16875#ifndef WIDL_C_INLINE_WRAPPERS
16876/*** IUnknown methods ***/
16877#define ISpeechPhraseInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16878#define ISpeechPhraseInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
16879#define ISpeechPhraseInfo_Release(This) (This)->lpVtbl->Release(This)
16880/*** IDispatch methods ***/
16881#define ISpeechPhraseInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16882#define ISpeechPhraseInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16883#define ISpeechPhraseInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16884#define ISpeechPhraseInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16885/*** ISpeechPhraseInfo methods ***/
16886#define ISpeechPhraseInfo_get_LanguageId(This,LanguageId) (This)->lpVtbl->get_LanguageId(This,LanguageId)
16887#define ISpeechPhraseInfo_get_GrammarId(This,GrammarId) (This)->lpVtbl->get_GrammarId(This,GrammarId)
16888#define ISpeechPhraseInfo_get_StartTime(This,StartTime) (This)->lpVtbl->get_StartTime(This,StartTime)
16889#define ISpeechPhraseInfo_get_AudioStreamPosition(This,AudioStreamPosition) (This)->lpVtbl->get_AudioStreamPosition(This,AudioStreamPosition)
16890#define ISpeechPhraseInfo_get_AudioSizeBytes(This,pAudioSizeBytes) (This)->lpVtbl->get_AudioSizeBytes(This,pAudioSizeBytes)
16891#define ISpeechPhraseInfo_get_RetainedSizeBytes(This,RetainedSizeBytes) (This)->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes)
16892#define ISpeechPhraseInfo_get_AudioSizeTime(This,AudioSizeTime) (This)->lpVtbl->get_AudioSizeTime(This,AudioSizeTime)
16893#define ISpeechPhraseInfo_get_Rule(This,Rule) (This)->lpVtbl->get_Rule(This,Rule)
16894#define ISpeechPhraseInfo_get_Properties(This,Properties) (This)->lpVtbl->get_Properties(This,Properties)
16895#define ISpeechPhraseInfo_get_Elements(This,Elements) (This)->lpVtbl->get_Elements(This,Elements)
16896#define ISpeechPhraseInfo_get_Replacements(This,Replacements) (This)->lpVtbl->get_Replacements(This,Replacements)
16897#define ISpeechPhraseInfo_get_EngineId(This,EngineIdGuid) (This)->lpVtbl->get_EngineId(This,EngineIdGuid)
16898#define ISpeechPhraseInfo_get_EnginePrivateData(This,PrivateData) (This)->lpVtbl->get_EnginePrivateData(This,PrivateData)
16899#define ISpeechPhraseInfo_SaveToMemory(This,PhraseBlock) (This)->lpVtbl->SaveToMemory(This,PhraseBlock)
16900#define ISpeechPhraseInfo_GetText(This,StartElement,Elements,UseReplacements,Text) (This)->lpVtbl->GetText(This,StartElement,Elements,UseReplacements,Text)
16901#define ISpeechPhraseInfo_GetDisplayAttributes(This,StartElement,Elements,UseReplacements,DisplayAttributes) (This)->lpVtbl->GetDisplayAttributes(This,StartElement,Elements,UseReplacements,DisplayAttributes)
16902#else
16903/*** IUnknown methods ***/
16904static inline HRESULT ISpeechPhraseInfo_QueryInterface(ISpeechPhraseInfo* This,REFIID riid,void **ppvObject) {
16905 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16906}
16907static inline ULONG ISpeechPhraseInfo_AddRef(ISpeechPhraseInfo* This) {
16908 return This->lpVtbl->AddRef(This);
16909}
16910static inline ULONG ISpeechPhraseInfo_Release(ISpeechPhraseInfo* This) {
16911 return This->lpVtbl->Release(This);
16912}
16913/*** IDispatch methods ***/
16914static inline HRESULT ISpeechPhraseInfo_GetTypeInfoCount(ISpeechPhraseInfo* This,UINT *pctinfo) {
16915 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16916}
16917static inline HRESULT ISpeechPhraseInfo_GetTypeInfo(ISpeechPhraseInfo* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16918 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16919}
16920static inline HRESULT ISpeechPhraseInfo_GetIDsOfNames(ISpeechPhraseInfo* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16921 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16922}
16923static inline HRESULT ISpeechPhraseInfo_Invoke(ISpeechPhraseInfo* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16924 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16925}
16926/*** ISpeechPhraseInfo methods ***/
16927static inline HRESULT ISpeechPhraseInfo_get_LanguageId(ISpeechPhraseInfo* This,LONG *LanguageId) {
16928 return This->lpVtbl->get_LanguageId(This,LanguageId);
16929}
16930static inline HRESULT ISpeechPhraseInfo_get_GrammarId(ISpeechPhraseInfo* This,VARIANT *GrammarId) {
16931 return This->lpVtbl->get_GrammarId(This,GrammarId);
16932}
16933static inline HRESULT ISpeechPhraseInfo_get_StartTime(ISpeechPhraseInfo* This,VARIANT *StartTime) {
16934 return This->lpVtbl->get_StartTime(This,StartTime);
16935}
16936static inline HRESULT ISpeechPhraseInfo_get_AudioStreamPosition(ISpeechPhraseInfo* This,VARIANT *AudioStreamPosition) {
16937 return This->lpVtbl->get_AudioStreamPosition(This,AudioStreamPosition);
16938}
16939static inline HRESULT ISpeechPhraseInfo_get_AudioSizeBytes(ISpeechPhraseInfo* This,LONG *pAudioSizeBytes) {
16940 return This->lpVtbl->get_AudioSizeBytes(This,pAudioSizeBytes);
16941}
16942static inline HRESULT ISpeechPhraseInfo_get_RetainedSizeBytes(ISpeechPhraseInfo* This,LONG *RetainedSizeBytes) {
16943 return This->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes);
16944}
16945static inline HRESULT ISpeechPhraseInfo_get_AudioSizeTime(ISpeechPhraseInfo* This,LONG *AudioSizeTime) {
16946 return This->lpVtbl->get_AudioSizeTime(This,AudioSizeTime);
16947}
16948static inline HRESULT ISpeechPhraseInfo_get_Rule(ISpeechPhraseInfo* This,ISpeechPhraseRule **Rule) {
16949 return This->lpVtbl->get_Rule(This,Rule);
16950}
16951static inline HRESULT ISpeechPhraseInfo_get_Properties(ISpeechPhraseInfo* This,ISpeechPhraseProperties **Properties) {
16952 return This->lpVtbl->get_Properties(This,Properties);
16953}
16954static inline HRESULT ISpeechPhraseInfo_get_Elements(ISpeechPhraseInfo* This,ISpeechPhraseElements **Elements) {
16955 return This->lpVtbl->get_Elements(This,Elements);
16956}
16957static inline HRESULT ISpeechPhraseInfo_get_Replacements(ISpeechPhraseInfo* This,ISpeechPhraseReplacements **Replacements) {
16958 return This->lpVtbl->get_Replacements(This,Replacements);
16959}
16960static inline HRESULT ISpeechPhraseInfo_get_EngineId(ISpeechPhraseInfo* This,BSTR *EngineIdGuid) {
16961 return This->lpVtbl->get_EngineId(This,EngineIdGuid);
16962}
16963static inline HRESULT ISpeechPhraseInfo_get_EnginePrivateData(ISpeechPhraseInfo* This,VARIANT *PrivateData) {
16964 return This->lpVtbl->get_EnginePrivateData(This,PrivateData);
16965}
16966static inline HRESULT ISpeechPhraseInfo_SaveToMemory(ISpeechPhraseInfo* This,VARIANT *PhraseBlock) {
16967 return This->lpVtbl->SaveToMemory(This,PhraseBlock);
16968}
16969static inline HRESULT ISpeechPhraseInfo_GetText(ISpeechPhraseInfo* This,LONG StartElement,LONG Elements,VARIANT_BOOL UseReplacements,BSTR *Text) {
16970 return This->lpVtbl->GetText(This,StartElement,Elements,UseReplacements,Text);
16971}
16972static inline HRESULT ISpeechPhraseInfo_GetDisplayAttributes(ISpeechPhraseInfo* This,LONG StartElement,LONG Elements,VARIANT_BOOL UseReplacements,SpeechDisplayAttributes *DisplayAttributes) {
16973 return This->lpVtbl->GetDisplayAttributes(This,StartElement,Elements,UseReplacements,DisplayAttributes);
16974}
16975#endif
16976#endif
16977
16978#endif
16979
16980
16981#endif /* __ISpeechPhraseInfo_INTERFACE_DEFINED__ */
16982
16983/*****************************************************************************
16984 * ISpeechPhraseElement interface
16985 */
16986#ifndef __ISpeechPhraseElement_INTERFACE_DEFINED__
16987#define __ISpeechPhraseElement_INTERFACE_DEFINED__
16988
16989DEFINE_GUID(IID_ISpeechPhraseElement, 0xe6176f96, 0xe373, 0x4801, 0xb2,0x23, 0x3b,0x62,0xc0,0x68,0xc0,0xb4);
16990#if defined(__cplusplus) && !defined(CINTERFACE)
16991MIDL_INTERFACE("e6176f96-e373-4801-b223-3b62c068c0b4")
16992ISpeechPhraseElement : public IDispatch
16993{
16994 virtual HRESULT STDMETHODCALLTYPE get_AudioTimeOffset(
16995 LONG *AudioTimeOffset) = 0;
16996
16997 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeTime(
16998 LONG *AudioSizeTime) = 0;
16999
17000 virtual HRESULT STDMETHODCALLTYPE get_AudioStreamOffset(
17001 LONG *AudioStreamOffset) = 0;
17002
17003 virtual HRESULT STDMETHODCALLTYPE get_AudioSizeBytes(
17004 LONG *AudioSizeBytes) = 0;
17005
17006 virtual HRESULT STDMETHODCALLTYPE get_RetainedStreamOffset(
17007 LONG *RetainedStreamOffset) = 0;
17008
17009 virtual HRESULT STDMETHODCALLTYPE get_RetainedSizeBytes(
17010 LONG *RetainedSizeBytes) = 0;
17011
17012 virtual HRESULT STDMETHODCALLTYPE get_DisplayText(
17013 BSTR *DisplayText) = 0;
17014
17015 virtual HRESULT STDMETHODCALLTYPE get_LexicalForm(
17016 BSTR *LexicalForm) = 0;
17017
17018 virtual HRESULT STDMETHODCALLTYPE get_Pronunciation(
17019 VARIANT *Pronunciation) = 0;
17020
17021 virtual HRESULT STDMETHODCALLTYPE get_DisplayAttributes(
17022 SpeechDisplayAttributes *DisplayAttributes) = 0;
17023
17024 virtual HRESULT STDMETHODCALLTYPE get_RequiredConfidence(
17025 SpeechEngineConfidence *RequiredConfidence) = 0;
17026
17027 virtual HRESULT STDMETHODCALLTYPE get_ActualConfidence(
17028 SpeechEngineConfidence *ActualConfidence) = 0;
17029
17030 virtual HRESULT STDMETHODCALLTYPE get_EngineConfidence(
17031 float *EngineConfidence) = 0;
17032
17033};
17034#ifdef __CRT_UUID_DECL
17035__CRT_UUID_DECL(ISpeechPhraseElement, 0xe6176f96, 0xe373, 0x4801, 0xb2,0x23, 0x3b,0x62,0xc0,0x68,0xc0,0xb4)
17036#endif
17037#else
17038typedef struct ISpeechPhraseElementVtbl {
17039 BEGIN_INTERFACE
17040
17041 /*** IUnknown methods ***/
17042 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17043 ISpeechPhraseElement *This,
17044 REFIID riid,
17045 void **ppvObject);
17046
17047 ULONG (STDMETHODCALLTYPE *AddRef)(
17048 ISpeechPhraseElement *This);
17049
17050 ULONG (STDMETHODCALLTYPE *Release)(
17051 ISpeechPhraseElement *This);
17052
17053 /*** IDispatch methods ***/
17054 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17055 ISpeechPhraseElement *This,
17056 UINT *pctinfo);
17057
17058 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17059 ISpeechPhraseElement *This,
17060 UINT iTInfo,
17061 LCID lcid,
17062 ITypeInfo **ppTInfo);
17063
17064 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17065 ISpeechPhraseElement *This,
17066 REFIID riid,
17067 LPOLESTR *rgszNames,
17068 UINT cNames,
17069 LCID lcid,
17070 DISPID *rgDispId);
17071
17072 HRESULT (STDMETHODCALLTYPE *Invoke)(
17073 ISpeechPhraseElement *This,
17074 DISPID dispIdMember,
17075 REFIID riid,
17076 LCID lcid,
17077 WORD wFlags,
17078 DISPPARAMS *pDispParams,
17079 VARIANT *pVarResult,
17080 EXCEPINFO *pExcepInfo,
17081 UINT *puArgErr);
17082
17083 /*** ISpeechPhraseElement methods ***/
17084 HRESULT (STDMETHODCALLTYPE *get_AudioTimeOffset)(
17085 ISpeechPhraseElement *This,
17086 LONG *AudioTimeOffset);
17087
17088 HRESULT (STDMETHODCALLTYPE *get_AudioSizeTime)(
17089 ISpeechPhraseElement *This,
17090 LONG *AudioSizeTime);
17091
17092 HRESULT (STDMETHODCALLTYPE *get_AudioStreamOffset)(
17093 ISpeechPhraseElement *This,
17094 LONG *AudioStreamOffset);
17095
17096 HRESULT (STDMETHODCALLTYPE *get_AudioSizeBytes)(
17097 ISpeechPhraseElement *This,
17098 LONG *AudioSizeBytes);
17099
17100 HRESULT (STDMETHODCALLTYPE *get_RetainedStreamOffset)(
17101 ISpeechPhraseElement *This,
17102 LONG *RetainedStreamOffset);
17103
17104 HRESULT (STDMETHODCALLTYPE *get_RetainedSizeBytes)(
17105 ISpeechPhraseElement *This,
17106 LONG *RetainedSizeBytes);
17107
17108 HRESULT (STDMETHODCALLTYPE *get_DisplayText)(
17109 ISpeechPhraseElement *This,
17110 BSTR *DisplayText);
17111
17112 HRESULT (STDMETHODCALLTYPE *get_LexicalForm)(
17113 ISpeechPhraseElement *This,
17114 BSTR *LexicalForm);
17115
17116 HRESULT (STDMETHODCALLTYPE *get_Pronunciation)(
17117 ISpeechPhraseElement *This,
17118 VARIANT *Pronunciation);
17119
17120 HRESULT (STDMETHODCALLTYPE *get_DisplayAttributes)(
17121 ISpeechPhraseElement *This,
17122 SpeechDisplayAttributes *DisplayAttributes);
17123
17124 HRESULT (STDMETHODCALLTYPE *get_RequiredConfidence)(
17125 ISpeechPhraseElement *This,
17126 SpeechEngineConfidence *RequiredConfidence);
17127
17128 HRESULT (STDMETHODCALLTYPE *get_ActualConfidence)(
17129 ISpeechPhraseElement *This,
17130 SpeechEngineConfidence *ActualConfidence);
17131
17132 HRESULT (STDMETHODCALLTYPE *get_EngineConfidence)(
17133 ISpeechPhraseElement *This,
17134 float *EngineConfidence);
17135
17136 END_INTERFACE
17137} ISpeechPhraseElementVtbl;
17138
17139interface ISpeechPhraseElement {
17140 CONST_VTBL ISpeechPhraseElementVtbl* lpVtbl;
17141};
17142
17143#ifdef COBJMACROS
17144#ifndef WIDL_C_INLINE_WRAPPERS
17145/*** IUnknown methods ***/
17146#define ISpeechPhraseElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17147#define ISpeechPhraseElement_AddRef(This) (This)->lpVtbl->AddRef(This)
17148#define ISpeechPhraseElement_Release(This) (This)->lpVtbl->Release(This)
17149/*** IDispatch methods ***/
17150#define ISpeechPhraseElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17151#define ISpeechPhraseElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17152#define ISpeechPhraseElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17153#define ISpeechPhraseElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17154/*** ISpeechPhraseElement methods ***/
17155#define ISpeechPhraseElement_get_AudioTimeOffset(This,AudioTimeOffset) (This)->lpVtbl->get_AudioTimeOffset(This,AudioTimeOffset)
17156#define ISpeechPhraseElement_get_AudioSizeTime(This,AudioSizeTime) (This)->lpVtbl->get_AudioSizeTime(This,AudioSizeTime)
17157#define ISpeechPhraseElement_get_AudioStreamOffset(This,AudioStreamOffset) (This)->lpVtbl->get_AudioStreamOffset(This,AudioStreamOffset)
17158#define ISpeechPhraseElement_get_AudioSizeBytes(This,AudioSizeBytes) (This)->lpVtbl->get_AudioSizeBytes(This,AudioSizeBytes)
17159#define ISpeechPhraseElement_get_RetainedStreamOffset(This,RetainedStreamOffset) (This)->lpVtbl->get_RetainedStreamOffset(This,RetainedStreamOffset)
17160#define ISpeechPhraseElement_get_RetainedSizeBytes(This,RetainedSizeBytes) (This)->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes)
17161#define ISpeechPhraseElement_get_DisplayText(This,DisplayText) (This)->lpVtbl->get_DisplayText(This,DisplayText)
17162#define ISpeechPhraseElement_get_LexicalForm(This,LexicalForm) (This)->lpVtbl->get_LexicalForm(This,LexicalForm)
17163#define ISpeechPhraseElement_get_Pronunciation(This,Pronunciation) (This)->lpVtbl->get_Pronunciation(This,Pronunciation)
17164#define ISpeechPhraseElement_get_DisplayAttributes(This,DisplayAttributes) (This)->lpVtbl->get_DisplayAttributes(This,DisplayAttributes)
17165#define ISpeechPhraseElement_get_RequiredConfidence(This,RequiredConfidence) (This)->lpVtbl->get_RequiredConfidence(This,RequiredConfidence)
17166#define ISpeechPhraseElement_get_ActualConfidence(This,ActualConfidence) (This)->lpVtbl->get_ActualConfidence(This,ActualConfidence)
17167#define ISpeechPhraseElement_get_EngineConfidence(This,EngineConfidence) (This)->lpVtbl->get_EngineConfidence(This,EngineConfidence)
17168#else
17169/*** IUnknown methods ***/
17170static inline HRESULT ISpeechPhraseElement_QueryInterface(ISpeechPhraseElement* This,REFIID riid,void **ppvObject) {
17171 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17172}
17173static inline ULONG ISpeechPhraseElement_AddRef(ISpeechPhraseElement* This) {
17174 return This->lpVtbl->AddRef(This);
17175}
17176static inline ULONG ISpeechPhraseElement_Release(ISpeechPhraseElement* This) {
17177 return This->lpVtbl->Release(This);
17178}
17179/*** IDispatch methods ***/
17180static inline HRESULT ISpeechPhraseElement_GetTypeInfoCount(ISpeechPhraseElement* This,UINT *pctinfo) {
17181 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17182}
17183static inline HRESULT ISpeechPhraseElement_GetTypeInfo(ISpeechPhraseElement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17184 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17185}
17186static inline HRESULT ISpeechPhraseElement_GetIDsOfNames(ISpeechPhraseElement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17187 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17188}
17189static inline HRESULT ISpeechPhraseElement_Invoke(ISpeechPhraseElement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17190 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17191}
17192/*** ISpeechPhraseElement methods ***/
17193static inline HRESULT ISpeechPhraseElement_get_AudioTimeOffset(ISpeechPhraseElement* This,LONG *AudioTimeOffset) {
17194 return This->lpVtbl->get_AudioTimeOffset(This,AudioTimeOffset);
17195}
17196static inline HRESULT ISpeechPhraseElement_get_AudioSizeTime(ISpeechPhraseElement* This,LONG *AudioSizeTime) {
17197 return This->lpVtbl->get_AudioSizeTime(This,AudioSizeTime);
17198}
17199static inline HRESULT ISpeechPhraseElement_get_AudioStreamOffset(ISpeechPhraseElement* This,LONG *AudioStreamOffset) {
17200 return This->lpVtbl->get_AudioStreamOffset(This,AudioStreamOffset);
17201}
17202static inline HRESULT ISpeechPhraseElement_get_AudioSizeBytes(ISpeechPhraseElement* This,LONG *AudioSizeBytes) {
17203 return This->lpVtbl->get_AudioSizeBytes(This,AudioSizeBytes);
17204}
17205static inline HRESULT ISpeechPhraseElement_get_RetainedStreamOffset(ISpeechPhraseElement* This,LONG *RetainedStreamOffset) {
17206 return This->lpVtbl->get_RetainedStreamOffset(This,RetainedStreamOffset);
17207}
17208static inline HRESULT ISpeechPhraseElement_get_RetainedSizeBytes(ISpeechPhraseElement* This,LONG *RetainedSizeBytes) {
17209 return This->lpVtbl->get_RetainedSizeBytes(This,RetainedSizeBytes);
17210}
17211static inline HRESULT ISpeechPhraseElement_get_DisplayText(ISpeechPhraseElement* This,BSTR *DisplayText) {
17212 return This->lpVtbl->get_DisplayText(This,DisplayText);
17213}
17214static inline HRESULT ISpeechPhraseElement_get_LexicalForm(ISpeechPhraseElement* This,BSTR *LexicalForm) {
17215 return This->lpVtbl->get_LexicalForm(This,LexicalForm);
17216}
17217static inline HRESULT ISpeechPhraseElement_get_Pronunciation(ISpeechPhraseElement* This,VARIANT *Pronunciation) {
17218 return This->lpVtbl->get_Pronunciation(This,Pronunciation);
17219}
17220static inline HRESULT ISpeechPhraseElement_get_DisplayAttributes(ISpeechPhraseElement* This,SpeechDisplayAttributes *DisplayAttributes) {
17221 return This->lpVtbl->get_DisplayAttributes(This,DisplayAttributes);
17222}
17223static inline HRESULT ISpeechPhraseElement_get_RequiredConfidence(ISpeechPhraseElement* This,SpeechEngineConfidence *RequiredConfidence) {
17224 return This->lpVtbl->get_RequiredConfidence(This,RequiredConfidence);
17225}
17226static inline HRESULT ISpeechPhraseElement_get_ActualConfidence(ISpeechPhraseElement* This,SpeechEngineConfidence *ActualConfidence) {
17227 return This->lpVtbl->get_ActualConfidence(This,ActualConfidence);
17228}
17229static inline HRESULT ISpeechPhraseElement_get_EngineConfidence(ISpeechPhraseElement* This,float *EngineConfidence) {
17230 return This->lpVtbl->get_EngineConfidence(This,EngineConfidence);
17231}
17232#endif
17233#endif
17234
17235#endif
17236
17237
17238#endif /* __ISpeechPhraseElement_INTERFACE_DEFINED__ */
17239
17240/*****************************************************************************
17241 * ISpeechPhraseElements interface
17242 */
17243#ifndef __ISpeechPhraseElements_INTERFACE_DEFINED__
17244#define __ISpeechPhraseElements_INTERFACE_DEFINED__
17245
17246DEFINE_GUID(IID_ISpeechPhraseElements, 0x0626b328, 0x3478, 0x467d, 0xa0,0xb3, 0xd0,0x85,0x3b,0x93,0xdd,0xa3);
17247#if defined(__cplusplus) && !defined(CINTERFACE)
17248MIDL_INTERFACE("0626b328-3478-467d-a0b3-d0853b93dda3")
17249ISpeechPhraseElements : public IDispatch
17250{
17251 virtual HRESULT STDMETHODCALLTYPE get_Count(
17252 LONG *Count) = 0;
17253
17254 virtual HRESULT STDMETHODCALLTYPE Item(
17255 LONG Index,
17256 ISpeechPhraseElement **Element) = 0;
17257
17258 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
17259 IUnknown **EnumVARIANT) = 0;
17260
17261};
17262#ifdef __CRT_UUID_DECL
17263__CRT_UUID_DECL(ISpeechPhraseElements, 0x0626b328, 0x3478, 0x467d, 0xa0,0xb3, 0xd0,0x85,0x3b,0x93,0xdd,0xa3)
17264#endif
17265#else
17266typedef struct ISpeechPhraseElementsVtbl {
17267 BEGIN_INTERFACE
17268
17269 /*** IUnknown methods ***/
17270 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17271 ISpeechPhraseElements *This,
17272 REFIID riid,
17273 void **ppvObject);
17274
17275 ULONG (STDMETHODCALLTYPE *AddRef)(
17276 ISpeechPhraseElements *This);
17277
17278 ULONG (STDMETHODCALLTYPE *Release)(
17279 ISpeechPhraseElements *This);
17280
17281 /*** IDispatch methods ***/
17282 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17283 ISpeechPhraseElements *This,
17284 UINT *pctinfo);
17285
17286 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17287 ISpeechPhraseElements *This,
17288 UINT iTInfo,
17289 LCID lcid,
17290 ITypeInfo **ppTInfo);
17291
17292 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17293 ISpeechPhraseElements *This,
17294 REFIID riid,
17295 LPOLESTR *rgszNames,
17296 UINT cNames,
17297 LCID lcid,
17298 DISPID *rgDispId);
17299
17300 HRESULT (STDMETHODCALLTYPE *Invoke)(
17301 ISpeechPhraseElements *This,
17302 DISPID dispIdMember,
17303 REFIID riid,
17304 LCID lcid,
17305 WORD wFlags,
17306 DISPPARAMS *pDispParams,
17307 VARIANT *pVarResult,
17308 EXCEPINFO *pExcepInfo,
17309 UINT *puArgErr);
17310
17311 /*** ISpeechPhraseElements methods ***/
17312 HRESULT (STDMETHODCALLTYPE *get_Count)(
17313 ISpeechPhraseElements *This,
17314 LONG *Count);
17315
17316 HRESULT (STDMETHODCALLTYPE *Item)(
17317 ISpeechPhraseElements *This,
17318 LONG Index,
17319 ISpeechPhraseElement **Element);
17320
17321 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
17322 ISpeechPhraseElements *This,
17323 IUnknown **EnumVARIANT);
17324
17325 END_INTERFACE
17326} ISpeechPhraseElementsVtbl;
17327
17328interface ISpeechPhraseElements {
17329 CONST_VTBL ISpeechPhraseElementsVtbl* lpVtbl;
17330};
17331
17332#ifdef COBJMACROS
17333#ifndef WIDL_C_INLINE_WRAPPERS
17334/*** IUnknown methods ***/
17335#define ISpeechPhraseElements_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17336#define ISpeechPhraseElements_AddRef(This) (This)->lpVtbl->AddRef(This)
17337#define ISpeechPhraseElements_Release(This) (This)->lpVtbl->Release(This)
17338/*** IDispatch methods ***/
17339#define ISpeechPhraseElements_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17340#define ISpeechPhraseElements_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17341#define ISpeechPhraseElements_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17342#define ISpeechPhraseElements_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17343/*** ISpeechPhraseElements methods ***/
17344#define ISpeechPhraseElements_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
17345#define ISpeechPhraseElements_Item(This,Index,Element) (This)->lpVtbl->Item(This,Index,Element)
17346#define ISpeechPhraseElements_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
17347#else
17348/*** IUnknown methods ***/
17349static inline HRESULT ISpeechPhraseElements_QueryInterface(ISpeechPhraseElements* This,REFIID riid,void **ppvObject) {
17350 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17351}
17352static inline ULONG ISpeechPhraseElements_AddRef(ISpeechPhraseElements* This) {
17353 return This->lpVtbl->AddRef(This);
17354}
17355static inline ULONG ISpeechPhraseElements_Release(ISpeechPhraseElements* This) {
17356 return This->lpVtbl->Release(This);
17357}
17358/*** IDispatch methods ***/
17359static inline HRESULT ISpeechPhraseElements_GetTypeInfoCount(ISpeechPhraseElements* This,UINT *pctinfo) {
17360 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17361}
17362static inline HRESULT ISpeechPhraseElements_GetTypeInfo(ISpeechPhraseElements* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17363 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17364}
17365static inline HRESULT ISpeechPhraseElements_GetIDsOfNames(ISpeechPhraseElements* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17366 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17367}
17368static inline HRESULT ISpeechPhraseElements_Invoke(ISpeechPhraseElements* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17369 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17370}
17371/*** ISpeechPhraseElements methods ***/
17372static inline HRESULT ISpeechPhraseElements_get_Count(ISpeechPhraseElements* This,LONG *Count) {
17373 return This->lpVtbl->get_Count(This,Count);
17374}
17375static inline HRESULT ISpeechPhraseElements_Item(ISpeechPhraseElements* This,LONG Index,ISpeechPhraseElement **Element) {
17376 return This->lpVtbl->Item(This,Index,Element);
17377}
17378static inline HRESULT ISpeechPhraseElements_get__NewEnum(ISpeechPhraseElements* This,IUnknown **EnumVARIANT) {
17379 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
17380}
17381#endif
17382#endif
17383
17384#endif
17385
17386
17387#endif /* __ISpeechPhraseElements_INTERFACE_DEFINED__ */
17388
17389/*****************************************************************************
17390 * ISpeechPhraseReplacement interface
17391 */
17392#ifndef __ISpeechPhraseReplacement_INTERFACE_DEFINED__
17393#define __ISpeechPhraseReplacement_INTERFACE_DEFINED__
17394
17395DEFINE_GUID(IID_ISpeechPhraseReplacement, 0x2890a410, 0x53a7, 0x4fb5, 0x94,0xec, 0x06,0xd4,0x99,0x8e,0x3d,0x02);
17396#if defined(__cplusplus) && !defined(CINTERFACE)
17397MIDL_INTERFACE("2890a410-53a7-4fb5-94ec-06d4998e3d02")
17398ISpeechPhraseReplacement : public IDispatch
17399{
17400 virtual HRESULT STDMETHODCALLTYPE get_DisplayAttributes(
17401 SpeechDisplayAttributes *DisplayAttributes) = 0;
17402
17403 virtual HRESULT STDMETHODCALLTYPE get_Text(
17404 BSTR *Text) = 0;
17405
17406 virtual HRESULT STDMETHODCALLTYPE get_FirstElement(
17407 LONG *FirstElement) = 0;
17408
17409 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElements(
17410 LONG *NumberOfElements) = 0;
17411
17412};
17413#ifdef __CRT_UUID_DECL
17414__CRT_UUID_DECL(ISpeechPhraseReplacement, 0x2890a410, 0x53a7, 0x4fb5, 0x94,0xec, 0x06,0xd4,0x99,0x8e,0x3d,0x02)
17415#endif
17416#else
17417typedef struct ISpeechPhraseReplacementVtbl {
17418 BEGIN_INTERFACE
17419
17420 /*** IUnknown methods ***/
17421 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17422 ISpeechPhraseReplacement *This,
17423 REFIID riid,
17424 void **ppvObject);
17425
17426 ULONG (STDMETHODCALLTYPE *AddRef)(
17427 ISpeechPhraseReplacement *This);
17428
17429 ULONG (STDMETHODCALLTYPE *Release)(
17430 ISpeechPhraseReplacement *This);
17431
17432 /*** IDispatch methods ***/
17433 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17434 ISpeechPhraseReplacement *This,
17435 UINT *pctinfo);
17436
17437 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17438 ISpeechPhraseReplacement *This,
17439 UINT iTInfo,
17440 LCID lcid,
17441 ITypeInfo **ppTInfo);
17442
17443 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17444 ISpeechPhraseReplacement *This,
17445 REFIID riid,
17446 LPOLESTR *rgszNames,
17447 UINT cNames,
17448 LCID lcid,
17449 DISPID *rgDispId);
17450
17451 HRESULT (STDMETHODCALLTYPE *Invoke)(
17452 ISpeechPhraseReplacement *This,
17453 DISPID dispIdMember,
17454 REFIID riid,
17455 LCID lcid,
17456 WORD wFlags,
17457 DISPPARAMS *pDispParams,
17458 VARIANT *pVarResult,
17459 EXCEPINFO *pExcepInfo,
17460 UINT *puArgErr);
17461
17462 /*** ISpeechPhraseReplacement methods ***/
17463 HRESULT (STDMETHODCALLTYPE *get_DisplayAttributes)(
17464 ISpeechPhraseReplacement *This,
17465 SpeechDisplayAttributes *DisplayAttributes);
17466
17467 HRESULT (STDMETHODCALLTYPE *get_Text)(
17468 ISpeechPhraseReplacement *This,
17469 BSTR *Text);
17470
17471 HRESULT (STDMETHODCALLTYPE *get_FirstElement)(
17472 ISpeechPhraseReplacement *This,
17473 LONG *FirstElement);
17474
17475 HRESULT (STDMETHODCALLTYPE *get_NumberOfElements)(
17476 ISpeechPhraseReplacement *This,
17477 LONG *NumberOfElements);
17478
17479 END_INTERFACE
17480} ISpeechPhraseReplacementVtbl;
17481
17482interface ISpeechPhraseReplacement {
17483 CONST_VTBL ISpeechPhraseReplacementVtbl* lpVtbl;
17484};
17485
17486#ifdef COBJMACROS
17487#ifndef WIDL_C_INLINE_WRAPPERS
17488/*** IUnknown methods ***/
17489#define ISpeechPhraseReplacement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17490#define ISpeechPhraseReplacement_AddRef(This) (This)->lpVtbl->AddRef(This)
17491#define ISpeechPhraseReplacement_Release(This) (This)->lpVtbl->Release(This)
17492/*** IDispatch methods ***/
17493#define ISpeechPhraseReplacement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17494#define ISpeechPhraseReplacement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17495#define ISpeechPhraseReplacement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17496#define ISpeechPhraseReplacement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17497/*** ISpeechPhraseReplacement methods ***/
17498#define ISpeechPhraseReplacement_get_DisplayAttributes(This,DisplayAttributes) (This)->lpVtbl->get_DisplayAttributes(This,DisplayAttributes)
17499#define ISpeechPhraseReplacement_get_Text(This,Text) (This)->lpVtbl->get_Text(This,Text)
17500#define ISpeechPhraseReplacement_get_FirstElement(This,FirstElement) (This)->lpVtbl->get_FirstElement(This,FirstElement)
17501#define ISpeechPhraseReplacement_get_NumberOfElements(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElements(This,NumberOfElements)
17502#else
17503/*** IUnknown methods ***/
17504static inline HRESULT ISpeechPhraseReplacement_QueryInterface(ISpeechPhraseReplacement* This,REFIID riid,void **ppvObject) {
17505 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17506}
17507static inline ULONG ISpeechPhraseReplacement_AddRef(ISpeechPhraseReplacement* This) {
17508 return This->lpVtbl->AddRef(This);
17509}
17510static inline ULONG ISpeechPhraseReplacement_Release(ISpeechPhraseReplacement* This) {
17511 return This->lpVtbl->Release(This);
17512}
17513/*** IDispatch methods ***/
17514static inline HRESULT ISpeechPhraseReplacement_GetTypeInfoCount(ISpeechPhraseReplacement* This,UINT *pctinfo) {
17515 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17516}
17517static inline HRESULT ISpeechPhraseReplacement_GetTypeInfo(ISpeechPhraseReplacement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17518 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17519}
17520static inline HRESULT ISpeechPhraseReplacement_GetIDsOfNames(ISpeechPhraseReplacement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17521 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17522}
17523static inline HRESULT ISpeechPhraseReplacement_Invoke(ISpeechPhraseReplacement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17524 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17525}
17526/*** ISpeechPhraseReplacement methods ***/
17527static inline HRESULT ISpeechPhraseReplacement_get_DisplayAttributes(ISpeechPhraseReplacement* This,SpeechDisplayAttributes *DisplayAttributes) {
17528 return This->lpVtbl->get_DisplayAttributes(This,DisplayAttributes);
17529}
17530static inline HRESULT ISpeechPhraseReplacement_get_Text(ISpeechPhraseReplacement* This,BSTR *Text) {
17531 return This->lpVtbl->get_Text(This,Text);
17532}
17533static inline HRESULT ISpeechPhraseReplacement_get_FirstElement(ISpeechPhraseReplacement* This,LONG *FirstElement) {
17534 return This->lpVtbl->get_FirstElement(This,FirstElement);
17535}
17536static inline HRESULT ISpeechPhraseReplacement_get_NumberOfElements(ISpeechPhraseReplacement* This,LONG *NumberOfElements) {
17537 return This->lpVtbl->get_NumberOfElements(This,NumberOfElements);
17538}
17539#endif
17540#endif
17541
17542#endif
17543
17544
17545#endif /* __ISpeechPhraseReplacement_INTERFACE_DEFINED__ */
17546
17547/*****************************************************************************
17548 * ISpeechPhraseReplacements interface
17549 */
17550#ifndef __ISpeechPhraseReplacements_INTERFACE_DEFINED__
17551#define __ISpeechPhraseReplacements_INTERFACE_DEFINED__
17552
17553DEFINE_GUID(IID_ISpeechPhraseReplacements, 0x38bc662f, 0x2257, 0x4525, 0x95,0x9e, 0x20,0x69,0xd2,0x59,0x6c,0x05);
17554#if defined(__cplusplus) && !defined(CINTERFACE)
17555MIDL_INTERFACE("38bc662f-2257-4525-959e-2069d2596c05")
17556ISpeechPhraseReplacements : public IDispatch
17557{
17558 virtual HRESULT STDMETHODCALLTYPE get_Count(
17559 LONG *Count) = 0;
17560
17561 virtual HRESULT STDMETHODCALLTYPE Item(
17562 LONG Index,
17563 ISpeechPhraseReplacement **Reps) = 0;
17564
17565 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
17566 IUnknown **EnumVARIANT) = 0;
17567
17568};
17569#ifdef __CRT_UUID_DECL
17570__CRT_UUID_DECL(ISpeechPhraseReplacements, 0x38bc662f, 0x2257, 0x4525, 0x95,0x9e, 0x20,0x69,0xd2,0x59,0x6c,0x05)
17571#endif
17572#else
17573typedef struct ISpeechPhraseReplacementsVtbl {
17574 BEGIN_INTERFACE
17575
17576 /*** IUnknown methods ***/
17577 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17578 ISpeechPhraseReplacements *This,
17579 REFIID riid,
17580 void **ppvObject);
17581
17582 ULONG (STDMETHODCALLTYPE *AddRef)(
17583 ISpeechPhraseReplacements *This);
17584
17585 ULONG (STDMETHODCALLTYPE *Release)(
17586 ISpeechPhraseReplacements *This);
17587
17588 /*** IDispatch methods ***/
17589 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17590 ISpeechPhraseReplacements *This,
17591 UINT *pctinfo);
17592
17593 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17594 ISpeechPhraseReplacements *This,
17595 UINT iTInfo,
17596 LCID lcid,
17597 ITypeInfo **ppTInfo);
17598
17599 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17600 ISpeechPhraseReplacements *This,
17601 REFIID riid,
17602 LPOLESTR *rgszNames,
17603 UINT cNames,
17604 LCID lcid,
17605 DISPID *rgDispId);
17606
17607 HRESULT (STDMETHODCALLTYPE *Invoke)(
17608 ISpeechPhraseReplacements *This,
17609 DISPID dispIdMember,
17610 REFIID riid,
17611 LCID lcid,
17612 WORD wFlags,
17613 DISPPARAMS *pDispParams,
17614 VARIANT *pVarResult,
17615 EXCEPINFO *pExcepInfo,
17616 UINT *puArgErr);
17617
17618 /*** ISpeechPhraseReplacements methods ***/
17619 HRESULT (STDMETHODCALLTYPE *get_Count)(
17620 ISpeechPhraseReplacements *This,
17621 LONG *Count);
17622
17623 HRESULT (STDMETHODCALLTYPE *Item)(
17624 ISpeechPhraseReplacements *This,
17625 LONG Index,
17626 ISpeechPhraseReplacement **Reps);
17627
17628 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
17629 ISpeechPhraseReplacements *This,
17630 IUnknown **EnumVARIANT);
17631
17632 END_INTERFACE
17633} ISpeechPhraseReplacementsVtbl;
17634
17635interface ISpeechPhraseReplacements {
17636 CONST_VTBL ISpeechPhraseReplacementsVtbl* lpVtbl;
17637};
17638
17639#ifdef COBJMACROS
17640#ifndef WIDL_C_INLINE_WRAPPERS
17641/*** IUnknown methods ***/
17642#define ISpeechPhraseReplacements_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17643#define ISpeechPhraseReplacements_AddRef(This) (This)->lpVtbl->AddRef(This)
17644#define ISpeechPhraseReplacements_Release(This) (This)->lpVtbl->Release(This)
17645/*** IDispatch methods ***/
17646#define ISpeechPhraseReplacements_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17647#define ISpeechPhraseReplacements_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17648#define ISpeechPhraseReplacements_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17649#define ISpeechPhraseReplacements_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17650/*** ISpeechPhraseReplacements methods ***/
17651#define ISpeechPhraseReplacements_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
17652#define ISpeechPhraseReplacements_Item(This,Index,Reps) (This)->lpVtbl->Item(This,Index,Reps)
17653#define ISpeechPhraseReplacements_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
17654#else
17655/*** IUnknown methods ***/
17656static inline HRESULT ISpeechPhraseReplacements_QueryInterface(ISpeechPhraseReplacements* This,REFIID riid,void **ppvObject) {
17657 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17658}
17659static inline ULONG ISpeechPhraseReplacements_AddRef(ISpeechPhraseReplacements* This) {
17660 return This->lpVtbl->AddRef(This);
17661}
17662static inline ULONG ISpeechPhraseReplacements_Release(ISpeechPhraseReplacements* This) {
17663 return This->lpVtbl->Release(This);
17664}
17665/*** IDispatch methods ***/
17666static inline HRESULT ISpeechPhraseReplacements_GetTypeInfoCount(ISpeechPhraseReplacements* This,UINT *pctinfo) {
17667 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17668}
17669static inline HRESULT ISpeechPhraseReplacements_GetTypeInfo(ISpeechPhraseReplacements* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17670 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17671}
17672static inline HRESULT ISpeechPhraseReplacements_GetIDsOfNames(ISpeechPhraseReplacements* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17673 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17674}
17675static inline HRESULT ISpeechPhraseReplacements_Invoke(ISpeechPhraseReplacements* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17676 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17677}
17678/*** ISpeechPhraseReplacements methods ***/
17679static inline HRESULT ISpeechPhraseReplacements_get_Count(ISpeechPhraseReplacements* This,LONG *Count) {
17680 return This->lpVtbl->get_Count(This,Count);
17681}
17682static inline HRESULT ISpeechPhraseReplacements_Item(ISpeechPhraseReplacements* This,LONG Index,ISpeechPhraseReplacement **Reps) {
17683 return This->lpVtbl->Item(This,Index,Reps);
17684}
17685static inline HRESULT ISpeechPhraseReplacements_get__NewEnum(ISpeechPhraseReplacements* This,IUnknown **EnumVARIANT) {
17686 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
17687}
17688#endif
17689#endif
17690
17691#endif
17692
17693
17694#endif /* __ISpeechPhraseReplacements_INTERFACE_DEFINED__ */
17695
17696/*****************************************************************************
17697 * ISpeechPhraseProperty interface
17698 */
17699#ifndef __ISpeechPhraseProperty_INTERFACE_DEFINED__
17700#define __ISpeechPhraseProperty_INTERFACE_DEFINED__
17701
17702DEFINE_GUID(IID_ISpeechPhraseProperty, 0xce563d48, 0x961e, 0x4732, 0xa2,0xe1, 0x37,0x8a,0x42,0xb4,0x30,0xbe);
17703#if defined(__cplusplus) && !defined(CINTERFACE)
17704MIDL_INTERFACE("ce563d48-961e-4732-a2e1-378a42b430be")
17705ISpeechPhraseProperty : public IDispatch
17706{
17707 virtual HRESULT STDMETHODCALLTYPE get_Name(
17708 BSTR *Name) = 0;
17709
17710 virtual HRESULT STDMETHODCALLTYPE get_Id(
17711 LONG *Id) = 0;
17712
17713 virtual HRESULT STDMETHODCALLTYPE get_Value(
17714 VARIANT *Value) = 0;
17715
17716 virtual HRESULT STDMETHODCALLTYPE get_FirstElement(
17717 LONG *FirstElement) = 0;
17718
17719 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElements(
17720 LONG *NumberOfElements) = 0;
17721
17722 virtual HRESULT STDMETHODCALLTYPE get_EngineConfidence(
17723 float *Confidence) = 0;
17724
17725 virtual HRESULT STDMETHODCALLTYPE get_Confidence(
17726 SpeechEngineConfidence *Confidence) = 0;
17727
17728 virtual HRESULT STDMETHODCALLTYPE get_Parent(
17729 ISpeechPhraseProperty **ParentProperty) = 0;
17730
17731 virtual HRESULT STDMETHODCALLTYPE get_Children(
17732 ISpeechPhraseProperties **Children) = 0;
17733
17734};
17735#ifdef __CRT_UUID_DECL
17736__CRT_UUID_DECL(ISpeechPhraseProperty, 0xce563d48, 0x961e, 0x4732, 0xa2,0xe1, 0x37,0x8a,0x42,0xb4,0x30,0xbe)
17737#endif
17738#else
17739typedef struct ISpeechPhrasePropertyVtbl {
17740 BEGIN_INTERFACE
17741
17742 /*** IUnknown methods ***/
17743 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17744 ISpeechPhraseProperty *This,
17745 REFIID riid,
17746 void **ppvObject);
17747
17748 ULONG (STDMETHODCALLTYPE *AddRef)(
17749 ISpeechPhraseProperty *This);
17750
17751 ULONG (STDMETHODCALLTYPE *Release)(
17752 ISpeechPhraseProperty *This);
17753
17754 /*** IDispatch methods ***/
17755 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17756 ISpeechPhraseProperty *This,
17757 UINT *pctinfo);
17758
17759 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17760 ISpeechPhraseProperty *This,
17761 UINT iTInfo,
17762 LCID lcid,
17763 ITypeInfo **ppTInfo);
17764
17765 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17766 ISpeechPhraseProperty *This,
17767 REFIID riid,
17768 LPOLESTR *rgszNames,
17769 UINT cNames,
17770 LCID lcid,
17771 DISPID *rgDispId);
17772
17773 HRESULT (STDMETHODCALLTYPE *Invoke)(
17774 ISpeechPhraseProperty *This,
17775 DISPID dispIdMember,
17776 REFIID riid,
17777 LCID lcid,
17778 WORD wFlags,
17779 DISPPARAMS *pDispParams,
17780 VARIANT *pVarResult,
17781 EXCEPINFO *pExcepInfo,
17782 UINT *puArgErr);
17783
17784 /*** ISpeechPhraseProperty methods ***/
17785 HRESULT (STDMETHODCALLTYPE *get_Name)(
17786 ISpeechPhraseProperty *This,
17787 BSTR *Name);
17788
17789 HRESULT (STDMETHODCALLTYPE *get_Id)(
17790 ISpeechPhraseProperty *This,
17791 LONG *Id);
17792
17793 HRESULT (STDMETHODCALLTYPE *get_Value)(
17794 ISpeechPhraseProperty *This,
17795 VARIANT *Value);
17796
17797 HRESULT (STDMETHODCALLTYPE *get_FirstElement)(
17798 ISpeechPhraseProperty *This,
17799 LONG *FirstElement);
17800
17801 HRESULT (STDMETHODCALLTYPE *get_NumberOfElements)(
17802 ISpeechPhraseProperty *This,
17803 LONG *NumberOfElements);
17804
17805 HRESULT (STDMETHODCALLTYPE *get_EngineConfidence)(
17806 ISpeechPhraseProperty *This,
17807 float *Confidence);
17808
17809 HRESULT (STDMETHODCALLTYPE *get_Confidence)(
17810 ISpeechPhraseProperty *This,
17811 SpeechEngineConfidence *Confidence);
17812
17813 HRESULT (STDMETHODCALLTYPE *get_Parent)(
17814 ISpeechPhraseProperty *This,
17815 ISpeechPhraseProperty **ParentProperty);
17816
17817 HRESULT (STDMETHODCALLTYPE *get_Children)(
17818 ISpeechPhraseProperty *This,
17819 ISpeechPhraseProperties **Children);
17820
17821 END_INTERFACE
17822} ISpeechPhrasePropertyVtbl;
17823
17824interface ISpeechPhraseProperty {
17825 CONST_VTBL ISpeechPhrasePropertyVtbl* lpVtbl;
17826};
17827
17828#ifdef COBJMACROS
17829#ifndef WIDL_C_INLINE_WRAPPERS
17830/*** IUnknown methods ***/
17831#define ISpeechPhraseProperty_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17832#define ISpeechPhraseProperty_AddRef(This) (This)->lpVtbl->AddRef(This)
17833#define ISpeechPhraseProperty_Release(This) (This)->lpVtbl->Release(This)
17834/*** IDispatch methods ***/
17835#define ISpeechPhraseProperty_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17836#define ISpeechPhraseProperty_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17837#define ISpeechPhraseProperty_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17838#define ISpeechPhraseProperty_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17839/*** ISpeechPhraseProperty methods ***/
17840#define ISpeechPhraseProperty_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
17841#define ISpeechPhraseProperty_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
17842#define ISpeechPhraseProperty_get_Value(This,Value) (This)->lpVtbl->get_Value(This,Value)
17843#define ISpeechPhraseProperty_get_FirstElement(This,FirstElement) (This)->lpVtbl->get_FirstElement(This,FirstElement)
17844#define ISpeechPhraseProperty_get_NumberOfElements(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElements(This,NumberOfElements)
17845#define ISpeechPhraseProperty_get_EngineConfidence(This,Confidence) (This)->lpVtbl->get_EngineConfidence(This,Confidence)
17846#define ISpeechPhraseProperty_get_Confidence(This,Confidence) (This)->lpVtbl->get_Confidence(This,Confidence)
17847#define ISpeechPhraseProperty_get_Parent(This,ParentProperty) (This)->lpVtbl->get_Parent(This,ParentProperty)
17848#define ISpeechPhraseProperty_get_Children(This,Children) (This)->lpVtbl->get_Children(This,Children)
17849#else
17850/*** IUnknown methods ***/
17851static inline HRESULT ISpeechPhraseProperty_QueryInterface(ISpeechPhraseProperty* This,REFIID riid,void **ppvObject) {
17852 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17853}
17854static inline ULONG ISpeechPhraseProperty_AddRef(ISpeechPhraseProperty* This) {
17855 return This->lpVtbl->AddRef(This);
17856}
17857static inline ULONG ISpeechPhraseProperty_Release(ISpeechPhraseProperty* This) {
17858 return This->lpVtbl->Release(This);
17859}
17860/*** IDispatch methods ***/
17861static inline HRESULT ISpeechPhraseProperty_GetTypeInfoCount(ISpeechPhraseProperty* This,UINT *pctinfo) {
17862 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17863}
17864static inline HRESULT ISpeechPhraseProperty_GetTypeInfo(ISpeechPhraseProperty* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17865 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17866}
17867static inline HRESULT ISpeechPhraseProperty_GetIDsOfNames(ISpeechPhraseProperty* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17868 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17869}
17870static inline HRESULT ISpeechPhraseProperty_Invoke(ISpeechPhraseProperty* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17871 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17872}
17873/*** ISpeechPhraseProperty methods ***/
17874static inline HRESULT ISpeechPhraseProperty_get_Name(ISpeechPhraseProperty* This,BSTR *Name) {
17875 return This->lpVtbl->get_Name(This,Name);
17876}
17877static inline HRESULT ISpeechPhraseProperty_get_Id(ISpeechPhraseProperty* This,LONG *Id) {
17878 return This->lpVtbl->get_Id(This,Id);
17879}
17880static inline HRESULT ISpeechPhraseProperty_get_Value(ISpeechPhraseProperty* This,VARIANT *Value) {
17881 return This->lpVtbl->get_Value(This,Value);
17882}
17883static inline HRESULT ISpeechPhraseProperty_get_FirstElement(ISpeechPhraseProperty* This,LONG *FirstElement) {
17884 return This->lpVtbl->get_FirstElement(This,FirstElement);
17885}
17886static inline HRESULT ISpeechPhraseProperty_get_NumberOfElements(ISpeechPhraseProperty* This,LONG *NumberOfElements) {
17887 return This->lpVtbl->get_NumberOfElements(This,NumberOfElements);
17888}
17889static inline HRESULT ISpeechPhraseProperty_get_EngineConfidence(ISpeechPhraseProperty* This,float *Confidence) {
17890 return This->lpVtbl->get_EngineConfidence(This,Confidence);
17891}
17892static inline HRESULT ISpeechPhraseProperty_get_Confidence(ISpeechPhraseProperty* This,SpeechEngineConfidence *Confidence) {
17893 return This->lpVtbl->get_Confidence(This,Confidence);
17894}
17895static inline HRESULT ISpeechPhraseProperty_get_Parent(ISpeechPhraseProperty* This,ISpeechPhraseProperty **ParentProperty) {
17896 return This->lpVtbl->get_Parent(This,ParentProperty);
17897}
17898static inline HRESULT ISpeechPhraseProperty_get_Children(ISpeechPhraseProperty* This,ISpeechPhraseProperties **Children) {
17899 return This->lpVtbl->get_Children(This,Children);
17900}
17901#endif
17902#endif
17903
17904#endif
17905
17906
17907#endif /* __ISpeechPhraseProperty_INTERFACE_DEFINED__ */
17908
17909/*****************************************************************************
17910 * ISpeechPhraseProperties interface
17911 */
17912#ifndef __ISpeechPhraseProperties_INTERFACE_DEFINED__
17913#define __ISpeechPhraseProperties_INTERFACE_DEFINED__
17914
17915DEFINE_GUID(IID_ISpeechPhraseProperties, 0x08166b47, 0x102e, 0x4b23, 0xa5,0x99, 0xbd,0xb9,0x8d,0xbf,0xd1,0xf4);
17916#if defined(__cplusplus) && !defined(CINTERFACE)
17917MIDL_INTERFACE("08166b47-102e-4b23-a599-bdb98dbfd1f4")
17918ISpeechPhraseProperties : public IDispatch
17919{
17920 virtual HRESULT STDMETHODCALLTYPE get_Count(
17921 LONG *Count) = 0;
17922
17923 virtual HRESULT STDMETHODCALLTYPE Item(
17924 LONG Index,
17925 ISpeechPhraseProperty **Property) = 0;
17926
17927 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
17928 IUnknown **EnumVARIANT) = 0;
17929
17930};
17931#ifdef __CRT_UUID_DECL
17932__CRT_UUID_DECL(ISpeechPhraseProperties, 0x08166b47, 0x102e, 0x4b23, 0xa5,0x99, 0xbd,0xb9,0x8d,0xbf,0xd1,0xf4)
17933#endif
17934#else
17935typedef struct ISpeechPhrasePropertiesVtbl {
17936 BEGIN_INTERFACE
17937
17938 /*** IUnknown methods ***/
17939 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17940 ISpeechPhraseProperties *This,
17941 REFIID riid,
17942 void **ppvObject);
17943
17944 ULONG (STDMETHODCALLTYPE *AddRef)(
17945 ISpeechPhraseProperties *This);
17946
17947 ULONG (STDMETHODCALLTYPE *Release)(
17948 ISpeechPhraseProperties *This);
17949
17950 /*** IDispatch methods ***/
17951 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17952 ISpeechPhraseProperties *This,
17953 UINT *pctinfo);
17954
17955 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17956 ISpeechPhraseProperties *This,
17957 UINT iTInfo,
17958 LCID lcid,
17959 ITypeInfo **ppTInfo);
17960
17961 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17962 ISpeechPhraseProperties *This,
17963 REFIID riid,
17964 LPOLESTR *rgszNames,
17965 UINT cNames,
17966 LCID lcid,
17967 DISPID *rgDispId);
17968
17969 HRESULT (STDMETHODCALLTYPE *Invoke)(
17970 ISpeechPhraseProperties *This,
17971 DISPID dispIdMember,
17972 REFIID riid,
17973 LCID lcid,
17974 WORD wFlags,
17975 DISPPARAMS *pDispParams,
17976 VARIANT *pVarResult,
17977 EXCEPINFO *pExcepInfo,
17978 UINT *puArgErr);
17979
17980 /*** ISpeechPhraseProperties methods ***/
17981 HRESULT (STDMETHODCALLTYPE *get_Count)(
17982 ISpeechPhraseProperties *This,
17983 LONG *Count);
17984
17985 HRESULT (STDMETHODCALLTYPE *Item)(
17986 ISpeechPhraseProperties *This,
17987 LONG Index,
17988 ISpeechPhraseProperty **Property);
17989
17990 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
17991 ISpeechPhraseProperties *This,
17992 IUnknown **EnumVARIANT);
17993
17994 END_INTERFACE
17995} ISpeechPhrasePropertiesVtbl;
17996
17997interface ISpeechPhraseProperties {
17998 CONST_VTBL ISpeechPhrasePropertiesVtbl* lpVtbl;
17999};
18000
18001#ifdef COBJMACROS
18002#ifndef WIDL_C_INLINE_WRAPPERS
18003/*** IUnknown methods ***/
18004#define ISpeechPhraseProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18005#define ISpeechPhraseProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
18006#define ISpeechPhraseProperties_Release(This) (This)->lpVtbl->Release(This)
18007/*** IDispatch methods ***/
18008#define ISpeechPhraseProperties_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18009#define ISpeechPhraseProperties_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18010#define ISpeechPhraseProperties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18011#define ISpeechPhraseProperties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18012/*** ISpeechPhraseProperties methods ***/
18013#define ISpeechPhraseProperties_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
18014#define ISpeechPhraseProperties_Item(This,Index,Property) (This)->lpVtbl->Item(This,Index,Property)
18015#define ISpeechPhraseProperties_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
18016#else
18017/*** IUnknown methods ***/
18018static inline HRESULT ISpeechPhraseProperties_QueryInterface(ISpeechPhraseProperties* This,REFIID riid,void **ppvObject) {
18019 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18020}
18021static inline ULONG ISpeechPhraseProperties_AddRef(ISpeechPhraseProperties* This) {
18022 return This->lpVtbl->AddRef(This);
18023}
18024static inline ULONG ISpeechPhraseProperties_Release(ISpeechPhraseProperties* This) {
18025 return This->lpVtbl->Release(This);
18026}
18027/*** IDispatch methods ***/
18028static inline HRESULT ISpeechPhraseProperties_GetTypeInfoCount(ISpeechPhraseProperties* This,UINT *pctinfo) {
18029 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18030}
18031static inline HRESULT ISpeechPhraseProperties_GetTypeInfo(ISpeechPhraseProperties* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18032 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18033}
18034static inline HRESULT ISpeechPhraseProperties_GetIDsOfNames(ISpeechPhraseProperties* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18035 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18036}
18037static inline HRESULT ISpeechPhraseProperties_Invoke(ISpeechPhraseProperties* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18038 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18039}
18040/*** ISpeechPhraseProperties methods ***/
18041static inline HRESULT ISpeechPhraseProperties_get_Count(ISpeechPhraseProperties* This,LONG *Count) {
18042 return This->lpVtbl->get_Count(This,Count);
18043}
18044static inline HRESULT ISpeechPhraseProperties_Item(ISpeechPhraseProperties* This,LONG Index,ISpeechPhraseProperty **Property) {
18045 return This->lpVtbl->Item(This,Index,Property);
18046}
18047static inline HRESULT ISpeechPhraseProperties_get__NewEnum(ISpeechPhraseProperties* This,IUnknown **EnumVARIANT) {
18048 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
18049}
18050#endif
18051#endif
18052
18053#endif
18054
18055
18056#endif /* __ISpeechPhraseProperties_INTERFACE_DEFINED__ */
18057
18058/*****************************************************************************
18059 * ISpeechPhraseRule interface
18060 */
18061#ifndef __ISpeechPhraseRule_INTERFACE_DEFINED__
18062#define __ISpeechPhraseRule_INTERFACE_DEFINED__
18063
18064DEFINE_GUID(IID_ISpeechPhraseRule, 0xa7bfe112, 0xa4a0, 0x48d9, 0xb6,0x02, 0xc3,0x13,0x84,0x3f,0x69,0x64);
18065#if defined(__cplusplus) && !defined(CINTERFACE)
18066MIDL_INTERFACE("a7bfe112-a4a0-48d9-b602-c313843f6964")
18067ISpeechPhraseRule : public IDispatch
18068{
18069 virtual HRESULT STDMETHODCALLTYPE get_Name(
18070 BSTR *Name) = 0;
18071
18072 virtual HRESULT STDMETHODCALLTYPE get_Id(
18073 LONG *Id) = 0;
18074
18075 virtual HRESULT STDMETHODCALLTYPE get_FirstElement(
18076 LONG *FirstElement) = 0;
18077
18078 virtual HRESULT STDMETHODCALLTYPE get_NumberOfElements(
18079 LONG *NumberOfElements) = 0;
18080
18081 virtual HRESULT STDMETHODCALLTYPE get_Parent(
18082 ISpeechPhraseRule **Parent) = 0;
18083
18084 virtual HRESULT STDMETHODCALLTYPE get_Children(
18085 ISpeechPhraseRules **Children) = 0;
18086
18087 virtual HRESULT STDMETHODCALLTYPE get_Confidence(
18088 SpeechEngineConfidence *ActualConfidence) = 0;
18089
18090 virtual HRESULT STDMETHODCALLTYPE get_EngineConfidence(
18091 float *EngineConfidence) = 0;
18092
18093};
18094#ifdef __CRT_UUID_DECL
18095__CRT_UUID_DECL(ISpeechPhraseRule, 0xa7bfe112, 0xa4a0, 0x48d9, 0xb6,0x02, 0xc3,0x13,0x84,0x3f,0x69,0x64)
18096#endif
18097#else
18098typedef struct ISpeechPhraseRuleVtbl {
18099 BEGIN_INTERFACE
18100
18101 /*** IUnknown methods ***/
18102 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18103 ISpeechPhraseRule *This,
18104 REFIID riid,
18105 void **ppvObject);
18106
18107 ULONG (STDMETHODCALLTYPE *AddRef)(
18108 ISpeechPhraseRule *This);
18109
18110 ULONG (STDMETHODCALLTYPE *Release)(
18111 ISpeechPhraseRule *This);
18112
18113 /*** IDispatch methods ***/
18114 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18115 ISpeechPhraseRule *This,
18116 UINT *pctinfo);
18117
18118 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18119 ISpeechPhraseRule *This,
18120 UINT iTInfo,
18121 LCID lcid,
18122 ITypeInfo **ppTInfo);
18123
18124 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18125 ISpeechPhraseRule *This,
18126 REFIID riid,
18127 LPOLESTR *rgszNames,
18128 UINT cNames,
18129 LCID lcid,
18130 DISPID *rgDispId);
18131
18132 HRESULT (STDMETHODCALLTYPE *Invoke)(
18133 ISpeechPhraseRule *This,
18134 DISPID dispIdMember,
18135 REFIID riid,
18136 LCID lcid,
18137 WORD wFlags,
18138 DISPPARAMS *pDispParams,
18139 VARIANT *pVarResult,
18140 EXCEPINFO *pExcepInfo,
18141 UINT *puArgErr);
18142
18143 /*** ISpeechPhraseRule methods ***/
18144 HRESULT (STDMETHODCALLTYPE *get_Name)(
18145 ISpeechPhraseRule *This,
18146 BSTR *Name);
18147
18148 HRESULT (STDMETHODCALLTYPE *get_Id)(
18149 ISpeechPhraseRule *This,
18150 LONG *Id);
18151
18152 HRESULT (STDMETHODCALLTYPE *get_FirstElement)(
18153 ISpeechPhraseRule *This,
18154 LONG *FirstElement);
18155
18156 HRESULT (STDMETHODCALLTYPE *get_NumberOfElements)(
18157 ISpeechPhraseRule *This,
18158 LONG *NumberOfElements);
18159
18160 HRESULT (STDMETHODCALLTYPE *get_Parent)(
18161 ISpeechPhraseRule *This,
18162 ISpeechPhraseRule **Parent);
18163
18164 HRESULT (STDMETHODCALLTYPE *get_Children)(
18165 ISpeechPhraseRule *This,
18166 ISpeechPhraseRules **Children);
18167
18168 HRESULT (STDMETHODCALLTYPE *get_Confidence)(
18169 ISpeechPhraseRule *This,
18170 SpeechEngineConfidence *ActualConfidence);
18171
18172 HRESULT (STDMETHODCALLTYPE *get_EngineConfidence)(
18173 ISpeechPhraseRule *This,
18174 float *EngineConfidence);
18175
18176 END_INTERFACE
18177} ISpeechPhraseRuleVtbl;
18178
18179interface ISpeechPhraseRule {
18180 CONST_VTBL ISpeechPhraseRuleVtbl* lpVtbl;
18181};
18182
18183#ifdef COBJMACROS
18184#ifndef WIDL_C_INLINE_WRAPPERS
18185/*** IUnknown methods ***/
18186#define ISpeechPhraseRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18187#define ISpeechPhraseRule_AddRef(This) (This)->lpVtbl->AddRef(This)
18188#define ISpeechPhraseRule_Release(This) (This)->lpVtbl->Release(This)
18189/*** IDispatch methods ***/
18190#define ISpeechPhraseRule_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18191#define ISpeechPhraseRule_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18192#define ISpeechPhraseRule_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18193#define ISpeechPhraseRule_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18194/*** ISpeechPhraseRule methods ***/
18195#define ISpeechPhraseRule_get_Name(This,Name) (This)->lpVtbl->get_Name(This,Name)
18196#define ISpeechPhraseRule_get_Id(This,Id) (This)->lpVtbl->get_Id(This,Id)
18197#define ISpeechPhraseRule_get_FirstElement(This,FirstElement) (This)->lpVtbl->get_FirstElement(This,FirstElement)
18198#define ISpeechPhraseRule_get_NumberOfElements(This,NumberOfElements) (This)->lpVtbl->get_NumberOfElements(This,NumberOfElements)
18199#define ISpeechPhraseRule_get_Parent(This,Parent) (This)->lpVtbl->get_Parent(This,Parent)
18200#define ISpeechPhraseRule_get_Children(This,Children) (This)->lpVtbl->get_Children(This,Children)
18201#define ISpeechPhraseRule_get_Confidence(This,ActualConfidence) (This)->lpVtbl->get_Confidence(This,ActualConfidence)
18202#define ISpeechPhraseRule_get_EngineConfidence(This,EngineConfidence) (This)->lpVtbl->get_EngineConfidence(This,EngineConfidence)
18203#else
18204/*** IUnknown methods ***/
18205static inline HRESULT ISpeechPhraseRule_QueryInterface(ISpeechPhraseRule* This,REFIID riid,void **ppvObject) {
18206 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18207}
18208static inline ULONG ISpeechPhraseRule_AddRef(ISpeechPhraseRule* This) {
18209 return This->lpVtbl->AddRef(This);
18210}
18211static inline ULONG ISpeechPhraseRule_Release(ISpeechPhraseRule* This) {
18212 return This->lpVtbl->Release(This);
18213}
18214/*** IDispatch methods ***/
18215static inline HRESULT ISpeechPhraseRule_GetTypeInfoCount(ISpeechPhraseRule* This,UINT *pctinfo) {
18216 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18217}
18218static inline HRESULT ISpeechPhraseRule_GetTypeInfo(ISpeechPhraseRule* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18219 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18220}
18221static inline HRESULT ISpeechPhraseRule_GetIDsOfNames(ISpeechPhraseRule* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18222 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18223}
18224static inline HRESULT ISpeechPhraseRule_Invoke(ISpeechPhraseRule* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18225 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18226}
18227/*** ISpeechPhraseRule methods ***/
18228static inline HRESULT ISpeechPhraseRule_get_Name(ISpeechPhraseRule* This,BSTR *Name) {
18229 return This->lpVtbl->get_Name(This,Name);
18230}
18231static inline HRESULT ISpeechPhraseRule_get_Id(ISpeechPhraseRule* This,LONG *Id) {
18232 return This->lpVtbl->get_Id(This,Id);
18233}
18234static inline HRESULT ISpeechPhraseRule_get_FirstElement(ISpeechPhraseRule* This,LONG *FirstElement) {
18235 return This->lpVtbl->get_FirstElement(This,FirstElement);
18236}
18237static inline HRESULT ISpeechPhraseRule_get_NumberOfElements(ISpeechPhraseRule* This,LONG *NumberOfElements) {
18238 return This->lpVtbl->get_NumberOfElements(This,NumberOfElements);
18239}
18240static inline HRESULT ISpeechPhraseRule_get_Parent(ISpeechPhraseRule* This,ISpeechPhraseRule **Parent) {
18241 return This->lpVtbl->get_Parent(This,Parent);
18242}
18243static inline HRESULT ISpeechPhraseRule_get_Children(ISpeechPhraseRule* This,ISpeechPhraseRules **Children) {
18244 return This->lpVtbl->get_Children(This,Children);
18245}
18246static inline HRESULT ISpeechPhraseRule_get_Confidence(ISpeechPhraseRule* This,SpeechEngineConfidence *ActualConfidence) {
18247 return This->lpVtbl->get_Confidence(This,ActualConfidence);
18248}
18249static inline HRESULT ISpeechPhraseRule_get_EngineConfidence(ISpeechPhraseRule* This,float *EngineConfidence) {
18250 return This->lpVtbl->get_EngineConfidence(This,EngineConfidence);
18251}
18252#endif
18253#endif
18254
18255#endif
18256
18257
18258#endif /* __ISpeechPhraseRule_INTERFACE_DEFINED__ */
18259
18260/*****************************************************************************
18261 * ISpeechPhraseRules interface
18262 */
18263#ifndef __ISpeechPhraseRules_INTERFACE_DEFINED__
18264#define __ISpeechPhraseRules_INTERFACE_DEFINED__
18265
18266DEFINE_GUID(IID_ISpeechPhraseRules, 0x9047d593, 0x01dd, 0x4b72, 0x81,0xa3, 0xe4,0xa0,0xca,0x69,0xf4,0x07);
18267#if defined(__cplusplus) && !defined(CINTERFACE)
18268MIDL_INTERFACE("9047d593-01dd-4b72-81a3-e4a0ca69f407")
18269ISpeechPhraseRules : public IDispatch
18270{
18271 virtual HRESULT STDMETHODCALLTYPE get_Count(
18272 LONG *Count) = 0;
18273
18274 virtual HRESULT STDMETHODCALLTYPE Item(
18275 LONG Index,
18276 ISpeechPhraseRule **Rule) = 0;
18277
18278 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
18279 IUnknown **EnumVARIANT) = 0;
18280
18281};
18282#ifdef __CRT_UUID_DECL
18283__CRT_UUID_DECL(ISpeechPhraseRules, 0x9047d593, 0x01dd, 0x4b72, 0x81,0xa3, 0xe4,0xa0,0xca,0x69,0xf4,0x07)
18284#endif
18285#else
18286typedef struct ISpeechPhraseRulesVtbl {
18287 BEGIN_INTERFACE
18288
18289 /*** IUnknown methods ***/
18290 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18291 ISpeechPhraseRules *This,
18292 REFIID riid,
18293 void **ppvObject);
18294
18295 ULONG (STDMETHODCALLTYPE *AddRef)(
18296 ISpeechPhraseRules *This);
18297
18298 ULONG (STDMETHODCALLTYPE *Release)(
18299 ISpeechPhraseRules *This);
18300
18301 /*** IDispatch methods ***/
18302 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18303 ISpeechPhraseRules *This,
18304 UINT *pctinfo);
18305
18306 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18307 ISpeechPhraseRules *This,
18308 UINT iTInfo,
18309 LCID lcid,
18310 ITypeInfo **ppTInfo);
18311
18312 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18313 ISpeechPhraseRules *This,
18314 REFIID riid,
18315 LPOLESTR *rgszNames,
18316 UINT cNames,
18317 LCID lcid,
18318 DISPID *rgDispId);
18319
18320 HRESULT (STDMETHODCALLTYPE *Invoke)(
18321 ISpeechPhraseRules *This,
18322 DISPID dispIdMember,
18323 REFIID riid,
18324 LCID lcid,
18325 WORD wFlags,
18326 DISPPARAMS *pDispParams,
18327 VARIANT *pVarResult,
18328 EXCEPINFO *pExcepInfo,
18329 UINT *puArgErr);
18330
18331 /*** ISpeechPhraseRules methods ***/
18332 HRESULT (STDMETHODCALLTYPE *get_Count)(
18333 ISpeechPhraseRules *This,
18334 LONG *Count);
18335
18336 HRESULT (STDMETHODCALLTYPE *Item)(
18337 ISpeechPhraseRules *This,
18338 LONG Index,
18339 ISpeechPhraseRule **Rule);
18340
18341 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
18342 ISpeechPhraseRules *This,
18343 IUnknown **EnumVARIANT);
18344
18345 END_INTERFACE
18346} ISpeechPhraseRulesVtbl;
18347
18348interface ISpeechPhraseRules {
18349 CONST_VTBL ISpeechPhraseRulesVtbl* lpVtbl;
18350};
18351
18352#ifdef COBJMACROS
18353#ifndef WIDL_C_INLINE_WRAPPERS
18354/*** IUnknown methods ***/
18355#define ISpeechPhraseRules_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18356#define ISpeechPhraseRules_AddRef(This) (This)->lpVtbl->AddRef(This)
18357#define ISpeechPhraseRules_Release(This) (This)->lpVtbl->Release(This)
18358/*** IDispatch methods ***/
18359#define ISpeechPhraseRules_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18360#define ISpeechPhraseRules_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18361#define ISpeechPhraseRules_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18362#define ISpeechPhraseRules_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18363/*** ISpeechPhraseRules methods ***/
18364#define ISpeechPhraseRules_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
18365#define ISpeechPhraseRules_Item(This,Index,Rule) (This)->lpVtbl->Item(This,Index,Rule)
18366#define ISpeechPhraseRules_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
18367#else
18368/*** IUnknown methods ***/
18369static inline HRESULT ISpeechPhraseRules_QueryInterface(ISpeechPhraseRules* This,REFIID riid,void **ppvObject) {
18370 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18371}
18372static inline ULONG ISpeechPhraseRules_AddRef(ISpeechPhraseRules* This) {
18373 return This->lpVtbl->AddRef(This);
18374}
18375static inline ULONG ISpeechPhraseRules_Release(ISpeechPhraseRules* This) {
18376 return This->lpVtbl->Release(This);
18377}
18378/*** IDispatch methods ***/
18379static inline HRESULT ISpeechPhraseRules_GetTypeInfoCount(ISpeechPhraseRules* This,UINT *pctinfo) {
18380 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18381}
18382static inline HRESULT ISpeechPhraseRules_GetTypeInfo(ISpeechPhraseRules* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18383 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18384}
18385static inline HRESULT ISpeechPhraseRules_GetIDsOfNames(ISpeechPhraseRules* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18386 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18387}
18388static inline HRESULT ISpeechPhraseRules_Invoke(ISpeechPhraseRules* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18389 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18390}
18391/*** ISpeechPhraseRules methods ***/
18392static inline HRESULT ISpeechPhraseRules_get_Count(ISpeechPhraseRules* This,LONG *Count) {
18393 return This->lpVtbl->get_Count(This,Count);
18394}
18395static inline HRESULT ISpeechPhraseRules_Item(ISpeechPhraseRules* This,LONG Index,ISpeechPhraseRule **Rule) {
18396 return This->lpVtbl->Item(This,Index,Rule);
18397}
18398static inline HRESULT ISpeechPhraseRules_get__NewEnum(ISpeechPhraseRules* This,IUnknown **EnumVARIANT) {
18399 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
18400}
18401#endif
18402#endif
18403
18404#endif
18405
18406
18407#endif /* __ISpeechPhraseRules_INTERFACE_DEFINED__ */
18408
18409/*****************************************************************************
18410 * ISpeechLexiconWords interface
18411 */
18412#ifndef __ISpeechLexiconWords_INTERFACE_DEFINED__
18413#define __ISpeechLexiconWords_INTERFACE_DEFINED__
18414
18415DEFINE_GUID(IID_ISpeechLexiconWords, 0x8d199862, 0x415e, 0x47d5, 0xac,0x4f, 0xfa,0xa6,0x08,0xb4,0x24,0xe6);
18416#if defined(__cplusplus) && !defined(CINTERFACE)
18417MIDL_INTERFACE("8d199862-415e-47d5-ac4f-faa608b424e6")
18418ISpeechLexiconWords : public IDispatch
18419{
18420 virtual HRESULT STDMETHODCALLTYPE get_Count(
18421 LONG *Count) = 0;
18422
18423 virtual HRESULT STDMETHODCALLTYPE Item(
18424 LONG Index,
18425 ISpeechLexiconWord **Word) = 0;
18426
18427 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
18428 IUnknown **EnumVARIANT) = 0;
18429
18430};
18431#ifdef __CRT_UUID_DECL
18432__CRT_UUID_DECL(ISpeechLexiconWords, 0x8d199862, 0x415e, 0x47d5, 0xac,0x4f, 0xfa,0xa6,0x08,0xb4,0x24,0xe6)
18433#endif
18434#else
18435typedef struct ISpeechLexiconWordsVtbl {
18436 BEGIN_INTERFACE
18437
18438 /*** IUnknown methods ***/
18439 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18440 ISpeechLexiconWords *This,
18441 REFIID riid,
18442 void **ppvObject);
18443
18444 ULONG (STDMETHODCALLTYPE *AddRef)(
18445 ISpeechLexiconWords *This);
18446
18447 ULONG (STDMETHODCALLTYPE *Release)(
18448 ISpeechLexiconWords *This);
18449
18450 /*** IDispatch methods ***/
18451 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18452 ISpeechLexiconWords *This,
18453 UINT *pctinfo);
18454
18455 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18456 ISpeechLexiconWords *This,
18457 UINT iTInfo,
18458 LCID lcid,
18459 ITypeInfo **ppTInfo);
18460
18461 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18462 ISpeechLexiconWords *This,
18463 REFIID riid,
18464 LPOLESTR *rgszNames,
18465 UINT cNames,
18466 LCID lcid,
18467 DISPID *rgDispId);
18468
18469 HRESULT (STDMETHODCALLTYPE *Invoke)(
18470 ISpeechLexiconWords *This,
18471 DISPID dispIdMember,
18472 REFIID riid,
18473 LCID lcid,
18474 WORD wFlags,
18475 DISPPARAMS *pDispParams,
18476 VARIANT *pVarResult,
18477 EXCEPINFO *pExcepInfo,
18478 UINT *puArgErr);
18479
18480 /*** ISpeechLexiconWords methods ***/
18481 HRESULT (STDMETHODCALLTYPE *get_Count)(
18482 ISpeechLexiconWords *This,
18483 LONG *Count);
18484
18485 HRESULT (STDMETHODCALLTYPE *Item)(
18486 ISpeechLexiconWords *This,
18487 LONG Index,
18488 ISpeechLexiconWord **Word);
18489
18490 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
18491 ISpeechLexiconWords *This,
18492 IUnknown **EnumVARIANT);
18493
18494 END_INTERFACE
18495} ISpeechLexiconWordsVtbl;
18496
18497interface ISpeechLexiconWords {
18498 CONST_VTBL ISpeechLexiconWordsVtbl* lpVtbl;
18499};
18500
18501#ifdef COBJMACROS
18502#ifndef WIDL_C_INLINE_WRAPPERS
18503/*** IUnknown methods ***/
18504#define ISpeechLexiconWords_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18505#define ISpeechLexiconWords_AddRef(This) (This)->lpVtbl->AddRef(This)
18506#define ISpeechLexiconWords_Release(This) (This)->lpVtbl->Release(This)
18507/*** IDispatch methods ***/
18508#define ISpeechLexiconWords_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18509#define ISpeechLexiconWords_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18510#define ISpeechLexiconWords_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18511#define ISpeechLexiconWords_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18512/*** ISpeechLexiconWords methods ***/
18513#define ISpeechLexiconWords_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
18514#define ISpeechLexiconWords_Item(This,Index,Word) (This)->lpVtbl->Item(This,Index,Word)
18515#define ISpeechLexiconWords_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
18516#else
18517/*** IUnknown methods ***/
18518static inline HRESULT ISpeechLexiconWords_QueryInterface(ISpeechLexiconWords* This,REFIID riid,void **ppvObject) {
18519 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18520}
18521static inline ULONG ISpeechLexiconWords_AddRef(ISpeechLexiconWords* This) {
18522 return This->lpVtbl->AddRef(This);
18523}
18524static inline ULONG ISpeechLexiconWords_Release(ISpeechLexiconWords* This) {
18525 return This->lpVtbl->Release(This);
18526}
18527/*** IDispatch methods ***/
18528static inline HRESULT ISpeechLexiconWords_GetTypeInfoCount(ISpeechLexiconWords* This,UINT *pctinfo) {
18529 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18530}
18531static inline HRESULT ISpeechLexiconWords_GetTypeInfo(ISpeechLexiconWords* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18532 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18533}
18534static inline HRESULT ISpeechLexiconWords_GetIDsOfNames(ISpeechLexiconWords* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18535 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18536}
18537static inline HRESULT ISpeechLexiconWords_Invoke(ISpeechLexiconWords* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18538 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18539}
18540/*** ISpeechLexiconWords methods ***/
18541static inline HRESULT ISpeechLexiconWords_get_Count(ISpeechLexiconWords* This,LONG *Count) {
18542 return This->lpVtbl->get_Count(This,Count);
18543}
18544static inline HRESULT ISpeechLexiconWords_Item(ISpeechLexiconWords* This,LONG Index,ISpeechLexiconWord **Word) {
18545 return This->lpVtbl->Item(This,Index,Word);
18546}
18547static inline HRESULT ISpeechLexiconWords_get__NewEnum(ISpeechLexiconWords* This,IUnknown **EnumVARIANT) {
18548 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
18549}
18550#endif
18551#endif
18552
18553#endif
18554
18555
18556#endif /* __ISpeechLexiconWords_INTERFACE_DEFINED__ */
18557
18558/*****************************************************************************
18559 * ISpeechLexicon interface
18560 */
18561#ifndef __ISpeechLexicon_INTERFACE_DEFINED__
18562#define __ISpeechLexicon_INTERFACE_DEFINED__
18563
18564DEFINE_GUID(IID_ISpeechLexicon, 0x3da7627a, 0xc7ae, 0x4b23, 0x87,0x08, 0x63,0x8c,0x50,0x36,0x2c,0x25);
18565#if defined(__cplusplus) && !defined(CINTERFACE)
18566MIDL_INTERFACE("3da7627a-c7ae-4b23-8708-638c50362c25")
18567ISpeechLexicon : public IDispatch
18568{
18569 virtual HRESULT STDMETHODCALLTYPE get_GenerationId(
18570 LONG *GenerationId) = 0;
18571
18572 virtual HRESULT STDMETHODCALLTYPE GetWords(
18573 SpeechLexiconType Flags,
18574 LONG *GenerationID,
18575 ISpeechLexiconWords **Words) = 0;
18576
18577 virtual HRESULT STDMETHODCALLTYPE AddPronunciation(
18578 BSTR bstrWord,
18579 SpeechLanguageId LangId,
18580 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
18581 BSTR bstrPronunciation = L"") = 0;
18582
18583 virtual HRESULT STDMETHODCALLTYPE AddPronunciationByPhoneIds(
18584 BSTR bstrWord,
18585 SpeechLanguageId LangId,
18586 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
18587 VARIANT *PhoneIds = 0) = 0;
18588
18589 virtual HRESULT STDMETHODCALLTYPE RemovePronunciation(
18590 BSTR bstrWord,
18591 SpeechLanguageId LangId,
18592 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
18593 BSTR bstrPronunciation = L"") = 0;
18594
18595 virtual HRESULT STDMETHODCALLTYPE RemovePronunciationByPhoneIds(
18596 BSTR bstrWord,
18597 SpeechLanguageId LangId,
18598 SpeechPartOfSpeech PartOfSpeech = SPSUnknown,
18599 VARIANT *PhoneIds = 0) = 0;
18600
18601 virtual HRESULT STDMETHODCALLTYPE GetPronunciations(
18602 BSTR bstrWord,
18603 SpeechLanguageId LangId,
18604 SpeechLexiconType TypeFlags,
18605 ISpeechLexiconPronunciations **ppPronunciations) = 0;
18606
18607 virtual HRESULT STDMETHODCALLTYPE GetGenerationChange(
18608 LONG *GenerationID,
18609 ISpeechLexiconWords **ppWords) = 0;
18610
18611};
18612#ifdef __CRT_UUID_DECL
18613__CRT_UUID_DECL(ISpeechLexicon, 0x3da7627a, 0xc7ae, 0x4b23, 0x87,0x08, 0x63,0x8c,0x50,0x36,0x2c,0x25)
18614#endif
18615#else
18616typedef struct ISpeechLexiconVtbl {
18617 BEGIN_INTERFACE
18618
18619 /*** IUnknown methods ***/
18620 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18621 ISpeechLexicon *This,
18622 REFIID riid,
18623 void **ppvObject);
18624
18625 ULONG (STDMETHODCALLTYPE *AddRef)(
18626 ISpeechLexicon *This);
18627
18628 ULONG (STDMETHODCALLTYPE *Release)(
18629 ISpeechLexicon *This);
18630
18631 /*** IDispatch methods ***/
18632 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18633 ISpeechLexicon *This,
18634 UINT *pctinfo);
18635
18636 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18637 ISpeechLexicon *This,
18638 UINT iTInfo,
18639 LCID lcid,
18640 ITypeInfo **ppTInfo);
18641
18642 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18643 ISpeechLexicon *This,
18644 REFIID riid,
18645 LPOLESTR *rgszNames,
18646 UINT cNames,
18647 LCID lcid,
18648 DISPID *rgDispId);
18649
18650 HRESULT (STDMETHODCALLTYPE *Invoke)(
18651 ISpeechLexicon *This,
18652 DISPID dispIdMember,
18653 REFIID riid,
18654 LCID lcid,
18655 WORD wFlags,
18656 DISPPARAMS *pDispParams,
18657 VARIANT *pVarResult,
18658 EXCEPINFO *pExcepInfo,
18659 UINT *puArgErr);
18660
18661 /*** ISpeechLexicon methods ***/
18662 HRESULT (STDMETHODCALLTYPE *get_GenerationId)(
18663 ISpeechLexicon *This,
18664 LONG *GenerationId);
18665
18666 HRESULT (STDMETHODCALLTYPE *GetWords)(
18667 ISpeechLexicon *This,
18668 SpeechLexiconType Flags,
18669 LONG *GenerationID,
18670 ISpeechLexiconWords **Words);
18671
18672 HRESULT (STDMETHODCALLTYPE *AddPronunciation)(
18673 ISpeechLexicon *This,
18674 BSTR bstrWord,
18675 SpeechLanguageId LangId,
18676 SpeechPartOfSpeech PartOfSpeech,
18677 BSTR bstrPronunciation);
18678
18679 HRESULT (STDMETHODCALLTYPE *AddPronunciationByPhoneIds)(
18680 ISpeechLexicon *This,
18681 BSTR bstrWord,
18682 SpeechLanguageId LangId,
18683 SpeechPartOfSpeech PartOfSpeech,
18684 VARIANT *PhoneIds);
18685
18686 HRESULT (STDMETHODCALLTYPE *RemovePronunciation)(
18687 ISpeechLexicon *This,
18688 BSTR bstrWord,
18689 SpeechLanguageId LangId,
18690 SpeechPartOfSpeech PartOfSpeech,
18691 BSTR bstrPronunciation);
18692
18693 HRESULT (STDMETHODCALLTYPE *RemovePronunciationByPhoneIds)(
18694 ISpeechLexicon *This,
18695 BSTR bstrWord,
18696 SpeechLanguageId LangId,
18697 SpeechPartOfSpeech PartOfSpeech,
18698 VARIANT *PhoneIds);
18699
18700 HRESULT (STDMETHODCALLTYPE *GetPronunciations)(
18701 ISpeechLexicon *This,
18702 BSTR bstrWord,
18703 SpeechLanguageId LangId,
18704 SpeechLexiconType TypeFlags,
18705 ISpeechLexiconPronunciations **ppPronunciations);
18706
18707 HRESULT (STDMETHODCALLTYPE *GetGenerationChange)(
18708 ISpeechLexicon *This,
18709 LONG *GenerationID,
18710 ISpeechLexiconWords **ppWords);
18711
18712 END_INTERFACE
18713} ISpeechLexiconVtbl;
18714
18715interface ISpeechLexicon {
18716 CONST_VTBL ISpeechLexiconVtbl* lpVtbl;
18717};
18718
18719#ifdef COBJMACROS
18720#ifndef WIDL_C_INLINE_WRAPPERS
18721/*** IUnknown methods ***/
18722#define ISpeechLexicon_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18723#define ISpeechLexicon_AddRef(This) (This)->lpVtbl->AddRef(This)
18724#define ISpeechLexicon_Release(This) (This)->lpVtbl->Release(This)
18725/*** IDispatch methods ***/
18726#define ISpeechLexicon_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18727#define ISpeechLexicon_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18728#define ISpeechLexicon_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18729#define ISpeechLexicon_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18730/*** ISpeechLexicon methods ***/
18731#define ISpeechLexicon_get_GenerationId(This,GenerationId) (This)->lpVtbl->get_GenerationId(This,GenerationId)
18732#define ISpeechLexicon_GetWords(This,Flags,GenerationID,Words) (This)->lpVtbl->GetWords(This,Flags,GenerationID,Words)
18733#define ISpeechLexicon_AddPronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation) (This)->lpVtbl->AddPronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation)
18734#define ISpeechLexicon_AddPronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds) (This)->lpVtbl->AddPronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds)
18735#define ISpeechLexicon_RemovePronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation) (This)->lpVtbl->RemovePronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation)
18736#define ISpeechLexicon_RemovePronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds) (This)->lpVtbl->RemovePronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds)
18737#define ISpeechLexicon_GetPronunciations(This,bstrWord,LangId,TypeFlags,ppPronunciations) (This)->lpVtbl->GetPronunciations(This,bstrWord,LangId,TypeFlags,ppPronunciations)
18738#define ISpeechLexicon_GetGenerationChange(This,GenerationID,ppWords) (This)->lpVtbl->GetGenerationChange(This,GenerationID,ppWords)
18739#else
18740/*** IUnknown methods ***/
18741static inline HRESULT ISpeechLexicon_QueryInterface(ISpeechLexicon* This,REFIID riid,void **ppvObject) {
18742 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18743}
18744static inline ULONG ISpeechLexicon_AddRef(ISpeechLexicon* This) {
18745 return This->lpVtbl->AddRef(This);
18746}
18747static inline ULONG ISpeechLexicon_Release(ISpeechLexicon* This) {
18748 return This->lpVtbl->Release(This);
18749}
18750/*** IDispatch methods ***/
18751static inline HRESULT ISpeechLexicon_GetTypeInfoCount(ISpeechLexicon* This,UINT *pctinfo) {
18752 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18753}
18754static inline HRESULT ISpeechLexicon_GetTypeInfo(ISpeechLexicon* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18755 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18756}
18757static inline HRESULT ISpeechLexicon_GetIDsOfNames(ISpeechLexicon* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18758 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18759}
18760static inline HRESULT ISpeechLexicon_Invoke(ISpeechLexicon* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18761 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18762}
18763/*** ISpeechLexicon methods ***/
18764static inline HRESULT ISpeechLexicon_get_GenerationId(ISpeechLexicon* This,LONG *GenerationId) {
18765 return This->lpVtbl->get_GenerationId(This,GenerationId);
18766}
18767static inline HRESULT ISpeechLexicon_GetWords(ISpeechLexicon* This,SpeechLexiconType Flags,LONG *GenerationID,ISpeechLexiconWords **Words) {
18768 return This->lpVtbl->GetWords(This,Flags,GenerationID,Words);
18769}
18770static inline HRESULT ISpeechLexicon_AddPronunciation(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,BSTR bstrPronunciation) {
18771 return This->lpVtbl->AddPronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation);
18772}
18773static inline HRESULT ISpeechLexicon_AddPronunciationByPhoneIds(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,VARIANT *PhoneIds) {
18774 return This->lpVtbl->AddPronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds);
18775}
18776static inline HRESULT ISpeechLexicon_RemovePronunciation(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,BSTR bstrPronunciation) {
18777 return This->lpVtbl->RemovePronunciation(This,bstrWord,LangId,PartOfSpeech,bstrPronunciation);
18778}
18779static inline HRESULT ISpeechLexicon_RemovePronunciationByPhoneIds(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechPartOfSpeech PartOfSpeech,VARIANT *PhoneIds) {
18780 return This->lpVtbl->RemovePronunciationByPhoneIds(This,bstrWord,LangId,PartOfSpeech,PhoneIds);
18781}
18782static inline HRESULT ISpeechLexicon_GetPronunciations(ISpeechLexicon* This,BSTR bstrWord,SpeechLanguageId LangId,SpeechLexiconType TypeFlags,ISpeechLexiconPronunciations **ppPronunciations) {
18783 return This->lpVtbl->GetPronunciations(This,bstrWord,LangId,TypeFlags,ppPronunciations);
18784}
18785static inline HRESULT ISpeechLexicon_GetGenerationChange(ISpeechLexicon* This,LONG *GenerationID,ISpeechLexiconWords **ppWords) {
18786 return This->lpVtbl->GetGenerationChange(This,GenerationID,ppWords);
18787}
18788#endif
18789#endif
18790
18791#endif
18792
18793
18794#endif /* __ISpeechLexicon_INTERFACE_DEFINED__ */
18795
18796/*****************************************************************************
18797 * ISpeechLexiconWord interface
18798 */
18799#ifndef __ISpeechLexiconWord_INTERFACE_DEFINED__
18800#define __ISpeechLexiconWord_INTERFACE_DEFINED__
18801
18802DEFINE_GUID(IID_ISpeechLexiconWord, 0x4e5b933c, 0xc9be, 0x48ed, 0x88,0x42, 0x1e,0xe5,0x1b,0xb1,0xd4,0xff);
18803#if defined(__cplusplus) && !defined(CINTERFACE)
18804MIDL_INTERFACE("4e5b933c-c9be-48ed-8842-1ee51bb1d4ff")
18805ISpeechLexiconWord : public IDispatch
18806{
18807 virtual HRESULT STDMETHODCALLTYPE get_LangId(
18808 SpeechLanguageId *LangId) = 0;
18809
18810 virtual HRESULT STDMETHODCALLTYPE get_Type(
18811 SpeechWordType *WordType) = 0;
18812
18813 virtual HRESULT STDMETHODCALLTYPE get_Word(
18814 BSTR *Word) = 0;
18815
18816 virtual HRESULT STDMETHODCALLTYPE get_Pronunciations(
18817 ISpeechLexiconPronunciations **Pronunciations) = 0;
18818
18819};
18820#ifdef __CRT_UUID_DECL
18821__CRT_UUID_DECL(ISpeechLexiconWord, 0x4e5b933c, 0xc9be, 0x48ed, 0x88,0x42, 0x1e,0xe5,0x1b,0xb1,0xd4,0xff)
18822#endif
18823#else
18824typedef struct ISpeechLexiconWordVtbl {
18825 BEGIN_INTERFACE
18826
18827 /*** IUnknown methods ***/
18828 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18829 ISpeechLexiconWord *This,
18830 REFIID riid,
18831 void **ppvObject);
18832
18833 ULONG (STDMETHODCALLTYPE *AddRef)(
18834 ISpeechLexiconWord *This);
18835
18836 ULONG (STDMETHODCALLTYPE *Release)(
18837 ISpeechLexiconWord *This);
18838
18839 /*** IDispatch methods ***/
18840 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18841 ISpeechLexiconWord *This,
18842 UINT *pctinfo);
18843
18844 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18845 ISpeechLexiconWord *This,
18846 UINT iTInfo,
18847 LCID lcid,
18848 ITypeInfo **ppTInfo);
18849
18850 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18851 ISpeechLexiconWord *This,
18852 REFIID riid,
18853 LPOLESTR *rgszNames,
18854 UINT cNames,
18855 LCID lcid,
18856 DISPID *rgDispId);
18857
18858 HRESULT (STDMETHODCALLTYPE *Invoke)(
18859 ISpeechLexiconWord *This,
18860 DISPID dispIdMember,
18861 REFIID riid,
18862 LCID lcid,
18863 WORD wFlags,
18864 DISPPARAMS *pDispParams,
18865 VARIANT *pVarResult,
18866 EXCEPINFO *pExcepInfo,
18867 UINT *puArgErr);
18868
18869 /*** ISpeechLexiconWord methods ***/
18870 HRESULT (STDMETHODCALLTYPE *get_LangId)(
18871 ISpeechLexiconWord *This,
18872 SpeechLanguageId *LangId);
18873
18874 HRESULT (STDMETHODCALLTYPE *get_Type)(
18875 ISpeechLexiconWord *This,
18876 SpeechWordType *WordType);
18877
18878 HRESULT (STDMETHODCALLTYPE *get_Word)(
18879 ISpeechLexiconWord *This,
18880 BSTR *Word);
18881
18882 HRESULT (STDMETHODCALLTYPE *get_Pronunciations)(
18883 ISpeechLexiconWord *This,
18884 ISpeechLexiconPronunciations **Pronunciations);
18885
18886 END_INTERFACE
18887} ISpeechLexiconWordVtbl;
18888
18889interface ISpeechLexiconWord {
18890 CONST_VTBL ISpeechLexiconWordVtbl* lpVtbl;
18891};
18892
18893#ifdef COBJMACROS
18894#ifndef WIDL_C_INLINE_WRAPPERS
18895/*** IUnknown methods ***/
18896#define ISpeechLexiconWord_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18897#define ISpeechLexiconWord_AddRef(This) (This)->lpVtbl->AddRef(This)
18898#define ISpeechLexiconWord_Release(This) (This)->lpVtbl->Release(This)
18899/*** IDispatch methods ***/
18900#define ISpeechLexiconWord_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18901#define ISpeechLexiconWord_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18902#define ISpeechLexiconWord_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18903#define ISpeechLexiconWord_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18904/*** ISpeechLexiconWord methods ***/
18905#define ISpeechLexiconWord_get_LangId(This,LangId) (This)->lpVtbl->get_LangId(This,LangId)
18906#define ISpeechLexiconWord_get_Type(This,WordType) (This)->lpVtbl->get_Type(This,WordType)
18907#define ISpeechLexiconWord_get_Word(This,Word) (This)->lpVtbl->get_Word(This,Word)
18908#define ISpeechLexiconWord_get_Pronunciations(This,Pronunciations) (This)->lpVtbl->get_Pronunciations(This,Pronunciations)
18909#else
18910/*** IUnknown methods ***/
18911static inline HRESULT ISpeechLexiconWord_QueryInterface(ISpeechLexiconWord* This,REFIID riid,void **ppvObject) {
18912 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18913}
18914static inline ULONG ISpeechLexiconWord_AddRef(ISpeechLexiconWord* This) {
18915 return This->lpVtbl->AddRef(This);
18916}
18917static inline ULONG ISpeechLexiconWord_Release(ISpeechLexiconWord* This) {
18918 return This->lpVtbl->Release(This);
18919}
18920/*** IDispatch methods ***/
18921static inline HRESULT ISpeechLexiconWord_GetTypeInfoCount(ISpeechLexiconWord* This,UINT *pctinfo) {
18922 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18923}
18924static inline HRESULT ISpeechLexiconWord_GetTypeInfo(ISpeechLexiconWord* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18925 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18926}
18927static inline HRESULT ISpeechLexiconWord_GetIDsOfNames(ISpeechLexiconWord* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18928 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18929}
18930static inline HRESULT ISpeechLexiconWord_Invoke(ISpeechLexiconWord* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18931 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18932}
18933/*** ISpeechLexiconWord methods ***/
18934static inline HRESULT ISpeechLexiconWord_get_LangId(ISpeechLexiconWord* This,SpeechLanguageId *LangId) {
18935 return This->lpVtbl->get_LangId(This,LangId);
18936}
18937static inline HRESULT ISpeechLexiconWord_get_Type(ISpeechLexiconWord* This,SpeechWordType *WordType) {
18938 return This->lpVtbl->get_Type(This,WordType);
18939}
18940static inline HRESULT ISpeechLexiconWord_get_Word(ISpeechLexiconWord* This,BSTR *Word) {
18941 return This->lpVtbl->get_Word(This,Word);
18942}
18943static inline HRESULT ISpeechLexiconWord_get_Pronunciations(ISpeechLexiconWord* This,ISpeechLexiconPronunciations **Pronunciations) {
18944 return This->lpVtbl->get_Pronunciations(This,Pronunciations);
18945}
18946#endif
18947#endif
18948
18949#endif
18950
18951
18952#endif /* __ISpeechLexiconWord_INTERFACE_DEFINED__ */
18953
18954/*****************************************************************************
18955 * ISpeechLexiconPronunciations interface
18956 */
18957#ifndef __ISpeechLexiconPronunciations_INTERFACE_DEFINED__
18958#define __ISpeechLexiconPronunciations_INTERFACE_DEFINED__
18959
18960DEFINE_GUID(IID_ISpeechLexiconPronunciations, 0x72829128, 0x5682, 0x4704, 0xa0,0xd4, 0x3e,0x2b,0xb6,0xf2,0xea,0xd3);
18961#if defined(__cplusplus) && !defined(CINTERFACE)
18962MIDL_INTERFACE("72829128-5682-4704-a0d4-3e2bb6f2ead3")
18963ISpeechLexiconPronunciations : public IDispatch
18964{
18965 virtual HRESULT STDMETHODCALLTYPE get_Count(
18966 LONG *Count) = 0;
18967
18968 virtual HRESULT STDMETHODCALLTYPE Item(
18969 LONG Index,
18970 ISpeechLexiconPronunciation **Pronunciation) = 0;
18971
18972 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
18973 IUnknown **EnumVARIANT) = 0;
18974
18975};
18976#ifdef __CRT_UUID_DECL
18977__CRT_UUID_DECL(ISpeechLexiconPronunciations, 0x72829128, 0x5682, 0x4704, 0xa0,0xd4, 0x3e,0x2b,0xb6,0xf2,0xea,0xd3)
18978#endif
18979#else
18980typedef struct ISpeechLexiconPronunciationsVtbl {
18981 BEGIN_INTERFACE
18982
18983 /*** IUnknown methods ***/
18984 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18985 ISpeechLexiconPronunciations *This,
18986 REFIID riid,
18987 void **ppvObject);
18988
18989 ULONG (STDMETHODCALLTYPE *AddRef)(
18990 ISpeechLexiconPronunciations *This);
18991
18992 ULONG (STDMETHODCALLTYPE *Release)(
18993 ISpeechLexiconPronunciations *This);
18994
18995 /*** IDispatch methods ***/
18996 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18997 ISpeechLexiconPronunciations *This,
18998 UINT *pctinfo);
18999
19000 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19001 ISpeechLexiconPronunciations *This,
19002 UINT iTInfo,
19003 LCID lcid,
19004 ITypeInfo **ppTInfo);
19005
19006 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19007 ISpeechLexiconPronunciations *This,
19008 REFIID riid,
19009 LPOLESTR *rgszNames,
19010 UINT cNames,
19011 LCID lcid,
19012 DISPID *rgDispId);
19013
19014 HRESULT (STDMETHODCALLTYPE *Invoke)(
19015 ISpeechLexiconPronunciations *This,
19016 DISPID dispIdMember,
19017 REFIID riid,
19018 LCID lcid,
19019 WORD wFlags,
19020 DISPPARAMS *pDispParams,
19021 VARIANT *pVarResult,
19022 EXCEPINFO *pExcepInfo,
19023 UINT *puArgErr);
19024
19025 /*** ISpeechLexiconPronunciations methods ***/
19026 HRESULT (STDMETHODCALLTYPE *get_Count)(
19027 ISpeechLexiconPronunciations *This,
19028 LONG *Count);
19029
19030 HRESULT (STDMETHODCALLTYPE *Item)(
19031 ISpeechLexiconPronunciations *This,
19032 LONG Index,
19033 ISpeechLexiconPronunciation **Pronunciation);
19034
19035 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
19036 ISpeechLexiconPronunciations *This,
19037 IUnknown **EnumVARIANT);
19038
19039 END_INTERFACE
19040} ISpeechLexiconPronunciationsVtbl;
19041
19042interface ISpeechLexiconPronunciations {
19043 CONST_VTBL ISpeechLexiconPronunciationsVtbl* lpVtbl;
19044};
19045
19046#ifdef COBJMACROS
19047#ifndef WIDL_C_INLINE_WRAPPERS
19048/*** IUnknown methods ***/
19049#define ISpeechLexiconPronunciations_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19050#define ISpeechLexiconPronunciations_AddRef(This) (This)->lpVtbl->AddRef(This)
19051#define ISpeechLexiconPronunciations_Release(This) (This)->lpVtbl->Release(This)
19052/*** IDispatch methods ***/
19053#define ISpeechLexiconPronunciations_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19054#define ISpeechLexiconPronunciations_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19055#define ISpeechLexiconPronunciations_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19056#define ISpeechLexiconPronunciations_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19057/*** ISpeechLexiconPronunciations methods ***/
19058#define ISpeechLexiconPronunciations_get_Count(This,Count) (This)->lpVtbl->get_Count(This,Count)
19059#define ISpeechLexiconPronunciations_Item(This,Index,Pronunciation) (This)->lpVtbl->Item(This,Index,Pronunciation)
19060#define ISpeechLexiconPronunciations_get__NewEnum(This,EnumVARIANT) (This)->lpVtbl->get__NewEnum(This,EnumVARIANT)
19061#else
19062/*** IUnknown methods ***/
19063static inline HRESULT ISpeechLexiconPronunciations_QueryInterface(ISpeechLexiconPronunciations* This,REFIID riid,void **ppvObject) {
19064 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19065}
19066static inline ULONG ISpeechLexiconPronunciations_AddRef(ISpeechLexiconPronunciations* This) {
19067 return This->lpVtbl->AddRef(This);
19068}
19069static inline ULONG ISpeechLexiconPronunciations_Release(ISpeechLexiconPronunciations* This) {
19070 return This->lpVtbl->Release(This);
19071}
19072/*** IDispatch methods ***/
19073static inline HRESULT ISpeechLexiconPronunciations_GetTypeInfoCount(ISpeechLexiconPronunciations* This,UINT *pctinfo) {
19074 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19075}
19076static inline HRESULT ISpeechLexiconPronunciations_GetTypeInfo(ISpeechLexiconPronunciations* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19077 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19078}
19079static inline HRESULT ISpeechLexiconPronunciations_GetIDsOfNames(ISpeechLexiconPronunciations* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19080 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19081}
19082static inline HRESULT ISpeechLexiconPronunciations_Invoke(ISpeechLexiconPronunciations* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19083 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19084}
19085/*** ISpeechLexiconPronunciations methods ***/
19086static inline HRESULT ISpeechLexiconPronunciations_get_Count(ISpeechLexiconPronunciations* This,LONG *Count) {
19087 return This->lpVtbl->get_Count(This,Count);
19088}
19089static inline HRESULT ISpeechLexiconPronunciations_Item(ISpeechLexiconPronunciations* This,LONG Index,ISpeechLexiconPronunciation **Pronunciation) {
19090 return This->lpVtbl->Item(This,Index,Pronunciation);
19091}
19092static inline HRESULT ISpeechLexiconPronunciations_get__NewEnum(ISpeechLexiconPronunciations* This,IUnknown **EnumVARIANT) {
19093 return This->lpVtbl->get__NewEnum(This,EnumVARIANT);
19094}
19095#endif
19096#endif
19097
19098#endif
19099
19100
19101#endif /* __ISpeechLexiconPronunciations_INTERFACE_DEFINED__ */
19102
19103/*****************************************************************************
19104 * ISpeechLexiconPronunciation interface
19105 */
19106#ifndef __ISpeechLexiconPronunciation_INTERFACE_DEFINED__
19107#define __ISpeechLexiconPronunciation_INTERFACE_DEFINED__
19108
19109DEFINE_GUID(IID_ISpeechLexiconPronunciation, 0x95252c5d, 0x9e43, 0x4f4a, 0x98,0x99, 0x48,0xee,0x73,0x35,0x2f,0x9f);
19110#if defined(__cplusplus) && !defined(CINTERFACE)
19111MIDL_INTERFACE("95252c5d-9e43-4f4a-9899-48ee73352f9f")
19112ISpeechLexiconPronunciation : public IDispatch
19113{
19114 virtual HRESULT STDMETHODCALLTYPE get_Type(
19115 SpeechLexiconType *LexiconType) = 0;
19116
19117 virtual HRESULT STDMETHODCALLTYPE get_LangId(
19118 SpeechLanguageId *LangId) = 0;
19119
19120 virtual HRESULT STDMETHODCALLTYPE get_PartOfSpeech(
19121 SpeechPartOfSpeech *PartOfSpeech) = 0;
19122
19123 virtual HRESULT STDMETHODCALLTYPE get_PhoneIds(
19124 VARIANT *PhoneIds) = 0;
19125
19126 virtual HRESULT STDMETHODCALLTYPE get_Symbolic(
19127 BSTR *Symbolic) = 0;
19128
19129};
19130#ifdef __CRT_UUID_DECL
19131__CRT_UUID_DECL(ISpeechLexiconPronunciation, 0x95252c5d, 0x9e43, 0x4f4a, 0x98,0x99, 0x48,0xee,0x73,0x35,0x2f,0x9f)
19132#endif
19133#else
19134typedef struct ISpeechLexiconPronunciationVtbl {
19135 BEGIN_INTERFACE
19136
19137 /*** IUnknown methods ***/
19138 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19139 ISpeechLexiconPronunciation *This,
19140 REFIID riid,
19141 void **ppvObject);
19142
19143 ULONG (STDMETHODCALLTYPE *AddRef)(
19144 ISpeechLexiconPronunciation *This);
19145
19146 ULONG (STDMETHODCALLTYPE *Release)(
19147 ISpeechLexiconPronunciation *This);
19148
19149 /*** IDispatch methods ***/
19150 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19151 ISpeechLexiconPronunciation *This,
19152 UINT *pctinfo);
19153
19154 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19155 ISpeechLexiconPronunciation *This,
19156 UINT iTInfo,
19157 LCID lcid,
19158 ITypeInfo **ppTInfo);
19159
19160 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19161 ISpeechLexiconPronunciation *This,
19162 REFIID riid,
19163 LPOLESTR *rgszNames,
19164 UINT cNames,
19165 LCID lcid,
19166 DISPID *rgDispId);
19167
19168 HRESULT (STDMETHODCALLTYPE *Invoke)(
19169 ISpeechLexiconPronunciation *This,
19170 DISPID dispIdMember,
19171 REFIID riid,
19172 LCID lcid,
19173 WORD wFlags,
19174 DISPPARAMS *pDispParams,
19175 VARIANT *pVarResult,
19176 EXCEPINFO *pExcepInfo,
19177 UINT *puArgErr);
19178
19179 /*** ISpeechLexiconPronunciation methods ***/
19180 HRESULT (STDMETHODCALLTYPE *get_Type)(
19181 ISpeechLexiconPronunciation *This,
19182 SpeechLexiconType *LexiconType);
19183
19184 HRESULT (STDMETHODCALLTYPE *get_LangId)(
19185 ISpeechLexiconPronunciation *This,
19186 SpeechLanguageId *LangId);
19187
19188 HRESULT (STDMETHODCALLTYPE *get_PartOfSpeech)(
19189 ISpeechLexiconPronunciation *This,
19190 SpeechPartOfSpeech *PartOfSpeech);
19191
19192 HRESULT (STDMETHODCALLTYPE *get_PhoneIds)(
19193 ISpeechLexiconPronunciation *This,
19194 VARIANT *PhoneIds);
19195
19196 HRESULT (STDMETHODCALLTYPE *get_Symbolic)(
19197 ISpeechLexiconPronunciation *This,
19198 BSTR *Symbolic);
19199
19200 END_INTERFACE
19201} ISpeechLexiconPronunciationVtbl;
19202
19203interface ISpeechLexiconPronunciation {
19204 CONST_VTBL ISpeechLexiconPronunciationVtbl* lpVtbl;
19205};
19206
19207#ifdef COBJMACROS
19208#ifndef WIDL_C_INLINE_WRAPPERS
19209/*** IUnknown methods ***/
19210#define ISpeechLexiconPronunciation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19211#define ISpeechLexiconPronunciation_AddRef(This) (This)->lpVtbl->AddRef(This)
19212#define ISpeechLexiconPronunciation_Release(This) (This)->lpVtbl->Release(This)
19213/*** IDispatch methods ***/
19214#define ISpeechLexiconPronunciation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19215#define ISpeechLexiconPronunciation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19216#define ISpeechLexiconPronunciation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19217#define ISpeechLexiconPronunciation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19218/*** ISpeechLexiconPronunciation methods ***/
19219#define ISpeechLexiconPronunciation_get_Type(This,LexiconType) (This)->lpVtbl->get_Type(This,LexiconType)
19220#define ISpeechLexiconPronunciation_get_LangId(This,LangId) (This)->lpVtbl->get_LangId(This,LangId)
19221#define ISpeechLexiconPronunciation_get_PartOfSpeech(This,PartOfSpeech) (This)->lpVtbl->get_PartOfSpeech(This,PartOfSpeech)
19222#define ISpeechLexiconPronunciation_get_PhoneIds(This,PhoneIds) (This)->lpVtbl->get_PhoneIds(This,PhoneIds)
19223#define ISpeechLexiconPronunciation_get_Symbolic(This,Symbolic) (This)->lpVtbl->get_Symbolic(This,Symbolic)
19224#else
19225/*** IUnknown methods ***/
19226static inline HRESULT ISpeechLexiconPronunciation_QueryInterface(ISpeechLexiconPronunciation* This,REFIID riid,void **ppvObject) {
19227 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19228}
19229static inline ULONG ISpeechLexiconPronunciation_AddRef(ISpeechLexiconPronunciation* This) {
19230 return This->lpVtbl->AddRef(This);
19231}
19232static inline ULONG ISpeechLexiconPronunciation_Release(ISpeechLexiconPronunciation* This) {
19233 return This->lpVtbl->Release(This);
19234}
19235/*** IDispatch methods ***/
19236static inline HRESULT ISpeechLexiconPronunciation_GetTypeInfoCount(ISpeechLexiconPronunciation* This,UINT *pctinfo) {
19237 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19238}
19239static inline HRESULT ISpeechLexiconPronunciation_GetTypeInfo(ISpeechLexiconPronunciation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19240 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19241}
19242static inline HRESULT ISpeechLexiconPronunciation_GetIDsOfNames(ISpeechLexiconPronunciation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19243 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19244}
19245static inline HRESULT ISpeechLexiconPronunciation_Invoke(ISpeechLexiconPronunciation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19246 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19247}
19248/*** ISpeechLexiconPronunciation methods ***/
19249static inline HRESULT ISpeechLexiconPronunciation_get_Type(ISpeechLexiconPronunciation* This,SpeechLexiconType *LexiconType) {
19250 return This->lpVtbl->get_Type(This,LexiconType);
19251}
19252static inline HRESULT ISpeechLexiconPronunciation_get_LangId(ISpeechLexiconPronunciation* This,SpeechLanguageId *LangId) {
19253 return This->lpVtbl->get_LangId(This,LangId);
19254}
19255static inline HRESULT ISpeechLexiconPronunciation_get_PartOfSpeech(ISpeechLexiconPronunciation* This,SpeechPartOfSpeech *PartOfSpeech) {
19256 return This->lpVtbl->get_PartOfSpeech(This,PartOfSpeech);
19257}
19258static inline HRESULT ISpeechLexiconPronunciation_get_PhoneIds(ISpeechLexiconPronunciation* This,VARIANT *PhoneIds) {
19259 return This->lpVtbl->get_PhoneIds(This,PhoneIds);
19260}
19261static inline HRESULT ISpeechLexiconPronunciation_get_Symbolic(ISpeechLexiconPronunciation* This,BSTR *Symbolic) {
19262 return This->lpVtbl->get_Symbolic(This,Symbolic);
19263}
19264#endif
19265#endif
19266
19267#endif
19268
19269
19270#endif /* __ISpeechLexiconPronunciation_INTERFACE_DEFINED__ */
19271
19272/*****************************************************************************
19273 * ISpeechPhoneConverter interface
19274 */
19275#ifndef __ISpeechPhoneConverter_INTERFACE_DEFINED__
19276#define __ISpeechPhoneConverter_INTERFACE_DEFINED__
19277
19278DEFINE_GUID(IID_ISpeechPhoneConverter, 0xc3e4f353, 0x433f, 0x43d6, 0x89,0xa1, 0x6a,0x62,0xa7,0x05,0x4c,0x3d);
19279#if defined(__cplusplus) && !defined(CINTERFACE)
19280MIDL_INTERFACE("c3e4f353-433f-43d6-89a1-6a62a7054c3d")
19281ISpeechPhoneConverter : public IDispatch
19282{
19283 virtual HRESULT STDMETHODCALLTYPE get_LanguageId(
19284 SpeechLanguageId *LanguageId) = 0;
19285
19286 virtual HRESULT STDMETHODCALLTYPE put_LanguageId(
19287 SpeechLanguageId LanguageId) = 0;
19288
19289 virtual HRESULT STDMETHODCALLTYPE PhoneToId(
19290 const BSTR Phonemes,
19291 VARIANT *IdArray) = 0;
19292
19293 virtual HRESULT STDMETHODCALLTYPE IdToPhone(
19294 const VARIANT IdArray,
19295 BSTR *Phonemes) = 0;
19296
19297};
19298#ifdef __CRT_UUID_DECL
19299__CRT_UUID_DECL(ISpeechPhoneConverter, 0xc3e4f353, 0x433f, 0x43d6, 0x89,0xa1, 0x6a,0x62,0xa7,0x05,0x4c,0x3d)
19300#endif
19301#else
19302typedef struct ISpeechPhoneConverterVtbl {
19303 BEGIN_INTERFACE
19304
19305 /*** IUnknown methods ***/
19306 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19307 ISpeechPhoneConverter *This,
19308 REFIID riid,
19309 void **ppvObject);
19310
19311 ULONG (STDMETHODCALLTYPE *AddRef)(
19312 ISpeechPhoneConverter *This);
19313
19314 ULONG (STDMETHODCALLTYPE *Release)(
19315 ISpeechPhoneConverter *This);
19316
19317 /*** IDispatch methods ***/
19318 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19319 ISpeechPhoneConverter *This,
19320 UINT *pctinfo);
19321
19322 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19323 ISpeechPhoneConverter *This,
19324 UINT iTInfo,
19325 LCID lcid,
19326 ITypeInfo **ppTInfo);
19327
19328 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19329 ISpeechPhoneConverter *This,
19330 REFIID riid,
19331 LPOLESTR *rgszNames,
19332 UINT cNames,
19333 LCID lcid,
19334 DISPID *rgDispId);
19335
19336 HRESULT (STDMETHODCALLTYPE *Invoke)(
19337 ISpeechPhoneConverter *This,
19338 DISPID dispIdMember,
19339 REFIID riid,
19340 LCID lcid,
19341 WORD wFlags,
19342 DISPPARAMS *pDispParams,
19343 VARIANT *pVarResult,
19344 EXCEPINFO *pExcepInfo,
19345 UINT *puArgErr);
19346
19347 /*** ISpeechPhoneConverter methods ***/
19348 HRESULT (STDMETHODCALLTYPE *get_LanguageId)(
19349 ISpeechPhoneConverter *This,
19350 SpeechLanguageId *LanguageId);
19351
19352 HRESULT (STDMETHODCALLTYPE *put_LanguageId)(
19353 ISpeechPhoneConverter *This,
19354 SpeechLanguageId LanguageId);
19355
19356 HRESULT (STDMETHODCALLTYPE *PhoneToId)(
19357 ISpeechPhoneConverter *This,
19358 const BSTR Phonemes,
19359 VARIANT *IdArray);
19360
19361 HRESULT (STDMETHODCALLTYPE *IdToPhone)(
19362 ISpeechPhoneConverter *This,
19363 const VARIANT IdArray,
19364 BSTR *Phonemes);
19365
19366 END_INTERFACE
19367} ISpeechPhoneConverterVtbl;
19368
19369interface ISpeechPhoneConverter {
19370 CONST_VTBL ISpeechPhoneConverterVtbl* lpVtbl;
19371};
19372
19373#ifdef COBJMACROS
19374#ifndef WIDL_C_INLINE_WRAPPERS
19375/*** IUnknown methods ***/
19376#define ISpeechPhoneConverter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19377#define ISpeechPhoneConverter_AddRef(This) (This)->lpVtbl->AddRef(This)
19378#define ISpeechPhoneConverter_Release(This) (This)->lpVtbl->Release(This)
19379/*** IDispatch methods ***/
19380#define ISpeechPhoneConverter_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19381#define ISpeechPhoneConverter_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19382#define ISpeechPhoneConverter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19383#define ISpeechPhoneConverter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19384/*** ISpeechPhoneConverter methods ***/
19385#define ISpeechPhoneConverter_get_LanguageId(This,LanguageId) (This)->lpVtbl->get_LanguageId(This,LanguageId)
19386#define ISpeechPhoneConverter_put_LanguageId(This,LanguageId) (This)->lpVtbl->put_LanguageId(This,LanguageId)
19387#define ISpeechPhoneConverter_PhoneToId(This,Phonemes,IdArray) (This)->lpVtbl->PhoneToId(This,Phonemes,IdArray)
19388#define ISpeechPhoneConverter_IdToPhone(This,IdArray,Phonemes) (This)->lpVtbl->IdToPhone(This,IdArray,Phonemes)
19389#else
19390/*** IUnknown methods ***/
19391static inline HRESULT ISpeechPhoneConverter_QueryInterface(ISpeechPhoneConverter* This,REFIID riid,void **ppvObject) {
19392 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19393}
19394static inline ULONG ISpeechPhoneConverter_AddRef(ISpeechPhoneConverter* This) {
19395 return This->lpVtbl->AddRef(This);
19396}
19397static inline ULONG ISpeechPhoneConverter_Release(ISpeechPhoneConverter* This) {
19398 return This->lpVtbl->Release(This);
19399}
19400/*** IDispatch methods ***/
19401static inline HRESULT ISpeechPhoneConverter_GetTypeInfoCount(ISpeechPhoneConverter* This,UINT *pctinfo) {
19402 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19403}
19404static inline HRESULT ISpeechPhoneConverter_GetTypeInfo(ISpeechPhoneConverter* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19405 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19406}
19407static inline HRESULT ISpeechPhoneConverter_GetIDsOfNames(ISpeechPhoneConverter* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19408 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19409}
19410static inline HRESULT ISpeechPhoneConverter_Invoke(ISpeechPhoneConverter* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19411 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19412}
19413/*** ISpeechPhoneConverter methods ***/
19414static inline HRESULT ISpeechPhoneConverter_get_LanguageId(ISpeechPhoneConverter* This,SpeechLanguageId *LanguageId) {
19415 return This->lpVtbl->get_LanguageId(This,LanguageId);
19416}
19417static inline HRESULT ISpeechPhoneConverter_put_LanguageId(ISpeechPhoneConverter* This,SpeechLanguageId LanguageId) {
19418 return This->lpVtbl->put_LanguageId(This,LanguageId);
19419}
19420static inline HRESULT ISpeechPhoneConverter_PhoneToId(ISpeechPhoneConverter* This,const BSTR Phonemes,VARIANT *IdArray) {
19421 return This->lpVtbl->PhoneToId(This,Phonemes,IdArray);
19422}
19423static inline HRESULT ISpeechPhoneConverter_IdToPhone(ISpeechPhoneConverter* This,const VARIANT IdArray,BSTR *Phonemes) {
19424 return This->lpVtbl->IdToPhone(This,IdArray,Phonemes);
19425}
19426#endif
19427#endif
19428
19429#endif
19430
19431
19432#endif /* __ISpeechPhoneConverter_INTERFACE_DEFINED__ */
19433
19434/*****************************************************************************
19435 * SpNotifyTranslator coclass
19436 */
19437
19438DEFINE_GUID(CLSID_SpNotifyTranslator, 0xe2ae5372, 0x5d40, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
19439
19440#ifdef __cplusplus
19441class DECLSPEC_UUID("e2ae5372-5d40-11d2-960e-00c04f8ee628") SpNotifyTranslator;
19442#ifdef __CRT_UUID_DECL
19443__CRT_UUID_DECL(SpNotifyTranslator, 0xe2ae5372, 0x5d40, 0x11d2, 0x96,0x0e, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
19444#endif
19445#endif
19446
19447/*****************************************************************************
19448 * SpObjectTokenCategory coclass
19449 */
19450
19451DEFINE_GUID(CLSID_SpObjectTokenCategory, 0xa910187f, 0x0c7a, 0x45ac, 0x92,0xcc, 0x59,0xed,0xaf,0xb7,0x7b,0x53);
19452
19453#ifdef __cplusplus
19454class DECLSPEC_UUID("a910187f-0c7a-45ac-92cc-59edafb77b53") SpObjectTokenCategory;
19455#ifdef __CRT_UUID_DECL
19456__CRT_UUID_DECL(SpObjectTokenCategory, 0xa910187f, 0x0c7a, 0x45ac, 0x92,0xcc, 0x59,0xed,0xaf,0xb7,0x7b,0x53)
19457#endif
19458#endif
19459
19460/*****************************************************************************
19461 * SpObjectToken coclass
19462 */
19463
19464DEFINE_GUID(CLSID_SpObjectToken, 0xef411752, 0x3736, 0x4cb4, 0x9c,0x8c, 0x8e,0xf4,0xcc,0xb5,0x8e,0xfe);
19465
19466#ifdef __cplusplus
19467class DECLSPEC_UUID("ef411752-3736-4cb4-9c8c-8ef4ccb58efe") SpObjectToken;
19468#ifdef __CRT_UUID_DECL
19469__CRT_UUID_DECL(SpObjectToken, 0xef411752, 0x3736, 0x4cb4, 0x9c,0x8c, 0x8e,0xf4,0xcc,0xb5,0x8e,0xfe)
19470#endif
19471#endif
19472
19473/*****************************************************************************
19474 * SpResourceManager coclass
19475 */
19476
19477DEFINE_GUID(CLSID_SpResourceManager, 0x96749373, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96);
19478
19479#ifdef __cplusplus
19480class DECLSPEC_UUID("96749373-3391-11d2-9ee3-00c04f797396") SpResourceManager;
19481#ifdef __CRT_UUID_DECL
19482__CRT_UUID_DECL(SpResourceManager, 0x96749373, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96)
19483#endif
19484#endif
19485
19486/*****************************************************************************
19487 * SpStreamFormatConverter coclass
19488 */
19489
19490DEFINE_GUID(CLSID_SpStreamFormatConverter, 0x7013943a, 0xe2ec, 0x11d2, 0xa0,0x86, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5);
19491
19492#ifdef __cplusplus
19493class DECLSPEC_UUID("7013943a-e2ec-11d2-a086-00c04f8ef9b5") SpStreamFormatConverter;
19494#ifdef __CRT_UUID_DECL
19495__CRT_UUID_DECL(SpStreamFormatConverter, 0x7013943a, 0xe2ec, 0x11d2, 0xa0,0x86, 0x00,0xc0,0x4f,0x8e,0xf9,0xb5)
19496#endif
19497#endif
19498
19499/*****************************************************************************
19500 * SpMMAudioEnum coclass
19501 */
19502
19503DEFINE_GUID(CLSID_SpMMAudioEnum, 0xab1890a0, 0xe91f, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0);
19504
19505#ifdef __cplusplus
19506class DECLSPEC_UUID("ab1890a0-e91f-11d2-bb91-00c04f8ee6c0") SpMMAudioEnum;
19507#ifdef __CRT_UUID_DECL
19508__CRT_UUID_DECL(SpMMAudioEnum, 0xab1890a0, 0xe91f, 0x11d2, 0xbb,0x91, 0x00,0xc0,0x4f,0x8e,0xe6,0xc0)
19509#endif
19510#endif
19511
19512/*****************************************************************************
19513 * SpMMAudioIn coclass
19514 */
19515
19516DEFINE_GUID(CLSID_SpMMAudioIn, 0xcf3d2e50, 0x53f2, 0x11d2, 0x96,0x0c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
19517
19518#ifdef __cplusplus
19519class DECLSPEC_UUID("cf3d2e50-53f2-11d2-960c-00c04f8ee628") SpMMAudioIn;
19520#ifdef __CRT_UUID_DECL
19521__CRT_UUID_DECL(SpMMAudioIn, 0xcf3d2e50, 0x53f2, 0x11d2, 0x96,0x0c, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
19522#endif
19523#endif
19524
19525/*****************************************************************************
19526 * SpMMAudioOut coclass
19527 */
19528
19529DEFINE_GUID(CLSID_SpMMAudioOut, 0xa8c680eb, 0x3d32, 0x11d2, 0x9e,0xe7, 0x00,0xc0,0x4f,0x79,0x73,0x96);
19530
19531#ifdef __cplusplus
19532class DECLSPEC_UUID("a8c680eb-3d32-11d2-9ee7-00c04f797396") SpMMAudioOut;
19533#ifdef __CRT_UUID_DECL
19534__CRT_UUID_DECL(SpMMAudioOut, 0xa8c680eb, 0x3d32, 0x11d2, 0x9e,0xe7, 0x00,0xc0,0x4f,0x79,0x73,0x96)
19535#endif
19536#endif
19537
19538/*****************************************************************************
19539 * SpStream coclass
19540 */
19541
19542DEFINE_GUID(CLSID_SpStream, 0x715d9c59, 0x4442, 0x11d2, 0x96,0x05, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
19543
19544#ifdef __cplusplus
19545class DECLSPEC_UUID("715d9c59-4442-11d2-9605-00c04f8ee628") SpStream;
19546#ifdef __CRT_UUID_DECL
19547__CRT_UUID_DECL(SpStream, 0x715d9c59, 0x4442, 0x11d2, 0x96,0x05, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
19548#endif
19549#endif
19550
19551/*****************************************************************************
19552 * SpVoice coclass
19553 */
19554
19555DEFINE_GUID(CLSID_SpVoice, 0x96749377, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96);
19556
19557#ifdef __cplusplus
19558class DECLSPEC_UUID("96749377-3391-11d2-9ee3-00c04f797396") SpVoice;
19559#ifdef __CRT_UUID_DECL
19560__CRT_UUID_DECL(SpVoice, 0x96749377, 0x3391, 0x11d2, 0x9e,0xe3, 0x00,0xc0,0x4f,0x79,0x73,0x96)
19561#endif
19562#endif
19563
19564/*****************************************************************************
19565 * SpSharedRecoContext coclass
19566 */
19567
19568DEFINE_GUID(CLSID_SpSharedRecoContext, 0x47206204, 0x5eca, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
19569
19570#ifdef __cplusplus
19571class DECLSPEC_UUID("47206204-5eca-11d2-960f-00c04f8ee628") SpSharedRecoContext;
19572#ifdef __CRT_UUID_DECL
19573__CRT_UUID_DECL(SpSharedRecoContext, 0x47206204, 0x5eca, 0x11d2, 0x96,0x0f, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
19574#endif
19575#endif
19576
19577/*****************************************************************************
19578 * SpInprocRecognizer coclass
19579 */
19580
19581DEFINE_GUID(CLSID_SpInprocRecognizer, 0x41b89b6b, 0x9399, 0x11d2, 0x96,0x23, 0x00,0xc0,0x4f,0x8e,0xe6,0x28);
19582
19583#ifdef __cplusplus
19584class DECLSPEC_UUID("41b89b6b-9399-11d2-9623-00c04f8ee628") SpInprocRecognizer;
19585#ifdef __CRT_UUID_DECL
19586__CRT_UUID_DECL(SpInprocRecognizer, 0x41b89b6b, 0x9399, 0x11d2, 0x96,0x23, 0x00,0xc0,0x4f,0x8e,0xe6,0x28)
19587#endif
19588#endif
19589
19590/*****************************************************************************
19591 * SpSharedRecognizer coclass
19592 */
19593
19594DEFINE_GUID(CLSID_SpSharedRecognizer, 0x3bee4890, 0x4fe9, 0x4a37, 0x8c,0x1e, 0x5e,0x7e,0x12,0x79,0x1c,0x1f);
19595
19596#ifdef __cplusplus
19597class DECLSPEC_UUID("3bee4890-4fe9-4a37-8c1e-5e7e12791c1f") SpSharedRecognizer;
19598#ifdef __CRT_UUID_DECL
19599__CRT_UUID_DECL(SpSharedRecognizer, 0x3bee4890, 0x4fe9, 0x4a37, 0x8c,0x1e, 0x5e,0x7e,0x12,0x79,0x1c,0x1f)
19600#endif
19601#endif
19602
19603/*****************************************************************************
19604 * SpLexicon coclass
19605 */
19606
19607DEFINE_GUID(CLSID_SpLexicon, 0x0655e396, 0x25d0, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c);
19608
19609#ifdef __cplusplus
19610class DECLSPEC_UUID("0655e396-25d0-11d3-9c26-00c04f8ef87c") SpLexicon;
19611#ifdef __CRT_UUID_DECL
19612__CRT_UUID_DECL(SpLexicon, 0x0655e396, 0x25d0, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c)
19613#endif
19614#endif
19615
19616/*****************************************************************************
19617 * SpUnCompressedLexicon coclass
19618 */
19619
19620DEFINE_GUID(CLSID_SpUnCompressedLexicon, 0xc9e37c15, 0xdf92, 0x4727, 0x85,0xd6, 0x72,0xe5,0xee,0xb6,0x99,0x5a);
19621
19622#ifdef __cplusplus
19623class DECLSPEC_UUID("c9e37c15-df92-4727-85d6-72e5eeb6995a") SpUnCompressedLexicon;
19624#ifdef __CRT_UUID_DECL
19625__CRT_UUID_DECL(SpUnCompressedLexicon, 0xc9e37c15, 0xdf92, 0x4727, 0x85,0xd6, 0x72,0xe5,0xee,0xb6,0x99,0x5a)
19626#endif
19627#endif
19628
19629/*****************************************************************************
19630 * SpCompressedLexicon coclass
19631 */
19632
19633DEFINE_GUID(CLSID_SpCompressedLexicon, 0x90903716, 0x2f42, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c);
19634
19635#ifdef __cplusplus
19636class DECLSPEC_UUID("90903716-2f42-11d3-9c26-00c04f8ef87c") SpCompressedLexicon;
19637#ifdef __CRT_UUID_DECL
19638__CRT_UUID_DECL(SpCompressedLexicon, 0x90903716, 0x2f42, 0x11d3, 0x9c,0x26, 0x00,0xc0,0x4f,0x8e,0xf8,0x7c)
19639#endif
19640#endif
19641
19642/*****************************************************************************
19643 * SpPhoneConverter coclass
19644 */
19645
19646DEFINE_GUID(CLSID_SpPhoneConverter, 0x9185f743, 0x1143, 0x4c28, 0x86,0xb5, 0xbf,0xf1,0x4f,0x20,0xe5,0xc8);
19647
19648#ifdef __cplusplus
19649class DECLSPEC_UUID("9185f743-1143-4c28-86b5-bff14f20e5c8") SpPhoneConverter;
19650#ifdef __CRT_UUID_DECL
19651__CRT_UUID_DECL(SpPhoneConverter, 0x9185f743, 0x1143, 0x4c28, 0x86,0xb5, 0xbf,0xf1,0x4f,0x20,0xe5,0xc8)
19652#endif
19653#endif
19654
19655/*****************************************************************************
19656 * SpNullPhoneConverter coclass
19657 */
19658
19659DEFINE_GUID(CLSID_SpNullPhoneConverter, 0x455f24e9, 0x7396, 0x4a16, 0x97,0x15, 0x7c,0x0f,0xdb,0xe3,0xef,0xe3);
19660
19661#ifdef __cplusplus
19662class DECLSPEC_UUID("455f24e9-7396-4a16-9715-7c0fdbe3efe3") SpNullPhoneConverter;
19663#ifdef __CRT_UUID_DECL
19664__CRT_UUID_DECL(SpNullPhoneConverter, 0x455f24e9, 0x7396, 0x4a16, 0x97,0x15, 0x7c,0x0f,0xdb,0xe3,0xef,0xe3)
19665#endif
19666#endif
19667
19668/*****************************************************************************
19669 * SpTextSelectionInformation coclass
19670 */
19671
19672DEFINE_GUID(CLSID_SpTextSelectionInformation, 0x0f92030a, 0xcbfd, 0x4ab8, 0xa1,0x64, 0xff,0x59,0x85,0x54,0x7f,0xf6);
19673
19674#ifdef __cplusplus
19675class DECLSPEC_UUID("0f92030a-cbfd-4ab8-a164-ff5985547ff6") SpTextSelectionInformation;
19676#ifdef __CRT_UUID_DECL
19677__CRT_UUID_DECL(SpTextSelectionInformation, 0x0f92030a, 0xcbfd, 0x4ab8, 0xa1,0x64, 0xff,0x59,0x85,0x54,0x7f,0xf6)
19678#endif
19679#endif
19680
19681/*****************************************************************************
19682 * SpPhraseInfoBuilder coclass
19683 */
19684
19685DEFINE_GUID(CLSID_SpPhraseInfoBuilder, 0xc23fc28d, 0xc55f, 0x4720, 0x8b,0x32, 0x91,0xf7,0x3c,0x2b,0xd5,0xd1);
19686
19687#ifdef __cplusplus
19688class DECLSPEC_UUID("c23fc28d-c55f-4720-8b32-91f73c2bd5d1") SpPhraseInfoBuilder;
19689#ifdef __CRT_UUID_DECL
19690__CRT_UUID_DECL(SpPhraseInfoBuilder, 0xc23fc28d, 0xc55f, 0x4720, 0x8b,0x32, 0x91,0xf7,0x3c,0x2b,0xd5,0xd1)
19691#endif
19692#endif
19693
19694/*****************************************************************************
19695 * SpAudioFormat coclass
19696 */
19697
19698DEFINE_GUID(CLSID_SpAudioFormat, 0x9ef96870, 0xe160, 0x4792, 0x82,0x0d, 0x48,0xcf,0x06,0x49,0xe4,0xec);
19699
19700#ifdef __cplusplus
19701class DECLSPEC_UUID("9ef96870-e160-4792-820d-48cf0649e4ec") SpAudioFormat;
19702#ifdef __CRT_UUID_DECL
19703__CRT_UUID_DECL(SpAudioFormat, 0x9ef96870, 0xe160, 0x4792, 0x82,0x0d, 0x48,0xcf,0x06,0x49,0xe4,0xec)
19704#endif
19705#endif
19706
19707/*****************************************************************************
19708 * SpWaveFormatEx coclass
19709 */
19710
19711DEFINE_GUID(CLSID_SpWaveFormatEx, 0xc79a574c, 0x63be, 0x44b9, 0x80,0x1f, 0x28,0x3f,0x87,0xf8,0x98,0xbe);
19712
19713#ifdef __cplusplus
19714class DECLSPEC_UUID("c79a574c-63be-44b9-801f-283f87f898be") SpWaveFormatEx;
19715#ifdef __CRT_UUID_DECL
19716__CRT_UUID_DECL(SpWaveFormatEx, 0xc79a574c, 0x63be, 0x44b9, 0x80,0x1f, 0x28,0x3f,0x87,0xf8,0x98,0xbe)
19717#endif
19718#endif
19719
19720/*****************************************************************************
19721 * SpInProcRecoContext coclass
19722 */
19723
19724DEFINE_GUID(CLSID_SpInProcRecoContext, 0x73ad6842, 0xace0, 0x45e8, 0xa4,0xdd, 0x87,0x95,0x88,0x1a,0x2c,0x2a);
19725
19726#ifdef __cplusplus
19727class DECLSPEC_UUID("73ad6842-ace0-45e8-a4dd-8795881a2c2a") SpInProcRecoContext;
19728#ifdef __CRT_UUID_DECL
19729__CRT_UUID_DECL(SpInProcRecoContext, 0x73ad6842, 0xace0, 0x45e8, 0xa4,0xdd, 0x87,0x95,0x88,0x1a,0x2c,0x2a)
19730#endif
19731#endif
19732
19733/*****************************************************************************
19734 * SpCustomStream coclass
19735 */
19736
19737DEFINE_GUID(CLSID_SpCustomStream, 0x8dbef13f, 0x1948, 0x4aa8, 0x8c,0xf0, 0x04,0x8e,0xeb,0xed,0x95,0xd8);
19738
19739#ifdef __cplusplus
19740class DECLSPEC_UUID("8dbef13f-1948-4aa8-8cf0-048eebed95d8") SpCustomStream;
19741#ifdef __CRT_UUID_DECL
19742__CRT_UUID_DECL(SpCustomStream, 0x8dbef13f, 0x1948, 0x4aa8, 0x8c,0xf0, 0x04,0x8e,0xeb,0xed,0x95,0xd8)
19743#endif
19744#endif
19745
19746/*****************************************************************************
19747 * SpFileStream coclass
19748 */
19749
19750DEFINE_GUID(CLSID_SpFileStream, 0x947812b3, 0x2ae1, 0x4644, 0xba,0x86, 0x9e,0x90,0xde,0xd7,0xec,0x91);
19751
19752#ifdef __cplusplus
19753class DECLSPEC_UUID("947812b3-2ae1-4644-ba86-9e90ded7ec91") SpFileStream;
19754#ifdef __CRT_UUID_DECL
19755__CRT_UUID_DECL(SpFileStream, 0x947812b3, 0x2ae1, 0x4644, 0xba,0x86, 0x9e,0x90,0xde,0xd7,0xec,0x91)
19756#endif
19757#endif
19758
19759/*****************************************************************************
19760 * SpMemoryStream coclass
19761 */
19762
19763DEFINE_GUID(CLSID_SpMemoryStream, 0x5fb7ef7d, 0xdff4, 0x468a, 0xb6,0xb7, 0x2f,0xcb,0xd1,0x88,0xf9,0x94);
19764
19765#ifdef __cplusplus
19766class DECLSPEC_UUID("5fb7ef7d-dff4-468a-b6b7-2fcbd188f994") SpMemoryStream;
19767#ifdef __CRT_UUID_DECL
19768__CRT_UUID_DECL(SpMemoryStream, 0x5fb7ef7d, 0xdff4, 0x468a, 0xb6,0xb7, 0x2f,0xcb,0xd1,0x88,0xf9,0x94)
19769#endif
19770#endif
19771
19772#endif /* __SpeechLib_LIBRARY_DEFINED__ */
19773/* Begin additional prototypes for all interfaces */
19774
19775ULONG __RPC_USER HWND_UserSize (ULONG *, ULONG, HWND *);
19776unsigned char * __RPC_USER HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
19777unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
19778void __RPC_USER HWND_UserFree (ULONG *, HWND *);
19779ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *);
19780unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
19781unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
19782void __RPC_USER BSTR_UserFree (ULONG *, BSTR *);
19783ULONG __RPC_USER VARIANT_UserSize (ULONG *, ULONG, VARIANT *);
19784unsigned char * __RPC_USER VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *);
19785unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
19786void __RPC_USER VARIANT_UserFree (ULONG *, VARIANT *);
19787
19788/* End additional prototypes */
19789
19790#ifdef __cplusplus
19791}
19792#endif
19793
19794#endif /* __sapi51_h__ */