blob: 36e34bd4c6f4c067fe6e969e5eb19a9ce32c83f5 [file] [log] [blame]
Austin Schuh1d731362022-02-22 13:57:55 -08001genrule(
2 name = "genrule_catapult",
3 outs = [
4 "catapult_plant.h",
5 "catapult_plant.cc",
6 "integral_catapult_plant.h",
7 "integral_catapult_plant.cc",
8 ],
9 cmd = "$(location //y2022/control_loops/python:catapult) $(OUTS)",
10 target_compatible_with = ["@platforms//os:linux"],
11 tools = [
12 "//y2022/control_loops/python:catapult",
13 ],
14)
15
16cc_library(
17 name = "catapult_plants",
18 srcs = [
19 "catapult_plant.cc",
20 "integral_catapult_plant.cc",
21 ],
22 hdrs = [
23 "catapult_plant.h",
24 "integral_catapult_plant.h",
25 ],
26 visibility = ["//visibility:public"],
27 deps = [
28 "//frc971/control_loops:state_feedback_loop",
29 ],
30)
31
32cc_library(
33 name = "catapult",
34 srcs = [
35 "catapult.cc",
36 ],
37 hdrs = [
38 "catapult.h",
39 ],
40 visibility = ["//visibility:public"],
41 deps = [
42 ":catapult_plants",
43 "//aos:realtime",
James Kuszmaulec635d22023-08-12 18:39:24 -070044 "//frc971/zeroing:pot_and_absolute_encoder",
Austin Schuh1d731362022-02-22 13:57:55 -080045 "//third_party/osqp-cpp",
Austin Schuh39f26f62022-02-24 21:34:46 -080046 "//y2022:constants",
47 "//y2022/control_loops/superstructure:superstructure_goal_fbs",
48 "//y2022/control_loops/superstructure:superstructure_position_fbs",
49 "//y2022/control_loops/superstructure:superstructure_status_fbs",
Austin Schuh1d731362022-02-22 13:57:55 -080050 ],
51)
52
53cc_test(
54 name = "catapult_test",
55 srcs = [
56 "catapult_test.cc",
57 ],
58 deps = [
59 ":catapult",
60 "//aos/testing:googletest",
61 ],
62)
63
64cc_binary(
65 name = "catapult_main",
66 srcs = [
67 "catapult_main.cc",
68 ],
69 deps = [
70 ":catapult",
71 "//aos:init",
72 ],
73)