blob: ecdcdbb6a7b99732511e8c6a82904d3642cd2d36 [file] [log] [blame]
milind-u086d7262022-01-19 20:44:18 -08001#include <memory>
2
3#include "aos/events/shm_event_loop.h"
4#include "aos/init.h"
5#include "frc971/control_loops/drivetrain/drivetrain.h"
6#include "y2022/control_loops/drivetrain/drivetrain_base.h"
James Kuszmaul1798c072022-02-13 15:32:11 -08007#include "y2022/control_loops/drivetrain/localizer.h"
milind-u086d7262022-01-19 20:44:18 -08008
9using ::frc971::control_loops::drivetrain::DrivetrainLoop;
10
11int main(int argc, char **argv) {
12 ::aos::InitGoogle(&argc, &argv);
13
14 aos::FlatbufferDetachedBuffer<aos::Configuration> config =
15 aos::configuration::ReadConfig("config.json");
16
17 ::aos::ShmEventLoop event_loop(&config.message());
James Kuszmaul1798c072022-02-13 15:32:11 -080018 ::y2022::control_loops::drivetrain::Localizer localizer(
milind-u086d7262022-01-19 20:44:18 -080019 &event_loop,
20 ::y2022::control_loops::drivetrain::GetDrivetrainConfig());
21 std::unique_ptr<DrivetrainLoop> drivetrain = std::make_unique<DrivetrainLoop>(
22 ::y2022::control_loops::drivetrain::GetDrivetrainConfig(),
23 &event_loop, &localizer);
24
25 event_loop.Run();
26
27 return 0;
28}