VLC  4.0.0-dev
Data Structures | Typedefs | Enumerations | Functions
vlc_opengl.h File Reference

This file defines GL structures and functions. More...

Include dependency graph for vlc_opengl.h:

Go to the source code of this file.

Data Structures

struct  vlc_gl_t
 

Typedefs

typedef struct vlc_gl_t vlc_gl_t
 A VLC GL context (and its underlying surface) More...
 

Enumerations

enum  vlc_gl_api_type { VLC_OPENGL , VLC_OPENGL_ES2 }
 

Functions

vlc_gl_tvlc_gl_Create (const struct vout_display_cfg *cfg, unsigned flags, const char *name)
 Creates an OpenGL context (and its underlying surface). More...
 
vlc_gl_tvlc_gl_CreateOffscreen (vlc_object_t *parent, struct vlc_decoder_device *device, unsigned width, unsigned height, unsigned flags, const char *name)
 
void vlc_gl_Release (vlc_gl_t *)
 
void vlc_gl_Hold (vlc_gl_t *)
 
static int vlc_gl_MakeCurrent (vlc_gl_t *gl)
 
static void vlc_gl_ReleaseCurrent (vlc_gl_t *gl)
 
static void vlc_gl_Resize (vlc_gl_t *gl, unsigned w, unsigned h)
 
static void vlc_gl_Swap (vlc_gl_t *gl)
 
static picture_tvlc_gl_SwapOffscreen (vlc_gl_t *gl)
 
static void * vlc_gl_GetProcAddress (vlc_gl_t *gl, const char *name)
 
vlc_gl_tvlc_gl_surface_Create (vlc_object_t *, const struct vout_window_cfg_t *, struct vout_window_t **)
 
bool vlc_gl_surface_CheckSize (vlc_gl_t *, unsigned *w, unsigned *h)
 
void vlc_gl_surface_Destroy (vlc_gl_t *)
 
static bool vlc_gl_StrHasToken (const char *apis, const char *api)
 

Detailed Description

This file defines GL structures and functions.

Typedef Documentation

◆ vlc_gl_t

typedef struct vlc_gl_t vlc_gl_t

A VLC GL context (and its underlying surface)

Enumeration Type Documentation

◆ vlc_gl_api_type

Enumerator
VLC_OPENGL 
VLC_OPENGL_ES2 

Function Documentation

◆ vlc_gl_Create()

vlc_gl_t* vlc_gl_Create ( const struct vout_display_cfg cfg,
unsigned  flags,
const char *  name 
)

Creates an OpenGL context (and its underlying surface).

Note
In most cases, you should vlc_gl_MakeCurrent() afterward.
Parameters
cfginitial configuration (including window to use as OpenGL surface)
flagsOpenGL context type
namemodule name (or NULL for auto)
Returns
a new context, or NULL on failure

◆ vlc_gl_CreateOffscreen()

vlc_gl_t* vlc_gl_CreateOffscreen ( vlc_object_t parent,
struct vlc_decoder_device device,
unsigned  width,
unsigned  height,
unsigned  flags,
const char *  name 
)

◆ vlc_gl_GetProcAddress()

static void* vlc_gl_GetProcAddress ( vlc_gl_t gl,
const char *  name 
)
inlinestatic

References vlc_gl_t::get_proc_address, and name.

◆ vlc_gl_Hold()

void vlc_gl_Hold ( vlc_gl_t gl)

◆ vlc_gl_MakeCurrent()

static int vlc_gl_MakeCurrent ( vlc_gl_t gl)
inlinestatic

◆ vlc_gl_Release()

void vlc_gl_Release ( vlc_gl_t gl)

◆ vlc_gl_ReleaseCurrent()

static void vlc_gl_ReleaseCurrent ( vlc_gl_t gl)
inlinestatic

◆ vlc_gl_Resize()

static void vlc_gl_Resize ( vlc_gl_t gl,
unsigned  w,
unsigned  h 
)
inlinestatic

References vlc_gl_t::resize.

Referenced by vlc_gl_surface_CheckSize().

◆ vlc_gl_StrHasToken()

static bool vlc_gl_StrHasToken ( const char *  apis,
const char *  api 
)
inlinestatic

◆ vlc_gl_surface_CheckSize()

bool vlc_gl_surface_CheckSize ( vlc_gl_t ,
unsigned *  w,
unsigned *  h 
)

◆ vlc_gl_surface_Create()

vlc_gl_t* vlc_gl_surface_Create ( vlc_object_t ,
const struct vout_window_cfg_t ,
struct vout_window_t **   
)

◆ vlc_gl_surface_Destroy()

void vlc_gl_surface_Destroy ( vlc_gl_t gl)

◆ vlc_gl_Swap()

static void vlc_gl_Swap ( vlc_gl_t gl)
inlinestatic

References vlc_gl_t::swap.

◆ vlc_gl_SwapOffscreen()

static picture_t* vlc_gl_SwapOffscreen ( vlc_gl_t gl)
inlinestatic