HRESULT d3d_set_private_data(struct wined3d_private_store *store, REFGUID guid, UINT data_size, const void *data) { struct wined3d_private_data *entry; HRESULT hr; wined3d_mutex_lock(); if (!data) { if (!(entry = wined3d_private_store_get_private_data(store, guid))) { wined3d_mutex_unlock(); return S_FALSE; } wined3d_private_store_free_private_data(store, entry); wined3d_mutex_unlock(); return S_OK; } hr = wined3d_private_store_set_private_data(store, guid, data, data_size, 0); wined3d_mutex_unlock(); return hr; }
HRESULT d3d10_set_private_data_interface(struct wined3d_private_store *store, REFGUID guid, const IUnknown *object) { if (!object) return d3d10_set_private_data(store, guid, sizeof(object), &object); return wined3d_private_store_set_private_data(store, guid, object, sizeof(object), WINED3DSPD_IUNKNOWN); }
HRESULT d3d9_resource_set_private_data(struct d3d9_resource *resource, const GUID *guid, const void *data, DWORD data_size, DWORD flags) { HRESULT hr; wined3d_mutex_lock(); hr = wined3d_private_store_set_private_data(&resource->private_store, guid, data, data_size, flags); wined3d_mutex_unlock(); return hr; }
HRESULT d3d_set_private_data_interface(struct wined3d_private_store *store, REFGUID guid, const IUnknown *object) { HRESULT hr; if (!object) return d3d_set_private_data(store, guid, sizeof(object), &object); wined3d_mutex_lock(); hr = wined3d_private_store_set_private_data(store, guid, object, sizeof(object), WINED3DSPD_IUNKNOWN); wined3d_mutex_unlock(); return hr; }
HRESULT d3d10_set_private_data(struct wined3d_private_store *store, REFGUID guid, UINT data_size, const void *data) { struct wined3d_private_data *entry; if (!data) { if (!(entry = wined3d_private_store_get_private_data(store, guid))) return S_FALSE; wined3d_private_store_free_private_data(store, entry); return S_OK; } return wined3d_private_store_set_private_data(store, guid, data, data_size, 0); }