blob: 8630ef977db0e1b3d16f385d4dc40cc549ae0256 [file] [log] [blame]
Ariv Diggi0af59c02023-10-07 13:15:39 -07001load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
2load("@com_github_google_flatbuffers//:typescript.bzl", "flatbuffer_ts_library")
3
4package(default_visibility = ["//visibility:public"])
5
6flatbuffer_cc_library(
7 name = "superstructure_goal_fbs",
8 srcs = [
9 "superstructure_goal.fbs",
10 ],
11 gen_reflections = 1,
12 deps = [
13 "//frc971/control_loops:control_loops_fbs",
14 "//frc971/control_loops:profiled_subsystem_fbs",
15 ],
16)
17
18flatbuffer_cc_library(
19 name = "superstructure_output_fbs",
20 srcs = [
21 "superstructure_output.fbs",
22 ],
23 gen_reflections = 1,
24)
25
26flatbuffer_cc_library(
27 name = "superstructure_status_fbs",
28 srcs = [
29 "superstructure_status.fbs",
30 ],
31 gen_reflections = 1,
32 deps = [
33 "//frc971/control_loops:control_loops_fbs",
34 "//frc971/control_loops:profiled_subsystem_fbs",
35 ],
36)
37
38flatbuffer_ts_library(
39 name = "superstructure_status_ts_fbs",
40 srcs = [
41 "superstructure_status.fbs",
42 ],
43 deps = [
44 "//frc971/control_loops:control_loops_ts_fbs",
45 "//frc971/control_loops:profiled_subsystem_ts_fbs",
46 ],
47)
48
49flatbuffer_cc_library(
50 name = "superstructure_position_fbs",
51 srcs = [
52 "superstructure_position.fbs",
53 ],
54 gen_reflections = 1,
55 deps = [
56 "//frc971:can_configuration_fbs",
Ariv Diggic892e922023-10-21 15:52:06 -070057 "//frc971/control_loops:can_falcon_fbs",
Ariv Diggi0af59c02023-10-07 13:15:39 -070058 "//frc971/control_loops:control_loops_fbs",
59 "//frc971/control_loops:profiled_subsystem_fbs",
60 ],
61)
62
63cc_library(
Ariv Diggic892e922023-10-21 15:52:06 -070064 name = "end_effector",
65 srcs = [
66 "end_effector.cc",
67 ],
68 hdrs = [
69 "end_effector.h",
70 ],
71 deps = [
72 ":superstructure_goal_fbs",
73 ":superstructure_status_fbs",
74 "//aos/events:event_loop",
75 "//aos/time",
76 "//frc971/control_loops:control_loop",
77 "//y2023_bot3:constants",
78 ],
79)
80
81cc_library(
Ariv Diggi0af59c02023-10-07 13:15:39 -070082 name = "superstructure_lib",
83 srcs = [
84 "superstructure.cc",
85 ],
86 hdrs = [
87 "superstructure.h",
88 ],
89 data = [
90 ],
91 deps = [
Ariv Diggic892e922023-10-21 15:52:06 -070092 ":end_effector",
Maxwell Henderson0d220772023-11-06 11:09:58 -080093 ":pivot_joint",
Ariv Diggi0af59c02023-10-07 13:15:39 -070094 ":superstructure_goal_fbs",
95 ":superstructure_output_fbs",
96 ":superstructure_position_fbs",
97 ":superstructure_status_fbs",
98 "//aos:flatbuffer_merge",
99 "//aos/events:event_loop",
100 "//frc971/constants:constants_sender_lib",
101 "//frc971/control_loops:control_loop",
102 "//frc971/control_loops/drivetrain:drivetrain_can_position_fbs",
103 "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
104 "//frc971/shooter_interpolation:interpolation",
105 "//y2023_bot3:constants",
106 "//y2023_bot3/constants:constants_fbs",
107 "//y2023_bot3/constants:simulated_constants_sender",
108 ],
109)
110
111cc_binary(
112 name = "superstructure",
113 srcs = [
114 "superstructure_main.cc",
115 ],
116 deps = [
117 ":superstructure_lib",
118 "//aos:init",
119 "//aos/events:shm_event_loop",
120 ],
121)
122
123cc_test(
124 name = "superstructure_lib_test",
125 srcs = [
126 "superstructure_lib_test.cc",
127 ],
128 data = [
129 "//y2023_bot3:aos_config",
130 ],
131 deps = [
132 ":superstructure_goal_fbs",
133 ":superstructure_lib",
134 ":superstructure_output_fbs",
135 ":superstructure_position_fbs",
136 ":superstructure_status_fbs",
137 "//aos:json_to_flatbuffer",
138 "//aos:math",
139 "//aos/events/logging:log_writer",
140 "//aos/testing:googletest",
141 "//aos/time",
142 "//frc971/control_loops:capped_test_plant",
143 "//frc971/control_loops:control_loop_test",
144 "//frc971/control_loops:position_sensor_sim",
145 "//frc971/control_loops:subsystem_simulator",
146 "//frc971/control_loops:team_number_test_environment",
147 "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
148 ],
149)
150
151cc_library(
152 name = "led_indicator_lib",
153 srcs = ["led_indicator.cc"],
154 hdrs = ["led_indicator.h"],
155 data = [
156 "@ctre_phoenix_api_cpp_athena//:shared_libraries",
157 "@ctre_phoenix_cci_athena//:shared_libraries",
158 ],
159 target_compatible_with = ["//tools/platforms/hardware:roborio"],
160 deps = [
161 ":superstructure_goal_fbs",
162 ":superstructure_output_fbs",
163 ":superstructure_position_fbs",
164 ":superstructure_status_fbs",
165 "//aos/events:event_loop",
166 "//aos/network:message_bridge_client_fbs",
167 "//aos/network:message_bridge_server_fbs",
168 "//frc971/control_loops:control_loop",
169 "//frc971/control_loops:control_loops_fbs",
170 "//frc971/control_loops:profiled_subsystem_fbs",
171 "//frc971/control_loops/drivetrain:drivetrain_output_fbs",
172 "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
173 "//frc971/control_loops/drivetrain/localization:localizer_output_fbs",
174 "//frc971/queues:gyro_fbs",
175 "//third_party:phoenix",
176 "//third_party:wpilib",
177 ],
178)
179
180cc_binary(
181 name = "superstructure_replay",
182 srcs = ["superstructure_replay.cc"],
183 deps = [
184 ":superstructure_lib",
185 "//aos:configuration",
186 "//aos:init",
187 "//aos/events:simulated_event_loop",
188 "//aos/events/logging:log_reader",
189 "//aos/network:team_number",
190 ],
191)
Maxwell Henderson0d220772023-11-06 11:09:58 -0800192
193cc_library(
194 name = "pivot_joint",
195 srcs = [
196 "pivot_joint.cc",
197 ],
198 hdrs = [
199 "pivot_joint.h",
200 ],
201 deps = [
202 ":superstructure_goal_fbs",
203 ":superstructure_status_fbs",
204 "//aos/events:event_loop",
205 "//aos/time",
206 "//frc971/control_loops:control_loop",
207 "//y2023_bot3:constants",
208 ],
209)