nv30_context.h revision d084d189d03dc89a3161a131f1b386840c06ad61
1#ifndef __NV30_CONTEXT_H__
2#define __NV30_CONTEXT_H__
3
4#include "nvfx_context.h"
5
6extern void nv30_init_state_functions(struct nvfx_context *nvfx);
7extern void nv30_init_surface_functions(struct nvfx_context *nvfx);
8extern void nv30_init_query_functions(struct nvfx_context *nvfx);
9
10extern void nv30_screen_init_miptree_functions(struct pipe_screen *pscreen);
11
12/* nv30_draw.c */
13extern struct draw_stage *nv30_draw_render_stage(struct nvfx_context *nvfx);
14
15/* nv30_vertprog.c */
16extern void nv30_vertprog_destroy(struct nvfx_context *,
17				  struct nvfx_vertex_program *);
18
19/* nv30_fragprog.c */
20extern void nv30_fragprog_destroy(struct nvfx_context *,
21				  struct nvfx_fragment_program *);
22
23/* nv30_fragtex.c */
24extern void nv30_fragtex_bind(struct nvfx_context *);
25
26/* nv30_state.c and friends */
27extern boolean nv30_state_validate(struct nvfx_context *nvfx);
28extern void nv30_state_emit(struct nvfx_context *nvfx);
29extern void nv30_state_flush_notify(struct nouveau_channel *chan);
30extern struct nvfx_state_entry nv30_state_rasterizer;
31extern struct nvfx_state_entry nv30_state_scissor;
32extern struct nvfx_state_entry nv30_state_stipple;
33extern struct nvfx_state_entry nv30_state_fragprog;
34extern struct nvfx_state_entry nv30_state_vertprog;
35extern struct nvfx_state_entry nv30_state_blend;
36extern struct nvfx_state_entry nv30_state_blend_colour;
37extern struct nvfx_state_entry nv30_state_zsa;
38extern struct nvfx_state_entry nv30_state_viewport;
39extern struct nvfx_state_entry nv30_state_framebuffer;
40extern struct nvfx_state_entry nv30_state_fragtex;
41extern struct nvfx_state_entry nv30_state_vbo;
42extern struct nvfx_state_entry nv30_state_sr;
43
44/* nv30_vbo.c */
45extern void nv30_draw_arrays(struct pipe_context *, unsigned mode,
46				unsigned start, unsigned count);
47extern void nv30_draw_elements(struct pipe_context *pipe,
48				  struct pipe_buffer *indexBuffer,
49				  unsigned indexSize,
50				  unsigned mode, unsigned start,
51				  unsigned count);
52
53/* nvfx_context.c */
54struct pipe_context *
55nv30_create(struct pipe_screen *pscreen, void *priv);
56
57#endif
58