Module: wine Branch: master Commit: cdf56820a03077e6843ca0f470c5e25bd1af580c URL: http://source.winehq.org/git/wine.git/?a=commit;h=cdf56820a03077e6843ca0f470...
Author: Michael Stefaniuc mstefani@redhat.de Date: Mon Dec 20 11:35:15 2010 +0100
d3dx9_36: Use an iface instead of an vtbl pointer in ID3DXLineImpl.
---
dlls/d3dx9_36/line.c | 51 +++++++++++++++++++++++++++---------------------- 1 files changed, 28 insertions(+), 23 deletions(-)
diff --git a/dlls/d3dx9_36/line.c b/dlls/d3dx9_36/line.c index 5ce98e6..e3a0e73 100644 --- a/dlls/d3dx9_36/line.c +++ b/dlls/d3dx9_36/line.c @@ -25,14 +25,19 @@ WINE_DEFAULT_DEBUG_CHANNEL(d3dx); static const struct ID3DXLineVtbl ID3DXLine_Vtbl;
typedef struct ID3DXLineImpl { - const ID3DXLineVtbl *lpVtbl; + ID3DXLine ID3DXLine_iface; LONG ref; } ID3DXLineImpl;
+static inline ID3DXLineImpl *impl_from_ID3DXLine(ID3DXLine *iface) +{ + return CONTAINING_RECORD(iface, ID3DXLineImpl, ID3DXLine_iface); +} + /*** IUnknown methods ***/ static HRESULT WINAPI ID3DXLineImpl_QueryInterface(ID3DXLine* iface, REFIID riid, LPVOID* object) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
TRACE("(%p)->(%s, %p)\n", This, debugstr_guid(riid), object);
@@ -51,7 +56,7 @@ static HRESULT WINAPI ID3DXLineImpl_QueryInterface(ID3DXLine* iface, REFIID riid
static ULONG WINAPI ID3DXLineImpl_AddRef(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
TRACE("(%p)->(): AddRef from %u\n", This, This->ref);
@@ -60,7 +65,7 @@ static ULONG WINAPI ID3DXLineImpl_AddRef(ID3DXLine* iface)
static ULONG WINAPI ID3DXLineImpl_Release(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface); ULONG ref = InterlockedDecrement(&This->ref);
TRACE("(%p)->(): Release from %u\n", This, ref + 1); @@ -74,7 +79,7 @@ static ULONG WINAPI ID3DXLineImpl_Release(ID3DXLine* iface) /*** ID3DXLine methods ***/ static HRESULT WINAPI ID3DXLineImpl_GetDevice(ID3DXLine* iface, LPDIRECT3DDEVICE9* device) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(%p): stub\n", This, device);
@@ -83,7 +88,7 @@ static HRESULT WINAPI ID3DXLineImpl_GetDevice(ID3DXLine* iface, LPDIRECT3DDEVICE
static HRESULT WINAPI ID3DXLineImpl_Begin(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(): stub\n", This);
@@ -92,7 +97,7 @@ static HRESULT WINAPI ID3DXLineImpl_Begin(ID3DXLine* iface)
static HRESULT WINAPI ID3DXLineImpl_Draw(ID3DXLine* iface, CONST D3DXVECTOR2* vertexlist, DWORD vertexlistcount, D3DCOLOR color) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(%p, %u, %#x): stub\n", This, vertexlist, vertexlistcount, color);
@@ -102,7 +107,7 @@ static HRESULT WINAPI ID3DXLineImpl_Draw(ID3DXLine* iface, CONST D3DXVECTOR2* ve static HRESULT WINAPI ID3DXLineImpl_DrawTransform(ID3DXLine* iface, CONST D3DXVECTOR3* vertexlist, DWORD vertexlistcount, CONST D3DXMATRIX* transform, D3DCOLOR color) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(%p, %u, %p, %#x): stub\n", This, vertexlist, vertexlistcount, transform, color);
@@ -111,7 +116,7 @@ static HRESULT WINAPI ID3DXLineImpl_DrawTransform(ID3DXLine* iface, CONST D3DXVE
static HRESULT WINAPI ID3DXLineImpl_SetPattern(ID3DXLine* iface, DWORD pattern) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(%#x): stub\n", This, pattern);
@@ -120,7 +125,7 @@ static HRESULT WINAPI ID3DXLineImpl_SetPattern(ID3DXLine* iface, DWORD pattern)
static DWORD WINAPI ID3DXLineImpl_GetPattern(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(): stub\n", This);
@@ -129,7 +134,7 @@ static DWORD WINAPI ID3DXLineImpl_GetPattern(ID3DXLine* iface)
static HRESULT WINAPI ID3DXLineImpl_SetPatternScale(ID3DXLine* iface, FLOAT scale) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(%f): stub\n", This, scale);
@@ -138,7 +143,7 @@ static HRESULT WINAPI ID3DXLineImpl_SetPatternScale(ID3DXLine* iface, FLOAT scal
static FLOAT WINAPI ID3DXLineImpl_GetPatternScale(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(): stub\n", This);
@@ -147,7 +152,7 @@ static FLOAT WINAPI ID3DXLineImpl_GetPatternScale(ID3DXLine* iface)
static HRESULT WINAPI ID3DXLineImpl_SetWidth(ID3DXLine* iface, FLOAT width) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(%f): stub\n", This, width);
@@ -156,7 +161,7 @@ static HRESULT WINAPI ID3DXLineImpl_SetWidth(ID3DXLine* iface, FLOAT width)
static FLOAT WINAPI ID3DXLineImpl_GetWidth(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(): stub\n", This);
@@ -165,7 +170,7 @@ static FLOAT WINAPI ID3DXLineImpl_GetWidth(ID3DXLine* iface)
static HRESULT WINAPI ID3DXLineImpl_SetAntialias(ID3DXLine* iface, BOOL antialias) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(%u): stub\n", This, antialias);
@@ -174,7 +179,7 @@ static HRESULT WINAPI ID3DXLineImpl_SetAntialias(ID3DXLine* iface, BOOL antialia
static BOOL WINAPI ID3DXLineImpl_GetAntialias(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(): stub\n", This);
@@ -183,7 +188,7 @@ static BOOL WINAPI ID3DXLineImpl_GetAntialias(ID3DXLine* iface)
static HRESULT WINAPI ID3DXLineImpl_SetGLLines(ID3DXLine* iface, BOOL gl_lines) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(%u): stub\n", This, gl_lines);
@@ -192,7 +197,7 @@ static HRESULT WINAPI ID3DXLineImpl_SetGLLines(ID3DXLine* iface, BOOL gl_lines)
static BOOL WINAPI ID3DXLineImpl_GetGLLines(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(): stub\n", This);
@@ -201,7 +206,7 @@ static BOOL WINAPI ID3DXLineImpl_GetGLLines(ID3DXLine* iface)
static HRESULT WINAPI ID3DXLineImpl_End(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(): stub\n", This);
@@ -210,7 +215,7 @@ static HRESULT WINAPI ID3DXLineImpl_End(ID3DXLine* iface)
static HRESULT WINAPI ID3DXLineImpl_OnLostDevice(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(): stub\n", This);
@@ -218,7 +223,7 @@ static HRESULT WINAPI ID3DXLineImpl_OnLostDevice(ID3DXLine* iface) } static HRESULT WINAPI ID3DXLineImpl_OnResetDevice(ID3DXLine* iface) { - ID3DXLineImpl *This = (ID3DXLineImpl *)iface; + ID3DXLineImpl *This = impl_from_ID3DXLine(iface);
FIXME("(%p)->(): stub\n", This);
@@ -267,10 +272,10 @@ HRESULT WINAPI D3DXCreateLine(LPDIRECT3DDEVICE9 device, LPD3DXLINE* line) return E_OUTOFMEMORY; }
- object->lpVtbl = &ID3DXLine_Vtbl; + object->ID3DXLine_iface.lpVtbl = &ID3DXLine_Vtbl; object->ref = 1;
- *line = (LPD3DXLINE)object; + *line = &object->ID3DXLine_iface;
return D3D_OK; }