require '_h2ph_pre.ph';

no warnings 'redefine';

unless(defined(&_USBHID_H_)) {
    eval 'sub _USBHID_H_ () {1;}' unless defined(&_USBHID_H_);
    eval 'sub UR_GET_HID_DESCRIPTOR () {0x6;}' unless defined(&UR_GET_HID_DESCRIPTOR);
    eval 'sub UDESC_HID () {0x21;}' unless defined(&UDESC_HID);
    eval 'sub UDESC_REPORT () {0x22;}' unless defined(&UDESC_REPORT);
    eval 'sub UDESC_PHYSICAL () {0x23;}' unless defined(&UDESC_PHYSICAL);
    eval 'sub UR_SET_HID_DESCRIPTOR () {0x7;}' unless defined(&UR_SET_HID_DESCRIPTOR);
    eval 'sub UR_GET_REPORT () {0x1;}' unless defined(&UR_GET_REPORT);
    eval 'sub UR_SET_REPORT () {0x9;}' unless defined(&UR_SET_REPORT);
    eval 'sub UR_GET_IDLE () {0x2;}' unless defined(&UR_GET_IDLE);
    eval 'sub UR_SET_IDLE () {0xa;}' unless defined(&UR_SET_IDLE);
    eval 'sub UR_GET_PROTOCOL () {0x3;}' unless defined(&UR_GET_PROTOCOL);
    eval 'sub UR_SET_PROTOCOL () {0xb;}' unless defined(&UR_SET_PROTOCOL);
    eval 'sub USB_HID_DESCRIPTOR_SIZE {
        my($n) = @_;
	    eval q((9+($n)*3));
    }' unless defined(&USB_HID_DESCRIPTOR_SIZE);
    eval 'sub HUP_UNDEFINED () {0x;}' unless defined(&HUP_UNDEFINED);
    eval 'sub HUP_GENERIC_DESKTOP () {0x1;}' unless defined(&HUP_GENERIC_DESKTOP);
    eval 'sub HUP_SIMULATION () {0x2;}' unless defined(&HUP_SIMULATION);
    eval 'sub HUP_VR_CONTROLS () {0x3;}' unless defined(&HUP_VR_CONTROLS);
    eval 'sub HUP_SPORTS_CONTROLS () {0x4;}' unless defined(&HUP_SPORTS_CONTROLS);
    eval 'sub HUP_GAMING_CONTROLS () {0x5;}' unless defined(&HUP_GAMING_CONTROLS);
    eval 'sub HUP_KEYBOARD () {0x7;}' unless defined(&HUP_KEYBOARD);
    eval 'sub HUP_LEDS () {0x8;}' unless defined(&HUP_LEDS);
    eval 'sub HUP_BUTTON () {0x9;}' unless defined(&HUP_BUTTON);
    eval 'sub HUP_ORDINALS () {0xa;}' unless defined(&HUP_ORDINALS);
    eval 'sub HUP_TELEPHONY () {0xb;}' unless defined(&HUP_TELEPHONY);
    eval 'sub HUP_CONSUMER () {0xc;}' unless defined(&HUP_CONSUMER);
    eval 'sub HUP_DIGITIZERS () {0xd;}' unless defined(&HUP_DIGITIZERS);
    eval 'sub HUP_PHYSICAL_IFACE () {0xe;}' unless defined(&HUP_PHYSICAL_IFACE);
    eval 'sub HUP_UNICODE () {0x10;}' unless defined(&HUP_UNICODE);
    eval 'sub HUP_ALPHANUM_DISPLAY () {0x14;}' unless defined(&HUP_ALPHANUM_DISPLAY);
    eval 'sub HUP_MONITOR () {0x80;}' unless defined(&HUP_MONITOR);
    eval 'sub HUP_MONITOR_ENUM_VAL () {0x81;}' unless defined(&HUP_MONITOR_ENUM_VAL);
    eval 'sub HUP_VESA_VC () {0x82;}' unless defined(&HUP_VESA_VC);
    eval 'sub HUP_VESA_CMD () {0x83;}' unless defined(&HUP_VESA_CMD);
    eval 'sub HUP_POWER () {0x84;}' unless defined(&HUP_POWER);
    eval 'sub HUP_BATTERY_SYSTEM () {0x85;}' unless defined(&HUP_BATTERY_SYSTEM);
    eval 'sub HUP_BARCODE_SCANNER () {0x8b;}' unless defined(&HUP_BARCODE_SCANNER);
    eval 'sub HUP_SCALE () {0x8c;}' unless defined(&HUP_SCALE);
    eval 'sub HUP_CAMERA_CONTROL () {0x90;}' unless defined(&HUP_CAMERA_CONTROL);
    eval 'sub HUP_ARCADE () {0x91;}' unless defined(&HUP_ARCADE);
    eval 'sub HUP_MICROSOFT () {0xff00;}' unless defined(&HUP_MICROSOFT);
    eval 'sub HUG_POINTER () {0x1;}' unless defined(&HUG_POINTER);
    eval 'sub HUG_MOUSE () {0x2;}' unless defined(&HUG_MOUSE);
    eval 'sub HUG_JOYSTICK () {0x4;}' unless defined(&HUG_JOYSTICK);
    eval 'sub HUG_GAME_PAD () {0x5;}' unless defined(&HUG_GAME_PAD);
    eval 'sub HUG_KEYBOARD () {0x6;}' unless defined(&HUG_KEYBOARD);
    eval 'sub HUG_KEYPAD () {0x7;}' unless defined(&HUG_KEYPAD);
    eval 'sub HUG_X () {0x30;}' unless defined(&HUG_X);
    eval 'sub HUG_Y () {0x31;}' unless defined(&HUG_Y);
    eval 'sub HUG_Z () {0x32;}' unless defined(&HUG_Z);
    eval 'sub HUG_RX () {0x33;}' unless defined(&HUG_RX);
    eval 'sub HUG_RY () {0x34;}' unless defined(&HUG_RY);
    eval 'sub HUG_RZ () {0x35;}' unless defined(&HUG_RZ);
    eval 'sub HUG_SLIDER () {0x36;}' unless defined(&HUG_SLIDER);
    eval 'sub HUG_DIAL () {0x37;}' unless defined(&HUG_DIAL);
    eval 'sub HUG_WHEEL () {0x38;}' unless defined(&HUG_WHEEL);
    eval 'sub HUG_HAT_SWITCH () {0x39;}' unless defined(&HUG_HAT_SWITCH);
    eval 'sub HUG_COUNTED_BUFFER () {0x3a;}' unless defined(&HUG_COUNTED_BUFFER);
    eval 'sub HUG_BYTE_COUNT () {0x3b;}' unless defined(&HUG_BYTE_COUNT);
    eval 'sub HUG_MOTION_WAKEUP () {0x3c;}' unless defined(&HUG_MOTION_WAKEUP);
    eval 'sub HUG_VX () {0x40;}' unless defined(&HUG_VX);
    eval 'sub HUG_VY () {0x41;}' unless defined(&HUG_VY);
    eval 'sub HUG_VZ () {0x42;}' unless defined(&HUG_VZ);
    eval 'sub HUG_VBRX () {0x43;}' unless defined(&HUG_VBRX);
    eval 'sub HUG_VBRY () {0x44;}' unless defined(&HUG_VBRY);
    eval 'sub HUG_VBRZ () {0x45;}' unless defined(&HUG_VBRZ);
    eval 'sub HUG_VNO () {0x46;}' unless defined(&HUG_VNO);
    eval 'sub HUG_SYSTEM_CONTROL () {0x80;}' unless defined(&HUG_SYSTEM_CONTROL);
    eval 'sub HUG_SYSTEM_POWER_DOWN () {0x81;}' unless defined(&HUG_SYSTEM_POWER_DOWN);
    eval 'sub HUG_SYSTEM_SLEEP () {0x82;}' unless defined(&HUG_SYSTEM_SLEEP);
    eval 'sub HUG_SYSTEM_WAKEUP () {0x83;}' unless defined(&HUG_SYSTEM_WAKEUP);
    eval 'sub HUG_SYSTEM_CONTEXT_MENU () {0x84;}' unless defined(&HUG_SYSTEM_CONTEXT_MENU);
    eval 'sub HUG_SYSTEM_MAIN_MENU () {0x85;}' unless defined(&HUG_SYSTEM_MAIN_MENU);
    eval 'sub HUG_SYSTEM_APP_MENU () {0x86;}' unless defined(&HUG_SYSTEM_APP_MENU);
    eval 'sub HUG_SYSTEM_MENU_HELP () {0x87;}' unless defined(&HUG_SYSTEM_MENU_HELP);
    eval 'sub HUG_SYSTEM_MENU_EXIT () {0x88;}' unless defined(&HUG_SYSTEM_MENU_EXIT);
    eval 'sub HUG_SYSTEM_MENU_SELECT () {0x89;}' unless defined(&HUG_SYSTEM_MENU_SELECT);
    eval 'sub HUG_SYSTEM_MENU_RIGHT () {0x8a;}' unless defined(&HUG_SYSTEM_MENU_RIGHT);
    eval 'sub HUG_SYSTEM_MENU_LEFT () {0x8b;}' unless defined(&HUG_SYSTEM_MENU_LEFT);
    eval 'sub HUG_SYSTEM_MENU_UP () {0x8c;}' unless defined(&HUG_SYSTEM_MENU_UP);
    eval 'sub HUG_SYSTEM_MENU_DOWN () {0x8d;}' unless defined(&HUG_SYSTEM_MENU_DOWN);
    eval 'sub HUD_UNDEFINED () {0x;}' unless defined(&HUD_UNDEFINED);
    eval 'sub HUD_TIP_PRESSURE () {0x30;}' unless defined(&HUD_TIP_PRESSURE);
    eval 'sub HUD_BARREL_PRESSURE () {0x31;}' unless defined(&HUD_BARREL_PRESSURE);
    eval 'sub HUD_IN_RANGE () {0x32;}' unless defined(&HUD_IN_RANGE);
    eval 'sub HUD_TOUCH () {0x33;}' unless defined(&HUD_TOUCH);
    eval 'sub HUD_UNTOUCH () {0x34;}' unless defined(&HUD_UNTOUCH);
    eval 'sub HUD_TAP () {0x35;}' unless defined(&HUD_TAP);
    eval 'sub HUD_QUALITY () {0x36;}' unless defined(&HUD_QUALITY);
    eval 'sub HUD_DATA_VALID () {0x37;}' unless defined(&HUD_DATA_VALID);
    eval 'sub HUD_TRANSDUCER_INDEX () {0x38;}' unless defined(&HUD_TRANSDUCER_INDEX);
    eval 'sub HUD_TABLET_FKEYS () {0x39;}' unless defined(&HUD_TABLET_FKEYS);
    eval 'sub HUD_PROGRAM_CHANGE_KEYS () {0x3a;}' unless defined(&HUD_PROGRAM_CHANGE_KEYS);
    eval 'sub HUD_BATTERY_STRENGTH () {0x3b;}' unless defined(&HUD_BATTERY_STRENGTH);
    eval 'sub HUD_INVERT () {0x3c;}' unless defined(&HUD_INVERT);
    eval 'sub HUD_X_TILT () {0x3d;}' unless defined(&HUD_X_TILT);
    eval 'sub HUD_Y_TILT () {0x3e;}' unless defined(&HUD_Y_TILT);
    eval 'sub HUD_AZIMUTH () {0x3f;}' unless defined(&HUD_AZIMUTH);
    eval 'sub HUD_ALTITUDE () {0x40;}' unless defined(&HUD_ALTITUDE);
    eval 'sub HUD_TWIST () {0x41;}' unless defined(&HUD_TWIST);
    eval 'sub HUD_TIP_SWITCH () {0x42;}' unless defined(&HUD_TIP_SWITCH);
    eval 'sub HUD_SEC_TIP_SWITCH () {0x43;}' unless defined(&HUD_SEC_TIP_SWITCH);
    eval 'sub HUD_BARREL_SWITCH () {0x44;}' unless defined(&HUD_BARREL_SWITCH);
    eval 'sub HUD_ERASER () {0x45;}' unless defined(&HUD_ERASER);
    eval 'sub HUD_TABLET_PICK () {0x46;}' unless defined(&HUD_TABLET_PICK);
    eval 'sub HUD_LED_NUM_LOCK () {0x1;}' unless defined(&HUD_LED_NUM_LOCK);
    eval 'sub HUD_LED_CAPS_LOCK () {0x2;}' unless defined(&HUD_LED_CAPS_LOCK);
    eval 'sub HUD_LED_SCROLL_LOCK () {0x3;}' unless defined(&HUD_LED_SCROLL_LOCK);
    eval 'sub HUD_LED_COMPOSE () {0x4;}' unless defined(&HUD_LED_COMPOSE);
    eval 'sub HUD_LED_KANA () {0x5;}' unless defined(&HUD_LED_KANA);
    eval 'sub HID_USAGE2 {
        my($p, $u) = @_;
	    eval q(((($p) << 16) | $u));
    }' unless defined(&HID_USAGE2);
    eval 'sub HID_GET_USAGE {
        my($u) = @_;
	    eval q((($u) & 0xffff));
    }' unless defined(&HID_GET_USAGE);
    eval 'sub HID_GET_USAGE_PAGE {
        my($u) = @_;
	    eval q(((($u) >> 16) & 0xffff));
    }' unless defined(&HID_GET_USAGE_PAGE);
    eval 'sub UHID_INPUT_REPORT () {0x1;}' unless defined(&UHID_INPUT_REPORT);
    eval 'sub UHID_OUTPUT_REPORT () {0x2;}' unless defined(&UHID_OUTPUT_REPORT);
    eval 'sub UHID_FEATURE_REPORT () {0x3;}' unless defined(&UHID_FEATURE_REPORT);
    eval 'sub HCOLL_PHYSICAL () {0;}' unless defined(&HCOLL_PHYSICAL);
    eval 'sub HCOLL_APPLICATION () {1;}' unless defined(&HCOLL_APPLICATION);
    eval 'sub HCOLL_LOGICAL () {2;}' unless defined(&HCOLL_LOGICAL);
    eval 'sub HIO_CONST () {0x1;}' unless defined(&HIO_CONST);
    eval 'sub HIO_VARIABLE () {0x2;}' unless defined(&HIO_VARIABLE);
    eval 'sub HIO_RELATIVE () {0x4;}' unless defined(&HIO_RELATIVE);
    eval 'sub HIO_WRAP () {0x8;}' unless defined(&HIO_WRAP);
    eval 'sub HIO_NONLINEAR () {0x10;}' unless defined(&HIO_NONLINEAR);
    eval 'sub HIO_NOPREF () {0x20;}' unless defined(&HIO_NOPREF);
    eval 'sub HIO_NULLSTATE () {0x40;}' unless defined(&HIO_NULLSTATE);
    eval 'sub HIO_VOLATILE () {0x80;}' unless defined(&HIO_VOLATILE);
    eval 'sub HIO_BUFBYTES () {0x100;}' unless defined(&HIO_BUFBYTES);
    eval 'sub HCC_UNDEFINED () {0x;}' unless defined(&HCC_UNDEFINED);
    eval 'sub HCC_MAX () {0x23;}' unless defined(&HCC_MAX);
}
1;
