GPAC
Open Source Multimedia Framework. For more information, check out http://gpac.wp.mines-telecom.fr
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups
texturing_gl.c File Reference
#include "texturing.h"
#include "visual_manager.h"
#include "nodes_stacks.h"
#include "gl_inc.h"
+ Include dependency graph for texturing_gl.c:

Data Structures

struct  __texture_wrapper
 

Macros

#define GLTEXENV   glTexEnvf
 
#define GLTEXPARAM   glTexParameteri
 
#define TexEnvType   Float
 

Enumerations

enum  {
  TX_NEEDS_RASTER_LOAD = (1<<1), TX_NEEDS_HW_LOAD = (1<<2), TX_MUST_SCALE = (1<<3), TX_IS_POW2 = (1<<4),
  TX_IS_RECT = (1<<5), TX_EMULE_POW2 = (1<<6), TX_EMULE_FIRST_LOAD = (1<<7), TX_IS_FLIPPED = (1<<8)
}
 

Functions

GF_Err gf_sc_texture_allocate (GF_TextureHandler *txh)
 
void gf_sc_texture_release (GF_TextureHandler *txh)
 
GF_Err gf_sc_texture_set_data (GF_TextureHandler *txh)
 
void gf_sc_texture_reset (GF_TextureHandler *txh)
 
void gf_sc_texture_set_blend_mode (GF_TextureHandler *txh, u32 mode)
 
void tx_bind_with_mode (GF_TextureHandler *txh, Bool transparent, u32 blend_mode, Bool no_bind)
 
void tx_bind (GF_TextureHandler *txh)
 
void gf_sc_texture_disable (GF_TextureHandler *txh)
 
Bool tx_can_use_rect_ext (GF_Compositor *compositor, GF_TextureHandler *txh)
 
static Bool tx_setup_format (GF_TextureHandler *txh)
 
char * gf_sc_texture_get_data (GF_TextureHandler *txh, u32 *pix_format)
 
void txh_unpack_yuv (GF_TextureHandler *txh)
 
Bool gf_sc_texture_convert (GF_TextureHandler *txh)
 
static void do_tex_image_2d (GF_TextureHandler *txh, GLint tx_mode, Bool first_load, u8 *data, u32 stride, u32 w, u32 h)
 
Bool gf_sc_texture_push_image (GF_TextureHandler *txh, Bool generate_mipmaps, Bool for2d)
 
static Bool tx_set_image (GF_TextureHandler *txh, Bool generate_mipmaps)
 
void gf_sc_copy_to_texture (GF_TextureHandler *txh)
 
void gf_sc_copy_to_stencil (GF_TextureHandler *txh)
 
Bool gf_sc_texture_get_transform (GF_TextureHandler *txh, GF_Node *tx_transform, GF_Matrix *mx, Bool for_picking)
 
static Bool gf_sc_texture_enable_matte_texture (GF_Node *n)
 
Bool gf_sc_texture_is_transparent (GF_TextureHandler *txh)
 
u32 gf_sc_texture_enable_ex (GF_TextureHandler *txh, GF_Node *tx_transform, GF_Rect *bounds)
 
u32 gf_sc_texture_enable (GF_TextureHandler *txh, GF_Node *tx_transform)
 
Bool gf_sc_texture_needs_reload (GF_TextureHandler *txh)
 
GF_STENCIL gf_sc_texture_get_stencil (GF_TextureHandler *txh)
 
void gf_sc_texture_set_stencil (GF_TextureHandler *txh, GF_STENCIL stencil)
 

Data Structure Documentation

struct __texture_wrapper
+ Collaboration diagram for __texture_wrapper:
Data Fields
u32 flags
GF_STENCIL tx_raster
u32 id
u32 blend_mode
u32 rescale_width
u32 rescale_height
char * scale_data
char * conv_data
Fixed conv_wscale
Fixed conv_hscale
u32 conv_format
u32 conv_w
u32 conv_h
u32 nb_comp
u32 gl_format
u32 gl_type
u32 gl_dtype
Bool yuv_shader
u32 v_id
u32 u_id
char * depth_data

Macro Definition Documentation

#define GLTEXENV   glTexEnvf
#define GLTEXPARAM   glTexParameteri
#define TexEnvType   Float

Enumeration Type Documentation

anonymous enum
Enumerator
TX_NEEDS_RASTER_LOAD 
TX_NEEDS_HW_LOAD 
TX_MUST_SCALE 
TX_IS_POW2 
TX_IS_RECT 
TX_EMULE_POW2 
TX_EMULE_FIRST_LOAD 
TX_IS_FLIPPED 

Function Documentation

GF_Err gf_sc_texture_allocate ( GF_TextureHandler txh)

+ Here is the caller graph for this function:

void gf_sc_texture_release ( GF_TextureHandler txh)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_sc_texture_set_data ( GF_TextureHandler txh)

+ Here is the caller graph for this function:

void gf_sc_texture_reset ( GF_TextureHandler txh)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sc_texture_set_blend_mode ( GF_TextureHandler txh,
u32  mode 
)

+ Here is the caller graph for this function:

void tx_bind_with_mode ( GF_TextureHandler txh,
Bool  transparent,
u32  blend_mode,
Bool  no_bind 
)

+ Here is the caller graph for this function:

void tx_bind ( GF_TextureHandler txh)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sc_texture_disable ( GF_TextureHandler txh)

+ Here is the caller graph for this function:

Bool tx_can_use_rect_ext ( GF_Compositor *  compositor,
GF_TextureHandler txh 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static Bool tx_setup_format ( GF_TextureHandler txh)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

char* gf_sc_texture_get_data ( GF_TextureHandler txh,
u32 pix_format 
)

+ Here is the caller graph for this function:

void txh_unpack_yuv ( GF_TextureHandler txh)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_sc_texture_convert ( GF_TextureHandler txh)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void do_tex_image_2d ( GF_TextureHandler txh,
GLint  tx_mode,
Bool  first_load,
u8 data,
u32  stride,
u32  w,
u32  h 
)
static

+ Here is the caller graph for this function:

Bool gf_sc_texture_push_image ( GF_TextureHandler txh,
Bool  generate_mipmaps,
Bool  for2d 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static Bool tx_set_image ( GF_TextureHandler txh,
Bool  generate_mipmaps 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sc_copy_to_texture ( GF_TextureHandler txh)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_sc_copy_to_stencil ( GF_TextureHandler txh)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_sc_texture_get_transform ( GF_TextureHandler txh,
GF_Node tx_transform,
GF_Matrix mx,
Bool  for_picking 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static Bool gf_sc_texture_enable_matte_texture ( GF_Node n)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_sc_texture_is_transparent ( GF_TextureHandler txh)

+ Here is the caller graph for this function:

u32 gf_sc_texture_enable_ex ( GF_TextureHandler txh,
GF_Node tx_transform,
GF_Rect bounds 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_sc_texture_enable ( GF_TextureHandler txh,
GF_Node tx_transform 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Bool gf_sc_texture_needs_reload ( GF_TextureHandler txh)

+ Here is the caller graph for this function:

GF_STENCIL gf_sc_texture_get_stencil ( GF_TextureHandler txh)

+ Here is the caller graph for this function:

void gf_sc_texture_set_stencil ( GF_TextureHandler txh,
GF_STENCIL  stencil 
)

+ Here is the caller graph for this function: