forked from UBC-Thunderbots/Software
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBUILD
More file actions
197 lines (181 loc) · 6.1 KB
/
Copy pathBUILD
File metadata and controls
197 lines (181 loc) · 6.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
load("@rules_python//python:pip.bzl", "compile_pip_requirements")
load("@thunderscope_deps//:requirements.bzl", "requirement")
package(default_visibility = ["//visibility:public"])
compile_pip_requirements(
name = "requirements",
src = "requirements.in",
requirements_txt = "requirements_lock.txt",
)
py_binary(
name = "thunderscope_main",
srcs = ["thunderscope_main.py"],
deps = [
":config",
":constants",
":estop_helpers",
":thunderscope",
":util",
"//software/stats/loggers:stats_logger",
"//software/thunderscope/binary_context_managers:full_system",
"//software/thunderscope/binary_context_managers:game_controller",
"//software/thunderscope/binary_context_managers:runtime_manager",
"//software/thunderscope/binary_context_managers:simulator",
],
)
py_library(
name = "thunderscope",
srcs = ["thunderscope.py"],
data = [
"thunderscope-logo.png",
"//software:py_constants.so",
"//software:python_bindings.so",
],
deps = [
":config",
"//extlibs/er_force_sim/src/protobuf:erforce_py_proto",
"//proto:software_py_proto",
"//proto/message_translation:py_tbots_protobuf",
"//software/networking/unix:threaded_unix_listener_py",
"//software/networking/unix:threaded_unix_sender_py",
"//software/thunderscope:constants",
"//software/thunderscope:dock_style",
"//software/thunderscope:proto_unix_io",
"//software/thunderscope:robot_communication",
"//software/thunderscope/binary_context_managers:full_system",
"//software/thunderscope/binary_context_managers:game_controller",
"//software/thunderscope/binary_context_managers:simulator",
"//software/thunderscope/binary_context_managers:tigers_autoref",
requirement("numpy"),
requirement("pyqtdarktheme-fork"),
requirement("pyqtgraph"),
],
)
py_library(
name = "time_provider",
srcs = ["time_provider.py"],
)
py_library(
name = "util",
srcs = ["util.py"],
data = ["//software:py_constants.so"],
deps = [
":constants",
":thread_safe_buffer",
":time_provider",
"//proto/message_translation:py_tbots_protobuf",
],
)
py_library(
name = "widget_names_to_setup",
srcs = ["widget_setup_functions.py"],
data = [
"//software:py_constants.so",
"//software:python_bindings.so",
],
deps = [
"//software/thunderscope/binary_context_managers:game_controller",
"//software/thunderscope/common:common_widgets",
"//software/thunderscope/common:fps_widget",
"//software/thunderscope/common:proto_configuration_widget",
"//software/thunderscope/common:proto_plotter",
"//software/thunderscope/gl:gl_widget",
"//software/thunderscope/gl/layers:gl_attacker_layer",
"//software/thunderscope/gl/layers:gl_cost_vis_layer",
"//software/thunderscope/gl/layers:gl_debug_shapes_layer",
"//software/thunderscope/gl/layers:gl_draw_polygon_obstacle",
"//software/thunderscope/gl/layers:gl_max_dribble_layer",
"//software/thunderscope/gl/layers:gl_movement_field_test_layer",
"//software/thunderscope/gl/layers:gl_obstacle_layer",
"//software/thunderscope/gl/layers:gl_passing_layer",
"//software/thunderscope/gl/layers:gl_path_layer",
"//software/thunderscope/gl/layers:gl_referee_info_layer",
"//software/thunderscope/gl/layers:gl_sandbox_world_layer",
"//software/thunderscope/gl/layers:gl_simulator_layer",
"//software/thunderscope/gl/layers:gl_tactic_layer",
"//software/thunderscope/gl/layers:gl_trail_layer",
"//software/thunderscope/gl/layers:gl_validation_layer",
"//software/thunderscope/gl/layers:gl_world_layer",
"//software/thunderscope/log:g3log_checkboxes",
"//software/thunderscope/log:g3log_widget",
"//software/thunderscope/play:playinfo_widget",
"//software/thunderscope/play:refereeinfo_widget",
"//software/thunderscope/replay:proto_player",
"//software/thunderscope/robot_diagnostics:chicker",
"//software/thunderscope/robot_diagnostics:diagnostics_widget",
"//software/thunderscope/robot_diagnostics:drive_and_dribbler_widget",
"//software/thunderscope/robot_diagnostics:estop_view",
"//software/thunderscope/robot_diagnostics:robot_error_log",
"//software/thunderscope/robot_diagnostics:robot_info",
"//software/thunderscope/robot_diagnostics:robot_view",
],
)
py_library(
name = "thunderscope_types",
srcs = ["thunderscope_types.py"],
deps = [
":constants",
],
)
py_library(
name = "config",
srcs = ["thunderscope_config.py"],
deps = [
":constants",
":proto_unix_io",
":thunderscope_types",
":widget_names_to_setup",
requirement("pyqtdarktheme-fork"),
],
)
py_library(
name = "proto_unix_io",
srcs = ["proto_unix_io.py"],
deps = [
":thread_safe_buffer",
"//software/networking/unix:threaded_unix_listener_py",
"//software/networking/unix:threaded_unix_sender_py",
],
)
py_library(
name = "constants",
srcs = ["constants.py"],
deps = [
requirement("protobuf"),
],
)
py_library(
name = "dock_style",
srcs = ["dock_style.py"],
)
py_library(
name = "thread_safe_buffer",
srcs = ["thread_safe_buffer.py"],
)
py_library(
name = "robot_communication",
srcs = ["robot_communication.py"],
data = [
"//software:py_constants.so",
],
deps = [
":wifi_communication_manager",
"//software/logger:py_logger",
"//software/thunderscope:constants",
],
)
py_library(
name = "wifi_communication_manager",
srcs = ["wifi_communication_manager.py"],
deps = [
requirement("colorama"),
],
)
py_library(
name = "estop_helpers",
srcs = ["estop_helpers.py"],
data = ["//software:py_constants.so"],
deps = [
"//software/thunderscope:constants",
requirement("pyserial"),
],
)