this.lpDevice = lpDevice;
    private DirectInputMouse(long lpDevice, int subtype, String productName,        String instanceName) {        super(productName + " " + instanceName);        buttons = new ButtonsImpl();        ball = new BallImpl();        this.lpDevice = lpDevice;        switch(subtype) {            case DIDEVTYPEMOUSE_FINGERSTICK:                type = Type.FINGERSTICK; break;            case DIDEVTYPEMOUSE_TOUCHPAD:                type = Type.TRACKPAD; break;            case DIDEVTYPEMOUSE_TRACKBALL:                type = Type.TRACKBALL; break;            case DIDEVTYPEMOUSE_TRADITIONAL: // fall through            case DIDEVTYPEMOUSE_UNKNOWN: // fall through            default:                type = Type.MOUSE; break;        }        renameAxes(lpDevice);    }