HidUsageTables.cs
author StephaneLenclud
Sun, 15 Mar 2015 14:39:21 +0100
changeset 76 831ebeeecfdf
parent 66 3461ee6800e3
child 77 fb9ea5ad8c2d
permissions -rw-r--r--
Copyright and namespace.
sl@8
     1
//
StephaneLenclud@76
     2
// Copyright (C) 2014-2015 Stéphane Lenclud.
sl@8
     3
//
StephaneLenclud@76
     4
// This file is part of SharpLibHid.
StephaneLenclud@76
     5
//
StephaneLenclud@76
     6
// SharpDisplayManager is free software: you can redistribute it and/or modify
StephaneLenclud@76
     7
// it under the terms of the GNU General Public License as published by
StephaneLenclud@76
     8
// the Free Software Foundation, either version 3 of the License, or
StephaneLenclud@76
     9
// (at your option) any later version.
StephaneLenclud@76
    10
//
StephaneLenclud@76
    11
// SharpDisplayManager is distributed in the hope that it will be useful,
StephaneLenclud@76
    12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
StephaneLenclud@76
    13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
StephaneLenclud@76
    14
// GNU General Public License for more details.
StephaneLenclud@76
    15
//
StephaneLenclud@76
    16
// You should have received a copy of the GNU General Public License
StephaneLenclud@76
    17
// along with SharpDisplayManager.  If not, see <http://www.gnu.org/licenses/>.
sl@8
    18
//
sl@8
    19
StephaneLenclud@76
    20
