2#include <NDEVR/ControllerInterface.h>
3#include <NDEVR/Battery.h>
4#include "Design/Headers/Model.h"
5#include "Base/Headers/Translator.h"
A device which has an associated voltage or percent that changes.
The equivelent of std::vector but with a bit more control.
Provides standard logic shared across all hardware controllers to be used with the software.
Represents a color in the RGB space with optional alpha transparency.
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
A fixed-size array with N dimensions used as the basis for geometric and mathematical types.
virtual Buffer< ControlStick > rightSticks() const override
Returns the right analog stick state.
Battery * m_battery
The battery associated with this controller.
virtual Buffer< ControlButton > rightButtons() const override
Returns the right-side button states.
virtual Buffer< ControlStick > leftSticks() const override
Returns the left analog stick state.
virtual UUID id() const override
Returns the unique identifier for this controller.
XINPUT_VIBRATION m_output_state
The current vibration output state.
virtual Buffer< Battery * > batteries() const override
Returns the battery objects associated with this controller.
uint04 failure_count
Consecutive polling failure count.
virtual bool requestColor(const RGBColor &color) override
Requests a color change on the controller (not supported on Xbox controllers).
void updateBattery()
Updates the battery status information for this controller.
virtual Vector< 2, fltp08 > vibration() const override
Returns the current vibration intensity for left and right motors.
virtual bool requestVibrating(fltp08 left, fltp08 right) override
Requests vibration on the controller motors.
XBoxController(uint04 index)
Constructs an XBoxController for the given XInput device index.
void updateState() override
Polls the controller for the latest input state.
bool m_has_battery
Whether this controller reports battery information.
virtual Buffer< ControlTrigger > leftTriggers() const override
Returns the left trigger state.
virtual Buffer< ControlButton > leftButtons() const override
Returns the left-side button states.
UUID m_id
The unique identifier for this controller instance.
virtual Buffer< ControlTrigger > rightTriggers() const override
Returns the right trigger state.
bool m_needs_input_update
Whether the input state needs to be refreshed.
virtual Buffer< ControlButton > centerButtons() const override
Returns the center button states (e.g., start, back, guide).
uint04 m_index
The XInput device index (0-3).
XINPUT_STATE m_input_state
The current input state from XInput.
Buffer< HapticFeedback > hapticFeedback() const override
Returns haptic feedback capabilities.
virtual RGBColor color() const
Returns the current color of the controller.
The primary namespace for the NDEVR SDK.
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
double fltp08
Defines an alias representing an 8 byte floating-point number.