// // 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.Foundation.Numerics.idl"; import "Windows.Storage.Streams.idl"; import "Windows.System.idl"; import "Windows.UI.idl"; // Forward Declare namespace Windows { namespace Foundation { interface IAsyncAction; interface IClosable; } } namespace Windows { namespace Foundation { namespace Numerics { typedef struct Vector3 Vector3; } } } namespace Windows { namespace Foundation { typedef struct TimeSpan TimeSpan; apicontract UniversalApiContract; } } namespace Windows { namespace Storage { namespace Streams { interface IBuffer; } } } namespace Windows { namespace System { typedef enum VirtualKey VirtualKey; } } namespace Windows { namespace UI { typedef struct Color Color; } } namespace Windows { namespace Devices { namespace Lights { typedef enum LampArrayKind LampArrayKind; typedef enum LampPurposes LampPurposes; interface ILamp; interface ILampArray; interface ILampArray2; interface ILampArrayStatics; interface ILampAvailabilityChangedEventArgs; interface ILampInfo; interface ILampStatics; runtimeclass Lamp; runtimeclass LampArray; runtimeclass LampAvailabilityChangedEventArgs; runtimeclass LampInfo; } } } // Generic instantiations namespace Windows { namespace Devices { namespace Lights { declare { interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; } } } } // Type definition namespace Windows { namespace Devices { namespace Lights { [contract(Windows.Foundation.UniversalApiContract, 7.0)] enum LampArrayKind { Undefined = 0, Keyboard = 1, Mouse = 2, GameController = 3, Peripheral = 4, Scene = 5, Notification = 6, Chassis = 7, Wearable = 8, Furniture = 9, Art = 10, [contract(Windows.Foundation.UniversalApiContract, 15.0)] Headset = 11, [contract(Windows.Foundation.UniversalApiContract, 19.0)] Microphone = 12, [contract(Windows.Foundation.UniversalApiContract, 19.0)] Speaker = 13 }; [contract(Windows.Foundation.UniversalApiContract, 7.0)] [flags] enum LampPurposes { Undefined = 0x0, Control = 0x1, Accent = 0x2, Branding = 0x4, Status = 0x8, Illumination = 0x10, Presentation = 0x20 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Lights.Lamp)] [uuid(047D5B9A-EA45-4B2B-B1A2-14DFF00BDE7B)] interface ILamp : IInspectable requires Windows.Foundation.IClosable { [propget] HRESULT DeviceId([out] [retval] HSTRING* value); [propget] HRESULT IsEnabled([out] [retval] boolean* value); [propput] HRESULT IsEnabled([in] boolean value); [propget] HRESULT BrightnessLevel([out] [retval] FLOAT* value); [propput] HRESULT BrightnessLevel([in] FLOAT value); [propget] HRESULT IsColorSettable([out] [retval] boolean* value); [propget] HRESULT Color([out] [retval] Windows.UI.Color* value); [propput] HRESULT Color([in] Windows.UI.Color value); [eventadd] HRESULT AvailabilityChanged([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT AvailabilityChanged([in] EventRegistrationToken token); } [contract(Windows.Foundation.UniversalApiContract, 7.0)] [exclusiveto(Windows.Devices.Lights.LampArray)] [uuid(7ACE9787-C8A0-4E95-A1E0-D58676538649)] interface ILampArray : IInspectable { [propget] HRESULT DeviceId([out] [retval] HSTRING* value); [propget] HRESULT HardwareVendorId([out] [retval] UINT16* value); [propget] HRESULT HardwareProductId([out] [retval] UINT16* value); [propget] HRESULT HardwareVersion([out] [retval] UINT16* value); [propget] HRESULT LampArrayKind([out] [retval] Windows.Devices.Lights.LampArrayKind* value); [propget] HRESULT LampCount([out] [retval] INT32* value); [propget] HRESULT MinUpdateInterval([out] [retval] Windows.Foundation.TimeSpan* value); [propget] HRESULT BoundingBox([out] [retval] Windows.Foundation.Numerics.Vector3* value); [propget] HRESULT IsEnabled([out] [retval] boolean* value); [propput] HRESULT IsEnabled([in] boolean value); [propget] HRESULT BrightnessLevel([out] [retval] DOUBLE* value); [propput] HRESULT BrightnessLevel([in] DOUBLE value); [propget] HRESULT IsConnected([out] [retval] boolean* value); [propget] HRESULT SupportsVirtualKeys([out] [retval] boolean* value); HRESULT GetLampInfo([in] INT32 lampIndex, [out] [retval] Windows.Devices.Lights.LampInfo** result); HRESULT GetIndicesForKey([in] Windows.System.VirtualKey key, [out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] INT32** result); HRESULT GetIndicesForPurposes([in] Windows.Devices.Lights.LampPurposes purposes, [out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] INT32** result); HRESULT SetColor([in] Windows.UI.Color desiredColor); HRESULT SetColorForIndex([in] INT32 lampIndex, [in] Windows.UI.Color desiredColor); HRESULT SetSingleColorForIndices([in] Windows.UI.Color desiredColor, [in] UINT32 __lampIndexesSize, [in] [size_is(__lampIndexesSize)] INT32* lampIndexes); HRESULT SetColorsForIndices([in] UINT32 __desiredColorsSize, [in] [size_is(__desiredColorsSize)] Windows.UI.Color* desiredColors, [in] UINT32 __lampIndexesSize, [in] [size_is(__lampIndexesSize)] INT32* lampIndexes); HRESULT SetColorsForKey([in] Windows.UI.Color desiredColor, [in] Windows.System.VirtualKey key); HRESULT SetColorsForKeys([in] UINT32 __desiredColorsSize, [in] [size_is(__desiredColorsSize)] Windows.UI.Color* desiredColors, [in] UINT32 __keysSize, [in] [size_is(__keysSize)] Windows.System.VirtualKey* keys); HRESULT SetColorsForPurposes([in] Windows.UI.Color desiredColor, [in] Windows.Devices.Lights.LampPurposes purposes); HRESULT SendMessageAsync([in] INT32 messageId, [in] Windows.Storage.Streams.IBuffer* message, [out] [retval] Windows.Foundation.IAsyncAction** operation); HRESULT RequestMessageAsync([in] INT32 messageId, [out] [retval] Windows.Foundation.IAsyncOperation** operation); } [contract(Windows.Foundation.UniversalApiContract, 15.0)] [exclusiveto(Windows.Devices.Lights.LampArray)] [uuid(050C181F-60A8-4711-A1AF-1B1B4C658EA2)] interface ILampArray2 : IInspectable { [propget] HRESULT IsAvailable([out] [retval] boolean* value); [eventadd] HRESULT AvailabilityChanged([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT AvailabilityChanged([in] EventRegistrationToken token); } [contract(Windows.Foundation.UniversalApiContract, 7.0)] [exclusiveto(Windows.Devices.Lights.LampArray)] [uuid(7BB8C98D-5FC1-452D-BB1F-4AD410D398FF)] interface ILampArrayStatics : IInspectable { HRESULT GetDeviceSelector([out] [retval] HSTRING* result); HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation** operation); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Lights.LampAvailabilityChangedEventArgs)] [uuid(4F6E3DED-07A2-499D-9260-67E304532BA4)] interface ILampAvailabilityChangedEventArgs : IInspectable { [propget] HRESULT IsAvailable([out] [retval] boolean* value); } [contract(Windows.Foundation.UniversalApiContract, 7.0)] [exclusiveto(Windows.Devices.Lights.LampInfo)] [uuid(30BB521C-0ACF-49DA-8C10-150B9CF62713)] interface ILampInfo : IInspectable { [propget] HRESULT Index([out] [retval] INT32* value); [propget] HRESULT Purposes([out] [retval] Windows.Devices.Lights.LampPurposes* value); [propget] HRESULT Position([out] [retval] Windows.Foundation.Numerics.Vector3* value); [propget] HRESULT RedLevelCount([out] [retval] INT32* value); [propget] HRESULT GreenLevelCount([out] [retval] INT32* value); [propget] HRESULT BlueLevelCount([out] [retval] INT32* value); [propget] HRESULT GainLevelCount([out] [retval] INT32* value); [propget] HRESULT FixedColor([out] [retval] Windows.Foundation.IReference** value); HRESULT GetNearestSupportedColor([in] Windows.UI.Color desiredColor, [out] [retval] Windows.UI.Color* result); [propget] HRESULT UpdateLatency([out] [retval] Windows.Foundation.TimeSpan* value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.Lights.Lamp)] [uuid(A822416C-8885-401E-B821-8E8B38A8E8EC)] interface ILampStatics : IInspectable { HRESULT GetDeviceSelector([out] [retval] HSTRING* value); HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation** operation); HRESULT GetDefaultAsync([out] [retval] Windows.Foundation.IAsyncOperation** operation); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.Lights.ILampStatics, Windows.Foundation.UniversalApiContract, 1.0)] [threading(both)] runtimeclass Lamp { [default] interface Windows.Devices.Lights.ILamp; interface Windows.Foundation.IClosable; } [contract(Windows.Foundation.UniversalApiContract, 7.0)] [marshaling_behavior(agile)] [static(Windows.Devices.Lights.ILampArrayStatics, Windows.Foundation.UniversalApiContract, 7.0)] [threading(both)] runtimeclass LampArray { [default] interface Windows.Devices.Lights.ILampArray; [contract(Windows.Foundation.UniversalApiContract, 15.0)] interface Windows.Devices.Lights.ILampArray2; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass LampAvailabilityChangedEventArgs { [default] interface Windows.Devices.Lights.ILampAvailabilityChangedEventArgs; } [contract(Windows.Foundation.UniversalApiContract, 7.0)] [marshaling_behavior(agile)] runtimeclass LampInfo { [default] interface Windows.Devices.Lights.ILampInfo; } } } }