//
// Copyright (c) Microsoft Corporation. All rights reserved.
// 
//
// File generated by WinMDIDL version 8.00.0008
//

import "inspectable.idl";
import "AsyncInfo.idl";
import "EventToken.idl";
import "Windows.Foundation.idl";
// Additional imports to ensure that all required headers are included
cpp_quote("#if defined(__cplusplus)")
cpp_quote("}")
cpp_quote("#endif // defined(__cplusplus)")
cpp_quote("#include <Windows.Foundation.h>")
cpp_quote("#if defined(__cplusplus)")
cpp_quote("extern \"C\" {")
cpp_quote("#endif // defined(__cplusplus)")

// Forward Declare
namespace Windows
{
    namespace Foundation
    {
        typedef struct DateTime DateTime;
    }
}
namespace Windows
{
    namespace Devices
    {
        namespace Sensors
        {
            typedef enum SimpleOrientation SimpleOrientation;

            interface IAccelerometerStatics;

            interface IAccelerometer;

            interface IAccelerometerReading;

            interface IAccelerometerReadingChangedEventArgs;

            interface IAccelerometerShakenEventArgs;

            interface IInclinometerStatics;

            interface IInclinometer;

            interface IInclinometerReading;

            interface IInclinometerReadingChangedEventArgs;

            interface IGyrometerStatics;

            interface IGyrometer;

            interface IGyrometerReading;

            interface IGyrometerReadingChangedEventArgs;

            interface ICompassStatics;

            interface ICompass;

            interface ICompassReading;

            interface ICompassReadingChangedEventArgs;

            interface ILightSensorStatics;

            interface ILightSensor;

            interface ILightSensorReading;

            interface ILightSensorReadingChangedEventArgs;

            interface ISensorRotationMatrix;

            interface ISensorQuaternion;

            interface IOrientationSensorStatics;

            interface IOrientationSensor;

            interface IOrientationSensorReading;

            interface IOrientationSensorReadingChangedEventArgs;

            interface ISimpleOrientationSensorStatics;

            interface ISimpleOrientationSensor;

            interface ISimpleOrientationSensorOrientationChangedEventArgs;

            runtimeclass Accelerometer;

            runtimeclass AccelerometerReading;

            runtimeclass AccelerometerReadingChangedEventArgs;

            runtimeclass AccelerometerShakenEventArgs;

            runtimeclass Inclinometer;

            runtimeclass InclinometerReading;

            runtimeclass InclinometerReadingChangedEventArgs;

            runtimeclass Gyrometer;

            runtimeclass GyrometerReading;

            runtimeclass GyrometerReadingChangedEventArgs;

            runtimeclass Compass;

            runtimeclass CompassReading;

            runtimeclass CompassReadingChangedEventArgs;

            runtimeclass LightSensor;

            runtimeclass LightSensorReading;

            runtimeclass LightSensorReadingChangedEventArgs;

            runtimeclass SensorRotationMatrix;

            runtimeclass SensorQuaternion;

            runtimeclass OrientationSensor;

            runtimeclass OrientationSensorReading;

            runtimeclass OrientationSensorReadingChangedEventArgs;

            runtimeclass SimpleOrientationSensor;

            runtimeclass SimpleOrientationSensorOrientationChangedEventArgs;
        }
    }
}

// Generic instantiations
namespace Windows
{
    namespace Devices
    {
        namespace Sensors
        {
            declare
            {
                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Accelerometer*, Windows.Devices.Sensors.AccelerometerReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Accelerometer*, Windows.Devices.Sensors.AccelerometerShakenEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Compass*, Windows.Devices.Sensors.CompassReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Gyrometer*, Windows.Devices.Sensors.GyrometerReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Inclinometer*, Windows.Devices.Sensors.InclinometerReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.LightSensor*, Windows.Devices.Sensors.LightSensorReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.OrientationSensor*, Windows.Devices.Sensors.OrientationSensorReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.SimpleOrientationSensor*, Windows.Devices.Sensors.SimpleOrientationSensorOrientationChangedEventArgs*>;
            }
        }
    }
}

// Type definition
namespace Windows
{
    namespace Devices
    {
        namespace Sensors
        {
            [version(0x06020000)]
            enum SimpleOrientation
            {
                NotRotated                        = 0,
                Rotated90DegreesCounterclockwise  = 1,
                Rotated180DegreesCounterclockwise = 2,
                Rotated270DegreesCounterclockwise = 3,
                Faceup                            = 4,
                Facedown                          = 5
            };

