// // Copyright (c) Microsoft Corporation. All rights reserved. // // // File generated by WinMDIDL version 8.00.0021 // import "inspectable.idl"; import "AsyncInfo.idl"; import "EventToken.idl"; import "windowscontracts.idl"; import "Windows.Foundation.idl"; import "Windows.Devices.Enumeration.idl"; import "Windows.Storage.Streams.idl"; import "Windows.UI.Popups.idl"; // Forward Declare namespace Windows { namespace Devices { namespace Enumeration { runtimeclass DeviceInformation; runtimeclass DevicePickerAppearance; } } } namespace Windows { namespace Foundation { interface IClosable; typedef struct Rect Rect; apicontract UniversalApiContract; runtimeclass Uri; } } namespace Windows { namespace Storage { namespace Streams { interface IRandomAccessStreamWithContentType; } } } namespace Windows { namespace UI { namespace Popups { typedef enum Placement Placement; } } } namespace Windows { namespace Media { namespace Casting { typedef enum CastingConnectionErrorStatus CastingConnectionErrorStatus; typedef enum CastingConnectionState CastingConnectionState; typedef enum CastingPlaybackTypes CastingPlaybackTypes; interface ICastingConnection; interface ICastingConnectionErrorOccurredEventArgs; interface ICastingDevice; interface ICastingDevicePicker; interface ICastingDevicePickerFilter; interface ICastingDeviceSelectedEventArgs; interface ICastingDeviceStatics; interface ICastingSource; runtimeclass CastingConnection; runtimeclass CastingConnectionErrorOccurredEventArgs; runtimeclass CastingDevice; runtimeclass CastingDevicePicker; runtimeclass CastingDevicePickerFilter; runtimeclass CastingDeviceSelectedEventArgs; runtimeclass CastingSource; } } } // Generic instantiations namespace Windows { namespace Media { namespace Casting { declare { interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVector; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; } } } } // Type definition namespace Windows { namespace Media { namespace Casting { [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum CastingConnectionErrorStatus { Succeeded = 0, DeviceDidNotRespond = 1, DeviceError = 2, DeviceLocked = 3, ProtectedPlaybackFailed = 4, InvalidCastingSource = 5, Unknown = 6 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum CastingConnectionState { Disconnected = 0, Connected = 1, Rendering = 2, Disconnecting = 3, Connecting = 4 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [flags] enum CastingPlaybackTypes { None = 0x0, Audio = 0x1, Video = 0x2, Picture = 0x4 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Casting.CastingConnection)] [uuid(CD951653-C2F1-4498-8B78-5FB4CD3640DD)] interface ICastingConnection : IInspectable requires Windows.Foundation.IClosable { [propget] HRESULT State([out] [retval] Windows.Media.Casting.CastingConnectionState* value); [propget] HRESULT Device([out] [retval] Windows.Media.Casting.CastingDevice** value); [propget] HRESULT Source([out] [retval] Windows.Media.Casting.CastingSource** value); [propput] HRESULT Source([in] Windows.Media.Casting.CastingSource* value); [eventadd] HRESULT StateChanged([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT StateChanged([in] EventRegistrationToken token); [eventadd] HRESULT ErrorOccurred([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT ErrorOccurred([in] EventRegistrationToken token); HRESULT RequestStartCastingAsync([in] Windows.Media.Casting.CastingSource* value, [out] [retval] Windows.Foundation.IAsyncOperation** operation); HRESULT DisconnectAsync([out] [retval] Windows.Foundation.IAsyncOperation** operation); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Casting.CastingConnectionErrorOccurredEventArgs)] [uuid(A7FB3C69-8719-4F00-81FB-961863C79A32)] interface ICastingConnectionErrorOccurredEventArgs : IInspectable { [propget] HRESULT ErrorStatus([out] [retval] Windows.Media.Casting.CastingConnectionErrorStatus* value); [propget] HRESULT Message([out] [retval] HSTRING* value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Casting.CastingDevice)] [uuid(DE721C83-4A43-4AD1-A6D2-2492A796C3F2)] interface ICastingDevice : IInspectable { [propget] HRESULT Id([out] [retval] HSTRING* value); [propget] HRESULT FriendlyName([out] [retval] HSTRING* value); [propget] HRESULT Icon([out] [retval] Windows.Storage.Streams.IRandomAccessStreamWithContentType** value); HRESULT GetSupportedCastingPlaybackTypesAsync([out] [retval] Windows.Foundation.IAsyncOperation** operation); HRESULT CreateCastingConnection([out] [retval] Windows.Media.Casting.CastingConnection** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Casting.CastingDevicePicker)] [uuid(DCD39924-0591-49BE-AACB-4B82EE756A95)] interface ICastingDevicePicker : IInspectable { [propget] HRESULT Filter([out] [retval] Windows.Media.Casting.CastingDevicePickerFilter** value); [propget] HRESULT Appearance([out] [retval] Windows.Devices.Enumeration.DevicePickerAppearance** value); [eventadd] HRESULT CastingDeviceSelected([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT CastingDeviceSelected([in] EventRegistrationToken token); [eventadd] HRESULT CastingDevicePickerDismissed([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT CastingDevicePickerDismissed([in] EventRegistrationToken token); [overload("Show")] HRESULT Show([in] Windows.Foundation.Rect selection); [overload("Show")] HRESULT ShowWithPlacement([in] Windows.Foundation.Rect selection, [in] Windows.UI.Popups.Placement preferredPlacement); HRESULT Hide(); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Casting.CastingDevicePickerFilter)] [uuid(BE8C619C-B563-4354-AE33-9FDAAD8C6291)] interface ICastingDevicePickerFilter : IInspectable { [propget] HRESULT SupportsAudio([out] [retval] boolean* value); [propput] HRESULT SupportsAudio([in] boolean value); [propget] HRESULT SupportsVideo([out] [retval] boolean* value); [propput] HRESULT SupportsVideo([in] boolean value); [propget] HRESULT SupportsPictures([out] [retval] boolean* value); [propput] HRESULT SupportsPictures([in] boolean value); [propget] HRESULT SupportedCastingSources([out] [retval] Windows.Foundation.Collections.IVector** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Casting.CastingDeviceSelectedEventArgs)] [uuid(DC439E86-DD57-4D0D-9400-AF45E4FB3663)] interface ICastingDeviceSelectedEventArgs : IInspectable { [propget] HRESULT SelectedCastingDevice([out] [retval] Windows.Media.Casting.CastingDevice** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Casting.CastingDevice)] [uuid(E7D958D7-4D13-4237-A365-4C4F6A4CFD2F)] interface ICastingDeviceStatics : IInspectable { HRESULT GetDeviceSelector([in] Windows.Media.Casting.CastingPlaybackTypes type, [out] [retval] HSTRING* value); HRESULT GetDeviceSelectorFromCastingSourceAsync([in] Windows.Media.Casting.CastingSource* castingSource, [out] [retval] Windows.Foundation.IAsyncOperation** operation); HRESULT FromIdAsync([in] HSTRING value, [out] [retval] Windows.Foundation.IAsyncOperation** operation); HRESULT DeviceInfoSupportsCastingAsync([in] Windows.Devices.Enumeration.DeviceInformation* device, [out] [retval] Windows.Foundation.IAsyncOperation** operation); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Media.Casting.CastingSource)] [uuid(F429EA72-3467-47E6-A027-522923E9D727)] interface ICastingSource : IInspectable { [propget] HRESULT PreferredSourceUri([out] [retval] Windows.Foundation.Uri** value); [propput] HRESULT PreferredSourceUri([in] Windows.Foundation.Uri* value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass CastingConnection { [default] interface Windows.Media.Casting.ICastingConnection; interface Windows.Foundation.IClosable; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass CastingConnectionErrorOccurredEventArgs { [default] interface Windows.Media.Casting.ICastingConnectionErrorOccurredEventArgs; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Media.Casting.ICastingDeviceStatics, Windows.Foundation.UniversalApiContract, 1.0)] [threading(both)] runtimeclass CastingDevice { [default] interface Windows.Media.Casting.ICastingDevice; } [activatable(Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass CastingDevicePicker { [default] interface Windows.Media.Casting.ICastingDevicePicker; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass CastingDevicePickerFilter { [default] interface Windows.Media.Casting.ICastingDevicePickerFilter; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass CastingDeviceSelectedEventArgs { [default] interface Windows.Media.Casting.ICastingDeviceSelectedEventArgs; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass CastingSource { [default] interface Windows.Media.Casting.ICastingSource; } } } }