2019-09-19 14:07:42 -04:00
|
|
|
package com.chameleonvision.vision.camera;
|
|
|
|
|
|
|
|
|
|
import edu.wpi.cscore.VideoMode;
|
|
|
|
|
|
2019-09-21 13:05:00 -04:00
|
|
|
@SuppressWarnings("WeakerAccess")
|
2019-09-19 14:07:42 -04:00
|
|
|
public class CamVideoMode {
|
2019-09-22 02:49:30 -04:00
|
|
|
public final int fps;
|
|
|
|
|
public final int width;
|
|
|
|
|
public final int height;
|
|
|
|
|
public final String pixel_format;
|
|
|
|
|
|
|
|
|
|
public CamVideoMode(VideoMode videoMode) {
|
|
|
|
|
fps = videoMode.fps;
|
|
|
|
|
width = videoMode.width;
|
|
|
|
|
height = videoMode.height;
|
|
|
|
|
pixel_format = videoMode.pixelFormat.name();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public VideoMode.PixelFormat getActualPixelFormat() {
|
|
|
|
|
return VideoMode.PixelFormat.valueOf(pixel_format);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public boolean isEqualToVideoMode(VideoMode videoMode) {
|
|
|
|
|
return videoMode.fps == fps && videoMode.width == width && videoMode.height == height && videoMode.pixelFormat == getActualPixelFormat();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public boolean equals(VideoMode vm) {
|
|
|
|
|
return vm.fps == fps &&
|
|
|
|
|
vm.width == width &&
|
|
|
|
|
vm.height == height &&
|
|
|
|
|
vm.pixelFormat == getActualPixelFormat();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public boolean equals(Object obj) {
|
|
|
|
|
if (obj == this) {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (obj instanceof CamVideoMode) {
|
|
|
|
|
var cvm = (CamVideoMode) obj;
|
|
|
|
|
return cvm.fps == fps &&
|
|
|
|
|
cvm.width == width &&
|
|
|
|
|
cvm.height == height &&
|
|
|
|
|
cvm.pixel_format.equals(pixel_format);
|
|
|
|
|
} else if (obj instanceof VideoMode) {
|
|
|
|
|
var vm = (VideoMode) obj;
|
|
|
|
|
return equals(vm);
|
|
|
|
|
} else {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
}
|
2019-09-19 14:07:42 -04:00
|
|
|
}
|