Home | History | Annotate | Download | only in swrast

Lines Matching refs:array

167  * fill in span->array->attribs[].
178 * Don't overwrite existing array values, such as colors that may have
198 span->array->attribs[attr][k][0] = v0 * invW;
199 span->array->attribs[attr][k][1] = v1 * invW;
200 span->array->attribs[attr][k][2] = v2 * invW;
201 span->array->attribs[attr][k][3] = v3 * invW;
216 * Interpolate primary colors to fill in the span->array->rgba8 (or rgb16)
217 * color array.
229 switch (span->array->ChanType) {
233 GLubyte (*rgba)[4] = span->array->rgba8;
268 GLushort (*rgba)[4] = span->array->rgba16;
280 GLushort (*rgba)[4] = span->array->rgba16;
310 span->array->ChanType);
317 * Populate the VARYING_SLOT_COL0 array.
322 GLfloat (*col0)[4] = span->array->attribs[VARYING_SLOT_COL0];
329 /* convert array of int colors */
331 col0[i][0] = UBYTE_TO_FLOAT(span->array->rgba8[i][0]);
332 col0[i][1] = UBYTE_TO_FLOAT(span->array->rgba8[i][1]);
333 col0[i][2] = UBYTE_TO_FLOAT(span->array->rgba8[i][2]);
334 col0[i][3] = UBYTE_TO_FLOAT(span->array->rgba8[i][3]);
372 span->array->ChanType = GL_FLOAT;
378 * Fill in the span.zArray array from the span->z, zStep values.
390 GLuint *z = span->array->z;
399 GLuint *z = span->array->z;
460 * Fill in the span.array->attrib[VARYING_SLOT_TEXn] arrays from the
484 GLfloat (*texcoord)[4] = span->array->attribs[attr];
485 GLfloat *lambda = span->array->lambda[u];
620 * Fill in the arrays->attribs[VARYING_SLOT_POS] array.
625 GLfloat (*wpos)[4] = span->array->attribs[VARYING_SLOT_POS];
632 wpos[i][0] = (GLfloat) span->array->x[i];
633 wpos[i][1] = (GLfloat) span->array->y[i];
646 wpos[i][2] = (GLfloat) span->array->z[i] * zScale;
659 GLubyte *mask = span->array->mask;
667 const GLint col = span->array->x[i] % 32;
668 const GLint row = span->array->y[i] % 32;
713 const GLint *x = span->array->x;
714 const GLint *y = span->array->y;
716 GLubyte *mask = span->array->mask;
786 #define SHIFT_ARRAY(ARRAY, SHIFT, LEN) \
787 memmove(ARRAY, ARRAY + (SHIFT), (LEN) * sizeof(ARRAY[0]))
791 /* shift array elements left by 'leftClip' */
792 SHIFT_ARRAY(span->array->attribs[i], leftClip, n - leftClip);
796 SHIFT_ARRAY(span->array->mask, leftClip, n - leftClip);
797 SHIFT_ARRAY(span->array->rgba8, leftClip, n - leftClip);
798 SHIFT_ARRAY(span->array->rgba16, leftClip, n - leftClip);
799 SHIFT_ARRAY(span->array->x, leftClip, n - leftClip);
800 SHIFT_ARRAY(span->array->y, leftClip, n - leftClip);
801 SHIFT_ARRAY(span->array->z, leftClip, n - leftClip);
802 SHIFT_ARRAY(span->array->index, leftClip, n - leftClip);
804 SHIFT_ARRAY(span->array->lambda[i], leftClip, n - leftClip);
806 SHIFT_ARRAY(span->array->coverage, leftClip, n - leftClip);
829 * Result is float color array (VARYING_SLOT_COL0).
835 const GLubyte *mask = span->array->mask;
836 GLfloat (*col0)[4] = span->array->attribs[VARYING_SLOT_COL0];
837 GLfloat (*col1)[4] = span->array->attribs[VARYING_SLOT_COL1];
845 if (span->array->ChanType == GL_FLOAT) {
873 span->array->ChanType = GL_FLOAT;
883 const GLfloat *coverage = span->array->coverage;
885 if (span->array->ChanType == GL_UNSIGNED_BYTE) {
886 GLubyte (*rgba)[4] = span->array->rgba8;
894 else if (span->array->ChanType == GL_UNSIGNED_SHORT) {
895 GLushort (*rgba)[4] = span->array->rgba16;
902 GLfloat (*rgba)[4] = span->array->attribs[VARYING_SLOT_COL0];
917 GLfloat (*rgba)[4] = span->array->attribs[VARYING_SLOT_COL0];
919 assert(span->array->ChanType == GL_FLOAT);
941 src = span->array->attribs[VARYING_SLOT_COL0 + output];
942 span->array->ChanType = GL_FLOAT;
945 src = span->array->rgba8;
949 src = span->array->rgba16;
953 dst = span->array->rgba8;
956 dst = span->array->rgba16;
959 dst = span->array->attribs[VARYING_SLOT_COL0];
962 _mesa_convert_colors(span->array->ChanType, src,
964 span->end, span->array->mask);
966 span->array->ChanType = newType;
967 span->array->rgba = dst;
981 if (span->primitive == GL_BITMAP && span->array->ChanType != GL_FLOAT) {
982 convert_color_type(span, span->array->ChanType, GL_FLOAT, 0);
985 span->array->rgba = (void *) span->array->attribs[VARYING_SLOT_COL0];
994 span->array->ChanType = GL_FLOAT;
1089 /* We can't pass a 'mask' array to the _mesa_pack_rgba_row() functions
1126 * This function may modify any of the array values in the span.
1138 const GLenum origChanType = span->array->ChanType;
1139 void * const origRgba = span->array->rgba;
1146 printf("%s() interp 0x%x array 0x%x\n", __func__,
1161 memset(span->array->mask, 1, span->end);
1182 /* array of pixel locations */
1185 if (span->array->mask[i]) {
1186 assert(span->array->x[i] >= fb->_Xmin);
1187 assert(span->array->x[i] < fb->_Xmax);
1188 assert(span->array->y[i] >= fb->_Ymin);
1189 assert(span->array->y[i] < fb->_Ymax);
1246 q->Result += span->array->mask[i];
1300 span->array->ChanType == GL_FLOAT) {
1318 const GLenum srcColorType = span->array->ChanType;
1327 /* re-use one of the attribute array buffers for rgbaSave */
1328 GLchan (*rgbaSave)[4] = (GLchan (*)[4]) span->array->attribs[0];
1335 /* set span->array->rgba to colors for renderbuffer's datatype */
1342 span->array->rgba = span->array->rgba8;
1345 span->array->rgba = (void *)
1346 span->array->attribs[VARYING_SLOT_COL0];
1352 memcpy(rgbaSave, span->array->rgba,
1374 /* array of pixel coords */
1376 span->array->ChanType, span->end,
1377 span->array->x, span->array->y,
1378 span->array->rgba, span->array->mask);
1383 span->array->ChanType,
1385 span->array->rgba,
1386 span->writeAll ? NULL: span->array->mask);
1391 memcpy(span->array->rgba, rgbaSave,
1404 span->array->ChanType = origChanType;
1405 span->array->rgba = origRgba;
1582 rbPixels = span->array->attribs[VARYING_SLOT_MAX - 1];
1586 get_values(ctx, rb, span->end, span->array->x, span->array->y,
1587 rbPixels, span->array->ChanType);
1591 rbPixels, span->array->ChanType);