            [uuid(A5E28B74-5A87-4A2D-BECC-0F906EA061DD)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            interface IAccelerometerStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Accelerometer** result);
            }

            [uuid(DF184548-2711-4DA7-8098-4B82205D3C7D)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            interface IAccelerometer : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.AccelerometerReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Accelerometer*, Windows.Devices.Sensors.AccelerometerReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
                [eventadd] HRESULT Shaken([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Accelerometer*, Windows.Devices.Sensors.AccelerometerShakenEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT Shaken([in] EventRegistrationToken token);
            }

            [uuid(B9FE7ACB-D351-40AF-8BB6-7AA9AE641FB7)]
            [exclusiveto(Windows.Devices.Sensors.AccelerometerReading)]
            [version(0x06020000)]
            interface IAccelerometerReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT AccelerationX([out] [retval] DOUBLE* value);
                [propget] HRESULT AccelerationY([out] [retval] DOUBLE* value);
                [propget] HRESULT AccelerationZ([out] [retval] DOUBLE* value);
            }

            [uuid(0095C65B-B6AC-475A-9F44-8B32D35A3F25)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.AccelerometerReadingChangedEventArgs)]
            interface IAccelerometerReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.AccelerometerReading** value);
            }

            [uuid(95FF01D1-4A28-4F35-98E8-8178AAE4084A)]
            [exclusiveto(Windows.Devices.Sensors.AccelerometerShakenEventArgs)]
            [version(0x06020000)]
            interface IAccelerometerShakenEventArgs : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
            }

            [uuid(F22EC551-9C30-453A-8B49-3C3EEB33CB61)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            interface IInclinometerStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Inclinometer** result);
            }

            [uuid(2648CA6F-2286-406F-9161-F0C4BD806EBF)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            interface IInclinometer : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.InclinometerReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Inclinometer*, Windows.Devices.Sensors.InclinometerReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [uuid(9F44F055-B6F6-497F-B127-1A775E501458)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.InclinometerReading)]
            interface IInclinometerReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT PitchDegrees([out] [retval] FLOAT* value);
                [propget] HRESULT RollDegrees([out] [retval] FLOAT* value);
                [propget] HRESULT YawDegrees([out] [retval] FLOAT* value);
            }

            [uuid(4AE91DC1-E7EB-4938-8511-AE0D6B440438)]
            [exclusiveto(Windows.Devices.Sensors.InclinometerReadingChangedEventArgs)]
            [version(0x06020000)]
            interface IInclinometerReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.InclinometerReading** value);
            }

            [uuid(83B6E7C9-E49D-4B39-86E6-CD554BE4C5C1)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.Gyrometer)]
            interface IGyrometerStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Gyrometer** result);
            }

            [uuid(FDB9A9C4-84B1-4CA2-9763-9B589506C70C)]
            [exclusiveto(Windows.Devices.Sensors.Gyrometer)]
            [version(0x06020000)]
            interface IGyrometer : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.GyrometerReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Gyrometer*, Windows.Devices.Sensors.GyrometerReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [uuid(B3D6DE5C-1EE4-456F-9DE7-E2493B5C8E03)]
            [exclusiveto(Windows.Devices.Sensors.GyrometerReading)]
            [version(0x06020000)]
            interface IGyrometerReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT AngularVelocityX([out] [retval] DOUBLE* value);
                [propget] HRESULT AngularVelocityY([out] [retval] DOUBLE* value);
                [propget] HRESULT AngularVelocityZ([out] [retval] DOUBLE* value);
            }

            [uuid(0FDF1895-6F9E-42CE-8D58-388C0AB8356D)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.GyrometerReadingChangedEventArgs)]
            interface IGyrometerReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.GyrometerReading** value);
            }

            [uuid(9ABC97DF-56EC-4C25-B54D-40A68BB5B269)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.Compass)]
            interface ICompassStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Compass** result);
            }

            [uuid(292FFA94-1B45-403C-BA06-B106DBA69A64)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.Compass)]
            interface ICompass : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.CompassReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Compass*, Windows.Devices.Sensors.CompassReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [uuid(82911128-513D-4DC9-B781-5EEDFBF02D0C)]
            [exclusiveto(Windows.Devices.Sensors.CompassReading)]
            [version(0x06020000)]
            interface ICompassReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT HeadingMagneticNorth([out] [retval] DOUBLE* value);
                [propget] HRESULT HeadingTrueNorth([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
            }

            [uuid(8F1549B0-E8BC-4C7E-B009-4E41DF137072)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.CompassReadingChangedEventArgs)]
            interface ICompassReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.CompassReading** value);
            }

            [uuid(45DB8C84-C3A8-471E-9A53-6457FAD87C0E)]
            [exclusiveto(Windows.Devices.Sensors.LightSensor)]
            [version(0x06020000)]
            interface ILightSensorStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.LightSensor** result);
            }

            [uuid(F84C0718-0C54-47AE-922E-789F57FB03A0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensor)]
            [version(0x06020000)]
            interface ILightSensor : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.LightSensorReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.LightSensor*, Windows.Devices.Sensors.LightSensorReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [uuid(FFDF6300-227C-4D2B-B302-FC0142485C68)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.LightSensorReading)]
            interface ILightSensorReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT IlluminanceInLux([out] [retval] FLOAT* value);
            }

            [uuid(A3A2F4CF-258B-420C-B8AB-8EDD601ECF50)]
            [exclusiveto(Windows.Devices.Sensors.LightSensorReadingChangedEventArgs)]
            [version(0x06020000)]
            interface ILightSensorReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.LightSensorReading** value);
            }

            [uuid(0A3D5A67-22F4-4392-9538-65D0BD064AA6)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.SensorRotationMatrix)]
            interface ISensorRotationMatrix : IInspectable
            {
                [propget] HRESULT M11([out] [retval] FLOAT* value);
                [propget] HRESULT M12([out] [retval] FLOAT* value);
                [propget] HRESULT M13([out] [retval] FLOAT* value);
                [propget] HRESULT M21([out] [retval] FLOAT* value);
                [propget] HRESULT M22([out] [retval] FLOAT* value);
                [propget] HRESULT M23([out] [retval] FLOAT* value);
                [propget] HRESULT M31([out] [retval] FLOAT* value);
                [propget] HRESULT M32([out] [retval] FLOAT* value);
                [propget] HRESULT M33([out] [retval] FLOAT* value);
            }

            [uuid(C9C5C827-C71C-46E7-9DA3-36A193B232BC)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.SensorQuaternion)]
            interface ISensorQuaternion : IInspectable
            {
                [propget] HRESULT W([out] [retval] FLOAT* value);
                [propget] HRESULT X([out] [retval] FLOAT* value);
                [propget] HRESULT Y([out] [retval] FLOAT* value);
                [propget] HRESULT Z([out] [retval] FLOAT* value);
            }

            [uuid(10EF8712-FB4C-428A-898B-2765E409E669)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [version(0x06020000)]
            interface IOrientationSensorStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.OrientationSensor** result);
            }

            [uuid(5E354635-CF6B-4C63-ABD8-10252B0BF6EC)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [version(0x06020000)]
            interface IOrientationSensor : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.OrientationSensorReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.OrientationSensor*, Windows.Devices.Sensors.OrientationSensorReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [uuid(4756C993-6595-4897-BCC6-D537EE757564)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensorReading)]
            interface IOrientationSensorReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT RotationMatrix([out] [retval] Windows.Devices.Sensors.SensorRotationMatrix** value);
                [propget] HRESULT Quaternion([out] [retval] Windows.Devices.Sensors.SensorQuaternion** value);
            }

            [uuid(012C1186-C3BA-46BC-AE65-7A98996CBFB8)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensorReadingChangedEventArgs)]
            [version(0x06020000)]
            interface IOrientationSensorReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.OrientationSensorReading** value);
            }

            [uuid(72ED066F-70AA-40C6-9B1B-3433F7459B4E)]
            [exclusiveto(Windows.Devices.Sensors.SimpleOrientationSensor)]
            [version(0x06020000)]
            interface ISimpleOrientationSensorStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.SimpleOrientationSensor** result);
            }

            [uuid(5FF53856-214A-4DEE-A3F9-616F1AB06FFD)]
            [version(0x06020000)]
            [exclusiveto(Windows.Devices.Sensors.SimpleOrientationSensor)]
            interface ISimpleOrientationSensor : IInspectable
            {
                HRESULT GetCurrentOrientation([out] [retval] Windows.Devices.Sensors.SimpleOrientation* value);
                [eventadd] HRESULT OrientationChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.SimpleOrientationSensor*, Windows.Devices.Sensors.SimpleOrientationSensorOrientationChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT OrientationChanged([in] EventRegistrationToken token);
            }

            [uuid(BCD5C660-23D4-4B4C-A22E-BA81ADE0C601)]
            [exclusiveto(Windows.Devices.Sensors.SimpleOrientationSensorOrientationChangedEventArgs)]
            [version(0x06020000)]
            interface ISimpleOrientationSensorOrientationChangedEventArgs : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT Orientation([out] [retval] Windows.Devices.Sensors.SimpleOrientation* value);
            }

            [static(Windows.Devices.Sensors.IAccelerometerStatics, 0x06020000)]
            [threading(both)]
            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass Accelerometer
            {
                [default] interface Windows.Devices.Sensors.IAccelerometer;
            }

            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass AccelerometerReading
            {
                [default] interface Windows.Devices.Sensors.IAccelerometerReading;
            }

            [marshaling_behavior(agile)]
            [version(0x06020000)]
            runtimeclass AccelerometerReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IAccelerometerReadingChangedEventArgs;
            }

            [marshaling_behavior(agile)]
            [version(0x06020000)]
            runtimeclass AccelerometerShakenEventArgs
            {
                [default] interface Windows.Devices.Sensors.IAccelerometerShakenEventArgs;
            }

            [static(Windows.Devices.Sensors.IInclinometerStatics, 0x06020000)]
            [version(0x06020000)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass Inclinometer
            {
                [default] interface Windows.Devices.Sensors.IInclinometer;
            }

            [marshaling_behavior(agile)]
            [version(0x06020000)]
            runtimeclass InclinometerReading
            {
                [default] interface Windows.Devices.Sensors.IInclinometerReading;
            }

            [marshaling_behavior(agile)]
            [version(0x06020000)]
            runtimeclass InclinometerReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IInclinometerReadingChangedEventArgs;
            }

            [threading(both)]
            [marshaling_behavior(agile)]
            [version(0x06020000)]
            [static(Windows.Devices.Sensors.IGyrometerStatics, 0x06020000)]
            runtimeclass Gyrometer
            {
                [default] interface Windows.Devices.Sensors.IGyrometer;
            }

            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass GyrometerReading
            {
                [default] interface Windows.Devices.Sensors.IGyrometerReading;
            }

            [marshaling_behavior(agile)]
            [version(0x06020000)]
            runtimeclass GyrometerReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IGyrometerReadingChangedEventArgs;
            }

            [threading(both)]
            [static(Windows.Devices.Sensors.ICompassStatics, 0x06020000)]
            [marshaling_behavior(agile)]
            [version(0x06020000)]
            runtimeclass Compass
            {
                [default] interface Windows.Devices.Sensors.ICompass;
            }

            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass CompassReading
            {
                [default] interface Windows.Devices.Sensors.ICompassReading;
            }

            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass CompassReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.ICompassReadingChangedEventArgs;
            }

            [threading(both)]
            [version(0x06020000)]
            [static(Windows.Devices.Sensors.ILightSensorStatics, 0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass LightSensor
            {
                [default] interface Windows.Devices.Sensors.ILightSensor;
            }

            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass LightSensorReading
            {
                [default] interface Windows.Devices.Sensors.ILightSensorReading;
            }

            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass LightSensorReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.ILightSensorReadingChangedEventArgs;
            }

            [marshaling_behavior(agile)]
            [version(0x06020000)]
            runtimeclass SensorRotationMatrix
            {
                [default] interface Windows.Devices.Sensors.ISensorRotationMatrix;
            }

            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass SensorQuaternion
            {
                [default] interface Windows.Devices.Sensors.ISensorQuaternion;
            }

            [static(Windows.Devices.Sensors.IOrientationSensorStatics, 0x06020000)]
            [threading(both)]
            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass OrientationSensor
            {
                [default] interface Windows.Devices.Sensors.IOrientationSensor;
            }

            [version(0x06020000)]
            [marshaling_behavior(agile)]
            runtimeclass OrientationSensorReading
            {
                [default] interface Windows.Devices.Sensors.IOrientationSensorReading;
            }

            [marshaling_behavior(agile)]
            [version(0x06020000)]
            runtimeclass OrientationSensorReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IOrientationSensorReadingChangedEventArgs;
            }

            [version(0x06020000)]
            [static(Windows.Devices.Sensors.ISimpleOrientationSensorStatics, 0x06020000)]
            [threading(both)]
            [marshaling_behavior(agile)]
            runtimeclass SimpleOrientationSensor
            {
                [default] interface Windows.Devices.Sensors.ISimpleOrientationSensor;
            }

            [marshaling_behavior(agile)]
            [version(0x06020000)]
            runtimeclass SimpleOrientationSensorOrientationChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.ISimpleOrientationSensorOrientationChangedEventArgs;
            }
        }
    }
}
