WPILibC++ 2024.3.2
PS5ControllerSim.h
Go to the documentation of this file.
1// Copyright (c) FIRST and other WPILib contributors.
2// Open Source Software; you can modify and/or share it under the terms of
3// the WPILib BSD license file in the root directory of this project.
4
5#pragma once
6
8
9namespace frc {
10
11class PS5Controller;
12
13namespace sim {
14
15/**
16 * Class to control a simulated PS5 controller.
17 */
19 public:
20 /**
21 * Constructs from a PS5Controller object.
22 *
23 * @param joystick controller to simulate
24 */
25 explicit PS5ControllerSim(const PS5Controller& joystick);
26
27 /**
28 * Constructs from a joystick port number.
29 *
30 * @param port port number
31 */
32 explicit PS5ControllerSim(int port);
33
34 /**
35 * Change the X axis value of the controller's left stick.
36 *
37 * @param value the new value
38 */
39 void SetLeftX(double value);
40
41 /**
42 * Change the X axis value of the controller's right stick.
43 *
44 * @param value the new value
45 */
46 void SetRightX(double value);
47
48 /**
49 * Change the Y axis value of the controller's left stick.
50 *
51 * @param value the new value
52 */
53 void SetLeftY(double value);
54
55 /**
56 * Change the Y axis value of the controller's right stick.
57 *
58 * @param value the new value
59 */
60 void SetRightY(double value);
61
62 /**
63 * Change the L2 axis axis value of the controller.
64 *
65 * @param value the new value
66 */
67 void SetL2Axis(double value);
68
69 /**
70 * Change the R2 axis value of the controller.
71 *
72 * @param value the new value
73 */
74 void SetR2Axis(double value);
75
76 /**
77 * Change the value of the Square button on the controller.
78 *
79 * @param value the new value
80 */
81 void SetSquareButton(bool value);
82
83 /**
84 * Change the value of the Cross button on the controller.
85 *
86 * @param value the new value
87 */
88 void SetCrossButton(bool value);
89
90 /**
91 * Change the value of the Circle button on the controller.
92 *
93 * @param value the new value
94 */
95 void SetCircleButton(bool value);
96
97 /**
98 * Change the value of the Triangle button on the controller.
99 *
100 * @param value the new value
101 */
102 void SetTriangleButton(bool value);
103
104 /**
105 * Change the value of the L1 button on the controller.
106 *
107 * @param value the new value
108 */
109 void SetL1Button(bool value);
110
111 /**
112 * Change the value of the R1 button on the controller.
113 *
114 * @param value the new value
115 */
116 void SetR1Button(bool value);
117
118 /**
119 * Change the value of the L2 button on the controller.
120 *
121 * @param value the new value
122 */
123 void SetL2Button(bool value);
124
125 /**
126 * Change the value of the R2 button on the controller.
127 *
128 * @param value the new value
129 */
130 void SetR2Button(bool value);
131
132 /**
133 * Change the value of the Create button on the controller.
134 *
135 * @param value the new value
136 */
137 void SetCreateButton(bool value);
138
139 /**
140 * Change the value of the Options button on the controller.
141 *
142 * @param value the new value
143 */
144 void SetOptionsButton(bool value);
145
146 /**
147 * Change the value of the L3 (left stick) button on the controller.
148 *
149 * @param value the new value
150 */
151 void SetL3Button(bool value);
152
153 /**
154 * Change the value of the R3 (right stick) button on the controller.
155 *
156 * @param value the new value
157 */
158 void SetR3Button(bool value);
159
160 /**
161 * Change the value of the PS button on the controller.
162 *
163 * @param value the new value
164 */
165 void SetPSButton(bool value);
166
167 /**
168 * Change the value of the touchpad button on the controller.
169 *
170 * @param value the new value
171 */
172 void SetTouchpad(bool value);
173};
174
175} // namespace sim
176} // namespace frc
Handle input from PS5 controllers connected to the Driver Station.
Definition: PS5Controller.h:23
Class to control a simulated generic joystick.
Definition: GenericHIDSim.h:20
Class to control a simulated PS5 controller.
Definition: PS5ControllerSim.h:18
void SetL2Axis(double value)
Change the L2 axis axis value of the controller.
void SetR1Button(bool value)
Change the value of the R1 button on the controller.
void SetRightX(double value)
Change the X axis value of the controller's right stick.
void SetRightY(double value)
Change the Y axis value of the controller's right stick.
void SetCrossButton(bool value)
Change the value of the Cross button on the controller.
void SetPSButton(bool value)
Change the value of the PS button on the controller.
void SetL3Button(bool value)
Change the value of the L3 (left stick) button on the controller.
void SetR3Button(bool value)
Change the value of the R3 (right stick) button on the controller.
void SetL1Button(bool value)
Change the value of the L1 button on the controller.
void SetLeftY(double value)
Change the Y axis value of the controller's left stick.
void SetR2Axis(double value)
Change the R2 axis value of the controller.
void SetOptionsButton(bool value)
Change the value of the Options button on the controller.
void SetCreateButton(bool value)
Change the value of the Create button on the controller.
void SetTriangleButton(bool value)
Change the value of the Triangle button on the controller.
PS5ControllerSim(const PS5Controller &joystick)
Constructs from a PS5Controller object.
void SetR2Button(bool value)
Change the value of the R2 button on the controller.
void SetSquareButton(bool value)
Change the value of the Square button on the controller.
void SetL2Button(bool value)
Change the value of the L2 button on the controller.
void SetCircleButton(bool value)
Change the value of the Circle button on the controller.
void SetLeftX(double value)
Change the X axis value of the controller's left stick.
void SetTouchpad(bool value)
Change the value of the touchpad button on the controller.
PS5ControllerSim(int port)
Constructs from a joystick port number.
Definition: AprilTagPoseEstimator.h:15