diff options
author | Stephane Marchesin <[email protected]> | 2008-07-08 01:06:18 +0200 |
---|---|---|
committer | Stephane Marchesin <[email protected]> | 2008-07-08 01:06:18 +0200 |
commit | 52a68dd9eb1d347aa01ce09db9375793d0d0ceaf (patch) | |
tree | dc44e650a9641ff06754e6ad3cd9e716d9ea46c7 /src/gallium/drivers/nv04/nv04_state.h | |
parent | 6235141fd2c7af21c2b41ca66f06abc3cb0bbc24 (diff) |
nv04.
Diffstat (limited to 'src/gallium/drivers/nv04/nv04_state.h')
-rw-r--r-- | src/gallium/drivers/nv04/nv04_state.h | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/src/gallium/drivers/nv04/nv04_state.h b/src/gallium/drivers/nv04/nv04_state.h new file mode 100644 index 00000000000..7487819c3ab --- /dev/null +++ b/src/gallium/drivers/nv04/nv04_state.h @@ -0,0 +1,71 @@ +#ifndef __NV04_STATE_H__ +#define __NV04_STATE_H__ + +#include "pipe/p_state.h" +#include "tgsi/util/tgsi_scan.h" + +struct nv04_blend_state { + uint32_t b_enable; + uint32_t b_src; + uint32_t b_dst; +}; + +struct nv04_fragtex_state { + uint32_t format; +}; + +struct nv04_sampler_state { + uint32_t filter; + uint32_t format; +}; + +struct nv04_depth_stencil_alpha_state { + uint32_t control; +}; + +struct nv04_rasterizer_state { + uint32_t blend; + + const struct pipe_rasterizer_state *templ; +}; + +struct nv04_miptree { + struct pipe_texture base; + + struct pipe_buffer *buffer; + uint total_size; + + struct { + uint pitch; + uint *image_offset; + } level[PIPE_MAX_TEXTURE_LEVELS]; +}; + +struct nv04_fragment_program_data { + unsigned offset; + unsigned index; +}; + +struct nv04_fragment_program { + const struct pipe_shader_state *pipe; + struct tgsi_shader_info info; + + boolean translated; + boolean on_hw; + unsigned samplers; + + uint32_t *insn; + int insn_len; + + struct nv04_fragment_program_data *consts; + unsigned nr_consts; + + struct pipe_buffer *buffer; + + uint32_t fp_control; + uint32_t fp_reg_control; +}; + + + +#endif |