mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-21 01:01:43 +00:00
Use stricter C++ type conversions (#4357)
Now, implicit narrowing conversions are only used with wpi::Now(). This
also fixes clang-tidy warnings about C-style casts. For example:
```
== clang-tidy /__w/allwpilib/allwpilib/wpilibNewCommands/src/main/native/include/frc2/command/SwerveControllerCommand.inc ==
/__w/allwpilib/allwpilib/wpilibNewCommands/src/main/native/include/frc2/command/SwerveControllerCommand.inc:95:18: warning: C-style casts are discouraged; use static_cast/const_cast/reinterpret_cast [google-readability-casting]
auto curTime = units::second_t(m_timer.Get());
^
```
In that case at least, the cast was removed entirely since Get() already
returns a units::second_t.
This commit is contained in:
@@ -40,7 +40,7 @@ TEST(DifferentialDrivetrainSimTest, Convergence) {
|
||||
frc::DifferentialDriveKinematicsConstraint(kinematics, 1_mps));
|
||||
|
||||
auto trajectory = frc::TrajectoryGenerator::GenerateTrajectory(
|
||||
frc::Pose2d(), {}, frc::Pose2d(2_m, 2_m, 0_rad), config);
|
||||
frc::Pose2d{}, {}, frc::Pose2d{2_m, 2_m, 0_rad}, config);
|
||||
|
||||
for (auto t = 0_s; t < trajectory.TotalTime(); t += 20_ms) {
|
||||
auto state = trajectory.Sample(t);
|
||||
@@ -51,7 +51,7 @@ TEST(DifferentialDrivetrainSimTest, Convergence) {
|
||||
feedforward.Calculate(frc::Vectord<2>{l.value(), r.value()});
|
||||
|
||||
// Sim periodic code.
|
||||
sim.SetInputs(units::volt_t(voltages(0, 0)), units::volt_t(voltages(1, 0)));
|
||||
sim.SetInputs(units::volt_t{voltages(0, 0)}, units::volt_t{voltages(1, 0)});
|
||||
sim.Update(20_ms);
|
||||
|
||||
// Update ground truth.
|
||||
|
||||
@@ -20,9 +20,8 @@
|
||||
EXPECT_LE(units::math::abs(val1 - val2), eps)
|
||||
|
||||
TEST(ElevatorSimTest, StateSpaceSim) {
|
||||
frc::sim::ElevatorSim sim(frc::DCMotor::Vex775Pro(4), 14.67, 8_kg,
|
||||
units::meter_t(0.75 * 25.4 / 1000.0), 0_m, 3_m,
|
||||
true, {0.01});
|
||||
frc::sim::ElevatorSim sim(frc::DCMotor::Vex775Pro(4), 14.67, 8_kg, 0.75_in,
|
||||
0_m, 3_m, true, {0.01});
|
||||
frc2::PIDController controller(10, 0.0, 0.0);
|
||||
|
||||
frc::PWMVictorSPX motor(0);
|
||||
@@ -46,9 +45,8 @@ TEST(ElevatorSimTest, StateSpaceSim) {
|
||||
}
|
||||
|
||||
TEST(ElevatorSimTest, MinMax) {
|
||||
frc::sim::ElevatorSim sim(frc::DCMotor::Vex775Pro(4), 14.67, 8_kg,
|
||||
units::meter_t(0.75 * 25.4 / 1000.0), 0_m, 1_m,
|
||||
true, {0.01});
|
||||
frc::sim::ElevatorSim sim(frc::DCMotor::Vex775Pro(4), 14.67, 8_kg, 0.75_in,
|
||||
0_m, 1_m, true, {0.01});
|
||||
for (size_t i = 0; i < 100; ++i) {
|
||||
sim.SetInput(frc::Vectord<1>{0.0});
|
||||
sim.Update(20_ms);
|
||||
|
||||
@@ -40,7 +40,7 @@ TEST(StateSpaceSimTest, FlywheelSim) {
|
||||
for (int i = 0; i < 100; i++) {
|
||||
// RobotPeriodic runs first
|
||||
auto voltageOut = controller.Calculate(encoder.GetRate(), 200.0);
|
||||
motor.SetVoltage(units::volt_t(voltageOut) +
|
||||
motor.SetVoltage(units::volt_t{voltageOut} +
|
||||
feedforward.Calculate(200_rad_per_s));
|
||||
|
||||
// Then, SimulationPeriodic runs
|
||||
|
||||
Reference in New Issue
Block a user