blob: 4d7e61664a53ff166724418f08ecf4e0be88247d [file] [log] [blame]
Austin Schuh378483c2019-01-20 16:36:40 -08001load("//aos/build:queues.bzl", "queue_library")
2
3genrule(
4 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 //y2019/control_loops/python:drivetrain) $(OUTS)",
12 tools = [
13 "//y2019/control_loops/python:drivetrain",
14 ],
15)
16
17genrule(
18 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 "hybrid_velocity_drivetrain.h",
25 "hybrid_velocity_drivetrain.cc",
26 ],
27 cmd = "$(location //y2019/control_loops/python:polydrivetrain) $(OUTS)",
28 tools = [
29 "//y2019/control_loops/python:polydrivetrain",
30 ],
31)
32
33cc_library(
34 name = "polydrivetrain_plants",
35 srcs = [
36 "drivetrain_dog_motor_plant.cc",
37 "hybrid_velocity_drivetrain.cc",
38 "kalman_drivetrain_motor_plant.cc",
39 "polydrivetrain_dog_motor_plant.cc",
40 ],
41 hdrs = [
42 "drivetrain_dog_motor_plant.h",
43 "hybrid_velocity_drivetrain.h",
44 "kalman_drivetrain_motor_plant.h",
45 "polydrivetrain_dog_motor_plant.h",
46 ],
47 visibility = ["//visibility:public"],
48 deps = [
49 "//frc971/control_loops:hybrid_state_feedback_loop",
50 "//frc971/control_loops:state_feedback_loop",
51 ],
52)
53
54cc_library(
55 name = "drivetrain_base",
56 srcs = [
57 "drivetrain_base.cc",
58 ],
59 hdrs = [
60 "drivetrain_base.h",
61 ],
62 visibility = ["//visibility:public"],
63 deps = [
64 ":polydrivetrain_plants",
65 "//frc971:shifter_hall_effect",
66 "//frc971/control_loops/drivetrain:drivetrain_config",
67 ],
68)
69
70cc_binary(
71 name = "drivetrain",
72 srcs = [
73 "drivetrain_main.cc",
74 ],
75 visibility = ["//visibility:public"],
76 deps = [
77 ":drivetrain_base",
78 "//aos:init",
79 "//frc971/control_loops/drivetrain:drivetrain_lib",
80 ],
81)