blob: 2bfb917122c1e0709bdb2677a7f7bb2be69c92db [file] [log] [blame]
Austin Schuhd58b2902020-03-01 19:28:04 -08001#include "gflags/gflags.h"
milind1f1dca32021-07-03 13:50:07 -07002#include "glog/logging.h"
Philipp Schrader790cb542023-07-05 21:06:52 -07003
4#include "aos/events/shm_event_loop.h"
5#include "aos/init.h"
Austin Schuhd58b2902020-03-01 19:28:04 -08006#include "y2020/setpoint_generated.h"
7
8DEFINE_double(accelerator, 250.0, "Accelerator speed");
9DEFINE_double(finisher, 500.0, "Finsher speed");
10DEFINE_double(hood, 0.45, "Hood setpoint");
James Kuszmaule7e6f322021-09-25 17:24:00 -070011DEFINE_double(turret, 0.0, "Turret setpoint");
Austin Schuhd58b2902020-03-01 19:28:04 -080012
Austin Schuh094d09b2020-11-20 23:26:52 -080013int main(int argc, char **argv) {
Austin Schuhd58b2902020-03-01 19:28:04 -080014 aos::InitGoogle(&argc, &argv);
Austin Schuhd58b2902020-03-01 19:28:04 -080015
16 aos::FlatbufferDetachedBuffer<aos::Configuration> config =
Austin Schuhc5fa6d92022-02-25 14:36:28 -080017 aos::configuration::ReadConfig("aos_config.json");
Austin Schuhd58b2902020-03-01 19:28:04 -080018
19 aos::ShmEventLoop event_loop(&config.message());
20
21 ::aos::Sender<y2020::joysticks::Setpoint> setpoint_sender =
22 event_loop.MakeSender<y2020::joysticks::Setpoint>("/superstructure");
23
24 aos::Sender<y2020::joysticks::Setpoint>::Builder builder =
25 setpoint_sender.MakeBuilder();
26
27 y2020::joysticks::Setpoint::Builder setpoint_builder =
28 builder.MakeBuilder<y2020::joysticks::Setpoint>();
29
30 setpoint_builder.add_accelerator(FLAGS_accelerator);
31 setpoint_builder.add_finisher(FLAGS_finisher);
32 setpoint_builder.add_hood(FLAGS_hood);
James Kuszmaule7e6f322021-09-25 17:24:00 -070033 setpoint_builder.add_turret(FLAGS_turret);
milind1f1dca32021-07-03 13:50:07 -070034 builder.CheckOk(builder.Send(setpoint_builder.Finish()));
Austin Schuhd58b2902020-03-01 19:28:04 -080035
Austin Schuhae87e312020-08-01 16:15:01 -070036 return 0;
Austin Schuhd58b2902020-03-01 19:28:04 -080037}