![]() |
UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
|
#include <cassert>#include <chrono>#include <condition_variable>#include <mutex>#include <queue>#include "debug.h"#include "host.h"#include "keyboard_control.h"#include "lib_common.h"#include "messaging.h"#include "module.h"#include "video.h"#include "video_display.h"#include "video_display/splashscreen.h"#include "opengl_utils.hpp"#include "opengl_panorama.hpp"#include "sdl_window.hpp"#include "utils/profile_timer.hpp"
Go to the source code of this file.
Classes | |
| struct | state_vr |
Macros | |
| #define | MAX_BUFFER_SIZE 1 |
| #define | MOD_NAME "[pano gl] " |
Functions | |
| static void | display_panogl_done (void *state) |
| static bool | display_panogl_get_property (void *state, int property, void *val, size_t *len) |
| static struct video_frame * | display_panogl_getf (void *state) |
| static void * | display_panogl_init (struct module *parent, const char *fmt, unsigned int flags) |
| static void | display_panogl_probe (struct device_info **available_cards, int *count, void(**deleter)(void *)) |
| static bool | display_panogl_putf (void *state, struct video_frame *frame, long long nonblock) |
| static bool | display_panogl_reconfigure (void *state, struct video_desc desc) |
| static void | display_panogl_run (void *state) |
| static void | draw (state_vr *s) |
| static void | handle_keyboard_event (state_vr *s, SDL_Event *event) |
| static void | handle_user_event (state_vr *s, SDL_Event *event) |
| static void | handle_window_event (state_vr *s, SDL_Event *event) |
| static void | redraw (state_vr *s, bool video_framerate_over_threshold=false, bool triggered_by_frame=false) |
| static Uint32 | redraw_callback (Uint32 interval, void *param) |
| REGISTER_MODULE (pano_gl, &display_panogl_info, LIBRARY_CLASS_VIDEO_DISPLAY, VIDEO_DISPLAY_ABI_VERSION) | |
Variables | |
| static const struct video_display_info | display_panogl_info |
Definition in file pano_gl.cpp.
| #define MAX_BUFFER_SIZE 1 |
Definition at line 64 of file pano_gl.cpp.
Referenced by display_panogl_putf().
| #define MOD_NAME "[pano gl] " |
Definition at line 65 of file pano_gl.cpp.
|
static |
Definition at line 258 of file pano_gl.cpp.
References state.
|
static |
Definition at line 317 of file pano_gl.cpp.
References codecs, DISPLAY_PROPERTY_BUF_PITCH, DISPLAY_PROPERTY_CODECS, DISPLAY_PROPERTY_RGB_SHIFT, DISPLAY_PROPERTY_SUPPORTED_IL_MODES, PanoramaScene::get_codecs(), len, PITCH_DEFAULT, PROGRESSIVE, property, state_vr::scene, state, and val.

|
static |
Definition at line 264 of file pano_gl.cpp.
References state_vr::current_desc, state_vr::free_frame_queue, state_vr::lock, state, vf_alloc_desc_data(), vf_free(), video_desc_eq(), and video_desc_from_frame().

|
static |
Definition at line 93 of file pano_gl.cpp.
References flags, fmt, parent, state_vr::sdl_frame_event, state_vr::sdl_redraw_event, and UNUSED.
|
static |
Definition at line 360 of file pano_gl.cpp.
References count, deleter, device_info::dev, name, and UNUSED.
|
static |
Definition at line 282 of file pano_gl.cpp.
References state_vr::buffered_frames_count, frame, state_vr::frame_consumed_cv, state_vr::lock, MAX_BUFFER_SIZE, nonblock, PROFILE_DETAIL, PROFILE_FUNC, PUTF_BLOCKING, PUTF_DISCARD, state_vr::sdl_frame_event, state, and vf_free().

|
static |
Definition at line 310 of file pano_gl.cpp.
References state_vr::current_desc, desc, and state.
|
static |
Definition at line 216 of file pano_gl.cpp.
References draw(), exit_uv(), PanoramaScene::fov, handle_keyboard_event(), handle_user_event(), handle_window_event(), redraw(), PanoramaScene::rotate(), state_vr::running, state_vr::scene, and state.

|
static |
Definition at line 104 of file pano_gl.cpp.
References Sdl_window::height, state_vr::last_frame, PROFILE_FUNC, PanoramaScene::render(), state_vr::scene, Sdl_window::sdl_window, Sdl_window::width, and state_vr::window.
Referenced by display_panogl_run(), handle_user_event(), and redraw().

|
static |
Definition at line 166 of file pano_gl.cpp.
References exit_uv(), state_vr::fs, redraw(), Sdl_window::sdl_window, and state_vr::window.
Referenced by display_panogl_run().

|
static |
Definition at line 183 of file pano_gl.cpp.
References state_vr::buffered_frames_count, draw(), video_frame::fps, frame, state_vr::frame_consumed_cv, state_vr::free_frame_queue, state_vr::lock, PanoramaScene::put_frame(), redraw(), state_vr::redraw_needed, state_vr::redraw_timer, state_vr::running, state_vr::scene, state_vr::sdl_frame_event, state_vr::sdl_redraw_event, state_vr::threshold_fps, and vf_recycle().
Referenced by display_panogl_run().

|
static |
Definition at line 157 of file pano_gl.cpp.
References Sdl_window::height, redraw(), Sdl_window::width, and state_vr::window.
Referenced by display_panogl_run().

|
static |
Definition at line 124 of file pano_gl.cpp.
References draw(), redraw_callback(), state_vr::redraw_needed, state_vr::redraw_timer, state_vr::sdl_redraw_event, and state_vr::threshold_fps.
Referenced by display_panogl_run(), handle_keyboard_event(), handle_user_event(), and handle_window_event().

|
static |
Definition at line 115 of file pano_gl.cpp.
References param.
Referenced by redraw().
| REGISTER_MODULE | ( | pano_gl | , |
| & | display_panogl_info, | ||
| LIBRARY_CLASS_VIDEO_DISPLAY | , | ||
| VIDEO_DISPLAY_ABI_VERSION | ) |
|
static |
Definition at line 369 of file pano_gl.cpp.