ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

glsl_shader.c File Reference
#include "config.h"
#include <limits.h>
#include <stdio.h>
#include "wined3d_private.h"

Go to the source code of this file.

Data Structures

struct  glsl_dst_param
struct  glsl_src_param
struct  glsl_sample_function
struct  constant_entry
struct  constant_heap
struct  shader_glsl_priv
struct  glsl_shader_prog_link
struct  glsl_program_key
struct  shader_glsl_ctx_priv
struct  glsl_ps_compiled_shader
struct  glsl_pshader_private
struct  glsl_vs_compiled_shader
struct  glsl_vshader_private

Defines

#define WINED3D_GLSL_SAMPLE_PROJECTED   0x1
#define WINED3D_GLSL_SAMPLE_RECT   0x2
#define WINED3D_GLSL_SAMPLE_LOD   0x4
#define WINED3D_GLSL_SAMPLE_GRAD   0x8
#define WINED3D_TO_STR(u)   case u: return #u

Enumerations

enum  heap_node_op { HEAP_NODE_TRAVERSE_LEFT, HEAP_NODE_TRAVERSE_RIGHT, HEAP_NODE_POP }

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (d3d_shader)
 WINE_DECLARE_DEBUG_CHANNEL (d3d_constants)
 WINE_DECLARE_DEBUG_CHANNEL (d3d_caps)
 WINE_DECLARE_DEBUG_CHANNEL (d3d)
