X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2FCameraFeeds.java;h=b18fbca8cebb663f1f009ff0f4f718346fe77488;hb=8d23fc007f8caa255a1e6748e67254824a34f8ac;hp=3ca36b32a355f839baee3ff82c2da49ec1121ce2;hpb=b7b608d6e910666a101456fc3ce4ff1ec5b41d54;p=3501%2F2017steamworks diff --git a/src/org/usfirst/frc/team3501/robot/CameraFeeds.java b/src/org/usfirst/frc/team3501/robot/CameraFeeds.java index 3ca36b3..b18fbca 100755 --- a/src/org/usfirst/frc/team3501/robot/CameraFeeds.java +++ b/src/org/usfirst/frc/team3501/robot/CameraFeeds.java @@ -1,8 +1,5 @@ package org.usfirst.frc.team3501.robot; -import com.ni.vision.NIVision; -import com.ni.vision.NIVision.Image; - import edu.wpi.cscore.AxisCamera; import edu.wpi.cscore.UsbCamera; import edu.wpi.cscore.VideoSource; @@ -11,87 +8,60 @@ import edu.wpi.first.wpilibj.CameraServer; 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; + private static CameraFeeds cameraFeeds = null; @SuppressWarnings("deprecation") - public CameraFeeds(/* Joystick Button */) { - // Get camera ids by supplying camera name ex 'cam0', found on roborio web - // interface - /* - * intakeCam = - * NIVision.IMAQdxOpenCamera(Constants.CameraFeeds.camNameCenter, - * NIVision.IMAQdxCameraControlMode.CameraControlModeController); climberCam - * = NIVision.IMAQdxOpenCamera(Constants.CameraFeeds.camNameRight, - * NIVision.IMAQdxCameraControlMode.CameraControlModeController); curCam = - * intakeCam; // Img that will contain camera img frame = - * NIVision.imaqCreateImage(NIVision.ImageType.IMAGE_RGB, 0); // Server that - * we'll give the img to server = CameraServer.getInstance(); - * server.setSize(Constants.CameraFeeds.imgQuality); - */ - intakeCam = CameraServer.getInstance().startAutomaticCapture(); - CameraServer.getInstance().startAutomaticCapture(); + private CameraFeeds(/* Joystick Button */) { + System.out.println("Enter CameraFeeds constructor"); server = CameraServer.getInstance(); - climberCam = server.addAxisCamera("axisCamera", "10.35.1.11"); + climberCam = server.addAxisCamera("ClimberCam", "10.35.1.11"); + // intakeCam = server.startAutomaticCapture(); + usbCamName = intakeCam.getName(); + axisCamName = climberCam.getName(); + curCam = climberCam; + changeCam(curCam); + } + + public static CameraFeeds getCameraFeeds() { + if (cameraFeeds == null) { + cameraFeeds = new CameraFeeds(); + } + return cameraFeeds; - // server = CameraServer.getInstance(); - // axisCamera = cameraServer2.addAxisCamera("axisCamera", "10.35.1.11"); - // cameraFeeds = new CameraFeeds(); } public void init() { - changeCam(intakeCam); + // changeCam(climberCam); } - public void run() - { - if(/*add test for toggle*/) - changeCam(intakeCam); - - if(/*add test for toggle*/) + public void toggleCamera() { + System.out.println("enter toggleCamera"); + if (curCam.equals(intakeCam)) { changeCam(climberCam); - - updateCam(); - } - - /** - * Stop aka close camera stream - */ - public void end() { - // NIVision.IMAQdxStopAcquisition(curCam); + curCam = climberCam; + System.out + .println("Switching to climber camera, curCam = " + curCam.getName()); + } else if (curCam.equals(climberCam)) { + changeCam(intakeCam); + curCam = intakeCam; + System.out + .println("Switching to intake camera, curCam = " + curCam.getName()); + } } /** * - * Change the camera to get imgs from to a different one + * Change the camera to get image from to a different one * - * @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 + * newId for camera */ - public void updateCam() { - // NIVision.IMAQdxGrab(curCam, frame, 1); - // server.setImage(frame); + public void changeCam(VideoSource cam) { + server.removeCamera(curCam.getName()); } }