namespace SharpLibHid
sl@8
    21
{
sl@8
    22
    /// <summary>
sl@8
    23
    /// From USB HID usage tables.
sl@8
    24
    /// http://www.usb.org/developers/hidpage#HID_Usage
sl@8
    25
    /// http://www.usb.org/developers/devclass_docs/Hut1_12v2.pdf
sl@8
    26
    /// </summary>
sl@8
    27
    public enum UsagePage : ushort
sl@8
    28
    {
sl@8
    29
        Undefined = 0,
sl@28
    30
        GenericDesktopControls,
sl@28
    31
        SimulationControls,
sl@28
    32
        VirtualRealityControls,
sl@28
    33
        SportControls,
sl@28
    34
        GameControls,
sl@28
    35
        GenericDeviceControls,
sl@8
    36
        Keyboard,
sl@8
    37
        LightEmittingDiode,
sl@8
    38
        Button,
sl@8
    39
        Ordinal,
sl@8
    40
        Telephony,
sl@8
    41
        Consumer,
sl@8
    42
        Digitiser,
sl@8
    43
        PhysicalInterfaceDevice = 0x0f,
sl@8
    44
        Unicode = 0x10,
sl@8
    45
        AlphaNumericDisplay = 0x14,
sl@8
    46
        MedicalInstruments = 0x40,
sl@8
    47
        MonitorPage0 = 0x80,
sl@8
    48
        MonitorPage1,
sl@8
    49
        MonitorPage2,
sl@8
    50
        MonitorPage3,
sl@8
    51
        PowerPage0,
sl@8
    52
        PowerPage1,
sl@8
    53
        PowerPage2,
sl@8
    54
        PowerPage3,
sl@8
    55
        BarCodeScanner = 0x8c,
sl@8
    56
        Scale,
sl@8
    57
        MagneticStripeReader,
sl@8
    58
        ReservedPointOfSale,
sl@8
    59
        CameraControl,
sl@8
    60
        Arcade,
sl@8
    61
        // http://msdn.microsoft.com/en-us/library/windows/desktop/bb417079.aspx
sl@30
    62
        WindowsMediaCenterRemoteControl = 0xffbc,
sl@8
    63
        TerraTecRemote = 0xffcc
sl@8
    64
    }
sl@8
    65
StephaneLenclud@61
    66
    /// <summary>
StephaneLenclud@66
    67
    /// Usage Collections are special values from our Usage enumeration.
StephaneLenclud@66
    68
    /// Thus they are also part of the corresponding Usage enumeration.
StephaneLenclud@61
    69
    /// </summary>
StephaneLenclud@66
    70
    namespace UsageCollection
sl@33
    71
    {
StephaneLenclud@66
    72
        /// <summary>
StephaneLenclud@66
    73
        /// Usage Collection for usage page GenericDesktopControls.
StephaneLenclud@66
    74
        /// </summary>
StephaneLenclud@66
    75
        public enum GenericDesktop : ushort
StephaneLenclud@66
    76
        {
StephaneLenclud@66
    77
            Pointer = 0x01,
StephaneLenclud@66
    78
            Mouse = 0x02,
StephaneLenclud@66
    79
            Joystick = 0x04,
StephaneLenclud@66
    80
            GamePad = 0x05,
StephaneLenclud@66
    81
            Keyboard = 0x06,
StephaneLenclud@66
    82
            KeyPad = 0x07,
StephaneLenclud@66
    83
            MultiAxisController = 0x08,
StephaneLenclud@66
    84
            TabletPCSystemControls = 0x09,
StephaneLenclud@66
    85
            SystemControl = 0x80
StephaneLenclud@66
    86
        }
StephaneLenclud@66
    87
StephaneLenclud@66
    88
        /// <summary>
StephaneLenclud@66
    89
        /// Usage Collection for usage page Consumer.
StephaneLenclud@66
    90
        /// </summary>
StephaneLenclud@66
    91
        public enum Consumer : ushort
StephaneLenclud@66
    92
        {
StephaneLenclud@66
    93
            ConsumerControl = 0x01,
StephaneLenclud@66
    94
            NumericKeyPad = 0x02,
StephaneLenclud@66
    95
            ProgrammableButtons = 0x03,
StephaneLenclud@66
    96
            Microphone = 0x04,
StephaneLenclud@66
    97
            Headphone = 0x05,
StephaneLenclud@66
    98
            GraphicEqualizer = 0x06,
StephaneLenclud@66
    99
            FunctionButtons = 0x36,
StephaneLenclud@66
   100
            Selection = 0x80,
StephaneLenclud@66
   101
            MediaSelection = 0x0087,
StephaneLenclud@66
   102
            SelectDisc = 0x00BA,
StephaneLenclud@66
   103
            PlaybackSpeed = 0x00F1,
StephaneLenclud@66
   104
            Proximity = 0x0109,
StephaneLenclud@66
   105
            SpeakerSystem = 0x0160,
StephaneLenclud@66
   106
            ChannelLeft = 0x0161,
StephaneLenclud@66
   107
            ChannelRight = 0x0162,
StephaneLenclud@66
   108
            ChannelCenter = 0x0163,
StephaneLenclud@66
   109
            ChannelFront = 0x0164,
StephaneLenclud@66
   110
            ChannelCenterFront = 0x0165,
StephaneLenclud@66
   111
            ChannelSide = 0x0166,
StephaneLenclud@66
   112
            ChannelSurrond = 0x0167,
StephaneLenclud@66
   113
            ChannelLowFrequencyEnhancement = 0x0168,
StephaneLenclud@66
   114
            ChannelTop = 0x0169,
StephaneLenclud@66
   115
            ChannelUnknown = 0x016A,
StephaneLenclud@66
   116
            ApplicationLaunchButtons = 0x016A,
StephaneLenclud@66
   117
            GenericGuiApplicationControls = 0x0200,
StephaneLenclud@66
   118
        }
StephaneLenclud@66
   119
StephaneLenclud@66
   120
StephaneLenclud@66
   121
        public enum WindowsMediaCenter : ushort
StephaneLenclud@66
   122
        {
StephaneLenclud@66
   123
            WindowsMediaCenterRemoteControl = 0x88
StephaneLenclud@66
   124
        }
StephaneLenclud@66
   125
sl@21
   126
    }
sl@21
   127
sl@21
   128
sl@33
   129
StephaneLenclud@66
   130
    namespace Usage
sl@8
   131
    {
sl@8
   132
        /// <summary>
sl@8
   133
        ///
sl@8
   134
        /// </summary>
sl@35
   135
        public enum WindowsMediaCenterRemoteControl : ushort
sl@8
   136
        {
sl@8
   137
            /// <summary>
sl@8
   138
            /// Not defined by the Microsoft specs.
sl@8
   139
            /// </summary>
sl@35
   140
            Null = 0x00,
sl@35
   141
            GreenStart = 0x0D,
sl@35
   142
            ClosedCaptioning = 0x2B,
sl@35
   143
            Teletext = 0x5A,
sl@35
   144
            TeletextRed = 0x5B,
sl@35
   145
            TeletextGreen = 0x5C,
sl@35
   146
            TeletextYellow = 0x5D,
sl@35
   147
            TeletextBlue = 0x5E,
sl@35
   148
            LiveTv = 0x25,
sl@35
   149
            Tv = 0x46,
sl@35
   150
            Music = 0x47,
sl@35
   151
            RecordedTv = 0x48,
sl@35
   152
            Pictures = 0x49,
sl@35
   153
            Videos = 0x4A,
sl@35
   154
            FmRadio = 0x50,
sl@35
   155
            Extras = 0x3C,
sl@35
   156
            ExtrasApp = 0x3D,
sl@35
   157
            DvdMenu = 0x24,
sl@35
   158
            DvdAngle = 0x4B,
sl@35
   159
            DvdAudio = 0x4C,
sl@35
   160
            DvdSubtitle = 0x4D,
sl@8
   161
            /// <summary>
sl@8
   162
            /// First press action: Ejects a DVD drive.
sl@8
   163
            /// <para />
sl@8
   164
            /// Second press action: Repeats first press action.
sl@8
   165
            /// <para />
sl@8
   166
            /// Notably issued by XBOX360 remote as defined in irplus - Remote Control - Android application.
sl@8
   167
            /// </summary>
sl@35
   168
            Eject = 0x28,
sl@35
   169
            DvdTopMenu = 0x43,
sl@8
   170
            /// <summary>
sl@8
   171
            /// First press action: Generates EXTn HID message in the Media Center Vendor Specific
sl@8
   172
            /// Collection (page 0xFFBC, usage 0x88).
sl@8
   173
            /// <para />
sl@8
   174
            /// Second press action: Repeats message.
sl@8
   175
            /// <para />
sl@8
   176
            /// Auto-repeat: No
sl@8
   177
            /// <para />
sl@8
   178
            /// Notably sent by the 'Visualization' button of HP Windows Media Center Remote (TSGH-IR08).
sl@8
   179
            /// <para />
sl@8
   180
            /// According to HP specs it displays visual imagery that is synchronized to the sound of your music tracks.
sl@8
   181
            /// </summary>
sl@35
   182
            Ext0 = 0x32,
sl@8
   183
            /// <summary>
sl@8
   184
            /// First press action: Generates EXTn HID message in the Media Center Vendor Specific
sl@8
   185
            /// Collection (page 0xFFBC, usage 0x88).
sl@8
   186
            /// <para />
sl@8
   187
            /// Second press action: Repeats message.
sl@8
   188
            /// <para />
sl@8
   189
            /// Auto-repeat: No
sl@8
   190
            /// <para />
sl@8
   191
            /// Notably sent by the 'Slide Show' button of HP Windows Media Center Remote (TSGH-IR08).
sl@8
   192
            /// <para />
sl@8
   193
            /// According to HP specs it plays a slide show of all the pictures on your hard disk drive.
sl@8
   194
            /// </summary>
sl@35
   195
            Ext1 = 0x33,
sl@8
   196
            /// <summary>
sl@8
   197
            /// First press action: Generates EXTn HID message in the Media Center Vendor Specific
sl@8
   198
            /// Collection (page 0xFFBC, usage 0x88).
sl@8
   199
            /// <para />
sl@8
   200
            /// Second press action: Repeats message.
sl@8
   201
            /// <para />
sl@8
   202
            /// Auto-repeat: No
sl@8
   203
            /// <para />
sl@8
   204
            /// Notably sent by the 'Eject' button of HP Windows Media Center Remote (TSGH-IR08).
sl@8
   205
            /// Also interpreted as 'Eject' action by SoundGraph iMON Manager in MCE mode (OrigenAE VF310).
sl@8
   206
            /// </summary>
sl@35
   207
            Ext2 = 0x34,
sl@8
   208
            /// <summary>
sl@8
   209
            /// First press action: Generates EXTn HID message in the Media Center Vendor Specific
sl@8
   210
            /// Collection (page 0xFFBC, usage 0x88).
sl@8
   211
            /// <para />
sl@8
   212
            /// Second press action: Repeats message.
sl@8
   213
            /// <para />
sl@8
   214
            /// Auto-repeat: No
sl@8
   215
            /// <para />
sl@8
   216
            /// Notably sent by the 'Input selection' button of HP Windows Media Center Remote (TSGH-IR08).
sl@8
   217
            /// </summary>
sl@35
   218
            Ext3 = 0x35,
sl@35
   219
            Ext4 = 0x36,
sl@35
   220
            Ext5 = 0x37,
sl@35
   221
            Ext6 = 0x38,
sl@35
   222
            Ext7 = 0x39,
sl@35
   223
            Ext8 = 0x3A,
sl@35
   224
            Ext9 = 0x80,
sl@35
   225
            Ext10 = 0x81,
sl@35
   226
            Ext11 = 0x6F,
sl@35
   227
            Zoom = 0x27,
sl@35
   228
            ChannelInput = 0x42,
sl@35
   229
            SubAudio = 0x2D,
sl@35
   230
            Channel10 = 0x3E,
sl@35
   231
            Channel11 = 0x3F,
sl@35
   232
            Channel12 = 0x40,
sl@8
   233
            /// <summary>
sl@8
   234
            /// First press action: Generates OEM2 HID message in the Media Center Vendor Specific
sl@8
   235
            /// Collection. This button is intended to control the front panel display of home entertainment
sl@8
   236
            /// computers. When this button is pressed, the display could be turned on or off, or the display
sl@8
   237
            /// mode could change.
sl@8
   238
            /// <para />
sl@8
   239
            /// Second press action: Repeats message.
sl@8
   240
            /// <para />
sl@8
   241
            /// Auto-repeat: No
sl@8
   242
            /// <para />
sl@8
   243
            /// Notably issued by XBOX360 remote as defined in irplus - Remote Control - Android application.
sl@8
   244
            /// </summary>
sl@35
   245
            Display = 0x4F,
sl@8
   246
            /// <summary>
sl@8
   247
            /// First press action: To be determined.
sl@8
   248
            /// <para />
sl@8
   249
            /// Second press action: Repeats message.
sl@8
   250
            /// <para />
sl@8
   251
            /// Auto-repeat: No
sl@8
   252
            /// </summary>
sl@35
   253
            Kiosk = 0x6A,
sl@35
   254
            NetworkSelection = 0x2C,
sl@35
   255
            BlueRayTool = 0x78,
sl@35
   256
            ChannelInfo = 0x41,
sl@35
   257
            VideoSelection = 0x61
sl@8
   258
        }
sl@8
   259
sl@11
   260
        /// <summary>
sl@11
   261
        /// Those codes come from experimenting with HP remotes.
sl@11
   262
        /// </summary>
sl@31
   263
        public enum HpWindowsMediaCenterRemoteControl : ushort
sl@8
   264
        {
sl@8
   265
            /// <summary>
sl@8
   266
            /// Displays visual imagery that is synchronized to the sound of your music tracks.
sl@8
   267
            /// <para />
sl@8
   268
            /// Second press action: Repeats message.
sl@8
   269
            /// <para />
sl@8
   270
            /// Auto-repeat: No
sl@8
   271
            /// <para />
sl@8
   272
            /// Notably sent by the 'Visualization' button of HP Windows Media Center Remote (TSGH-IR08).
sl@8
   273
            /// <para />
sl@8
   274
            /// According to HP specs it displays visual imagery that is synchronized to the sound of your music tracks.
sl@8
   275
            /// </summary>
sl@30
   276
            Visualization = WindowsMediaCenterRemoteControl.Ext0,
sl@8
   277
            /// <summary>
sl@8
   278
            /// Plays a slide show of all the pictures on your hard disk drive.
sl@8
   279
            /// <para />
sl@8
   280
            /// Second press action: Repeats message.
sl@8
   281
            /// <para />
sl@8
   282
            /// Auto-repeat: No
sl@8
   283
            /// <para />
sl@8
   284
            /// Notably sent by the 'Slide Show' button of HP Windows Media Center Remote (TSGH-IR08).
sl@8
   285
            /// <para />
sl@8
   286
            /// According to HP specs it plays a slide show of all the pictures on your hard disk drive.
sl@8
   287
            /// </summary>
sl@30
   288
            SlideShow = WindowsMediaCenterRemoteControl.Ext1,
sl@8
   289
            /// <summary>
sl@8
   290
            /// Eject optical drive.
sl@8
   291
            /// <para />
sl@8
   292
            /// Second press action: Repeats message.
sl@8
   293
            /// <para />
sl@8
   294
            /// Auto-repeat: No
sl@8
   295
            /// <para />
sl@8
   296
            /// Notably sent by the 'Eject' button of HP Windows Media Center Remote (TSGH-IR08).
sl@8
   297
            /// Also interpreted as 'Eject' action by SoundGraph iMON Manager in MCE mode (OrigenAE VF310).
sl@8
   298
            /// </summary>
sl@31
   299
            HpEject = WindowsMediaCenterRemoteControl.Ext2,
sl@8
   300
            /// <summary>
sl@8
   301
            /// Not sure what this should do.
sl@8
   302
            /// <para />
sl@8
   303
            /// Second press action: Repeats message.
sl@8
   304
            /// <para />
sl@8
   305
            /// Auto-repeat: No
sl@8
   306
            /// <para />
sl@8
   307
            /// Notably sent by the 'Input selection' button of HP Windows Media Center Remote (TSGH-IR08).
sl@8
   308
            /// </summary>
sl@30
   309
            InputSelection = WindowsMediaCenterRemoteControl.Ext3,
sl@8
   310
        }
sl@8
   311
sl@8
   312
        /// <summary>
sl@8
   313
        /// Usage Table for Consumer Controls
sl@8
   314
        /// 0x0C 0X01
sl@8
   315
        /// </summary>
sl@33
   316
        public enum ConsumerControl : ushort
sl@8
   317
        {
sl@35
   318
            Null = 0x00,
sl@33
   319
            ConsumerControl = 0x01,
sl@33
   320
            NumericKeyPad = 0x02,
sl@33
   321
            ProgrammableButtons = 0x03,
sl@33
   322
            Microphone = 0x04,
sl@33
   323
            Headphone = 0x05,
sl@33
   324
            GraphicEqualizer = 0x06,
sl@33
   325
            Plus10 = 0x20,
sl@33
   326
            Plus100 = 0x21,
sl@33
   327
            AmPm = 0x22,
sl@33
   328
            Power = 0x30,
sl@33
   329
            Reset = 0x31,
sl@33
   330
            Sleep = 0x32,
sl@33
   331
            SleepAfter = 0x33,
sl@33
   332
            SleepMode = 0x34,
sl@33
   333
            Illumination = 0x35,
sl@33
   334
            FunctionButtons = 0x36,
sl@33
   335
            Menu = 0x40,
sl@33
   336
            MenuPick = 0x41,
sl@33
   337
            MenuUp = 0x42,
sl@33
   338
            MenuDown = 0x43,
sl@33
   339
            MenuLeft = 0x44,
sl@33
   340
            MenuRight = 0x45,
sl@33
   341
            MenuEscape = 0x46,
sl@33
   342
            MenuValueIncrease = 0x47,
sl@33
   343
            MenuValueDecrease = 0x48,
sl@33
   344
            DataOnScreen = 0x60,
sl@33
   345
            ClosedCaption = 0x61,
sl@33
   346
            ClosedCaptionSelect = 0x62,
sl@33
   347
            VcrTv = 0x63,
sl@33
   348
            BroadcastMode = 0x64,
sl@33
   349
            Snapshot = 0x65,
sl@33
   350
            Still = 0x66,
sl@33
   351
            Selection = 0x80,
sl@33
   352
            AssignSelection = 0x81,
sl@33
   353
            ModeStep = 0x82,
sl@33
   354
            RecallLast = 0x83,
sl@33
   355
            EnterChannel = 0x84,
sl@33
   356
            OrderMovie = 0x85,
sl@33
   357
            Channel = 0x86,
sl@33
   358
            MediaSelection = 0x87,
sl@33
   359
            MediaSelectComputer = 0x88,
sl@33
   360
            MediaSelectTv = 0x89,
sl@33
   361
            MediaSelectWww = 0x8A,
sl@33
   362
            MediaSelectDvd = 0x8B,
sl@33
   363
            MediaSelectTelephone = 0x8C,
sl@33
   364
            MediaSelectProgramGuide = 0x8D,
sl@33
   365
            MediaSelectVideoPhone = 0x8E,
sl@33
   366
            MediaSelectGames = 0x8F,
sl@33
   367
            MediaSelectMessages = 0x90,
sl@33
   368
            MediaSelectCd = 0x91,
sl@33
   369
            MediaSelectVcr = 0x92,
sl@33
   370
            MediaSelectTuner = 0x93,
sl@33
   371
            Quit = 0x94,
sl@33
   372
            Help = 0x95,
sl@33
   373
            MediaSelectTape = 0x96,
sl@33
   374
            MediaSelectCable = 0x97,
sl@33
   375
            MediaSelectSatellite = 0x98,
sl@33
   376
            MediaSelectSecurity = 0x99,
sl@33
   377
            MediaSelectHome = 0x9A,
sl@33
   378
            MediaSelectCall = 0x9B,
sl@33
   379
            ChannelIncrement = 0x9C,
sl@33
   380
            ChannelDecrement = 0x9D,
sl@33
   381
            MediaSelectSap = 0x9E,
sl@33
   382
            VcrPlus = 0xA0,
sl@33
   383
            Once = 0xA1,
sl@33
   384
            Daily = 0xA2,
sl@33
   385
            Weekly = 0xA3,
sl@33
   386
            Monthly = 0xA4,
sl@33
   387
            Play = 0xB0,
sl@33
   388
            Pause = 0xB1,
sl@33
   389
            Record = 0xB2,
sl@33
   390
            FastForward = 0xB3,
sl@33
   391
            Rewind = 0xB4,
sl@33
   392
            ScanNextTrack = 0xB5,
sl@33
   393
            ScanPreviousTrack = 0xB6,
sl@33
   394
            Stop = 0xB7,
sl@33
   395
            Eject = 0xB8,
sl@33
   396
            RandomPlay = 0xB9,
sl@33
   397
            SelectDisc = 0xBA,
sl@33
   398
            EnterDisc = 0xBB,
sl@33
   399
            Repeat = 0xBC,
sl@33
   400
            Tracking = 0xBD,
sl@33
   401
            TrackNormal = 0xBE,
sl@33
   402
            SlowTracking = 0xBF,
sl@33
   403
            FrameForward = 0xC0,
sl@33
   404
            FrameBack = 0xC1,
sl@33
   405
            Mark = 0xC2,
sl@33
   406
            ClearMark = 0xC3,
sl@33
   407
            RepeatFromMark = 0xC4,
sl@33
   408
            ReturnToMark = 0xC5,
sl@33
   409
            SearchMarkForward = 0xC6,
sl@33
   410
            SearchMarkBackwards = 0xC7,
sl@33
   411
            CounterReset = 0xC8,
sl@33
   412
            ShowCounter = 0xC9,
sl@33
   413
            TrackingIncrement = 0xCA,
sl@33
   414
            TrackingDecrement = 0xCB,
sl@33
   415
            StopEject = 0xCC,
sl@33
   416
            PlayPause = 0xCD,
sl@33
   417
            PlaySkip = 0xCE,
sl@33
   418
            Volume = 0xE0,
sl@33
   419
            Balance = 0xE1,
sl@33
   420
            Mute = 0xE2,
sl@33
   421
            Bass = 0xE3,
sl@33
   422
            Treble = 0xE4,
sl@33
   423
            BassBoost = 0xE5,
sl@33
   424
            SurroundMode = 0xE6,
sl@33
   425
            Loudness = 0xE7,
sl@33
   426
            Mpx = 0xE8,
sl@33
   427
            VolumeIncrement = 0xE9,
sl@33
   428
            VolumeDecrement = 0xEA,
sl@33
   429
            SpeedSelect = 0xF0,
sl@33
   430
            PlaybackSpeed = 0xF1,
sl@33
   431
            StandardPlay = 0xF2,
sl@33
   432
            LongPlay = 0xF3,
sl@33
   433
            ExtendedPlay = 0xF4,
sl@33
   434
            Slow = 0xF5,
sl@33
   435
            FanEnable = 0x100,
sl@33
   436
            FanSpeed = 0x101,
sl@33
   437
            LightEnable = 0x102,
sl@33
   438
            LightIlluminationLevel = 0x103,
sl@33
   439
            ClimateControlEnable = 0x104,
sl@33
   440
            RoomTemperature = 0x105,
sl@33
   441
            SecurityEnable = 0x106,
sl@33
   442
            FireAlarm = 0x107,
sl@33
   443
            PoliceAlarm = 0x108,
sl@33
   444
            Proximity = 0x109,
sl@33
   445
            Motion = 0x10A,
sl@33
   446
            DuressAlarm = 0x10B,
sl@33
   447
            HoldupAlarm = 0x10C,
sl@33
   448
            MedicalAlarm = 0x10D,
sl@33
   449
            BalanceRight = 0x150,
sl@33
   450
            BalanceLeft = 0x151,
sl@33
   451
            BassIncrement = 0x152,
sl@33
   452
            BassDecrement = 0x153,
sl@33
   453
            TrebleIncrement = 0x154,
sl@33
   454
            TrebleDecrement = 0x155,
sl@33
   455
            SpeakerSystem = 0x160,
sl@33
   456
            ChannelLeft = 0x161,
sl@33
   457
            ChannelRight = 0x162,
sl@33
   458
            ChannelCenter = 0x163,
sl@33
   459
            ChannelFront = 0x164,
sl@33
   460
            ChannelCenterFront = 0x165,
sl@33
   461
            ChannelSide = 0x166,
sl@33
   462
            ChannelSurround = 0x167,
sl@33
   463
            ChannelLowFrequencyEnhancement = 0x168,
sl@33
   464
            ChannelTop = 0x169,
sl@33
   465
            ChannelUnknown = 0x16A,
sl@33
   466
            SubChannel = 0x170,
sl@33
   467
            SubChannelIncrement = 0x171,
sl@33
   468
            SubChannelDecrement = 0x172,
sl@33
   469
            AlternateAudioIncrement = 0x173,
sl@33
   470
            AlternateAudioDecrement = 0x174,
sl@33
   471
            ApplicationLaunchButtons = 0x180,
sl@33
   472
            AppLaunchLaunchButtonConfigurationTool = 0x181,
sl@33
   473
            AppLaunchProgrammableButtonConfiguration = 0x182,
sl@33
   474
            AppLaunchConsumerControlConfiguration = 0x183,
sl@33
   475
            AppLaunchWordProcessor = 0x184,
sl@33
   476
            AppLaunchTextEditor = 0x185,
sl@33
   477
            AppLaunchSpreadsheet = 0x186,
sl@33
   478
            AppLaunchGraphicsEditor = 0x187,
sl@33
   479
            AppLaunchPresentationApp = 0x188,
sl@33
   480
            AppLaunchDatabaseApp = 0x189,
sl@33
   481
            AppLaunchEmailReader = 0x18A,
sl@33
   482
            AppLaunchNewsreader = 0x18B,
sl@33
   483
            AppLaunchVoicemail = 0x18C,
sl@33
   484
            AppLaunchContactsAddressBook = 0x18D,
sl@33
   485
            AppLaunchCalendarSchedule = 0x18E,
sl@33
   486
            AppLaunchTaskProjectManager = 0x18F,
sl@33
   487
            AppLaunchLogJournalTimecard = 0x190,
sl@33
   488
            AppLaunchCheckbookFinance = 0x191,
sl@33
   489
            AppLaunchCalculator = 0x192,
sl@33
   490
            AppLaunchAVCapturePlayback = 0x193,
sl@33
   491
            AppLaunchLocalMachineBrowser = 0x194,
sl@33
   492
            AppLaunchLanWanBrowser = 0x195,
sl@33
   493
            AppLaunchInternetBrowser = 0x196,
sl@33
   494
            AppLaunchRemoteNetworkingIspConnect = 0x197,
sl@33
   495
            AppLaunchNetworkConference = 0x198,
sl@33
   496
            AppLaunchNetworkChat = 0x199,
sl@33
   497
            AppLaunchTelephonyDialer = 0x19A,
sl@33
   498
            AppLaunchLogon = 0x19B,
sl@33
   499
            AppLaunchLogoff = 0x19C,
sl@33
   500
            AppLaunchLogonLogoff = 0x19D,
sl@33
   501
            AppLaunchTerminalLockScreensaver = 0x19E,
sl@33
   502
            AppLaunchControlPanel = 0x19F,
sl@33
   503
            AppLaunchCommandLineProcessorRun = 0x1A0,
sl@33
   504
            AppLaunchProcessTaskManager = 0x1A1,
sl@33
   505
            AppLaunchSelectTaskApplication = 0x1A2,
sl@33
   506
            AppLaunchNextTaskApplication = 0x1A3,
sl@33
   507
            AppLaunchPreviousTaskApplication = 0x1A4,
sl@33
   508
            AppLaunchPreemptiveHaltTaskApplication = 0x1A5,
sl@33
   509
            AppLaunchIntegratedHelpCenter = 0x1A6,
sl@33
   510
            AppLaunchDocuments = 0x1A7,
sl@33
   511
            AppLaunchThesaurus = 0x1A8,
sl@33
   512
            AppLaunchDictionary = 0x1A9,
sl@33
   513
            AppLaunchDesktop = 0x1AA,
sl@33
   514
            AppLaunchSpellCheck = 0x1AB,
sl@33
   515
            AppLaunchGrammarCheck = 0x1AC,
sl@33
   516
            AppLaunchWirelessStatus = 0x1AD,
sl@33
   517
            AppLaunchKeyboardLayout = 0x1AE,
sl@33
   518
            AppLaunchVirusProtection = 0x1AF,
sl@33
   519
            AppLaunchEncryption = 0x1B0,
sl@33
   520
            AppLaunchScreenSaver = 0x1B1,
sl@33
   521
            AppLaunchAlarms = 0x1B2,
sl@33
   522
            AppLaunchClock = 0x1B3,
sl@33
   523
            AppLaunchFileBrowser = 0x1B4,
sl@33
   524
            AppLaunchPowerStatus = 0x1B5,
sl@33
   525
            AppLaunchImageBrowser = 0x1B6,
sl@33
   526
            AppLaunchAudioBrowser = 0x1B7,
sl@33
   527
            AppLaunchMovieBrowser = 0x1B8,
sl@33
   528
            AppLaunchDigitalRightsManager = 0x1B9,
sl@33
   529
            AppLaunchDigitalWallet = 0x1BA,
sl@33
   530
            AppLaunchInstantMessaging = 0x1BC,
sl@33
   531
            AppLaunchOemFeaturesTipsTutorialBrowser = 0x1BD,
sl@33
   532
            AppLaunchOemHelp = 0x1BE,
sl@33
   533
            AppLaunchOnlineCommunity = 0x1BF,
sl@33
   534
            AppLaunchEntertainmentContentBrowser = 0x1C0,
sl@33
   535
            AppLaunchOnlineShoppingBrowser = 0x1C1,
sl@33
   536
            AppLaunchSmartcardInformationHelp = 0x1C2,
sl@33
   537
            AppLaunchMarketMonitorFinanceBrowser = 0x1C3,
sl@33
   538
            AppLaunchCustomizedCorporateNewsBrowser = 0x1C4,
sl@33
   539
            AppLaunchOnlineActivityBrowser = 0x1C5,
sl@33
   540
            AppLaunchResearchSearchBrowser = 0x1C6,
sl@33
   541
            AppLaunchAudioPlayer = 0x1C7,
sl@33
   542
            GenericGuiApplicationControls = 0x200,
sl@33
   543
            AppCtrlNew = 0x201,
sl@33
   544
            AppCtrlOpen = 0x202,
sl@33
   545
            AppCtrlClose = 0x203,
sl@33
   546
            AppCtrlExit = 0x204,
sl@33
   547
            AppCtrlMaximize = 0x205,
sl@33
   548
            AppCtrlMinimize = 0x206,
sl@33
   549
            AppCtrlSave = 0x207,
sl@33
   550
            AppCtrlPrint = 0x208,
sl@33
   551
            AppCtrlProperties = 0x209,
sl@33
   552
            AppCtrlUndo = 0x21A,
sl@33
   553
            AppCtrlCopy = 0x21B,
sl@33
   554
            AppCtrlCut = 0x21C,
sl@33
   555
            AppCtrlPaste = 0x21D,
sl@33
   556
            AppCtrlSelectAll = 0x21E,
sl@33
   557
            AppCtrlFind = 0x21F,
sl@33
   558
            AppCtrlFindAndReplace = 0x220,
sl@33
   559
            AppCtrlSearch = 0x221,
sl@33
   560
            AppCtrlGoTo = 0x222,
sl@33
   561
            AppCtrlHome = 0x223,
sl@33
   562
            AppCtrlBack = 0x224,
sl@33
   563
            AppCtrlForward = 0x225,
sl@33
   564
            AppCtrlStop = 0x226,
sl@33
   565
            AppCtrlRefresh = 0x227,
sl@33
   566
            AppCtrlPreviousLink = 0x228,
sl@33
   567
            AppCtrlNextLink = 0x229,
sl@33
   568
            AppCtrlBookmarks = 0x22A,
sl@33
   569
            AppCtrlHistory = 0x22B,
sl@33
   570
            AppCtrlSubscriptions = 0x22C,
sl@33
   571
            AppCtrlZoomIn = 0x22D,
sl@33
   572
            AppCtrlZoomOut = 0x22E,
sl@33
   573
            AppCtrlZoom = 0x22F,
sl@33
   574
            AppCtrlFullScreenView = 0x230,
sl@33
   575
            AppCtrlNormalView = 0x231,
sl@33
   576
            AppCtrlViewToggle = 0x232,
sl@33
   577
            AppCtrlScrollUp = 0x233,
sl@33
   578
            AppCtrlScrollDown = 0x234,
sl@33
   579
            AppCtrlScroll = 0x235,
sl@33
   580
            AppCtrlPanLeft = 0x236,
sl@33
   581
            AppCtrlPanRight = 0x237,
sl@33
   582
            AppCtrlPan = 0x238,
sl@33
   583
            AppCtrlNewWindow = 0x239,
sl@33
   584
            AppCtrlTileHorizontally = 0x23A,
sl@33
   585
            AppCtrlTileVertically = 0x23B,
sl@33
   586
            AppCtrlFormat = 0x23C,
sl@33
   587
            AppCtrlEdit = 0x23D,
sl@33
   588
            AppCtrlBold = 0x23E,
sl@33
   589
            AppCtrlItalics = 0x23F,
sl@33
   590
            AppCtrlUnderline = 0x240,
sl@33
   591
            AppCtrlStrikethrough = 0x241,
sl@33
   592
            AppCtrlSubscript = 0x242,
sl@33
   593
            AppCtrlSuperscript = 0x243,
sl@33
   594
            AppCtrlAllCaps = 0x244,
sl@33
   595
            AppCtrlRotate = 0x245,
sl@33
   596
            AppCtrlResize = 0x246,
sl@33
   597
            AppCtrlFlipHorizontal = 0x247,
sl@33
   598
            AppCtrlFlipVertical = 0x248,
sl@33
   599
            AppCtrlMirrorHorizontal = 0x249,
sl@33
   600
            AppCtrlMirrorVertical = 0x24A,
sl@33
   601
            AppCtrlFontSelect = 0x24B,
sl@33
   602
            AppCtrlFontColor = 0x24C,
sl@33
   603
            AppCtrlFontSize = 0x24D,
sl@33
   604
            AppCtrlJustifyLeft = 0x24E,
sl@33
   605
            AppCtrlJustifyCenterH = 0x24F,
sl@33
   606
            AppCtrlJustifyRight = 0x250,
sl@33
   607
            AppCtrlJustifyBlockH = 0x251,
sl@33
   608
            AppCtrlJustifyTop = 0x252,
sl@33
   609
            AppCtrlJustifyCenterV = 0x253,
sl@33
   610
            AppCtrlJustifyBottom = 0x254,
sl@33
   611
            AppCtrlJustifyBlockV = 0x255,
sl@33
   612
            AppCtrlIndentDecrease = 0x256,
sl@33
   613
            AppCtrlIndentIncrease = 0x257,
sl@33
   614
            AppCtrlNumberedList = 0x258,
sl@33
   615
            AppCtrlRestartNumbering = 0x259,
sl@33
   616
            AppCtrlBulletedList = 0x25A,
sl@33
   617
            AppCtrlPromote = 0x25B,
sl@33
   618
            AppCtrlDemote = 0x25C,
sl@33
   619
            AppCtrlYes = 0x25D,
sl@33
   620
            AppCtrlNo = 0x25E,
sl@33
   621
            AppCtrlCancel = 0x25F,
sl@33
   622
            AppCtrlCatalog = 0x260,
sl@33
   623
            AppCtrlBuyCheckout = 0x261,
sl@33
   624
            AppCtrlAddToCart = 0x262,
sl@33
   625
            AppCtrlExpand = 0x263,
sl@33
   626
            AppCtrlExpandAll = 0x264,
sl@33
   627
            AppCtrlCollapse = 0x265,
sl@33
   628
            AppCtrlCollapseAll = 0x266,
sl@33
   629
            AppCtrlPrintPreview = 0x267,
sl@33
   630
            AppCtrlPasteSpecial = 0x268,
sl@33
   631
            AppCtrlInsertMode = 0x269,
sl@33
   632
            AppCtrlDelete = 0x26A,
sl@33
   633
            AppCtrlLock = 0x26B,
sl@33
   634
            AppCtrlUnlock = 0x26C,
sl@33
   635
            AppCtrlProtect = 0x26D,
sl@33
   636
            AppCtrlUnprotect = 0x26E,
sl@33
   637
            AppCtrlAttachComment = 0x26F,
sl@33
   638
            AppCtrlDeleteComment = 0x270,
sl@33
   639
            AppCtrlViewComment = 0x271,
sl@33
   640
            AppCtrlSelectWord = 0x272,
sl@33
   641
            AppCtrlSelectSentence = 0x273,
sl@35
   642
            AppCtrlSelectParagraph = 0x274,
sl@35
   643
            AppCtrlSelectColumn = 0x275,
sl@35
   644
            AppCtrlSelectRow = 0x276,
sl@35
   645
            AppCtrlSelectTable = 0x277,
sl@35
   646
            AppCtrlSelectObject = 0x278,
sl@35
   647
            AppCtrlRedoRepeat = 0x279,
sl@35
   648
            AppCtrlSort = 0x27A,
sl@35
   649
            AppCtrlSortAscending = 0x27B,
sl@35
   650
            AppCtrlSortDescending = 0x27C,
sl@35
   651
            AppCtrlFilter = 0x27D,
sl@35
   652
            AppCtrlSetClock = 0x27E,
sl@35
   653
            AppCtrlViewClock = 0x27F,
sl@35
   654
            AppCtrlSelectTimeZone = 0x280,
sl@35
   655
            AppCtrlEditTimeZones = 0x281,
sl@35
   656
            AppCtrlSetAlarm = 0x282,
sl@35
   657
            AppCtrlClearAlarm = 0x283,
sl@35
   658
            AppCtrlSnoozeAlarm = 0x284,
sl@35
   659
            AppCtrlResetAlarm = 0x285,
sl@35
   660
            AppCtrlSynchronize = 0x286,
sl@35
   661
            AppCtrlSendReceive = 0x287,
sl@35
   662
            AppCtrlSendTo = 0x288,
sl@35
   663
            AppCtrlReply = 0x289,
sl@35
   664
            AppCtrlReplyAll = 0x28A,
sl@35
   665
            AppCtrlForwardMsg = 0x28B,
sl@35
   666
            AppCtrlSend = 0x28C,
sl@35
   667
            AppCtrlAttachFile = 0x28D,
sl@35
   668
            AppCtrlUpload = 0x28E,
sl@35
   669
            AppCtrlDownloadSaveTargetAs = 0x28F,
sl@35
   670
            AppCtrlSetBorders = 0x290,
sl@35
   671
            AppCtrlInsertRow = 0x291,
sl@35
   672
            AppCtrlInsertColumn = 0x292,
sl@35
   673
            AppCtrlInsertFile = 0x293,
sl@35
   674
            AppCtrlInsertPicture = 0x294,
sl@35
   675
            AppCtrlInsertObject = 0x295,
sl@35
   676
            AppCtrlInsertSymbol = 0x296,
sl@35
   677
            AppCtrlSaveAndClose = 0x297,
sl@35
   678
            AppCtrlRename = 0x298,
sl@35
   679
            AppCtrlMerge = 0x299,
sl@35
   680
            AppCtrlSplit = 0x29A,
sl@35
   681
            AppCtrlDistributeHorizontally = 0x29B,
sl@33
   682
            AppCtrlDistributeVertically = 0x29C
sl@8
   683
        }
sl@34
   684
sl@34
   685
        /// <summary>
sl@34
   686
        ///
sl@34
   687
        /// </summary>
sl@34
   688
        enum GenericDesktop : ushort
sl@34
   689
        {
sl@34
   690
            Null = 0x00,
sl@34
   691
            Pointer = 0x01,
sl@34
   692
            Mouse = 0x02,
sl@34
   693
            Joystick = 0x04,
sl@34
   694
            GamePad = 0x05,
sl@34
   695
            Keyboard = 0x06,
sl@34
   696
            Keypad = 0x07,
sl@34
   697
            MultiAxisController = 0x08,
sl@34
   698
            TabletPcSystemControls = 0x09,
sl@34
   699
            X = 0x30,
sl@34
   700
            Y = 0x31,
sl@34
   701
            Z = 0x32,
sl@34
   702
            Rx = 0x33,
sl@34
   703
            Ry = 0x34,
sl@34
   704
            Rz = 0x35,
sl@34
   705
            Slider = 0x36,
sl@34
   706
            Dial = 0x37,
sl@34
   707
            Wheel = 0x38,
sl@34
   708
            HatSwitch = 0x39,
sl@34
   709
            CountedBuffer = 0x3A,
sl@34
   710
            ByteCount = 0x3B,
sl@34
   711
            MotionWakeup = 0x3C,
sl@34
   712
            Start = 0x3D,
sl@34
   713
            Select = 0x3E,
sl@34
   714
            Vx = 0x40,
sl@34
   715
            Vy = 0x41,
sl@34
   716
            Vz = 0x42,
sl@34
   717
            Vbrx = 0x43,
sl@34
   718
            Vbry = 0x44,
sl@34
   719
            Vbrz = 0x45,
sl@34
   720
            Vno = 0x46,
sl@34
   721
            SystemControl = 0x80,
sl@34
   722
            SystemPowerDown = 0x81,
sl@34
   723
            SystemSleep = 0x82,
sl@34
   724
            SystemWakeUp = 0x83,
sl@34
   725
            SystemContextMenu = 0x84,
sl@34
   726
            SystemMainMenu = 0x85,
sl@34
   727
            SystemAppMenu = 0x86,
sl@34
   728
            SystemMenuHelp = 0x87,
sl@34
   729
            SystemMenuExit = 0x88,
sl@34
   730
            SystemMenuSelect = 0x89,
sl@34
   731
            SystemMenuRight = 0x8A,
sl@34
   732
            SystemMenuLeft = 0x8B,
sl@34
   733
            SystemMenuUp = 0x8C,
sl@34
   734
            SystemMenuDown = 0x8D,
sl@34
   735
            SystemColdRestart = 0x8E,
sl@34
   736
            SystemWarmRestart = 0x8F,
sl@34
   737
            DPadUp = 0x90,
sl@34
   738
            DPadDown = 0x91,
sl@34
   739
            DPadRight = 0x92,
sl@34
   740
            DPadLeft = 0x93,
sl@34
   741
            SystemDock = 0xA0,
sl@34
   742
            SystemUndock = 0xA1,
sl@34
   743
            SystemSetup = 0xA2,
sl@34
   744
            SystemBreak = 0xA3,
sl@34
   745
            SystemDebuggerBreak = 0xA4,
sl@34
   746
            ApplicationBreak = 0xA5,
sl@34
   747
            ApplicationDebuggerBreak = 0xA6,
sl@34
   748
            SystemSpeakerMute = 0xA7,
sl@34
   749
            SystemHibernate = 0xA8,
sl@34
   750
            SystemDisplayInvert = 0xB0,
sl@34
   751
            SystemDisplayInternal = 0xB1,
sl@34
   752
            SystemDisplayExternal = 0xB2,
sl@34
   753
            SystemDisplayBoth = 0xB3,
sl@34
   754
            SystemDisplayDual = 0xB4,
sl@34
   755
            SystemDisplayToggleIntExt = 0xB5,
sl@34
   756
            SystemDisplaySwapPrimarySecondary = 0xB6,
sl@34
   757
            SystemDisplayLcdAutoscale = 0xB7
sl@34
   758
        }
sl@34
   759
sl@34
   760
        /// <summary>
sl@34
   761
        ///
sl@34
   762
        /// </summary>
sl@34
   763
        enum SimulationControl : ushort
sl@34
   764
        {
sl@35
   765
            Null = 0x00,
sl@34
   766
            FlightSimulationDevice = 0x01,
sl@34
   767
            AutomobileSimulationDevice = 0x02,
sl@34
   768
            TankSimulationDevice = 0x03,
sl@34
   769
            SpaceshipSimulationDevice = 0x04,
sl@34
   770
            SubmarineSimulationDevice = 0x05,
sl@34
   771
            SailingSimulationDevice = 0x06,
sl@34
   772
            MotorcycleSimulationDevice = 0x07,
sl@34
   773
            SportsSimulationDevice = 0x08,
sl@34
   774
            AirplaneSimulationDevice = 0x09,
sl@34
   775
            HelicopterSimulationDevice = 0x0A,
sl@34
   776
            MagicCarpetSimulationDevice = 0x0B,
sl@34
   777
            BicycleSimulationDevice = 0x0C,
sl@34
   778
            FlightControlStick = 0x20,
sl@34
   779
            FlightStick = 0x21,
sl@34
   780
            CyclicControl = 0x22,
sl@34
   781
            CyclicTrim = 0x23,
sl@34
   782
            FlightYoke = 0x24,
sl@34
   783
            TrackControl = 0x25,
sl@34
   784
            Aileron = 0xB0,
sl@34
   785
            AileronTrim = 0xB1,
sl@34
   786
            AntiTorqueControl = 0xB2,
sl@34
   787
            AutopilotEnable = 0xB3,
sl@34
   788
            ChaffRelease = 0xB4,
sl@34
   789
            CollectiveControl = 0xB5,
sl@34
   790
            DiveBrake = 0xB6,
sl@34
   791
            ElectronicCountermeasures = 0xB7,
sl@34
   792
            Elevator = 0xB8,
sl@34
   793
            ElevatorTrim = 0xB9,
sl@34
   794
            Rudder = 0xBA,
sl@34
   795
            Throttle = 0xBB,
sl@34
   796
            FlightCommunications = 0xBC,
sl@34
   797
            FlareRelease = 0xBD,
sl@34
   798
            LandingGear = 0xBE,
sl@34
   799
            ToeBrake = 0xBF,
sl@34
   800
            Trigger = 0xC0,
sl@34
   801
            WeaponsArm = 0xC1,
sl@34
   802
            WeaponsSelect = 0xC2,
sl@34
   803
            WingFlaps = 0xC3,
sl@34
   804
            Accelerator = 0xC4,
sl@34
   805
            Brake = 0xC5,
sl@34
   806
            Clutch = 0xC6,
sl@34
   807
            Shifter = 0xC7,
sl@34
   808
            Steering = 0xC8,
sl@34
   809
            TurretDirection = 0xC9,
sl@34
   810
            BarrelElevation = 0xCA,
sl@34
   811
            DivePlane = 0xCB,
sl@34
   812
            Ballast = 0xCC,
sl@34
   813
            BicycleCrank = 0xCD,
sl@34
   814
            HandleBars = 0xCE,
sl@34
   815
            FrontBrake = 0xCF,
sl@34
   816
            RearBrake = 0xD0
sl@34
   817
        }
sl@34
   818
sl@34
   819
        /// <summary>
sl@34
   820
        ///
sl@34
   821
        /// </summary>
sl@34
   822
        enum GameControl : ushort
sl@34
   823
        {
sl@35
   824
            Null = 0x00,
sl@34
   825
            GameController3D = 0x01,
sl@34
   826
            PinballDevice = 0x02,
sl@34
   827
            GunDevice = 0x03,
sl@34
   828
            PointOfView = 0x20,
sl@34
   829
            TurnRightLeft = 0x21,
sl@34
   830
            PitchForwardBackward = 0x22,
sl@34
   831
            RollRightLeft = 0x23,
sl@34
   832
            MoveRightLeft = 0x24,
sl@34
   833
            MoveForwardBackward = 0x25,
sl@34
   834
            MoveUpDown = 0x26,
sl@34
   835
            LeanRightLeft = 0x27,
sl@34
   836
            LeanForwardBackward = 0x28,
sl@34
   837
            HeightOfPov = 0x29,
sl@34
   838
            Flipper = 0x2A,
sl@34
   839
            SecondaryFlipper = 0x2B,
sl@34
   840
            Bump = 0x2C,
sl@34
   841
            NewGame = 0x2D,
sl@34
   842
            ShootBall = 0x2E,
sl@34
   843
            Player = 0x2F,
sl@34
   844
            GunBolt = 0x30,
sl@34
   845
            GunClip = 0x31,
sl@34
   846
            GunSelector = 0x32,
sl@34
   847
            GunSingleShot = 0x33,
sl@34
   848
            GunBurst = 0x34,
sl@34
   849
            GunAutomatic = 0x35,
sl@34
   850
            GunSafety = 0x36,
sl@34
   851
            GamepadFireJump = 0x37,
sl@34
   852
            GamepadTrigger = 0x39
sl@34
   853
        }
sl@34
   854
sl@34
   855
        /// <summary>
sl@34
   856
        ///
sl@34
   857
        /// </summary>
sl@34
   858
        enum TelephonyDevice : ushort
sl@34
   859
        {
sl@35
   860
            Null = 0x00,
sl@34
   861
            Phone = 0x01,
sl@34
   862
            AnsweringMachine = 0x02,
sl@34
   863
            MessageControls = 0x03,
sl@34
   864
            Handset = 0x04,
sl@34
   865
            Headset = 0x05,
sl@34
   866
            TelephonyKeyPad = 0x06,
sl@34
   867
            ProgrammableButton = 0x07,
sl@34
   868
            HookSwitch = 0x20,
sl@34
   869
            Flash = 0x21,
sl@34
   870
            Feature = 0x22,
sl@34
   871
            Hold = 0x23,
sl@34
   872
            Redial = 0x24,
sl@34
   873
            Transfer = 0x25,
sl@34
   874
            Drop = 0x26,
sl@34
   875
            Park = 0x27,
sl@34
   876
            ForwardCalls = 0x28,
sl@34
   877
            AlternateFunction = 0x29,
sl@34
   878
            Line = 0x2A,
sl@34
   879
            SpeakerPhone = 0x2B,
sl@34
   880
            Conference = 0x2C,
sl@34
   881
            RingEnable = 0x2D,
sl@34
   882
            RingSelect = 0x2E,
sl@34
   883
            PhoneMute = 0x2F,
sl@34
   884
            CallerId = 0x30,
sl@34
   885
            Send = 0x31,
sl@34
   886
            SpeedDial = 0x50,
sl@34
   887
            StoreNumber = 0x51,
sl@34
   888
            RecallNumber = 0x52,
sl@34
   889
            PhoneDirectory = 0x53,
sl@34
   890
            VoiceMail = 0x70,
sl@34
   891
            ScreenCalls = 0x71,
sl@34
   892
            DoNotDisturb = 0x72,
sl@34
   893
            Message = 0x73,
sl@34
   894
            AnswerOnOff = 0x74,
sl@34
   895
            InsideDialTone = 0x90,
sl@34
   896
            OutsideDialTone = 0x91,
sl@34
   897
            InsideRingTone = 0x92,
sl@34
   898
            OutsideRingTone = 0x93,
sl@34
   899
            PriorityRingTone = 0x94,
sl@34
   900
            InsideRingback = 0x95,
sl@34
   901
            PriorityRingback = 0x96,
sl@34
   902
            LineBusyTone = 0x97,
sl@34
   903
            ReorderTone = 0x98,
sl@34
   904
            CallWaitingTone = 0x99,
sl@34
   905
            ConfirmationTone1 = 0x9A,
sl@34
   906
            ConfirmationTone2 = 0x9B,
sl@34
   907
            TonesOff = 0x9C,
sl@34
   908
            OutsideRingback = 0x9D,
sl@34
   909
            Ringer = 0x9E,
sl@34
   910
            PhoneKey0 = 0xB0,
sl@34
   911
            PhoneKey1 = 0xB1,
sl@34
   912
            PhoneKey2 = 0xB2,
sl@34
   913
            PhoneKey3 = 0xB3,
sl@34
   914
            PhoneKey4 = 0xB4,
sl@34
   915
            PhoneKey5 = 0xB5,
sl@34
   916
            PhoneKey6 = 0xB6,
sl@34
   917
            PhoneKey7 = 0xB7,
sl@34
   918
            PhoneKey8 = 0xB8,
sl@34
   919
            PhoneKey9 = 0xB9,
sl@34
   920
            PhoneKeyStar = 0xBA,
sl@34
   921
            PhoneKeyPound = 0xBB,
sl@34
   922
            PhoneKeyA = 0xBC,
sl@34
   923
            PhoneKeyB = 0xBD,
sl@34
   924
            PhoneKeyC = 0xBE,
sl@34
   925
            PhoneKeyD = 0xBF
sl@34
   926
        }
sl@8
   927
    }
sl@8
   928
}