[PATCH vkd3d v2 5/5] vkd3d-shader: Introduce struct vkd3d_shader_hlsl_source_info.

Zebediah Figura zfigura at codeweavers.com
Fri Sep 25 16:41:25 CDT 2020


Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
---
 include/vkd3d_shader.h | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/include/vkd3d_shader.h b/include/vkd3d_shader.h
index f3b7aaf1..5d446e34 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
@@ -789,6 +794,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
 {
-- 
2.28.0




More information about the wine-devel mailing list