24#ifndef VLC_OPENGL_FILTER_H
25#define VLC_OPENGL_FILTER_H
53 const struct vlc_gl_format *glfmt,
56#define set_callback_opengl_filter(open) \
58 vlc_gl_filter_open_fn *fn = open; \
115 const struct vlc_gl_api *
api;
Definition: vlc_configuration.h:319
Internal module descriptor.
Definition: modules.h:76
Definition: vlc_opengl_filter.h:64
int(* draw)(struct vlc_gl_filter *filter, const struct vlc_gl_picture *pic, const struct vlc_gl_input_meta *meta)
Draw the result of the filter to the current framebuffer.
Definition: vlc_opengl_filter.h:68
int(* request_output_size)(struct vlc_gl_filter *filter, struct vlc_gl_tex_size *size_out, struct vlc_gl_tex_size *optimal_in)
Request a (responsive) filter to adapt its output size (optional)
Definition: vlc_opengl_filter.h:94
void(* on_input_size_change)(struct vlc_gl_filter *filter, const struct vlc_gl_tex_size *size)
Callback to notify input size changes.
Definition: vlc_opengl_filter.h:104
void(* close)(struct vlc_gl_filter *filter)
Free filter resources.
Definition: vlc_opengl_filter.h:74
OpenGL filter, in charge of a rendering pass.
Definition: vlc_opengl_filter.h:111
module_t * module
Definition: vlc_opengl_filter.h:113
vlc_object_t obj
Definition: vlc_opengl_filter.h:112
const struct vlc_gl_filter_ops * ops
Definition: vlc_opengl_filter.h:154
const struct vlc_gl_format * glfmt_in
Definition: vlc_opengl_filter.h:117
struct vlc_gl_filter::@274 config
struct vlc_gl_t * gl
Definition: vlc_opengl_filter.h:115
bool filter_planes
An OpenGL filter may either operate on the input RGBA picture, or on individual input planes (without...
Definition: vlc_opengl_filter.h:128
unsigned msaa_level
Request MSAA level.
Definition: vlc_opengl_filter.h:151
void * sys
Definition: vlc_opengl_filter.h:155
bool blend
A blend filter draws over the input picture (without reading it).
Definition: vlc_opengl_filter.h:137
const struct vlc_gl_api * api
Definition: vlc_opengl_filter.h:116
Definition: vlc_opengl.h:98
Definition: vlc_opengl_filter.h:40
unsigned height
Definition: vlc_opengl_filter.h:42
unsigned width
Definition: vlc_opengl_filter.h:41
VLC object common members.
Definition: vlc_objects.h:45
Ancillary definition and functions.
This file is a collection of common definitions and types.
int vlc_gl_filter_open_fn(struct vlc_gl_filter *filter, const config_chain_t *config, const struct vlc_gl_format *glfmt, struct vlc_gl_tex_size *size_out)
Definition: vlc_opengl_filter.h:52
int64_t vlc_tick_t
High precision date or time interval.
Definition: vlc_tick.h:45