src/haptic/SDL_syshaptic.h
branchgsoc2008_force_feedback
changeset 2491 10bc7aaf5114
parent 2488 8e2bdbccf7ff
child 2495 66c02abeef0e
--- 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);