Zebediah Figura : vkd3d-shader: Introduce struct vkd3d_shader_hlsl_source_info.
Module: vkd3d Branch: master Commit: cbe4a3adff9452084616ac659ee73f7baa46e6e2 URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=cbe4a3adff9452084616ac65... Author: Zebediah Figura <zfigura(a)codeweavers.com> Date: Fri Sep 25 16:53:02 2020 -0500 vkd3d-shader: Introduce struct vkd3d_shader_hlsl_source_info. Signed-off-by: Zebediah Figura <zfigura(a)codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- include/vkd3d_shader.h | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/include/vkd3d_shader.h b/include/vkd3d_shader.h index 85588bc..7b95896 100644 --- a/include/vkd3d_shader.h +++ b/include/vkd3d_shader.h @@ -54,6 +54,11 @@ enum vkd3d_shader_structure_type /** The structure is a vkd3d_shader_transform_feedback_info structure. */ VKD3D_SHADER_STRUCTURE_TYPE_TRANSFORM_FEEDBACK_INFO, + /** + * The structure is a vkd3d_shader_hlsl_source_info structure. + * \since 1.3 + */ + VKD3D_SHADER_STRUCTURE_TYPE_HLSL_SOURCE_INFO, /** * The structure is a vkd3d_shader_preprocess_info structure. * \since 1.3 @@ -739,6 +744,39 @@ struct vkd3d_shader_preprocess_info void *include_context; }; +/** + * A chained structure containing HLSL compilation parameters. + * + * This structure is optional. + * + * This structure extends vkd3d_shader_compile_info. + * + * This structure contains only input parameters. + * + * \since 1.3 + */ +struct vkd3d_shader_hlsl_source_info +{ + /** Must be set to VKD3D_SHADER_STRUCTURE_TYPE_HLSL_SOURCE_INFO. */ + enum vkd3d_shader_structure_type type; + /** Optional pointer to a structure containing further parameters. */ + const void *next; + + /** + * Optional pointer to a null-terminated string containing the shader entry + * point. + * + * If this parameter is NULL, vkd3d-shader uses the entry point "main". + */ + const char *entry_point; + struct vkd3d_shader_code secondary_code; + /** + * Pointer to a null-terminated string containing the target shader + * profile. + */ + const char *profile; +}; + /* root signature 1.0 */ enum vkd3d_shader_filter {
participants (1)
-
Alexandre Julliard