blob: 0269d65222416ae42946ced5f618b22f70e82682 [file] [log] [blame]
James Kuszmaul5f5e1232020-12-22 20:58:00 -08001load("@npm_bazel_typescript//:defs.bzl", "ts_library")
Philipp Schradercc016b32021-12-30 08:59:58 -08002load("@build_bazel_rules_nodejs//:defs.bzl", "rollup_bundle")
James Kuszmaul48671362020-12-24 13:54:16 -08003load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library", "flatbuffer_ts_library")
4load("//aos:config.bzl", "aos_config")
James Kuszmaul61a971f2020-01-01 15:06:18 -08005
Philipp Schradercc016b32021-12-30 08:59:58 -08006package(default_visibility = ["//visibility:public"])
7
James Kuszmaul7daef362019-12-31 18:28:17 -08008cc_binary(
9 name = "py_log_reader.so",
10 srcs = ["py_log_reader.cc"],
11 linkshared = True,
Philipp Schraderdada1072020-11-24 11:34:46 -080012 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaul7daef362019-12-31 18:28:17 -080013 deps = [
14 "//aos:configuration",
15 "//aos:json_to_flatbuffer",
16 "//aos/events:shm_event_loop",
17 "//aos/events:simulated_event_loop",
Austin Schuhb06f03b2021-02-17 22:00:37 -080018 "//aos/events/logging:log_reader",
James Kuszmaul7daef362019-12-31 18:28:17 -080019 "@com_github_google_glog//:glog",
Austin Schuh085eab92020-11-26 13:54:51 -080020 "@python_repo//:python3.7_lib",
James Kuszmaul7daef362019-12-31 18:28:17 -080021 ],
22)
23
24py_test(
25 name = "log_reader_test",
26 srcs = ["log_reader_test.py"],
27 data = [
28 ":py_log_reader.so",
29 "@sample_logfile//file",
30 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080031 target_compatible_with = ["@platforms//os:linux"],
James Kuszmaul7daef362019-12-31 18:28:17 -080032 deps = ["//aos:configuration_fbs_python"],
33)
James Kuszmaul61a971f2020-01-01 15:06:18 -080034
James Kuszmaul5f5e1232020-12-22 20:58:00 -080035ts_library(
36 name = "plot_index",
37 srcs = ["plot_index.ts"],
38 target_compatible_with = ["@platforms//os:linux"],
39 deps = [
James Kuszmaul48671362020-12-24 13:54:16 -080040 ":plot_data_utils",
James Kuszmaul5f5e1232020-12-22 20:58:00 -080041 "//aos:configuration_ts_fbs",
42 "//aos/network/www:demo_plot",
43 "//aos/network/www:proxy",
James Kuszmaulac2b6b42021-03-07 22:38:06 -080044 "//frc971/control_loops/drivetrain:down_estimator_plotter",
James Kuszmaulc4ae11c2020-12-26 16:26:58 -080045 "//frc971/control_loops/drivetrain:drivetrain_plotter",
milind upadhyay9bd381d2021-01-23 13:44:13 -080046 "//frc971/control_loops/drivetrain:robot_state_plotter",
James Kuszmaul73fc1352021-04-09 22:31:25 -070047 "//frc971/control_loops/drivetrain:spline_plotter",
James Kuszmaul5f5e1232020-12-22 20:58:00 -080048 "//frc971/wpilib:imu_plotter",
James Kuszmaul9c23d262021-09-25 21:50:02 -070049 "//y2020/control_loops/drivetrain:localizer_plotter",
Austin Schuh7d63eab2021-03-06 20:15:02 -080050 "//y2020/control_loops/superstructure:accelerator_plotter",
51 "//y2020/control_loops/superstructure:finisher_plotter",
Austin Schuh2efe1682021-03-06 22:47:15 -080052 "//y2020/control_loops/superstructure:hood_plotter",
James Kuszmaul78101402021-09-11 12:42:21 -070053 "//y2020/control_loops/superstructure:turret_plotter",
Sabina Leaver58f04b72021-10-06 20:52:09 -070054 "//y2021_bot3/control_loops/superstructure:superstructure_plotter",
James Kuszmaul5f5e1232020-12-22 20:58:00 -080055 ],
56)
57
58rollup_bundle(
59 name = "plot_index_bundle",
60 enable_code_splitting = False,
61 entry_point = "plot_index.ts",
62 target_compatible_with = ["@platforms//os:linux"],
63 deps = [
64 ":plot_index",
65 ],
66)
67
68filegroup(
69 name = "plotter_files",
70 srcs = [
71 "index.html",
72 "plot_index_bundle.min.js",
73 ],
74)
75
76sh_binary(
77 name = "web_plotter",
78 srcs = ["web_plotter.sh"],
79 data = [
80 ":plotter_files",
81 "//aos/network:log_web_proxy_main",
82 ],
83 target_compatible_with = ["@platforms//os:linux"],
84)
85
86sh_binary(
87 name = "live_web_plotter_demo",
88 srcs = ["live_web_plotter_demo.sh"],
89 data = [
90 ":plotter_files",
91 "//aos/network:web_proxy_main",
92 "//aos/network/www:test_config",
93 ],
94 target_compatible_with = ["@platforms//os:linux"],
95)
James Kuszmaul48671362020-12-24 13:54:16 -080096
97flatbuffer_cc_library(
98 name = "plot_data_fbs",
99 srcs = [
100 "plot_data.fbs",
101 ],
102 gen_reflections = 1,
103 target_compatible_with = ["@platforms//os:linux"],
104)
105
106flatbuffer_ts_library(
107 name = "plot_data_ts_fbs",
108 srcs = [
109 "plot_data.fbs",
110 ],
111 target_compatible_with = ["@platforms//os:linux"],
112)
113
114ts_library(
115 name = "plot_data_utils",
116 srcs = ["plot_data_utils.ts"],
117 visibility = ["//visibility:public"],
118 deps = [
119 ":plot_data_ts_fbs",
120 "//aos:configuration_ts_fbs",
121 "//aos/network/www:aos_plotter",
122 "//aos/network/www:plotter",
123 "//aos/network/www:proxy",
124 "@com_github_google_flatbuffers//ts:flatbuffers_ts",
125 ],
126)
127
128aos_config(
129 name = "plotter",
130 src = "plotter_config.json",
131 flatbuffers = [":plot_data_fbs"],
132 target_compatible_with = ["@platforms//os:linux"],
133 deps = ["//aos/events:config"],
134)
135
136cc_library(
137 name = "in_process_plotter",
138 srcs = ["in_process_plotter.cc"],
139 hdrs = ["in_process_plotter.h"],
James Kuszmaule32fa932021-05-11 21:38:16 -0700140 data = [
141 ":plotter",
142 ":plotter_files",
James Kuszmaul48671362020-12-24 13:54:16 -0800143 ],
144 deps = [
145 ":plot_data_fbs",
146 "//aos/events:simulated_event_loop",
147 "//aos/network:web_proxy",
148 ],
149)
150
151cc_binary(
152 name = "in_process_plotter_demo",
153 srcs = ["in_process_plotter_demo.cc"],
James Kuszmaul48671362020-12-24 13:54:16 -0800154 deps = [
155 ":in_process_plotter",
156 "//aos:init",
157 ],
158)