Fixes initialization when not using the provided main (#1085)

Helpful for simulation, which might not use our main.
This commit is contained in:
Thad House
2018-05-24 17:03:19 -07:00
committed by Peter Johnson
parent 381c25c573
commit 86c1f8ae50
4 changed files with 11 additions and 1 deletions

View File

@@ -185,6 +185,7 @@ public class DriverStation implements RobotState.Interface {
* variable.
*/
private DriverStation() {
HAL.initialize(500, 0);
m_waitForDataCount = 0;
m_waitForDataMutex = new ReentrantLock();
m_waitForDataCond = m_waitForDataMutex.newCondition();

View File

@@ -83,6 +83,7 @@ public abstract class RobotBase implements AutoCloseable {
* to put this code into it's own task that loads on boot so ensure that it runs.
*/
protected RobotBase() {
initializeHardwareConfiguration();
NetworkTableInstance inst = NetworkTableInstance.getDefault();
setupCameraServerShared();
inst.setNetworkIdentity("Robot");
@@ -219,7 +220,9 @@ public abstract class RobotBase implements AutoCloseable {
*/
@SuppressWarnings("PMD.UnusedFormalParameter")
public static void main(String... args) {
initializeHardwareConfiguration();
if (!HAL.initialize(500, 0)) {
throw new IllegalStateException("Failed to initialize. Terminating");
}
HAL.report(tResourceType.kResourceType_Language, tInstances.kLanguage_Java);