Module: vkd3d
Branch: master
Commit: 7fbd753cf7f4585d14d144b2dcf03892855c2687
URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/7fbd753cf7f4585d14d144b2dcf03…
Author: Giovanni Mascellani <gmascellani(a)codeweavers.com>
Date: Sun Apr 21 00:01:03 2024 +0200
include: Document structure vkd3d_host_time_domain_info.
---
include/vkd3d.h | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/include/vkd3d.h b/include/vkd3d.h
index 46867d73..c350c5ea 100644
--- a/include/vkd3d.h
+++ b/include/vkd3d.h
@@ -214,12 +214,26 @@ struct vkd3d_application_info
enum vkd3d_api_version api_version;
};
-/* Extends vkd3d_instance_create_info. Available since 1.3. */
+/**
+ * A chained structure to specify the host time domain.
+ *
+ * This structure extends vkd3d_instance_create_info.
+ *
+ * \since 1.3
+ */
struct vkd3d_host_time_domain_info
{
+ /** Must be set to VKD3D_STRUCTURE_TYPE_HOST_TIME_DOMAIN_INFO. */
enum vkd3d_structure_type type;
+ /** Optional pointer to a structure containing further parameters. */
const void *next;
+ /**
+ * The number of clock ticks per second, used for GetClockCalibration(). It should normally
+ * match the expected result of QueryPerformanceFrequency(). If this chained structure is not
+ * used then 10 millions is used, which means that each tick is a tenth of microsecond, or
+ * equivalently 100 nanoseconds.
+ */
uint64_t ticks_per_second;
};
Module: vkd3d
Branch: master
Commit: d2d4ed9f630080664e013ebbba86846f4b4b8d2c
URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/d2d4ed9f630080664e013ebbba868…
Author: Giovanni Mascellani <gmascellani(a)codeweavers.com>
Date: Sun Apr 21 00:00:29 2024 +0200
include: Document structure vkd3d_application_info.
---
include/vkd3d.h | 31 ++++++++++++++++++++++++++++---
1 file changed, 28 insertions(+), 3 deletions(-)
diff --git a/include/vkd3d.h b/include/vkd3d.h
index 6e0c82f8..46867d73 100644
--- a/include/vkd3d.h
+++ b/include/vkd3d.h
@@ -174,18 +174,43 @@ struct vkd3d_optional_instance_extensions_info
uint32_t extension_count;
};
-/* Extends vkd3d_instance_create_info. Available since 1.2. */
+/**
+ * A chained structure to specify application information.
+ *
+ * This structure extends vkd3d_instance_create_info.
+ *
+ * \since 1.2
+ */
struct vkd3d_application_info
{
+ /** Must be set to VKD3D_STRUCTURE_TYPE_APPLICATION_INFO. */
enum vkd3d_structure_type type;
+ /** Optional pointer to a structure containing further parameters. */
const void *next;
+ /**
+ * The application's name, to be passed to the Vulkan implementation. If it is NULL, a name is
+ * computed from the process executable filename. If that cannot be done, the empty string is
+ * used.
+ */
const char *application_name;
+ /** The application's version, to be passed to the Vulkan implementation. */
uint32_t application_version;
- const char *engine_name; /* "vkd3d" if NULL */
- uint32_t engine_version; /* vkd3d version if engine_name is NULL */
+ /**
+ * The engine name, to be passed to the Vulkan implementation. If it is NULL, "vkd3d" is used.
+ */
+ const char *engine_name;
+ /**
+ * The engine version, to be passed to the Vulkan implementation. If it is 0, the version is
+ * computed from the vkd3d library version.
+ */
+ uint32_t engine_version;
+ /**
+ * The vkd3d API version to use, to guarantee backward compatibility of the shared library. If
+ * this chained structure is not used then VKD3D_API_VERSION_1_0 is used.
+ */
enum vkd3d_api_version api_version;
};
Module: vkd3d
Branch: master
Commit: 995a316fba81b645ccedc2e042788816bc87b0cd
URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/995a316fba81b645ccedc2e042788…
Author: Giovanni Mascellani <gmascellani(a)codeweavers.com>
Date: Sat Apr 20 23:29:28 2024 +0200
include: Document struct vkd3d_instance_create_info.
---
include/vkd3d.h | 27 ++++++++++++++++++++++++++-
1 file changed, 26 insertions(+), 1 deletion(-)
diff --git a/include/vkd3d.h b/include/vkd3d.h
index 0b018eb8..c2b6877c 100644
--- a/include/vkd3d.h
+++ b/include/vkd3d.h
@@ -93,20 +93,45 @@ typedef HRESULT (*PFN_vkd3d_join_thread)(void *thread);
struct vkd3d_instance;
+/**
+ * A chained structure containing instance creation parameters.
+ */
struct vkd3d_instance_create_info
{
+ /** Must be set to VKD3D_STRUCTURE_TYPE_INSTANCE_CREATE_INFO. */
enum vkd3d_structure_type type;
+ /** Optional pointer to a structure containing further parameters. */
const void *next;
+ /** An pointer to a function to signal events. */
PFN_vkd3d_signal_event pfn_signal_event;
+ /**
+ * An optional pointer to a function to create threads. If this is NULL vkd3d will use a
+ * function of its choice, depending on the platform. It must be NULL if and only if
+ * pfn_join_thread is NULL.
+ */
PFN_vkd3d_create_thread pfn_create_thread;
+ /**
+ * An optional pointer to a function to join threads. If this is NULL vkd3d will use a
+ * function of its choice, depending on the platform. It must be NULL if and only if
+ * pfn_create_thread is NULL.
+ */
PFN_vkd3d_join_thread pfn_join_thread;
+ /** The size of type WCHAR. It must be 2 or 4 and should normally be set to sizeof(WCHAR). */
size_t wchar_size;
- /* If set to NULL, libvkd3d loads libvulkan. */
+ /**
+ * A pointer to the vkGetInstanceProcAddr Vulkan function, which will be used to load all the
+ * other Vulkan functions. If set to NULL, vkd3d will search and use the Vulkan loader.
+ */
PFN_vkGetInstanceProcAddr pfn_vkGetInstanceProcAddr;
+ /**
+ * A list of Vulkan instance extensions to request. They are intended as required, so instance
+ * creation will fail if any of them is not available.
+ */
const char * const *instance_extensions;
+ /** The number of elements in the instance_extensions array. */
uint32_t instance_extension_count;
};