Convert aos over to flatbuffers
Everything builds, and all the tests pass. I suspect that some entries
are missing from the config files, but those will be found pretty
quickly on startup.
There is no logging or live introspection of queue messages.
Change-Id: I496ee01ed68f202c7851bed7e8786cee30df29f5
diff --git a/aos/events/BUILD b/aos/events/BUILD
index b69fc66..17ed688 100644
--- a/aos/events/BUILD
+++ b/aos/events/BUILD
@@ -1,3 +1,19 @@
+load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
+
+package(default_visibility = ["//visibility:public"])
+
+flatbuffer_cc_library(
+ name = "test_message_fbs",
+ srcs = ["test_message.fbs"],
+ gen_reflections = 1,
+)
+
+flatbuffer_cc_library(
+ name = "pingpong_fbs",
+ srcs = ["pingpong.fbs"],
+ gen_reflections = 1,
+)
+
cc_library(
name = "epoll",
srcs = ["epoll.cc"],
@@ -10,72 +26,97 @@
)
cc_library(
- name = "raw-event-loop",
- hdrs = ["raw-event-loop.h"],
- deps = [
- "//aos:queues",
- "//aos/time",
- ],
-)
-
-cc_library(
- name = "event-loop",
- srcs = ["event-loop-tmpl.h"],
+ name = "event_loop",
+ srcs = ["event_loop_tmpl.h"],
hdrs = [
- "event-loop.h",
- "raw-event-loop.h",
+ "event_loop.h",
],
visibility = ["//visibility:public"],
deps = [
- ":raw-event-loop",
- "//aos:queues",
+ "//aos:configuration",
+ "//aos:configuration_fbs",
+ "//aos:flatbuffers",
"//aos/time",
+ "@com_github_google_flatbuffers//:flatbuffers",
+ ],
+)
+
+cc_binary(
+ name = "ping",
+ srcs = [
+ "ping.cc",
+ ],
+ data = ["config.fb.json"],
+ deps = [
+ ":pingpong_fbs",
+ ":shm_event_loop",
+ "//aos:configuration",
+ "//aos:init",
+ "//aos:json_to_flatbuffer",
+ "@com_github_google_glog//:glog",
+ ],
+)
+
+cc_binary(
+ name = "pong",
+ srcs = [
+ "pong.cc",
+ ],
+ data = ["config.fb.json"],
+ deps = [
+ ":pingpong_fbs",
+ ":shm_event_loop",
+ "//aos:configuration",
+ "//aos:init",
+ "//aos:json_to_flatbuffer",
+ "@com_github_google_glog//:glog",
],
)
cc_library(
- name = "shm-event-loop",
- srcs = ["shm-event-loop.cc"],
- hdrs = ["shm-event-loop.h"],
+ name = "shm_event_loop",
+ srcs = ["shm_event_loop.cc"],
+ hdrs = ["shm_event_loop.h"],
visibility = ["//visibility:public"],
deps = [
":epoll",
- ":event-loop",
- "//aos:init",
- "//aos:queues",
- "//aos/logging",
+ ":event_loop",
+ ":test_message_fbs",
+ "//aos:realtime",
+ "//aos/ipc_lib:lockless_queue",
+ "//aos/ipc_lib:signalfd",
"//aos/util:phased_loop",
],
)
cc_test(
- name = "shm-event-loop_test",
- srcs = ["shm-event-loop_test.cc"],
+ name = "shm_event_loop_test",
+ srcs = ["shm_event_loop_test.cc"],
shard_count = 5,
deps = [
- ":event-loop_param_test",
- ":shm-event-loop",
- "//aos/testing:test_shm",
+ ":event_loop_param_test",
+ ":shm_event_loop",
+ ":test_message_fbs",
],
)
cc_library(
- name = "event-loop_param_test",
+ name = "event_loop_param_test",
testonly = True,
- srcs = ["event-loop_param_test.cc"],
- hdrs = ["event-loop_param_test.h"],
+ srcs = ["event_loop_param_test.cc"],
+ hdrs = ["event_loop_param_test.h"],
deps = [
- ":event-loop",
- "//aos/logging:queue_logging",
+ ":event_loop",
+ ":test_message_fbs",
"//aos/testing:googletest",
],
)
cc_test(
name = "simulated_event_loop_test",
- srcs = ["simulated-event-loop_test.cc"],
+ srcs = ["simulated_event_loop_test.cc"],
deps = [
- ":event-loop_param_test",
+ ":event_loop_param_test",
":simulated_event_loop",
"//aos/testing:googletest",
],
@@ -84,14 +125,19 @@
cc_library(
name = "simulated_event_loop",
testonly = True,
- srcs = ["simulated-event-loop.cc"],
- hdrs = ["simulated-event-loop.h"],
+ srcs = [
+ "event_scheduler.cc",
+ "simulated_event_loop.cc",
+ ],
+ hdrs = [
+ "event_scheduler.h",
+ "simulated_event_loop.h",
+ ],
visibility = ["//visibility:public"],
deps = [
- ":event-loop",
- "//aos:queues",
- "//aos/logging",
- "//aos/testing:test_logging",
+ ":event_loop",
+ "//aos/ipc_lib:index",
"//aos/util:phased_loop",
+ "@com_google_absl//absl/container:btree",
],
)