Lines Matching refs:sa

451 	uint16_t sa, da;
453 sa = s >> A_SHIFT;
455 if (sa > da)
457 sa = DIV_UN8 (da, sa);
458 UN8x4_MUL_UN8 (s, sa);
560 uint8_t sa = ALPHA_8 (s); \
561 uint8_t isa = ~sa; \
570 (DIV_ONE_UN8 (sa * (uint32_t)da) << A_SHIFT) + \
571 (blend_ ## name (RED_8 (d), da, RED_8 (s), sa) << R_SHIFT) + \
572 (blend_ ## name (GREEN_8 (d), da, GREEN_8 (s), sa) << G_SHIFT) + \
573 (blend_ ## name (BLUE_8 (d), da, BLUE_8 (s), sa)); \
611 * B(Dca, ad, Sca, as) = Dca.sa + Sca.da - Dca.Sca
614 blend_screen (uint32_t dca, uint32_t da, uint32_t sca, uint32_t sa)
616 return DIV_ONE_UN8 (sca * da + dca * sa - sca * dca);
630 blend_overlay (uint32_t dca, uint32_t da, uint32_t sca, uint32_t sa)
637 rca = sa * da - 2 * (da - dca) * (sa - sca);
648 blend_darken (uint32_t dca, uint32_t da, uint32_t sca, uint32_t sa)
653 d = dca * sa;
664 blend_lighten (uint32_t dca, uint32_t da, uint32_t sca, uint32_t sa)
669 d = dca * sa;
686 blend_color_dodge (uint32_t dca, uint32_t da, uint32_t sca, uint32_t sa)
688 if (sca >= sa)
690 return dca == 0 ? 0 : DIV_ONE_UN8 (sa * da);
694 uint32_t rca = dca * sa / (sa - sca);
695 return DIV_ONE_UN8 (sa * MIN (rca, da));
712 blend_color_burn (uint32_t dca, uint32_t da, uint32_t sca, uint32_t sa)
716 return dca < da ? 0 : DIV_ONE_UN8 (sa * da);
720 uint32_t rca = (da - dca) * sa / sca;
721 return DIV_ONE_UN8 (sa * (MAX (rca, da) - rca));
736 blend_hard_light (uint32_t dca, uint32_t da, uint32_t sca, uint32_t sa)
738 if (2 * sca < sa)
741 return DIV_ONE_UN8 (sa * da - 2 * (da - dca) * (sa - sca));
765 double sa = sa_org * (1.0 / MASK);
768 if (2 * sca < sa)
771 rca = dca * sa;
773 rca = dca * sa - dca * (da - dca) * (sa - 2 * sca) / da;
781 rca = dca * sa +
782 (2 * sca - sa) * dca * ((16 * dca / da - 12) * dca / da + 3);
786 rca = dca * sa + (sqrt (dca * da) - dca) * (2 * sca - sa);
798 blend_difference (uint32_t dca, uint32_t da, uint32_t sca, uint32_t sa)
800 uint32_t dcasa = dca * sa;
820 blend_exclusion (uint32_t dca, uint32_t da, uint32_t sca, uint32_t sa)
822 return DIV_ONE_UN8 (sca * da + dca * sa - 2 * dca * sca);
956 uint8_t sa = ALPHA_8 (s); \
957 uint8_t isa = ~sa; \
971 blend_ ## name (c, dc, da, sc, sa); \
974 (DIV_ONE_UN8 (sa * (uint32_t)da) << A_SHIFT) + \
982 set_lum (uint32_t dest[3], uint32_t src[3], uint32_t sa, uint32_t lum)
987 a = sa * (1.0 / MASK);
1116 uint32_t sa)
1121 set_sat (c, c, SAT (dc) * sa);
1122 set_lum (c, c, sa * da, LUM (dc) * sa);
1136 uint32_t sa)
1138 c[0] = dc[0] * sa;
1139 c[1] = dc[1] * sa;
1140 c[2] = dc[2] * sa;
1142 set_lum (c, c, sa * da, LUM (dc) * sa);
1156 uint32_t sa)
1161 set_lum (c, c, sa * da, LUM (dc) * sa);
1175 uint32_t sa)
1177 c[0] = dc[0] * sa;
1178 c[1] = dc[1] * sa;
1179 c[2] = dc[2] * sa;
1180 set_lum (c, c, sa * da, LUM (sc) * da);
1309 uint8_t sa = s >> A_SHIFT;
1319 Fa = combine_disjoint_out_part (sa, da);
1323 Fa = combine_disjoint_in_part (sa, da);
1338 Fb = combine_disjoint_out_part (da, sa);
1342 Fb = combine_disjoint_in_part (da, sa);
1476 uint8_t sa = s >> A_SHIFT;
1486 Fa = combine_conjoint_out_part (sa, da);
1490 Fa = combine_conjoint_in_part (sa, da);
1505 Fb = combine_conjoint_out_part (da, sa);
1509 Fb = combine_conjoint_in_part (da, sa);
1971 uint16_t sa, sr, sg, sb, da;
1981 sa = (m >> A_SHIFT);
2002 if (sa <= da)
2005 p = GENERIC (s, d, A_SHIFT, (da << G_SHIFT) / sa, MASK, t, u, v);
2026 uint32_t sa;
2036 sa = m;
2045 m = (uint32_t)combine_disjoint_out_part ((uint8_t) (sa >> 0), da);
2046 n = (uint32_t)combine_disjoint_out_part ((uint8_t) (sa >> G_SHIFT), da) << G_SHIFT;
2047 o = (uint32_t)combine_disjoint_out_part ((uint8_t) (sa >> R_SHIFT), da) << R_SHIFT;
2048 p = (uint32_t)combine_disjoint_out_part ((uint8_t) (sa >> A_SHIFT), da) << A_SHIFT;
2053 m = (uint32_t)combine_disjoint_in_part ((uint8_t) (sa >> 0), da);
2054 n = (uint32_t)combine_disjoint_in_part ((uint8_t) (sa >> G_SHIFT), da) << G_SHIFT;
2055 o = (uint32_t)combine_disjoint_in_part ((uint8_t) (sa >> R_SHIFT), da) << R_SHIFT;
2056 p = (uint32_t)combine_disjoint_in_part ((uint8_t) (sa >> A_SHIFT), da) << A_SHIFT;
2072 m = (uint32_t)combine_disjoint_out_part (da, (uint8_t) (sa >> 0));
2073 n = (uint32_t)combine_disjoint_out_part (da, (uint8_t) (sa >> G_SHIFT)) << G_SHIFT;
2074 o = (uint32_t)combine_disjoint_out_part (da, (uint8_t) (sa >> R_SHIFT)) << R_SHIFT;
2075 p = (uint32_t)combine_disjoint_out_part (da, (uint8_t) (sa >> A_SHIFT)) << A_SHIFT;
2080 m = (uint32_t)combine_disjoint_in_part (da, (uint8_t) (sa >> 0));
2081 n = (uint32_t)combine_disjoint_in_part (da, (uint8_t) (sa >> G_SHIFT)) << G_SHIFT;
2082 o = (uint32_t)combine_disjoint_in_part (da, (uint8_t) (sa >> R_SHIFT)) << R_SHIFT;
2083 p = (uint32_t)combine_disjoint_in_part (da, (uint8_t) (sa >> A_SHIFT)) << A_SHIFT;
2205 uint32_t sa;
2215 sa = m;
2224 m = (uint32_t)combine_conjoint_out_part ((uint8_t) (sa >> 0), da);
2225 n = (uint32_t)combine_conjoint_out_part ((uint8_t) (sa >> G_SHIFT), da) << G_SHIFT;
2226 o = (uint32_t)combine_conjoint_out_part ((uint8_t) (sa >> R_SHIFT), da) << R_SHIFT;
2227 p = (uint32_t)combine_conjoint_out_part ((uint8_t) (sa >> A_SHIFT), da) << A_SHIFT;
2232 m = (uint32_t)combine_conjoint_in_part ((uint8_t) (sa >> 0), da);
2233 n = (uint32_t)combine_conjoint_in_part ((uint8_t) (sa >> G_SHIFT), da) << G_SHIFT;
2234 o = (uint32_t)combine_conjoint_in_part ((uint8_t) (sa >> R_SHIFT), da) << R_SHIFT;
2235 p = (uint32_t)combine_conjoint_in_part ((uint8_t) (sa >> A_SHIFT), da) << A_SHIFT;
2251 m = (uint32_t)combine_conjoint_out_part (da, (uint8_t) (sa >> 0));
2252 n = (uint32_t)combine_conjoint_out_part (da, (uint8_t) (sa >> G_SHIFT)) << G_SHIFT;
2253 o = (uint32_t)combine_conjoint_out_part (da, (uint8_t) (sa >> R_SHIFT)) << R_SHIFT;
2254 p = (uint32_t)combine_conjoint_out_part (da, (uint8_t) (sa >> A_SHIFT)) << A_SHIFT;
2259 m = (uint32_t)combine_conjoint_in_part (da, (uint8_t) (sa >> 0));
2260 n = (uint32_t)combine_conjoint_in_part (da, (uint8_t) (sa >> G_SHIFT)) << G_SHIFT;
2261 o = (uint32_t)combine_conjoint_in_part (da, (uint8_t) (sa >> R_SHIFT)) << R_SHIFT;
2262 p = (uint32_t)combine_conjoint_in_part (da, (uint8_t) (sa >> A_SHIFT)) << A_SHIFT;