load("//tools/lint:lint.bzl", "add_lint_tests")
load(
    "//tools/performance:defs.bzl",
    "drake_cc_googlebench_binary",
    "drake_py_experiment_binary",
)

package(default_visibility = ["//visibility:private"])

drake_cc_googlebench_binary(
    name = "framework_benchmarks",
    srcs = ["framework_benchmarks.cc"],
    add_test_rule = True,
    deps = [
        "//common:add_text_logging_gflags",
        "//systems/framework:diagram_builder",
        "//systems/primitives:adder",
        "//systems/primitives:pass_through",
        "//tools/performance:fixture_common",
        "//tools/performance:gflags_main",
    ],
)

drake_py_experiment_binary(
    name = "framework_experiment",
    googlebench_binary = ":framework_benchmarks",
)

drake_cc_googlebench_binary(
    name = "multilayer_perceptron_benchmark",
    srcs = ["multilayer_perceptron_benchmark.cc"],
    add_test_rule = True,
    deps = [
        "//common:add_text_logging_gflags",
        "//systems/primitives:multilayer_perceptron",
        "//tools/performance:fixture_common",
        "//tools/performance:gflags_main",
    ],
)

drake_py_experiment_binary(
    name = "multilayer_perceptron_experiment",
    googlebench_binary = ":multilayer_perceptron_benchmark",
)

add_lint_tests()
