From: <cap...@us...> - 2007-08-22 23:11:57
|
Revision: 2884 http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=2884&view=rev Author: captainjester Date: 2007-08-22 16:11:54 -0700 (Wed, 22 Aug 2007) Log Message: ----------- Added Paths: ----------- trunk/LWJGL/src/native/windows/org_lwjgl_d3d_D3DUtil.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3D9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3D9Ex.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DBaseTexture9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DCubeTexture9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DDevice9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DDevice9Ex.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DIndexBuffer9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DPixelShader9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DQuery9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DResource9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DStateBlock9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DSurface9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DSwapChain9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DSwapChain9Ex.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DTexture9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DVertexBuffer9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DVertexDeclaration9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DVertexShader9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DVolume9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DVolumeTexture9.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsContextImplementation.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsDirectInput3.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsDirectInput8.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsDirectInputDevice3.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsDirectInputDevice8.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsDisplay.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsDisplayPeerInfo.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsKeyboard.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsPeerInfo.c trunk/LWJGL/src/native/windows/org_lwjgl_d3d_WindowsRegistry.c Added: trunk/LWJGL/src/native/windows/org_lwjgl_d3d_D3DUtil.c =================================================================== --- trunk/LWJGL/src/native/windows/org_lwjgl_d3d_D3DUtil.c (rev 0) +++ trunk/LWJGL/src/native/windows/org_lwjgl_d3d_D3DUtil.c 2007-08-22 23:11:54 UTC (rev 2884) @@ -0,0 +1,121 @@ +#include <D3dx9math.h> +#include "org_lwjgl_d3d_D3DUtil.h" + +/* + * Class: org_lwjgl_d3d_D3DUtil + * Method: nD3DXMatrixLookAtLH + * Signature: (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_D3DUtil_nD3DXMatrixLookAtLH + (JNIEnv *env, jclass clazz, jobject outBuffer, jobject eyeBuffer, jobject atBuffer, jobject upBuffer) { + + D3DXMATRIX* out = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, outBuffer)); + CONST D3DXVECTOR3 *eye = (D3DXVECTOR3*)((*env)->GetDirectBufferAddress(env, eyeBuffer)); + CONST D3DXVECTOR3 *at = (D3DXVECTOR3*)((*env)->GetDirectBufferAddress(env, atBuffer)); + CONST D3DXVECTOR3 *up = (D3DXVECTOR3*)((*env)->GetDirectBufferAddress(env, upBuffer)); + + D3DXMatrixLookAtLH(out, eye, at, up); +} + +/* + * Class: org_lwjgl_d3d_D3DUtil + * Method: nD3DXMatrixPerspectiveFovLH + * Signature: (Ljava/nio/ByteBuffer;FFFF)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_D3DUtil_nD3DXMatrixPerspectiveFovLH + (JNIEnv *env, jclass clazz, jobject outBuffer, jfloat fovy, jfloat aspect, jfloat zn, jfloat zf) { + D3DXMATRIX *out = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, outBuffer)); + + D3DXMatrixPerspectiveFovLH(out, fovy, aspect, zn, zf); +} + +/* + * Class: org_lwjgl_d3d_D3DUtil + * Method: nD3DXMatrixIdentity + * Signature: (Ljava/nio/ByteBuffer;)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_D3DUtil_nD3DXMatrixIdentity + (JNIEnv *env, jclass clazz, jobject outBuffer) { + D3DXMATRIX *out = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, outBuffer)); + + D3DXMatrixIdentity(out); +} + +/* + * Class: org_lwjgl_d3d_D3DUtil + * Method: nD3DXMatrixScaling + * Signature: (Ljava/nio/ByteBuffer;FFF)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_D3DUtil_nD3DXMatrixScaling + (JNIEnv *env, jclass clazz, jobject outBuffer, jfloat sx, jfloat sy, jfloat sz) { + D3DXMATRIX *out = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, outBuffer)); + + D3DXMatrixScaling(out, sx, sy, sz); +} + +/* + * Class: org_lwjgl_d3d_D3DUtil + * Method: nD3DXMatrixTranslation + * Signature: (Ljava/nio/ByteBuffer;FFF)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_D3DUtil_nD3DXMatrixTranslation + (JNIEnv *env, jclass clazz, jobject outBuffer, jfloat x, jfloat y, jfloat z) { + D3DXMATRIX *out = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, outBuffer)); + + D3DXMatrixTranslation(out, x, y, z); +} + + +/* + * Class: org_lwjgl_d3d_D3DUtil + * Method: nD3DXMatrixRotationX + * Signature: (Ljava/nio/ByteBuffer;F)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_D3DUtil_nD3DXMatrixRotationX + (JNIEnv *env, jclass clazz, jobject outBuffer, jfloat angle) { + D3DXMATRIX *out = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, outBuffer)); + + D3DXMatrixRotationY(out, angle); +} + +/* + * Class: org_lwjgl_d3d_D3DUtil + * Method: nD3DXMatrixRotationY + * Signature: (Ljava/nio/ByteBuffer;F)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_D3DUtil_nD3DXMatrixRotationY + (JNIEnv *env, jclass clazz, jobject outBuffer, jfloat angle) { + D3DXMATRIX *out = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, outBuffer)); + + D3DXMatrixRotationY(out, angle); +} + +/* + * Class: org_lwjgl_d3d_D3DUtil + * Method: nD3DXMatrixRotationZ + * Signature: (Ljava/nio/ByteBuffer;F)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_D3DUtil_nD3DXMatrixRotationZ + (JNIEnv *env, jclass clazz, jobject outBuffer, jfloat angle) { + D3DXMATRIX *out = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, outBuffer)); + + D3DXMatrixRotationY(out, angle); +} + +/* + * Class: org_lwjgl_d3d_D3DUtil + * Method: nD3DXMatrixMultiply + * Signature: (Ljava/nio/ByteBuffer;Lorg/lwjgl/d3d/D3DMatrix;Lorg/lwjgl/d3d/D3DMatrix;)Ljava/nio/ByteBuffer; + */ +JNIEXPORT jobject JNICALL Java_org_lwjgl_d3d_D3DUtil_nD3DXMatrixMultiply + (JNIEnv *env, jclass clazz, jobject outBuffer, jobject m1Buffer, jobject m2Buffer) { + D3DXMATRIX *out = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, outBuffer)); + CONST D3DXMATRIX *m1 = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, m1Buffer)); + CONST D3DXMATRIX *m2 = (D3DXMATRIX*)((*env)->GetDirectBufferAddress(env, m2Buffer)); + + D3DXMATRIX *result = D3DXMatrixMultiply(out, m1, m2); + + jobject resultBuffer = (*env)->NewDirectByteBuffer(env, result, sizeof(D3DXMATRIX)); + + return resultBuffer; +} Added: trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3D9.c =================================================================== --- trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3D9.c (rev 0) +++ trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3D9.c 2007-08-22 23:11:54 UTC (rev 2884) @@ -0,0 +1,213 @@ +#include <windows.h> +#include <windowsx.h> +#include <d3d9.h> +#include <stdio.h> +#include "org_lwjgl_d3d_IDirect3D9.h" +#include "context.h" + +extern void setPointer(JNIEnv *env, jobject classInstance, const char* methodName, jlong pointer); +//void setPointer(JNIEnv *env, jobject classInstance, const char* methodName, jlong pointer) { +// jclass clazz = (*env)->GetObjectClass(env, classInstance); +// jmethodID mid = (*env)->GetMethodID(env, clazz, methodName, "(J)V"); +// if (mid != NULL) { +// (*env)->CallVoidMethod(env, classInstance, mid, pointer); +// } +//} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nCheckDepthStencilMatch + * Signature: (IIIII)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nCheckDepthStencilMatch + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint deviceType, jint adapterFormat, jint renderTargetFormat, jint depthStencilFormat) { + + return IDirect3D9_CheckDepthStencilMatch((IDirect3D9 *)iDirect3D9, adapter, deviceType, adapterFormat, renderTargetFormat, depthStencilFormat); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nCheckDeviceFormat + * Signature: (IIIJII)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nCheckDeviceFormat + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint deviceType, jint adapterFormat, jint usage, jint resoruceType, jint checkFormat) { + + return IDirect3D9_CheckDeviceFormat((IDirect3D9 *)iDirect3D9, adapter, deviceType, adapterFormat, usage, resoruceType, checkFormat); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nCheckDeviceFormatConversion + * Signature: (IIII)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nCheckDeviceFormatConversion + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint deviceType, jint sourceFormat, jint targetFormat) { + + return IDirect3D9_CheckDeviceFormatConversion((IDirect3D9 *)iDirect3D9, adapter, deviceType, sourceFormat, targetFormat); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nCheckDeviceMultiSampleType + * Signature: (IIIZILjava/nio/IntBuffer;)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nCheckDeviceMultiSampleType + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint deviceType, jint surfaceFormat, boolean windowed, jint multiSampleType, jobject qualityLevels) { + + DWORD * quality = NULL; + + if(qualityLevels != NULL) { + DWORD * quality = (DWORD *)((*env)->GetDirectBufferAddress(env, qualityLevels)); + } + + return IDirect3D9_CheckDeviceMultiSampleType((IDirect3D9 *)iDirect3D9, adapter, deviceType, surfaceFormat, windowed, multiSampleType, quality); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nCheckDeviceType + * Signature: (IIIIZ)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nCheckDeviceType + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint deviceType, jint displayFormat, jint backBufferFormat, boolean windowed) { + + return IDirect3D9_CheckDeviceType((IDirect3D9 *)iDirect3D9, adapter, deviceType, displayFormat, backBufferFormat, windowed); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nCreateDevice + * Signature: (IIJJLorg/lwjgl/d3d/IDirect3D9$D3DPRESENT_PARAMETERS;Lorg/lwjgl/d3d/IDirect3DDevice9;)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nCreateDevice + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint deviceType, jlong focusWindow, jint behaviorFlags, jobject presentationParameters, jobject returnedDeviceInterface) { + + IDirect3DDevice9 *iDirect3DDevice9; + HWND myHwnd = (HWND)(INT_PTR)focusWindow; + D3DPRESENT_PARAMETERS* pPresentationParameters = (D3DPRESENT_PARAMETERS*)((*env)->GetDirectBufferAddress(env, presentationParameters)); + + HRESULT hResult = IDirect3D9_CreateDevice((IDirect3D9 *)iDirect3D9, adapter, deviceType, + myHwnd, behaviorFlags, pPresentationParameters, &iDirect3DDevice9); + + setPointer(env, returnedDeviceInterface, "setIDirect3DDevice9", (jlong)iDirect3DDevice9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nEnumAdapterModes + * Signature: (IIILorg/lwjgl/d3d/IDirect3D9$D3DDISPLAYMODE;)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nEnumAdapterModes + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint format, jint modeIndex, jobject mode) { + + D3DDISPLAYMODE * displayMode = (D3DDISPLAYMODE *)((*env)->GetDirectBufferAddress(env, mode)); + + return IDirect3D9_EnumAdapterModes((IDirect3D9 *)iDirect3D9, adapter, format, modeIndex, displayMode); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nGetAdapterCount + * Signature: (J)I + */ +JNIEXPORT jint JNICALL Java_org_lwjgl_d3d_IDirect3D9_nGetAdapterCount + (JNIEnv *env, jobject object, jlong iDirect3D9) { + + return IDirect3D9_GetAdapterCount((IDirect3D9 *)iDirect3D9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nGetAdapterDisplayMode + * Signature: (ILorg/lwjgl/d3d/IDirect3D9$D3DDISPLAYMODE;)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nGetAdapterDisplayMode + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jobject mode) { + + D3DDISPLAYMODE * displayMode = (D3DDISPLAYMODE *)((*env)->GetDirectBufferAddress(env, mode)); + + return IDirect3D9_GetAdapterDisplayMode((IDirect3D9 *)iDirect3D9, adapter, displayMode); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nGetAdapterIdentifier + * Signature: (IJLorg/lwjgl/d3d/IDirect3D9$D3DADAPTER_IDENTIFIER9;)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nGetAdapterIdentifier + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint flags, jobject identifier) { + + D3DADAPTER_IDENTIFIER9 * adapterIdentifier = (D3DADAPTER_IDENTIFIER9 *)((*env)->GetDirectBufferAddress(env, identifier)); + + return IDirect3D9_GetAdapterIdentifier((IDirect3D9 *)iDirect3D9, adapter, flags, adapterIdentifier); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nGetAdapterModeCount + * Signature: (II)I + */ +JNIEXPORT jint JNICALL Java_org_lwjgl_d3d_IDirect3D9_nGetAdapterModeCount + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint format) { + + return IDirect3D9_GetAdapterModeCount((IDirect3D9 *)iDirect3D9, adapter, format); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nGetAdapterMonitor + * Signature: (I)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nGetAdapterMonitor + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter) { + + return (jlong)IDirect3D9_GetAdapterMonitor((IDirect3D9 *)iDirect3D9, adapter); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nGetDeviceCaps + * Signature: (IILorg/lwjgl/d3d/IDirect3D9$D3DCAPS9;)I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nGetDeviceCaps + (JNIEnv *env, jobject object, jlong iDirect3D9, jint adapter, jint deviceType, jobject caps) { + D3DCAPS9 * d3dCaps = (D3DCAPS9 *)((*env)->GetDirectBufferAddress(env, caps)); + + return IDirect3D9_GetDeviceCaps((IDirect3D9 *)iDirect3D9, adapter, deviceType, d3dCaps); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nRegisterSoftwareDevice + * Signature: ()I + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nRegisterSoftwareDevice + (JNIEnv *env, jobject object, jlong iDirect3D9) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nRelease + * Signature: (J)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_IDirect3D9_nRelease + (JNIEnv *env, jobject object, jlong iDirect3D9) { + IDirect3D9_Release((IDirect3D9 *)iDirect3D9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9 + * Method: nCreate + * Signature: ()J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9_nCreate + (JNIEnv *env, jclass clazz) { + IDirect3D9 *direct3DInterface = Direct3DCreate9(D3D_SDK_VERSION); + + return (jlong)direct3DInterface; +} Added: trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3D9Ex.c =================================================================== --- trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3D9Ex.c (rev 0) +++ trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3D9Ex.c 2007-08-22 23:11:54 UTC (rev 2884) @@ -0,0 +1,56 @@ +#include "org_lwjgl_d3d_IDirect3D9Ex.h" + +/* + * Class: org_lwjgl_d3d_IDirect3D9Ex + * Method: nCreateDeviceEx + * Signature: (JIIJJLorg/lwjgl/d3d/D3DPresentParameters;Lorg/lwjgl/d3d/D3DDisplaymodeEx;Lorg/lwjgl/d3d/IDirect3DDevice9Ex;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9Ex_nCreateDeviceEx + (JNIEnv *env, jobject obj, jlong IDirect3D9Ex, jint adapter, jint deviceType, jlong focusWindow, jlong behaviorFlags, jobject presentationParameters, jobject fullscreenDisplayMode, jobject returnedDeviceInterface) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9Ex + * Method: nEnumAdapterModesEx + * Signature: (JILorg/lwjgl/d3d/D3DDisplaymodeFilter;ILorg/lwjgl/d3d/D3DDisplaymodeEx;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9Ex_nEnumAdapterModesEx + (JNIEnv *env, jobject obj, jlong IDirect3D9Ex, jint adapter, jobject filter, jint mode, jobject displayMode) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9Ex + * Method: nGetAdapterDisplayModeEx + * Signature: (JILorg/lwjgl/d3d/D3DDisplaymodeEx;I)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9Ex_nGetAdapterDisplayModeEx + (JNIEnv *env, jobject obj, jlong IDirect3D9Ex, jint adapter, jobject mode, jint rotation) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9Ex + * Method: nGetAdapterLUID + * Signature: (JILorg/lwjgl/d3d/LUID;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3D9Ex_nGetAdapterLUID + (JNIEnv *env, jobject obj, jlong IDirect3D9Ex, jint adapter, jobject LUID) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3D9Ex + * Method: nGetAdapterModeCountEx + * Signature: (JILorg/lwjgl/d3d/D3DDisplaymodeFilter;)I + */ +JNIEXPORT jint JNICALL Java_org_lwjgl_d3d_IDirect3D9Ex_nGetAdapterModeCountEx + (JNIEnv *env, jobject obj, jlong IDirect3D9Ex, jint adapter, jobject filter) { + + return 0; +} Added: trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DBaseTexture9.c =================================================================== --- trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DBaseTexture9.c (rev 0) +++ trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DBaseTexture9.c 2007-08-22 23:11:54 UTC (rev 2884) @@ -0,0 +1,66 @@ +#include "org_lwjgl_d3d_IDirect3DBaseTexture9.h" + +/* + * Class: org_lwjgl_d3d_IDirect3DBaseTexture9 + * Method: nGenerateMipSubLevels + * Signature: (J)V + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_IDirect3DBaseTexture9_nGenerateMipSubLevels + (JNIEnv *env, jobject obj, jlong IDirect3DBaseTexture9) { + +} + +/* + * Class: org_lwjgl_d3d_IDirect3DBaseTexture9 + * Method: nGetAutoGenFilterType + * Signature: (J)I + */ +JNIEXPORT jint JNICALL Java_org_lwjgl_d3d_IDirect3DBaseTexture9_nGetAutoGenFilterType + (JNIEnv *env, jobject obj, jlong IDirect3DBaseTexture9) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DBaseTexture9 + * Method: nGetLevelCount + * Signature: (J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DBaseTexture9_nGetLevelCount + (JNIEnv *env, jobject obj, jlong IDirect3DBaseTexture9) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DBaseTexture9 + * Method: nGetLOD + * Signature: (J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DBaseTexture9_nGetLOD + (JNIEnv *env, jobject obj, jlong IDirect3DBaseTexture9) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DBaseTexture9 + * Method: nSetAutoGenFilterType + * Signature: (JI)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DBaseTexture9_nSetAutoGenFilterType + (JNIEnv *env, jobject obj, jlong IDirect3DBaseTexture9, jint filterType) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DBaseTexture9 + * Method: nSetLOD + * Signature: (JJ)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DBaseTexture9_nSetLOD + (JNIEnv *env, jobject obj, jlong IDirect3DBaseTexture9, jlong LODNew) { + + return 0; +} Added: trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DCubeTexture9.c =================================================================== --- trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DCubeTexture9.c (rev 0) +++ trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DCubeTexture9.c 2007-08-22 23:11:54 UTC (rev 2884) @@ -0,0 +1,56 @@ +#include "org_lwjgl_d3d_IDirect3DCubeTexture9.h" + +/* + * Class: org_lwjgl_d3d_IDirect3DCubeTexture9 + * Method: nAddDirtyRect + * Signature: (JILorg/lwjgl/d3d/Rectangle;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DCubeTexture9_nAddDirtyRect + (JNIEnv *env, jobject obj, jlong IDirect3DCubeTexture9, jint faceType, jobject dirtyRect) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DCubeTexture9 + * Method: nGetCubeMapSurface + * Signature: (JIILorg/lwjgl/d3d/IDirect3DSurface9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DCubeTexture9_nGetCubeMapSurface + (JNIEnv *env, jobject obj, jlong IDirect3DCubeTexture9, jint faceType, jint level, jobject cubeMapSurface) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DCubeTexture9 + * Method: nGetLevelDesc + * Signature: (JILorg/lwjgl/d3d/D3DSsurfaceDesc;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DCubeTexture9_nGetLevelDesc + (JNIEnv *env, jobject obj, jlong IDirect3DCubeTexture9, jint level, jobject desc) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DCubeTexture9 + * Method: nLockRect + * Signature: (JIILorg/lwjgl/d3d/D3DLockedRect;Lorg/lwjgl/d3d/Rectangle;J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DCubeTexture9_nLockRect + (JNIEnv *env, jobject obj, jlong IDirect3DCubeTexture9, jint faceType, jint level, jobject lockedRect, jobject rect, jlong flags) { + + return 0; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DCubeTexture9 + * Method: nUnlockRect + * Signature: (JII)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DCubeTexture9_nUnlockRect + (JNIEnv *env, jobject obj, jlong IDirect3DCubeTexture9, jint faceType, jint level) { + + return 0; +} Added: trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DDevice9.c =================================================================== --- trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DDevice9.c (rev 0) +++ trunk/LWJGL/src/native/windows/org_lwjgl_d3d_IDirect3DDevice9.c 2007-08-22 23:11:54 UTC (rev 2884) @@ -0,0 +1,1616 @@ +#include <d3d9.h> +#include "org_lwjgl_d3d_IDirect3DDevice9.h" + +void setPointer(JNIEnv *env, jobject classInstance, const char* methodName, jlong pointer) { + jclass clazz = (*env)->GetObjectClass(env, classInstance); + jmethodID mid = (*env)->GetMethodID(env, clazz, methodName, "(J)V"); + if (mid != NULL) { + (*env)->CallVoidMethod(env, classInstance, mid, pointer); + } +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nBeginScene + * Signature: ()J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nBeginScene + (JNIEnv *env, jobject object, jlong iDirect3DDevice9) { + + return IDirect3DDevice9_BeginScene((IDirect3DDevice9*)iDirect3DDevice9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nBeginStateBlock + * Signature: ()J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nBeginStateBlock + (JNIEnv *env, jobject object, jlong iDirect3DDevice9) { + + return IDirect3DDevice9_BeginStateBlock((IDirect3DDevice9*)iDirect3DDevice9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nClear + * Signature: (JLjava/nio/LongBuffer;JIFJ)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nClear + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong count, jobject rects, jlong flags, jint color, jfloat z, jlong stencil) { + + //fix rects + return IDirect3DDevice9_Clear((IDirect3DDevice9*)iDirect3DDevice9, count, NULL, flags, color, z, stencil); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nColorFill + * Signature: (Lorg/lwjgl/d3d/IDirect3DSurface9;Lorg/lwjgl/d3d/Rectangle;I)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nColorFill + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong surface, jobject rectBuffer, jint color) { + + RECT *rect = (RECT*)((*env)->GetDirectBufferAddress(env, rectBuffer)); + + return IDirect3DDevice9_ColorFill((IDirect3DDevice9*)iDirect3DDevice9, (IDirect3DSurface9*)surface, rect, color); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateAdditionalSwapChain + * Signature: (Lorg/lwjgl/d3d/D3DPresentParameters;Lorg/lwjgl/d3d/IDirect3DSwapChain9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateAdditionalSwapChain + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject presentationParametersBuffer, jobject swapChain) { + + D3DPRESENT_PARAMETERS *presentationParameters = (D3DPRESENT_PARAMETERS*)((*env)->GetDirectBufferAddress(env, presentationParametersBuffer)); + IDirect3DSwapChain9 *iDirect3DSwapChain9; + + HRESULT hResult = IDirect3DDevice9_CreateAdditionalSwapChain((IDirect3DDevice9*)iDirect3DDevice9, presentationParameters, &iDirect3DSwapChain9); + + setPointer(env, swapChain, "setIDirect3DSwapChain9", (jlong)iDirect3DSwapChain9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateCubeTexture + * Signature: (IIJIILorg/lwjgl/d3d/IDirect3DCubeTexture9;J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateCubeTexture + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint edgeLength, jint levels, jlong usage, jint format, jint pool, jobject cubeTexture, jlong shareHandle) { + + IDirect3DCubeTexture9 *iDirect3DCubeTexture9; + + HRESULT hResult = IDirect3DDevice9_CreateCubeTexture((IDirect3DDevice9*)iDirect3DDevice9, edgeLength, levels, + usage, format, pool, &iDirect3DCubeTexture9, (HANDLE*)shareHandle); + + setPointer(env, cubeTexture, "setIDirect3DCubeTexture9", (jlong)iDirect3DCubeTexture9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateDepthStencilSurface + * Signature: (IIIIJZLorg/lwjgl/d3d/IDirect3DSurface9;J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateDepthStencilSurface + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint width, jint height, jint format, jint multiSample, jlong multiSampleQuality, jboolean discard, jobject surface, jlong sharedHandle) { + + IDirect3DSurface9 *iDirect3DSurface9; + + HRESULT hResult = IDirect3DDevice9_CreateDepthStencilSurface((IDirect3DDevice9*)iDirect3DDevice9, width, height, format, + multiSample, multiSampleQuality, discard, &iDirect3DSurface9, (HANDLE*)sharedHandle); + + setPointer(env, surface, "setIDirect3DSurface9", (jlong)iDirect3DSurface9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateIndexBuffer + * Signature: (IJIILorg/lwjgl/d3d/IDirect3DIndexBuffer9;J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateIndexBuffer + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint length, jlong usage, jint format, jint pool, jobject indexBuffer, jlong shareHandle) { + + IDirect3DIndexBuffer9 *iDirect3DIndexBuffer9; + + HRESULT hResult = IDirect3DDevice9_CreateIndexBuffer((IDirect3DDevice9*)iDirect3DDevice9, length, usage, format, + pool, &iDirect3DIndexBuffer9, (HANDLE*)shareHandle); + + setPointer(env, indexBuffer, "setIDirect3DIndexBuffer9", (jlong)iDirect3DIndexBuffer9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateOffscreenPlainSurface + * Signature: (IIIJLorg/lwjgl/d3d/IDirect3DSurface9;J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateOffscreenPlainSurface + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint width, jint height, jint format, jlong pool, jobject surface, jlong sharedHandle) { + + IDirect3DSurface9 *iDirect3DSurface9; + + HRESULT hResult = IDirect3DDevice9_CreateOffscreenPlainSurface((IDirect3DDevice9*)iDirect3DDevice9, width, height, format, + pool, &iDirect3DSurface9, (HANDLE*)sharedHandle); + + setPointer(env, surface, "setIDirect3DSurface9", (jlong)iDirect3DSurface9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreatePixelShader + * Signature: (JLorg/lwjgl/d3d/IDirect3DPixelShader9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreatePixelShader + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong function, jobject shader) { + + IDirect3DPixelShader9 *iDirect3DPixelShader9; + + HRESULT hResult = IDirect3DDevice9_CreatePixelShader((IDirect3DDevice9*)iDirect3DDevice9, (const DWORD*)function, &iDirect3DPixelShader9); + + setPointer(env, shader, "setIDirect3DPixelShader9", (jlong)iDirect3DPixelShader9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateQuery + * Signature: (ILorg/lwjgl/d3d/IDirect3DQuery9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateQuery + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint type, jobject query) { + + IDirect3DQuery9 *iDirect3DQuery9; + + HRESULT hResult = IDirect3DDevice9_CreateQuery((IDirect3DDevice9*)iDirect3DDevice9, type, &iDirect3DQuery9); + + setPointer(env, query, "setIDirect3DQuery9", (jlong)iDirect3DQuery9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateRenderTarget + * Signature: (IIIIJZLorg/lwjgl/d3d/IDirect3DSurface9;J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateRenderTarget + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint width, jint height, jint format, jint multiSample, jlong multiSampleQuality, jboolean lockable, jobject surface, jlong sharedHandle) { + + IDirect3DSurface9 *iDirect3DSurface9; + + HRESULT hResult = IDirect3DDevice9_CreateRenderTarget((IDirect3DDevice9*)iDirect3DDevice9, width, height, format, + multiSample, multiSampleQuality, lockable, &iDirect3DSurface9, (HANDLE*)sharedHandle); + + setPointer(env, surface, "setIDirect3DSurface9", (jlong)iDirect3DSurface9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateStateBlock + * Signature: (ILorg/lwjgl/d3d/IDirect3DStateBlock9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateStateBlock + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint type, jobject stateBlock) { + + IDirect3DStateBlock9 *iDirect3DStateBlock9; + + HRESULT hResult = IDirect3DDevice9_CreateStateBlock((IDirect3DDevice9*)iDirect3DDevice9, type, &iDirect3DStateBlock9); + + setPointer(env, stateBlock, "setIDirect3DStateBlock9", (jlong)iDirect3DStateBlock9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateTexture + * Signature: (IIIJIILorg/lwjgl/d3d/IDirect3DTexture9;J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateTexture + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint width, jint height, jint levels, jlong usage, jint format, jint pool, jobject texture, jlong sharedHandle) { + + IDirect3DTexture9 *iDirect3DTexture9; + + HRESULT hResult = IDirect3DDevice9_CreateTexture((IDirect3DDevice9*)iDirect3DDevice9, width, height, levels, + usage, format, pool, &iDirect3DTexture9, (HANDLE*)sharedHandle); + + setPointer(env, texture, "setIDirect3DTexture9", (jlong)iDirect3DTexture9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateVertexBuffer + * Signature: (IJJILorg/lwjgl/d3d/IDirect3DVertexBuffer9;J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateVertexBuffer + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint length, jint usage, jint FVF, jint pool, jobject vertexBuffer, jlong sharedHandle) { + + IDirect3DVertexBuffer9 *iDirect3DVertexBuffer9; + + HRESULT hResult = IDirect3DDevice9_CreateVertexBuffer((IDirect3DDevice9*)iDirect3DDevice9, length, usage, FVF, + pool, &iDirect3DVertexBuffer9, (HANDLE*)sharedHandle); + + setPointer(env, vertexBuffer, "setIDirect3DVertexBuffer9", (jlong)iDirect3DVertexBuffer9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateVertexDeclaration + * Signature: (Lorg/lwjgl/d3d/D3DVertexElement9;Lorg/lwjgl/d3d/IDirect3DVertexDeclaration9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateVertexDeclaration + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject vertexElementsBuffer, jobject decl) { + + IDirect3DVertexDeclaration9 *iDirect3DVertexDeclaration9; + D3DVERTEXELEMENT9* vertexElements = (D3DVERTEXELEMENT9*)((*env)->GetDirectBufferAddress(env, vertexElementsBuffer)); + + HRESULT hResult = IDirect3DDevice9_CreateVertexDeclaration((IDirect3DDevice9*)iDirect3DDevice9, vertexElements, + &iDirect3DVertexDeclaration9); + + setPointer(env, decl, "setIDirect3DVertexDeclaration9", (jlong)iDirect3DVertexDeclaration9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateVertexShader + * Signature: (JLorg/lwjgl/d3d/IDirect3DVertexShader9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateVertexShader + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong function, jobject shader) { + + IDirect3DVertexShader9 *iDirect3DVertexShader9; + + HRESULT hResult = IDirect3DDevice9_CreateVertexShader((IDirect3DDevice9*)iDirect3DDevice9, (DWORD*)function, + &iDirect3DVertexShader9); + + setPointer(env, shader, "setIDirect3DVertexShader9", (jlong)iDirect3DVertexShader9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nCreateVolumeTexture + * Signature: (IIIIJIILorg/lwjgl/d3d/IDirect3DVolumeTexture9;J)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nCreateVolumeTexture + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint width, jint height, jint depth, jint levels, jlong usage, jint format, jint pool, jobject volumeTexture, jlong sharedHandle) { + + IDirect3DVolumeTexture9 *iDirect3DVolumeTexture9; + + HRESULT hResult = IDirect3DDevice9_CreateVolumeTexture((IDirect3DDevice9*)iDirect3DDevice9, width, height, depth, + levels, usage, format, pool, &iDirect3DVolumeTexture9, (HANDLE*)sharedHandle); + + setPointer(env, volumeTexture, "setIDirect3DVolumeTexture9", (jlong)iDirect3DVolumeTexture9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nDeletePatch + * Signature: (I)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nDeletePatch + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint handle) { + + return IDirect3DDevice9_DeletePatch((IDirect3DDevice9*)iDirect3DDevice9, handle); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nDrawIndexedPrimitive + * Signature: (IIIIII)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nDrawIndexedPrimitive + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint type, jint baseVertexIndex, jint minIndex, jint numVertices, jint startIndex, jint primitiveCount) { + + return IDirect3DDevice9_DrawIndexedPrimitive((IDirect3DDevice9*)iDirect3DDevice9, type, baseVertexIndex, minIndex, + numVertices, startIndex, primitiveCount); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nDrawIndexedPrimitiveUP + * Signature: (IIIILjava/nio/ByteBuffer;ILjava/nio/ByteBuffer;I)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nDrawIndexedPrimitiveUP + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint primitiveType, jint minVertexIndex, jint numVertices, jint primitiveCount, jobject indexDataBuffer, jint indexDataFormat, jobject vertexStreamZeroDataBuffer, jint vertexStreamZeroStride) { + + CONST void *indexData = (CONST void *)((*env)->GetDirectBufferAddress(env, indexDataBuffer)); + CONST void *vertexStreamZeroData = (CONST void *)((*env)->GetDirectBufferAddress(env, vertexStreamZeroDataBuffer)); + + return IDirect3DDevice9_DrawIndexedPrimitiveUP((IDirect3DDevice9*)iDirect3DDevice9, primitiveType, minVertexIndex, + numVertices, primitiveCount, indexData, indexDataFormat, vertexStreamZeroData, vertexStreamZeroStride); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nDrawPrimitive + * Signature: (III)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nDrawPrimitive + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint primitiveType, jint startVertex, jint primitiveCount) { + + return IDirect3DDevice9_DrawPrimitive((IDirect3DDevice9*)iDirect3DDevice9, primitiveType, startVertex, primitiveCount); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nDrawPrimitiveUP + * Signature: (IILjava/nio/ByteBuffer;I)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nDrawPrimitiveUP + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint primitiveType, jint primitiveCount, jobject vertexStreamZeroData, jint vertexStreamZeroStride) { + + void* vertex = (void*)((*env)->GetDirectBufferAddress(env, vertexStreamZeroData)); + + return IDirect3DDevice9_DrawPrimitiveUP((IDirect3DDevice9*)iDirect3DDevice9, primitiveType, primitiveCount, vertex, vertexStreamZeroStride); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nDrawRectPatch + * Signature: (ILjava/nio/FloatBuffer;Lorg/lwjgl/d3d/D3DRectPatchInfo;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nDrawRectPatch + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint handle, jobject numSegsBuffer, jobject rectPatchInfoBuffer) { + + const float *numSegs = (const float *)((*env)->GetDirectBufferAddress(env, numSegsBuffer)); + const D3DRECTPATCH_INFO *rectPatchInfo = (const D3DRECTPATCH_INFO *)((*env)->GetDirectBufferAddress(env, rectPatchInfoBuffer)); + + return IDirect3DDevice9_DrawRectPatch((IDirect3DDevice9*)iDirect3DDevice9, handle, numSegs, rectPatchInfo); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nDrawTriPatch + * Signature: (ILjava/nio/FloatBuffer;Lorg/lwjgl/d3d/D3DTriPatchInfo;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nDrawTriPatch + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint handle, jobject numSegsBuffer, jobject triPatchInfoBuffer) { + + const float *numSegs = (const float *)((*env)->GetDirectBufferAddress(env, numSegsBuffer)); + const D3DTRIPATCH_INFO *triPatchInfo = (const D3DTRIPATCH_INFO *)((*env)->GetDirectBufferAddress(env, triPatchInfoBuffer)); + + return IDirect3DDevice9_DrawTriPatch((IDirect3DDevice9*)iDirect3DDevice9, handle, numSegs, triPatchInfo); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nEndScene + * Signature: ()J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nEndScene + (JNIEnv *env, jobject object, jlong iDirect3DDevice9) { + + return IDirect3DDevice9_EndScene((IDirect3DDevice9*)iDirect3DDevice9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nEndStateBlock + * Signature: (Lorg/lwjgl/d3d/IDirect3DStateBlock9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nEndStateBlock + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject stateBlock) { + + IDirect3DStateBlock9 *iDirect3DStateBlock9; + + HRESULT hResult = IDirect3DDevice9_EndStateBlock((IDirect3DDevice9*)iDirect3DDevice9, &iDirect3DStateBlock9); + + setPointer(env, stateBlock, "setIDirect3DStateBlock9", (jlong)iDirect3DStateBlock9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nEvictManagedResources + * Signature: ()J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nEvictManagedResources + (JNIEnv *env, jobject object, jlong iDirect3DDevice9) { + + return IDirect3DDevice9_EvictManagedResources((IDirect3DDevice9*)iDirect3DDevice9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetAvailableTextureMem + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetAvailableTextureMem + (JNIEnv *env, jobject object, jlong iDirect3DDevice9) { + + return IDirect3DDevice9_GetAvailableTextureMem((IDirect3DDevice9*)iDirect3DDevice9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetBackBuffer + * Signature: (IIILorg/lwjgl/d3d/IDirect3DSurface9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetBackBuffer + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint swapChain, jint backBuffer, jint type, jobject backBufferSurface) { + + IDirect3DSurface9 *iDirect3DSurface9; + + HRESULT hResult = IDirect3DDevice9_GetBackBuffer((IDirect3DDevice9*)iDirect3DDevice9, swapChain, backBuffer, type, + &iDirect3DSurface9); + + setPointer(env, backBufferSurface, "setIDirect3DSurface9", (jlong)iDirect3DSurface9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetClipPlane + * Signature: (JLjava/nio/FloatBuffer;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetClipPlane + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong index, jobject planeBuffer) { + + float* plane = (float*)((*env)->GetDirectBufferAddress(env, planeBuffer)); + + return IDirect3DDevice9_GetClipPlane((IDirect3DDevice9*)iDirect3DDevice9, index, plane); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetClipStatus + * Signature: (Lorg/lwjgl/d3d/D3DClipStatus9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetClipStatus + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject clipStatusBuffer) { + + D3DCLIPSTATUS9* planeBuffer = (D3DCLIPSTATUS9*)((*env)->GetDirectBufferAddress(env, clipStatusBuffer)); + + return IDirect3DDevice9_GetClipStatus((IDirect3DDevice9*)iDirect3DDevice9, planeBuffer); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetCreationParameters + * Signature: (Lorg/lwjgl/d3d/D3DDeviceCreationParameters;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetCreationParameters + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject parametersBuffer) { + + D3DDEVICE_CREATION_PARAMETERS* parameters = (D3DDEVICE_CREATION_PARAMETERS*)((*env)->GetDirectBufferAddress(env, parametersBuffer)); + + return IDirect3DDevice9_GetCreationParameters((IDirect3DDevice9*)iDirect3DDevice9, parameters); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetCurrentTexturePalette + * Signature: (Ljava/nio/IntBuffer;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetCurrentTexturePalette + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject paletteNumberBuffer) { + + UINT* paletteNumber = (UINT*)((*env)->GetDirectBufferAddress(env, paletteNumberBuffer)); + + return IDirect3DDevice9_GetCurrentTexturePalette((IDirect3DDevice9*)iDirect3DDevice9, paletteNumber); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetDepthStencilSurface + * Signature: (Lorg/lwjgl/d3d/IDirect3DSurface9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetDepthStencilSurface + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject zStencilSurface) { + + IDirect3DSurface9 *iDirect3DSurface9; + + HRESULT hResult = IDirect3DDevice9_GetDepthStencilSurface((IDirect3DDevice9*)iDirect3DDevice9, &iDirect3DSurface9); + + setPointer(env, zStencilSurface, "setIDirect3DSurface9", (jlong)iDirect3DSurface9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetDeviceCaps + * Signature: (Lorg/lwjgl/d3d/D3DCaps9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetDeviceCaps + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject capsBuffer) { + + D3DCAPS9* caps = (D3DCAPS9*)((*env)->GetDirectBufferAddress(env, capsBuffer)); + + return IDirect3DDevice9_GetDeviceCaps((IDirect3DDevice9*)iDirect3DDevice9, caps); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetDirect3D + * Signature: (Lorg/lwjgl/d3d/IDirect3D9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetDirect3D + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject D3D9) { + + IDirect3D9 *iDirect3D9; + + HRESULT hResult = IDirect3DDevice9_GetDirect3D((IDirect3DDevice9*)iDirect3DDevice9, &iDirect3D9); + + setPointer(env, D3D9, "setIDirect3D9", (jlong)iDirect3D9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetDisplayMode + * Signature: (ILorg/lwjgl/d3d/D3DDisplaymode;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetDisplayMode + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint swapChain, jobject modeBuffer) { + + D3DDISPLAYMODE* mode = (D3DDISPLAYMODE*)((*env)->GetDirectBufferAddress(env, modeBuffer)); + + return IDirect3DDevice9_GetDisplayMode((IDirect3DDevice9*)iDirect3DDevice9, swapChain, mode); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetFrontBufferData + * Signature: (ILorg/lwjgl/d3d/IDirect3DSurface9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetFrontBufferData + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint swapChain, jlong destSurface) { + + return IDirect3DDevice9_GetFrontBufferData((IDirect3DDevice9*)iDirect3DDevice9, swapChain, + (IDirect3DSurface9 *)destSurface); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetFVF + * Signature: (Ljava/nio/LongBuffer;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetFVF + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject FVFBuffer) { + + DWORD* FVF = (DWORD*)((*env)->GetDirectBufferAddress(env, FVFBuffer)); + + return IDirect3DDevice9_GetFVF((IDirect3DDevice9*)iDirect3DDevice9, FVF); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetGammaRamp + * Signature: (ILorg/lwjgl/d3d/D3DGammaRamp;)J + */ +JNIEXPORT void JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetGammaRamp + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint swapChain, jobject rampBuffer) { + + D3DGAMMARAMP* ramp = (D3DGAMMARAMP*)((*env)->GetDirectBufferAddress(env, rampBuffer)); + + IDirect3DDevice9_GetGammaRamp((IDirect3DDevice9*)iDirect3DDevice9, swapChain, ramp); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetIndices + * Signature: (Lorg/lwjgl/d3d/IDirect3DIndexBuffer9;Ljava/nio/IntBuffer;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetIndices + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject indexData) { + + IDirect3DIndexBuffer9 *iDirect3DIndexBuffer9; + + HRESULT hResult = IDirect3DDevice9_GetIndices((IDirect3DDevice9*)iDirect3DDevice9, &iDirect3DIndexBuffer9); + + setPointer(env, indexData, "setIDirect3DIndexBuffer9", (jlong)iDirect3DIndexBuffer9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetLight + * Signature: (JLorg/lwjgl/d3d/D3DLight9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetLight + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong index, jobject lightBuffer) { + + D3DLIGHT9* light = (D3DLIGHT9*)((*env)->GetDirectBufferAddress(env, lightBuffer)); + + return IDirect3DDevice9_GetLight((IDirect3DDevice9*)iDirect3DDevice9, index, light); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetLightEnable + * Signature: (JZ)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetLightEnable + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong index, jobject enableBuffer) { + + BOOL* enable = (BOOL*)((*env)->GetDirectBufferAddress(env, enableBuffer)); + + return IDirect3DDevice9_GetLightEnable((IDirect3DDevice9*)iDirect3DDevice9, index, enable); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetMaterial + * Signature: (Lorg/lwjgl/d3d/D3DMaterial9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetMaterial + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject materialBuffer) { + + D3DMATERIAL9* material = (D3DMATERIAL9*)((*env)->GetDirectBufferAddress(env, materialBuffer)); + + return IDirect3DDevice9_GetMaterial((IDirect3DDevice9*)iDirect3DDevice9, material); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetNPatchMode + * Signature: ()F + */ +JNIEXPORT jfloat JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetNPatchMode + (JNIEnv *env, jobject object, jlong iDirect3DDevice9) { + + return IDirect3DDevice9_GetNPatchMode((IDirect3DDevice9*)iDirect3DDevice9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetNumberOfSwapChains + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetNumberOfSwapChains + (JNIEnv *env, jobject object, jlong iDirect3DDevice9) { + + return IDirect3DDevice9_GetNumberOfSwapChains((IDirect3DDevice9*)iDirect3DDevice9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetPaletteEntries + * Signature: (ILorg/lwjgl/d3d/PaletteEntry;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetPaletteEntries + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint paletteNumber, jobject entriesBuffer) { + + PALETTEENTRY* entries = (PALETTEENTRY*)((*env)->GetDirectBufferAddress(env, entriesBuffer)); + + return IDirect3DDevice9_GetPaletteEntries((IDirect3DDevice9*)iDirect3DDevice9, paletteNumber, entries); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetPixelShader + * Signature: (Lorg/lwjgl/d3d/IDirect3DPixelShader9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetPixelShader + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject shader) { + + IDirect3DPixelShader9 *iDirect3DPixelShader9; + + HRESULT hResult = IDirect3DDevice9_GetPixelShader((IDirect3DDevice9*)iDirect3DDevice9, &iDirect3DPixelShader9); + + setPointer(env, shader, "setIDirect3DPixelShader9", (jlong)iDirect3DPixelShader9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetPixelShaderConstantB + * Signature: (IZI)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetPixelShaderConstantB + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint startRegister, jobject constantDataBuffer, jint boolCount) { + + BOOL* constantData = (BOOL*)((*env)->GetDirectBufferAddress(env, constantDataBuffer)); + + return IDirect3DDevice9_GetPixelShaderConstantB((IDirect3DDevice9*)iDirect3DDevice9, startRegister, constantData, + boolCount); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetPixelShaderConstantF + * Signature: (ILjava/nio/FloatBuffer;I)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetPixelShaderConstantF + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint startRegister, jobject constantDataBuffer, jint vector4fCount) { + + float* constantData = (float*)((*env)->GetDirectBufferAddress(env, constantDataBuffer)); + + return IDirect3DDevice9_GetPixelShaderConstantF((IDirect3DDevice9*)iDirect3DDevice9, startRegister, constantData, + vector4fCount); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetPixelShaderConstantI + * Signature: (ILjava/nio/IntBuffer;I)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetPixelShaderConstantI + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint startRegister, jobject constantDataBuffer, jint vector4iCount) { + + int* constantData = (int*)((*env)->GetDirectBufferAddress(env, constantDataBuffer)); + + return IDirect3DDevice9_GetPixelShaderConstantI((IDirect3DDevice9*)iDirect3DDevice9, startRegister, constantData, + vector4iCount); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetRasterStatus + * Signature: (ILorg/lwjgl/d3d/D3DRasterStatus;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetRasterStatus + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint swapChain, jobject rasterStatusBuffer) { + + D3DRASTER_STATUS* rasterStatus = (D3DRASTER_STATUS*)((*env)->GetDirectBufferAddress(env, rasterStatusBuffer)); + + return IDirect3DDevice9_GetRasterStatus((IDirect3DDevice9*)iDirect3DDevice9, swapChain, rasterStatus); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetRenderState + * Signature: (IJ)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetRenderState + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint state, jobject valueBuffer) { + + DWORD* value = (DWORD*)((*env)->GetDirectBufferAddress(env, valueBuffer)); + + return IDirect3DDevice9_GetRenderState((IDirect3DDevice9*)iDirect3DDevice9, state, value); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetRenderTarget + * Signature: (JLorg/lwjgl/d3d/IDirect3DSurface9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetRenderTarget + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong renderTargetIndex, jobject renderTarget) { + + IDirect3DSurface9 *iDirect3DSurface9; + + HRESULT hResult = IDirect3DDevice9_GetRenderTarget((IDirect3DDevice9*)iDirect3DDevice9, renderTargetIndex, + &iDirect3DSurface9); + + setPointer(env, renderTarget, "setIDirect3DSurface9", (jlong)iDirect3DSurface9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetRenderTargetData + * Signature: (Lorg/lwjgl/d3d/IDirect3DSurface9;Lorg/lwjgl/d3d/IDirect3DSurface9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetRenderTargetData + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong renderTarget, jlong destSurface) { + + return IDirect3DDevice9_GetRenderTargetData((IDirect3DDevice9*)iDirect3DDevice9, (IDirect3DSurface9 *)renderTarget, + (IDirect3DSurface9 *)destSurface); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetSamplerState + * Signature: (JILjava/nio/LongBuffer;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetSamplerState + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong sampler, jint type, jobject valueBuffer) { + + DWORD* value = (DWORD*)((*env)->GetDirectBufferAddress(env, valueBuffer)); + + return IDirect3DDevice9_GetSamplerState((IDirect3DDevice9*)iDirect3DDevice9, sampler, type, value); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetScissorRect + * Signature: (Lorg/lwjgl/d3d/Rectangle;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetScissorRect + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject rectBuffer) { + + RECT* rect = (RECT*)((*env)->GetDirectBufferAddress(env, rectBuffer)); + + return IDirect3DDevice9_GetScissorRect((IDirect3DDevice9*)iDirect3DDevice9, rect); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetSoftwareVertexProcessing + * Signature: ()Z + */ +JNIEXPORT jboolean JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetSoftwareVertexProcessing + (JNIEnv *env, jobject object, jlong iDirect3DDevice9) { + + return IDirect3DDevice9_GetSoftwareVertexProcessing((IDirect3DDevice9*)iDirect3DDevice9); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetStreamSource + * Signature: (ILorg/lwjgl/d3d/IDirect3DVertexBuffer9;II)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetStreamSource + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint streamNumber, jobject streamData, jobject offsetInBytesBuffer, jobject strideBuffer) { + + IDirect3DVertexBuffer9 *iDirect3DVertexBuffer9; + UINT* offsetInBytes = (UINT*)((*env)->GetDirectBufferAddress(env, offsetInBytesBuffer)); + UINT* stride = (UINT*)((*env)->GetDirectBufferAddress(env, strideBuffer)); + + HRESULT hResult = IDirect3DDevice9_GetStreamSource((IDirect3DDevice9*)iDirect3DDevice9, streamNumber, + &iDirect3DVertexBuffer9, offsetInBytes, stride); + + setPointer(env, streamData, "setIDirect3DVertexBuffer9", (jlong)iDirect3DVertexBuffer9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetStreamSourceFreq + * Signature: (ILjava/nio/IntBuffer;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetStreamSourceFreq + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint streamNumber, jobject dividerBuffer) { + + UINT* divider = (UINT*)((*env)->GetDirectBufferAddress(env, dividerBuffer)); + + return IDirect3DDevice9_GetStreamSourceFreq((IDirect3DDevice9*)iDirect3DDevice9, streamNumber, divider); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetSwapChain + * Signature: (ILorg/lwjgl/d3d/IDirect3DSwapChain9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetSwapChain + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint swapChainOrdinal, jobject swapChain) { + + IDirect3DSwapChain9 *iDirect3DSwapChain9; + + HRESULT hResult = IDirect3DDevice9_GetSwapChain((IDirect3DDevice9*)iDirect3DDevice9, swapChainOrdinal, + &iDirect3DSwapChain9); + + setPointer(env, swapChain, "setIDirect3DSwapChain9", (jlong)iDirect3DSwapChain9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetTexture + * Signature: (JLorg/lwjgl/d3d/IDirect3DBaseTexture9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetTexture + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong stage, jobject texture) { + + IDirect3DBaseTexture9 *iDirect3DBaseTexture9; + + HRESULT hResult = IDirect3DDevice9_GetTexture((IDirect3DDevice9*)iDirect3DDevice9, stage, + &iDirect3DBaseTexture9); + + setPointer(env, texture, "setIDirect3DBaseTexture9", (jlong)iDirect3DBaseTexture9); + + return hResult; +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetTextureStageState + * Signature: (JIJ)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetTextureStageState + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jlong stage, jint type, jobject valueBuffer) { + + UINT* value = (UINT*)((*env)->GetDirectBufferAddress(env, valueBuffer)); + + return IDirect3DDevice9_GetTextureStageState((IDirect3DDevice9*)iDirect3DDevice9, stage, type, value); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetTransform + * Signature: (ILorg/lwjgl/d3d/D3DMatrix;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetTransform + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jint state, jobject matrixBuffer) { + + D3DMATRIX* matrix = (D3DMATRIX*)((*env)->GetDirectBufferAddress(env, matrixBuffer)); + + return IDirect3DDevice9_GetTransform((IDirect3DDevice9*)iDirect3DDevice9, state, matrix); +} + +/* + * Class: org_lwjgl_d3d_IDirect3DDevice9 + * Method: nGetVertexDeclaration + * Signature: (Lorg/lwjgl/d3d/IDirect3DVertexDeclaration9;)J + */ +JNIEXPORT jlong JNICALL Java_org_lwjgl_d3d_IDirect3DDevice9_nGetVertexDeclaration + (JNIEnv *env, jobject object, jlong iDirect3DDevice9, jobject vertexDecleration) { + + IDirect3DVertexDeclaration9 *iDirect3DVertexDeclaration9; + + HRESULT hResult = IDirect3DDevice9_GetVertexDeclaration((IDirect3DDevice9*)iDirect3DDevice9, + &iDirect3DVertexDeclaration9); + + setPointer(env, vertexDecleration, "setIDirect3DVertexDeclaration9", (jlong)iDirect3DVertexDeclarati... [truncated message content] |