1f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#ifndef U_DUAL_BLEND_H 2f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#define U_DUAL_BLEND_H 3f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 4f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#include "pipe/p_state.h" 5f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 6f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgstatic INLINE boolean util_blend_factor_is_dual_src(int factor) 7f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org{ 8f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org return (factor == PIPE_BLENDFACTOR_SRC1_COLOR) || 9f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org (factor == PIPE_BLENDFACTOR_SRC1_ALPHA) || 10f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org (factor == PIPE_BLENDFACTOR_INV_SRC1_COLOR) || 11f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org (factor == PIPE_BLENDFACTOR_INV_SRC1_ALPHA); 12f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org} 13f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 14f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.orgstatic INLINE boolean util_blend_state_is_dual(const struct pipe_blend_state *blend, 15f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org int index) 16f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org{ 17f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org if (util_blend_factor_is_dual_src(blend->rt[index].rgb_src_factor) || 18f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org util_blend_factor_is_dual_src(blend->rt[index].alpha_src_factor) || 19f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org util_blend_factor_is_dual_src(blend->rt[index].rgb_dst_factor) || 20f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org util_blend_factor_is_dual_src(blend->rt[index].alpha_dst_factor)) 21f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org return true; 22f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org return false; 23f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org} 24f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 25f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org 26f2ba7591b1407a7ee9209f842c50696914dc2dedkbr@chromium.org#endif 27