pw_transfer: Transfer handler classes
Initial versions of the data transfer handler classes.
Change-Id: I62b0852f4d80e94e5564e9fbbd1372b72d4ad0e1
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/49023
Pigweed-Auto-Submit: Wyatt Hepler <hepler@google.com>
Commit-Queue: Auto-Submit <auto-submit@pigweed.google.com.iam.gserviceaccount.com>
Reviewed-by: Alexei Frolov <frolv@google.com>
Reviewed-by: Keir Mierle <keir@google.com>
diff --git a/pw_transfer/BUILD.bazel b/pw_transfer/BUILD.bazel
new file mode 100644
index 0000000..b8f52df
--- /dev/null
+++ b/pw_transfer/BUILD.bazel
@@ -0,0 +1,46 @@
+# Copyright 2021 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+load(
+ "//pw_build:pigweed.bzl",
+ "pw_cc_library",
+ "pw_cc_test",
+)
+
+package(default_visibility = ["//visibility:public"])
+
+licenses(["notice"]) # Apache License 2.0
+
+pw_cc_library(
+ name = "pw_transfer",
+ hdrs = [
+ "public/pw_transfer/handler.h",
+ ],
+ includes = ["public"],
+ deps = [
+ "//pw_assert",
+ "//pw_containers:intrusive_list",
+ "//pw_status",
+ "//pw_stream",
+ ],
+)
+
+pw_cc_test(
+ name = "handler_test",
+ srcs = ["handler_test.cc"],
+ deps = [
+ ":pw_transfer",
+ "//pw_unit_test",
+ ],
+)