|
|
|
IDirect3DPixelShader9 Interface |
|
' ****************************************************************************************
' IDirect3DPixelShader9 interface
' $IID_IDirect3DPixelShader9 = GUID$("6D3BDBDC-5B02-4415-B852-CE5E8BCCB289}")
' ****************************************************************************************
' ****************************************************************************************
' Applications use the methods of the IDirect3DPixelShader9 interface to encapsulate the
' functionality of a pixel shader.
' Interface Information
' Stock Implementation d3d9.dll
' Custom Implementation No
' Inherits from IUnknown
' Header d3d9.h
' Import library d3d9.lib
' Minimum operating systems Windows 98
' ****************************************************************************************
' ****************************************************************************************
'DECLARE_INTERFACE_(IDirect3DPixelShader9, IUnknown)
'{
' /*** IUnknown methods ***/
' 0. STDMETHOD(QueryInterface)(THIS_ REFIID riid, void** ppvObj) PURE;
' 1. STDMETHOD_(ULONG,AddRef)(THIS) PURE;
' 2. STDMETHOD_(ULONG,Release)(THIS) PURE;
' /*** IDirect3DPixelShader9 methods ***/
' 3. STDMETHOD(GetDevice)(THIS_ IDirect3DDevice9** ppDevice) PURE;
' 4. STDMETHOD(GetFunction)(THIS_ void*,UINT* pSizeOfData) PURE;
'};
' ****************************************************************************************
' ****************************************************************************************
' GetDevice method
' Gets the device.
' Note Calling this method will increase the internal reference count on the
' IDirect3DDevice9 interface. Be sure to call IUnknown::Release when you are done using
' this IDirect3DDevice9 interface or you will have a memory leak.
' HRESULT GetDevice(
' IDirect3DDevice9 ** ppDevice
' );
' ****************************************************************************************
FUNCTION IDirect3DPixelShader9_GetDevice ALIAS "IDirect3DPixelShader9_GetDevice" ( _
BYVAL pthis AS DWORD PTR, BYREF ppDevice AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[3] USING IDirect3DPixelShader9_GetDevice(pthis, ppDevice) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
' ****************************************************************************************
' GetFunction method
' Gets a pointer to the shader data.
' HRESULT GetFunction(
' void* pData,
' UINT* pSizeOfData
' );
' ****************************************************************************************
FUNCTION IDirect3DPixelShader9_GetFunction ALIAS "IDirect3DPixelShader9_GetFunction" ( _
BYVAL pthis AS DWORD PTR, BYVAL pData AS DWORD, BYREF pSizeOfData AS DWORD) EXPORT AS LONG
LOCAL HRESULT AS LONG
IF pthis = %NULL THEN FUNCTION = %E_POINTER : EXIT FUNCTION
CALL DWORD @@pthis[4] USING IDirect3DPixelShader9_GetFunction(pthis, pData, pSizeOfData) TO HRESULT
FUNCTION = HRESULT
END FUNCTION
' ****************************************************************************************
|
Page last updated on Tuesday, 14 March 2006 20:09:52 +0100