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

texenvprogram.c File Reference
#include "glheader.h"
#include "macros.h"
#include "enums.h"
#include "shader/program.h"
#include "shader/prog_parameter.h"
#include "shader/prog_cache.h"
#include "shader/prog_instruction.h"
#include "shader/prog_print.h"
#include "shader/prog_statevars.h"
#include "shader/programopt.h"
#include "texenvprogram.h"

Go to the source code of this file.

Data Structures

struct  texenvprog_cache_item
struct  mode_opt
struct  state_key
struct  ureg
struct  texenv_fragment_program

Defines

#define MAX_INSTRUCTIONS   ((MAX_TEXTURE_COORD_UNITS * 4) + 12)
#define DISASSEM   (MESA_VERBOSE & VERBOSE_DISASSEM)
#define FOG_LINEAR   0
#define FOG_EXP   1
#define FOG_EXP2   2
#define FOG_UNKNOWN   3
#define OPR_SRC_COLOR   0
#define OPR_ONE_MINUS_SRC_COLOR   1
#define OPR_SRC_ALPHA   2
#define OPR_ONE_MINUS_SRC_ALPHA   3
#define OPR_ZERO   4
#define OPR_ONE   5
#define OPR_UNKNOWN   7
#define SRC_TEXTURE   0
#define SRC_TEXTURE0   1
#define SRC_TEXTURE1   2
#define SRC_TEXTURE2   3
#define SRC_TEXTURE3   4
#define SRC_TEXTURE4   5
#define SRC_TEXTURE5   6
#define SRC_TEXTURE6   7
#define SRC_TEXTURE7   8
#define SRC_CONSTANT   9
#define SRC_PRIMARY_COLOR   10
#define SRC_PREVIOUS   11
#define SRC_UNKNOWN   15
#define MODE_REPLACE   0
#define MODE_MODULATE   1
#define MODE_ADD   2
#define MODE_ADD_SIGNED   3
#define MODE_INTERPOLATE   4
#define MODE_SUBTRACT   5
#define MODE_DOT3_RGB   6
#define MODE_DOT3_RGB_EXT   7
#define MODE_DOT3_RGBA   8
#define MODE_DOT3_RGBA_EXT   9
#define MODE_MODULATE_ADD_ATI   10
#define MODE_MODULATE_SIGNED_ADD_ATI   11
#define MODE_MODULATE_SUBTRACT_ATI   12
#define MODE_UNKNOWN   15
#define TEXTURE_UNKNOWN_INDEX   7
#define register_param1(p, s0)   register_param5(p,s0,0,0,0,0)
#define register_param2(p, s0, s1)   register_param5(p,s0,s1,0,0,0)
#define register_param3(p, s0, s1, s2)   register_param5(p,s0,s1,s2,0,0)
#define register_param4(p, s0, s1, s2, s3)   register_param5(p,s0,s1,s2,s3,0)
#define register_scalar_const(p, s0)   register_const4f(p, s0, s0, s0, s0)
#define register_const1f(p, s0)   register_const4f(p, s0, 0, 0, 1)
#define register_const2f(p, s0, s1)   register_const4f(p, s0, s1, 0, 1)
#define register_const3f(p, s0, s1, s2)   register_const4f(p, s0, s1, s2, 1)

Functions

static GLuint translate_fog_mode (GLenum mode)
static GLuint translate_operand (GLenum operand)
static GLuint translate_source (GLenum src)
static GLuint translate_mode (GLenum mode)
static GLuint translate_tex_src_bit (GLbitfield bit)
static void make_state_key (GLcontext *ctx, struct state_key *key)
static struct ureg make_ureg (GLuint file, GLuint idx)
static struct ureg swizzle (struct ureg reg, int x, int y, int z, int w)
static struct ureg swizzle1 (struct ureg reg, int x)
static struct ureg negate (struct ureg reg)
static GLboolean is_undef (struct ureg reg)
static struct ureg get_temp (struct texenv_fragment_program *p)
static struct ureg get_tex_temp (struct texenv_fragment_program *p)
static void release_temps (GLcontext *ctx, struct texenv_fragment_program *p)
static struct ureg register_param5 (struct texenv_fragment_program *p, GLint s0, GLint s1, GLint s2, GLint s3, GLint s4)
static struct ureg register_input (struct texenv_fragment_program *p, GLuint input)
static void emit_arg (struct prog_src_register *reg, struct ureg ureg)
static void emit_dst (struct prog_dst_register *dst, struct ureg ureg, GLuint mask)
static struct prog_instructionemit_op (struct texenv_fragment_program *p, enum prog_opcode op, struct ureg dest, GLuint mask, GLboolean saturate, struct ureg src0, struct ureg src1, struct ureg src2)
static struct ureg emit_arith (struct texenv_fragment_program *p, enum prog_opcode op, struct ureg dest, GLuint mask, GLboolean saturate, struct ureg src0, struct ureg src1, struct ureg src2)
static struct ureg emit_texld (struct texenv_fragment_program *p, enum prog_opcode op, struct ureg dest, GLuint destmask, GLuint tex_unit, GLuint tex_idx, struct ureg coord)
static struct ureg register_const4f (struct texenv_fragment_program *p, GLfloat s0, GLfloat s1, GLfloat s2, GLfloat s3)
static struct ureg get_one (struct texenv_fragment_program *p)
static struct ureg get_half (struct texenv_fragment_program *p)
static struct ureg get_zero (struct texenv_fragment_program *p)
static void program_error (struct texenv_fragment_program *p, const char *msg)
static struct ureg get_source (struct texenv_fragment_program *p, GLuint src, GLuint unit)
static struct ureg emit_combine_source (struct texenv_fragment_program *p, GLuint mask, GLuint unit, GLuint source, GLuint operand)
static GLboolean args_match (struct state_key *key, GLuint unit)
static struct ureg emit_combine (struct texenv_fragment_program *p, struct ureg dest, GLuint mask, GLboolean saturate, GLuint unit, GLuint nr, GLuint mode, const struct mode_opt *opt)
static struct ureg emit_texenv (struct texenv_fragment_program *p, GLuint unit)
static void load_texture (struct texenv_fragment_program *p, GLuint unit)
static GLboolean load_texenv_source (struct texenv_fragment_program *p, GLuint src, GLuint unit)
static GLboolean load_texunit_sources (struct texenv_fragment_program *p, int unit)
static void create_new_program (GLcontext *ctx, struct state_key *key, struct gl_fragment_program *program)
struct gl_fragment_program_mesa_get_fixed_func_fragment_program (GLcontext *ctx)
void _mesa_UpdateTexEnvProgram (GLcontext *ctx)

Variables

static struct ureg undef

Generated on Fri May 25 2012 04:57:07 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.