11#include <opencv2/core/mat.hpp>
43 this->pixelFormat = pixelFormat;
57 uint64_t
GrabFrame(cv::Mat& image,
double timeout = 0.225) {
103 rawFrame.pixelFormat =
static_cast<int>(pixelFormat);
110 cv::Mat{rawFrame.height, rawFrame.width,
112 rawFrame.data,
static_cast<size_t>(rawFrame.stride)};
131 rawFrame.pixelFormat =
static_cast<int>(pixelFormat);
137 cv::Mat{rawFrame.height, rawFrame.width,
139 rawFrame.data,
static_cast<size_t>(rawFrame.stride)};
162 double timeout = 0.225) {
166 rawFrame.pixelFormat =
static_cast<int>(pixelFormat);
173 cv::Mat{rawFrame.height, rawFrame.width,
175 rawFrame.data,
static_cast<size_t>(rawFrame.stride)};
187 return rawFrame.timestamp;
203 switch (pixelFormat) {
WPI_TimestampSource
Timestamp metadata.
Definition RawFrame.h:36
@ name
Definition base.h:690
uint64_t GrabFrameDirect(cv::Mat &image, double timeout=0.225)
Wait for the next frame and get the image.
Definition CvSink.hpp:99
CvSink(const CvSink &sink)
Definition CvSink.hpp:29
CvSink(std::string_view name, wpi::util::PixelFormat pixelFormat=wpi::util::PixelFormat::kBGR)
Create a sink for accepting OpenCV images.
Definition CvSink.hpp:40
WPI_TimestampSource LastFrameTimeSource()
Get the time source for the timestamp the last frame was grabbed at.
Definition CvSink.hpp:196
uint64_t GrabFrameNoTimeoutDirect(cv::Mat &image)
Wait for the next frame and get the image.
Definition CvSink.hpp:127
uint64_t LastFrameTime()
Get the last time a frame was grabbed.
Definition CvSink.hpp:186
uint64_t GrabFrameDirectLastTime(cv::Mat &image, uint64_t lastFrameTime, double timeout=0.225)
Wait for the next frame and get the image.
Definition CvSink.hpp:161
uint64_t GrabFrameNoTimeout(cv::Mat &image)
Wait for the next frame and get the image.
Definition CvSink.hpp:77
uint64_t GrabFrame(cv::Mat &image, double timeout=0.225)
Wait for the next frame and get the image.
Definition CvSink.hpp:57
CS_Sink m_handle
Definition VideoSink.hpp:229
CS_Status m_status
Definition VideoSink.hpp:228
@ CS_OK
Definition cscore_c.h:56
uint64_t GrabSinkFrameTimeout(CS_Sink sink, WPI_RawFrame &image, double timeout, CS_Status *status)
CS_Sink CreateRawSink(std::string_view name, bool isCv, CS_Status *status)
uint64_t GrabSinkFrame(CS_Sink sink, WPI_RawFrame &image, CS_Status *status)
uint64_t GrabSinkFrameTimeoutLastTime(CS_Sink sink, WPI_RawFrame &image, double timeout, uint64_t lastFrameTime, CS_Status *status)
CameraServer (cscore) namespace.
Definition CvSource.hpp:15
PixelFormat
Pixel formats.
Definition PixelFormat.hpp:14
@ kBGR
Definition PixelFormat.hpp:19
Definition RawFrame.hpp:20