blob: 0591a8ef67038f27e09fa6cc98deb85f32ef578f [file] [log] [blame]
Brian Silvermanda45b6c2014-12-28 11:36:50 -08001#ifndef FRC971_WPILIB_JOYSTICK_SENDER_H_
2#define FRC971_WPILIB_JOYSTICK_SENDER_H_
3
4#include <atomic>
5
James Kuszmaul57c2baa2020-01-19 14:52:52 -08006#include "aos/events/shm_event_loop.h"
James Kuszmaul7077d342021-06-09 20:23:58 -07007#include "frc971/input/joystick_state_generated.h"
Austin Schuhdf6cbb12019-02-02 13:46:52 -08008
Stephan Pleinesd99b1ee2024-02-02 20:56:44 -08009namespace frc971::wpilib {
Brian Silvermanda45b6c2014-12-28 11:36:50 -080010
11class JoystickSender {
12 public:
James Kuszmaul57c2baa2020-01-19 14:52:52 -080013 JoystickSender(::aos::ShmEventLoop *event_loop);
Brian Silvermanda45b6c2014-12-28 11:36:50 -080014
15 private:
James Kuszmaul57c2baa2020-01-19 14:52:52 -080016 ::aos::ShmEventLoop *event_loop_;
Austin Schuhdf6cbb12019-02-02 13:46:52 -080017 ::aos::Sender<::aos::JoystickState> joystick_state_sender_;
Austin Schuhbd1fe9c2019-06-29 16:35:48 -070018 const uint16_t team_id_;
Brian Silvermanda45b6c2014-12-28 11:36:50 -080019};
20
Stephan Pleinesd99b1ee2024-02-02 20:56:44 -080021} // namespace frc971::wpilib
Brian Silvermanda45b6c2014-12-28 11:36:50 -080022
23#endif // FRC971_WPILIB_JOYSTICK_SENDER_H_