namespace StgSharp.Graphic.Input { public enum HidPage : ushort { /// /// This page describes an undefined usage. /// Undefined = 0x00, /// /// This page describes generic desktop controls. /// GenericDesktop = 0x01, /// /// This page provides detailed descriptions of the usages employed by simulation devices. /// Simulation = 0x02, /// /// Describes virtual reality controls. The usages depend on designators to identify the individual controls. /// VR = 0x03, /// /// This page describes sport controls. /// Sport = 0x04, /// /// This page describes game controls. /// Game = 0x05, /// /// This page provides usage definitions for controls that can be on any type of device. /// GenericDevice = 0x06, /// /// This page is for key codes to be used in implementing a USB keyboard. /// /// /// The usage type of all key codes is Selectors (Sel), except for the modifier keys 'Keyboard Left Control' /// (0x224) to 'Keyboard Right GUI' (0x231) which are Dynamic Flags (DV). /// KeyboardOrKeypad = 0x07, /// /// This page describes an LED or indicator that is implemented as an On/Off control (OOC) /// using the "Single button toggle" mode, /// where a value of 1 will turn on the indicator, and a value of 0 will turn it off. /// LEDs = 0x08, /// /// This page describes a set of buttons which can be defined as Sel, OOC, MC or OSC depending on /// the context of their declaration. /// Button = 0x09, /// /// This page allows multiple instances of a control or sets of controls to be declared without /// requiring indiviual enumeration in the native usage page. /// Ordinal = 0x0A, /// /// This page defines the keytop and control usages for telephony devices. /// /// /// Note that in many cases usage definitions are intentionally vague, since it is assumed that /// the controls are interpreted by the telephone software application. /// Telephony = 0x0B, /// /// This page describes application-specific controls. /// They only affect a specific device, not the system as a whole. /// Consumer = 0x0C, /// /// This section provides detailed descriptions of the usages employed by Digitizer Devices. /// Digitizer = 0x0D, // 0x0E // Reserved /// /// Describes force feedback and related devices. /// PID = 0x0F, /// /// The Unicode page directly maps to the two-octet form defined in the Unicode Standard. /// Unicode = 0x10, // 0x11 - 0x13 // Reserved /// /// The Alphanumeric display page is intended for use by simple alphanumeric /// displays that are used on consumer devices. /// AlphanumericDisplay = 0x14, // 0x15 - 0x3F // Reserved /// /// This page provides usage definitions for medical instruments. /// MedicalInstruments = 0x40, // 0x41 - 0x7F // 0x80 - 0x83 // USB Device Class Definition for Monitor Devices /// /// Power device page. /// PowerDevice = 0x84, /// /// Battery system page. /// BatterySystem = 0x85, // 0x86 - 0x87 // USB Device Class Definition for Power Devices (also includes 0x84 and 0x85) // 0x88 - 0x8B // Reserved /// /// This page describes the USB Device Class definition for a bar code scanner ("Point of Sale" device). /// BarCodeScanner = 0x8C, /// /// This page describes the USB Device Class definition for a scale ("Point of Sale" device). /// Scale = 0x8D, /// /// This page describes the USB Device Class definition for a magnetic stripe reading device /// ("Point of Sale" device). /// MagneticStripeReader = 0x8E, // 0x8F // Reserved Point of Sale pages /// /// This page describes the USB Device Class definition for "Image Class Devices". /// CameraControl = 0x90, /// /// This page describes the OAAF definitions for arcade and coinop related devices. /// Arcade = 0x91, // 0x92 - 0xFEFF // Reserved /// /// Marks the beginning of vendor-defined usage pages. /// VendorDefinedStart = 0xFF00, // 0xFF00 - 0xFFFF // Vendor-defined } }