void SetChannelValues(int32 ControllerId, const FForceFeedbackValues &Values) override
	{
		if ((ControllerId >= 0) && (ControllerId < MAX_STEAM_CONTROLLERS))
		{
			FControllerState& ControllerState = ControllerStates[ControllerId];
			ControllerState.VibeValues = Values;

			UpdateVibration(ControllerId);
		}
	}
	void SetChannelValue(int32 ControllerId, FForceFeedbackChannelType ChannelType, float Value) override
	{
		// Skip unless this is the large channels, which we consider to be the only SteamController feedback channels
		if ((ChannelType != FForceFeedbackChannelType::LEFT_LARGE) && (ChannelType != FForceFeedbackChannelType::RIGHT_LARGE))
		{
			return;
		}

		if ((ControllerId >= 0) && (ControllerId < MAX_STEAM_CONTROLLERS))
		{
			FControllerState& ControllerState = ControllerStates[ControllerId];

			ControllerState.VibeValues.LeftLarge = Value;

			UpdateVibration(ControllerId);
		}
	}
Example #3
0
	void SetVibration(u32 value)
	{
		UpdateVibration(dev->bus_id, value);
	}