source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/windows.media.speechsynthesis.idl

Last change on this file was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 4.4 KB
Line 
1/*
2 * Copyright 2020 Rémi Bernon for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19#ifdef __WIDL__
20#pragma winrt ns_prefix
21#endif
22
23import "inspectable.idl";
24import "windows.foundation.idl";
25
26namespace Windows {
27 namespace Foundation {
28 interface IClosable;
29 }
30 namespace Media {
31 namespace SpeechSynthesis {
32 typedef enum VoiceGender VoiceGender;
33 interface IInstalledVoicesStatic;
34 interface IInstalledVoicesStatic2;
35 interface ISpeechSynthesizer;
36 interface ISpeechSynthesizer2;
37 interface IVoiceInformation;
38 runtimeclass SpeechSynthesizer;
39 runtimeclass VoiceInformation;
40 }
41 }
42}
43
44namespace Windows {
45 namespace Media {
46 namespace SpeechSynthesis {
47 declare {
48 interface Windows.Foundation.Collections.IIterator<Windows.Media.SpeechSynthesis.VoiceInformation*>;
49 interface Windows.Foundation.Collections.IIterable<Windows.Media.SpeechSynthesis.VoiceInformation*>;
50 interface Windows.Foundation.Collections.IVectorView<Windows.Media.SpeechSynthesis.VoiceInformation*>;
51 }
52 }
53 }
54}
55
56namespace Windows {
57 namespace Media {
58 namespace SpeechSynthesis {
59 [contract(Windows.Foundation.UniversalApiContract, 1.0)]
60 enum VoiceGender
61 {
62 Male = 0,
63 Female = 1
64 };
65
66 [
67 contract(Windows.Foundation.UniversalApiContract, 1.0),
68 exclusiveto(Windows.Media.SpeechSynthesis.VoiceInformation),
69 uuid(b127d6a4-1291-4604-aa9c-83134083352c)
70 ]
71 interface IVoiceInformation : IInspectable
72 {
73 [propget] HRESULT DisplayName([out] [retval] HSTRING* value);
74 [propget] HRESULT Id([out] [retval] HSTRING* value);
75 [propget] HRESULT Language([out] [retval] HSTRING* value);
76 [propget] HRESULT Description([out] [retval] HSTRING* value);
77 [propget] HRESULT Gender([out] [retval] VoiceGender* value);
78 }
79
80 [
81 contract(Windows.Foundation.UniversalApiContract, 1.0),
82 exclusiveto(Windows.Media.SpeechSynthesis.SpeechSynthesizer),
83 uuid(7d526ecc-7533-4c3f-85be-888c2baeebdc)
84 ]
85 interface IInstalledVoicesStatic : IInspectable
86 {
87 [propget] HRESULT AllVoices([out, retval] Windows.Foundation.Collections.IVectorView<VoiceInformation*>** value);
88 [propget] HRESULT DefaultVoice([out, retval] VoiceInformation** value);
89 }
90
91 [
92 contract(Windows.Foundation.UniversalApiContract, 1.0),
93 marshaling_behavior(agile)
94 ]
95 runtimeclass VoiceInformation
96 {
97 [default] interface Windows.Media.SpeechSynthesis.IVoiceInformation;
98 }
99
100 [
101 activatable(Windows.Foundation.UniversalApiContract, 1.0),
102 contract(Windows.Foundation.UniversalApiContract, 1.0),
103 marshaling_behavior(agile),
104 static(Windows.Media.SpeechSynthesis.IInstalledVoicesStatic, Windows.Foundation.UniversalApiContract, 1.0),
105 static(Windows.Media.SpeechSynthesis.IInstalledVoicesStatic2, Windows.Foundation.UniversalApiContract, 5.0)
106 ]
107 runtimeclass SpeechSynthesizer
108 {
109 [default] interface Windows.Media.SpeechSynthesis.ISpeechSynthesizer;
110 interface Windows.Foundation.IClosable;
111 [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Media.SpeechSynthesis.ISpeechSynthesizer2;
112 }
113 }
114 }
115}
Note: See TracBrowser for help on using the repository browser.