fo_state_emit.c File Reference

Include dependency graph for fo_state_emit.c:

Go to the source code of this file.

Functions

void failover_state_emit (struct failover_context *failover)


Function Documentation

void failover_state_emit ( struct failover_context failover  ) 

Definition at line 54 of file fo_state_emit.c.

References pipe_context::bind_blend_state, pipe_context::bind_depth_stencil_alpha_state, pipe_context::bind_fs_state, pipe_context::bind_rasterizer_state, pipe_context::bind_sampler_states, pipe_context::bind_vs_state, failover_context::blend, failover_context::blend_color, failover_context::clip, failover_context::depth_stencil, failover_context::dirty, FO_NEW_BLEND, FO_NEW_BLEND_COLOR, FO_NEW_CLIP, FO_NEW_DEPTH_STENCIL, FO_NEW_FRAGMENT_SHADER, FO_NEW_FRAMEBUFFER, FO_NEW_RASTERIZER, FO_NEW_SAMPLER, FO_NEW_SCISSOR, FO_NEW_STIPPLE, FO_NEW_TEXTURE, FO_NEW_VERTEX_BUFFER, FO_NEW_VERTEX_ELEMENT, FO_NEW_VERTEX_SHADER, FO_NEW_VIEWPORT, failover_context::fragment_shader, failover_context::framebuffer, failover_context::num_samplers, failover_context::num_textures, failover_context::num_vertex_buffers, failover_context::num_vertex_elements, failover_context::poly_stipple, failover_context::rasterizer, failover_context::scissor, pipe_context::set_blend_color, pipe_context::set_clip_state, pipe_context::set_framebuffer_state, pipe_context::set_polygon_stipple, pipe_context::set_sampler_textures, pipe_context::set_scissor_state, pipe_context::set_vertex_buffers, pipe_context::set_vertex_elements, pipe_context::set_viewport_state, failover_context::sw, failover_context::sw_sampler_state, fo_state::sw_state, failover_context::texture, failover_context::vertex_buffers, failover_context::vertex_elements, failover_context::vertex_shader, and failover_context::viewport.

00055 {
00056    if (failover->dirty & FO_NEW_BLEND)
00057       failover->sw->bind_blend_state( failover->sw,
00058                                       failover->blend->sw_state );
00059 
00060    if (failover->dirty & FO_NEW_BLEND_COLOR)
00061       failover->sw->set_blend_color( failover->sw, &failover->blend_color );
00062 
00063    if (failover->dirty & FO_NEW_CLIP)
00064       failover->sw->set_clip_state( failover->sw, &failover->clip );
00065 
00066    if (failover->dirty & FO_NEW_DEPTH_STENCIL)
00067       failover->sw->bind_depth_stencil_alpha_state( failover->sw,
00068                                                     failover->depth_stencil->sw_state );
00069 
00070    if (failover->dirty & FO_NEW_FRAMEBUFFER)
00071       failover->sw->set_framebuffer_state( failover->sw, &failover->framebuffer );
00072 
00073    if (failover->dirty & FO_NEW_FRAGMENT_SHADER)
00074       failover->sw->bind_fs_state( failover->sw,
00075                                    failover->fragment_shader->sw_state );
00076 
00077    if (failover->dirty & FO_NEW_VERTEX_SHADER)
00078       failover->sw->bind_vs_state( failover->sw,
00079                                    failover->vertex_shader->sw_state );
00080 
00081    if (failover->dirty & FO_NEW_STIPPLE)
00082       failover->sw->set_polygon_stipple( failover->sw, &failover->poly_stipple );
00083 
00084    if (failover->dirty & FO_NEW_RASTERIZER)
00085       failover->sw->bind_rasterizer_state( failover->sw,
00086                                            failover->rasterizer->sw_state );
00087 
00088    if (failover->dirty & FO_NEW_SCISSOR)
00089       failover->sw->set_scissor_state( failover->sw, &failover->scissor );
00090 
00091    if (failover->dirty & FO_NEW_VIEWPORT)
00092       failover->sw->set_viewport_state( failover->sw, &failover->viewport );
00093 
00094    if (failover->dirty & FO_NEW_SAMPLER) {
00095       failover->sw->bind_sampler_states( failover->sw, failover->num_samplers,
00096                                          failover->sw_sampler_state );
00097    }
00098 
00099    if (failover->dirty & FO_NEW_TEXTURE) {
00100       failover->sw->set_sampler_textures( failover->sw, failover->num_textures, 
00101                                           failover->texture );
00102    }
00103 
00104    if (failover->dirty & FO_NEW_VERTEX_BUFFER) {
00105       failover->sw->set_vertex_buffers( failover->sw,
00106                                         failover->num_vertex_buffers,
00107                                         failover->vertex_buffers );
00108    }
00109 
00110    if (failover->dirty & FO_NEW_VERTEX_ELEMENT) {
00111       failover->sw->set_vertex_elements( failover->sw,
00112                                          failover->num_vertex_elements,
00113                                          failover->vertex_elements );
00114    }
00115 
00116    failover->dirty = 0;
00117 }


Generated on Tue Sep 29 06:25:33 2009 for Gallium3D by  doxygen 1.5.4