Files
PhotonVision/Main/src/main/java/com/chameleonvision/Main.java

51 lines
1.6 KiB
Java
Raw Normal View History

package com.chameleonvision;
import com.chameleonvision.settings.SettingsManager;
2019-09-19 14:07:42 -04:00
import com.chameleonvision.vision.camera.CameraManager;
import com.chameleonvision.vision.process.VisionProcess;
import com.chameleonvision.web.Server;
import edu.wpi.cscore.CameraServerCvJNI;
import edu.wpi.cscore.CameraServerJNI;
2019-09-25 20:03:41 +03:00
import edu.wpi.first.networktables.NetworkTableInstance;
import java.io.IOException;
2019-09-10 21:52:13 +03:00
public class Main {
private static final String PORT_KEY = "-port";
2019-09-22 02:49:30 -04:00
public static void main(String[] args) {
int port = 8888;
for(int i=0; i<args.length; i+=2)
{
String key = args[i];
String value = args[i+1];
if (PORT_KEY.equals(key)) {
try{
port = Integer.parseInt(value);
}
catch (NumberFormatException e){
System.err.println("Given Port Was Not A Number Starting Server At Default Port");
}
}
}
// 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();
2019-09-29 17:39:58 +03:00
CameraManager.initializeThreads();
NetworkTableInstance.getDefault().startClientTeam(SettingsManager.GeneralSettings.team_number);
2019-09-25 10:32:22 -07:00
// NetworkTableInstance.getDefault().startClient("localhost");
System.out.println("Starting WebServer At Port:" + port);
Server.main(port);
2019-09-22 02:49:30 -04:00
} else {
System.err.println("No cameras connected!");
}
}
2019-09-10 21:52:13 +03:00
}