lv_opengl_shader_internal.h

API reference for lv_opengl_shader_internal.h

Report on GitHub

Functions

lv_opengl_shader_program_get_id

 
GLuint lv_opengl_shader_program_get_id(lv_opengl_shader_program_t *program)
Parameters

lv_opengl_shader_manager_get_texture

 
GLuint lv_opengl_shader_manager_get_texture(lv_opengl_shader_manager_t *manager, uint32_t hash)
Parameters

lv_opengl_shader_manager_get_program

 
lv_opengl_shader_program_t * lv_opengl_shader_manager_get_program(lv_opengl_shader_manager_t *manager, uint32_t fragment_shader_hash, uint32_t vertex_shader_hash)
Parameters
NameType
managerlv_opengl_shader_manager_t *
fragment_shader_hashuint32_t
vertex_shader_hashuint32_t

Enums

lv_opengl_glsl_version_t

Name
LV_OPENGL_GLSL_VERSION_300ES
LV_OPENGL_GLSL_VERSION_330
LV_OPENGL_GLSL_VERSION_100
LV_OPENGL_GLSL_VERSION_LAST
Used by 7 functions
  • lv_opengles_shader_get_vertex — param version
  • lv_opengles_shader_get_fragment — param version
  • lv_opengles_shader_get_source — param version
  • lv_opengl_shader_manager_select_shader — param glsl_version
  • lv_opengles_glsl_version_to_string — param version
  • lv_opengl_shader_manager_compile_program — param version
  • lv_opengl_shader_manager_compile_program_best_version — param versions

Structs

struct

lv_opengl_shader_t

MemberTypeDescription
nameconst char *
sourceconst char *
Used by 2 functions
  • lv_opengl_shader_manager_process_includes — param src_includes
  • lv_opengl_shader_manager_init — param sources
struct

lv_opengl_shader_portions_t

MemberTypeDescription
allconst lv_opengl_shader_t *
countuint32_t
Used by 3 functions
  • lv_opengles_shader_get_source — param portions
  • lv_gltf_view_shader_get_src — param shaders
  • lv_gltf_view_shader_get_env — param shaders
struct

lv_opengl_shader_define_t

MemberTypeDescription
nameconst char *
valueconst char *
value_allocatedbool
Used by 1 function
  • lv_opengl_shader_manager_select_shader — param permutations
struct

lv_opengl_shader_source_t

MemberTypeDescription
datalv_opengl_shader_t
src_allocatedbool
struct

lv_opengl_compiled_shader_t

MemberTypeDescription
hashuint32_t
idGLuint
struct

lv_opengl_shader_cache_struct

MemberTypeDescription
sources_maplv_rb_t
textures_maplv_rb_t
compiled_shaders_maplv_rb_t
programs_maplv_rb_t
bg_index_bufGLuint
bg_vertex_bufGLuint
bg_programGLuint
bg_vaoGLuint
struct

_lv_shader_program

struct

lv_opengl_shader_params_t

MemberTypeDescription
nameconst char *
permutationsconst lv_opengl_shader_define_t *
permutations_lensize_t
Used by 4 functions
  • lv_opengl_shader_manager_compile_program — param frag_shader
  • lv_opengl_shader_manager_compile_program — param vert_shader
  • lv_opengl_shader_manager_compile_program_best_version — param frag_shader
  • lv_opengl_shader_manager_compile_program_best_version — param vert_shader

Typedefs

lv_opengl_shader_manager_t

 
typedef struct lv_opengl_shader_cache_struct lv_opengl_shader_manager_t
Used by 8 functions
  • lv_opengl_shader_manager_init — param manager
  • lv_opengl_shader_manager_deinit — param manager
  • lv_opengl_shader_manager_get_texture — param manager
  • lv_opengl_shader_manager_store_texture — param manager
  • lv_opengl_shader_manager_select_shader — param shader
  • lv_opengl_shader_manager_get_program — param manager
  • lv_opengl_shader_manager_compile_program — param manager
  • lv_opengl_shader_manager_compile_program_best_version — param manager

lv_opengl_shader_program_update_uniformi_t

 
typedef void(* lv_opengl_shader_program_update_uniformi_t) (struct _lv_shader_program *, const char *, int)

lv_opengl_shader_program_update_uniformf_t

 
typedef void(* lv_opengl_shader_program_update_uniformf_t) (struct _lv_shader_program *, const char *, float)

lv_opengl_shader_program_t

 
typedef struct _lv_shader_program lv_opengl_shader_program_t
Used by 2 functions
  • lv_opengl_shader_program_destroy — param program
  • lv_opengl_shader_program_get_id — param program

Dependencies

How is this guide?

Last updated on

On this page