zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
SDL_sysjoystick.c File Reference
#include <pspctrl.h>
#include <pspkernel.h>
#include <stdio.h>
#include <stdlib.h>
#include "../SDL_sysjoystick.h"
#include "../SDL_joystick_c.h"
#include "SDL_events.h"
#include "SDL_error.h"
#include "SDL_thread.h"
#include "SDL_mutex.h"
#include "SDL_timer.h"

Go to the source code of this file.

Functions

static int calc_bezier_y (float t)
 
int JoystickUpdate (void *data)
 
static __inline__ void lerp (point *dest, point *a, point *b, float t)
 
SDL_JoystickID SDL_SYS_GetInstanceIdOfDeviceIndex (int device_index)
 
SDL_bool SDL_SYS_JoystickAttached (SDL_Joystick *joystick)
 
void SDL_SYS_JoystickClose (SDL_Joystick *joystick)
 
void SDL_SYS_JoystickDetect ()
 
SDL_JoystickGUID SDL_SYS_JoystickGetDeviceGUID (int device_index)
 
SDL_JoystickGUID SDL_SYS_JoystickGetGUID (SDL_Joystick *joystick)
 
int SDL_SYS_JoystickInit (void)
 
const char * SDL_SYS_JoystickName (int index)
 
const char * SDL_SYS_JoystickNameForDeviceIndex (int device_index)
 
SDL_bool SDL_SYS_JoystickNeedsPolling ()
 
int SDL_SYS_JoystickOpen (SDL_Joystick *joystick, int device_index)
 
void SDL_SYS_JoystickQuit (void)
 
void SDL_SYS_JoystickUpdate (SDL_Joystick *joystick)
 
int SDL_SYS_NumJoysticks ()
 

Variables

static point a = { 0, 0 }
 
static int analog_map [256]
 
static point b = { 50, 0 }
 
static enum PspCtrlButtons button_map []
 
static point c = { 78, 32767 }
 
static point d = { 128, 32767 }
 
static SceCtrlData pad = { .Lx = 0, .Ly = 0, .Buttons = 0 }
 
static SDL_sempad_sem = NULL
 
static int running = 0
 
static SDL_Threadthread = NULL
 

Function Documentation

static int calc_bezier_y ( float  t)
static

Definition at line 70 of file SDL_sysjoystick.c.

References d, and lerp().

Referenced by SDL_SYS_JoystickInit().

int JoystickUpdate ( void data)

Definition at line 85 of file SDL_sysjoystick.c.

References pad, pad_sem, running, SDL_SemPost(), and SDL_SemWait().

Referenced by SDL_SYS_JoystickInit().

static __inline__ void lerp ( point *  dest,
point *  a,
point *  b,
float  t 
)
static

Definition at line 63 of file SDL_sysjoystick.c.

Referenced by calc_bezier_y().

SDL_JoystickID SDL_SYS_GetInstanceIdOfDeviceIndex ( int  device_index)

Definition at line 156 of file SDL_sysjoystick.c.

SDL_bool SDL_SYS_JoystickAttached ( SDL_Joystick joystick)

Definition at line 186 of file SDL_sysjoystick.c.

References SDL_TRUE.

void SDL_SYS_JoystickClose ( SDL_Joystick joystick)
void SDL_SYS_JoystickDetect ( )

Definition at line 140 of file SDL_sysjoystick.c.

SDL_JoystickGUID SDL_SYS_JoystickGetDeviceGUID ( int  device_index)
SDL_JoystickGUID SDL_SYS_JoystickGetGUID ( SDL_Joystick joystick)

Definition at line 263 of file SDL_sysjoystick.c.

References _SDL_Joystick::name, SDL_memcpy(), SDL_min, SDL_strlen(), and SDL_zero.

int SDL_SYS_JoystickInit ( void  )
const char* SDL_SYS_JoystickName ( int  index)

Definition at line 162 of file SDL_sysjoystick.c.

References NULL, and SDL_SetError().

const char* SDL_SYS_JoystickNameForDeviceIndex ( int  device_index)

Definition at line 150 of file SDL_sysjoystick.c.

References accelerometerName.

SDL_bool SDL_SYS_JoystickNeedsPolling ( )

Definition at line 144 of file SDL_sysjoystick.c.

References SDL_FALSE.

void SDL_SYS_JoystickQuit ( void  )

Definition at line 245 of file SDL_sysjoystick.c.

References NULL, pad_sem, running, SDL_DestroySemaphore(), and SDL_WaitThread().

int SDL_SYS_NumJoysticks ( )

Definition at line 135 of file SDL_sysjoystick.c.

Variable Documentation

point a = { 0, 0 }
static

Definition at line 57 of file SDL_sysjoystick.c.

int analog_map[256]
static

Definition at line 48 of file SDL_sysjoystick.c.

Referenced by SDL_SYS_JoystickInit(), and SDL_SYS_JoystickUpdate().

point b = { 50, 0 }
static

Definition at line 58 of file SDL_sysjoystick.c.

enum PspCtrlButtons button_map[]
static
Initial value:
= {
PSP_CTRL_TRIANGLE, PSP_CTRL_CIRCLE, PSP_CTRL_CROSS, PSP_CTRL_SQUARE,
PSP_CTRL_LTRIGGER, PSP_CTRL_RTRIGGER,
PSP_CTRL_DOWN, PSP_CTRL_LEFT, PSP_CTRL_UP, PSP_CTRL_RIGHT,
PSP_CTRL_SELECT, PSP_CTRL_START, PSP_CTRL_HOME, PSP_CTRL_HOLD }

Definition at line 43 of file SDL_sysjoystick.c.

Referenced by SDL_SYS_JoystickUpdate().

point c = { 78, 32767 }
static

Definition at line 59 of file SDL_sysjoystick.c.

point d = { 128, 32767 }
static

Definition at line 60 of file SDL_sysjoystick.c.

Referenced by calc_bezier_y().

SceCtrlData pad = { .Lx = 0, .Ly = 0, .Buttons = 0 }
static
SDL_sem* pad_sem = NULL
static
int running = 0
static

Definition at line 42 of file SDL_sysjoystick.c.

Referenced by JoystickUpdate(), SDL_SYS_JoystickInit(), and SDL_SYS_JoystickQuit().