2019-09-15 15:22:52 -04:00
|
|
|
package com.chameleonvision;
|
|
|
|
|
|
2019-09-15 15:03:44 -04:00
|
|
|
import com.chameleonvision.settings.SettingsManager;
|
2019-09-19 14:07:42 -04:00
|
|
|
import com.chameleonvision.vision.camera.CameraManager;
|
2019-09-21 13:30:09 -04:00
|
|
|
import com.chameleonvision.vision.process.VisionProcess;
|
2019-09-15 15:03:44 -04:00
|
|
|
import com.chameleonvision.web.Server;
|
2019-09-26 14:19:30 -04:00
|
|
|
import edu.wpi.cscore.CameraServerCvJNI;
|
|
|
|
|
import edu.wpi.cscore.CameraServerJNI;
|
2019-09-25 20:03:41 +03:00
|
|
|
import edu.wpi.first.networktables.NetworkTableInstance;
|
2019-09-14 17:14:49 +03:00
|
|
|
|
2019-09-26 14:19:30 -04:00
|
|
|
import java.io.IOException;
|
|
|
|
|
|
2019-09-10 21:52:13 +03:00
|
|
|
public class Main {
|
2019-09-22 02:49:30 -04:00
|
|
|
public static void main(String[] args) {
|
2019-09-26 14:19:30 -04:00
|
|
|
// Attempt to load the JNI Libraries
|
|
|
|
|
try {
|
|
|
|
|
CameraServerJNI.forceLoad();
|
|
|
|
|
CameraServerCvJNI.forceLoad();
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
var errorStr = SettingsManager.getCurrentPlatform().equals(SettingsManager.Platform.UNSUPPORTED) ? "Unsupported platform!" : "Failed to load JNI Libraries!";
|
|
|
|
|
throw new RuntimeException(errorStr);
|
|
|
|
|
}
|
|
|
|
|
|
2019-09-22 02:49:30 -04:00
|
|
|
if (CameraManager.initializeCameras()) {
|
|
|
|
|
SettingsManager.initialize();
|
|
|
|
|
for (var camSet : CameraManager.getAllCamerasByName().entrySet()) {
|
|
|
|
|
new Thread(new VisionProcess(camSet.getValue())).start();
|
|
|
|
|
}
|
2019-09-26 14:19:30 -04:00
|
|
|
|
2019-09-25 10:10:11 -07:00
|
|
|
NetworkTableInstance.getDefault().startClientTeam(SettingsManager.GeneralSettings.team_number);
|
2019-09-25 10:32:22 -07:00
|
|
|
// NetworkTableInstance.getDefault().startClient("localhost");
|
2019-09-22 02:49:30 -04:00
|
|
|
Server.main(8888);
|
|
|
|
|
} else {
|
|
|
|
|
System.err.println("No cameras connected!");
|
|
|
|
|
}
|
|
|
|
|
}
|
2019-09-10 21:52:13 +03:00
|
|
|
}
|