1 #ifndef __NV40_CONTEXT_H__
2 #define __NV40_CONTEXT_H__
4 #include "nvfx_context.h"
6 extern void nv40_init_state_functions(struct nvfx_context
*nvfx
);
7 extern void nv40_init_surface_functions(struct nvfx_context
*nvfx
);
8 extern void nv40_init_query_functions(struct nvfx_context
*nvfx
);
10 extern void nv40_screen_init_miptree_functions(struct pipe_screen
*pscreen
);
13 extern struct draw_stage
*nv40_draw_render_stage(struct nvfx_context
*nvfx
);
14 extern void nv40_draw_elements_swtnl(struct pipe_context
*pipe
,
15 struct pipe_buffer
*idxbuf
,
16 unsigned ib_size
, unsigned mode
,
17 unsigned start
, unsigned count
);
20 extern void nv40_vertprog_destroy(struct nvfx_context
*,
21 struct nvfx_vertex_program
*);
24 extern void nv40_fragprog_destroy(struct nvfx_context
*,
25 struct nvfx_fragment_program
*);
28 extern void nv40_fragtex_bind(struct nvfx_context
*);
30 /* nv40_state.c and friends */
31 extern struct nvfx_state_entry nv40_state_rasterizer
;
32 extern struct nvfx_state_entry nv40_state_scissor
;
33 extern struct nvfx_state_entry nv40_state_stipple
;
34 extern struct nvfx_state_entry nv40_state_fragprog
;
35 extern struct nvfx_state_entry nv40_state_vertprog
;
36 extern struct nvfx_state_entry nv40_state_zsa
;
37 extern struct nvfx_state_entry nv40_state_viewport
;
38 extern struct nvfx_state_entry nv40_state_framebuffer
;
39 extern struct nvfx_state_entry nv40_state_fragtex
;
40 extern struct nvfx_state_entry nv40_state_vbo
;
41 extern struct nvfx_state_entry nv40_state_vtxfmt
;
42 extern struct nvfx_state_entry nv40_state_sr
;
45 extern void nv40_draw_arrays(struct pipe_context
*, unsigned mode
,
46 unsigned start
, unsigned count
);
47 extern void nv40_draw_elements(struct pipe_context
*pipe
,
48 struct pipe_buffer
*indexBuffer
,
50 unsigned mode
, unsigned start
,
55 nv40_create(struct pipe_screen
*pscreen
, void *priv
);