# HG changeset patch # User Edgar Simo # Date 1214994395 0 # Node ID 10bc7aaf5114a5d90e9e661a24380e6ed8a0aae8 # Parent be9b206d44afb0770f8ed60ca7603c852e66181c Commented SDL_syshaptic.h. Removed SDL_haptic_c.h (no private functions). Fixed bug with SDL_HapticFromJoystick(). diff -r be9b206d44af -r 10bc7aaf5114 src/haptic/SDL_haptic.c --- a/src/haptic/SDL_haptic.c Wed Jul 02 09:52:44 2008 +0000 +++ b/src/haptic/SDL_haptic.c Wed Jul 02 10:26:35 2008 +0000 @@ -21,7 +21,6 @@ */ #include "SDL_config.h" -#include "SDL_haptic_c.h" #include "SDL_syshaptic.h" #include "../joystick/SDL_joystick_c.h" /* For SDL_PrivateJoystickValid */ @@ -173,7 +172,7 @@ /* Check to see if joystick's haptic is already open */ for (i=0; SDL_haptics[i]; i++) { - if (SDL_SYS_JoystickSameHaptic(&SDL_haptics[i],joystick)) { + if (SDL_SYS_JoystickSameHaptic(SDL_haptics[i],joystick)) { haptic = SDL_haptics[i]; ++haptic->ref_count; return haptic; diff -r be9b206d44af -r 10bc7aaf5114 src/haptic/SDL_haptic_c.h --- a/src/haptic/SDL_haptic_c.h Wed Jul 02 09:52:44 2008 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -/* - SDL - Simple DirectMedia Layer - Copyright (C) 2008 Edgar Simo - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - - Sam Lantinga - slouken@libsdl.org -*/ - -#include "SDL_haptic.h" - -struct _SDL_Haptic; - -extern int SDL_HapticInit(void); -extern int SDL_NumHaptics(void); -extern const char * SDL_HapticName(int device_index); -extern struct _SDL_Haptic * SDL_HapticOpen(int device_index); -extern int SDL_HapticOpened(int device_index); -extern int SDL_HapticIndex(SDL_Haptic * haptic); -extern void SDL_HapticClose(SDL_Haptic * haptic); -extern void SDL_HapticQuit(void); diff -r be9b206d44af -r 10bc7aaf5114 src/haptic/SDL_syshaptic.h --- a/src/haptic/SDL_syshaptic.h Wed Jul 02 09:52:44 2008 +0000 +++ b/src/haptic/SDL_syshaptic.h Wed Jul 02 10:26:35 2008 +0000 @@ -47,22 +47,116 @@ int ref_count; /* Count for multiple opens */ }; +/* + * Scans the system for haptic devices. + * + * Returns 0 on success, -1 on error. + */ extern int SDL_SYS_HapticInit(void); + +/* + * Gets the device dependent name of the haptic device + */ extern const char * SDL_SYS_HapticName(int index); + +/* + * Opens the haptic device for usage. The haptic device should have + * the index value set previously. + * + * Returns 0 on success, -1 on error. + */ extern int SDL_SYS_HapticOpen(SDL_Haptic * haptic); + +/* + * Checks to see if the joystick has haptic capabilities. + * + * Returns >0 if haptic capabilities are detected, 0 if haptic + * capabilities aren't detected and -1 on error. + */ +extern int SDL_JoystickIsHaptic(SDL_Joystick * joystick); + +/* + * Opens the haptic device for usage using the same device as + * the joystick. + * + * Returns 0 on success, -1 on error. + */ +extern int SDL_SYS_HapticOpenFromJoystick(SDL_Haptic * haptic, + SDL_Joystick * joystick); + +/* + * Checks to see if haptic device and joystick device are the same. + * + * Returns 1 if they are the same, 0 if they aren't. + */ +extern int SDL_SYS_JoystickSameHaptic(SDL_Haptic * haptic, + SDL_Joystick * joystick); + +/* + * Closes a haptic device after usage. + */ extern void SDL_SYS_HapticClose(SDL_Haptic * haptic); + +/* + * Performs a cleanup on the haptic subsystem. + */ extern void SDL_SYS_HapticQuit(void); + +/* + * Creates a new haptic effect on the haptic device using base + * as a template for the effect. + * + * Returns 0 on success, -1 on error. + */ extern int SDL_SYS_HapticNewEffect(SDL_Haptic * haptic, - struct haptic_effect * effect, SDL_HapticEffect * base); + struct haptic_effect * effect, + SDL_HapticEffect * base); + +/* + * Updates the haptic effect on the haptic device using data + * as a template. + * + * Returns 0 on success, -1 on error. + */ extern int SDL_SYS_HapticUpdateEffect(SDL_Haptic * haptic, - struct haptic_effect * effect, SDL_HapticEffect * data); + struct haptic_effect * effect, + SDL_HapticEffect * data); + +/* + * Runs the effect on the haptic device. + * + * Returns 0 on success, -1 on error. + */ extern int SDL_SYS_HapticRunEffect(SDL_Haptic * haptic, - struct haptic_effect * effect); + struct haptic_effect * effect); + +/* + * Stops the effect on the haptic device. + * + * Returns 0 on success, -1 on error. + */ extern int SDL_SYS_HapticStopEffect(SDL_Haptic * haptic, - struct haptic_effect * effect); + struct haptic_effect * effect); + +/* + * Cleanups up the effect on the haptic device. + */ extern void SDL_SYS_HapticDestroyEffect(SDL_Haptic * haptic, - struct haptic_effect * effect); + struct haptic_effect * effect); + +/* + * Sets the global gain of the haptic device. + * + * Returns 0 on success, -1 on error. + */ extern int SDL_SYS_HapticSetGain(SDL_Haptic * haptic, int gain); -extern int SDL_SYS_HapticSetAutocenter(SDL_Haptic * haptic, int autocenter); + +/* + * Sets the autocenter feature of the haptic device. + * + * Returns 0 on success, -1 on error. + */ +extern int SDL_SYS_HapticSetAutocenter(SDL_Haptic * haptic, + int autocenter); diff -r be9b206d44af -r 10bc7aaf5114 src/haptic/linux/SDL_syshaptic.c --- a/src/haptic/linux/SDL_syshaptic.c Wed Jul 02 09:52:44 2008 +0000 +++ b/src/haptic/linux/SDL_syshaptic.c Wed Jul 02 10:26:35 2008 +0000 @@ -24,7 +24,6 @@ #ifdef SDL_JOYSTICK_LINUX #include "SDL_haptic.h" -#include "../SDL_haptic_c.h" #include "../SDL_syshaptic.h" #include "SDL_joystick.h" #include "../../joystick/SDL_sysjoystick.h" /* For the real SDL_Joystick */