blob: 48bfeb0b24719222b11f2b276b0692aa1d3d6ec8 [file] [log] [blame]
Austin Schuh2314c812018-12-21 13:42:33 +11001load("//aos/build:queues.bzl", "queue_library")
Sabina Davisf4c5e762018-01-24 10:18:43 -08002
3genrule(
Austin Schuh2314c812018-12-21 13:42:33 +11004 name = "genrule_drivetrain",
5 outs = [
6 "drivetrain_dog_motor_plant.h",
7 "drivetrain_dog_motor_plant.cc",
8 "kalman_drivetrain_motor_plant.h",
9 "kalman_drivetrain_motor_plant.cc",
10 ],
11 cmd = "$(location //y2018/control_loops/python:drivetrain) $(OUTS)",
12 tools = [
13 "//y2018/control_loops/python:drivetrain",
14 ],
Sabina Davisf4c5e762018-01-24 10:18:43 -080015)
16
17genrule(
Austin Schuh2314c812018-12-21 13:42:33 +110018 name = "genrule_polydrivetrain",
19 outs = [
20 "polydrivetrain_dog_motor_plant.h",
21 "polydrivetrain_dog_motor_plant.cc",
22 "polydrivetrain_cim_plant.h",
23 "polydrivetrain_cim_plant.cc",
24 ],
25 cmd = "$(location //y2018/control_loops/python:polydrivetrain) $(OUTS)",
26 tools = [
27 "//y2018/control_loops/python:polydrivetrain",
28 ],
Sabina Davisf4c5e762018-01-24 10:18:43 -080029)
30
31cc_library(
Austin Schuh2314c812018-12-21 13:42:33 +110032 name = "polydrivetrain_plants",
33 srcs = [
34 "drivetrain_dog_motor_plant.cc",
35 "kalman_drivetrain_motor_plant.cc",
36 "polydrivetrain_dog_motor_plant.cc",
37 ],
38 hdrs = [
39 "drivetrain_dog_motor_plant.h",
40 "kalman_drivetrain_motor_plant.h",
41 "polydrivetrain_dog_motor_plant.h",
42 ],
43 visibility = ["//visibility:public"],
44 deps = [
45 "//frc971/control_loops:state_feedback_loop",
46 ],
Sabina Davisf4c5e762018-01-24 10:18:43 -080047)
48
49cc_library(
Austin Schuh2314c812018-12-21 13:42:33 +110050 name = "drivetrain_base",
51 srcs = [
52 "drivetrain_base.cc",
53 ],
54 hdrs = [
55 "drivetrain_base.h",
56 ],
57 visibility = ["//visibility:public"],
58 deps = [
59 ":polydrivetrain_plants",
60 "//frc971:shifter_hall_effect",
61 "//frc971/control_loops/drivetrain:drivetrain_config",
62 ],
Sabina Davisf4c5e762018-01-24 10:18:43 -080063)
64
65cc_binary(
Austin Schuh2314c812018-12-21 13:42:33 +110066 name = "drivetrain",
67 srcs = [
68 "drivetrain_main.cc",
69 ],
70 visibility = ["//visibility:public"],
71 deps = [
72 ":drivetrain_base",
73 "//aos:init",
74 "//frc971/control_loops/drivetrain:drivetrain_lib",
75 ],
Sabina Davisf4c5e762018-01-24 10:18:43 -080076)