/// <summary> /// Initializes the controller manager which loads all of the DInput and XInput controllers and /// allows for quick and easy remapping and input obtaining from controllers. /// </summary> public ControllerManager() { // Instantiate controller list and DInputManager as well as Controller List. DInputManager = new DInputManager(); Controllers = new List <IController>(); // Set up the hotplugger instance. Hotplugger = new Hotplugger((GetConnectedControllersDelegate)SetupControllerManager); // Setup DInput Controllers and Instantiate XInput Controllers SetupControllerManager(); }
public DInputManager(VirtualController virtualController) { VirtualController = virtualController; DirectInput = new DirectInput(); Hotplugger = new Hotplugger(); Refresh(); Hotplugger.OnConnectedDevicesChanged += () => { Refresh(); VirtualController.Refresh(); }; }