• Home
  • Raw
  • Download

Lines Matching +full:attrib +full:-

2  * Mesa 3-D graphics library
63 _mesa_HashLookup(&ctx->Shared->SamplerObjects, name); in _mesa_lookup_samplerobj()
70 _mesa_HashLookupLocked(&ctx->Shared->SamplerObjects, name); in lookup_samplerobj_locked()
78 free(sampObj->Label); in delete_sampler_object()
90 assert(*ptr != samp); /* The inline wrapper should prevent no-op calls */ in _mesa_reference_sampler_object_()
96 assert(oldSamp->RefCount > 0); in _mesa_reference_sampler_object_()
98 if (p_atomic_dec_zero(&oldSamp->RefCount)) in _mesa_reference_sampler_object_()
104 assert(samp->RefCount > 0); in _mesa_reference_sampler_object_()
106 p_atomic_inc(&samp->RefCount); in _mesa_reference_sampler_object_()
119 sampObj->Name = name; in _mesa_init_sampler_object()
120 sampObj->RefCount = 1; in _mesa_init_sampler_object()
121 sampObj->Attrib.WrapS = GL_REPEAT; in _mesa_init_sampler_object()
122 sampObj->Attrib.WrapT = GL_REPEAT; in _mesa_init_sampler_object()
123 sampObj->Attrib.WrapR = GL_REPEAT; in _mesa_init_sampler_object()
124 sampObj->Attrib.state.wrap_s = PIPE_TEX_WRAP_REPEAT; in _mesa_init_sampler_object()
125 sampObj->Attrib.state.wrap_t = PIPE_TEX_WRAP_REPEAT; in _mesa_init_sampler_object()
126 sampObj->Attrib.state.wrap_r = PIPE_TEX_WRAP_REPEAT; in _mesa_init_sampler_object()
127 sampObj->Attrib.MinFilter = GL_NEAREST_MIPMAP_LINEAR; in _mesa_init_sampler_object()
128 sampObj->Attrib.MagFilter = GL_LINEAR; in _mesa_init_sampler_object()
129 sampObj->Attrib.state.min_img_filter = PIPE_TEX_FILTER_NEAREST; in _mesa_init_sampler_object()
130 sampObj->Attrib.state.min_mip_filter = PIPE_TEX_MIPFILTER_LINEAR; in _mesa_init_sampler_object()
131 sampObj->Attrib.state.mag_img_filter = PIPE_TEX_FILTER_LINEAR; in _mesa_init_sampler_object()
132 sampObj->Attrib.state.border_color.f[0] = 0; in _mesa_init_sampler_object()
133 sampObj->Attrib.state.border_color.f[1] = 0; in _mesa_init_sampler_object()
134 sampObj->Attrib.state.border_color.f[2] = 0; in _mesa_init_sampler_object()
135 sampObj->Attrib.state.border_color.f[3] = 0; in _mesa_init_sampler_object()
137 sampObj->Attrib.MinLod = -1000.0F; in _mesa_init_sampler_object()
138 sampObj->Attrib.MaxLod = 1000.0F; in _mesa_init_sampler_object()
139 sampObj->Attrib.state.min_lod = 0; /* Gallium doesn't allow negative numbers */ in _mesa_init_sampler_object()
140 sampObj->Attrib.state.max_lod = 1000; in _mesa_init_sampler_object()
141 sampObj->Attrib.LodBias = 0.0F; in _mesa_init_sampler_object()
142 sampObj->Attrib.state.lod_bias = 0; in _mesa_init_sampler_object()
143 sampObj->Attrib.MaxAnisotropy = 1.0F; in _mesa_init_sampler_object()
144 sampObj->Attrib.state.max_anisotropy = 0; /* Gallium uses 0 instead of 1. */ in _mesa_init_sampler_object()
145 sampObj->Attrib.CompareMode = GL_NONE; in _mesa_init_sampler_object()
146 sampObj->Attrib.CompareFunc = GL_LEQUAL; in _mesa_init_sampler_object()
147 sampObj->Attrib.state.compare_mode = PIPE_TEX_COMPARE_NONE; in _mesa_init_sampler_object()
148 sampObj->Attrib.state.compare_func = PIPE_FUNC_LEQUAL; in _mesa_init_sampler_object()
149 sampObj->Attrib.sRGBDecode = GL_DECODE_EXT; in _mesa_init_sampler_object()
150 sampObj->Attrib.CubeMapSeamless = GL_FALSE; in _mesa_init_sampler_object()
151 sampObj->Attrib.state.seamless_cube_map = false; in _mesa_init_sampler_object()
152 sampObj->Attrib.ReductionMode = GL_WEIGHTED_AVERAGE_EXT; in _mesa_init_sampler_object()
153 sampObj->Attrib.state.reduction_mode = PIPE_TEX_REDUCTION_WEIGHTED_AVERAGE; in _mesa_init_sampler_object()
154 sampObj->HandleAllocated = GL_FALSE; in _mesa_init_sampler_object()
179 _mesa_HashLockMutex(&ctx->Shared->SamplerObjects); in create_samplers()
181 _mesa_HashFindFreeKeys(&ctx->Shared->SamplerObjects, samplers, count); in create_samplers()
189 _mesa_HashUnlockMutex(&ctx->Shared->SamplerObjects); in create_samplers()
194 _mesa_HashInsertLocked(&ctx->Shared->SamplerObjects, samplers[i], in create_samplers()
198 _mesa_HashUnlockMutex(&ctx->Shared->SamplerObjects); in create_samplers()
251 _mesa_HashLockMutex(&ctx->Shared->SamplerObjects); in delete_samplers()
261 for (j = 0; j < ctx->Const.MaxCombinedTextureImageUnits; j++) { in delete_samplers()
262 if (ctx->Texture.Unit[j].Sampler == sampObj) { in delete_samplers()
264 _mesa_reference_sampler_object(ctx, &ctx->Texture.Unit[j].Sampler, NULL); in delete_samplers()
268 /* The ID is immediately freed for re-use */ in delete_samplers()
269 _mesa_HashRemoveLocked(&ctx->Shared->SamplerObjects, samplers[i]); in delete_samplers()
276 _mesa_HashUnlockMutex(&ctx->Shared->SamplerObjects); in delete_samplers()
316 if (ctx->Texture.Unit[unit].Sampler != sampObj) { in _mesa_bind_sampler()
320 _mesa_reference_sampler_object(ctx, &ctx->Texture.Unit[unit].Sampler, in _mesa_bind_sampler()
335 /* user-defined sampler object */ in bind_sampler()
359 if (unit >= ctx->Const.MaxCombinedTextureImageUnits) { in _mesa_BindSampler()
377 /* Note that the error semantics for multi-bind commands differ from in bind_samplers()
384 * unfortunate for multi-bind commands, because it would require in bind_samplers()
396 _mesa_HashLockMutex(&ctx->Shared->SamplerObjects); in bind_samplers()
401 ctx->Texture.Unit[unit].Sampler; in bind_samplers()
405 if (currentSampler && currentSampler->Name == samplers[i]) in bind_samplers()
430 &ctx->Texture.Unit[unit].Sampler, in bind_samplers()
432 ctx->NewState |= _NEW_TEXTURE_OBJECT; in bind_samplers()
433 ctx->PopAttribState |= GL_TEXTURE_BIT; in bind_samplers()
437 _mesa_HashUnlockMutex(&ctx->Shared->SamplerObjects); in bind_samplers()
439 /* Unbind all samplers in the range <first> through <first>+<count>-1 */ in bind_samplers()
443 if (ctx->Texture.Unit[unit].Sampler) { in bind_samplers()
445 &ctx->Texture.Unit[unit].Sampler, in bind_samplers()
447 ctx->NewState |= _NEW_TEXTURE_OBJECT; in bind_samplers()
448 ctx->PopAttribState |= GL_TEXTURE_BIT; in bind_samplers()
474 if (first + count > ctx->Const.MaxCombinedTextureImageUnits) { in _mesa_BindSamplers()
478 first, count, ctx->Const.MaxCombinedTextureImageUnits); in _mesa_BindSamplers()
493 const struct gl_extensions * const e = &ctx->Extensions; in validate_texture_wrap_mode()
509 * - Texture wrap mode CLAMP - CLAMP is no longer accepted as a value of in validate_texture_wrap_mode()
524 return e->EXT_texture_mirror_clamp; in validate_texture_wrap_mode()
548 if (samp->Attrib.WrapS == param) in set_sampler_wrap_s()
552 …update_sampler_gl_clamp(ctx, samp, is_wrap_gl_clamp(samp->Attrib.WrapS), is_wrap_gl_clamp(param), … in set_sampler_wrap_s()
553 samp->Attrib.WrapS = param; in set_sampler_wrap_s()
554 samp->Attrib.state.wrap_s = wrap_to_gallium(param); in set_sampler_wrap_s()
566 if (samp->Attrib.WrapT == param) in set_sampler_wrap_t()
570 …update_sampler_gl_clamp(ctx, samp, is_wrap_gl_clamp(samp->Attrib.WrapT), is_wrap_gl_clamp(param), … in set_sampler_wrap_t()
571 samp->Attrib.WrapT = param; in set_sampler_wrap_t()
572 samp->Attrib.state.wrap_t = wrap_to_gallium(param); in set_sampler_wrap_t()
584 if (samp->Attrib.WrapR == param) in set_sampler_wrap_r()
588 …update_sampler_gl_clamp(ctx, samp, is_wrap_gl_clamp(samp->Attrib.WrapR), is_wrap_gl_clamp(param), … in set_sampler_wrap_r()
589 samp->Attrib.WrapR = param; in set_sampler_wrap_r()
590 samp->Attrib.state.wrap_r = wrap_to_gallium(param); in set_sampler_wrap_r()
601 if (samp->Attrib.MinFilter == param) in set_sampler_min_filter()
612 samp->Attrib.MinFilter = param; in set_sampler_min_filter()
613 samp->Attrib.state.min_img_filter = filter_to_gallium(param); in set_sampler_min_filter()
614 samp->Attrib.state.min_mip_filter = mipfilter_to_gallium(param); in set_sampler_min_filter()
627 if (samp->Attrib.MagFilter == param) in set_sampler_mag_filter()
634 samp->Attrib.MagFilter = param; in set_sampler_mag_filter()
635 samp->Attrib.state.mag_img_filter = filter_to_gallium(param); in set_sampler_mag_filter()
648 if (samp->Attrib.LodBias == param) in set_sampler_lod_bias()
652 samp->Attrib.LodBias = param; in set_sampler_lod_bias()
653 samp->Attrib.state.lod_bias = util_quantize_lod_bias(param); in set_sampler_lod_bias()
664 memcpy(samp->Attrib.state.border_color.f, params, 4 * sizeof(float)); in set_sampler_border_colorf()
676 memcpy(samp->Attrib.state.border_color.i, params, 4 * sizeof(float)); in set_sampler_border_colori()
688 memcpy(samp->Attrib.state.border_color.ui, params, 4 * sizeof(float)); in set_sampler_border_colorui()
698 if (samp->Attrib.MinLod == param) in set_sampler_min_lod()
702 samp->Attrib.MinLod = param; in set_sampler_min_lod()
703 samp->Attrib.state.min_lod = MAX2(param, 0.0f); /* only positive */ in set_sampler_min_lod()
713 if (samp->Attrib.MaxLod == param) in set_sampler_max_lod()
717 samp->Attrib.MaxLod = param; in set_sampler_max_lod()
718 samp->Attrib.state.max_lod = param; in set_sampler_max_lod()
731 if (!ctx->Extensions.ARB_shadow) in set_sampler_compare_mode()
734 if (samp->Attrib.CompareMode == param) in set_sampler_compare_mode()
740 samp->Attrib.CompareMode = param; in set_sampler_compare_mode()
756 if (!ctx->Extensions.ARB_shadow) in set_sampler_compare_func()
759 if (samp->Attrib.CompareFunc == param) in set_sampler_compare_func()
772 samp->Attrib.CompareFunc = param; in set_sampler_compare_func()
773 samp->Attrib.state.compare_func = func_to_gallium(param); in set_sampler_compare_func()
785 if (!ctx->Extensions.EXT_texture_filter_anisotropic) in set_sampler_max_anisotropy()
788 if (samp->Attrib.MaxAnisotropy == param) in set_sampler_max_anisotropy()
796 samp->Attrib.MaxAnisotropy = MIN2(param, ctx->Const.MaxTextureMaxAnisotropy); in set_sampler_max_anisotropy()
798 samp->Attrib.state.max_anisotropy = samp->Attrib.MaxAnisotropy == 1 ? in set_sampler_max_anisotropy()
799 0 : samp->Attrib.MaxAnisotropy; in set_sampler_max_anisotropy()
809 || !ctx->Extensions.AMD_seamless_cubemap_per_texture) in set_sampler_cube_map_seamless()
812 if (samp->Attrib.CubeMapSeamless == param) in set_sampler_cube_map_seamless()
819 samp->Attrib.CubeMapSeamless = param; in set_sampler_cube_map_seamless()
820 samp->Attrib.state.seamless_cube_map = param; in set_sampler_cube_map_seamless()
828 if (!ctx->Extensions.EXT_texture_sRGB_decode) in set_sampler_srgb_decode()
831 if (samp->Attrib.sRGBDecode == param) in set_sampler_srgb_decode()
849 samp->Attrib.sRGBDecode = param; in set_sampler_srgb_decode()
857 if (!ctx->Extensions.EXT_texture_filter_minmax && in set_sampler_reduction_mode()
861 if (samp->Attrib.ReductionMode == param) in set_sampler_reduction_mode()
868 samp->Attrib.ReductionMode = param; in set_sampler_reduction_mode()
869 samp->Attrib.state.reduction_mode = reduction_to_gallium(param); in set_sampler_reduction_mode()
892 if (!get && sampObj->HandleAllocated) { in sampler_parameter_error_check()
972 /* state change - we do nothing special at this time */ in _mesa_SamplerParameteri()
1058 /* state change - we do nothing special at this time */ in _mesa_SamplerParameterf()
1151 /* state change - we do nothing special at this time */ in _mesa_SamplerParameteriv()
1237 /* state change - we do nothing special at this time */ in _mesa_SamplerParameterfv()
1323 /* state change - we do nothing special at this time */ in _mesa_SamplerParameterIiv()
1410 /* state change - we do nothing special at this time */ in _mesa_SamplerParameterIuiv()
1443 *params = sampObj->Attrib.WrapS; in _mesa_GetSamplerParameteriv()
1446 *params = sampObj->Attrib.WrapT; in _mesa_GetSamplerParameteriv()
1449 *params = sampObj->Attrib.WrapR; in _mesa_GetSamplerParameteriv()
1452 *params = sampObj->Attrib.MinFilter; in _mesa_GetSamplerParameteriv()
1455 *params = sampObj->Attrib.MagFilter; in _mesa_GetSamplerParameteriv()
1458 /* GL spec 'Data Conversions' section specifies that floating-point in _mesa_GetSamplerParameteriv()
1461 *params = lroundf(sampObj->Attrib.MinLod); in _mesa_GetSamplerParameteriv()
1464 /* GL spec 'Data Conversions' section specifies that floating-point in _mesa_GetSamplerParameteriv()
1467 *params = lroundf(sampObj->Attrib.MaxLod); in _mesa_GetSamplerParameteriv()
1470 /* GL spec 'Data Conversions' section specifies that floating-point in _mesa_GetSamplerParameteriv()
1473 *params = lroundf(sampObj->Attrib.LodBias); in _mesa_GetSamplerParameteriv()
1476 if (!ctx->Extensions.ARB_shadow) in _mesa_GetSamplerParameteriv()
1478 *params = sampObj->Attrib.CompareMode; in _mesa_GetSamplerParameteriv()
1481 if (!ctx->Extensions.ARB_shadow) in _mesa_GetSamplerParameteriv()
1483 *params = sampObj->Attrib.CompareFunc; in _mesa_GetSamplerParameteriv()
1486 if (!ctx->Extensions.EXT_texture_filter_anisotropic) in _mesa_GetSamplerParameteriv()
1488 /* GL spec 'Data Conversions' section specifies that floating-point in _mesa_GetSamplerParameteriv()
1491 *params = lroundf(sampObj->Attrib.MaxAnisotropy); in _mesa_GetSamplerParameteriv()
1494 params[0] = FLOAT_TO_INT(sampObj->Attrib.state.border_color.f[0]); in _mesa_GetSamplerParameteriv()
1495 params[1] = FLOAT_TO_INT(sampObj->Attrib.state.border_color.f[1]); in _mesa_GetSamplerParameteriv()
1496 params[2] = FLOAT_TO_INT(sampObj->Attrib.state.border_color.f[2]); in _mesa_GetSamplerParameteriv()
1497 params[3] = FLOAT_TO_INT(sampObj->Attrib.state.border_color.f[3]); in _mesa_GetSamplerParameteriv()
1500 if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) in _mesa_GetSamplerParameteriv()
1502 *params = sampObj->Attrib.CubeMapSeamless; in _mesa_GetSamplerParameteriv()
1505 if (!ctx->Extensions.EXT_texture_sRGB_decode) in _mesa_GetSamplerParameteriv()
1507 *params = (GLenum) sampObj->Attrib.sRGBDecode; in _mesa_GetSamplerParameteriv()
1510 if (!ctx->Extensions.EXT_texture_filter_minmax && in _mesa_GetSamplerParameteriv()
1513 *params = (GLenum) sampObj->Attrib.ReductionMode; in _mesa_GetSamplerParameteriv()
1539 *params = (GLfloat) sampObj->Attrib.WrapS; in _mesa_GetSamplerParameterfv()
1542 *params = (GLfloat) sampObj->Attrib.WrapT; in _mesa_GetSamplerParameterfv()
1545 *params = (GLfloat) sampObj->Attrib.WrapR; in _mesa_GetSamplerParameterfv()
1548 *params = (GLfloat) sampObj->Attrib.MinFilter; in _mesa_GetSamplerParameterfv()
1551 *params = (GLfloat) sampObj->Attrib.MagFilter; in _mesa_GetSamplerParameterfv()
1554 *params = sampObj->Attrib.MinLod; in _mesa_GetSamplerParameterfv()
1557 *params = sampObj->Attrib.MaxLod; in _mesa_GetSamplerParameterfv()
1560 *params = sampObj->Attrib.LodBias; in _mesa_GetSamplerParameterfv()
1563 *params = (GLfloat) sampObj->Attrib.CompareMode; in _mesa_GetSamplerParameterfv()
1566 *params = (GLfloat) sampObj->Attrib.CompareFunc; in _mesa_GetSamplerParameterfv()
1569 *params = sampObj->Attrib.MaxAnisotropy; in _mesa_GetSamplerParameterfv()
1572 params[0] = sampObj->Attrib.state.border_color.f[0]; in _mesa_GetSamplerParameterfv()
1573 params[1] = sampObj->Attrib.state.border_color.f[1]; in _mesa_GetSamplerParameterfv()
1574 params[2] = sampObj->Attrib.state.border_color.f[2]; in _mesa_GetSamplerParameterfv()
1575 params[3] = sampObj->Attrib.state.border_color.f[3]; in _mesa_GetSamplerParameterfv()
1578 if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) in _mesa_GetSamplerParameterfv()
1580 *params = (GLfloat) sampObj->Attrib.CubeMapSeamless; in _mesa_GetSamplerParameterfv()
1583 if (!ctx->Extensions.EXT_texture_sRGB_decode) in _mesa_GetSamplerParameterfv()
1585 *params = (GLfloat) sampObj->Attrib.sRGBDecode; in _mesa_GetSamplerParameterfv()
1588 if (!ctx->Extensions.EXT_texture_filter_minmax && in _mesa_GetSamplerParameterfv()
1591 *params = (GLfloat) sampObj->Attrib.ReductionMode; in _mesa_GetSamplerParameterfv()
1617 *params = sampObj->Attrib.WrapS; in _mesa_GetSamplerParameterIiv()
1620 *params = sampObj->Attrib.WrapT; in _mesa_GetSamplerParameterIiv()
1623 *params = sampObj->Attrib.WrapR; in _mesa_GetSamplerParameterIiv()
1626 *params = sampObj->Attrib.MinFilter; in _mesa_GetSamplerParameterIiv()
1629 *params = sampObj->Attrib.MagFilter; in _mesa_GetSamplerParameterIiv()
1632 *params = (GLint) sampObj->Attrib.MinLod; in _mesa_GetSamplerParameterIiv()
1635 *params = (GLint) sampObj->Attrib.MaxLod; in _mesa_GetSamplerParameterIiv()
1638 *params = (GLint) sampObj->Attrib.LodBias; in _mesa_GetSamplerParameterIiv()
1641 *params = sampObj->Attrib.CompareMode; in _mesa_GetSamplerParameterIiv()
1644 *params = sampObj->Attrib.CompareFunc; in _mesa_GetSamplerParameterIiv()
1647 *params = (GLint) sampObj->Attrib.MaxAnisotropy; in _mesa_GetSamplerParameterIiv()
1650 params[0] = sampObj->Attrib.state.border_color.i[0]; in _mesa_GetSamplerParameterIiv()
1651 params[1] = sampObj->Attrib.state.border_color.i[1]; in _mesa_GetSamplerParameterIiv()
1652 params[2] = sampObj->Attrib.state.border_color.i[2]; in _mesa_GetSamplerParameterIiv()
1653 params[3] = sampObj->Attrib.state.border_color.i[3]; in _mesa_GetSamplerParameterIiv()
1656 if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) in _mesa_GetSamplerParameterIiv()
1658 *params = sampObj->Attrib.CubeMapSeamless; in _mesa_GetSamplerParameterIiv()
1661 if (!ctx->Extensions.EXT_texture_sRGB_decode) in _mesa_GetSamplerParameterIiv()
1663 *params = (GLenum) sampObj->Attrib.sRGBDecode; in _mesa_GetSamplerParameterIiv()
1666 if (!ctx->Extensions.EXT_texture_filter_minmax && in _mesa_GetSamplerParameterIiv()
1669 *params = (GLenum) sampObj->Attrib.ReductionMode; in _mesa_GetSamplerParameterIiv()
1695 *params = sampObj->Attrib.WrapS; in _mesa_GetSamplerParameterIuiv()
1698 *params = sampObj->Attrib.WrapT; in _mesa_GetSamplerParameterIuiv()
1701 *params = sampObj->Attrib.WrapR; in _mesa_GetSamplerParameterIuiv()
1704 *params = sampObj->Attrib.MinFilter; in _mesa_GetSamplerParameterIuiv()
1707 *params = sampObj->Attrib.MagFilter; in _mesa_GetSamplerParameterIuiv()
1710 *params = (GLuint) sampObj->Attrib.MinLod; in _mesa_GetSamplerParameterIuiv()
1713 *params = (GLuint) sampObj->Attrib.MaxLod; in _mesa_GetSamplerParameterIuiv()
1716 *params = (GLuint) sampObj->Attrib.LodBias; in _mesa_GetSamplerParameterIuiv()
1719 *params = sampObj->Attrib.CompareMode; in _mesa_GetSamplerParameterIuiv()
1722 *params = sampObj->Attrib.CompareFunc; in _mesa_GetSamplerParameterIuiv()
1725 *params = (GLuint) sampObj->Attrib.MaxAnisotropy; in _mesa_GetSamplerParameterIuiv()
1728 params[0] = sampObj->Attrib.state.border_color.ui[0]; in _mesa_GetSamplerParameterIuiv()
1729 params[1] = sampObj->Attrib.state.border_color.ui[1]; in _mesa_GetSamplerParameterIuiv()
1730 params[2] = sampObj->Attrib.state.border_color.ui[2]; in _mesa_GetSamplerParameterIuiv()
1731 params[3] = sampObj->Attrib.state.border_color.ui[3]; in _mesa_GetSamplerParameterIuiv()
1734 if (!ctx->Extensions.AMD_seamless_cubemap_per_texture) in _mesa_GetSamplerParameterIuiv()
1736 *params = sampObj->Attrib.CubeMapSeamless; in _mesa_GetSamplerParameterIuiv()
1739 if (!ctx->Extensions.EXT_texture_sRGB_decode) in _mesa_GetSamplerParameterIuiv()
1741 *params = (GLenum) sampObj->Attrib.sRGBDecode; in _mesa_GetSamplerParameterIuiv()
1744 if (!ctx->Extensions.EXT_texture_filter_minmax && in _mesa_GetSamplerParameterIuiv()
1747 *params = (GLenum) sampObj->Attrib.ReductionMode; in _mesa_GetSamplerParameterIuiv()