blob: 1997870ad44e8be59850373b8de2d08a6b3d1ee4 [file] [log] [blame]
Alex Perrycb7da4b2019-08-28 19:35:56 -07001load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
Austin Schuhf9724442018-10-28 20:30:21 -07002load("//tools/build_rules:gtk_dependent.bzl", "gtk_dependent_cc_binary", "gtk_dependent_cc_library")
3load("@com_google_protobuf//:protobuf.bzl", "cc_proto_library")
Parker Schuh4d2978f2017-02-25 11:13:06 -08004
5package(default_visibility = ["//visibility:public"])
6
Alex Perrycb7da4b2019-08-28 19:35:56 -07007flatbuffer_cc_library(
8 name = "vision_fbs",
Austin Schuhf9724442018-10-28 20:30:21 -07009 srcs = [
Alex Perrycb7da4b2019-08-28 19:35:56 -070010 "vision.fbs",
Austin Schuhf9724442018-10-28 20:30:21 -070011 ],
Alex Perrycb7da4b2019-08-28 19:35:56 -070012 gen_reflections = 1,
Austin Schuhf9724442018-10-28 20:30:21 -070013 visibility = ["//visibility:public"],
Parker Schuh4d2978f2017-02-25 11:13:06 -080014)
15
Austin Schuhf9724442018-10-28 20:30:21 -070016cc_proto_library(
17 name = "vision_result",
18 srcs = ["vision_result.proto"],
Parker Schuhd497ed62017-03-04 20:11:58 -080019)
20
Austin Schuhf9724442018-10-28 20:30:21 -070021cc_proto_library(
22 name = "vision_config",
23 srcs = ["vision_config.proto"],
24 deps = [
25 "//aos/vision/image:camera_params",
26 ],
Parker Schuhd497ed62017-03-04 20:11:58 -080027)
28
29cc_binary(
Austin Schuhf9724442018-10-28 20:30:21 -070030 name = "target_sender",
31 srcs = [
32 "target_sender.cc",
33 ],
34 deps = [
35 ":target_finder",
36 ":vision_config",
37 ":vision_result",
38 "//aos/logging",
39 "//aos/logging:implementations",
40 "//aos/time",
41 "//aos/vision/blob:codec",
42 "//aos/vision/blob:find_blob",
43 "//aos/vision/blob:range_image",
44 "//aos/vision/blob:threshold",
45 "//aos/vision/events:epoll_events",
46 "//aos/vision/events:socket_types",
47 "//aos/vision/events:udp",
48 "//aos/vision/image:image_stream",
49 "//aos/vision/image:jpeg_routines",
50 "//aos/vision/image:reader",
51 ],
Parker Schuh4d2978f2017-02-25 11:13:06 -080052)
53
54cc_binary(
Austin Schuhf9724442018-10-28 20:30:21 -070055 name = "target_receiver",
56 srcs = [
57 "target_receiver.cc",
58 ],
59 visibility = ["//visibility:public"],
60 deps = [
61 ":target_finder",
Alex Perrycb7da4b2019-08-28 19:35:56 -070062 ":vision_fbs",
Austin Schuhf9724442018-10-28 20:30:21 -070063 ":vision_result",
64 "//aos:init",
Alex Perrycb7da4b2019-08-28 19:35:56 -070065 "//aos/events:shm_event_loop",
Austin Schuhf9724442018-10-28 20:30:21 -070066 "//aos/logging",
Austin Schuhf9724442018-10-28 20:30:21 -070067 "//aos/mutex",
68 "//aos/time",
69 "//aos/vision/events:udp",
70 ],
Parker Schuh4d2978f2017-02-25 11:13:06 -080071)
Parker Schuhf7481be2017-03-04 18:24:33 -080072
73cc_library(
Austin Schuhf9724442018-10-28 20:30:21 -070074 name = "target_finder",
75 srcs = ["target_finder.cc"],
76 hdrs = ["target_finder.h"],
77 deps = [
78 "//aos/vision/blob:threshold",
79 "//aos/vision/blob:transpose",
80 "//aos/vision/debug:overlay",
81 "//aos/vision/math:vector",
82 ],
Parker Schuhf7481be2017-03-04 18:24:33 -080083)
Parker Schuh9ef66132017-03-05 16:18:36 -080084
85gtk_dependent_cc_binary(
Austin Schuhf9724442018-10-28 20:30:21 -070086 name = "debug_viewer",
87 srcs = ["debug_viewer.cc"],
88 deps = [
89 ":target_finder",
90 "//aos/vision/blob:move_scale",
91 "//aos/vision/blob:threshold",
92 "//aos/vision/blob:transpose",
93 "//aos/vision/debug:debug_framework",
94 "//aos/vision/math:vector",
95 ],
Parker Schuh9ef66132017-03-05 16:18:36 -080096)