diff --git a/wpilibcExamples/src/main/cpp/templates/commandbased/cpp/Robot.cpp b/wpilibcExamples/src/main/cpp/templates/commandbased/cpp/Robot.cpp index 8cd7b02dd3..41eac66691 100644 --- a/wpilibcExamples/src/main/cpp/templates/commandbased/cpp/Robot.cpp +++ b/wpilibcExamples/src/main/cpp/templates/commandbased/cpp/Robot.cpp @@ -65,6 +65,16 @@ void Robot::TeleopPeriodic() {} */ void Robot::TestPeriodic() {} +/** + * This function is called once when the robot is first started up. + */ +void Robot::SimulationInit() {} + +/** + * This function is called periodically whilst in simulation. + */ +void Robot::SimulationPeriodic() {} + #ifndef RUNNING_FRC_TESTS int main() { return frc::StartRobot(); diff --git a/wpilibcExamples/src/main/cpp/templates/commandbased/include/Robot.h b/wpilibcExamples/src/main/cpp/templates/commandbased/include/Robot.h index a82f2ac63b..25e3229fa8 100644 --- a/wpilibcExamples/src/main/cpp/templates/commandbased/include/Robot.h +++ b/wpilibcExamples/src/main/cpp/templates/commandbased/include/Robot.h @@ -20,6 +20,8 @@ class Robot : public frc::TimedRobot { void TeleopInit() override; void TeleopPeriodic() override; void TestPeriodic() override; + void SimulationInit() override; + void SimulationPeriodic() override; private: // Have it null by default so that if testing teleop it diff --git a/wpilibcExamples/src/main/cpp/templates/timed/cpp/Robot.cpp b/wpilibcExamples/src/main/cpp/templates/timed/cpp/Robot.cpp index 577de89da1..bf5e3766f9 100644 --- a/wpilibcExamples/src/main/cpp/templates/timed/cpp/Robot.cpp +++ b/wpilibcExamples/src/main/cpp/templates/timed/cpp/Robot.cpp @@ -68,6 +68,10 @@ void Robot::TestInit() {} void Robot::TestPeriodic() {} +void Robot::SimulationInit() {} + +void Robot::SimulationPeriodic() {} + #ifndef RUNNING_FRC_TESTS int main() { return frc::StartRobot(); diff --git a/wpilibcExamples/src/main/cpp/templates/timed/include/Robot.h b/wpilibcExamples/src/main/cpp/templates/timed/include/Robot.h index b8876054f9..5677a88fe5 100644 --- a/wpilibcExamples/src/main/cpp/templates/timed/include/Robot.h +++ b/wpilibcExamples/src/main/cpp/templates/timed/include/Robot.h @@ -21,6 +21,8 @@ class Robot : public frc::TimedRobot { void DisabledPeriodic() override; void TestInit() override; void TestPeriodic() override; + void SimulationInit() override; + void SimulationPeriodic() override; private: frc::SendableChooser m_chooser; diff --git a/wpilibcExamples/src/main/cpp/templates/timedskeleton/cpp/Robot.cpp b/wpilibcExamples/src/main/cpp/templates/timedskeleton/cpp/Robot.cpp index 92f5df11f0..d5b57c2836 100644 --- a/wpilibcExamples/src/main/cpp/templates/timedskeleton/cpp/Robot.cpp +++ b/wpilibcExamples/src/main/cpp/templates/timedskeleton/cpp/Robot.cpp @@ -19,6 +19,9 @@ void Robot::DisabledPeriodic() {} void Robot::TestInit() {} void Robot::TestPeriodic() {} +void Robot::SimulationInit() {} +void Robot::SimulationPeriodic() {} + #ifndef RUNNING_FRC_TESTS int main() { return frc::StartRobot(); diff --git a/wpilibcExamples/src/main/cpp/templates/timedskeleton/include/Robot.h b/wpilibcExamples/src/main/cpp/templates/timedskeleton/include/Robot.h index 99f84f75f3..062a198f16 100644 --- a/wpilibcExamples/src/main/cpp/templates/timedskeleton/include/Robot.h +++ b/wpilibcExamples/src/main/cpp/templates/timedskeleton/include/Robot.h @@ -22,4 +22,7 @@ class Robot : public frc::TimedRobot { void TestInit() override; void TestPeriodic() override; + + void SimulationInit() override; + void SimulationPeriodic() override; }; diff --git a/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/commandbased/Robot.java b/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/commandbased/Robot.java index 34cd3cea6a..065296745e 100644 --- a/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/commandbased/Robot.java +++ b/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/commandbased/Robot.java @@ -92,4 +92,12 @@ public class Robot extends TimedRobot { /** This function is called periodically during test mode. */ @Override public void testPeriodic() {} + + /** This function is called once when the robot is first started up. */ + @Override + public void simulationInit() {} + + /** This function is called periodically whilst in simulation. */ + @Override + public void simulationPeriodic() {} } diff --git a/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/timed/Robot.java b/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/timed/Robot.java index 9141414a32..91be81c023 100644 --- a/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/timed/Robot.java +++ b/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/timed/Robot.java @@ -95,4 +95,12 @@ public class Robot extends TimedRobot { /** This function is called periodically during test mode. */ @Override public void testPeriodic() {} + + /** This function is called once when the robot is first started up. */ + @Override + public void simulationInit() {} + + /** This function is called periodically whilst in simulation. */ + @Override + public void simulationPeriodic() {} } diff --git a/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/timedskeleton/Robot.java b/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/timedskeleton/Robot.java index d3968f3a8d..4e0a8fea72 100644 --- a/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/timedskeleton/Robot.java +++ b/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/templates/timedskeleton/Robot.java @@ -46,4 +46,10 @@ public class Robot extends TimedRobot { @Override public void testPeriodic() {} + + @Override + public void simulationInit() {} + + @Override + public void simulationPeriodic() {} }