blob: 81ed998c627468d5550e6c97cb3a01e030023feb [file] [log] [blame]
James Kuszmauld12497a2024-01-14 18:00:34 -08001load("//aos/flatbuffers:generate.bzl", "static_flatbuffer")
2
Austin Schuh4fae0fc2018-03-27 23:51:42 -07003package(default_visibility = ["//visibility:public"])
Brian Silverman100534c2015-09-07 15:51:23 -04004
James Kuszmauld12497a2024-01-14 18:00:34 -08005static_flatbuffer(
6 name = "constants_fbs",
7 srcs = ["constants.fbs"],
8)
9
Philipp Schrader29d54f22016-04-02 22:14:48 +000010cc_library(
Austin Schuh4fae0fc2018-03-27 23:51:42 -070011 name = "averager",
12 hdrs = [
13 "averager.h",
14 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080015 target_compatible_with = ["@platforms//os:linux"],
James Kuszmauld3f9eb22020-01-12 15:02:07 -080016 deps = [
17 "@com_github_google_glog//:glog",
18 "@org_tuxfamily_eigen//:eigen",
19 ],
Philipp Schrader29d54f22016-04-02 22:14:48 +000020)
21
22cc_test(
Austin Schuh4fae0fc2018-03-27 23:51:42 -070023 name = "averager_test",
24 srcs = [
25 "averager_test.cc",
26 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080027 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh4fae0fc2018-03-27 23:51:42 -070028 deps = [
29 ":averager",
30 "//aos/testing:googletest",
James Kuszmauld3f9eb22020-01-12 15:02:07 -080031 "@org_tuxfamily_eigen//:eigen",
32 ],
33)
34
35cc_library(
36 name = "imu_zeroer",
37 srcs = [
38 "imu_zeroer.cc",
39 ],
40 hdrs = [
41 "imu_zeroer.h",
42 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080043 target_compatible_with = ["@platforms//os:linux"],
James Kuszmauld3f9eb22020-01-12 15:02:07 -080044 deps = [
45 ":averager",
James Kuszmaulb1e29372020-02-11 16:55:36 -080046 "//frc971/control_loops:control_loops_fbs",
47 "//frc971/control_loops/drivetrain:drivetrain_status_fbs",
James Kuszmauld3f9eb22020-01-12 15:02:07 -080048 "//frc971/wpilib:imu_fbs",
49 "@com_github_google_glog//:glog",
50 "@org_tuxfamily_eigen//:eigen",
51 ],
52)
53
54cc_test(
55 name = "imu_zeroer_test",
56 srcs = [
57 "imu_zeroer_test.cc",
58 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080059 target_compatible_with = ["@platforms//os:linux"],
James Kuszmauld3f9eb22020-01-12 15:02:07 -080060 deps = [
61 ":imu_zeroer",
62 "//aos:flatbuffers",
63 "//aos/testing:googletest",
64 "@org_tuxfamily_eigen//:eigen",
Austin Schuh4fae0fc2018-03-27 23:51:42 -070065 ],
Philipp Schrader29d54f22016-04-02 22:14:48 +000066)
67
Brian Silverman100534c2015-09-07 15:51:23 -040068cc_library(
Austin Schuh4fae0fc2018-03-27 23:51:42 -070069 name = "zeroing",
70 srcs = [
Austin Schuh4fae0fc2018-03-27 23:51:42 -070071 ],
72 hdrs = [
73 "zeroing.h",
74 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080075 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh4fae0fc2018-03-27 23:51:42 -070076 deps = [
77 ":wrap",
Ravago Jones726deb02021-05-29 14:36:43 -070078 "//aos/containers:error_list",
Alex Perrycb7da4b2019-08-28 19:35:56 -070079 "//aos/logging",
Austin Schuh4fae0fc2018-03-27 23:51:42 -070080 "//frc971:constants",
Alex Perrycb7da4b2019-08-28 19:35:56 -070081 "//frc971/control_loops:control_loops_fbs",
82 "@com_github_google_glog//:glog",
Austin Schuh4fae0fc2018-03-27 23:51:42 -070083 ],
Brian Silverman100534c2015-09-07 15:51:23 -040084)
85
James Kuszmaulec635d22023-08-12 18:39:24 -070086cc_library(
87 name = "zeroing_test_lib",
88 testonly = True,
89 hdrs = ["zeroing_test.h"],
Austin Schuh4fae0fc2018-03-27 23:51:42 -070090 deps = [
91 ":zeroing",
Austin Schuh4fae0fc2018-03-27 23:51:42 -070092 "//aos/testing:googletest",
Alex Perrycb7da4b2019-08-28 19:35:56 -070093 "//frc971/control_loops:control_loops_fbs",
Austin Schuh4fae0fc2018-03-27 23:51:42 -070094 "//frc971/control_loops:position_sensor_sim",
Austin Schuh4fae0fc2018-03-27 23:51:42 -070095 ],
Brian Silverman100534c2015-09-07 15:51:23 -040096)
Austin Schuhc6423e62017-02-11 16:56:30 -080097
James Kuszmaulec635d22023-08-12 18:39:24 -070098[
99 (
100 cc_library(
101 name = lib,
102 srcs = [lib + ".cc"],
103 hdrs = [lib + ".h"],
104 deps = [
105 ":wrap",
106 ":zeroing",
107 "//aos/containers:error_list",
108 "//aos/logging",
109 "//frc971:constants",
110 "//frc971/control_loops:control_loops_fbs",
111 "@com_github_google_glog//:glog",
112 ],
113 ),
114 cc_test(
115 name = lib + "_test",
116 srcs = [lib + "_test.cc"],
117 deps = [
118 lib,
119 ":zeroing",
120 ":zeroing_test_lib",
121 "//aos/testing:googletest",
122 "//frc971/control_loops:control_loops_fbs",
123 "//frc971/control_loops:position_sensor_sim",
124 ],
125 ),
126 )
127 for lib in [
128 "absolute_and_absolute_encoder",
129 "absolute_encoder",
130 "continuous_absolute_encoder",
131 "hall_effect_and_position",
132 "pot_and_absolute_encoder",
133 "pot_and_index",
134 "pulse_index",
135 ]
136]
137
Austin Schuhc6423e62017-02-11 16:56:30 -0800138cc_library(
Austin Schuh4fae0fc2018-03-27 23:51:42 -0700139 name = "wrap",
140 srcs = [
141 "wrap.cc",
142 ],
143 hdrs = [
144 "wrap.h",
145 ],
Austin Schuhc6423e62017-02-11 16:56:30 -0800146)
147
148cc_test(
Austin Schuh4fae0fc2018-03-27 23:51:42 -0700149 name = "wrap_test",
150 srcs = [
151 "wrap_test.cc",
152 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800153 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh4fae0fc2018-03-27 23:51:42 -0700154 deps = [
155 ":wrap",
156 "//aos/testing:googletest",
157 ],
Austin Schuhc6423e62017-02-11 16:56:30 -0800158)
Stephan Massalt4d1e74f2020-01-11 17:50:39 -0800159
160cc_test(
161 name = "unwrap_test",
162 srcs = [
163 "unwrap_test.cc",
164 ],
Philipp Schraderdada1072020-11-24 11:34:46 -0800165 target_compatible_with = ["@platforms//os:linux"],
Stephan Massalt4d1e74f2020-01-11 17:50:39 -0800166 deps = [
167 ":wrap",
168 "//aos/testing:googletest",
169 ],
170)