36 WARN(
"Invalid structure type %#x.\n", create_info->
type);
41 WARN(
"Instance or instance create info is required.\n");
46 WARN(
"Instance and instance create info are mutually exclusive parameters.\n");
74 ID3D12Device9_Release(&
object->ID3D12Device9_iface);
112 ID3D12RootSignatureDeserializer_AddRef(iface);
128 TRACE(
"%p increasing refcount to %u.\n", deserializer,
refcount);
138 TRACE(
"%p decreasing refcount to %u.\n", deserializer,
refcount);
154 TRACE(
"iface %p.\n", iface);
178 WARN(
"Failed to parse root signature, vkd3d result %d.\n",
ret);
194 WARN(
"Failed to convert from version %#x, vkd3d result %d.\n",
version,
ret);
198 *out_desc = converted_desc;
219 REFIID iid,
void **deserializer)
225 TRACE(
"data %p, data_size %"PRIuPTR", iid %s, deserializer %p.\n",
238 &IID_ID3D12RootSignatureDeserializer, iid, deserializer);
271 if (
IsEqualGUID(iid, &IID_ID3D12VersionedRootSignatureDeserializer))
273 ID3D12VersionedRootSignatureDeserializer_AddRef(iface);
289 TRACE(
"%p increasing refcount to %u.\n", deserializer,
refcount);
299 TRACE(
"%p decreasing refcount to %u.\n", deserializer,
refcount);
321 WARN(
"Unknown root signature version %#x.\n",
version);
337 WARN(
"Root signature version %#x not supported.\n",
version);
352 WARN(
"Failed to convert versioned root signature, vkd3d result %d.\n",
ret);
367 TRACE(
"iface %p.\n", iface);
393 WARN(
"Failed to parse root signature, vkd3d result %d.\n",
ret);
403 REFIID iid,
void **deserializer)
409 TRACE(
"data %p, data_size %"PRIuPTR", iid %s, deserializer %p.\n",
418 *deserializer =
NULL;
423 &IID_ID3D12VersionedRootSignatureDeserializer, iid, deserializer);
439 WARN(
"Unexpected Root signature version %#x.\n",
version);
445 WARN(
"Invalid blob parameter.\n");
456 WARN(
"Failed to serialize root signature, vkd3d result %d.\n",
ret);
482 TRACE(
"desc %p, blob %p, error_blob %p.\n",
desc,
blob, error_blob);
486 WARN(
"Invalid blob parameter.\n");
496 WARN(
"Failed to serialize root signature, vkd3d result %d.\n",
ret);
#define STDMETHODCALLTYPE
D3D_ROOT_SIGNATURE_VERSION
@ D3D_ROOT_SIGNATURE_VERSION_1_0
@ D3D_ROOT_SIGNATURE_VERSION_1_1
static HRESULT hresult_from_vkd3d_result(int vkd3d_result)
static HINSTANCE instance
static const WCHAR version[]
_ACRTIMP size_t __cdecl strlen(const char *)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
static IPrintDialogCallback callback
D3D11_SHADER_VARIABLE_DESC desc
#define IsEqualGUID(rguid1, rguid2)
HRESULT d3d12_device_create(struct vkd3d_instance *instance, const struct vkd3d_device_create_info *create_info, struct d3d12_device **device)
HRESULT return_interface(void *iface, REFIID iface_iid, REFIID requested_iid, void **object)
bool is_valid_feature_level(D3D_FEATURE_LEVEL feature_level)
D3D12_ROOT_SIGNATURE_DESC Desc_1_0
D3D_ROOT_SIGNATURE_VERSION Version
struct vkd3d_shader_versioned_root_signature_desc vkd3d
D3D12_VERSIONED_ROOT_SIGNATURE_DESC d3d12
ID3D12RootSignatureDeserializer ID3D12RootSignatureDeserializer_iface
union d3d12_root_signature_deserializer::@6021 desc
struct vkd3d_shader_versioned_root_signature_desc vkd3d
union d3d12_versioned_root_signature_deserializer::@6022 other_desc
union d3d12_versioned_root_signature_deserializer::@6022 desc
D3D12_VERSIONED_ROOT_SIGNATURE_DESC d3d12
ID3D12VersionedRootSignatureDeserializer ID3D12VersionedRootSignatureDeserializer_iface
struct vkd3d_instance * instance
const struct vkd3d_instance_create_info * instance_create_info
D3D_FEATURE_LEVEL minimum_feature_level
enum vkd3d_structure_type type
struct vkd3d_shader_root_signature_desc v_1_0
enum vkd3d_shader_root_signature_version version
union vkd3d_shader_versioned_root_signature_desc::@5989 u
#define CONTAINING_RECORD(address, type, field)
VKD3D_API HRESULT vkd3d_create_instance(const struct vkd3d_instance_create_info *create_info, struct vkd3d_instance **instance)
VKD3D_API ULONG vkd3d_instance_decref(struct vkd3d_instance *instance)
@ VKD3D_STRUCTURE_TYPE_DEVICE_CREATE_INFO
VKD3D_API ULONG vkd3d_instance_incref(struct vkd3d_instance *instance)
HRESULT vkd3d_blob_create(void *buffer, SIZE_T size, ID3D10Blob **blob)
static const char * debugstr_hresult(HRESULT hr)
#define VKD3D_DEBUG_ENV_NAME(name)
void void vkd3d_dbg_set_log_callback(PFN_vkd3d_log callback)
static uint32_t vkd3d_atomic_decrement_u32(uint32_t volatile *x)
#define VKD3D_ASSERT(cond)
static uint32_t vkd3d_atomic_increment_u32(uint32_t volatile *x)
static const D3D12_ROOT_SIGNATURE_DESC *STDMETHODCALLTYPE d3d12_root_signature_deserializer_GetRootSignatureDesc(ID3D12RootSignatureDeserializer *iface)
int vkd3d_parse_root_signature_v_1_0(const struct vkd3d_shader_code *dxbc, struct vkd3d_shader_versioned_root_signature_desc *out_desc)
HRESULT vkd3d_create_device(const struct vkd3d_device_create_info *create_info, REFIID iid, void **device)
static const struct ID3D12RootSignatureDeserializerVtbl d3d12_root_signature_deserializer_vtbl
static ULONG STDMETHODCALLTYPE d3d12_root_signature_deserializer_AddRef(ID3D12RootSignatureDeserializer *iface)
static struct d3d12_root_signature_deserializer * impl_from_ID3D12RootSignatureDeserializer(ID3D12RootSignatureDeserializer *iface)
void vkd3d_set_log_callback(PFN_vkd3d_log callback)
static ULONG STDMETHODCALLTYPE d3d12_versioned_root_signature_deserializer_AddRef(ID3D12VersionedRootSignatureDeserializer *iface)
HRESULT vkd3d_create_versioned_root_signature_deserializer(const void *data, SIZE_T data_size, REFIID iid, void **deserializer)
static HRESULT STDMETHODCALLTYPE d3d12_versioned_root_signature_deserializer_GetRootSignatureDescAtVersion(ID3D12VersionedRootSignatureDeserializer *iface, D3D_ROOT_SIGNATURE_VERSION version, const D3D12_VERSIONED_ROOT_SIGNATURE_DESC **desc)
HRESULT vkd3d_serialize_versioned_root_signature(const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *desc, ID3DBlob **blob, ID3DBlob **error_blob)
static enum vkd3d_shader_root_signature_version vkd3d_root_signature_version_from_d3d12(D3D_ROOT_SIGNATURE_VERSION version)
static HRESULT STDMETHODCALLTYPE d3d12_root_signature_deserializer_QueryInterface(ID3D12RootSignatureDeserializer *iface, REFIID riid, void **object)
static ULONG STDMETHODCALLTYPE d3d12_versioned_root_signature_deserializer_Release(ID3D12VersionedRootSignatureDeserializer *iface)
static HRESULT d3d12_root_signature_deserializer_init(struct d3d12_root_signature_deserializer *deserializer, const struct vkd3d_shader_code *dxbc)
static struct d3d12_versioned_root_signature_deserializer * impl_from_ID3D12VersionedRootSignatureDeserializer(ID3D12VersionedRootSignatureDeserializer *iface)
HRESULT vkd3d_serialize_root_signature(const D3D12_ROOT_SIGNATURE_DESC *desc, D3D_ROOT_SIGNATURE_VERSION version, ID3DBlob **blob, ID3DBlob **error_blob)
HRESULT vkd3d_create_root_signature_deserializer(const void *data, SIZE_T data_size, REFIID iid, void **deserializer)
static HRESULT STDMETHODCALLTYPE d3d12_versioned_root_signature_deserializer_QueryInterface(ID3D12VersionedRootSignatureDeserializer *iface, REFIID iid, void **object)
static HRESULT d3d12_versioned_root_signature_deserializer_init(struct d3d12_versioned_root_signature_deserializer *deserializer, const struct vkd3d_shader_code *dxbc)
static const struct ID3D12VersionedRootSignatureDeserializerVtbl d3d12_versioned_root_signature_deserializer_vtbl
static ULONG STDMETHODCALLTYPE d3d12_root_signature_deserializer_Release(ID3D12RootSignatureDeserializer *iface)
static const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *STDMETHODCALLTYPE d3d12_versioned_root_signature_deserializer_GetUnconvertedRootSignatureDesc(ID3D12VersionedRootSignatureDeserializer *iface)
static void vkd3d_free(void *ptr)
static void * vkd3d_malloc(size_t size)
VKD3D_SHADER_API void vkd3d_shader_free_shader_code(struct vkd3d_shader_code *code)
VKD3D_SHADER_API int vkd3d_shader_serialize_root_signature(const struct vkd3d_shader_versioned_root_signature_desc *root_signature, struct vkd3d_shader_code *dxbc, char **messages)
VKD3D_SHADER_API int vkd3d_shader_parse_root_signature(const struct vkd3d_shader_code *dxbc, struct vkd3d_shader_versioned_root_signature_desc *root_signature, char **messages)
VKD3D_SHADER_API void vkd3d_shader_set_log_callback(PFN_vkd3d_log callback)
VKD3D_SHADER_API int vkd3d_shader_convert_root_signature(struct vkd3d_shader_versioned_root_signature_desc *dst, enum vkd3d_shader_root_signature_version version, const struct vkd3d_shader_versioned_root_signature_desc *src)
vkd3d_shader_root_signature_version
@ VKD3D_SHADER_ROOT_SIGNATURE_VERSION_1_1
@ VKD3D_SHADER_ROOT_SIGNATURE_VERSION_1_0
VKD3D_SHADER_API void vkd3d_shader_free_messages(char *messages)
VKD3D_SHADER_API void vkd3d_shader_free_root_signature(struct vkd3d_shader_versioned_root_signature_desc *root_signature)
void(* PFN_vkd3d_log)(const char *format, va_list args)