1 /*
2  * %W% %E%
3  *
4  * Copyright 2002 Sun Microsystems, Inc. All rights reserved.
5  * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
6  */
7 
8 #include <windows.h>
9 #include "dxversion.h"
10 #include <jni.h>
11 #include <dinput.h>
12 #include "net_java_games_input_IDirectInputEffect.h"
13 #include "util.h"
14 
Java_net_java_games_input_IDirectInputEffect_nRelease(JNIEnv * env,jclass unused,jlong address)15 JNIEXPORT void JNICALL Java_net_java_games_input_IDirectInputEffect_nRelease(JNIEnv *env, jclass unused, jlong address) {
16 	LPDIRECTINPUTEFFECT ppdeff = (LPDIRECTINPUTEFFECT)(INT_PTR)address;
17 
18 	IDirectInputEffect_Release(ppdeff);
19 }
20 
Java_net_java_games_input_IDirectInputEffect_nSetGain(JNIEnv * env,jclass unused,jlong address,jint gain)21 JNIEXPORT jint JNICALL Java_net_java_games_input_IDirectInputEffect_nSetGain(JNIEnv *env, jclass unused, jlong address, jint gain) {
22 	LPDIRECTINPUTEFFECT ppdeff = (LPDIRECTINPUTEFFECT)(INT_PTR)address;
23 	DIEFFECT params;
24 
25 	ZeroMemory(&params, sizeof(params));
26 	params.dwSize = sizeof(params);
27 	params.dwGain = gain;
28 
29 	return IDirectInputEffect_SetParameters(ppdeff, &params, DIEP_GAIN);
30 }
31 
Java_net_java_games_input_IDirectInputEffect_nStart(JNIEnv * env,jclass unused,jlong address,jint iterations,jint flags)32 JNIEXPORT jint JNICALL Java_net_java_games_input_IDirectInputEffect_nStart(JNIEnv *env, jclass unused, jlong address, jint iterations, jint flags) {
33 	LPDIRECTINPUTEFFECT ppdeff = (LPDIRECTINPUTEFFECT)(INT_PTR)address;
34 
35 	return IDirectInputEffect_Start(ppdeff, iterations, flags);
36 }
37 
Java_net_java_games_input_IDirectInputEffect_nStop(JNIEnv * env,jclass unused,jlong address)38 JNIEXPORT jint JNICALL Java_net_java_games_input_IDirectInputEffect_nStop(JNIEnv *env, jclass unused, jlong address) {
39 	LPDIRECTINPUTEFFECT ppdeff = (LPDIRECTINPUTEFFECT)(INT_PTR)address;
40 
41 	return IDirectInputEffect_Stop(ppdeff);
42 }
43