19#ifndef __WINE_D3D11_PRIVATE_H
20#define __WINE_D3D11_PRIVATE_H
38#include "wine/winedxgi.h"
39#include "wine/rbtree.h"
87 unsigned int wined3d_flags =
bind_flags & (D3D11_BIND_VERTEX_BUFFER
88 | D3D11_BIND_INDEX_BUFFER
89 | D3D11_BIND_CONSTANT_BUFFER
90 | D3D11_BIND_SHADER_RESOURCE
91 | D3D11_BIND_STREAM_OUTPUT
92 | D3D11_BIND_RENDER_TARGET
93 | D3D11_BIND_DEPTH_STENCIL
94 | D3D11_BIND_UNORDERED_ACCESS);
202 D3D11_DEPTH_STENCIL_VIEW_DESC
desc;
221 D3D11_RENDER_TARGET_VIEW_DESC
desc;
240 D3D11_SHADER_RESOURCE_VIEW_DESC
desc;
248 ID3D11ShaderResourceView *iface);
260 D3D11_UNORDERED_ACCESS_VIEW_DESC
desc;
268 ID3D11UnorderedAccessView *iface);
276 D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC
desc;
298 const void *shader_byte_code,
SIZE_T shader_byte_code_length,
363 const D3D11_SO_DECLARATION_ENTRY *so_entries,
unsigned int so_entry_count,
364 const unsigned int *buffer_strides,
unsigned int buffer_stride_count,
unsigned int rasterizer_stream,
460 ID3D11DepthStencilState *iface);
D3D11_DEVICE_CONTEXT_TYPE
@ D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS
HRESULT d3d_blend_state_create(struct d3d_device *device, const D3D11_BLEND_DESC1 *desc, struct d3d_blend_state **state)
UINT d3d11_bind_flags_from_d3d10_bind_flags(UINT bind_flags)
struct wined3d_resource * wined3d_resource_from_d3d11_resource(ID3D11Resource *resource)
HRESULT d3d11_domain_shader_create(struct d3d_device *device, const void *byte_code, SIZE_T byte_code_length, struct d3d11_domain_shader **shader)
struct d3d11_unordered_access_view * unsafe_impl_from_ID3D11UnorderedAccessView(ID3D11UnorderedAccessView *iface)
static struct d3d_depthstencil_state * impl_from_ID3D11DepthStencilState(ID3D11DepthStencilState *iface)
struct d3d_rendertarget_view * unsafe_impl_from_ID3D11RenderTargetView(ID3D11RenderTargetView *iface)
struct d3d_vertex_shader * unsafe_impl_from_ID3D10VertexShader(ID3D10VertexShader *iface)
HRESULT d3d_geometry_shader_create(struct d3d_device *device, const void *byte_code, SIZE_T byte_code_length, const D3D11_SO_DECLARATION_ENTRY *so_entries, unsigned int so_entry_count, const unsigned int *buffer_strides, unsigned int buffer_stride_count, unsigned int rasterizer_stream, struct d3d_geometry_shader **shader)
struct d3d_query * unsafe_impl_from_ID3D11Query(ID3D11Query *iface)
const char * debug_dxgi_format(DXGI_FORMAT format)
struct d3d11_compute_shader * unsafe_impl_from_ID3D11ComputeShader(ID3D11ComputeShader *iface)
const char * debug_float4(const float *values)
enum wined3d_format_id wined3dformat_from_dxgi_format(DXGI_FORMAT format)
struct d3d_rasterizer_state * unsafe_impl_from_ID3D11RasterizerState(ID3D11RasterizerState *iface)
HRESULT d3d_video_decoder_create(struct d3d_device *device, const D3D11_VIDEO_DECODER_DESC *desc, const D3D11_VIDEO_DECODER_CONFIG *config, struct d3d_video_decoder **decoder)
struct d3d_sampler_state * unsafe_impl_from_ID3D11SamplerState(ID3D11SamplerState *iface)
UINT d3d10_bind_flags_from_d3d11_bind_flags(UINT bind_flags)
struct d3d_texture2d * unsafe_impl_from_ID3D10Texture2D(ID3D10Texture2D *iface)
static unsigned int wined3d_bind_flags_from_d3d11(UINT bind_flags, UINT misc_flags)
BOOL validate_d3d11_resource_access_flags(D3D11_RESOURCE_DIMENSION resource_dimension, D3D11_USAGE usage, UINT bind_flags, UINT cpu_access_flags, D3D_FEATURE_LEVEL feature_level)
struct d3d_query * unsafe_impl_from_ID3D10Query(ID3D10Query *iface)
UINT d3d11_cpu_access_flags_from_d3d10_cpu_access_flags(UINT cpu_access_flags)
struct d3d11_domain_shader * unsafe_impl_from_ID3D11DomainShader(ID3D11DomainShader *iface)
enum D3D10_USAGE d3d10_usage_from_d3d11_usage(enum D3D11_USAGE usage)
struct d3d11_hull_shader * unsafe_impl_from_ID3D11HullShader(ID3D11HullShader *iface)
HRESULT d3d_input_layout_create(struct d3d_device *device, const D3D11_INPUT_ELEMENT_DESC *element_descs, UINT element_count, const void *shader_byte_code, SIZE_T shader_byte_code_length, struct d3d_input_layout **layout)
struct d3d_vertex_shader * unsafe_impl_from_ID3D11VertexShader(ID3D11VertexShader *iface)
HRESULT WINAPI DXGID3D10RegisterLayers(const struct dxgi_device_layer *layers, UINT layer_count)
UINT d3d10_cpu_access_flags_from_d3d11_cpu_access_flags(UINT cpu_access_flags)
HRESULT d3d_get_private_data(struct wined3d_private_store *store, REFGUID guid, UINT *data_size, void *data)
struct d3d_texture2d * unsafe_impl_from_ID3D11Texture2D(ID3D11Texture2D *iface)
struct d3d_depthstencil_view * unsafe_impl_from_ID3D11DepthStencilView(ID3D11DepthStencilView *iface)
@ DXGI_DEVICE_LAYER_THREAD_SAFE
@ DXGI_DEVICE_LAYER_D3D10_DEVICE
@ DXGI_DEVICE_LAYER_DEBUG1
@ DXGI_DEVICE_LAYER_SWITCH_TO_REF
@ DXGI_DEVICE_LAYER_DEBUG2
static struct d3d_blend_state * impl_from_ID3D11BlendState1(ID3D11BlendState1 *iface)
static struct d3d_device * impl_from_ID3D10Device(ID3D10Device1 *iface)
struct d3d_depthstencil_view * unsafe_impl_from_ID3D10DepthStencilView(ID3D10DepthStencilView *iface)
struct d3d_texture3d * unsafe_impl_from_ID3D11Texture3D(ID3D11Texture3D *iface)
struct d3d_buffer * unsafe_impl_from_ID3D10Buffer(ID3D10Buffer *iface)
HRESULT d3d_texture2d_create(struct d3d_device *device, const D3D11_TEXTURE2D_DESC *desc, struct wined3d_texture *wined3d_texture, const D3D11_SUBRESOURCE_DATA *data, struct d3d_texture2d **out)
HRESULT d3d_rasterizer_state_create(struct d3d_device *device, const D3D11_RASTERIZER_DESC1 *desc, struct d3d_rasterizer_state **state)
void d3d11_primitive_topology_from_wined3d_primitive_type(enum wined3d_primitive_type primitive_type, unsigned int patch_vertex_count, D3D11_PRIMITIVE_TOPOLOGY *topology)
struct d3d_pixel_shader * unsafe_impl_from_ID3D11PixelShader(ID3D11PixelShader *iface)
struct d3d_blend_state * unsafe_impl_from_ID3D11BlendState(ID3D11BlendState *iface)
struct d3d_geometry_shader * unsafe_impl_from_ID3D10GeometryShader(ID3D10GeometryShader *iface)
DWORD wined3d_usage_from_d3d11(enum D3D11_USAGE usage)
HRESULT d3d_texture1d_create(struct d3d_device *device, const D3D11_TEXTURE1D_DESC *desc, const D3D11_SUBRESOURCE_DATA *data, struct d3d_texture1d **texture)
struct d3d_rasterizer_state * unsafe_impl_from_ID3D10RasterizerState(ID3D10RasterizerState *iface)
DWORD wined3d_map_flags_from_d3d11_map_type(D3D11_MAP map_type)
struct d3d_texture1d * unsafe_impl_from_ID3D11Texture1D(ID3D11Texture1D *iface)
static struct d3d_device * impl_from_ID3D11Device2(ID3D11Device2 *iface)
void d3d_device_init(struct d3d_device *device, void *outer_unknown)
void wined3d_primitive_type_from_d3d11_primitive_topology(D3D11_PRIMITIVE_TOPOLOGY topology, enum wined3d_primitive_type *type, unsigned int *patch_vertex_count)
struct wined3d_resource * wined3d_resource_from_d3d10_resource(ID3D10Resource *resource)
HRESULT d3d_shader_resource_view_create(struct d3d_device *device, ID3D11Resource *resource, const D3D11_SHADER_RESOURCE_VIEW_DESC *desc, struct d3d_shader_resource_view **view)
struct d3d_input_layout * unsafe_impl_from_ID3D10InputLayout(ID3D10InputLayout *iface)
UINT d3d10_resource_misc_flags_from_d3d11_resource_misc_flags(UINT resource_misc_flags)
HRESULT d3d11_class_linkage_create(struct d3d_device *device, struct d3d11_class_linkage **class_linkage)
HRESULT d3d_video_decoder_output_view_create(struct d3d_device *device, ID3D11Resource *resource, const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *desc, struct d3d_video_decoder_output_view **view)
HRESULT d3d_texture3d_create(struct d3d_device *device, const D3D11_TEXTURE3D_DESC *desc, const D3D11_SUBRESOURCE_DATA *data, struct d3d_texture3d **texture)
unsigned int wined3d_getdata_flags_from_d3d11_async_getdata_flags(unsigned int d3d11_flags)
struct d3d_buffer * unsafe_impl_from_ID3D11Buffer(ID3D11Buffer *iface)
HRESULT d3d_vertex_shader_create(struct d3d_device *device, const void *byte_code, SIZE_T byte_code_length, struct d3d_vertex_shader **shader)
struct d3d_geometry_shader * unsafe_impl_from_ID3D11GeometryShader(ID3D11GeometryShader *iface)
HRESULT d3d_buffer_create(struct d3d_device *device, const D3D11_BUFFER_DESC *desc, const D3D11_SUBRESOURCE_DATA *data, struct d3d_buffer **buffer)
struct d3d_rendertarget_view * unsafe_impl_from_ID3D10RenderTargetView(ID3D10RenderTargetView *iface)
static struct d3d_texture2d * impl_from_ID3D11Texture2D(ID3D11Texture2D *iface)
struct d3d_texture3d * unsafe_impl_from_ID3D10Texture3D(ID3D10Texture3D *iface)
enum D3D11_USAGE d3d11_usage_from_d3d10_usage(enum D3D10_USAGE usage)
DWORD wined3d_clear_flags_from_d3d11_clear_flags(UINT clear_flags)
struct d3d_depthstencil_state * unsafe_impl_from_ID3D11DepthStencilState(ID3D11DepthStencilState *iface)
struct d3d_shader_resource_view * unsafe_impl_from_ID3D10ShaderResourceView(ID3D10ShaderResourceView *iface)
struct d3d_depthstencil_state * unsafe_impl_from_ID3D10DepthStencilState(ID3D10DepthStencilState *iface)
HRESULT d3d_sampler_state_create(struct d3d_device *device, const D3D11_SAMPLER_DESC *desc, struct d3d_sampler_state **state)
HRESULT d3d_set_private_data_interface(struct wined3d_private_store *store, REFGUID guid, const IUnknown *object)
HRESULT d3d_pixel_shader_create(struct d3d_device *device, const void *byte_code, SIZE_T byte_code_length, struct d3d_pixel_shader **shader)
struct d3d_input_layout * unsafe_impl_from_ID3D11InputLayout(ID3D11InputLayout *iface)
HRESULT d3d11_unordered_access_view_create(struct d3d_device *device, ID3D11Resource *resource, const D3D11_UNORDERED_ACCESS_VIEW_DESC *desc, struct d3d11_unordered_access_view **view)
HRESULT d3d_device_create_dxgi_resource(IUnknown *device, struct wined3d_resource *wined3d_resource, IUnknown *outer, BOOL needs_surface, IUnknown **dxgi_resource)
HRESULT d3d_depthstencil_view_create(struct d3d_device *device, ID3D11Resource *resource, const D3D11_DEPTH_STENCIL_VIEW_DESC *desc, struct d3d_depthstencil_view **view)
HRESULT d3d11_hull_shader_create(struct d3d_device *device, const void *byte_code, SIZE_T byte_code_length, struct d3d11_hull_shader **shader)
HRESULT d3d_query_create(struct d3d_device *device, const D3D11_QUERY_DESC *desc, BOOL predicate, struct d3d_query **query)
HRESULT d3d_rendertarget_view_create(struct d3d_device *device, ID3D11Resource *resource, const D3D11_RENDER_TARGET_VIEW_DESC *desc, struct d3d_rendertarget_view **view)
struct d3d_texture1d * unsafe_impl_from_ID3D10Texture1D(ID3D10Texture1D *iface)
unsigned int wined3d_access_from_d3d11(D3D11_USAGE usage, UINT cpu_access)
HRESULT WINAPI DXGID3D10CreateDevice(HMODULE d3d10core, IDXGIFactory *factory, IDXGIAdapter *adapter, unsigned int flags, const D3D_FEATURE_LEVEL *feature_levels, unsigned int level_count, void **device)
static UINT d3d11_bind_flags_from_wined3d(unsigned int bind_flags)
struct d3d_blend_state * unsafe_impl_from_ID3D10BlendState(ID3D10BlendState *iface)
UINT d3d11_resource_misc_flags_from_d3d10_resource_misc_flags(UINT resource_misc_flags)
HRESULT d3d_set_private_data(struct wined3d_private_store *store, REFGUID guid, UINT data_size, const void *data)
struct d3d_pixel_shader * unsafe_impl_from_ID3D10PixelShader(ID3D10PixelShader *iface)
struct d3d_query * unsafe_impl_from_ID3D11Asynchronous(ID3D11Asynchronous *iface)
static struct d3d_device * impl_from_ID3D11Device(ID3D11Device *iface)
HRESULT d3d11_compute_shader_create(struct d3d_device *device, const void *byte_code, SIZE_T byte_code_length, struct d3d11_compute_shader **shader)
struct d3d_sampler_state * unsafe_impl_from_ID3D10SamplerState(ID3D10SamplerState *iface)
HRESULT d3d_depthstencil_state_create(struct d3d_device *device, const D3D11_DEPTH_STENCIL_DESC *desc, struct d3d_depthstencil_state **state)
struct d3d_shader_resource_view * unsafe_impl_from_ID3D11ShaderResourceView(ID3D11ShaderResourceView *iface)
DXGI_FORMAT dxgi_format_from_wined3dformat(enum wined3d_format_id format)
DWORD wined3d_map_flags_from_d3d10_map_type(D3D10_MAP map_type)
const char * debug_d3d10_primitive_topology(D3D10_PRIMITIVE_TOPOLOGY topology)
GLuint GLuint GLsizei GLenum type
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLboolean GLenum GLenum GLvoid * values
GLsizeiptr const GLvoid GLenum usage
static D3D_DRIVER_TYPE HMODULE UINT const D3D_FEATURE_LEVEL * feature_levels
D3D11_SHADER_VARIABLE_DESC desc
static const struct access_res create[16]
static ULONG ** element_count
ID3D11ClassLinkage ID3D11ClassLinkage_iface
struct wined3d_private_store private_store
ID3D11CommandList ID3D11CommandList_iface
struct wined3d_command_list * wined3d_list
struct wined3d_private_store private_store
ID3D11ComputeShader ID3D11ComputeShader_iface
struct wined3d_private_store private_store
struct wined3d_shader * wined3d_shader
struct wined3d_private_store private_store
ID3DUserDefinedAnnotation ID3DUserDefinedAnnotation_iface
ID3D11VideoContext ID3D11VideoContext_iface
struct wined3d_device_context * wined3d_context
D3D11_DEVICE_CONTEXT_TYPE type
ID3D11DeviceContext1 ID3D11DeviceContext1_iface
struct d3d_device * device
ID3D11Multithread ID3D11Multithread_iface
struct wined3d_shader * wined3d_shader
ID3D11DomainShader ID3D11DomainShader_iface
struct wined3d_private_store private_store
struct wined3d_shader * wined3d_shader
struct wined3d_private_store private_store
ID3D11HullShader ID3D11HullShader_iface
D3D11_UNORDERED_ACCESS_VIEW_DESC desc
ID3D11UnorderedAccessView ID3D11UnorderedAccessView_iface
struct wined3d_private_store private_store
ID3D11Resource * resource
struct wined3d_unordered_access_view * wined3d_view
struct wine_rb_entry entry
struct wined3d_blend_state * wined3d_state
struct wined3d_private_store private_store
ID3D10BlendState1 ID3D10BlendState1_iface
ID3D11BlendState1 ID3D11BlendState1_iface
ID3D10Buffer ID3D10Buffer_iface
struct wined3d_buffer * wined3d_buffer
ID3D11Buffer ID3D11Buffer_iface
struct wine_rb_entry entry
struct wined3d_depth_stencil_state * wined3d_state
D3D11_DEPTH_STENCIL_DESC desc
ID3D10DepthStencilState ID3D10DepthStencilState_iface
ID3D11DepthStencilState ID3D11DepthStencilState_iface
struct wined3d_private_store private_store
struct wined3d_rendertarget_view * wined3d_view
D3D11_DEPTH_STENCIL_VIEW_DESC desc
ID3D11Resource * resource
ID3D11DepthStencilView ID3D11DepthStencilView_iface
struct wined3d_private_store private_store
ID3D10DepthStencilView ID3D10DepthStencilView_iface
struct wined3d_state * wined3d_state
struct d3d_device * device
ID3DDeviceContextState ID3DDeviceContextState_iface
struct wined3d_device * wined3d_device
struct wined3d_private_store private_store
struct d3d_device_context_state_entry * entries
D3D_FEATURE_LEVEL feature_level
struct wined3d_device_parent device_parent
struct d3d11_device_context immediate_context
IWineDXGIDeviceParent IWineDXGIDeviceParent_iface
struct d3d_device_context_state * state
D3DPRIMITIVETYPE primitive_type
struct wine_rb_tree rasterizer_states
struct wine_rb_tree blend_states
struct wine_rb_tree sampler_states
SIZE_T context_states_size
ID3D10Device1 ID3D10Device1_iface
struct wine_rb_tree depthstencil_states
SIZE_T context_state_count
struct wined3d_device * wined3d_device
struct d3d_device_context_state ** context_states
ID3D10Multithread ID3D10Multithread_iface
ID3D11Device2 ID3D11Device2_iface
ID3D11VideoDevice1 ID3D11VideoDevice1_iface
ID3D11GeometryShader ID3D11GeometryShader_iface
struct wined3d_private_store private_store
ID3D10GeometryShader ID3D10GeometryShader_iface
struct wined3d_shader * wined3d_shader
struct wined3d_shader * wined3d_shader
ID3D10PixelShader ID3D10PixelShader_iface
ID3D11PixelShader ID3D11PixelShader_iface
struct wined3d_private_store private_store
ID3D10Query ID3D10Query_iface
struct wined3d_query * wined3d_query
struct wined3d_private_store private_store
ID3D11Query ID3D11Query_iface
ID3D10RasterizerState ID3D10RasterizerState_iface
D3D11_RASTERIZER_DESC1 desc
struct wined3d_rasterizer_state * wined3d_state
struct wine_rb_entry entry
ID3D11RasterizerState1 ID3D11RasterizerState1_iface
struct wined3d_private_store private_store
ID3D11Resource * resource
D3D11_RENDER_TARGET_VIEW_DESC desc
struct wined3d_rendertarget_view * wined3d_view
ID3D10RenderTargetView ID3D10RenderTargetView_iface
ID3D11RenderTargetView ID3D11RenderTargetView_iface
struct wined3d_private_store private_store
ID3D10SamplerState ID3D10SamplerState_iface
struct wined3d_sampler * wined3d_sampler
ID3D11SamplerState ID3D11SamplerState_iface
struct wine_rb_entry entry
struct wined3d_private_store private_store
ID3D11Resource * resource
ID3D10ShaderResourceView1 ID3D10ShaderResourceView1_iface
struct wined3d_shader_resource_view * wined3d_view
struct wined3d_private_store private_store
D3D11_SHADER_RESOURCE_VIEW_DESC desc
ID3D11ShaderResourceView ID3D11ShaderResourceView_iface
struct wined3d_texture * wined3d_texture
ID3D11Texture1D ID3D11Texture1D_iface
ID3D10Texture1D ID3D10Texture1D_iface
D3D11_TEXTURE1D_DESC desc
D3D11_TEXTURE2D_DESC desc
struct wined3d_texture * wined3d_texture
struct wined3d_swapchain * swapchain
ID3D10Texture2D ID3D10Texture2D_iface
ID3D11Texture2D ID3D11Texture2D_iface
struct wined3d_texture * wined3d_texture
D3D11_TEXTURE3D_DESC desc
ID3D11Texture3D ID3D11Texture3D_iface
ID3D10Texture3D ID3D10Texture3D_iface
ID3D11VertexShader ID3D11VertexShader_iface
struct wined3d_private_store private_store
ID3D10VertexShader ID3D10VertexShader_iface
struct wined3d_shader * wined3d_shader
ID3D11VideoDecoderOutputView ID3D11VideoDecoderOutputView_iface
struct wined3d_private_store private_store
D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC desc
ID3D11Resource * resource
struct d3d_device * device
struct d3d_device * device
ID3D11VideoDecoder ID3D11VideoDecoder_iface
struct wined3d_private_store private_store
HRESULT(WINAPI *create)(enum dxgi_device_layer_id id
struct layer_get_size_args DWORD unknown0
void DWORD void REFIID void ** device_layer
struct layer_get_size_args * args
void DWORD void REFIID riid
enum dxgi_device_layer_id id
void DWORD void * device_object
#define CONTAINING_RECORD(address, type, field)
wchar_t tm const _CrtWcstime_Writes_and_advances_ptr_ count wchar_t ** out
#define WINED3D_BIND_VERTEX_BUFFER
#define WINED3D_BIND_UNORDERED_ACCESS
#define WINED3D_BIND_SHADER_RESOURCE
#define WINED3D_BIND_INDIRECT_BUFFER
#define WINED3D_BIND_DEPTH_STENCIL
#define WINED3D_BIND_RENDER_TARGET
#define WINED3D_BIND_CONSTANT_BUFFER
#define WINED3D_BIND_STREAM_OUTPUT
#define WINED3D_BIND_INDEX_BUFFER