blob: 9fa5969aaad8b312c378dfedbd0ccdb8c2b0414d [file] [log] [blame]
James Kuszmaul5e6aa252021-08-28 22:19:29 -07001load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library", "flatbuffer_ts_library")
Philipp Schrader87277f42022-01-01 07:45:12 -08002load("@npm//@bazel/typescript:index.bzl", "ts_library")
Stephan Massaltd021f972020-01-05 20:41:23 -08003
Philipp Schradercc016b32021-12-30 08:59:58 -08004package(default_visibility = ["//visibility:public"])
5
Stephan Massaltd021f972020-01-05 20:41:23 -08006flatbuffer_cc_library(
7 name = "superstructure_goal_fbs",
8 srcs = [
9 "superstructure_goal.fbs",
10 ],
11 gen_reflections = 1,
12 includes = [
13 "//frc971/control_loops:control_loops_fbs_includes",
14 "//frc971/control_loops:profiled_subsystem_fbs_includes",
15 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080016 target_compatible_with = ["@platforms//os:linux"],
Stephan Massaltd021f972020-01-05 20:41:23 -080017)
18
19flatbuffer_cc_library(
20 name = "superstructure_output_fbs",
21 srcs = [
22 "superstructure_output.fbs",
23 ],
24 gen_reflections = 1,
Philipp Schraderdada1072020-11-24 11:34:46 -080025 target_compatible_with = ["@platforms//os:linux"],
Stephan Massaltd021f972020-01-05 20:41:23 -080026)
27
James Kuszmaul5e6aa252021-08-28 22:19:29 -070028flatbuffer_ts_library(
29 name = "superstructure_status_ts_fbs",
30 srcs = [
31 "superstructure_status.fbs",
32 ],
33 includes = [
34 "//frc971/control_loops:control_loops_fbs_includes",
35 "//frc971/control_loops:profiled_subsystem_fbs_includes",
36 ],
37 target_compatible_with = ["@platforms//os:linux"],
38)
39
Stephan Massaltd021f972020-01-05 20:41:23 -080040flatbuffer_cc_library(
41 name = "superstructure_status_fbs",
42 srcs = [
43 "superstructure_status.fbs",
44 ],
45 gen_reflections = 1,
46 includes = [
47 "//frc971/control_loops:control_loops_fbs_includes",
48 "//frc971/control_loops:profiled_subsystem_fbs_includes",
49 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080050 target_compatible_with = ["@platforms//os:linux"],
Stephan Massaltd021f972020-01-05 20:41:23 -080051)
52
53flatbuffer_cc_library(
54 name = "superstructure_position_fbs",
55 srcs = [
56 "superstructure_position.fbs",
57 ],
58 gen_reflections = 1,
59 includes = [
60 "//frc971/control_loops:control_loops_fbs_includes",
61 "//frc971/control_loops:profiled_subsystem_fbs_includes",
62 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080063 target_compatible_with = ["@platforms//os:linux"],
Stephan Massaltd021f972020-01-05 20:41:23 -080064)
65
66cc_library(
67 name = "superstructure_lib",
68 srcs = [
69 "superstructure.cc",
70 ],
71 hdrs = [
72 "superstructure.h",
73 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080074 target_compatible_with = ["@platforms//os:linux"],
Stephan Massaltd021f972020-01-05 20:41:23 -080075 deps = [
76 ":superstructure_goal_fbs",
77 ":superstructure_output_fbs",
78 ":superstructure_position_fbs",
79 ":superstructure_status_fbs",
milind-u0beb7dc2021-10-16 19:31:33 -070080 "//aos/containers:sized_array",
Stephan Massaltd021f972020-01-05 20:41:23 -080081 "//aos/events:event_loop",
Austin Schuh0a3c9d42021-07-15 22:36:24 -070082 "//frc971/control_loops:control_loop",
James Kuszmaulb1b2d8e2020-02-21 21:11:46 -080083 "//frc971/control_loops:control_loops_fbs",
84 "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
Stephan Massaltd021f972020-01-05 20:41:23 -080085 "//y2020:constants",
Philipp Schrader37fdbb62021-12-18 00:30:37 -080086 "//y2020/control_loops/superstructure/hood:hood_encoder_zeroing_estimator",
Sabina Davis0f31d3f2020-02-20 20:41:00 -080087 "//y2020/control_loops/superstructure/shooter",
James Kuszmaulb1b2d8e2020-02-21 21:11:46 -080088 "//y2020/control_loops/superstructure/turret:aiming",
Stephan Massaltd021f972020-01-05 20:41:23 -080089 ],
90)
91
92cc_binary(
93 name = "superstructure",
94 srcs = [
95 "superstructure_main.cc",
96 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080097 target_compatible_with = ["@platforms//os:linux"],
Stephan Massaltd021f972020-01-05 20:41:23 -080098 deps = [
99 ":superstructure_lib",
100 "//aos:init",
101 "//aos/events:shm_event_loop",
102 ],
103)
Sabina Davis7704a652020-02-01 11:42:14 -0800104
105cc_test(
106 name = "superstructure_lib_test",
107 srcs = [
108 "superstructure_lib_test.cc",
109 ],
110 data = [
Austin Schuhc5fa6d92022-02-25 14:36:28 -0800111 "//y2020:aos_config",
milind-u7baf7342021-08-25 18:31:26 -0700112 "@superstructure_replay",
Sabina Davis7704a652020-02-01 11:42:14 -0800113 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800114 target_compatible_with = ["@platforms//os:linux"],
Sabina Davis7704a652020-02-01 11:42:14 -0800115 deps = [
116 ":superstructure_goal_fbs",
117 ":superstructure_lib",
118 ":superstructure_output_fbs",
119 ":superstructure_position_fbs",
120 ":superstructure_status_fbs",
121 "//aos:math",
milind-u7baf7342021-08-25 18:31:26 -0700122 "//aos/events/logging:log_reader",
Austin Schuhb06f03b2021-02-17 22:00:37 -0800123 "//aos/events/logging:log_writer",
milind-u7baf7342021-08-25 18:31:26 -0700124 "//aos/network:team_number",
Sabina Davis7704a652020-02-01 11:42:14 -0800125 "//aos/testing:googletest",
126 "//aos/time",
127 "//frc971/control_loops:capped_test_plant",
Austin Schuh0a3c9d42021-07-15 22:36:24 -0700128 "//frc971/control_loops:control_loop_test",
Sabina Davis7704a652020-02-01 11:42:14 -0800129 "//frc971/control_loops:position_sensor_sim",
130 "//frc971/control_loops:team_number_test_environment",
131 "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
132 "//y2020/control_loops/superstructure/hood:hood_plants",
Sabina Davis0f2d38c2020-02-08 17:01:21 -0800133 "//y2020/control_loops/superstructure/intake:intake_plants",
Sabina Davis0f31d3f2020-02-20 20:41:00 -0800134 "//y2020/control_loops/superstructure/shooter:shooter_plants",
Sabina Davis7704a652020-02-01 11:42:14 -0800135 ],
136)
John Park0a245a02020-02-02 14:10:15 -0800137
Austin Schuh7d63eab2021-03-06 20:15:02 -0800138ts_library(
James Kuszmaul78101402021-09-11 12:42:21 -0700139 name = "turret_plotter",
140 srcs = ["turret_plotter.ts"],
141 target_compatible_with = ["@platforms//os:linux"],
142 deps = [
James Kuszmaulda52ce62021-09-25 21:51:42 -0700143 "//aos:configuration_ts_fbs",
James Kuszmaul78101402021-09-11 12:42:21 -0700144 "//aos/network/www:aos_plotter",
145 "//aos/network/www:colors",
James Kuszmaulda52ce62021-09-25 21:51:42 -0700146 "//aos/network/www:plotter",
James Kuszmaul78101402021-09-11 12:42:21 -0700147 "//aos/network/www:proxy",
James Kuszmaulda52ce62021-09-25 21:51:42 -0700148 "//aos/network/www:reflection_ts",
149 "@com_github_google_flatbuffers//ts:flatbuffers_ts",
James Kuszmaul78101402021-09-11 12:42:21 -0700150 ],
151)
152
153ts_library(
Austin Schuh7d63eab2021-03-06 20:15:02 -0800154 name = "finisher_plotter",
155 srcs = ["finisher_plotter.ts"],
156 target_compatible_with = ["@platforms//os:linux"],
157 deps = [
158 "//aos/network/www:aos_plotter",
Ravago Jones819ba1f2021-03-10 10:48:10 -0800159 "//aos/network/www:colors",
Austin Schuh7d63eab2021-03-06 20:15:02 -0800160 "//aos/network/www:proxy",
161 ],
162)
163
164ts_library(
165 name = "accelerator_plotter",
166 srcs = ["accelerator_plotter.ts"],
167 target_compatible_with = ["@platforms//os:linux"],
168 deps = [
169 "//aos/network/www:aos_plotter",
Ravago Jones819ba1f2021-03-10 10:48:10 -0800170 "//aos/network/www:colors",
Austin Schuh7d63eab2021-03-06 20:15:02 -0800171 "//aos/network/www:proxy",
172 ],
173)
Austin Schuh2efe1682021-03-06 22:47:15 -0800174
175ts_library(
176 name = "hood_plotter",
177 srcs = ["hood_plotter.ts"],
178 target_compatible_with = ["@platforms//os:linux"],
179 deps = [
180 "//aos/network/www:aos_plotter",
Ravago Jones819ba1f2021-03-10 10:48:10 -0800181 "//aos/network/www:colors",
Austin Schuh2efe1682021-03-06 22:47:15 -0800182 "//aos/network/www:proxy",
183 ],
184)
Austin Schuhf213a072021-10-17 23:42:50 -0700185
186cc_binary(
187 name = "superstructure_replay",
188 srcs = ["superstructure_replay.cc"],
189 deps = [
190 ":superstructure_lib",
191 "//aos:configuration",
192 "//aos:init",
193 "//aos/events:simulated_event_loop",
194 "//aos/events/logging:log_reader",
195 "//aos/network:team_number",
196 ],
197)