Added deletion for old nt table (after nickname change) and fixed a exposure set bug

This commit is contained in:
Omer
2019-10-29 15:26:10 +02:00
parent 8e1c4695f9
commit a7f306d0b9
2 changed files with 13 additions and 9 deletions

View File

@@ -228,7 +228,13 @@ public class Camera {
public void setExposure(int exposure) {
getCurrentPipeline().exposure = exposure;
UsbCam.setExposureManual(exposure);
try {
UsbCam.setExposureManual(exposure);
}
catch (VideoException e)
{
System.err.println("Camera Does not support exposure change");
}
}
public long grabFrame(Mat image) {
@@ -252,6 +258,8 @@ public class Camera {
}
public void setNickname(String newNickname) {
//Deletes old camera nt table
NetworkTableInstance.getDefault().getTable("/chameleon-vision/" + this.nickname).getInstance().deleteAllEntries();
nickname = newNickname;
if (CameraManager.AllVisionProcessesByName.containsKey(this.name)) {
NetworkTable newNT = NetworkTableInstance.getDefault().getTable("/chameleon-vision/" + this.nickname);

View File

@@ -97,7 +97,7 @@ public class ServerHandler {
case "deleteCurrentPipeline":
int currentIndex = cam.getCurrentPipelineIndex();
int nextIndex;
if (currentIndex == cam.getPipelines().size() - 1){
if (currentIndex == cam.getPipelines().size() - 1) {
nextIndex = currentIndex - 1;
} else {
nextIndex = currentIndex;
@@ -124,7 +124,7 @@ public class ServerHandler {
try {
cam.setBrightness(cam.getCurrentPipeline().brightness);
cam.setExposure(cam.getCurrentPipeline().exposure);
}catch (Exception e){
} catch (Exception e) {
continue;
}
break;
@@ -133,11 +133,7 @@ public class ServerHandler {
setField(CameraManager.getCurrentCamera().getCurrentPipeline(), entry.getKey(), entry.getValue());
switch (entry.getKey()) {
case "exposure": {
try {
CameraManager.getCurrentCamera().setExposure((Integer) entry.getValue());
} catch (Exception e) {
System.err.println("Camera Does not support exposure change");
}
CameraManager.getCurrentCamera().setExposure((Integer) entry.getValue());
}
case "brightness": {
CameraManager.getCurrentCamera().setBrightness((Integer) entry.getValue());
@@ -239,7 +235,7 @@ public class ServerHandler {
fullSettings.put("pipelineList", currentCamera.getPipelinesNickname());
fullSettings.put("resolutionList", currentCamera.getResolutionList());
fullSettings.put("port", currentCamera.getStreamPort());
fullSettings.put("currentPipelineIndex",CameraManager.getCurrentCamera().getCurrentPipelineIndex());
fullSettings.put("currentPipelineIndex", CameraManager.getCurrentCamera().getCurrentPipelineIndex());
fullSettings.put("currentCameraIndex", CameraManager.getCurrentCameraIndex());
} catch (CameraException | IllegalAccessException e) {
System.err.println("No camera found!");