60#define set_callback_opengl_common(activate) \ 
   62        vlc_gl_activate activate__ = activate; \ 
   64        set_callback(activate) \ 
   67#define set_callback_opengl(activate, priority) \ 
   68    set_callback_opengl_common(activate) \ 
   69    set_capability("opengl", priority)
 
   71#define set_callback_opengl_offscreen(activate, priority) \ 
   72    set_callback_opengl_common(activate) \ 
   73    set_capability("opengl offscreen", priority)
 
   75#define set_callback_opengl_es2(activate, priority) \ 
   76    set_callback_opengl_common(activate) \ 
   77    set_capability("opengl es2", priority)
 
   79#define set_callback_opengl_es2_offscreen(activate, priority) \ 
   80    set_callback_opengl_common(activate) \ 
   81    set_capability("opengl es2 offscreen", priority)
 
   92    void*(*get_proc_address)(
vlc_gl_t *gl, 
const char *symbol);
 
  135                                unsigned flags, 
const char *
name,
 
  139                                         unsigned width, 
unsigned height,
 
  140                                         unsigned flags, 
const char *
name,
 
  204    size_t apilen = strlen(api);
 
  208        if (!strncmp(apis, api, apilen) && memchr(
" ", apis[apilen], 2))
 
  210        apis = strchr(apis, 
' ');
 
#define VLC_USED
Definition: fourcc_gen.c:32
 
#define VLC_API
Definition: fourcc_gen.c:31
 
uint32_t vlc_fourcc_t
Definition: fourcc_gen.c:33
 
const char name[16]
Definition: httpd.c:1281
 
Internal module descriptor.
Definition: modules.h:76
 
Video picture.
Definition: vlc_picture.h:130
 
Decoder context struct.
Definition: vlc_codec.h:604
 
Definition: vlc_opengl.h:54
 
bool need_alpha
Definition: vlc_opengl.h:55
 
Definition: vlc_opengl.h:85
 
void *(* get_proc_address)(vlc_gl_t *gl, const char *symbol)
Definition: vlc_opengl.h:93
 
void(* swap)(vlc_gl_t *)
Definition: vlc_opengl.h:87
 
picture_t *(* swap_offscreen)(vlc_gl_t *)
Definition: vlc_opengl.h:88
 
void(* resize)(vlc_gl_t *gl, unsigned width, unsigned height)
Definition: vlc_opengl.h:92
 
int(* make_current)(vlc_gl_t *gl)
Definition: vlc_opengl.h:90
 
void(* release_current)(vlc_gl_t *gl)
Definition: vlc_opengl.h:91
 
void(* close)(vlc_gl_t *gl)
Definition: vlc_opengl.h:94
 
Definition: vlc_opengl.h:98
 
vlc_fourcc_t offscreen_chroma_out
Definition: vlc_opengl.h:110
 
enum vlc_gl_api_type api_type
Definition: vlc_opengl.h:119
 
struct vlc_video_context * offscreen_vctx_out
Definition: vlc_opengl.h:111
 
void * sys
Definition: vlc_opengl.h:102
 
struct vlc_window * surface
Definition: vlc_opengl.h:107
 
struct vlc_decoder_device * device
Definition: vlc_opengl.h:104
 
bool offscreen_vflip
Definition: vlc_opengl.h:114
 
module_t * module
Definition: vlc_opengl.h:101
 
const struct vlc_gl_operations * ops
Definition: vlc_opengl.h:121
 
struct vlc_object_t obj
Definition: vlc_opengl.h:99
 
VLC object common members.
Definition: vlc_objects.h:45
 
Definition: decoder_device.c:97
 
Window (desired) configuration.
Definition: vlc_window.h:150
 
Window object.
Definition: vlc_window.h:372
 
User configuration for a video output display (vout_display_t)
Definition: vlc_vout_display.h:116
 
This file is a collection of common definitions and types.
 
static int vlc_gl_MakeCurrent(vlc_gl_t *gl)
Definition: vlc_opengl.h:146
 
static void vlc_gl_Swap(vlc_gl_t *gl)
Definition: vlc_opengl.h:162
 
static void vlc_gl_Resize(vlc_gl_t *gl, unsigned w, unsigned h)
Definition: vlc_opengl.h:156
 
vlc_gl_t * vlc_gl_surface_Create(vlc_object_t *, const struct vlc_window_cfg *, struct vlc_window **, const struct vlc_gl_cfg *)
 
static void vlc_gl_ReleaseCurrent(vlc_gl_t *gl)
Definition: vlc_opengl.h:151
 
static bool vlc_gl_StrHasToken(const char *apis, const char *api)
Definition: vlc_opengl.h:203
 
bool vlc_gl_surface_CheckSize(vlc_gl_t *, unsigned *w, unsigned *h)
 
static void * vlc_gl_GetProcAddress(vlc_gl_t *gl, const char *name)
Fetch a symbol or pointer function from the OpenGL implementation.
Definition: vlc_opengl.h:190
 
int(* vlc_gl_activate)(vlc_gl_t *, unsigned width, unsigned height, const struct vlc_gl_cfg *cfg)
Definition: vlc_opengl.h:58
 
void vlc_gl_surface_Destroy(vlc_gl_t *)
Definition: opengl.c:304
 
void vlc_gl_Delete(vlc_gl_t *)
Definition: opengl.c:174
 
vlc_gl_t * vlc_gl_Create(const struct vout_display_cfg *cfg, unsigned flags, const char *name, const struct vlc_gl_cfg *gl_cfg)
Creates an OpenGL context (and its underlying surface).
 
static picture_t * vlc_gl_SwapOffscreen(vlc_gl_t *gl)
Definition: vlc_opengl.h:167
 
vlc_gl_t * vlc_gl_CreateOffscreen(vlc_object_t *parent, struct vlc_decoder_device *device, unsigned width, unsigned height, unsigned flags, const char *name, const struct vlc_gl_cfg *gl_cfg)
Definition: opengl.c:113
 
vlc_gl_api_type
Definition: vlc_opengl.h:48
 
@ VLC_OPENGL
Definition: vlc_opengl.h:49
 
@ VLC_OPENGL_ES2
Definition: vlc_opengl.h:50