added button edge logging + cleaned up various naming and comments
diff --git a/aos/common/input/driver_station_data.h b/aos/common/input/driver_station_data.h
index 41609ed..dca33f9 100644
--- a/aos/common/input/driver_station_data.h
+++ b/aos/common/input/driver_station_data.h
@@ -4,6 +4,8 @@
// This file defines several types to support nicely looking at the data
// received from the driver's station.
+#include <assert.h>
+
#include <memory>
#include "aos/externals/WPILib/WPILib/NetworkRobot/NetworkRobotValues.h"
@@ -19,6 +21,10 @@
JoystickFeature(int joystick, int number)
: joystick_(joystick), number_(number) {}
+ // How many joysticks there are.
+ static const int kJoysticks = sizeof(NetworkRobotJoysticks::joysticks) /
+ sizeof(NetworkRobotJoysticks::joysticks[0]);
+
// Which joystick number this is (1-based).
int joystick() const { return joystick_; }
// Which feature on joystick() this is (1-based).
@@ -35,6 +41,9 @@
public:
ButtonLocation(int joystick, int number)
: JoystickFeature(joystick, number) {}
+
+ // How many buttons there are available on each joystick.
+ static const int kButtons = 12;
};
// Represents various bits of control information that the DS sends.
@@ -50,6 +59,10 @@
public:
JoystickAxis(int joystick, int number)
: JoystickFeature(joystick, number) {}
+
+ // How many axes there are available on each joystick.
+ static const int kAxes = sizeof(NetworkRobotJoysticks::Joystick::axes) /
+ sizeof(NetworkRobotJoysticks::Joystick::axes[0]);
};
class Data {