[PATCH v2 1/2] include: Define ISpeechSynthesizer interface.

Rémi Bernon rbernon at codeweavers.com
Tue Nov 30 05:18:58 CST 2021


Hi Paul!

On 11/23/21 21:02, Paul Gofman wrote:
> +namespace Windows {
> +    namespace Media {
> +        apicontract MediaControlContract;
> +        interface IMediaControl;
> +    }
> +}
> +
> +namespace Windows {
> +    namespace Media {
> +        [contractversion(1.0)]
> +        apicontract MediaControlContract {
> +        }
> +

It doesn't look like you actually need this one?

> +            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
> +            [exclusiveto(Windows.Media.SpeechSynthesis.SpeechSynthesisStream)]
> +            [uuid(83e46e93-244c-4622-ba0b-6229c4d0d65d)]
> +            interface ISpeechSynthesisStream : IInspectable
> +            {
> +                [propget] HRESULT Markers([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Media.IMediaMarker*>** value);
> +            }
> +

The interface normally specifies a requires statements. Although I don't 
really know what use it has, I don't see a reason not to add it, so the 
interface definition fully matches the SDK.

It's only a matter of forward declaring the corresponding interfaces 
above (and you already have IClosable), adding the requires here, and 
the interfaces to the SpeechSynthesisStream class so IMHO it's not too 
verbose.

-- 
Rémi Bernon <rbernon at codeweavers.com>



More information about the wine-devel mailing list