95 if (vb ==
buffer->wined3d_buffer)
103 IDirectDraw7_Release(&
buffer->ddraw->IDirectDraw7_iface);
132 desc.structure_byte_stride = 0;
166 TRACE(
"iface %p, flags %#x, data %p, data_size %p.\n", iface,
flags,
data, data_size);
184 buffer->wined3d_buffer = new_buffer;
188 WARN(
"Failed to create a dynamic buffer\n");
200 *data_size = wined3d_desc.
size;
225 TRACE(
"iface %p.\n", iface);
265 BOOL oldClip, doClip;
268 TRACE(
"iface %p, vertex_op %#x, dst_idx %u, count %u, src_buffer %p, src_idx %u, device %p, flags %#x.\n",
292 if (doClip != oldClip)
302 if (doClip != oldClip)
329 TRACE(
"iface %p, desc %p.\n", iface,
desc);
409 FIXME(
"iface %p, vertex_op %#x, dst_idx %u, count %u, data %p, fvf %#x, device %p, flags %#x stub!\n",
438 TRACE(
"Vertex buffer description:\n");
442 TRACE(
" dwNumVertices %u\n",
desc->dwNumVertices);
461 WARN(
"Failed to create wined3d vertex buffer, hr %#x.\n",
hr);
469 ERR(
"Failed to find vertex declaration for fvf %#x.\n",
desc->dwFVF);
static BOOL heap_free(void *mem)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
#define IDirect3DVertexBuffer7_AddRef(p)
#define D3DVBCAPS_OPTIMIZED
#define D3DVBCAPS_WRITEONLY
#define D3DVBCAPS_SYSTEMMEMORY
struct d3d_device * unsafe_impl_from_IDirect3DDevice7(IDirect3DDevice7 *iface) DECLSPEC_HIDDEN
struct d3d_device * unsafe_impl_from_IDirect3DDevice3(IDirect3DDevice3 *iface) DECLSPEC_HIDDEN
DWORD get_flexible_vertex_size(DWORD d3dvtVertexType) DECLSPEC_HIDDEN
unsigned int wined3dmapflags_from_ddrawmapflags(unsigned int flags) DECLSPEC_HIDDEN
struct wined3d_vertex_declaration * ddraw_find_decl(struct ddraw *This, DWORD fvf)
const struct wined3d_parent_ops ddraw_null_wined3d_parent_ops
HRESULT CDECL wined3d_buffer_create(struct wined3d_device *device, const struct wined3d_buffer_desc *desc, const struct wined3d_sub_resource_data *data, void *parent, const struct wined3d_parent_ops *parent_ops, struct wined3d_buffer **buffer)
ULONG CDECL wined3d_buffer_decref(struct wined3d_buffer *buffer)
struct wined3d_resource *CDECL wined3d_buffer_get_resource(struct wined3d_buffer *buffer)
void CDECL wined3d_device_set_vertex_declaration(struct wined3d_device *device, struct wined3d_vertex_declaration *declaration)
DWORD CDECL wined3d_device_get_render_state(const struct wined3d_device *device, enum wined3d_render_state state)
HRESULT CDECL wined3d_device_process_vertices(struct wined3d_device *device, UINT src_start_idx, UINT dst_idx, UINT vertex_count, struct wined3d_buffer *dst_buffer, const struct wined3d_vertex_declaration *declaration, DWORD flags, DWORD dst_fvf)
HRESULT CDECL wined3d_device_get_stream_source(const struct wined3d_device *device, UINT stream_idx, struct wined3d_buffer **buffer, UINT *offset, UINT *stride)
void CDECL wined3d_device_set_render_state(struct wined3d_device *device, enum wined3d_render_state state, DWORD value)
HRESULT CDECL wined3d_device_set_stream_source(struct wined3d_device *device, UINT stream_idx, struct wined3d_buffer *buffer, UINT offset, UINT stride)
HRESULT CDECL wined3d_resource_unmap(struct wined3d_resource *resource, unsigned int sub_resource_idx)
void CDECL wined3d_resource_get_desc(const struct wined3d_resource *resource, struct wined3d_resource_desc *desc)
HRESULT CDECL wined3d_resource_map(struct wined3d_resource *resource, unsigned int sub_resource_idx, struct wined3d_map_desc *map_desc, const struct wined3d_box *box, DWORD flags)
GLuint GLuint GLsizei count
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
static const WCHAR desc[]
#define IsEqualGUID(rguid1, rguid2)
#define DDERR_OUTOFMEMORY
#define DDLOCK_DISCARDCONTENTS
#define DDLOCK_NOOVERWRITE
#define DDERR_INVALIDPARAMS
struct wined3d_device * wined3d_device
struct wined3d_vertex_declaration * wined3d_declaration
struct wined3d_buffer * wined3d_buffer
IDirect3DVertexBuffer7 IDirect3DVertexBuffer7_iface
IDirectDraw7 IDirectDraw7_iface
#define CONTAINING_RECORD(address, type, field)
static HRESULT WINAPI d3d_vertex_buffer7_Unlock(IDirect3DVertexBuffer7 *iface)
static HRESULT WINAPI d3d_vertex_buffer7_GetVertexBufferDesc(IDirect3DVertexBuffer7 *iface, D3DVERTEXBUFFERDESC *desc)
HRESULT d3d_vertex_buffer_create(struct d3d_vertex_buffer **vertex_buf, struct ddraw *ddraw, D3DVERTEXBUFFERDESC *desc)
static HRESULT WINAPI d3d_vertex_buffer7_QueryInterface(IDirect3DVertexBuffer7 *iface, REFIID riid, void **obj)
static HRESULT WINAPI d3d_vertex_buffer7_ProcessVerticesStrided(IDirect3DVertexBuffer7 *iface, DWORD vertex_op, DWORD dst_idx, DWORD count, D3DDRAWPRIMITIVESTRIDEDDATA *data, DWORD fvf, IDirect3DDevice7 *device, DWORD flags)
static HRESULT d3d_vertex_buffer_create_wined3d_buffer(struct d3d_vertex_buffer *buffer, BOOL dynamic, struct wined3d_buffer **wined3d_buffer)
struct d3d_vertex_buffer * unsafe_impl_from_IDirect3DVertexBuffer7(IDirect3DVertexBuffer7 *iface)
static HRESULT WINAPI d3d_vertex_buffer7_ProcessVertices(IDirect3DVertexBuffer7 *iface, DWORD vertex_op, DWORD dst_idx, DWORD count, IDirect3DVertexBuffer7 *src_buffer, DWORD src_idx, IDirect3DDevice7 *device, DWORD flags)
static ULONG WINAPI d3d_vertex_buffer7_Release(IDirect3DVertexBuffer7 *iface)
static ULONG WINAPI d3d_vertex_buffer7_AddRef(IDirect3DVertexBuffer7 *iface)
static const struct IDirect3DVertexBuffer7Vtbl d3d_vertex_buffer7_vtbl
static HRESULT WINAPI d3d_vertex_buffer7_Optimize(IDirect3DVertexBuffer7 *iface, IDirect3DDevice7 *device, DWORD flags)
static struct d3d_vertex_buffer * impl_from_IDirect3DVertexBuffer7(IDirect3DVertexBuffer7 *iface)
static HRESULT WINAPI d3d_vertex_buffer7_Lock(IDirect3DVertexBuffer7 *iface, DWORD flags, void **data, DWORD *data_size)
ULONG CDECL wined3d_vertex_declaration_incref(struct wined3d_vertex_declaration *declaration)
ULONG CDECL wined3d_vertex_declaration_decref(struct wined3d_vertex_declaration *declaration)
#define WINED3DUSAGE_WRITEONLY
#define WINED3D_BIND_VERTEX_BUFFER
#define WINED3D_RESOURCE_ACCESS_GPU
#define WINED3D_RESOURCE_ACCESS_CPU
#define WINED3D_RESOURCE_ACCESS_MAP_R
#define WINED3DUSAGE_DYNAMIC
#define WINED3DERR_INVALIDCALL
#define WINED3DUSAGE_STATICDECL
#define WINED3D_RESOURCE_ACCESS_MAP_W
void WINAPI wined3d_mutex_unlock(void)
void WINAPI wined3d_mutex_lock(void)