blob: 9abb2a188eed774e164008984486f39db4e64cb7 [file] [log] [blame]
Stephan Massaltd021f972020-01-05 20:41:23 -08001load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library")
2load("//tools/build_rules:select.bzl", "compiler_select", "cpu_select")
3
4genrule(
5 name = "genrule_drivetrain",
6 outs = [
7 "drivetrain_dog_motor_plant.h",
8 "drivetrain_dog_motor_plant.cc",
9 "kalman_drivetrain_motor_plant.h",
10 "kalman_drivetrain_motor_plant.cc",
11 ],
12 cmd = "$(location //y2020/control_loops/python:drivetrain) $(OUTS)",
13 tools = [
14 "//y2020/control_loops/python:drivetrain",
15 ],
16)
17
18genrule(
19 name = "genrule_polydrivetrain",
20 outs = [
21 "polydrivetrain_dog_motor_plant.h",
22 "polydrivetrain_dog_motor_plant.cc",
23 "polydrivetrain_cim_plant.h",
24 "polydrivetrain_cim_plant.cc",
25 "hybrid_velocity_drivetrain.h",
26 "hybrid_velocity_drivetrain.cc",
27 ],
28 cmd = "$(location //y2020/control_loops/python:polydrivetrain) $(OUTS)",
29 tools = [
30 "//y2020/control_loops/python:polydrivetrain",
31 ],
32)
33
34cc_library(
35 name = "polydrivetrain_plants",
36 srcs = [
37 "drivetrain_dog_motor_plant.cc",
38 "hybrid_velocity_drivetrain.cc",
39 "kalman_drivetrain_motor_plant.cc",
40 "polydrivetrain_dog_motor_plant.cc",
41 ],
42 hdrs = [
43 "drivetrain_dog_motor_plant.h",
44 "hybrid_velocity_drivetrain.h",
45 "kalman_drivetrain_motor_plant.h",
46 "polydrivetrain_dog_motor_plant.h",
47 ],
48 visibility = ["//visibility:public"],
49 deps = [
50 "//frc971/control_loops:hybrid_state_feedback_loop",
51 "//frc971/control_loops:state_feedback_loop",
52 ],
53)
54
55cc_library(
56 name = "drivetrain_base",
57 srcs = [
58 "drivetrain_base.cc",
59 ],
60 hdrs = [
61 "drivetrain_base.h",
62 ],
63 visibility = ["//visibility:public"],
64 deps = [
65 ":polydrivetrain_plants",
66 "//frc971:shifter_hall_effect",
67 "//frc971/control_loops/drivetrain:drivetrain_config",
68 ],
69)
70
71cc_binary(
72 name = "drivetrain",
73 srcs = [
74 "drivetrain_main.cc",
75 ],
76 visibility = ["//visibility:public"],
77 deps = [
78 ":drivetrain_base",
79 "//aos:init",
80 "//aos/events:shm_event_loop",
81 "//frc971/control_loops/drivetrain:drivetrain_lib",
82 ],
83)
James Kuszmaul022d40e2020-02-11 17:06:18 -080084
85cc_binary(
86 name = "drivetrain_replay",
87 srcs = ["drivetrain_replay.cc"],
88 data = ["//y2020:config.json"],
89 deps = [
90 ":drivetrain_base",
91 "//aos:configuration",
92 "//aos:init",
93 "//aos/events:shm_event_loop",
94 "//aos/events:simulated_event_loop",
95 "//aos/events/logging:logger",
96 "//frc971/control_loops/drivetrain:drivetrain_lib",
97 "@com_github_gflags_gflags//:gflags",
98 "@com_github_google_glog//:glog",
99 ],
100)