Module: Mesa Branch: main Commit: f7a51e94692cc5a523b0fb7b7caef4a05cfc30f1 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f7a51e94692cc5a523b0fb7b7caef4a05cfc30f1
Author: Mike Blumenkrantz <[email protected]> Date: Tue Nov 16 10:14:37 2021 -0500 mesa/st: make sampler_type_for_target public Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Acked-by: Marek Olšák <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11984> --- src/mesa/state_tracker/st_pbo.c | 17 +++-------------- src/mesa/state_tracker/st_pbo.h | 14 ++++++++++++++ 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/src/mesa/state_tracker/st_pbo.c b/src/mesa/state_tracker/st_pbo.c index b8c3a948380..403d47e91c7 100644 --- a/src/mesa/state_tracker/st_pbo.c +++ b/src/mesa/state_tracker/st_pbo.c @@ -44,17 +44,6 @@ #include "compiler/nir/nir_builder.h" -/* Conversion to apply in the fragment shader. */ -enum st_pbo_conversion { - ST_PBO_CONVERT_FLOAT = 0, - ST_PBO_CONVERT_UINT, - ST_PBO_CONVERT_SINT, - ST_PBO_CONVERT_UINT_TO_SINT, - ST_PBO_CONVERT_SINT_TO_UINT, - - ST_NUM_PBO_CONVERSIONS -}; - /* Final setup of buffer addressing information. * * buf_offset is in pixels. @@ -385,8 +374,8 @@ st_pbo_create_gs(struct st_context *st) return ureg_create_shader_and_destroy(ureg, st->pipe); } -static const struct glsl_type * -sampler_type_for_target(enum pipe_texture_target target, +const struct glsl_type * +st_pbo_sampler_type_for_target(enum pipe_texture_target target, enum st_pbo_conversion conv) { bool is_array = target >= PIPE_TEXTURE_1D_ARRAY; @@ -518,7 +507,7 @@ create_fs(struct st_context *st, bool download, nir_variable *tex_var = nir_variable_create(b.shader, nir_var_uniform, - sampler_type_for_target(target, conversion), + st_pbo_sampler_type_for_target(target, conversion), "tex"); tex_var->data.explicit_binding = true; tex_var->data.binding = 0; diff --git a/src/mesa/state_tracker/st_pbo.h b/src/mesa/state_tracker/st_pbo.h index 54626580f01..91a50dee325 100644 --- a/src/mesa/state_tracker/st_pbo.h +++ b/src/mesa/state_tracker/st_pbo.h @@ -58,6 +58,20 @@ struct st_pbo_addresses { } constants; }; +/* Conversion to apply in the fragment shader. */ +enum st_pbo_conversion { + ST_PBO_CONVERT_FLOAT = 0, + ST_PBO_CONVERT_UINT, + ST_PBO_CONVERT_SINT, + ST_PBO_CONVERT_UINT_TO_SINT, + ST_PBO_CONVERT_SINT_TO_UINT, + + ST_NUM_PBO_CONVERSIONS +}; + +const struct glsl_type * +st_pbo_sampler_type_for_target(enum pipe_texture_target target, + enum st_pbo_conversion conv); bool st_pbo_addresses_setup(struct st_context *st, struct pipe_resource *buf, intptr_t buf_offset,
