2#include <NDEVR/ControllerInterface.h>
3#include <DualSenseController/Headers/DualSenseDevice.h>
4#include <DualSenseController/Headers/DS5State.h>
28 bool isEdgeController()
const;
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.
virtual Buffer< ControlButton > rightButtons() const override
Returns the right-side buttons on the controller.
DS5W::DS5OutputState m_output_state
Desired output state to send to the controller.
virtual Buffer< ControlStick > leftSticks() const override
Returns the left-side analog sticks on the controller.
virtual UUID id() const override
Returns the unique identifier of this controller.
DualSenseController(const DS5W::DeviceContext &context)
Constructs the controller from a DualSense device context.
virtual bool requestVibrating(fltp08 left, fltp08 right) override
Requests the controller to vibrate with the given intensities.
uint04 m_drag_points
Number of active touch-drag points.
virtual RGBColor color() const override
Returns the current LED color of the controller, if supported.
Buffer< HapticFeedback > hapticFeedback() const override
Returns the haptic feedback outputs available on this controller.
bool m_needs_to_write_params
Whether output parameters need to be sent.
virtual Vector< 2, fltp08 > vibration() const override
Returns the current vibration intensity for both motors.
DS5W::DeviceContext m_context
Low-level device context handle.
WindowInstance * m_window_instance
Associated window instance for input events.
virtual void setWindowInstance(WindowInstance *instance) override
Associates a window instance with this controller for input routing.
virtual Buffer< Battery * > batteries() const override
Returns the batteries associated with this controller.
void updateState() override
Polls the controller hardware and updates the internal input state.
virtual Buffer< ControlTrigger > rightTriggers() const override
Returns the right-side triggers on the controller.
virtual bool requestColor(const RGBColor &color) override
Requests the controller LED to display the given color.
virtual Buffer< ControlTrigger > leftTriggers() const override
Returns the left-side triggers on the controller.
uint04 failure_count
Number of consecutive communication failures.
Battery * m_battery
Battery sensor for the controller.
virtual Buffer< ControlButton > leftButtons() const override
Returns the left-side buttons on the controller (e.g., D-pad).
UUID m_id
Unique identifier for this controller.
DS5W::DS5InputState m_input_state
Current input state from the controller.
void processTouchEvent()
Processes touchpad events from the controller and generates input events.
virtual Buffer< ControlButton > centerButtons() const override
Returns the center buttons on the controller (e.g., start, select).
virtual Buffer< ControlStick > rightSticks() const override
Returns the right-side analog sticks on the controller.
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.
Contains core information about a Viewport.
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.