JeVois
1.21
JeVois Smart Embedded Machine Vision Toolkit
|
|
#include <jevois/GPU/VideoDisplayBackend.H>
Backend for VideoDisplay on JeVois-Pro.
This abstract base class provides an interface used by VideoDisplayGL. Derived implementations are available for X11+OpenGL-ES 3.2 (to be used on JeVois-Pro host) and Mali framebuffer + OpenGL-ES 3.2 (to be used on JeVois-Pro platform).
Definition at line 30 of file VideoDisplayBackend.H.
Public Member Functions | |
VideoDisplayBackend () | |
Constructor. | |
virtual | ~VideoDisplayBackend () |
Virtual destructor for safe inheritance, free resources. | |
virtual void | init (unsigned short w, unsigned short h, bool fullscreen=false)=0 |
Initialize the underlying engine that will process events, create windows, etc. | |
virtual bool | pollEvents (bool &shouldclose)=0 |
Poll events such as mouse movements, buttons, keyboard, joystick, and pass to VideoDisplay. | |
virtual void | newFrame () |
Start a new frame and clear the window/framebuffer. | |
virtual void | render () |
Render the VideoDisplay graphics. | |
virtual void | getWindowSize (unsigned short &w, unsigned short &h) const |
EGLDisplay | getDisplay () const |
Access our display. | |
Protected Member Functions | |
virtual void | init (unsigned short w, unsigned short h, EGLNativeWindowType win) |
Initialize the underlying engine that will process events, create windows, etc. | |
virtual void | uninit () |
Un-initialize the underlying engine, close windows, etc. | |
Protected Attributes | |
std::string const | itsName |
EGLDisplay | itsDisplay = EGL_NO_DISPLAY |
EGLConfig | itsConfig = 0 |
EGLContext | itsContext = EGL_NO_CONTEXT |
EGLSurface | itsSurface = 0 |
jevois::VideoDisplayBackend::VideoDisplayBackend | ( | ) |
Constructor.
Definition at line 46 of file VideoDisplayBackend.C.
|
virtual |
Virtual destructor for safe inheritance, free resources.
Definition at line 50 of file VideoDisplayBackend.C.
EGLDisplay jevois::VideoDisplayBackend::getDisplay | ( | ) | const |
Access our display.
May return nullptr if init() has not yet been called.
Definition at line 259 of file VideoDisplayBackend.C.
|
virtual |
Returns 0,0 if display has not been initialized.
Definition at line 243 of file VideoDisplayBackend.C.
|
pure virtual |
Initialize the underlying engine that will process events, create windows, etc.
The init starts with the given initial framebuffer size. Note that on MALI, fullscreen parameter is ignored and we always run full-screen.
Implemented in jevois::ImGuiBackendMALI, jevois::VideoDisplayBackendMALI, and jevois::ImGuiBackend.
|
protectedvirtual |
Initialize the underlying engine that will process events, create windows, etc.
The init starts with the given initial window/framebuffer size. In the base class, we only initialize OpenGL. Derived classes should first create a window or framebuffer as needed.
Reimplemented in jevois::ImGuiBackend.
Definition at line 57 of file VideoDisplayBackend.C.
|
virtual |
Start a new frame and clear the window/framebuffer.
Reimplemented in jevois::ImGuiBackendMALI.
Definition at line 223 of file VideoDisplayBackend.C.
Referenced by jevois::ImGuiBackendMALI::newFrame().
|
pure virtual |
Poll events such as mouse movements, buttons, keyboard, joystick, and pass to VideoDisplay.
Returns true if some events were received, which can be used to turn on mouse pointer and GUI.
Implemented in jevois::ImGuiBackendMALI, and jevois::VideoDisplayBackendMALI.
|
virtual |
Render the VideoDisplay graphics.
Reimplemented in jevois::ImGuiBackendMALI.
Definition at line 236 of file VideoDisplayBackend.C.
References GL_CHECK_BOOL.
Referenced by jevois::ImGuiBackendMALI::render().
|
protectedvirtual |
Un-initialize the underlying engine, close windows, etc.
In the base class, we only close OpenGL.
Definition at line 208 of file VideoDisplayBackend.C.
|
protected |
Definition at line 74 of file VideoDisplayBackend.H.
|
protected |
Definition at line 75 of file VideoDisplayBackend.H.
|
protected |
Definition at line 73 of file VideoDisplayBackend.H.
|
protected |
Definition at line 72 of file VideoDisplayBackend.H.
|
protected |
Definition at line 76 of file VideoDisplayBackend.H.