public OpenVRControllerProfile()
        {
            name = "OpenVR Controller";
            matchingDeviceRegexes = new List <string>()
            {
                "^(?=.*product:(?=.*OpenVR.*Controller))(?=.*interface:.*\\[VR\\])(?=.*type:.*Controller.*).*$"
            };
            lastResortDeviceRegex = null; // Clear from GenericVRControllerProfile.
            neverMatchDeviceRegex = null; // Clear from GenericVRControllerProfile.

            var setup = GetControlSetup(new OpenVRController());

            mappings = setup.FinishMappings();

            hapticsProcessor = new GenericHapticsProcessor(setup.GetControl(CommonControls.Vibration).index);
        }
        public OculusTouchProfile()
        {
            name = "Oculus Touch";
            matchingDeviceRegexes = new List <string>()
            {
                ".*Oculus.*Touch.*Controller.*"
            };
            lastResortDeviceRegex = null; // Clear from GenericVRControllerProfile.
            neverMatchDeviceRegex = null; // Clear from GenericVRControllerProfile.

            var setup = GetControlSetup(new OculusTouchController());

            mappings = setup.FinishMappings();

            hapticsProcessor = new GenericHapticsProcessor(setup.GetControl(CommonControls.Vibration).index);
        }