From: Rayan Hirech Date: Sat, 4 Feb 2017 23:48:05 +0000 (-0800) Subject: Toggle between cameras (Untested). X-Git-Url: http://challenge-bot.com/repos/?p=3501%2F2017steamworks;a=commitdiff_plain;h=4dff9cc395f3506e3f14696d80129e0b0e255e3e Toggle between cameras (Untested). --- diff --git a/src/org/usfirst/frc/team3501/robot/CameraFeeds.java b/src/org/usfirst/frc/team3501/robot/CameraFeeds.java index 3ca36b3..50ee606 100755 --- a/src/org/usfirst/frc/team3501/robot/CameraFeeds.java +++ b/src/org/usfirst/frc/team3501/robot/CameraFeeds.java @@ -1,6 +1,5 @@ package org.usfirst.frc.team3501.robot; -import com.ni.vision.NIVision; import com.ni.vision.NIVision.Image; import edu.wpi.cscore.AxisCamera; @@ -12,10 +11,12 @@ public class CameraFeeds { // private final int intakeCam; // private final int climberCam; private Image frame; - private String curCam = "intake"; + private VideoSource curCam; private CameraServer server; private static UsbCamera intakeCam; private static AxisCamera climberCam; + private static String usbCamName; + private static String axisCamName; @SuppressWarnings("deprecation") public CameraFeeds(/* Joystick Button */) { @@ -32,10 +33,13 @@ public class CameraFeeds { * we'll give the img to server = CameraServer.getInstance(); * server.setSize(Constants.CameraFeeds.imgQuality); */ - intakeCam = CameraServer.getInstance().startAutomaticCapture(); - CameraServer.getInstance().startAutomaticCapture(); + server = CameraServer.getInstance(); climberCam = server.addAxisCamera("axisCamera", "10.35.1.11"); + intakeCam = server.startAutomaticCapture(); + curCam = intakeCam; + usbCamName = intakeCam.getName(); + axisCamName = climberCam.getName(); // server = CameraServer.getInstance(); // axisCamera = cameraServer2.addAxisCamera("axisCamera", "10.35.1.11"); @@ -46,22 +50,16 @@ public class CameraFeeds { changeCam(intakeCam); } - public void run() - { - if(/*add test for toggle*/) - changeCam(intakeCam); - - if(/*add test for toggle*/) + public void toggleCamera() { + if (curCam.equals(intakeCam)) { changeCam(climberCam); + curCam = climberCam; + } - updateCam(); - } - - /** - * Stop aka close camera stream - */ - public void end() { - // NIVision.IMAQdxStopAcquisition(curCam); + if (curCam.equals(climberCam)) { + changeCam(intakeCam); + curCam = intakeCam; + } } /** @@ -71,27 +69,9 @@ public class CameraFeeds { * @param newId * for camera */ - public void changeCam(/* int newId */) { - if (curCam == "climber") { - server.removeCamera(/* Axis Camera name */); - server.addCamera(intakeCam); - curCam = "intake"; - } else if (curCam == "intake") { - server.removeCamera(/* Usb Camera name */); - server.addCamera(climberCam); - curCam = "climber"; - } - // NIVision.IMAQdxStopAcquisition(curCam); - // NIVision.IMAQdxConfigureGrab(newId); - // NIVision.IMAQdxStartAcquisition(newId); - // curCam = newId; - } - - /** - * Get the img from current camera and give it to the server - */ - public void updateCam() { - // NIVision.IMAQdxGrab(curCam, frame, 1); - // server.setImage(frame); + public void changeCam(VideoSource cam) { + server.removeCamera(axisCamName); + server.removeCamera(usbCamName); + server.addCamera(cam); } }