blob: 5339798eb0fcc6ec206a1a1904bb37ee9c005a8c [file] [log] [blame]
James Kuszmaulf01da392023-12-14 11:22:14 -08001load("//aos/flatbuffers:generate.bzl", "static_flatbuffer")
Diana Vandenberg69899ed2017-01-28 16:57:54 -08002
Philipp Schradercc016b32021-12-30 08:59:58 -08003package(default_visibility = ["//visibility:public"])
4
James Kuszmaulf01da392023-12-14 11:22:14 -08005static_flatbuffer(
Alex Perrycb7da4b2019-08-28 19:35:56 -07006 name = "superstructure_goal_fbs",
James Kuszmaul97f750d2019-01-20 20:08:03 -08007 srcs = [
Alex Perrycb7da4b2019-08-28 19:35:56 -07008 "superstructure_goal.fbs",
James Kuszmaul97f750d2019-01-20 20:08:03 -08009 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080010 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaulf01da392023-12-14 11:22:14 -080011 deps = [
12 "//frc971/control_loops:control_loops_fbs",
13 ],
Diana Vandenberg69899ed2017-01-28 16:57:54 -080014)
Austin Schuh87c10632017-02-05 19:02:17 -080015
James Kuszmaulf01da392023-12-14 11:22:14 -080016static_flatbuffer(
Alex Perrycb7da4b2019-08-28 19:35:56 -070017 name = "superstructure_position_fbs",
18 srcs = [
19 "superstructure_position.fbs",
20 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080021 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaulf01da392023-12-14 11:22:14 -080022 deps = [
23 "//frc971/control_loops:control_loops_fbs",
24 ],
Alex Perrycb7da4b2019-08-28 19:35:56 -070025)
26
James Kuszmaulf01da392023-12-14 11:22:14 -080027static_flatbuffer(
Alex Perrycb7da4b2019-08-28 19:35:56 -070028 name = "superstructure_status_fbs",
29 srcs = [
30 "superstructure_status.fbs",
31 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080032 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaulf01da392023-12-14 11:22:14 -080033 deps = [
34 "//frc971/control_loops:control_loops_fbs",
35 "//frc971/control_loops:profiled_subsystem_fbs",
36 ],
Alex Perrycb7da4b2019-08-28 19:35:56 -070037)
38
James Kuszmaulf01da392023-12-14 11:22:14 -080039static_flatbuffer(
Alex Perrycb7da4b2019-08-28 19:35:56 -070040 name = "superstructure_output_fbs",
41 srcs = [
42 "superstructure_output.fbs",
43 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080044 target_compatible_with = ["@platforms//os:linux"],
Alex Perrycb7da4b2019-08-28 19:35:56 -070045)
46
Austin Schuh87c10632017-02-05 19:02:17 -080047cc_library(
James Kuszmaul97f750d2019-01-20 20:08:03 -080048 name = "superstructure_lib",
49 srcs = [
50 "superstructure.cc",
51 ],
52 hdrs = [
53 "superstructure.h",
54 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080055 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaul97f750d2019-01-20 20:08:03 -080056 deps = [
Alex Perrycb7da4b2019-08-28 19:35:56 -070057 ":superstructure_goal_fbs",
58 ":superstructure_output_fbs",
59 ":superstructure_position_fbs",
60 ":superstructure_status_fbs",
James Kuszmaul97f750d2019-01-20 20:08:03 -080061 ":vision_distance_average",
Alex Perrycb7da4b2019-08-28 19:35:56 -070062 "//aos/events:event_loop",
Austin Schuh0a3c9d42021-07-15 22:36:24 -070063 "//frc971/control_loops:control_loop",
James Kuszmaul97f750d2019-01-20 20:08:03 -080064 "//y2017:constants",
65 "//y2017/control_loops/superstructure/column",
66 "//y2017/control_loops/superstructure/hood",
67 "//y2017/control_loops/superstructure/intake",
68 "//y2017/control_loops/superstructure/shooter",
69 ],
Austin Schuh87c10632017-02-05 19:02:17 -080070)
Adam Snaidercfe13062017-02-05 18:23:09 -080071
72cc_test(
James Kuszmaul97f750d2019-01-20 20:08:03 -080073 name = "superstructure_lib_test",
74 srcs = [
75 "superstructure_lib_test.cc",
76 ],
Austin Schuhc5fa6d92022-02-25 14:36:28 -080077 data = ["//y2017:aos_config"],
Philipp Schraderdada1072020-11-24 11:34:46 -080078 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaul97f750d2019-01-20 20:08:03 -080079 deps = [
Alex Perrycb7da4b2019-08-28 19:35:56 -070080 ":superstructure_goal_fbs",
James Kuszmaul97f750d2019-01-20 20:08:03 -080081 ":superstructure_lib",
Alex Perrycb7da4b2019-08-28 19:35:56 -070082 ":superstructure_output_fbs",
83 ":superstructure_position_fbs",
84 ":superstructure_status_fbs",
James Kuszmaul97f750d2019-01-20 20:08:03 -080085 "//aos:math",
James Kuszmaul97f750d2019-01-20 20:08:03 -080086 "//aos/testing:googletest",
87 "//aos/time",
Austin Schuh0a3c9d42021-07-15 22:36:24 -070088 "//frc971/control_loops:control_loop_test",
James Kuszmaul97f750d2019-01-20 20:08:03 -080089 "//frc971/control_loops:position_sensor_sim",
90 "//frc971/control_loops:team_number_test_environment",
91 "//y2017/control_loops/superstructure/column:column_plants",
92 "//y2017/control_loops/superstructure/hood:hood_plants",
93 "//y2017/control_loops/superstructure/intake:intake_plants",
94 "//y2017/control_loops/superstructure/shooter:shooter_plants",
95 ],
Adam Snaidercfe13062017-02-05 18:23:09 -080096)
Austin Schuh7b9a3ba2017-02-19 23:11:45 -080097
98cc_binary(
James Kuszmaul97f750d2019-01-20 20:08:03 -080099 name = "superstructure",
100 srcs = [
101 "superstructure_main.cc",
102 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800103 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaul97f750d2019-01-20 20:08:03 -0800104 deps = [
105 ":superstructure_lib",
James Kuszmaul97f750d2019-01-20 20:08:03 -0800106 "//aos:init",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700107 "//aos/events:shm_event_loop",
James Kuszmaul97f750d2019-01-20 20:08:03 -0800108 ],
Austin Schuh7b9a3ba2017-02-19 23:11:45 -0800109)
Parker Schuhfea48582017-03-11 20:15:32 -0800110
111cc_library(
James Kuszmaul97f750d2019-01-20 20:08:03 -0800112 name = "vision_time_adjuster",
113 srcs = [
114 "vision_time_adjuster.cc",
115 ],
116 hdrs = [
117 "vision_time_adjuster.h",
118 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800119 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaul97f750d2019-01-20 20:08:03 -0800120 deps = [
James Kuszmaul97f750d2019-01-20 20:08:03 -0800121 "//aos/containers:ring_buffer",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700122 "//frc971/control_loops:control_loops_fbs",
123 "//frc971/control_loops:profiled_subsystem_fbs",
124 "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
James Kuszmaul97f750d2019-01-20 20:08:03 -0800125 "//y2017/control_loops/drivetrain:polydrivetrain_plants",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700126 "//y2017/vision:vision_fbs",
James Kuszmaul97f750d2019-01-20 20:08:03 -0800127 ],
Parker Schuhfea48582017-03-11 20:15:32 -0800128)
129
130cc_test(
James Kuszmaul97f750d2019-01-20 20:08:03 -0800131 name = "vision_time_adjuster_test",
132 srcs = [
133 "vision_time_adjuster_test.cc",
134 ],
Austin Schuhc5fa6d92022-02-25 14:36:28 -0800135 data = ["//y2017:aos_config"],
Philipp Schraderdada1072020-11-24 11:34:46 -0800136 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaul97f750d2019-01-20 20:08:03 -0800137 deps = [
138 ":vision_time_adjuster",
Austin Schuhb6c5c852019-05-19 20:13:31 -0700139 "//aos/events:simulated_event_loop",
James Kuszmaul97f750d2019-01-20 20:08:03 -0800140 "//aos/testing:googletest",
Austin Schuhb6c5c852019-05-19 20:13:31 -0700141 "//aos/testing:test_logging",
James Kuszmaul97f750d2019-01-20 20:08:03 -0800142 "//aos/time",
143 ],
Parker Schuhfea48582017-03-11 20:15:32 -0800144)
Parker Schuh208a58d2017-04-12 20:51:38 -0700145
146cc_library(
James Kuszmaul97f750d2019-01-20 20:08:03 -0800147 name = "vision_distance_average",
148 hdrs = [
149 "vision_distance_average.h",
150 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800151 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaul97f750d2019-01-20 20:08:03 -0800152 deps = [
153 "//aos/containers:ring_buffer",
154 "//aos/time",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700155 "//y2017/vision:vision_fbs",
James Kuszmaul97f750d2019-01-20 20:08:03 -0800156 ],
Parker Schuh208a58d2017-04-12 20:51:38 -0700157)
158
159cc_test(
James Kuszmaul97f750d2019-01-20 20:08:03 -0800160 name = "vision_distance_average_test",
161 srcs = [
162 "vision_distance_average_test.cc",
163 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800164 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaul97f750d2019-01-20 20:08:03 -0800165 deps = [
166 ":vision_distance_average",
Alex Perrycb7da4b2019-08-28 19:35:56 -0700167 "//aos:flatbuffers",
James Kuszmaul97f750d2019-01-20 20:08:03 -0800168 "//aos/testing:googletest",
169 "//aos/time",
170 ],
Parker Schuh208a58d2017-04-12 20:51:38 -0700171)