HidUsageTables.cs
changeset 79 cdc5f8f1b79e
parent 78 72885c950813
child 80 e2acfa51664f
     1.1 --- a/HidUsageTables.cs	Sun Mar 15 16:56:31 2015 +0100
     1.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.3 @@ -1,928 +0,0 @@
     1.4 -//
     1.5 -// Copyright (C) 2014-2015 Stéphane Lenclud.
     1.6 -//
     1.7 -// This file is part of SharpLibHid.
     1.8 -//
     1.9 -// SharpDisplayManager is free software: you can redistribute it and/or modify
    1.10 -// it under the terms of the GNU General Public License as published by
    1.11 -// the Free Software Foundation, either version 3 of the License, or
    1.12 -// (at your option) any later version.
    1.13 -//
    1.14 -// SharpDisplayManager is distributed in the hope that it will be useful,
    1.15 -// but WITHOUT ANY WARRANTY; without even the implied warranty of
    1.16 -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    1.17 -// GNU General Public License for more details.
    1.18 -//
    1.19 -// You should have received a copy of the GNU General Public License
    1.20 -// along with SharpDisplayManager.  If not, see <http://www.gnu.org/licenses/>.
    1.21 -//
    1.22 -
    1.23 -namespace SharpLib.Hid
    1.24 -{
    1.25 -    /// <summary>
    1.26 -    /// From USB HID usage tables.
    1.27 -    /// http://www.usb.org/developers/hidpage#HID_Usage
    1.28 -    /// http://www.usb.org/developers/devclass_docs/Hut1_12v2.pdf
    1.29 -    /// </summary>
    1.30 -    public enum UsagePage : ushort
    1.31 -    {
    1.32 -        Undefined = 0,
    1.33 -        GenericDesktopControls,
    1.34 -        SimulationControls,
    1.35 -        VirtualRealityControls,
    1.36 -        SportControls,
    1.37 -        GameControls,
    1.38 -        GenericDeviceControls,
    1.39 -        Keyboard,
    1.40 -        LightEmittingDiode,
    1.41 -        Button,
    1.42 -        Ordinal,
    1.43 -        Telephony,
    1.44 -        Consumer,
    1.45 -        Digitiser,
    1.46 -        PhysicalInterfaceDevice = 0x0f,
    1.47 -        Unicode = 0x10,
    1.48 -        AlphaNumericDisplay = 0x14,
    1.49 -        MedicalInstruments = 0x40,
    1.50 -        MonitorPage0 = 0x80,
    1.51 -        MonitorPage1,
    1.52 -        MonitorPage2,
    1.53 -        MonitorPage3,
    1.54 -        PowerPage0,
    1.55 -        PowerPage1,
    1.56 -        PowerPage2,
    1.57 -        PowerPage3,
    1.58 -        BarCodeScanner = 0x8c,
    1.59 -        Scale,
    1.60 -        MagneticStripeReader,
    1.61 -        ReservedPointOfSale,
    1.62 -        CameraControl,
    1.63 -        Arcade,
    1.64 -        // http://msdn.microsoft.com/en-us/library/windows/desktop/bb417079.aspx
    1.65 -        WindowsMediaCenterRemoteControl = 0xffbc,
    1.66 -        TerraTecRemote = 0xffcc
    1.67 -    }
    1.68 -
    1.69 -    /// <summary>
    1.70 -    /// Usage Collections are special values from our Usage enumeration.
    1.71 -    /// Thus they are also part of the corresponding Usage enumeration.
    1.72 -    /// </summary>
    1.73 -    namespace UsageCollection
    1.74 -    {
    1.75 -        /// <summary>
    1.76 -        /// Usage Collection for usage page GenericDesktopControls.
    1.77 -        /// </summary>
    1.78 -        public enum GenericDesktop : ushort
    1.79 -        {
    1.80 -            Pointer = 0x01,
    1.81 -            Mouse = 0x02,
    1.82 -            Joystick = 0x04,
    1.83 -            GamePad = 0x05,
    1.84 -            Keyboard = 0x06,
    1.85 -            KeyPad = 0x07,
    1.86 -            MultiAxisController = 0x08,
    1.87 -            TabletPCSystemControls = 0x09,
    1.88 -            SystemControl = 0x80
    1.89 -        }
    1.90 -
    1.91 -        /// <summary>
    1.92 -        /// Usage Collection for usage page Consumer.
    1.93 -        /// </summary>
    1.94 -        public enum Consumer : ushort
    1.95 -        {
    1.96 -            ConsumerControl = 0x01,
    1.97 -            NumericKeyPad = 0x02,
    1.98 -            ProgrammableButtons = 0x03,
    1.99 -            Microphone = 0x04,
   1.100 -            Headphone = 0x05,
   1.101 -            GraphicEqualizer = 0x06,
   1.102 -            FunctionButtons = 0x36,
   1.103 -            Selection = 0x80,
   1.104 -            MediaSelection = 0x0087,
   1.105 -            SelectDisc = 0x00BA,
   1.106 -            PlaybackSpeed = 0x00F1,
   1.107 -            Proximity = 0x0109,
   1.108 -            SpeakerSystem = 0x0160,
   1.109 -            ChannelLeft = 0x0161,
   1.110 -            ChannelRight = 0x0162,
   1.111 -            ChannelCenter = 0x0163,
   1.112 -            ChannelFront = 0x0164,
   1.113 -            ChannelCenterFront = 0x0165,
   1.114 -            ChannelSide = 0x0166,
   1.115 -            ChannelSurrond = 0x0167,
   1.116 -            ChannelLowFrequencyEnhancement = 0x0168,
   1.117 -            ChannelTop = 0x0169,
   1.118 -            ChannelUnknown = 0x016A,
   1.119 -            ApplicationLaunchButtons = 0x016A,
   1.120 -            GenericGuiApplicationControls = 0x0200,
   1.121 -        }
   1.122 -
   1.123 -
   1.124 -        public enum WindowsMediaCenter : ushort
   1.125 -        {
   1.126 -            WindowsMediaCenterRemoteControl = 0x88
   1.127 -        }
   1.128 -
   1.129 -    }
   1.130 -
   1.131 -
   1.132 -
   1.133 -    namespace Usage
   1.134 -    {
   1.135 -        /// <summary>
   1.136 -        ///
   1.137 -        /// </summary>
   1.138 -        public enum WindowsMediaCenterRemoteControl : ushort
   1.139 -        {
   1.140 -            /// <summary>
   1.141 -            /// Not defined by the Microsoft specs.
   1.142 -            /// </summary>
   1.143 -            Null = 0x00,
   1.144 -            GreenStart = 0x0D,
   1.145 -            ClosedCaptioning = 0x2B,
   1.146 -            Teletext = 0x5A,
   1.147 -            TeletextRed = 0x5B,
   1.148 -            TeletextGreen = 0x5C,
   1.149 -            TeletextYellow = 0x5D,
   1.150 -            TeletextBlue = 0x5E,
   1.151 -            LiveTv = 0x25,
   1.152 -            Tv = 0x46,
   1.153 -            Music = 0x47,
   1.154 -            RecordedTv = 0x48,
   1.155 -            Pictures = 0x49,
   1.156 -            Videos = 0x4A,
   1.157 -            FmRadio = 0x50,
   1.158 -            Extras = 0x3C,
   1.159 -            ExtrasApp = 0x3D,
   1.160 -            DvdMenu = 0x24,
   1.161 -            DvdAngle = 0x4B,
   1.162 -            DvdAudio = 0x4C,
   1.163 -            DvdSubtitle = 0x4D,
   1.164 -            /// <summary>
   1.165 -            /// First press action: Ejects a DVD drive.
   1.166 -            /// <para />
   1.167 -            /// Second press action: Repeats first press action.
   1.168 -            /// <para />
   1.169 -            /// Notably issued by XBOX360 remote as defined in irplus - Remote Control - Android application.
   1.170 -            /// </summary>
   1.171 -            Eject = 0x28,
   1.172 -            DvdTopMenu = 0x43,
   1.173 -            /// <summary>
   1.174 -            /// First press action: Generates EXTn HID message in the Media Center Vendor Specific
   1.175 -            /// Collection (page 0xFFBC, usage 0x88).
   1.176 -            /// <para />
   1.177 -            /// Second press action: Repeats message.
   1.178 -            /// <para />
   1.179 -            /// Auto-repeat: No
   1.180 -            /// <para />
   1.181 -            /// Notably sent by the 'Visualization' button of HP Windows Media Center Remote (TSGH-IR08).
   1.182 -            /// <para />
   1.183 -            /// According to HP specs it displays visual imagery that is synchronized to the sound of your music tracks.
   1.184 -            /// </summary>
   1.185 -            Ext0 = 0x32,
   1.186 -            /// <summary>
   1.187 -            /// First press action: Generates EXTn HID message in the Media Center Vendor Specific
   1.188 -            /// Collection (page 0xFFBC, usage 0x88).
   1.189 -            /// <para />
   1.190 -            /// Second press action: Repeats message.
   1.191 -            /// <para />
   1.192 -            /// Auto-repeat: No
   1.193 -            /// <para />
   1.194 -            /// Notably sent by the 'Slide Show' button of HP Windows Media Center Remote (TSGH-IR08).
   1.195 -            /// <para />
   1.196 -            /// According to HP specs it plays a slide show of all the pictures on your hard disk drive.
   1.197 -            /// </summary>
   1.198 -            Ext1 = 0x33,
   1.199 -            /// <summary>
   1.200 -            /// First press action: Generates EXTn HID message in the Media Center Vendor Specific
   1.201 -            /// Collection (page 0xFFBC, usage 0x88).
   1.202 -            /// <para />
   1.203 -            /// Second press action: Repeats message.
   1.204 -            /// <para />
   1.205 -            /// Auto-repeat: No
   1.206 -            /// <para />
   1.207 -            /// Notably sent by the 'Eject' button of HP Windows Media Center Remote (TSGH-IR08).
   1.208 -            /// Also interpreted as 'Eject' action by SoundGraph iMON Manager in MCE mode (OrigenAE VF310).
   1.209 -            /// </summary>
   1.210 -            Ext2 = 0x34,
   1.211 -            /// <summary>
   1.212 -            /// First press action: Generates EXTn HID message in the Media Center Vendor Specific
   1.213 -            /// Collection (page 0xFFBC, usage 0x88).
   1.214 -            /// <para />
   1.215 -            /// Second press action: Repeats message.
   1.216 -            /// <para />
   1.217 -            /// Auto-repeat: No
   1.218 -            /// <para />
   1.219 -            /// Notably sent by the 'Input selection' button of HP Windows Media Center Remote (TSGH-IR08).
   1.220 -            /// </summary>
   1.221 -            Ext3 = 0x35,
   1.222 -            Ext4 = 0x36,
   1.223 -            Ext5 = 0x37,
   1.224 -            Ext6 = 0x38,
   1.225 -            Ext7 = 0x39,
   1.226 -            Ext8 = 0x3A,
   1.227 -            Ext9 = 0x80,
   1.228 -            Ext10 = 0x81,
   1.229 -            Ext11 = 0x6F,
   1.230 -            Zoom = 0x27,
   1.231 -            ChannelInput = 0x42,
   1.232 -            SubAudio = 0x2D,
   1.233 -            Channel10 = 0x3E,
   1.234 -            Channel11 = 0x3F,
   1.235 -            Channel12 = 0x40,
   1.236 -            /// <summary>
   1.237 -            /// First press action: Generates OEM2 HID message in the Media Center Vendor Specific
   1.238 -            /// Collection. This button is intended to control the front panel display of home entertainment
   1.239 -            /// computers. When this button is pressed, the display could be turned on or off, or the display
   1.240 -            /// mode could change.
   1.241 -            /// <para />
   1.242 -            /// Second press action: Repeats message.
   1.243 -            /// <para />
   1.244 -            /// Auto-repeat: No
   1.245 -            /// <para />
   1.246 -            /// Notably issued by XBOX360 remote as defined in irplus - Remote Control - Android application.
   1.247 -            /// </summary>
   1.248 -            Display = 0x4F,
   1.249 -            /// <summary>
   1.250 -            /// First press action: To be determined.
   1.251 -            /// <para />
   1.252 -            /// Second press action: Repeats message.
   1.253 -            /// <para />
   1.254 -            /// Auto-repeat: No
   1.255 -            /// </summary>
   1.256 -            Kiosk = 0x6A,
   1.257 -            NetworkSelection = 0x2C,
   1.258 -            BlueRayTool = 0x78,
   1.259 -            ChannelInfo = 0x41,
   1.260 -            VideoSelection = 0x61
   1.261 -        }
   1.262 -
   1.263 -        /// <summary>
   1.264 -        /// Those codes come from experimenting with HP remotes.
   1.265 -        /// </summary>
   1.266 -        public enum HpWindowsMediaCenterRemoteControl : ushort
   1.267 -        {
   1.268 -            /// <summary>
   1.269 -            /// Displays visual imagery that is synchronized to the sound of your music tracks.
   1.270 -            /// <para />
   1.271 -            /// Second press action: Repeats message.
   1.272 -            /// <para />
   1.273 -            /// Auto-repeat: No
   1.274 -            /// <para />
   1.275 -            /// Notably sent by the 'Visualization' button of HP Windows Media Center Remote (TSGH-IR08).
   1.276 -            /// <para />
   1.277 -            /// According to HP specs it displays visual imagery that is synchronized to the sound of your music tracks.
   1.278 -            /// </summary>
   1.279 -            Visualization = WindowsMediaCenterRemoteControl.Ext0,
   1.280 -            /// <summary>
   1.281 -            /// Plays a slide show of all the pictures on your hard disk drive.
   1.282 -            /// <para />
   1.283 -            /// Second press action: Repeats message.
   1.284 -            /// <para />
   1.285 -            /// Auto-repeat: No
   1.286 -            /// <para />
   1.287 -            /// Notably sent by the 'Slide Show' button of HP Windows Media Center Remote (TSGH-IR08).
   1.288 -            /// <para />
   1.289 -            /// According to HP specs it plays a slide show of all the pictures on your hard disk drive.
   1.290 -            /// </summary>
   1.291 -            SlideShow = WindowsMediaCenterRemoteControl.Ext1,
   1.292 -            /// <summary>
   1.293 -            /// Eject optical drive.
   1.294 -            /// <para />
   1.295 -            /// Second press action: Repeats message.
   1.296 -            /// <para />
   1.297 -            /// Auto-repeat: No
   1.298 -            /// <para />
   1.299 -            /// Notably sent by the 'Eject' button of HP Windows Media Center Remote (TSGH-IR08).
   1.300 -            /// Also interpreted as 'Eject' action by SoundGraph iMON Manager in MCE mode (OrigenAE VF310).
   1.301 -            /// </summary>
   1.302 -            HpEject = WindowsMediaCenterRemoteControl.Ext2,
   1.303 -            /// <summary>
   1.304 -            /// Not sure what this should do.
   1.305 -            /// <para />
   1.306 -            /// Second press action: Repeats message.
   1.307 -            /// <para />
   1.308 -            /// Auto-repeat: No
   1.309 -            /// <para />
   1.310 -            /// Notably sent by the 'Input selection' button of HP Windows Media Center Remote (TSGH-IR08).
   1.311 -            /// </summary>
   1.312 -            InputSelection = WindowsMediaCenterRemoteControl.Ext3,
   1.313 -        }
   1.314 -
   1.315 -        /// <summary>
   1.316 -        /// Usage Table for Consumer Controls
   1.317 -        /// 0x0C 0X01
   1.318 -        /// </summary>
   1.319 -        public enum ConsumerControl : ushort
   1.320 -        {
   1.321 -            Null = 0x00,
   1.322 -            ConsumerControl = 0x01,
   1.323 -            NumericKeyPad = 0x02,
   1.324 -            ProgrammableButtons = 0x03,
   1.325 -            Microphone = 0x04,
   1.326 -            Headphone = 0x05,
   1.327 -            GraphicEqualizer = 0x06,
   1.328 -            Plus10 = 0x20,
   1.329 -            Plus100 = 0x21,
   1.330 -            AmPm = 0x22,
   1.331 -            Power = 0x30,
   1.332 -            Reset = 0x31,
   1.333 -            Sleep = 0x32,
   1.334 -            SleepAfter = 0x33,
   1.335 -            SleepMode = 0x34,
   1.336 -            Illumination = 0x35,
   1.337 -            FunctionButtons = 0x36,
   1.338 -            Menu = 0x40,
   1.339 -            MenuPick = 0x41,
   1.340 -            MenuUp = 0x42,
   1.341 -            MenuDown = 0x43,
   1.342 -            MenuLeft = 0x44,
   1.343 -            MenuRight = 0x45,
   1.344 -            MenuEscape = 0x46,
   1.345 -            MenuValueIncrease = 0x47,
   1.346 -            MenuValueDecrease = 0x48,
   1.347 -            DataOnScreen = 0x60,
   1.348 -            ClosedCaption = 0x61,
   1.349 -            ClosedCaptionSelect = 0x62,
   1.350 -            VcrTv = 0x63,
   1.351 -            BroadcastMode = 0x64,
   1.352 -            Snapshot = 0x65,
   1.353 -            Still = 0x66,
   1.354 -            Selection = 0x80,
   1.355 -            AssignSelection = 0x81,
   1.356 -            ModeStep = 0x82,
   1.357 -            RecallLast = 0x83,
   1.358 -            EnterChannel = 0x84,
   1.359 -            OrderMovie = 0x85,
   1.360 -            Channel = 0x86,
   1.361 -            MediaSelection = 0x87,
   1.362 -            MediaSelectComputer = 0x88,
   1.363 -            MediaSelectTv = 0x89,
   1.364 -            MediaSelectWww = 0x8A,
   1.365 -            MediaSelectDvd = 0x8B,
   1.366 -            MediaSelectTelephone = 0x8C,
   1.367 -            MediaSelectProgramGuide = 0x8D,
   1.368 -            MediaSelectVideoPhone = 0x8E,
   1.369 -            MediaSelectGames = 0x8F,
   1.370 -            MediaSelectMessages = 0x90,
   1.371 -            MediaSelectCd = 0x91,
   1.372 -            MediaSelectVcr = 0x92,
   1.373 -            MediaSelectTuner = 0x93,
   1.374 -            Quit = 0x94,
   1.375 -            Help = 0x95,
   1.376 -            MediaSelectTape = 0x96,
   1.377 -            MediaSelectCable = 0x97,
   1.378 -            MediaSelectSatellite = 0x98,
   1.379 -            MediaSelectSecurity = 0x99,
   1.380 -            MediaSelectHome = 0x9A,
   1.381 -            MediaSelectCall = 0x9B,
   1.382 -            ChannelIncrement = 0x9C,
   1.383 -            ChannelDecrement = 0x9D,
   1.384 -            MediaSelectSap = 0x9E,
   1.385 -            VcrPlus = 0xA0,
   1.386 -            Once = 0xA1,
   1.387 -            Daily = 0xA2,
   1.388 -            Weekly = 0xA3,
   1.389 -            Monthly = 0xA4,
   1.390 -            Play = 0xB0,
   1.391 -            Pause = 0xB1,
   1.392 -            Record = 0xB2,
   1.393 -            FastForward = 0xB3,
   1.394 -            Rewind = 0xB4,
   1.395 -            ScanNextTrack = 0xB5,
   1.396 -            ScanPreviousTrack = 0xB6,
   1.397 -            Stop = 0xB7,
   1.398 -            Eject = 0xB8,
   1.399 -            RandomPlay = 0xB9,
   1.400 -            SelectDisc = 0xBA,
   1.401 -            EnterDisc = 0xBB,
   1.402 -            Repeat = 0xBC,
   1.403 -            Tracking = 0xBD,
   1.404 -            TrackNormal = 0xBE,
   1.405 -            SlowTracking = 0xBF,
   1.406 -            FrameForward = 0xC0,
   1.407 -            FrameBack = 0xC1,
   1.408 -            Mark = 0xC2,
   1.409 -            ClearMark = 0xC3,
   1.410 -            RepeatFromMark = 0xC4,
   1.411 -            ReturnToMark = 0xC5,
   1.412 -            SearchMarkForward = 0xC6,
   1.413 -            SearchMarkBackwards = 0xC7,
   1.414 -            CounterReset = 0xC8,
   1.415 -            ShowCounter = 0xC9,
   1.416 -            TrackingIncrement = 0xCA,
   1.417 -            TrackingDecrement = 0xCB,
   1.418 -            StopEject = 0xCC,
   1.419 -            PlayPause = 0xCD,
   1.420 -            PlaySkip = 0xCE,
   1.421 -            Volume = 0xE0,
   1.422 -            Balance = 0xE1,
   1.423 -            Mute = 0xE2,
   1.424 -            Bass = 0xE3,
   1.425 -            Treble = 0xE4,
   1.426 -            BassBoost = 0xE5,
   1.427 -            SurroundMode = 0xE6,
   1.428 -            Loudness = 0xE7,
   1.429 -            Mpx = 0xE8,
   1.430 -            VolumeIncrement = 0xE9,
   1.431 -            VolumeDecrement = 0xEA,
   1.432 -            SpeedSelect = 0xF0,
   1.433 -            PlaybackSpeed = 0xF1,
   1.434 -            StandardPlay = 0xF2,
   1.435 -            LongPlay = 0xF3,
   1.436 -            ExtendedPlay = 0xF4,
   1.437 -            Slow = 0xF5,
   1.438 -            FanEnable = 0x100,
   1.439 -            FanSpeed = 0x101,
   1.440 -            LightEnable = 0x102,
   1.441 -            LightIlluminationLevel = 0x103,
   1.442 -            ClimateControlEnable = 0x104,
   1.443 -            RoomTemperature = 0x105,
   1.444 -            SecurityEnable = 0x106,
   1.445 -            FireAlarm = 0x107,
   1.446 -            PoliceAlarm = 0x108,
   1.447 -            Proximity = 0x109,
   1.448 -            Motion = 0x10A,
   1.449 -            DuressAlarm = 0x10B,
   1.450 -            HoldupAlarm = 0x10C,
   1.451 -            MedicalAlarm = 0x10D,
   1.452 -            BalanceRight = 0x150,
   1.453 -            BalanceLeft = 0x151,
   1.454 -            BassIncrement = 0x152,
   1.455 -            BassDecrement = 0x153,
   1.456 -            TrebleIncrement = 0x154,
   1.457 -            TrebleDecrement = 0x155,
   1.458 -            SpeakerSystem = 0x160,
   1.459 -            ChannelLeft = 0x161,
   1.460 -            ChannelRight = 0x162,
   1.461 -            ChannelCenter = 0x163,
   1.462 -            ChannelFront = 0x164,
   1.463 -            ChannelCenterFront = 0x165,
   1.464 -            ChannelSide = 0x166,
   1.465 -            ChannelSurround = 0x167,
   1.466 -            ChannelLowFrequencyEnhancement = 0x168,
   1.467 -            ChannelTop = 0x169,
   1.468 -            ChannelUnknown = 0x16A,
   1.469 -            SubChannel = 0x170,
   1.470 -            SubChannelIncrement = 0x171,
   1.471 -            SubChannelDecrement = 0x172,
   1.472 -            AlternateAudioIncrement = 0x173,
   1.473 -            AlternateAudioDecrement = 0x174,
   1.474 -            ApplicationLaunchButtons = 0x180,
   1.475 -            AppLaunchLaunchButtonConfigurationTool = 0x181,
   1.476 -            AppLaunchProgrammableButtonConfiguration = 0x182,
   1.477 -            AppLaunchConsumerControlConfiguration = 0x183,
   1.478 -            AppLaunchWordProcessor = 0x184,
   1.479 -            AppLaunchTextEditor = 0x185,
   1.480 -            AppLaunchSpreadsheet = 0x186,
   1.481 -            AppLaunchGraphicsEditor = 0x187,
   1.482 -            AppLaunchPresentationApp = 0x188,
   1.483 -            AppLaunchDatabaseApp = 0x189,
   1.484 -            AppLaunchEmailReader = 0x18A,
   1.485 -            AppLaunchNewsreader = 0x18B,
   1.486 -            AppLaunchVoicemail = 0x18C,
   1.487 -            AppLaunchContactsAddressBook = 0x18D,
   1.488 -            AppLaunchCalendarSchedule = 0x18E,
   1.489 -            AppLaunchTaskProjectManager = 0x18F,
   1.490 -            AppLaunchLogJournalTimecard = 0x190,
   1.491 -            AppLaunchCheckbookFinance = 0x191,
   1.492 -            AppLaunchCalculator = 0x192,
   1.493 -            AppLaunchAVCapturePlayback = 0x193,
   1.494 -            AppLaunchLocalMachineBrowser = 0x194,
   1.495 -            AppLaunchLanWanBrowser = 0x195,
   1.496 -            AppLaunchInternetBrowser = 0x196,
   1.497 -            AppLaunchRemoteNetworkingIspConnect = 0x197,
   1.498 -            AppLaunchNetworkConference = 0x198,
   1.499 -            AppLaunchNetworkChat = 0x199,
   1.500 -            AppLaunchTelephonyDialer = 0x19A,
   1.501 -            AppLaunchLogon = 0x19B,
   1.502 -            AppLaunchLogoff = 0x19C,
   1.503 -            AppLaunchLogonLogoff = 0x19D,
   1.504 -            AppLaunchTerminalLockScreensaver = 0x19E,
   1.505 -            AppLaunchControlPanel = 0x19F,
   1.506 -            AppLaunchCommandLineProcessorRun = 0x1A0,
   1.507 -            AppLaunchProcessTaskManager = 0x1A1,
   1.508 -            AppLaunchSelectTaskApplication = 0x1A2,
   1.509 -            AppLaunchNextTaskApplication = 0x1A3,
   1.510 -            AppLaunchPreviousTaskApplication = 0x1A4,
   1.511 -            AppLaunchPreemptiveHaltTaskApplication = 0x1A5,
   1.512 -            AppLaunchIntegratedHelpCenter = 0x1A6,
   1.513 -            AppLaunchDocuments = 0x1A7,
   1.514 -            AppLaunchThesaurus = 0x1A8,
   1.515 -            AppLaunchDictionary = 0x1A9,
   1.516 -            AppLaunchDesktop = 0x1AA,
   1.517 -            AppLaunchSpellCheck = 0x1AB,
   1.518 -            AppLaunchGrammarCheck = 0x1AC,
   1.519 -            AppLaunchWirelessStatus = 0x1AD,
   1.520 -            AppLaunchKeyboardLayout = 0x1AE,
   1.521 -            AppLaunchVirusProtection = 0x1AF,
   1.522 -            AppLaunchEncryption = 0x1B0,
   1.523 -            AppLaunchScreenSaver = 0x1B1,
   1.524 -            AppLaunchAlarms = 0x1B2,
   1.525 -            AppLaunchClock = 0x1B3,
   1.526 -            AppLaunchFileBrowser = 0x1B4,
   1.527 -            AppLaunchPowerStatus = 0x1B5,
   1.528 -            AppLaunchImageBrowser = 0x1B6,
   1.529 -            AppLaunchAudioBrowser = 0x1B7,
   1.530 -            AppLaunchMovieBrowser = 0x1B8,
   1.531 -            AppLaunchDigitalRightsManager = 0x1B9,
   1.532 -            AppLaunchDigitalWallet = 0x1BA,
   1.533 -            AppLaunchInstantMessaging = 0x1BC,
   1.534 -            AppLaunchOemFeaturesTipsTutorialBrowser = 0x1BD,
   1.535 -            AppLaunchOemHelp = 0x1BE,
   1.536 -            AppLaunchOnlineCommunity = 0x1BF,
   1.537 -            AppLaunchEntertainmentContentBrowser = 0x1C0,
   1.538 -            AppLaunchOnlineShoppingBrowser = 0x1C1,
   1.539 -            AppLaunchSmartcardInformationHelp = 0x1C2,
   1.540 -            AppLaunchMarketMonitorFinanceBrowser = 0x1C3,
   1.541 -            AppLaunchCustomizedCorporateNewsBrowser = 0x1C4,
   1.542 -            AppLaunchOnlineActivityBrowser = 0x1C5,
   1.543 -            AppLaunchResearchSearchBrowser = 0x1C6,
   1.544 -            AppLaunchAudioPlayer = 0x1C7,
   1.545 -            GenericGuiApplicationControls = 0x200,
   1.546 -            AppCtrlNew = 0x201,
   1.547 -            AppCtrlOpen = 0x202,
   1.548 -            AppCtrlClose = 0x203,
   1.549 -            AppCtrlExit = 0x204,
   1.550 -            AppCtrlMaximize = 0x205,
   1.551 -            AppCtrlMinimize = 0x206,
   1.552 -            AppCtrlSave = 0x207,
   1.553 -            AppCtrlPrint = 0x208,
   1.554 -            AppCtrlProperties = 0x209,
   1.555 -            AppCtrlUndo = 0x21A,
   1.556 -            AppCtrlCopy = 0x21B,
   1.557 -            AppCtrlCut = 0x21C,
   1.558 -            AppCtrlPaste = 0x21D,
   1.559 -            AppCtrlSelectAll = 0x21E,
   1.560 -            AppCtrlFind = 0x21F,
   1.561 -            AppCtrlFindAndReplace = 0x220,
   1.562 -            AppCtrlSearch = 0x221,
   1.563 -            AppCtrlGoTo = 0x222,
   1.564 -            AppCtrlHome = 0x223,
   1.565 -            AppCtrlBack = 0x224,
   1.566 -            AppCtrlForward = 0x225,
   1.567 -            AppCtrlStop = 0x226,
   1.568 -            AppCtrlRefresh = 0x227,
   1.569 -            AppCtrlPreviousLink = 0x228,
   1.570 -            AppCtrlNextLink = 0x229,
   1.571 -            AppCtrlBookmarks = 0x22A,
   1.572 -            AppCtrlHistory = 0x22B,
   1.573 -            AppCtrlSubscriptions = 0x22C,
   1.574 -            AppCtrlZoomIn = 0x22D,
   1.575 -            AppCtrlZoomOut = 0x22E,
   1.576 -            AppCtrlZoom = 0x22F,
   1.577 -            AppCtrlFullScreenView = 0x230,
   1.578 -            AppCtrlNormalView = 0x231,
   1.579 -            AppCtrlViewToggle = 0x232,
   1.580 -            AppCtrlScrollUp = 0x233,
   1.581 -            AppCtrlScrollDown = 0x234,
   1.582 -            AppCtrlScroll = 0x235,
   1.583 -            AppCtrlPanLeft = 0x236,
   1.584 -            AppCtrlPanRight = 0x237,
   1.585 -            AppCtrlPan = 0x238,
   1.586 -            AppCtrlNewWindow = 0x239,
   1.587 -            AppCtrlTileHorizontally = 0x23A,
   1.588 -            AppCtrlTileVertically = 0x23B,
   1.589 -            AppCtrlFormat = 0x23C,
   1.590 -            AppCtrlEdit = 0x23D,
   1.591 -            AppCtrlBold = 0x23E,
   1.592 -            AppCtrlItalics = 0x23F,
   1.593 -            AppCtrlUnderline = 0x240,
   1.594 -            AppCtrlStrikethrough = 0x241,
   1.595 -            AppCtrlSubscript = 0x242,
   1.596 -            AppCtrlSuperscript = 0x243,
   1.597 -            AppCtrlAllCaps = 0x244,
   1.598 -            AppCtrlRotate = 0x245,
   1.599 -            AppCtrlResize = 0x246,
   1.600 -            AppCtrlFlipHorizontal = 0x247,
   1.601 -            AppCtrlFlipVertical = 0x248,
   1.602 -            AppCtrlMirrorHorizontal = 0x249,
   1.603 -            AppCtrlMirrorVertical = 0x24A,
   1.604 -            AppCtrlFontSelect = 0x24B,
   1.605 -            AppCtrlFontColor = 0x24C,
   1.606 -            AppCtrlFontSize = 0x24D,
   1.607 -            AppCtrlJustifyLeft = 0x24E,
   1.608 -            AppCtrlJustifyCenterH = 0x24F,
   1.609 -            AppCtrlJustifyRight = 0x250,
   1.610 -            AppCtrlJustifyBlockH = 0x251,
   1.611 -            AppCtrlJustifyTop = 0x252,
   1.612 -            AppCtrlJustifyCenterV = 0x253,
   1.613 -            AppCtrlJustifyBottom = 0x254,
   1.614 -            AppCtrlJustifyBlockV = 0x255,
   1.615 -            AppCtrlIndentDecrease = 0x256,
   1.616 -            AppCtrlIndentIncrease = 0x257,
   1.617 -            AppCtrlNumberedList = 0x258,
   1.618 -            AppCtrlRestartNumbering = 0x259,
   1.619 -            AppCtrlBulletedList = 0x25A,
   1.620 -            AppCtrlPromote = 0x25B,
   1.621 -            AppCtrlDemote = 0x25C,
   1.622 -            AppCtrlYes = 0x25D,
   1.623 -            AppCtrlNo = 0x25E,
   1.624 -            AppCtrlCancel = 0x25F,
   1.625 -            AppCtrlCatalog = 0x260,
   1.626 -            AppCtrlBuyCheckout = 0x261,
   1.627 -            AppCtrlAddToCart = 0x262,
   1.628 -            AppCtrlExpand = 0x263,
   1.629 -            AppCtrlExpandAll = 0x264,
   1.630 -            AppCtrlCollapse = 0x265,
   1.631 -            AppCtrlCollapseAll = 0x266,
   1.632 -            AppCtrlPrintPreview = 0x267,
   1.633 -            AppCtrlPasteSpecial = 0x268,
   1.634 -            AppCtrlInsertMode = 0x269,
   1.635 -            AppCtrlDelete = 0x26A,
   1.636 -            AppCtrlLock = 0x26B,
   1.637 -            AppCtrlUnlock = 0x26C,
   1.638 -            AppCtrlProtect = 0x26D,
   1.639 -            AppCtrlUnprotect = 0x26E,
   1.640 -            AppCtrlAttachComment = 0x26F,
   1.641 -            AppCtrlDeleteComment = 0x270,
   1.642 -            AppCtrlViewComment = 0x271,
   1.643 -            AppCtrlSelectWord = 0x272,
   1.644 -            AppCtrlSelectSentence = 0x273,
   1.645 -            AppCtrlSelectParagraph = 0x274,
   1.646 -            AppCtrlSelectColumn = 0x275,
   1.647 -            AppCtrlSelectRow = 0x276,
   1.648 -            AppCtrlSelectTable = 0x277,
   1.649 -            AppCtrlSelectObject = 0x278,
   1.650 -            AppCtrlRedoRepeat = 0x279,
   1.651 -            AppCtrlSort = 0x27A,
   1.652 -            AppCtrlSortAscending = 0x27B,
   1.653 -            AppCtrlSortDescending = 0x27C,
   1.654 -            AppCtrlFilter = 0x27D,
   1.655 -            AppCtrlSetClock = 0x27E,
   1.656 -            AppCtrlViewClock = 0x27F,
   1.657 -            AppCtrlSelectTimeZone = 0x280,
   1.658 -            AppCtrlEditTimeZones = 0x281,
   1.659 -            AppCtrlSetAlarm = 0x282,
   1.660 -            AppCtrlClearAlarm = 0x283,
   1.661 -            AppCtrlSnoozeAlarm = 0x284,
   1.662 -            AppCtrlResetAlarm = 0x285,
   1.663 -            AppCtrlSynchronize = 0x286,
   1.664 -            AppCtrlSendReceive = 0x287,
   1.665 -            AppCtrlSendTo = 0x288,
   1.666 -            AppCtrlReply = 0x289,
   1.667 -            AppCtrlReplyAll = 0x28A,
   1.668 -            AppCtrlForwardMsg = 0x28B,
   1.669 -            AppCtrlSend = 0x28C,
   1.670 -            AppCtrlAttachFile = 0x28D,
   1.671 -            AppCtrlUpload = 0x28E,
   1.672 -            AppCtrlDownloadSaveTargetAs = 0x28F,
   1.673 -            AppCtrlSetBorders = 0x290,
   1.674 -            AppCtrlInsertRow = 0x291,
   1.675 -            AppCtrlInsertColumn = 0x292,
   1.676 -            AppCtrlInsertFile = 0x293,
   1.677 -            AppCtrlInsertPicture = 0x294,
   1.678 -            AppCtrlInsertObject = 0x295,
   1.679 -            AppCtrlInsertSymbol = 0x296,
   1.680 -            AppCtrlSaveAndClose = 0x297,
   1.681 -            AppCtrlRename = 0x298,
   1.682 -            AppCtrlMerge = 0x299,
   1.683 -            AppCtrlSplit = 0x29A,
   1.684 -            AppCtrlDistributeHorizontally = 0x29B,
   1.685 -            AppCtrlDistributeVertically = 0x29C
   1.686 -        }
   1.687 -
   1.688 -        /// <summary>
   1.689 -        ///
   1.690 -        /// </summary>
   1.691 -        enum GenericDesktop : ushort
   1.692 -        {
   1.693 -            Null = 0x00,
   1.694 -            Pointer = 0x01,
   1.695 -            Mouse = 0x02,
   1.696 -            Joystick = 0x04,
   1.697 -            GamePad = 0x05,
   1.698 -            Keyboard = 0x06,
   1.699 -            Keypad = 0x07,
   1.700 -            MultiAxisController = 0x08,
   1.701 -            TabletPcSystemControls = 0x09,
   1.702 -            X = 0x30,
   1.703 -            Y = 0x31,
   1.704 -            Z = 0x32,
   1.705 -            Rx = 0x33,
   1.706 -            Ry = 0x34,
   1.707 -            Rz = 0x35,
   1.708 -            Slider = 0x36,
   1.709 -            Dial = 0x37,
   1.710 -            Wheel = 0x38,
   1.711 -            HatSwitch = 0x39,
   1.712 -            CountedBuffer = 0x3A,
   1.713 -            ByteCount = 0x3B,
   1.714 -            MotionWakeup = 0x3C,
   1.715 -            Start = 0x3D,
   1.716 -            Select = 0x3E,
   1.717 -            Vx = 0x40,
   1.718 -            Vy = 0x41,
   1.719 -            Vz = 0x42,
   1.720 -            Vbrx = 0x43,
   1.721 -            Vbry = 0x44,
   1.722 -            Vbrz = 0x45,
   1.723 -            Vno = 0x46,
   1.724 -            SystemControl = 0x80,
   1.725 -            SystemPowerDown = 0x81,
   1.726 -            SystemSleep = 0x82,
   1.727 -            SystemWakeUp = 0x83,
   1.728 -            SystemContextMenu = 0x84,
   1.729 -            SystemMainMenu = 0x85,
   1.730 -            SystemAppMenu = 0x86,
   1.731 -            SystemMenuHelp = 0x87,
   1.732 -            SystemMenuExit = 0x88,
   1.733 -            SystemMenuSelect = 0x89,
   1.734 -            SystemMenuRight = 0x8A,
   1.735 -            SystemMenuLeft = 0x8B,
   1.736 -            SystemMenuUp = 0x8C,
   1.737 -            SystemMenuDown = 0x8D,
   1.738 -            SystemColdRestart = 0x8E,
   1.739 -            SystemWarmRestart = 0x8F,
   1.740 -            DPadUp = 0x90,
   1.741 -            DPadDown = 0x91,
   1.742 -            DPadRight = 0x92,
   1.743 -            DPadLeft = 0x93,
   1.744 -            SystemDock = 0xA0,
   1.745 -            SystemUndock = 0xA1,
   1.746 -            SystemSetup = 0xA2,
   1.747 -            SystemBreak = 0xA3,
   1.748 -            SystemDebuggerBreak = 0xA4,
   1.749 -            ApplicationBreak = 0xA5,
   1.750 -            ApplicationDebuggerBreak = 0xA6,
   1.751 -            SystemSpeakerMute = 0xA7,
   1.752 -            SystemHibernate = 0xA8,
   1.753 -            SystemDisplayInvert = 0xB0,
   1.754 -            SystemDisplayInternal = 0xB1,
   1.755 -            SystemDisplayExternal = 0xB2,
   1.756 -            SystemDisplayBoth = 0xB3,
   1.757 -            SystemDisplayDual = 0xB4,
   1.758 -            SystemDisplayToggleIntExt = 0xB5,
   1.759 -            SystemDisplaySwapPrimarySecondary = 0xB6,
   1.760 -            SystemDisplayLcdAutoscale = 0xB7
   1.761 -        }
   1.762 -
   1.763 -        /// <summary>
   1.764 -        ///
   1.765 -        /// </summary>
   1.766 -        enum SimulationControl : ushort
   1.767 -        {
   1.768 -            Null = 0x00,
   1.769 -            FlightSimulationDevice = 0x01,
   1.770 -            AutomobileSimulationDevice = 0x02,
   1.771 -            TankSimulationDevice = 0x03,
   1.772 -            SpaceshipSimulationDevice = 0x04,
   1.773 -            SubmarineSimulationDevice = 0x05,
   1.774 -            SailingSimulationDevice = 0x06,
   1.775 -            MotorcycleSimulationDevice = 0x07,
   1.776 -            SportsSimulationDevice = 0x08,
   1.777 -            AirplaneSimulationDevice = 0x09,
   1.778 -            HelicopterSimulationDevice = 0x0A,
   1.779 -            MagicCarpetSimulationDevice = 0x0B,
   1.780 -            BicycleSimulationDevice = 0x0C,
   1.781 -            FlightControlStick = 0x20,
   1.782 -            FlightStick = 0x21,
   1.783 -            CyclicControl = 0x22,
   1.784 -            CyclicTrim = 0x23,
   1.785 -            FlightYoke = 0x24,
   1.786 -            TrackControl = 0x25,
   1.787 -            Aileron = 0xB0,
   1.788 -            AileronTrim = 0xB1,
   1.789 -            AntiTorqueControl = 0xB2,
   1.790 -            AutopilotEnable = 0xB3,
   1.791 -            ChaffRelease = 0xB4,
   1.792 -            CollectiveControl = 0xB5,
   1.793 -            DiveBrake = 0xB6,
   1.794 -            ElectronicCountermeasures = 0xB7,
   1.795 -            Elevator = 0xB8,
   1.796 -            ElevatorTrim = 0xB9,
   1.797 -            Rudder = 0xBA,
   1.798 -            Throttle = 0xBB,
   1.799 -            FlightCommunications = 0xBC,
   1.800 -            FlareRelease = 0xBD,
   1.801 -            LandingGear = 0xBE,
   1.802 -            ToeBrake = 0xBF,
   1.803 -            Trigger = 0xC0,
   1.804 -            WeaponsArm = 0xC1,
   1.805 -            WeaponsSelect = 0xC2,
   1.806 -            WingFlaps = 0xC3,
   1.807 -            Accelerator = 0xC4,
   1.808 -            Brake = 0xC5,
   1.809 -            Clutch = 0xC6,
   1.810 -            Shifter = 0xC7,
   1.811 -            Steering = 0xC8,
   1.812 -            TurretDirection = 0xC9,
   1.813 -            BarrelElevation = 0xCA,
   1.814 -            DivePlane = 0xCB,
   1.815 -            Ballast = 0xCC,
   1.816 -            BicycleCrank = 0xCD,
   1.817 -            HandleBars = 0xCE,
   1.818 -            FrontBrake = 0xCF,
   1.819 -            RearBrake = 0xD0
   1.820 -        }
   1.821 -
   1.822 -        /// <summary>
   1.823 -        ///
   1.824 -        /// </summary>
   1.825 -        enum GameControl : ushort
   1.826 -        {
   1.827 -            Null = 0x00,
   1.828 -            GameController3D = 0x01,
   1.829 -            PinballDevice = 0x02,
   1.830 -            GunDevice = 0x03,
   1.831 -            PointOfView = 0x20,
   1.832 -            TurnRightLeft = 0x21,
   1.833 -            PitchForwardBackward = 0x22,
   1.834 -            RollRightLeft = 0x23,
   1.835 -            MoveRightLeft = 0x24,
   1.836 -            MoveForwardBackward = 0x25,
   1.837 -            MoveUpDown = 0x26,
   1.838 -            LeanRightLeft = 0x27,
   1.839 -            LeanForwardBackward = 0x28,
   1.840 -            HeightOfPov = 0x29,
   1.841 -            Flipper = 0x2A,
   1.842 -            SecondaryFlipper = 0x2B,
   1.843 -            Bump = 0x2C,
   1.844 -            NewGame = 0x2D,
   1.845 -            ShootBall = 0x2E,
   1.846 -            Player = 0x2F,
   1.847 -            GunBolt = 0x30,
   1.848 -            GunClip = 0x31,
   1.849 -            GunSelector = 0x32,
   1.850 -            GunSingleShot = 0x33,
   1.851 -            GunBurst = 0x34,
   1.852 -            GunAutomatic = 0x35,
   1.853 -            GunSafety = 0x36,
   1.854 -            GamepadFireJump = 0x37,
   1.855 -            GamepadTrigger = 0x39
   1.856 -        }
   1.857 -
   1.858 -        /// <summary>
   1.859 -        ///
   1.860 -        /// </summary>
   1.861 -        enum TelephonyDevice : ushort
   1.862 -        {
   1.863 -            Null = 0x00,
   1.864 -            Phone = 0x01,
   1.865 -            AnsweringMachine = 0x02,
   1.866 -            MessageControls = 0x03,
   1.867 -            Handset = 0x04,
   1.868 -            Headset = 0x05,
   1.869 -            TelephonyKeyPad = 0x06,
   1.870 -            ProgrammableButton = 0x07,
   1.871 -            HookSwitch = 0x20,
   1.872 -            Flash = 0x21,
   1.873 -            Feature = 0x22,
   1.874 -            Hold = 0x23,
   1.875 -            Redial = 0x24,
   1.876 -            Transfer = 0x25,
   1.877 -            Drop = 0x26,
   1.878 -            Park = 0x27,
   1.879 -            ForwardCalls = 0x28,
   1.880 -            AlternateFunction = 0x29,
   1.881 -            Line = 0x2A,
   1.882 -            SpeakerPhone = 0x2B,
   1.883 -            Conference = 0x2C,
   1.884 -            RingEnable = 0x2D,
   1.885 -            RingSelect = 0x2E,
   1.886 -            PhoneMute = 0x2F,
   1.887 -            CallerId = 0x30,
   1.888 -            Send = 0x31,
   1.889 -            SpeedDial = 0x50,
   1.890 -            StoreNumber = 0x51,
   1.891 -            RecallNumber = 0x52,
   1.892 -            PhoneDirectory = 0x53,
   1.893 -            VoiceMail = 0x70,
   1.894 -            ScreenCalls = 0x71,
   1.895 -            DoNotDisturb = 0x72,
   1.896 -            Message = 0x73,
   1.897 -            AnswerOnOff = 0x74,
   1.898 -            InsideDialTone = 0x90,
   1.899 -            OutsideDialTone = 0x91,
   1.900 -            InsideRingTone = 0x92,
   1.901 -            OutsideRingTone = 0x93,
   1.902 -            PriorityRingTone = 0x94,
   1.903 -            InsideRingback = 0x95,
   1.904 -            PriorityRingback = 0x96,
   1.905 -            LineBusyTone = 0x97,
   1.906 -            ReorderTone = 0x98,
   1.907 -            CallWaitingTone = 0x99,
   1.908 -            ConfirmationTone1 = 0x9A,
   1.909 -            ConfirmationTone2 = 0x9B,
   1.910 -            TonesOff = 0x9C,
   1.911 -            OutsideRingback = 0x9D,
   1.912 -            Ringer = 0x9E,
   1.913 -            PhoneKey0 = 0xB0,
   1.914 -            PhoneKey1 = 0xB1,
   1.915 -            PhoneKey2 = 0xB2,
   1.916 -            PhoneKey3 = 0xB3,
   1.917 -            PhoneKey4 = 0xB4,
   1.918 -            PhoneKey5 = 0xB5,
   1.919 -            PhoneKey6 = 0xB6,
   1.920 -            PhoneKey7 = 0xB7,
   1.921 -            PhoneKey8 = 0xB8,
   1.922 -            PhoneKey9 = 0xB9,
   1.923 -            PhoneKeyStar = 0xBA,
   1.924 -            PhoneKeyPound = 0xBB,
   1.925 -            PhoneKeyA = 0xBC,
   1.926 -            PhoneKeyB = 0xBD,
   1.927 -            PhoneKeyC = 0xBE,
   1.928 -            PhoneKeyD = 0xBF
   1.929 -        }
   1.930 -    }
   1.931 -}
   1.932 \ No newline at end of file