usb-private.h
Go to the documentation of this file.00001 /* $XFree86$ */ 00002 /* 00003 * Copyright 2002 Red Hat Inc., Durham, North Carolina. 00004 * 00005 * All Rights Reserved. 00006 * 00007 * Permission is hereby granted, free of charge, to any person obtaining 00008 * a copy of this software and associated documentation files (the 00009 * "Software"), to deal in the Software without restriction, including 00010 * without limitation on the rights to use, copy, modify, merge, 00011 * publish, distribute, sublicense, and/or sell copies of the Software, 00012 * and to permit persons to whom the Software is furnished to do so, 00013 * subject to the following conditions: 00014 * 00015 * The above copyright notice and this permission notice (including the 00016 * next paragraph) shall be included in all copies or substantial 00017 * portions of the Software. 00018 * 00019 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 00020 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 00021 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 00022 * NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS 00023 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 00024 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 00025 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 00026 * SOFTWARE. 00027 */ 00028 00029 /* 00030 * Authors: 00031 * Rickard E. (Rik) Faith <faith@redhat.com> 00032 * 00033 */ 00034 00041 #ifndef _USB_PRIVATE_H_ 00042 #define _USB_PRIVATE_H_ 00043 00044 #include "dmxinputinit.h" 00045 #include "inputstr.h" 00046 #include "Xos.h" 00047 #include <errno.h> 00048 #include <linux/input.h> 00049 #include "usb-common.h" 00050 00051 /* Support for force feedback was 00052 * introduced in Linxu 2.4.10 */ 00053 #ifndef EV_MSC 00054 #define EV_MSC 0x04 00055 #endif 00056 #ifndef EV_FF 00057 #define EV_FF 0x15 00058 #endif 00059 #ifndef LED_SLEEP 00060 #define LED_SLEEP 0x05 00061 #endif 00062 #ifndef LED_SUSPEND 00063 #define LED_SUSPEND 0x06 00064 #endif 00065 #ifndef LED_MUTE 00066 #define LED_MUTE 0x07 00067 #endif 00068 #ifndef LED_MISC 00069 #define LED_MISC 0x08 00070 #endif 00071 #ifndef BTN_DEAD 00072 #define BTN_DEAD 0x12f 00073 #endif 00074 #ifndef BTN_THUMBL 00075 #define BTN_THUMBL 0x13d 00076 #endif 00077 #ifndef BTN_THUMBR 00078 #define BTN_THUMBR 0x13e 00079 #endif 00080 #ifndef MSC_SERIAL 00081 #define MSC_SERIAL 0x00 00082 #endif 00083 #ifndef MSC_MAX 00084 #define MSC_MAX 0x07 00085 #endif 00086 00087 /* Support for older kernels. */ 00088 #ifndef ABS_WHEEL 00089 #define ABS_WHEEL 0x08 00090 #endif 00091 #ifndef ABS_GAS 00092 #define ABS_GAS 0x09 00093 #endif 00094 #ifndef ABS_BRAKE 00095 #define ABS_BRAKE 0x0a 00096 #endif 00097 00098 #define NUM_STATE_ENTRIES (256/32) 00099 00100 /* Private area for USB devices. */ 00101 typedef struct _myPrivate { 00102 DeviceIntPtr pDevice; 00103 int fd; 00104 unsigned char mask[EV_MAX/8 + 1]; 00105 int numRel, numAbs, numLeds; 00106 int relmap[DMX_MAX_AXES]; 00107 int absmap[DMX_MAX_AXES]; 00109 CARD32 kbdState[NUM_STATE_ENTRIES]; 00110 DeviceIntPtr pKeyboard; 00112 int pitch; 00113 unsigned long duration; 00115 /* FIXME: dmxInput is never initialized */ 00116 DMXInputInfo *dmxInput; 00117 } myPrivate; 00118 #endif
Generated June 29, 2004 for Distributed Multihead X by doxygen 1.3.4.