static const chardebug_gl_shader_type (GLenum type)
static charget_info_log_line (char **ptr)
static void print_glsl_info_log (const struct wined3d_gl_info *gl_info, GLhandleARB obj)
static void shader_glsl_compile (const struct wined3d_gl_info *gl_info, GLhandleARB shader, const char *src)
static void shader_glsl_dump_program_source (const struct wined3d_gl_info *gl_info, GLhandleARB program)
static void shader_glsl_validate_link (const struct wined3d_gl_info *gl_info, GLhandleARB program)
static void shader_glsl_load_psamplers (const struct wined3d_gl_info *gl_info, const DWORD *tex_unit_map, GLhandleARB programId)
static void shader_glsl_load_vsamplers (const struct wined3d_gl_info *gl_info, const DWORD *tex_unit_map, GLhandleARB programId)
static void walk_constant_heap (const struct wined3d_gl_info *gl_info, const float *constants, const GLint *constant_locations, const struct constant_heap *heap, unsigned char *stack, DWORD version)
static void apply_clamped_constant (const struct wined3d_gl_info *gl_info, GLint location, const GLfloat *data)
static void walk_constant_heap_clamped (const struct wined3d_gl_info *gl_info, const float *constants, const GLint *constant_locations, const struct constant_heap *heap, unsigned char *stack, DWORD version)
static void shader_glsl_load_constantsF (const struct wined3d_shader *shader, const struct wined3d_gl_info *gl_info, const float *constants, const GLint *constant_locations, const struct constant_heap *heap, unsigned char *stack, UINT version)
static void shader_glsl_load_constantsI (const struct wined3d_shader *shader, const struct wined3d_gl_info *gl_info, const GLint locations[MAX_CONST_I], const int *constants, WORD constants_set)
static void shader_glsl_load_constantsB (const struct wined3d_shader *shader, const struct wined3d_gl_info *gl_info, GLhandleARB programId, const BOOL *constants, WORD constants_set)
static void reset_program_constant_version (struct wine_rb_entry *entry, void *context)
static void shader_glsl_load_np2fixup_constants (void *shader_priv, const struct wined3d_gl_info *gl_info, const struct wined3d_state *state)
static void shader_glsl_load_constants (const struct wined3d_context *context, char usePixelShader, char useVertexShader)
static void update_heap_entry (const struct constant_heap *heap, unsigned int idx, unsigned int heap_idx, DWORD new_version)
static void shader_glsl_update_float_vertex_constants (struct wined3d_device *device, UINT start, UINT count)
static void shader_glsl_update_float_pixel_constants (struct wined3d_device *device, UINT start, UINT count)
static unsigned int vec4_varyings (DWORD shader_major, const struct wined3d_gl_info *gl_info)
static void shader_generate_glsl_declarations (const struct wined3d_context *context, struct wined3d_shader_buffer *buffer, const struct wined3d_shader *shader, const struct wined3d_shader_reg_maps *reg_maps, const struct shader_glsl_ctx_priv *ctx_priv)
static void shader_glsl_add_src_param (const struct wined3d_shader_instruction *ins, const struct wined3d_shader_src_param *wined3d_src, DWORD mask, struct glsl_src_param *glsl_src)
static void shader_glsl_gen_modifier (enum wined3d_shader_src_modifier src_modifier, const char *in_reg, const char *in_regswizzle, char *out_str)
static void shader_glsl_get_register_name (const struct wined3d_shader_register *reg, char *register_name, BOOL *is_color, const struct wined3d_shader_instruction *ins)
static void shader_glsl_write_mask_to_str (DWORD write_mask, char *str)
static DWORD shader_glsl_get_write_mask (const struct wined3d_shader_dst_param *param, char *write_mask)
static unsigned int shader_glsl_get_write_mask_size (DWORD write_mask)
static void shader_glsl_swizzle_to_str (const DWORD swizzle, BOOL fixup, DWORD mask, char *str)
static void shader_glsl_get_swizzle (const struct wined3d_shader_src_param *param, BOOL fixup, DWORD mask, char *swizzle_str)
static DWORD shader_glsl_add_dst_param (const struct wined3d_shader_instruction *ins, const struct wined3d_shader_dst_param *wined3d_dst, struct glsl_dst_param *glsl_dst)
static DWORD shader_glsl_append_dst_ext (struct wined3d_shader_buffer *buffer, const struct wined3d_shader_instruction *ins, const struct wined3d_shader_dst_param *dst)
static DWORD shader_glsl_append_dst (struct wined3d_shader_buffer *buffer, const struct wined3d_shader_instruction *ins)
static void shader_glsl_add_instruction_modifiers (const struct wined3d_shader_instruction *ins)
static const charshader_glsl_get_rel_op (enum wined3d_shader_rel_op op)
static void shader_glsl_get_sample_function (const struct wined3d_shader_context *ctx, DWORD sampler_idx, DWORD flags, struct glsl_sample_function *sample_function)
static void shader_glsl_append_fixup_arg (char *arguments, const char *reg_name, BOOL sign_fixup, enum fixup_channel_source channel_source)
static void shader_glsl_color_correction (const struct wined3d_shader_instruction *ins, struct color_fixup_desc fixup)
static void PRINTF_ATTR (8, 9)
static void shader_glsl_arith (const struct wined3d_shader_instruction *ins)
static void shader_glsl_mov (const struct wined3d_shader_instruction *ins)
static void shader_glsl_dot (const struct wined3d_shader_instruction *ins)
static void shader_glsl_cross (const struct wined3d_shader_instruction *ins)
static void shader_glsl_pow (const struct wined3d_shader_instruction *ins)
static void shader_glsl_log (const struct wined3d_shader_instruction *ins)
static void shader_glsl_map2gl (const struct wined3d_shader_instruction *ins)
static void shader_glsl_nrm (const struct wined3d_shader_instruction *ins)
static void shader_glsl_expp (const struct wined3d_shader_instruction *ins)
static void shader_glsl_rcp (const struct wined3d_shader_instruction *ins)
static void shader_glsl_rsq (const struct wined3d_shader_instruction *ins)
static void shader_glsl_compare (const struct wined3d_shader_instruction *ins)
static void shader_glsl_cmp (const struct wined3d_shader_instruction *ins)
static void shader_glsl_cnd (const struct wined3d_shader_instruction *ins)
static void shader_glsl_mad (const struct wined3d_shader_instruction *ins)
static void shader_glsl_mnxn (const struct wined3d_shader_instruction *ins)
static void shader_glsl_lrp (const struct wined3d_shader_instruction *ins)
static void shader_glsl_lit (const struct wined3d_shader_instruction *ins)
static void shader_glsl_dst (const struct wined3d_shader_instruction *ins)
static void shader_glsl_sincos (const struct wined3d_shader_instruction *ins)
static void shader_glsl_sgn (const struct wined3d_shader_instruction *ins)
static void shader_glsl_loop (const struct wined3d_shader_instruction *ins)
static void shader_glsl_end (const struct wined3d_shader_instruction *ins)
static void shader_glsl_rep (const struct wined3d_shader_instruction *ins)
static void shader_glsl_if (const struct wined3d_shader_instruction *ins)
static void shader_glsl_ifc (const struct wined3d_shader_instruction *ins)
static void shader_glsl_else (const struct wined3d_shader_instruction *ins)
static void shader_glsl_break (const struct wined3d_shader_instruction *ins)
static void shader_glsl_breakc (const struct wined3d_shader_instruction *ins)
static void shader_glsl_label (const struct wined3d_shader_instruction *ins)
static void shader_glsl_call (const struct wined3d_shader_instruction *ins)
static void shader_glsl_callnz (const struct wined3d_shader_instruction *ins)
static void shader_glsl_ret (const struct wined3d_shader_instruction *ins)
static void shader_glsl_tex (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texldd (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texldl (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texcoord (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texdp3tex (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texdp3 (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texdepth (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texm3x2depth (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texm3x2pad (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texm3x3pad (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texm3x2tex (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texm3x3tex (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texm3x3 (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texm3x3spec (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texm3x3vspec (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texbem (const struct wined3d_shader_instruction *ins)
static void shader_glsl_bem (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texreg2ar (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texreg2gb (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texreg2rgb (const struct wined3d_shader_instruction *ins)
static void shader_glsl_texkill (const struct wined3d_shader_instruction *ins)
static void shader_glsl_dp2add (const struct wined3d_shader_instruction *ins)
static void shader_glsl_input_pack (const struct wined3d_shader *shader, struct wined3d_shader_buffer *buffer, const struct wined3d_shader_signature_element *input_signature, const struct wined3d_shader_reg_maps *reg_maps, enum vertexprocessing_mode vertexprocessing)
static void add_glsl_program_entry (struct shader_glsl_priv *priv, struct glsl_shader_prog_link *entry)
static struct
glsl_shader_prog_link
get_glsl_program_entry (const struct shader_glsl_priv *priv, const struct wined3d_shader *vshader, const struct wined3d_shader *pshader, const struct vs_compile_args *vs_args, const struct ps_compile_args *ps_args)
static void delete_glsl_program_entry (struct shader_glsl_priv *priv, const struct wined3d_gl_info *gl_info, struct glsl_shader_prog_link *entry)
static void handle_ps3_input (struct wined3d_shader_buffer *buffer, const struct wined3d_gl_info *gl_info, const DWORD *map, const struct wined3d_shader_signature_element *input_signature, const struct wined3d_shader_reg_maps *reg_maps_in, const struct wined3d_shader_signature_element *output_signature, const struct wined3d_shader_reg_maps *reg_maps_out)
static GLhandleARB generate_param_reorder_function (struct wined3d_shader_buffer *buffer, const struct wined3d_shader *vs, const struct wined3d_shader *ps, const struct wined3d_gl_info *gl_info)
static void hardcode_local_constants (const struct wined3d_shader *shader, const struct wined3d_gl_info *gl_info, GLhandleARB programId, char prefix)
static GLuint shader_glsl_generate_pshader (const struct wined3d_context *context, struct wined3d_shader_buffer *buffer, const struct wined3d_shader *shader, const struct ps_compile_args *args, struct ps_np2fixup_info *np2fixup_info)
static GLuint shader_glsl_generate_vshader (const struct wined3d_context *context, struct wined3d_shader_buffer *buffer, const struct wined3d_shader *shader, const struct vs_compile_args *args)
static GLhandleARB find_glsl_pshader (const struct wined3d_context *context, struct wined3d_shader_buffer *buffer, struct wined3d_shader *shader, const struct ps_compile_args *args, const struct ps_np2fixup_info **np2fixup_info)
static BOOL vs_args_equal (const struct vs_compile_args *stored, const struct vs_compile_args *new, const DWORD use_map)
static GLhandleARB find_glsl_vshader (const struct wined3d_context *context, struct wined3d_shader_buffer *buffer, struct wined3d_shader *shader, const struct vs_compile_args *args)
static void set_glsl_shader_program (const struct wined3d_context *context, struct wined3d_device *device, BOOL use_ps, BOOL use_vs)
static GLhandleARB create_glsl_blt_shader (const struct wined3d_gl_info *gl_info, enum tex_types tex_type, BOOL masked)
static void shader_glsl_select (const struct wined3d_context *context, BOOL usePS, BOOL useVS)
static void shader_glsl_select_depth_blt (void *shader_priv, const struct wined3d_gl_info *gl_info, enum tex_types tex_type, const SIZE *ds_mask_size)
static void shader_glsl_deselect_depth_blt (void *shader_priv, const struct wined3d_gl_info *gl_info)
static void shader_glsl_destroy (struct wined3d_shader *shader)
static int glsl_program_key_compare (const void *key, const struct wine_rb_entry *entry)
static BOOL constant_heap_init (struct constant_heap *heap, unsigned int constant_count)
static void constant_heap_free (struct constant_heap *heap)
static HRESULT shader_glsl_alloc (struct wined3d_device *device)
static void shader_glsl_free (struct wined3d_device *device)
static void shader_glsl_context_destroyed (void *shader_priv, const struct wined3d_context *context)
static void shader_glsl_get_caps (const struct wined3d_gl_info *gl_info, struct shader_caps *caps)
static BOOL shader_glsl_color_fixup_supported (struct color_fixup_desc fixup)
static void shader_glsl_handle_instruction (const struct wined3d_shader_instruction *ins)

Variables

static const char *const shift_glsl_tab []
static struct wine_rb_functions wined3d_glsl_program_rb_functions
static const SHADER_HANDLER shader_glsl_instruction_handler_table [WINED3DSIH_TABLE_SIZE]
struct wined3d_shader_backend_ops glsl_shader_backend

Generated on Mon May 28 2012 05:04:58 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.