Lines Matching refs:sampObj

75                       struct gl_sampler_object *sampObj)
77 _mesa_delete_sampler_handles(ctx, sampObj);
78 free(sampObj->Label);
79 FREE(sampObj);
117 _mesa_init_sampler_object(struct gl_sampler_object *sampObj, GLuint name)
119 sampObj->Name = name;
120 sampObj->RefCount = 1;
121 sampObj->Attrib.WrapS = GL_REPEAT;
122 sampObj->Attrib.WrapT = GL_REPEAT;
123 sampObj->Attrib.WrapR = GL_REPEAT;
124 sampObj->Attrib.state.wrap_s = PIPE_TEX_WRAP_REPEAT;
125 sampObj->Attrib.state.wrap_t = PIPE_TEX_WRAP_REPEAT;
126 sampObj->Attrib.state.wrap_r = PIPE_TEX_WRAP_REPEAT;
127 sampObj->Attrib.MinFilter = GL_NEAREST_MIPMAP_LINEAR;
128 sampObj->Attrib.MagFilter = GL_LINEAR;
129 sampObj->Attrib.state.min_img_filter = PIPE_TEX_FILTER_NEAREST;
130 sampObj->Attrib.state.min_mip_filter = PIPE_TEX_MIPFILTER_LINEAR;
131 sampObj->Attrib.state.mag_img_filter = PIPE_TEX_FILTER_LINEAR;
132 sampObj->Attrib.state.border_color.f[0] = 0;
133 sampObj->Attrib.state.border_color.f[1] = 0;
134 sampObj->Attrib.state.border_color.f[2] = 0;
135 sampObj->Attrib.state.border_color.f[3] = 0;
136 _mesa_update_is_border_color_nonzero(sampObj);
137 sampObj->Attrib.MinLod = -1000.0F;
138 sampObj->Attrib.MaxLod = 1000.0F;
139 sampObj->Attrib.state.min_lod = 0; /* Gallium doesn't allow negative numbers */
140 sampObj->Attrib.state.max_lod = 1000;
141 sampObj->Attrib.LodBias = 0.0F;
142 sampObj->Attrib.state.lod_bias = 0;
143 sampObj->Attrib.MaxAnisotropy = 1.0F;
144 sampObj->Attrib.state.max_anisotropy = 0; /* Gallium uses 0 instead of 1. */
145 sampObj->Attrib.CompareMode = GL_NONE;
146 sampObj->Attrib.CompareFunc = GL_LEQUAL;
147 sampObj->Attrib.state.compare_mode = PIPE_TEX_COMPARE_NONE;
148 sampObj->Attrib.state.compare_func = PIPE_FUNC_LEQUAL;
149 sampObj->Attrib.sRGBDecode = GL_DECODE_EXT;
150 sampObj->Attrib.CubeMapSeamless = GL_FALSE;
151 sampObj->Attrib.state.seamless_cube_map = false;
152 sampObj->Attrib.ReductionMode = GL_WEIGHTED_AVERAGE_EXT;
153 sampObj->Attrib.state.reduction_mode = PIPE_TEX_REDUCTION_WEIGHTED_AVERAGE;
154 sampObj->HandleAllocated = GL_FALSE;
157 _mesa_init_sampler_handles(sampObj);
163 struct gl_sampler_object *sampObj = CALLOC_STRUCT(gl_sampler_object);
164 if (sampObj) {
165 _mesa_init_sampler_object(sampObj, name);
167 return sampObj;
185 struct gl_sampler_object *sampObj;
187 sampObj = _mesa_new_sampler_object(ctx, samplers[i]);
188 if (!sampObj) {
195 sampObj, true);
256 struct gl_sampler_object *sampObj =
259 if (sampObj) {
262 if (ctx->Texture.Unit[j].Sampler == sampObj) {
271 _mesa_reference_sampler_object(ctx, &sampObj, NULL);
314 struct gl_sampler_object *sampObj)
316 if (ctx->Texture.Unit[unit].Sampler != sampObj) {
321 sampObj);
327 struct gl_sampler_object *sampObj;
333 sampObj = NULL;
336 sampObj = _mesa_lookup_samplerobj(ctx, sampler);
337 if (!no_error && !sampObj) {
344 _mesa_bind_sampler(ctx, unit, sampObj);
402 struct gl_sampler_object *sampObj;
406 sampObj = currentSampler;
408 sampObj = lookup_samplerobj_locked(ctx, samplers[i]);
416 if (!no_error && !sampObj) {
424 sampObj = NULL;
428 if (sampObj != currentSampler) {
431 sampObj);
868 struct gl_sampler_object *sampObj;
870 sampObj = _mesa_lookup_samplerobj(ctx, sampler);
871 if (!sampObj) {
883 if (!get && sampObj->HandleAllocated) {
894 return sampObj;
900 struct gl_sampler_object *sampObj;
904 sampObj = sampler_parameter_error_check(ctx, sampler, false,
906 if (!sampObj)
911 res = set_sampler_wrap_s(ctx, sampObj, param);
914 res = set_sampler_wrap_t(ctx, sampObj, param);
917 res = set_sampler_wrap_r(ctx, sampObj, param);
920 res = set_sampler_min_filter(ctx, sampObj, param);
923 res = set_sampler_mag_filter(ctx, sampObj, param);
926 res = set_sampler_min_lod(ctx, sampObj, (GLfloat) param);
929 res = set_sampler_max_lod(ctx, sampObj, (GLfloat) param);
932 res = set_sampler_lod_bias(ctx, sampObj, (GLfloat) param);
935 res = set_sampler_compare_mode(ctx, sampObj, param);
938 res = set_sampler_compare_func(ctx, sampObj, param);
941 res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) param);
944 res = set_sampler_cube_map_seamless(ctx, sampObj, param);
947 res = set_sampler_srgb_decode(ctx, sampObj, param);
950 res = set_sampler_reduction_mode(ctx, sampObj, param);
986 struct gl_sampler_object *sampObj;
990 sampObj = sampler_parameter_error_check(ctx, sampler, false,
992 if (!sampObj)
997 res = set_sampler_wrap_s(ctx, sampObj, (GLint) param);
1000 res = set_sampler_wrap_t(ctx, sampObj, (GLint) param);
1003 res = set_sampler_wrap_r(ctx, sampObj, (GLint) param);
1006 res = set_sampler_min_filter(ctx, sampObj, (GLint) param);
1009 res = set_sampler_mag_filter(ctx, sampObj, (GLint) param);
1012 res = set_sampler_min_lod(ctx, sampObj, param);
1015 res = set_sampler_max_lod(ctx, sampObj, param);
1018 res = set_sampler_lod_bias(ctx, sampObj, param);
1021 res = set_sampler_compare_mode(ctx, sampObj, (GLint) param);
1024 res = set_sampler_compare_func(ctx, sampObj, (GLint) param);
1027 res = set_sampler_max_anisotropy(ctx, sampObj, param);
1030 res = set_sampler_cube_map_seamless(ctx, sampObj, (GLboolean) param);
1033 res = set_sampler_srgb_decode(ctx, sampObj, (GLenum) param);
1036 res = set_sampler_reduction_mode(ctx, sampObj, (GLenum) param);
1071 struct gl_sampler_object *sampObj;
1075 sampObj = sampler_parameter_error_check(ctx, sampler, false,
1077 if (!sampObj)
1082 res = set_sampler_wrap_s(ctx, sampObj, params[0]);
1085 res = set_sampler_wrap_t(ctx, sampObj, params[0]);
1088 res = set_sampler_wrap_r(ctx, sampObj, params[0]);
1091 res = set_sampler_min_filter(ctx, sampObj, params[0]);
1094 res = set_sampler_mag_filter(ctx, sampObj, params[0]);
1097 res = set_sampler_min_lod(ctx, sampObj, (GLfloat) params[0]);
1100 res = set_sampler_max_lod(ctx, sampObj, (GLfloat) params[0]);
1103 res = set_sampler_lod_bias(ctx, sampObj, (GLfloat) params[0]);
1106 res = set_sampler_compare_mode(ctx, sampObj, params[0]);
1109 res = set_sampler_compare_func(ctx, sampObj, params[0]);
1112 res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) params[0]);
1115 res = set_sampler_cube_map_seamless(ctx, sampObj, params[0]);
1118 res = set_sampler_srgb_decode(ctx, sampObj, params[0]);
1121 res = set_sampler_reduction_mode(ctx, sampObj, params[0]);
1130 res = set_sampler_border_colorf(ctx, sampObj, c);
1164 struct gl_sampler_object *sampObj;
1168 sampObj = sampler_parameter_error_check(ctx, sampler, false,
1170 if (!sampObj)
1175 res = set_sampler_wrap_s(ctx, sampObj, (GLint) params[0]);
1178 res = set_sampler_wrap_t(ctx, sampObj, (GLint) params[0]);
1181 res = set_sampler_wrap_r(ctx, sampObj, (GLint) params[0]);
1184 res = set_sampler_min_filter(ctx, sampObj, (GLint) params[0]);
1187 res = set_sampler_mag_filter(ctx, sampObj, (GLint) params[0]);
1190 res = set_sampler_min_lod(ctx, sampObj, params[0]);
1193 res = set_sampler_max_lod(ctx, sampObj, params[0]);
1196 res = set_sampler_lod_bias(ctx, sampObj, params[0]);
1199 res = set_sampler_compare_mode(ctx, sampObj, (GLint) params[0]);
1202 res = set_sampler_compare_func(ctx, sampObj, (GLint) params[0]);
1205 res = set_sampler_max_anisotropy(ctx, sampObj, params[0]);
1208 res = set_sampler_cube_map_seamless(ctx, sampObj, (GLboolean) params[0]);
1211 res = set_sampler_srgb_decode(ctx, sampObj, (GLenum) params[0]);
1214 res = set_sampler_reduction_mode(ctx, sampObj, (GLenum) params[0]);
1217 res = set_sampler_border_colorf(ctx, sampObj, params);
1250 struct gl_sampler_object *sampObj;
1254 sampObj = sampler_parameter_error_check(ctx, sampler, false,
1256 if (!sampObj)
1261 res = set_sampler_wrap_s(ctx, sampObj, params[0]);
1264 res = set_sampler_wrap_t(ctx, sampObj, params[0]);
1267 res = set_sampler_wrap_r(ctx, sampObj, params[0]);
1270 res = set_sampler_min_filter(ctx, sampObj, params[0]);
1273 res = set_sampler_mag_filter(ctx, sampObj, params[0]);
1276 res = set_sampler_min_lod(ctx, sampObj, (GLfloat) params[0]);
1279 res = set_sampler_max_lod(ctx, sampObj, (GLfloat) params[0]);
1282 res = set_sampler_lod_bias(ctx, sampObj, (GLfloat) params[0]);
1285 res = set_sampler_compare_mode(ctx, sampObj, params[0]);
1288 res = set_sampler_compare_func(ctx, sampObj, params[0]);
1291 res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) params[0]);
1294 res = set_sampler_cube_map_seamless(ctx, sampObj, params[0]);
1297 res = set_sampler_srgb_decode(ctx, sampObj, (GLenum) params[0]);
1300 res = set_sampler_reduction_mode(ctx, sampObj, (GLenum) params[0]);
1303 res = set_sampler_border_colori(ctx, sampObj, params);
1337 struct gl_sampler_object *sampObj;
1341 sampObj = sampler_parameter_error_check(ctx, sampler, false,
1343 if (!sampObj)
1348 res = set_sampler_wrap_s(ctx, sampObj, params[0]);
1351 res = set_sampler_wrap_t(ctx, sampObj, params[0]);
1354 res = set_sampler_wrap_r(ctx, sampObj, params[0]);
1357 res = set_sampler_min_filter(ctx, sampObj, params[0]);
1360 res = set_sampler_mag_filter(ctx, sampObj, params[0]);
1363 res = set_sampler_min_lod(ctx, sampObj, (GLfloat) params[0]);
1366 res = set_sampler_max_lod(ctx, sampObj, (GLfloat) params[0]);
1369 res = set_sampler_lod_bias(ctx, sampObj, (GLfloat) params[0]);
1372 res = set_sampler_compare_mode(ctx, sampObj, params[0]);
1375 res = set_sampler_compare_func(ctx, sampObj, params[0]);
1378 res = set_sampler_max_anisotropy(ctx, sampObj, (GLfloat) params[0]);
1381 res = set_sampler_cube_map_seamless(ctx, sampObj, params[0]);
1384 res = set_sampler_srgb_decode(ctx, sampObj, (GLenum) params[0]);
1387 res = set_sampler_reduction_mode(ctx, sampObj, (GLenum) params[0]);
1390 res = set_sampler_border_colorui(ctx, sampObj, params);
1424 struct gl_sampler_object *sampObj;
1427 sampObj = sampler_parameter_error_check(ctx, sampler, true,
1429 if (!sampObj)
1434 *params = sampObj->Attrib.WrapS;
1437 *params = sampObj->Attrib.WrapT;
1440 *params = sampObj->Attrib.WrapR;
1443 *params = sampObj->Attrib.MinFilter;
1446 *params = sampObj->Attrib.MagFilter;
1452 *params = lroundf(sampObj->Attrib.MinLod);
1458 *params = lroundf(sampObj->Attrib.MaxLod);
1464 *params = lroundf(sampObj->Attrib.LodBias);
1469 *params = sampObj->Attrib.CompareMode;
1474 *params = sampObj->Attrib.CompareFunc;
1482 *params = lroundf(sampObj->Attrib.MaxAnisotropy);
1485 params[0] = FLOAT_TO_INT(sampObj->Attrib.state.border_color.f[0]);
1486 params[1] = FLOAT_TO_INT(sampObj->Attrib.state.border_color.f[1]);
1487 params[2] = FLOAT_TO_INT(sampObj->Attrib.state.border_color.f[2]);
1488 params[3] = FLOAT_TO_INT(sampObj->Attrib.state.border_color.f[3]);
1493 *params = sampObj->Attrib.CubeMapSeamless;
1498 *params = (GLenum) sampObj->Attrib.sRGBDecode;
1504 *params = (GLenum) sampObj->Attrib.ReductionMode;
1520 struct gl_sampler_object *sampObj;
1523 sampObj = sampler_parameter_error_check(ctx, sampler, true,
1525 if (!sampObj)
1530 *params = (GLfloat) sampObj->Attrib.WrapS;
1533 *params = (GLfloat) sampObj->Attrib.WrapT;
1536 *params = (GLfloat) sampObj->Attrib.WrapR;
1539 *params = (GLfloat) sampObj->Attrib.MinFilter;
1542 *params = (GLfloat) sampObj->Attrib.MagFilter;
1545 *params = sampObj->Attrib.MinLod;
1548 *params = sampObj->Attrib.MaxLod;
1551 *params = sampObj->Attrib.LodBias;
1554 *params = (GLfloat) sampObj->Attrib.CompareMode;
1557 *params = (GLfloat) sampObj->Attrib.CompareFunc;
1560 *params = sampObj->Attrib.MaxAnisotropy;
1563 params[0] = sampObj->Attrib.state.border_color.f[0];
1564 params[1] = sampObj->Attrib.state.border_color.f[1];
1565 params[2] = sampObj->Attrib.state.border_color.f[2];
1566 params[3] = sampObj->Attrib.state.border_color.f[3];
1571 *params = (GLfloat) sampObj->Attrib.CubeMapSeamless;
1576 *params = (GLfloat) sampObj->Attrib.sRGBDecode;
1582 *params = (GLfloat) sampObj->Attrib.ReductionMode;
1598 struct gl_sampler_object *sampObj;
1601 sampObj = sampler_parameter_error_check(ctx, sampler, true,
1603 if (!sampObj)
1608 *params = sampObj->Attrib.WrapS;
1611 *params = sampObj->Attrib.WrapT;
1614 *params = sampObj->Attrib.WrapR;
1617 *params = sampObj->Attrib.MinFilter;
1620 *params = sampObj->Attrib.MagFilter;
1623 *params = (GLint) sampObj->Attrib.MinLod;
1626 *params = (GLint) sampObj->Attrib.MaxLod;
1629 *params = (GLint) sampObj->Attrib.LodBias;
1632 *params = sampObj->Attrib.CompareMode;
1635 *params = sampObj->Attrib.CompareFunc;
1638 *params = (GLint) sampObj->Attrib.MaxAnisotropy;
1641 params[0] = sampObj->Attrib.state.border_color.i[0];
1642 params[1] = sampObj->Attrib.state.border_color.i[1];
1643 params[2] = sampObj->Attrib.state.border_color.i[2];
1644 params[3] = sampObj->Attrib.state.border_color.i[3];
1649 *params = sampObj->Attrib.CubeMapSeamless;
1654 *params = (GLenum) sampObj->Attrib.sRGBDecode;
1660 *params = (GLenum) sampObj->Attrib.ReductionMode;
1676 struct gl_sampler_object *sampObj;
1679 sampObj = sampler_parameter_error_check(ctx, sampler, true,
1681 if (!sampObj)
1686 *params = sampObj->Attrib.WrapS;
1689 *params = sampObj->Attrib.WrapT;
1692 *params = sampObj->Attrib.WrapR;
1695 *params = sampObj->Attrib.MinFilter;
1698 *params = sampObj->Attrib.MagFilter;
1701 *params = (GLuint) sampObj->Attrib.MinLod;
1704 *params = (GLuint) sampObj->Attrib.MaxLod;
1707 *params = (GLuint) sampObj->Attrib.LodBias;
1710 *params = sampObj->Attrib.CompareMode;
1713 *params = sampObj->Attrib.CompareFunc;
1716 *params = (GLuint) sampObj->Attrib.MaxAnisotropy;
1719 params[0] = sampObj->Attrib.state.border_color.ui[0];
1720 params[1] = sampObj->Attrib.state.border_color.ui[1];
1721 params[2] = sampObj->Attrib.state.border_color.ui[2];
1722 params[3] = sampObj->Attrib.state.border_color.ui[3];
1727 *params = sampObj->Attrib.CubeMapSeamless;
1732 *params = (GLenum) sampObj->Attrib.sRGBDecode;
1738 *params = (GLenum) sampObj->Attrib.ReductionMode;