Lines Matching full:endpoints
360 uint8_t endpoints[][4])
372 endpoints[subset * 2 + endpoint][component] =
383 endpoints[subset * 2 + endpoint][3] =
393 endpoints[subset * 2 + endpoint][3] = 255;
406 endpoints[subset * 2 + endpoint][component] <<= 1;
407 endpoints[subset * 2 + endpoint][component] |= pbit;
418 endpoints[subset * 2 + endpoint][component] <<= 1;
419 endpoints[subset * 2 + endpoint][component] |= pbit;
429 endpoints[subset * 2 + endpoint][component] =
430 expand_component(endpoints[subset * 2 + endpoint][component],
437 endpoints[subset * 2 + endpoint][3] =
438 expand_component(endpoints[subset * 2 + endpoint][3],
554 uint8_t endpoints[3 * 2][4];
600 bit_offset = extract_unorm_endpoints(mode, block, bit_offset, endpoints);
637 result[component] = interpolate(endpoints[subset_num * 2][component],
638 endpoints[subset_num * 2 + 1][component],
651 result[3] = interpolate(endpoints[subset_num * 2][3],
652 endpoints[subset_num * 2 + 1][3],
760 int32_t endpoints[][3],
774 memset(endpoints, 0, sizeof endpoints[0][0] * n_endpoints * 3);
783 endpoints[bitfield->endpoint][bitfield->component] |=
787 endpoints[bitfield->endpoint][bitfield->component] |=
793 /* The endpoints are specified as signed offsets from e0 */
796 value = sign_extend(endpoints[endpoint][component],
798 endpoints[endpoint][component] =
799 ((endpoints[0][component] + value) &
808 value = sign_extend(endpoints[endpoint][component],
810 endpoints[endpoint][component] =
817 endpoints[endpoint][component] =
818 unsigned_unquantize(endpoints[endpoint][component],
856 int32_t endpoints[2 * 2][3];
879 endpoints, is_signed);
907 value = interpolate(endpoints[subset_num * 2][component],
908 endpoints[subset_num * 2 + 1][component],
1012 uint8_t endpoints[][4])
1056 endpoints[0][i] = endpoints[1][i] =
1060 endpoints[0][i] = sums[0][i] / rgb_left_endpoint_count;
1061 endpoints[1][i] = (sums[1][i] /
1068 endpoints[0][3] = endpoints[1][3] =
1071 endpoints[0][3] = sums[0][3] / alpha_left_endpoint_count;
1072 endpoints[1][3] = (sums[1][3] /
1076 /* We may need to swap the endpoints to ensure the most-significant bit of
1081 endpoints[endpoint][0] +
1082 endpoints[endpoint][1] +
1083 endpoints[endpoint][2];
1089 memcpy(temp, endpoints[0], 3);
1090 memcpy(endpoints[0], endpoints[1], 3);
1091 memcpy(endpoints[1], temp, 3);
1094 /* Same for the alpha endpoints */
1096 midpoint = (endpoints[0][3] + endpoints[1][3]) / 2;
1098 if ((src[3] <= midpoint) != (endpoints[0][3] <= midpoint)) {
1099 temp[0] = endpoints[0][3];
1100 endpoints[0][3] = endpoints[1][3];
1101 endpoints[1][3] = temp[0];
1109 uint8_t endpoints[][4])
1119 endpoints[endpoint][0] +
1120 endpoints[endpoint][1] +
1121 endpoints[endpoint][2];
1124 /* If the endpoints have the same luminance then we'll just use index 0 for
1165 uint8_t endpoints[][4])
1170 /* If the endpoints have the same alpha then we'll just use index 0 for
1172 if (endpoints[0][3] == endpoints[1][3]) {
1179 index = (((int) src[3] - (int) endpoints[0][3]) * 7 /
1180 ((int) endpoints[1][3] - endpoints[0][3]));
1212 uint8_t endpoints[2][4];
1220 endpoints);
1230 /* Write the color endpoints */
1233 write_bits(&writer, 5, endpoints[endpoint][component] >> 3);
1235 /* Write the alpha endpoints */
1237 write_bits(&writer, 6, endpoints[endpoint][3] >> 2);
1242 endpoints);
1246 endpoints);
1360 float average_luminance, float endpoints[][3],
1396 endpoints[0][i] = endpoints[1][i] =
1400 endpoints[0][i] = sums[0][i] / left_endpoint_count;
1401 endpoints[1][i] = sums[1][i] / (width * height - left_endpoint_count);
1405 /* Clamp the endpoints to the range of a half float and strip out
1409 endpoints[endpoint][component] =
1410 clamp_value(endpoints[endpoint][component], is_signed);
1414 /* We may need to swap the endpoints to ensure the most-significant bit of
1419 endpoints[endpoint][0] +
1420 endpoints[endpoint][1] +
1421 endpoints[endpoint][2];
1427 memcpy(temp, endpoints[0], sizeof temp);
1428 memcpy(endpoints[0], endpoints[1], sizeof temp);
1429 memcpy(endpoints[1], temp, sizeof temp);
1437 float endpoints[][3])
1447 endpoints[endpoint][0] +
1448 endpoints[endpoint][1] +
1449 endpoints[endpoint][2];
1452 /* If the endpoints have the same luminance then we'll just use index 0 for
1526 float endpoints[2][3];
1534 average_luminance, endpoints, is_signed);
1542 /* Write the endpoints */
1546 get_endpoint_value(endpoints[endpoint][component], is_signed);
1554 endpoints);