| #ifndef U_DUAL_BLEND_H |
| #define U_DUAL_BLEND_H |
| |
| #include "pipe/p_state.h" |
| |
| static INLINE boolean util_blend_factor_is_dual_src(int factor) |
| { |
| return (factor == PIPE_BLENDFACTOR_SRC1_COLOR) || |
| (factor == PIPE_BLENDFACTOR_SRC1_ALPHA) || |
| (factor == PIPE_BLENDFACTOR_INV_SRC1_COLOR) || |
| (factor == PIPE_BLENDFACTOR_INV_SRC1_ALPHA); |
| } |
| |
| static INLINE boolean util_blend_state_is_dual(const struct pipe_blend_state *blend, |
| int index) |
| { |
| if (util_blend_factor_is_dual_src(blend->rt[index].rgb_src_factor) || |
| util_blend_factor_is_dual_src(blend->rt[index].alpha_src_factor) || |
| util_blend_factor_is_dual_src(blend->rt[index].rgb_dst_factor) || |
| util_blend_factor_is_dual_src(blend->rt[index].alpha_dst_factor)) |
| return true; |
| return false; |
| } |
| |
| |
| #endif |