788 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			788 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
# Copyright 2019 The MediaPipe 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
 | 
						|
#
 | 
						|
#      http://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("//mediapipe/framework/port:build_config.bzl", "mediapipe_proto_library")
 | 
						|
load(
 | 
						|
    "//mediapipe/framework/tool:mediapipe_graph.bzl",
 | 
						|
    "data_as_c_string",
 | 
						|
    "mediapipe_binary_graph",
 | 
						|
)
 | 
						|
load("//mediapipe/framework:mediapipe_cc_test.bzl", "mediapipe_cc_test")
 | 
						|
load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
 | 
						|
 | 
						|
licenses(["notice"])
 | 
						|
 | 
						|
package(default_visibility = ["//visibility:private"])
 | 
						|
 | 
						|
exports_files([
 | 
						|
    "simple_subgraph_template.cc",
 | 
						|
])
 | 
						|
 | 
						|
bzl_library(
 | 
						|
    name = "mediapipe_graph_bzl",
 | 
						|
    srcs = [
 | 
						|
        "mediapipe_graph.bzl",
 | 
						|
    ],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":build_defs_bzl",
 | 
						|
        "//mediapipe/framework:encode_binary_proto",
 | 
						|
        "//mediapipe/framework:transitive_protos_bzl",
 | 
						|
        "//mediapipe/framework/deps:expand_template_bzl",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
bzl_library(
 | 
						|
    name = "build_defs_bzl",
 | 
						|
    srcs = [
 | 
						|
        "build_defs.bzl",
 | 
						|
    ],
 | 
						|
    visibility = [
 | 
						|
        "//mediapipe/framework:__subpackages__",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "text_to_binary_graph",
 | 
						|
    srcs = ["text_to_binary_graph.cc"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework/port:advanced_proto",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "@com_google_absl//absl/flags:flag",
 | 
						|
        "@com_google_absl//absl/flags:parse",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
mediapipe_proto_library(
 | 
						|
    name = "calculator_graph_template_proto",
 | 
						|
    srcs = ["calculator_graph_template.proto"],
 | 
						|
    def_py_proto = False,
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_options_proto",
 | 
						|
        "//mediapipe/framework:calculator_proto",
 | 
						|
        "//mediapipe/framework/deps:proto_descriptor_proto",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
mediapipe_proto_library(
 | 
						|
    name = "source_proto",
 | 
						|
    srcs = ["source.proto"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_options_proto",
 | 
						|
        "//mediapipe/framework:calculator_proto",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_binary(
 | 
						|
    name = "encode_as_c_string",
 | 
						|
    srcs = ["encode_as_c_string.cc"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "fill_packet_set",
 | 
						|
    srcs = ["fill_packet_set.cc"],
 | 
						|
    hdrs = ["fill_packet_set.h"],
 | 
						|
    visibility = ["//mediapipe/framework:mediapipe_internal"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:packet_set",
 | 
						|
        "//mediapipe/framework:packet_type",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/port:statusor",
 | 
						|
        "//mediapipe/framework/tool:status_util",
 | 
						|
        "@com_google_absl//absl/memory",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "name_util",
 | 
						|
    srcs = ["name_util.cc"],
 | 
						|
    hdrs = ["name_util.h"],
 | 
						|
    visibility = ["//mediapipe/framework:mediapipe_internal"],
 | 
						|
    deps = [
 | 
						|
        ":validate_name",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework/port:map_util",
 | 
						|
        "@com_google_absl//absl/container:flat_hash_set",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
        "@com_google_absl//absl/strings:str_format",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "executor_util",
 | 
						|
    srcs = ["executor_util.cc"],
 | 
						|
    hdrs = ["executor_util.h"],
 | 
						|
    visibility = ["//mediapipe/framework:mediapipe_internal"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:mediapipe_options_cc_proto",
 | 
						|
        "//mediapipe/framework:thread_pool_executor_cc_proto",
 | 
						|
        "//mediapipe/framework/port:integral_types",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "executor_util_test",
 | 
						|
    srcs = ["executor_util_test.cc"],
 | 
						|
    visibility = ["//mediapipe/framework:mediapipe_internal"],
 | 
						|
    deps = [
 | 
						|
        ":executor_util",
 | 
						|
        "//mediapipe/framework/deps:message_matchers",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
        "//mediapipe/framework/port:parse_text_proto",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "options_map",
 | 
						|
    hdrs = ["options_map.h"],
 | 
						|
    visibility = ["//mediapipe/framework:mediapipe_internal"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework/port:any_proto",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/tool:type_util",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "options_util",
 | 
						|
    srcs = ["options_util.cc"],
 | 
						|
    hdrs = ["options_util.h"],
 | 
						|
    visibility = ["//mediapipe/framework:mediapipe_internal"],
 | 
						|
    deps = [
 | 
						|
        ":options_map",
 | 
						|
        ":proto_util_lite",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:collection",
 | 
						|
        "//mediapipe/framework:input_stream_shard",
 | 
						|
        "//mediapipe/framework:output_side_packet",
 | 
						|
        "//mediapipe/framework:packet",
 | 
						|
        "//mediapipe/framework:packet_set",
 | 
						|
        "//mediapipe/framework:packet_type",
 | 
						|
        "//mediapipe/framework:timestamp",
 | 
						|
        "//mediapipe/framework/port:advanced_proto",
 | 
						|
        "//mediapipe/framework/port:any_proto",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/tool:type_util",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
mediapipe_cc_test(
 | 
						|
    name = "options_util_test",
 | 
						|
    size = "small",
 | 
						|
    srcs = ["options_util_test.cc"],
 | 
						|
    data = [":node_chain_subgraph.proto"],
 | 
						|
    requires_full_emulation = False,
 | 
						|
    deps = [
 | 
						|
        ":options_util",
 | 
						|
        "//mediapipe/calculators/core:flow_limiter_calculator",
 | 
						|
        "//mediapipe/calculators/core:flow_limiter_calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:basic_types_registration",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework:calculator_runner",
 | 
						|
        "//mediapipe/framework:validated_graph_config",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
        "//mediapipe/framework/port:parse_text_proto",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/testdata:night_light_calculator_cc_proto",
 | 
						|
        "//mediapipe/util:header_util",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "proto_util_lite",
 | 
						|
    srcs = ["proto_util_lite.cc"],
 | 
						|
    hdrs = ["proto_util_lite.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:type_map",
 | 
						|
        "//mediapipe/framework/port:advanced_proto_lite",
 | 
						|
        "//mediapipe/framework/port:integral_types",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "simulation_clock",
 | 
						|
    srcs = ["simulation_clock.cc"],
 | 
						|
    hdrs = ["simulation_clock.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework/deps:clock",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "@com_google_absl//absl/base:core_headers",
 | 
						|
        "@com_google_absl//absl/synchronization",
 | 
						|
        "@com_google_absl//absl/time",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "sink",
 | 
						|
    srcs = ["sink.cc"],
 | 
						|
    hdrs = ["sink.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":name_util",
 | 
						|
        "//mediapipe/calculators/internal:callback_packet_calculator",
 | 
						|
        "//mediapipe/calculators/internal:callback_packet_calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:calculator_base",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:calculator_graph",
 | 
						|
        "//mediapipe/framework:calculator_registry",
 | 
						|
        "//mediapipe/framework:input_stream",
 | 
						|
        "//mediapipe/framework:packet",
 | 
						|
        "//mediapipe/framework:packet_type",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:source_location",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "@com_google_absl//absl/base:core_headers",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
        "@com_google_absl//absl/strings:str_format",
 | 
						|
    ],
 | 
						|
    alwayslink = 1,
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "subgraph_expansion",
 | 
						|
    srcs = ["subgraph_expansion.cc"],
 | 
						|
    hdrs = ["subgraph_expansion.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":name_util",
 | 
						|
        ":tag_map",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:graph_service_manager",
 | 
						|
        "//mediapipe/framework:packet_generator",
 | 
						|
        "//mediapipe/framework:packet_generator_cc_proto",
 | 
						|
        "//mediapipe/framework:port",
 | 
						|
        "//mediapipe/framework:status_handler_cc_proto",
 | 
						|
        "//mediapipe/framework:subgraph",
 | 
						|
        "//mediapipe/framework/port:core_proto",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:map_util",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "@com_google_absl//absl/memory",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "source",
 | 
						|
    srcs = ["source.cc"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/tool:source_cc_proto",
 | 
						|
        "@com_google_absl//absl/base:core_headers",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
    alwayslink = 1,
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "status_util",
 | 
						|
    srcs = ["status_util.cc"],
 | 
						|
    hdrs = ["status_util.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "@com_google_absl//absl/base:core_headers",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "tag_map",
 | 
						|
    srcs = ["tag_map.cc"],
 | 
						|
    hdrs = ["tag_map.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":validate_name",
 | 
						|
        "//mediapipe/framework:collection_item_id",
 | 
						|
        "//mediapipe/framework/port:core_proto",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/port:statusor",
 | 
						|
        "@com_google_absl//absl/base:core_headers",
 | 
						|
        "@com_google_absl//absl/memory",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "tag_map_helper",
 | 
						|
    srcs = ["tag_map_helper.cc"],
 | 
						|
    hdrs = ["tag_map_helper.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":tag_map",
 | 
						|
        "//mediapipe/framework/port:core_proto",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/port:statusor",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "template_expander",
 | 
						|
    srcs = ["template_expander.cc"],
 | 
						|
    hdrs = ["template_expander.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":proto_util_lite",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework/deps:proto_descriptor_cc_proto",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:numbers",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/tool:calculator_graph_template_cc_proto",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "template_parser",
 | 
						|
    srcs = [
 | 
						|
        "template_parser.cc",
 | 
						|
    ],
 | 
						|
    hdrs = [
 | 
						|
        "template_parser.h",
 | 
						|
    ],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":proto_util_lite",
 | 
						|
        "//mediapipe/framework/deps:proto_descriptor_cc_proto",
 | 
						|
        "//mediapipe/framework/port:advanced_proto",
 | 
						|
        "//mediapipe/framework/port:integral_types",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:map_util",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/tool:calculator_graph_template_cc_proto",
 | 
						|
        "@com_google_absl//absl/base:core_headers",
 | 
						|
        "@com_google_absl//absl/memory",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "type_util",
 | 
						|
    hdrs = ["type_util.h"],
 | 
						|
    visibility = ["//mediapipe/framework:mediapipe_internal"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:port",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "validate",
 | 
						|
    srcs = ["validate.cc"],
 | 
						|
    hdrs = ["validate.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":validate_name",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework/port:core_proto",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "validate_name",
 | 
						|
    srcs = ["validate_name.cc"],
 | 
						|
    hdrs = ["validate_name.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework/port:core_proto",
 | 
						|
        "//mediapipe/framework/port:integral_types",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:source_location",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "@com_google_absl//absl/base:core_headers",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "fill_packet_set_test",
 | 
						|
    size = "small",
 | 
						|
    srcs = ["fill_packet_set_test.cc"],
 | 
						|
    deps = [
 | 
						|
        ":fill_packet_set",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "sink_test",
 | 
						|
    size = "small",
 | 
						|
    srcs = [
 | 
						|
        "sink_test.cc",
 | 
						|
    ],
 | 
						|
    deps = [
 | 
						|
        ":sink",
 | 
						|
        ":validate_type",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework:calculator_runner",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
        "//mediapipe/framework/port:parse_text_proto",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "status_util_test",
 | 
						|
    size = "small",
 | 
						|
    srcs = ["status_util_test.cc"],
 | 
						|
    deps = [
 | 
						|
        ":status_util",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "tag_map_test",
 | 
						|
    size = "small",
 | 
						|
    srcs = ["tag_map_test.cc"],
 | 
						|
    deps = [
 | 
						|
        ":tag_map",
 | 
						|
        ":tag_map_helper",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
        "//mediapipe/framework/port:map_util",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "validate_name_test",
 | 
						|
    size = "small",
 | 
						|
    srcs = ["validate_name_test.cc"],
 | 
						|
    linkstatic = 1,
 | 
						|
    deps = [
 | 
						|
        ":validate_name",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework/deps:message_matchers",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "validate_type",
 | 
						|
    # TODO make this testonly.
 | 
						|
    srcs = ["validate_type.cc"],
 | 
						|
    hdrs = ["validate_type.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":status_util",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:calculator_contract",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework:legacy_calculator_support",
 | 
						|
        "//mediapipe/framework:packet_generator",
 | 
						|
        "//mediapipe/framework:packet_generator_cc_proto",
 | 
						|
        "//mediapipe/framework:packet_set",
 | 
						|
        "//mediapipe/framework:packet_type",
 | 
						|
        "//mediapipe/framework/port:map_util",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/port:threadpool",
 | 
						|
        "//mediapipe/util:cpu_util",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
        "@com_google_absl//absl/synchronization",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "simulation_clock_executor",
 | 
						|
    srcs = ["simulation_clock_executor.cc"],
 | 
						|
    hdrs = ["simulation_clock_executor.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:thread_pool_executor",
 | 
						|
        "//mediapipe/framework/tool:simulation_clock",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "simulation_clock_test",
 | 
						|
    srcs = ["simulation_clock_test.cc"],
 | 
						|
    deps = [
 | 
						|
        ":simulation_clock",
 | 
						|
        ":simulation_clock_executor",
 | 
						|
        "//mediapipe/calculators/core:flow_limiter_calculator",
 | 
						|
        "//mediapipe/calculators/core:immediate_mux_calculator",
 | 
						|
        "//mediapipe/calculators/core:round_robin_demux_calculator",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework:executor",
 | 
						|
        "//mediapipe/framework:input_stream",
 | 
						|
        "//mediapipe/framework:output_stream",
 | 
						|
        "//mediapipe/framework:test_calculators",
 | 
						|
        "//mediapipe/framework/port:core_proto",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:parse_text_proto",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/stream_handler:immediate_input_stream_handler",
 | 
						|
        "@com_google_absl//absl/base:core_headers",
 | 
						|
        "@com_google_absl//absl/memory",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
mediapipe_binary_graph(
 | 
						|
    name = "test_binarypb",
 | 
						|
    graph = "//mediapipe/framework/tool/testdata:test_graph",
 | 
						|
    output_name = "test.binarypb",
 | 
						|
    visibility = ["//visibility:private"],
 | 
						|
)
 | 
						|
 | 
						|
data_as_c_string(
 | 
						|
    name = "test_binarypb_inc",
 | 
						|
    testonly = 1,
 | 
						|
    srcs = [":test_binarypb"],
 | 
						|
    outs = ["test_binarypb.inc"],
 | 
						|
)
 | 
						|
 | 
						|
mediapipe_proto_library(
 | 
						|
    name = "node_chain_subgraph_proto",
 | 
						|
    srcs = ["node_chain_subgraph.proto"],
 | 
						|
    visibility = ["//mediapipe:__subpackages__"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_options_proto",
 | 
						|
        "//mediapipe/framework:calculator_proto",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "data_as_c_string_test",
 | 
						|
    srcs = [
 | 
						|
        "data_as_c_string_test.cc",
 | 
						|
        ":test_binarypb_inc",
 | 
						|
    ],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "subgraph_expansion_test",
 | 
						|
    size = "small",
 | 
						|
    srcs = ["subgraph_expansion_test.cc"],
 | 
						|
    deps = [
 | 
						|
        ":node_chain_subgraph_cc_proto",
 | 
						|
        ":subgraph_expansion",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework:graph_service_manager",
 | 
						|
        "//mediapipe/framework:mediapipe_options_cc_proto",
 | 
						|
        "//mediapipe/framework:packet",
 | 
						|
        "//mediapipe/framework:packet_generator_cc_proto",
 | 
						|
        "//mediapipe/framework:packet_set",
 | 
						|
        "//mediapipe/framework:packet_type",
 | 
						|
        "//mediapipe/framework:status_handler",
 | 
						|
        "//mediapipe/framework:subgraph",
 | 
						|
        "//mediapipe/framework/deps:message_matchers",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:parse_text_proto",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/tool/testdata:dub_quad_test_subgraph",
 | 
						|
        "//mediapipe/framework/tool/testdata:nested_test_subgraph",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "test_util",
 | 
						|
    testonly = 1,
 | 
						|
    srcs = ["test_util.cc"],
 | 
						|
    hdrs = ["test_util.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework/deps:file_path",
 | 
						|
        "//mediapipe/framework/deps:no_destructor",
 | 
						|
        "//mediapipe/framework/formats:image_format_cc_proto",
 | 
						|
        "//mediapipe/framework/formats:image_frame",
 | 
						|
        "//mediapipe/framework/port:advanced_proto",
 | 
						|
        "//mediapipe/framework/port:file_helpers",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "@com_google_absl//absl/container:flat_hash_set",
 | 
						|
        "@com_google_absl//absl/memory",
 | 
						|
        "@com_google_absl//absl/status",
 | 
						|
        "@com_google_absl//absl/status:statusor",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
        "@stblib//:stb_image",
 | 
						|
        "@stblib//:stb_image_write",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "container_util",
 | 
						|
    srcs = ["container_util.cc"],
 | 
						|
    hdrs = ["container_util.h"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":name_util",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/tool:switch_container_cc_proto",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "switch_demux_calculator",
 | 
						|
    srcs = ["switch_demux_calculator.cc"],
 | 
						|
    visibility = [
 | 
						|
        "//visibility:public",
 | 
						|
    ],
 | 
						|
    deps = [
 | 
						|
        ":container_util",
 | 
						|
        ":options_util",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework:collection_item_id",
 | 
						|
        "//mediapipe/framework/deps:mathutil",
 | 
						|
        "//mediapipe/framework/formats:video_stream_header",
 | 
						|
        "//mediapipe/framework/port:integral_types",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/stream_handler:immediate_input_stream_handler",
 | 
						|
        "//mediapipe/framework/tool:switch_container_cc_proto",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
    alwayslink = 1,
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "switch_mux_calculator",
 | 
						|
    srcs = ["switch_mux_calculator.cc"],
 | 
						|
    visibility = [
 | 
						|
        "//visibility:public",
 | 
						|
    ],
 | 
						|
    deps = [
 | 
						|
        ":container_util",
 | 
						|
        ":options_util",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework:collection_item_id",
 | 
						|
        "//mediapipe/framework:input_stream_shard",
 | 
						|
        "//mediapipe/framework:output_stream_shard",
 | 
						|
        "//mediapipe/framework/deps:mathutil",
 | 
						|
        "//mediapipe/framework/formats:video_stream_header",
 | 
						|
        "//mediapipe/framework/port:integral_types",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/stream_handler:immediate_input_stream_handler",
 | 
						|
        "//mediapipe/framework/tool:switch_container_cc_proto",
 | 
						|
        "@com_google_absl//absl/strings",
 | 
						|
    ],
 | 
						|
    alwayslink = 1,
 | 
						|
)
 | 
						|
 | 
						|
mediapipe_proto_library(
 | 
						|
    name = "switch_container_proto",
 | 
						|
    srcs = ["switch_container.proto"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        "//mediapipe/framework:calculator_options_proto",
 | 
						|
        "//mediapipe/framework:calculator_proto",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
cc_library(
 | 
						|
    name = "switch_container",
 | 
						|
    srcs = ["switch_container.cc"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":container_util",
 | 
						|
        ":name_util",
 | 
						|
        ":subgraph_expansion",
 | 
						|
        ":switch_demux_calculator",
 | 
						|
        ":switch_mux_calculator",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework:mediapipe_options_cc_proto",
 | 
						|
        "//mediapipe/framework:stream_handler_cc_proto",
 | 
						|
        "//mediapipe/framework:subgraph",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/stream_handler:sync_set_input_stream_handler_cc_proto",
 | 
						|
        "//mediapipe/framework/tool:switch_container_cc_proto",
 | 
						|
    ],
 | 
						|
    alwayslink = 1,
 | 
						|
)
 | 
						|
 | 
						|
cc_test(
 | 
						|
    name = "switch_container_test",
 | 
						|
    size = "small",
 | 
						|
    srcs = ["switch_container_test.cc"],
 | 
						|
    visibility = ["//visibility:public"],
 | 
						|
    deps = [
 | 
						|
        ":node_chain_subgraph_cc_proto",
 | 
						|
        ":subgraph_expansion",
 | 
						|
        ":switch_container",
 | 
						|
        "//mediapipe/calculators/core:pass_through_calculator",
 | 
						|
        "//mediapipe/framework:calculator_cc_proto",
 | 
						|
        "//mediapipe/framework:calculator_framework",
 | 
						|
        "//mediapipe/framework:subgraph",
 | 
						|
        "//mediapipe/framework:test_calculators",
 | 
						|
        "//mediapipe/framework/deps:message_matchers",
 | 
						|
        "//mediapipe/framework/port:gtest_main",
 | 
						|
        "//mediapipe/framework/port:logging",
 | 
						|
        "//mediapipe/framework/port:parse_text_proto",
 | 
						|
        "//mediapipe/framework/port:ret_check",
 | 
						|
        "//mediapipe/framework/port:status",
 | 
						|
        "//mediapipe/framework/stream_handler:immediate_input_stream_handler",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
exports_files(
 | 
						|
    ["build_defs.bzl"],
 | 
						|
    visibility = [
 | 
						|
        "//mediapipe/framework:__subpackages__",
 | 
						|
    ],
 | 
						|
)
 |