f04abbeed6bad84533cf633c1dc9ad29e1963456
[3501/2017steamworks] / src / org / usfirst / frc / team3501 / robot / CameraFeeds.java
1 package org.usfirst.frc.team3501.robot;
2
3 import edu.wpi.cscore.UsbCamera;
4 import edu.wpi.first.wpilibj.CameraServer;
5
6 public class CameraFeeds {
7 // private final int intakeCam;
8 // private final int climberCam;
9 private String curCam;
10 private CameraServer server;
11 private static UsbCamera intakeCam;
12 private static UsbCamera climberCam;
13 private static String intakeCamName;
14 private static String climberCamName;
15 private static CameraFeeds cameraFeeds = null;
16
17 @SuppressWarnings("deprecation")
18 private CameraFeeds(/* Joystick Button */) {
19 System.out.println("Enter CameraFeeds constructor");
20 server = CameraServer.getInstance();
21 climberCam = server.startAutomaticCapture();
22 intakeCam = server.startAutomaticCapture();
23 intakeCamName = intakeCam.getName();
24 climberCamName = climberCam.getName();
25 curCam = "intakeCam";
26 changeCam();
27 System.out.println("Leaving CameraFeeds constructor");
28 }
29
30 public static CameraFeeds getCameraFeeds() {
31 System.out.println("Enter CameraFeeds.getCameraFeeds");
32 if (cameraFeeds == null) {
33 cameraFeeds = new CameraFeeds();
34 }
35 System.out.println("Leaving CameraFeeds.getCameraFeeds");
36 return cameraFeeds;
37 }
38
39 public void init() {
40 System.out.println("Initializing...");
41 }
42
43 public void toggleCamera() {
44 changeCam();
45 }
46
47 /**
48 *
49 * Change the camera to get image from to a different one
50 *
51 * newId for camera
52 */
53 public void changeCam() {
54 System.out.println("enter toggleCamera");
55 if (curCam == "intakeCam") {
56 server.getVideo(climberCamName);
57 curCam = "climberCam";
58 System.out.println("Switching to climber camera, curCam = " + curCam);
59 } else if (curCam == "climberCam") {
60 server.getVideo(intakeCamName);
61 curCam = "intakeCam";
62 System.out.println("Switching to intake camera, curCam = " + curCam);
63 }
64 }
65 }