diff options
author | Keith Whitwell <[email protected]> | 2000-12-26 05:09:27 +0000 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2000-12-26 05:09:27 +0000 |
commit | cab974cf6c2dbfbf5dd5d291e1aae0f8eeb34290 (patch) | |
tree | 45385bd755d8e3876c54b2b0113636f5ceb7976a /src/mesa/tnl/t_pipeline.h | |
parent | d1ff1f6798b003a820f5de9fad835ff352f31afe (diff) |
Major rework of tnl module
New array_cache module
Support 8 texture units in core mesa (now support 8 everywhere)
Rework core mesa statechange operations to avoid flushing on many
noop statechanges.
Diffstat (limited to 'src/mesa/tnl/t_pipeline.h')
-rw-r--r-- | src/mesa/tnl/t_pipeline.h | 35 |
1 files changed, 20 insertions, 15 deletions
diff --git a/src/mesa/tnl/t_pipeline.h b/src/mesa/tnl/t_pipeline.h index b9ae641894f..9d433bde0a7 100644 --- a/src/mesa/tnl/t_pipeline.h +++ b/src/mesa/tnl/t_pipeline.h @@ -1,4 +1,4 @@ -/* $Id: t_pipeline.h,v 1.3 2000/11/24 10:25:12 keithw Exp $ */ +/* $Id: t_pipeline.h,v 1.4 2000/12/26 05:09:33 keithw Exp $ */ /* * Mesa 3-D graphics library @@ -36,25 +36,30 @@ #include "mtypes.h" #include "t_context.h" -extern void _tnl_pipeline_init( GLcontext *ctx ); +extern void _tnl_run_pipeline( GLcontext *ctx ); -extern void _tnl_update_materials( struct vertex_buffer *VB); +extern void _tnl_validate_pipeline( GLcontext *ctx ); -extern void _tnl_update_pipelines( GLcontext *ctx ); +extern void _tnl_destroy_pipeline( GLcontext *ctx ); -extern void _tnl_build_precalc_pipeline( GLcontext *ctx ); -extern void _tnl_build_immediate_pipeline( GLcontext *ctx ); +extern void _tnl_install_pipeline( GLcontext *ctx, + const struct gl_pipeline_stage **stages ); -extern void _tnl_print_vert_flags( const char *name, GLuint flags ); -extern void _tnl_print_pipeline( GLcontext *ctx, struct gl_pipeline *p ); -extern void _tnl_print_active_pipeline( GLcontext *ctx, struct gl_pipeline *p ); -extern void _tnl_run_pipeline( struct vertex_buffer *VB ); - -extern void _tnl_clean_color( struct vertex_buffer *VB ); - -extern void _tnl_reset_cva_vb( struct vertex_buffer *VB, GLuint stages ); +/* These are implemented in the t_vb_*.c files: + */ +extern const struct gl_pipeline_stage _tnl_update_material_stage; +extern const struct gl_pipeline_stage _tnl_vertex_transform_stage; +extern const struct gl_pipeline_stage _tnl_normal_transform_stage; +extern const struct gl_pipeline_stage _tnl_lighting_stage; +extern const struct gl_pipeline_stage _tnl_fog_coordinate_stage; +extern const struct gl_pipeline_stage _tnl_texgen_stage; +extern const struct gl_pipeline_stage _tnl_texture_transform_stage; +extern const struct gl_pipeline_stage _tnl_point_attenuation_stage; +extern const struct gl_pipeline_stage _tnl_render_stage; -extern void _tnl_print_pipe_ops( const char *msg, GLuint flags ); +/* Shorthand to plug in the default pipeline: + */ +extern const struct gl_pipeline_stage *_tnl_default_pipeline[]; #endif |