sl@8: // sl@8: // sl@8: // sl@8: sl@8: namespace Hid sl@8: { sl@8: /// sl@8: /// From USB HID usage tables. sl@8: /// http://www.usb.org/developers/hidpage#HID_Usage sl@8: /// http://www.usb.org/developers/devclass_docs/Hut1_12v2.pdf sl@8: /// sl@8: public enum UsagePage : ushort sl@8: { sl@8: Undefined = 0, sl@8: GenericDesktopControl, sl@8: SimulationControl, sl@8: VirtualRealityControl, sl@8: SportControl, sl@8: GameControl, sl@8: GenericDeviceControl, sl@8: Keyboard, sl@8: LightEmittingDiode, sl@8: Button, sl@8: Ordinal, sl@8: Telephony, sl@8: Consumer, sl@8: Digitiser, sl@8: PhysicalInterfaceDevice = 0x0f, sl@8: Unicode = 0x10, sl@8: AlphaNumericDisplay = 0x14, sl@8: MedicalInstruments = 0x40, sl@8: MonitorPage0 = 0x80, sl@8: MonitorPage1, sl@8: MonitorPage2, sl@8: MonitorPage3, sl@8: PowerPage0, sl@8: PowerPage1, sl@8: PowerPage2, sl@8: PowerPage3, sl@8: BarCodeScanner = 0x8c, sl@8: Scale, sl@8: MagneticStripeReader, sl@8: ReservedPointOfSale, sl@8: CameraControl, sl@8: Arcade, sl@8: // http://msdn.microsoft.com/en-us/library/windows/desktop/bb417079.aspx sl@8: MceRemote = 0xffbc, sl@8: TerraTecRemote = 0xffcc sl@8: } sl@8: sl@8: /// sl@8: /// sl@8: /// sl@8: public enum UsageId: ushort sl@8: { sl@8: MceRemoteUsage = 0x88, sl@8: ConsumerControl = 0x01 sl@8: } sl@8: sl@8: sl@8: sl@8: namespace UsageTables sl@8: { sl@8: /// sl@8: /// sl@8: /// sl@8: public enum MceButton sl@8: { sl@8: /// sl@8: /// Not defined by the Microsoft specs. sl@8: /// sl@8: Null = 0x00, sl@8: GreenStart = 0x0D, sl@8: ClosedCaptioning = 0x2B, sl@8: Teletext = 0x5A, sl@8: TeletextRed = 0x5B, sl@8: TeletextGreen = 0x5C, sl@8: TeletextYellow = 0x5D, sl@8: TeletextBlue = 0x5E, sl@8: LiveTv = 0x25, sl@8: Music = 0x47, sl@8: RecordedTv = 0x48, sl@8: Pictures = 0x49, sl@8: Videos = 0x4A, sl@8: FmRadio = 0x50, sl@8: Extras = 0x3C, sl@8: ExtrasApp = 0x3D, sl@8: DvdMenu = 0x24, sl@8: DvdAngle = 0x4B, sl@8: DvdAudio = 0x4C, sl@8: DvdSubtitle = 0x4D, sl@8: /// sl@8: /// First press action: Ejects a DVD drive. sl@8: /// sl@8: /// Second press action: Repeats first press action. sl@8: /// sl@8: /// Notably issued by XBOX360 remote as defined in irplus - Remote Control - Android application. sl@8: /// sl@8: Eject = 0x28, sl@8: DvdTopMenu = 0x43, sl@8: /// sl@8: /// First press action: Generates EXTn HID message in the Media Center Vendor Specific sl@8: /// Collection (page 0xFFBC, usage 0x88). sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: /// Notably sent by the 'Visualization' button of HP Windows Media Center Remote (TSGH-IR08). sl@8: /// sl@8: /// According to HP specs it displays visual imagery that is synchronized to the sound of your music tracks. sl@8: /// sl@8: Ext0 = 0x32, sl@8: /// sl@8: /// First press action: Generates EXTn HID message in the Media Center Vendor Specific sl@8: /// Collection (page 0xFFBC, usage 0x88). sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: /// Notably sent by the 'Slide Show' button of HP Windows Media Center Remote (TSGH-IR08). sl@8: /// sl@8: /// According to HP specs it plays a slide show of all the pictures on your hard disk drive. sl@8: /// sl@8: Ext1 = 0x33, sl@8: /// sl@8: /// First press action: Generates EXTn HID message in the Media Center Vendor Specific sl@8: /// Collection (page 0xFFBC, usage 0x88). sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: /// Notably sent by the 'Eject' button of HP Windows Media Center Remote (TSGH-IR08). sl@8: /// Also interpreted as 'Eject' action by SoundGraph iMON Manager in MCE mode (OrigenAE VF310). sl@8: /// sl@8: Ext2 = 0x34, sl@8: /// sl@8: /// First press action: Generates EXTn HID message in the Media Center Vendor Specific sl@8: /// Collection (page 0xFFBC, usage 0x88). sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: /// Notably sent by the 'Input selection' button of HP Windows Media Center Remote (TSGH-IR08). sl@8: /// sl@8: Ext3 = 0x35, sl@8: Ext4 = 0x36, sl@8: Ext5 = 0x37, sl@8: Ext6 = 0x38, sl@8: Ext7 = 0x39, sl@8: Ext8 = 0x3A, sl@8: Ext9 = 0x80, sl@8: Ext10 = 0x81, sl@8: Ext11 = 0x6F, sl@8: Zoom = 0x27, sl@8: ChannelInput = 0x42, sl@8: SubAudio = 0x2D, sl@8: Channel10 = 0x3E, sl@8: Channel11 = 0x3F, sl@8: Channel12 = 0x40, sl@8: /// sl@8: /// First press action: Generates OEM2 HID message in the Media Center Vendor Specific sl@8: /// Collection. This button is intended to control the front panel display of home entertainment sl@8: /// computers. When this button is pressed, the display could be turned on or off, or the display sl@8: /// mode could change. sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: /// Notably issued by XBOX360 remote as defined in irplus - Remote Control - Android application. sl@8: /// sl@8: Display = 0x4F, sl@8: /// sl@8: /// First press action: To be determined. sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: Kiosk = 0x6A, sl@8: NetworkSelection = 0x2C, sl@8: BlueRayTool = 0x78, sl@8: ChannelInfo = 0x41, sl@8: VideoSelection = 0x61 sl@8: } sl@8: sl@8: public enum HpMceButton: ushort sl@8: { sl@8: /// sl@8: /// Displays visual imagery that is synchronized to the sound of your music tracks. sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: /// Notably sent by the 'Visualization' button of HP Windows Media Center Remote (TSGH-IR08). sl@8: /// sl@8: /// According to HP specs it displays visual imagery that is synchronized to the sound of your music tracks. sl@8: /// sl@8: Visualization = MceButton.Ext0, sl@8: /// sl@8: /// Plays a slide show of all the pictures on your hard disk drive. sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: /// Notably sent by the 'Slide Show' button of HP Windows Media Center Remote (TSGH-IR08). sl@8: /// sl@8: /// According to HP specs it plays a slide show of all the pictures on your hard disk drive. sl@8: /// sl@8: SlideShow = MceButton.Ext1, sl@8: /// sl@8: /// Eject optical drive. sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: /// Notably sent by the 'Eject' button of HP Windows Media Center Remote (TSGH-IR08). sl@8: /// Also interpreted as 'Eject' action by SoundGraph iMON Manager in MCE mode (OrigenAE VF310). sl@8: /// sl@8: Eject = MceButton.Ext2, sl@8: /// sl@8: /// Not sure what this should do. sl@8: /// sl@8: /// Second press action: Repeats message. sl@8: /// sl@8: /// Auto-repeat: No sl@8: /// sl@8: /// Notably sent by the 'Input selection' button of HP Windows Media Center Remote (TSGH-IR08). sl@8: /// sl@8: InputSelection = MceButton.Ext3, sl@8: } sl@8: sl@8: /// sl@8: /// Usage Table for Consumer Controls sl@8: /// 0x0C 0X01 sl@8: /// sl@8: public enum ConsumerControl: ushort sl@8: { sl@8: /// sl@8: /// Sent by MCE remotes. sl@8: /// sl@8: MediaSelectProgramGuide = 0x008D, sl@8: /// sl@8: /// Sent by MCE remotes. sl@8: /// sl@8: AppCtrlPrint = 0x0208, sl@8: /// sl@8: /// Sent by MCE remotes from the 'I' Informations or More Info buttons. sl@8: /// sl@8: AppCtrlProperties = 0x0209 sl@8: } sl@8: } sl@8: }