| /* |
| * Copyright 2015 Jacek Caban for CodeWeavers |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Lesser General Public |
| * License as published by the Free Software Foundation; either |
| * version 2.1 of the License, or (at your option) any later version. |
| * |
| * This library is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| * Lesser General Public License for more details. |
| * |
| * You should have received a copy of the GNU Lesser General Public |
| * License along with this library; if not, write to the Free Software |
| * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA |
| */ |
| |
| #ifdef __WIDL__ |
| #pragma winrt ns_prefix |
| #endif |
| |
| import "inspectable.idl"; |
| import "asyncinfo.idl"; |
| import "windowscontracts.idl"; |
| import "eventtoken.idl"; |
| /* import "ivectorchangedeventargs.idl"; */ |
| import "windows.foundation.collections.idl"; |
| |
| namespace Windows.Foundation.Collections { |
| interface IPropertySet; |
| |
| declare { |
| interface Windows.Foundation.Collections.IKeyValuePair<HSTRING, IInspectable *>; |
| interface Windows.Foundation.Collections.IIterable<Windows.Foundation.Collections.IKeyValuePair<HSTRING, IInspectable *> *>; |
| interface Windows.Foundation.Collections.IIterator<Windows.Foundation.Collections.IKeyValuePair<HSTRING, IInspectable *> *>; |
| interface Windows.Foundation.Collections.IMapChangedEventArgs<HSTRING>; |
| interface Windows.Foundation.Collections.MapChangedEventHandler<HSTRING, IInspectable *>; |
| interface Windows.Foundation.Collections.IMap<HSTRING, IInspectable *>; |
| interface Windows.Foundation.Collections.IMapView<HSTRING, IInspectable *>; |
| interface Windows.Foundation.Collections.IObservableMap<HSTRING, IInspectable *>; |
| } |
| |
| [ |
| contract(Windows.Foundation.FoundationContract, 1.0), |
| uuid(8a43ed9f-f4e6-4421-acf9-1dab2986820c) |
| ] |
| interface IPropertySet : IInspectable |
| requires Windows.Foundation.Collections.IObservableMap<HSTRING, IInspectable *>, |
| Windows.Foundation.Collections.IMap<HSTRING, IInspectable *>, |
| Windows.Foundation.Collections.IIterable<Windows.Foundation.Collections.IKeyValuePair<HSTRING, IInspectable *> *> |
| { |
| } |
| } |
| |
| namespace Windows.Foundation { |
| typedef enum PropertyType PropertyType; |
| typedef struct Point Point; |
| typedef struct Size Size; |
| typedef struct Rect Rect; |
| typedef struct DateTime DateTime; |
| typedef struct TimeSpan TimeSpan; |
| interface IAsyncAction; |
| interface IClosable; |
| interface IDeferral; |
| interface IDeferralFactory; |
| interface IMemoryBuffer; |
| interface IMemoryBufferFactory; |
| interface IMemoryBufferReference; |
| interface IStringable; |
| runtimeclass Deferral; |
| runtimeclass MemoryBuffer; |
| |
| declare { |
| interface Windows.Foundation.Collections.IIterable<HSTRING>; |
| interface Windows.Foundation.Collections.IIterable<IInspectable *>; |
| interface Windows.Foundation.Collections.IIterator<HSTRING>; |
| interface Windows.Foundation.Collections.IIterator<IInspectable *>; |
| interface Windows.Foundation.Collections.IVectorView<HSTRING>; |
| interface Windows.Foundation.Collections.IVectorView<IInspectable *>; |
| interface Windows.Foundation.Collections.IVector<HSTRING>; |
| interface Windows.Foundation.Collections.IVector<IInspectable *>; |
| interface Windows.Foundation.Collections.IMapView<HSTRING, Windows.Foundation.Collections.IVectorView<HSTRING> *>; |
| interface Windows.Foundation.EventHandler<IInspectable *>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<IInspectable *>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<boolean>; |
| interface Windows.Foundation.IAsyncOperation<IInspectable *>; |
| interface Windows.Foundation.IAsyncOperation<boolean>; |
| interface Windows.Foundation.IReference<INT32>; |
| interface Windows.Foundation.TypedEventHandler<IInspectable *, IInspectable *>; |
| interface Windows.Foundation.TypedEventHandler<Windows.Foundation.IMemoryBufferReference *, IInspectable *>; |
| } |
| |
| [ |
| contract(Windows.Foundation.FoundationContract, 1.0), |
| uuid(a4ed5c81-76c9-40bd-8be6-b1d90fb20ae7) |
| ] |
| delegate HRESULT AsyncActionCompletedHandler([in] Windows.Foundation.IAsyncAction *action, [in] AsyncStatus status); |
| |
| [ |
| contract(Windows.Foundation.FoundationContract, 1.0), |
| uuid(ed32a372-f3c8-4faa-9cfb-470148da3888) |
| ] |
| delegate HRESULT DeferralCompletedHandler(); |
| |
| [contract(Windows.Foundation.FoundationContract, 1.0)] |
| enum PropertyType |
| { |
| Empty = 0, |
| UInt8 = 1, |
| Int16 = 2, |
| UInt16 = 3, |
| Int32 = 4, |
| UInt32 = 5, |
| Int64 = 6, |
| UInt64 = 7, |
| Single = 8, |
| Double = 9, |
| Char16 = 10, |
| Boolean = 11, |
| String = 12, |
| Inspectable = 13, |
| DateTime = 14, |
| TimeSpan = 15, |
| Guid = 16, |
| Point = 17, |
| Size = 18, |
| Rect = 19, |
| OtherType = 20, |
| UInt8Array = 1025, |
| Int16Array = 1026, |
| UInt16Array = 1027, |
| Int32Array = 1028, |
| UInt32Array = 1029, |
| Int64Array = 1030, |
| UInt64Array = 1031, |
| SingleArray = 1032, |
| DoubleArray = 1033, |
| Char16Array = 1034, |
| BooleanArray = 1035, |
| StringArray = 1036, |
| InspectableArray = 1037, |
| DateTimeArray = 1038, |
| TimeSpanArray = 1039, |
| GuidArray = 1040, |
| PointArray = 1041, |
| SizeArray = 1042, |
| RectArray = 1043, |
| OtherTypeArray = 1044, |
| }; |
| |
| [contract(Windows.Foundation.FoundationContract, 1.0)] |
| struct Point |
| { |
| FLOAT X; |
| FLOAT Y; |
| }; |
| |
| [contract(Windows.Foundation.FoundationContract, 1.0)] |
| struct Size |
| { |
| FLOAT Width; |
| FLOAT Height; |
| }; |
| |
| [contract(Windows.Foundation.FoundationContract, 1.0)] |
| struct Rect |
| { |
| FLOAT X; |
| FLOAT Y; |
| FLOAT Width; |
| FLOAT Height; |
| }; |
| |
| [contract(Windows.Foundation.FoundationContract, 1.0)] |
| struct DateTime |
| { |
| INT64 UniversalTime; |
| }; |
| |
| [contract(Windows.Foundation.FoundationContract, 1.0)] |
| struct TimeSpan |
| { |
| INT64 Duration; |
| }; |
| |
| [ |
| contract(Windows.Foundation.FoundationContract, 1.0), |
| uuid(96369f54-8eb6-48f0-abce-c1b211e627c3) |
| ] |
| interface IStringable : IInspectable |
| { |
| HRESULT ToString([out, retval] HSTRING *value); |
| } |
| |
| [ |
| contract(Windows.Foundation.FoundationContract, 1.0), |
| uuid(30d5a829-7fa4-4026-83bb-d75bae4ea99e) |
| ] |
| interface IClosable : IInspectable |
| { |
| HRESULT Close(); |
| } |
| |
| [ |
| contract(Windows.Foundation.FoundationContract, 1.0), |
| exclusiveto(Windows.Foundation.Deferral), |
| uuid(d6269732-3b7f-46a7-b40b-4fdca2a2c693) |
| ] |
| interface IDeferral : IInspectable |
| requires Windows.Foundation.IClosable |
| { |
| HRESULT Complete(); |
| } |
| |
| [ |
| contract(Windows.Foundation.FoundationContract, 1.0), |
| exclusiveto(Windows.Foundation.Deferral), |
| uuid(65a1ecc5-3fb5-4832-8ca9-f061b281d13a) |
| ] |
| interface IDeferralFactory : IInspectable |
| { |
| HRESULT Create([in] Windows.Foundation.DeferralCompletedHandler *handler, [out, retval] Windows.Foundation.Deferral **result); |
| } |
| |
| [ |
| contract(Windows.Foundation.FoundationContract, 1.0), |
| uuid(5a648006-843a-4da9-865b-9d26e5dfad7b) |
| ] |
| interface IAsyncAction : IInspectable |
| requires IAsyncInfo |
| { |
| [propput] HRESULT Completed([in] Windows.Foundation.AsyncActionCompletedHandler *handler); |
| [propget] HRESULT Completed([out, retval] Windows.Foundation.AsyncActionCompletedHandler **handler); |
| HRESULT GetResults(); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| uuid(fbc4dd2a-245b-11e4-af98-689423260cf8) |
| ] |
| interface IMemoryBuffer : IInspectable |
| requires Windows.Foundation.IClosable |
| { |
| HRESULT CreateReference([out, retval] Windows.Foundation.IMemoryBufferReference **reference); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Foundation.MemoryBuffer), |
| uuid(fbc4dd2b-245b-11e4-af98-689423260cf8) |
| ] |
| interface IMemoryBufferFactory : IInspectable |
| { |
| HRESULT Create([in, range(0x00000000, 0x7fffffff)] UINT32 capacity, |
| [out, retval] Windows.Foundation.MemoryBuffer **value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| uuid(fbc4dd29-245b-11e4-af98-689423260cf8) |
| ] |
| interface IMemoryBufferReference : IInspectable |
| requires Windows.Foundation.IClosable |
| { |
| [propget] HRESULT Capacity([out, retval] UINT32 *value); |
| [eventadd] HRESULT Closed([in] Windows.Foundation.TypedEventHandler<Windows.Foundation.IMemoryBufferReference *, IInspectable *> *handler, |
| [out, retval] EventRegistrationToken *cookie); |
| [eventremove] HRESULT Closed([in] EventRegistrationToken cookie); |
| } |
| |
| [ |
| activatable(Windows.Foundation.IDeferralFactory, Windows.Foundation.FoundationContract, 1.0), |
| contract(Windows.Foundation.FoundationContract, 1.0), |
| marshaling_behavior(agile) |
| ] |
| runtimeclass Deferral |
| { |
| [default] interface Windows.Foundation.IDeferral; |
| interface Windows.Foundation.IClosable; |
| } |
| |
| [ |
| activatable(Windows.Foundation.IMemoryBufferFactory, Windows.Foundation.UniversalApiContract, 1.0), |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| marshaling_behavior(agile), |
| threading(both) |
| ] |
| runtimeclass MemoryBuffer |
| { |
| [default] interface Windows.Foundation.IMemoryBuffer; |
| interface Windows.Foundation.IClosable; |
| } |
| } |