blob: 9abb2a188eed774e164008984486f39db4e64cb7 [file] [log] [blame]
load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
load("//tools/build_rules:select.bzl", "compiler_select", "cpu_select")
genrule(
name = "genrule_drivetrain",
outs = [
"drivetrain_dog_motor_plant.h",
"drivetrain_dog_motor_plant.cc",
"kalman_drivetrain_motor_plant.h",
"kalman_drivetrain_motor_plant.cc",
],
cmd = "$(location //y2020/control_loops/python:drivetrain) $(OUTS)",
tools = [
"//y2020/control_loops/python:drivetrain",
],
)
genrule(
name = "genrule_polydrivetrain",
outs = [
"polydrivetrain_dog_motor_plant.h",
"polydrivetrain_dog_motor_plant.cc",
"polydrivetrain_cim_plant.h",
"polydrivetrain_cim_plant.cc",
"hybrid_velocity_drivetrain.h",
"hybrid_velocity_drivetrain.cc",
],
cmd = "$(location //y2020/control_loops/python:polydrivetrain) $(OUTS)",
tools = [
"//y2020/control_loops/python:polydrivetrain",
],
)
cc_library(
name = "polydrivetrain_plants",
srcs = [
"drivetrain_dog_motor_plant.cc",
"hybrid_velocity_drivetrain.cc",
"kalman_drivetrain_motor_plant.cc",
"polydrivetrain_dog_motor_plant.cc",
],
hdrs = [
"drivetrain_dog_motor_plant.h",
"hybrid_velocity_drivetrain.h",
"kalman_drivetrain_motor_plant.h",
"polydrivetrain_dog_motor_plant.h",
],
visibility = ["//visibility:public"],
deps = [
"//frc971/control_loops:hybrid_state_feedback_loop",
"//frc971/control_loops:state_feedback_loop",
],
)
cc_library(
name = "drivetrain_base",
srcs = [
"drivetrain_base.cc",
],
hdrs = [
"drivetrain_base.h",
],
visibility = ["//visibility:public"],
deps = [
":polydrivetrain_plants",
"//frc971:shifter_hall_effect",
"//frc971/control_loops/drivetrain:drivetrain_config",
],
)
cc_binary(
name = "drivetrain",
srcs = [
"drivetrain_main.cc",
],
visibility = ["//visibility:public"],
deps = [
":drivetrain_base",
"//aos:init",
"//aos/events:shm_event_loop",
"//frc971/control_loops/drivetrain:drivetrain_lib",
],
)
cc_binary(
name = "drivetrain_replay",
srcs = ["drivetrain_replay.cc"],
data = ["//y2020:config.json"],
deps = [
":drivetrain_base",
"//aos:configuration",
"//aos:init",
"//aos/events:shm_event_loop",
"//aos/events:simulated_event_loop",
"//aos/events/logging:logger",
"//frc971/control_loops/drivetrain:drivetrain_lib",
"@com_github_gflags_gflags//:gflags",
"@com_github_google_glog//:glog",
],
)