Fix merge conflicts.
[3501/2017steamworks] / src / org / usfirst / frc / team3501 / robot / CameraFeeds.java
CommitLineData
409d6878
ME
1package org.usfirst.frc.team3501.robot;
2
2ada01fd
RH
3import edu.wpi.cscore.AxisCamera;
4import edu.wpi.cscore.UsbCamera;
b7b608d6 5import edu.wpi.cscore.VideoSource;
409d6878
ME
6import edu.wpi.first.wpilibj.CameraServer;
7
8public class CameraFeeds {
50a075d8
RH
9 // private final int intakeCam;
10 // private final int climberCam;
4dff9cc3 11 private VideoSource curCam;
409d6878 12 private CameraServer server;
50a075d8
RH
13 private static UsbCamera intakeCam;
14 private static AxisCamera climberCam;
4dff9cc3
RH
15 private static String usbCamName;
16 private static String axisCamName;
4bc0cb18 17 private static CameraFeeds cameraFeeds = null;
409d6878 18
fbc1210e 19 @SuppressWarnings("deprecation")
9ea6a533 20 private CameraFeeds(/* Joystick Button */) {
4dff9cc3 21
85c0135e
RH
22 usbCamName = intakeCam.getName();
23 axisCamName = climberCam.getName();
409d6878 24 server = CameraServer.getInstance();
85c0135e 25 climberCam = server.addAxisCamera(axisCamName, "10.35.1.11");
4dff9cc3
RH
26 intakeCam = server.startAutomaticCapture();
27 curCam = intakeCam;
9ea6a533 28 curCam = climberCam;
4dff9cc3
RH
29 usbCamName = intakeCam.getName();
30 axisCamName = climberCam.getName();
409d6878 31 }
7638f542 32
4bc0cb18 33 public static CameraFeeds getCameraFeeds() {
7638f542
RH
34 if (cameraFeeds == null) {
35 cameraFeeds = new CameraFeeds();
36 }
37 return cameraFeeds;
38
4bc0cb18 39 }
409d6878
ME
40
41 public void init() {
85c0135e 42 changeCam(intakeCam);
409d6878
ME
43 }
44
4dff9cc3 45 public void toggleCamera() {
9ea6a533 46 System.out.println("enter toggleCamer");
4dff9cc3 47 if (curCam.equals(intakeCam)) {
85c0135e 48 // changeCam(climberCam);
4dff9cc3 49 curCam = climberCam;
85c0135e
RH
50 // System.out.println("Switching to climber camera.");
51 } else if (curCam.equals(climberCam)) {
52 // changeCam(intakeCam);
4dff9cc3 53 curCam = intakeCam;
85c0135e 54 // System.out.println("Switching to intake camera.");
4dff9cc3 55 }
85c0135e 56 changeCam(curCam);
409d6878
ME
57 }
58
59 /**
50a075d8 60 *
4bc0cb18 61 * Change the camera to get image from to a different one
409d6878 62 *
7638f542 63 * newId for camera
409d6878 64 */
4dff9cc3 65 public void changeCam(VideoSource cam) {
85c0135e
RH
66 server.removeCamera(curCam.getName());
67 if (curCam.equals(intakeCam)) {
68 server.addCamera(intakeCam);
69 System.out.println("Switching to climber camera.");
70 return;
71 }
72
73 if (curCam.equals(climberCam)) {
74 server.addAxisCamera(axisCamName, "10.35.1.11");
75 // server.addCamera(climberCam);
76 System.out.println("Switching to intake camera.");
77 return;
78 }
9ea6a533
ME
79 System.out.println("change camera");
80 server.removeCamera(curCam.getName());
4dff9cc3 81 server.addCamera(cam);
409d6878 82 }
9ea6a533
ME
83
84 public String getCurrentCamName() {
85 return curCam.getName();
409d6878
ME
86 }
87}