blob: e04fe41c3ab5f541a7288730864b1392cdcbfbfe [file] [log] [blame]
Austin Schuhd58b2902020-03-01 19:28:04 -08001#include "aos/events/shm_event_loop.h"
2#include "aos/init.h"
3#include "gflags/gflags.h"
milind1f1dca32021-07-03 13:50:07 -07004#include "glog/logging.h"
Austin Schuhd58b2902020-03-01 19:28:04 -08005#include "y2020/setpoint_generated.h"
6
7DEFINE_double(accelerator, 250.0, "Accelerator speed");
8DEFINE_double(finisher, 500.0, "Finsher speed");
9DEFINE_double(hood, 0.45, "Hood setpoint");
James Kuszmaule7e6f322021-09-25 17:24:00 -070010DEFINE_double(turret, 0.0, "Turret setpoint");
Austin Schuhd58b2902020-03-01 19:28:04 -080011
Austin Schuh094d09b2020-11-20 23:26:52 -080012int main(int argc, char **argv) {
Austin Schuhd58b2902020-03-01 19:28:04 -080013 aos::InitGoogle(&argc, &argv);
Austin Schuhd58b2902020-03-01 19:28:04 -080014
15 aos::FlatbufferDetachedBuffer<aos::Configuration> config =
16 aos::configuration::ReadConfig("config.json");
17
18 aos::ShmEventLoop event_loop(&config.message());
19
20 ::aos::Sender<y2020::joysticks::Setpoint> setpoint_sender =
21 event_loop.MakeSender<y2020::joysticks::Setpoint>("/superstructure");
22
23 aos::Sender<y2020::joysticks::Setpoint>::Builder builder =
24 setpoint_sender.MakeBuilder();
25
26 y2020::joysticks::Setpoint::Builder setpoint_builder =
27 builder.MakeBuilder<y2020::joysticks::Setpoint>();
28
29 setpoint_builder.add_accelerator(FLAGS_accelerator);
30 setpoint_builder.add_finisher(FLAGS_finisher);
31 setpoint_builder.add_hood(FLAGS_hood);
James Kuszmaule7e6f322021-09-25 17:24:00 -070032 setpoint_builder.add_turret(FLAGS_turret);
milind1f1dca32021-07-03 13:50:07 -070033 builder.CheckOk(builder.Send(setpoint_builder.Finish()));
Austin Schuhd58b2902020-03-01 19:28:04 -080034
Austin Schuhae87e312020-08-01 16:15:01 -070035 return 0;
Austin Schuhd58b2902020-03-01 19:28:04 -080036}