blob: 46b5f24da9d9d4523871d22197de0142ccceafa0 [file] [log] [blame]
Austin Schuhbcce26a2018-03-26 23:41:24 -07001package(default_visibility = ["//visibility:public"])
Brian Silverman100534c2015-09-07 15:51:23 -04002
Austin Schuhbcce26a2018-03-26 23:41:24 -07003load("//aos/build:queues.bzl", "queue_library")
4load("//tools:environments.bzl", "mcu_cpus")
Brian Silverman100534c2015-09-07 15:51:23 -04005
6cc_library(
Austin Schuhbcce26a2018-03-26 23:41:24 -07007 name = "replay_control_loop",
8 hdrs = [
9 "replay_control_loop.h",
10 ],
11 deps = [
12 ":control_loop",
13 "//aos/common:queues",
14 "//aos/common:time",
15 "//aos/common/logging:queue_logging",
16 "//aos/common/logging:replay",
17 ],
Brian Silverman100534c2015-09-07 15:51:23 -040018)
19
20cc_library(
Austin Schuhbcce26a2018-03-26 23:41:24 -070021 name = "control_loop_test",
22 testonly = True,
23 srcs = [
24 "control_loop_test.cc",
25 ],
26 hdrs = [
27 "control_loop_test.h",
28 ],
29 deps = [
30 "//aos/common:time",
31 "//aos/common/logging:queue_logging",
32 "//aos/common/messages:robot_state",
33 "//aos/testing:googletest",
34 "//aos/testing:test_shm",
35 ],
Brian Silverman100534c2015-09-07 15:51:23 -040036)
37
38cc_library(
Austin Schuhbcce26a2018-03-26 23:41:24 -070039 name = "polytope_uc",
40 hdrs = [
41 "polytope.h",
42 ],
43 restricted_to = mcu_cpus,
44 deps = [
45 "//third_party/eigen",
46 ],
47)
48
49cc_library(
50 name = "polytope",
51 hdrs = [
52 "polytope.h",
53 ],
54 deps = [
55 "//aos/common/logging",
56 "//aos/common/logging:matrix_logging",
57 "//third_party/cddlib",
58 "//third_party/eigen",
59 ],
Brian Silvermanaba7bf62016-01-31 18:03:59 -050060)
61
62cc_test(
Austin Schuhbcce26a2018-03-26 23:41:24 -070063 name = "polytope_test",
64 srcs = [
65 "polytope_test.cc",
66 ],
67 deps = [
68 ":polytope",
69 "//aos/testing:googletest",
70 "//aos/testing:test_logging",
71 "//third_party/eigen",
72 "//third_party/googletest:googlemock",
73 ],
Brian Silverman100534c2015-09-07 15:51:23 -040074)
75
76queue_library(
Austin Schuhbcce26a2018-03-26 23:41:24 -070077 name = "control_loop_queues",
78 srcs = [
79 "control_loops.q",
80 ],
Brian Silverman100534c2015-09-07 15:51:23 -040081)
82
83cc_library(
Austin Schuhbcce26a2018-03-26 23:41:24 -070084 name = "control_loop",
85 srcs = [
86 "control_loop.cc",
87 "control_loop-tmpl.h",
88 ],
89 hdrs = [
90 "control_loop.h",
91 ],
92 deps = [
93 ":control_loop_queues",
94 "//aos/common:queues",
95 "//aos/common:time",
96 "//aos/common/logging",
97 "//aos/common/logging:queue_logging",
98 "//aos/common/messages:robot_state",
99 "//aos/common/util:log_interval",
100 ],
Brian Silverman100534c2015-09-07 15:51:23 -0400101)