blob: e137e9ea28c7cfe5c1f7dd1701f360040cf83841 [file] [log] [blame]
James Kuszmaul04a343c2023-02-20 16:38:22 -08001load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
2load("@com_github_google_flatbuffers//:typescript.bzl", "flatbuffer_ts_library")
3
4flatbuffer_cc_library(
5 name = "status_fbs",
6 srcs = [
7 "status.fbs",
8 ],
9 gen_reflections = True,
10 target_compatible_with = ["@platforms//os:linux"],
11 visibility = ["//visibility:public"],
12 deps = [
13 "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
14 "//frc971/imu_reader:imu_failures_fbs",
15 ],
16)
17
18flatbuffer_ts_library(
19 name = "status_ts_fbs",
20 srcs = ["status.fbs"],
21 visibility = ["//visibility:public"],
22 deps = [
23 "//frc971/control_loops/drivetrain:drivetrain_status_ts_fbs",
24 "//frc971/imu_reader:imu_failures_ts_fbs",
25 ],
26)
27
28flatbuffer_cc_library(
29 name = "visualization_fbs",
30 srcs = [
31 "visualization.fbs",
32 ],
33 gen_reflections = True,
34 target_compatible_with = ["@platforms//os:linux"],
35 visibility = ["//visibility:public"],
36 deps = [
37 ":status_fbs",
38 ],
39)
40
41flatbuffer_ts_library(
42 name = "visualization_ts_fbs",
43 srcs = ["visualization.fbs"],
44 visibility = ["//visibility:public"],
45 deps = [
46 ":status_ts_fbs",
47 ],
48)
49
50cc_library(
51 name = "localizer",
52 srcs = ["localizer.cc"],
53 hdrs = ["localizer.h"],
milind-ud4051fe2023-02-25 18:00:05 -080054 visibility = ["//visibility:public"],
James Kuszmaul04a343c2023-02-20 16:38:22 -080055 deps = [
56 ":status_fbs",
57 ":visualization_fbs",
58 "//aos/containers:sized_array",
59 "//aos/events:event_loop",
60 "//frc971/constants:constants_sender_lib",
61 "//frc971/control_loops:pose",
62 "//frc971/control_loops/drivetrain:hybrid_ekf",
63 "//frc971/control_loops/drivetrain:improved_down_estimator",
64 "//frc971/control_loops/drivetrain:localizer_fbs",
65 "//frc971/control_loops/drivetrain/localization:localizer_output_fbs",
66 "//frc971/control_loops/drivetrain/localization:utils",
67 "//frc971/imu_reader:imu_watcher",
68 "//frc971/vision:target_map_fbs",
69 "//y2023:constants",
70 "//y2023/constants:constants_fbs",
71 ],
72)
73
74cc_test(
75 name = "localizer_test",
76 srcs = ["localizer_test.cc"],
77 data = ["//y2023:aos_config"],
78 deps = [
79 ":localizer",
80 ":status_fbs",
81 "//aos/events:simulated_event_loop",
82 "//aos/events/logging:log_writer",
83 "//aos/testing:googletest",
84 "//frc971/control_loops/drivetrain:drivetrain_test_lib",
85 "//frc971/control_loops/drivetrain:localizer_fbs",
86 "//y2023/constants:simulated_constants_sender",
87 "//y2023/control_loops/drivetrain:drivetrain_base",
88 ],
89)
90
91cc_binary(
92 name = "localizer_main",
93 srcs = ["localizer_main.cc"],
94 visibility = ["//visibility:public"],
95 deps = [
96 ":localizer",
97 "//aos:init",
98 "//aos/events:shm_event_loop",
99 "//frc971/constants:constants_sender_lib",
100 "//y2023/control_loops/drivetrain:drivetrain_base",
101 ],
102)