summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/ilo/ilo_state.h
diff options
context:
space:
mode:
authorChia-I Wu <[email protected]>2015-05-11 19:48:52 +0800
committerChia-I Wu <[email protected]>2015-06-15 01:07:09 +0800
commit960ca7d5e32997a5367cf798f7930cbb890b3ab4 (patch)
tree3d634946bd611623a953e5c9de85059b40c4a8b9 /src/gallium/drivers/ilo/ilo_state.h
parent402e155cd3a757a583f81fa6545c855b63947e7c (diff)
ilo: embed ilo_state_cc in ilo_blend_state
Diffstat (limited to 'src/gallium/drivers/ilo/ilo_state.h')
-rw-r--r--src/gallium/drivers/ilo/ilo_state.h34
1 files changed, 31 insertions, 3 deletions
diff --git a/src/gallium/drivers/ilo/ilo_state.h b/src/gallium/drivers/ilo/ilo_state.h
index 8f6cce2b53a..39d0d7eac8b 100644
--- a/src/gallium/drivers/ilo/ilo_state.h
+++ b/src/gallium/drivers/ilo/ilo_state.h
@@ -29,6 +29,7 @@
#define ILO_STATE_H
#include "core/ilo_state_3d.h"
+#include "core/ilo_state_cc.h"
#include "core/ilo_state_raster.h"
#include "core/ilo_state_sampler.h"
#include "core/ilo_state_surface.h"
@@ -191,6 +192,32 @@ struct ilo_viewport_state {
uint32_t vp_data[20 * ILO_MAX_VIEWPORTS];
};
+struct ilo_dsa_state {
+ struct ilo_state_cc_depth_info depth;
+
+ struct ilo_state_cc_stencil_info stencil;
+ struct {
+ uint8_t test_mask;
+ uint8_t write_mask;
+ } stencil_front, stencil_back;
+
+ bool alpha_test;
+ float alpha_ref;
+ enum gen_compare_function alpha_func;
+};
+
+struct ilo_blend_state {
+ struct ilo_state_cc_blend_rt_info rt[PIPE_MAX_COLOR_BUFS];
+ struct ilo_state_cc_blend_rt_info dummy_rt;
+ bool dual_blend;
+
+ /* these are invalid until finalize_blend() */
+ struct ilo_state_cc_blend_rt_info effective_rt[PIPE_MAX_COLOR_BUFS];
+ struct ilo_state_cc_info info;
+ struct ilo_state_cc cc;
+ bool alpha_may_kill;
+};
+
struct ilo_global_binding_cso {
struct pipe_resource *resource;
uint32_t *handle;
@@ -240,10 +267,11 @@ struct ilo_state_vector {
struct ilo_shader_state *fs;
- const struct ilo_dsa_state *dsa;
+ struct ilo_state_cc_params_info cc_params;
struct pipe_stencil_ref stencil_ref;
- const struct ilo_blend_state *blend;
- struct pipe_blend_color blend_color;
+ const struct ilo_dsa_state *dsa;
+ struct ilo_blend_state *blend;
+
struct ilo_fb_state fb;
/* shader resources */