import edu.wpi.cscore.AxisCamera;
import edu.wpi.cscore.UsbCamera;
-import edu.wpi.cscore.VideoSource;
import edu.wpi.first.wpilibj.CameraServer;
public class CameraFeeds {
// private final int intakeCam;
// private final int climberCam;
- private VideoSource curCam;
+ private String curCam;
private CameraServer server;
private static UsbCamera intakeCam;
private static AxisCamera climberCam;
private static CameraFeeds cameraFeeds = null;
@SuppressWarnings("deprecation")
- public CameraFeeds(/* Joystick Button */) {
- // Get camera id by supplying camera name example '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; // Image that will contain camera image frame =
- * NIVision.imaqCreateImage(NIVision.ImageType.IMAGE_RGB, 0); // Server that
- * we'll give the image to server = CameraServer.getInstance();
- * server.setSize(Constants.CameraFeeds.imgQuality);
- */
-
+ 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();
- curCam = intakeCam;
usbCamName = intakeCam.getName();
axisCamName = climberCam.getName();
-
- // server = CameraServer.getInstance();
- // axisCamera = cameraServer2.addAxisCamera("axisCamera", "10.35.1.11");
- // cameraFeeds = new CameraFeeds();
+ curCam = "intakeCam";
+ changeCam();
+ System.out.println("Leaving CameraFeeds constructor");
}
public static CameraFeeds getCameraFeeds() {
+ System.out.println("Enter CameraFeeds.getCameraFeeds");
if (cameraFeeds == null) {
cameraFeeds = new CameraFeeds();
}
+ System.out.println("Leaving CameraFeeds.getCameraFeeds");
return cameraFeeds;
-
}
public void init() {
- changeCam(climberCam);
+ System.out.println("Initializing...");
}
public void toggleCamera() {
- System.out.println("enter toggleCamer");
- if (curCam.equals(intakeCam)) {
- changeCam(climberCam);
- curCam = climberCam;
- System.out.println("Switching to climber camera.");
- return;
- }
-
- if (curCam.equals(climberCam)) {
- changeCam(intakeCam);
- curCam = intakeCam;
- System.out.println("Switching to intake camera.");
- return;
- }
+ changeCam();
}
/**
*
* newId for camera
*/
- public void changeCam(VideoSource cam) {
- System.out.println("change camera");
- server.removeCamera(axisCamName);
- server.removeCamera(usbCamName);
- server.addCamera(cam);
+ public void changeCam() {
+ System.out.println("enter toggleCamera");
+ if (curCam == "intakeCam") {
+ server.getVideo(axisCamName);
+ curCam = "climberCam";
+ System.out.println("Switching to climber camera, curCam = " + curCam);
+ } else if (curCam == "climberCam") {
+ server.getVideo(usbCamName);
+ curCam = "intakeCam";
+ System.out.println("Switching to intake camera, curCam = " + curCam);
+ }
}
}