/// <summary> /// Devices the connected event handler. /// </summary> /// <param name="sender">Sender.</param> /// <param name="args">Arguments.</param> public void DeviceConnectedEventHandler(object sender, WebMessageArgs <GenericHIDDevice> args) { // UnityEngine.Debug.Log(args.Message); GenericHIDDevice info = args.RawMessage; if (!__Generics.ContainsKey(info.ID)) { info.hidInterface = this; ResolveDevice(info); } }
public void onDeviceConnectedEvent(string message) { if (DeviceConnectedEvent != null) { _isInitialized = true; GenericHIDDevice info = Json.Deserialize <GenericHIDDevice>(message) as GenericHIDDevice; int PID; int VID; string Name; IDToDeviceData(info.ID, out PID, out VID, out Name); info.PID = PID; info.VID = VID; info.Name = Name; DeviceConnectedEvent(this, new WebMessageArgs <GenericHIDDevice>(info)); } }
public IDevice ResolveDevice(IHIDDevice info) { GenericHIDDevice genericDevice = (GenericHIDDevice)info; _hidInterface = info.hidInterface; JoystickDevice joystick; int numAxes = genericDevice.numAxes; //info.Extension.axes; int numButtons = genericDevice.numButtons; //info.Extension.buttons; joystick = new JoystickDevice(info.index, info.PID, info.VID, info.ID, Math.Max(8, numAxes), numButtons, this); joystick.Name = info.Name; int index = 0; for (; index < numButtons; index++) { joystick.Buttons[index] = new ButtonDetails(); } for (index = 0; index < numAxes; index++) { joystick.Axis[index] = new AxisDetails(); } //joystick.numPOV = 1; // joystick.Axis[index - 1].isHat = true; //joystick.Axis[index - 2].isHat = true; return(joystick); }