JeVois Smart Embedded Machine Vision Toolkit
Exception-safe wrapper around a raw camera input frame.
This wrapper operates much like std:future in standard C++11. Users can get the next image captured by the camera by calling get(), which may block if the capture is not complete yet, or may throw if the capture fails for some reason (e.g., the camera is not streaming). The image size and pixel type are as defined by the current VideoMapping, camera section. In addition, a done() function is provided which users may use as soon as they are finished with the pixel data in the image obtained via get(), to allow the camera driver to setup the underlying memory buffer again for capture. If done() has not been called by the time the InputFrame is destroyed, it will be called automatically, if get() had been called. It may in some cases improve your frame rate to call done() manually as early as possible instead of letting the InputFrame destructor do it.
InputFrame implements a zero-copy, zero-wait access to input video frames, that is:
|InputFrame (InputFrame &&other)=default|
|Move constructor. More...|
|RawImage const &||get (bool casync=false) const|
|Get the next captured camera image. More...|
|void||done () const|
|Indicate that user processing is done with the image previously obtained via get() More...|
|Destructor, returns the buffers to the driver as needed. More...|
Indicate that user processing is done with the image previously obtained via get()
|jevois::RawImage const & jevois::InputFrame::get||(||bool||casync = ||)||const|