|
Data Structures
|
struct |
read_req_t |
|
Data read request structure. More...
|
struct |
vec2b_t |
|
Unsigned x,y byte vector. More...
|
struct |
vec3b_t |
|
Unsigned x,y,z byte vector. More...
|
struct |
vec3f_t |
|
Signed x,y,z float struct. More...
|
struct |
orient_t |
|
Orientation struct. More...
|
struct |
gforce_t |
|
Gravity force struct. More...
|
struct |
accel_t |
|
Accelerometer struct. For any device with an accelerometer. More...
|
struct |
ir_dot_t |
|
A single IR source. More...
|
struct |
ir_t |
|
IR struct. Hold all data related to the IR tracking. More...
|
struct |
joystick_t |
|
Joystick calibration structure. More...
|
struct |
nunchuk_t |
|
Nunchuk expansion device. More...
|
struct |
classic_ctrl_t |
|
Classic controller expansion device. More...
|
struct |
guitar_hero_3_t |
|
Guitar Hero 3 expansion device. More...
|
struct |
expansion_t |
|
Generic expansion device plugged into wiimote. More...
|
struct |
wiimote_state_t |
|
Significant data from the previous event. More...
|
struct |
wiimote_t |
|
Wiimote structure. More...
|
Defines
|
#define |
WCONST const |
#define |
WIIMOTE_LED_NONE 0x00 |
#define |
WIIMOTE_LED_1 0x10 |
#define |
WIIMOTE_LED_2 0x20 |
#define |
WIIMOTE_LED_3 0x40 |
#define |
WIIMOTE_LED_4 0x80 |
#define |
WIIMOTE_BUTTON_TWO 0x0001 |
#define |
WIIMOTE_BUTTON_ONE 0x0002 |
#define |
WIIMOTE_BUTTON_B 0x0004 |
#define |
WIIMOTE_BUTTON_A 0x0008 |
#define |
WIIMOTE_BUTTON_MINUS 0x0010 |
#define |
WIIMOTE_BUTTON_ZACCEL_BIT6 0x0020 |
#define |
WIIMOTE_BUTTON_ZACCEL_BIT7 0x0040 |
#define |
WIIMOTE_BUTTON_HOME 0x0080 |
#define |
WIIMOTE_BUTTON_LEFT 0x0100 |
#define |
WIIMOTE_BUTTON_RIGHT 0x0200 |
#define |
WIIMOTE_BUTTON_DOWN 0x0400 |
#define |
WIIMOTE_BUTTON_UP 0x0800 |
#define |
WIIMOTE_BUTTON_PLUS 0x1000 |
#define |
WIIMOTE_BUTTON_ZACCEL_BIT4 0x2000 |
#define |
WIIMOTE_BUTTON_ZACCEL_BIT5 0x4000 |
#define |
WIIMOTE_BUTTON_UNKNOWN 0x8000 |
#define |
WIIMOTE_BUTTON_ALL 0x1F9F |
#define |
NUNCHUK_BUTTON_Z 0x01 |
#define |
NUNCHUK_BUTTON_C 0x02 |
#define |
NUNCHUK_BUTTON_ALL 0x03 |
#define |
CLASSIC_CTRL_BUTTON_UP 0x0001 |
#define |
CLASSIC_CTRL_BUTTON_LEFT 0x0002 |
#define |
CLASSIC_CTRL_BUTTON_ZR 0x0004 |
#define |
CLASSIC_CTRL_BUTTON_X 0x0008 |
#define |
CLASSIC_CTRL_BUTTON_A 0x0010 |
#define |
CLASSIC_CTRL_BUTTON_Y 0x0020 |
#define |
CLASSIC_CTRL_BUTTON_B 0x0040 |
#define |
CLASSIC_CTRL_BUTTON_ZL 0x0080 |
#define |
CLASSIC_CTRL_BUTTON_FULL_R 0x0200 |
#define |
CLASSIC_CTRL_BUTTON_PLUS 0x0400 |
#define |
CLASSIC_CTRL_BUTTON_HOME 0x0800 |
#define |
CLASSIC_CTRL_BUTTON_MINUS 0x1000 |
#define |
CLASSIC_CTRL_BUTTON_FULL_L 0x2000 |
#define |
CLASSIC_CTRL_BUTTON_DOWN 0x4000 |
#define |
CLASSIC_CTRL_BUTTON_RIGHT 0x8000 |
#define |
CLASSIC_CTRL_BUTTON_ALL 0xFEFF |
#define |
GUITAR_HERO_3_BUTTON_STRUM_UP 0x0001 |
#define |
GUITAR_HERO_3_BUTTON_YELLOW 0x0008 |
#define |
GUITAR_HERO_3_BUTTON_GREEN 0x0010 |
#define |
GUITAR_HERO_3_BUTTON_BLUE 0x0020 |
#define |
GUITAR_HERO_3_BUTTON_RED 0x0040 |
#define |
GUITAR_HERO_3_BUTTON_ORANGE 0x0080 |
#define |
GUITAR_HERO_3_BUTTON_PLUS 0x0400 |
#define |
GUITAR_HERO_3_BUTTON_MINUS 0x1000 |
#define |
GUITAR_HERO_3_BUTTON_STRUM_DOWN 0x4000 |
#define |
GUITAR_HERO_3_BUTTON_ALL 0xFEFF |
#define |
WIIUSE_SMOOTHING 0x01 |
#define |
WIIUSE_CONTINUOUS 0x02 |
#define |
WIIUSE_ORIENT_THRESH 0x04 |
#define |
WIIUSE_INIT_FLAGS (WIIUSE_SMOOTHING | WIIUSE_ORIENT_THRESH) |
#define |
WIIUSE_ORIENT_PRECISION 100.0f |
#define |
EXP_NONE 0 |
#define |
EXP_NUNCHUK 1 |
#define |
EXP_CLASSIC 2 |
#define |
EXP_GUITAR_HERO_3 3 |
#define |
IS_PRESSED(dev, button) ((dev->btns & button) == button) |
|
Check if a button is pressed.
|
#define |
IS_HELD(dev, button) ((dev->btns_held & button) == button) |
|
Check if a button is being held.
|
#define |
IS_RELEASED(dev, button) ((dev->btns_released & button) == button) |
|
Check if a button is released on this event.
This does not mean the button is not pressed, it means
this button was just now released.
|
#define |
IS_JUST_PRESSED(dev, button) (IS_PRESSED(dev, button) && !IS_HELD(dev, button)) |
|
Check if a button has just been pressed this event.
|
#define |
WIIUSE_GET_IR_SENSITIVITY(dev, lvl) |
|
Return the IR sensitivity level.
|
#define |
WIIUSE_USING_ACC(wm) ((wm->state & 0x020) == 0x020) |
#define |
WIIUSE_USING_EXP(wm) ((wm->state & 0x040) == 0x040) |
#define |
WIIUSE_USING_IR(wm) ((wm->state & 0x080) == 0x080) |
#define |
WIIUSE_USING_SPEAKER(wm) ((wm->state & 0x100) == 0x100) |
#define |
WIIUSE_IS_LED_SET(wm, num) ((wm->leds & WIIMOTE_LED_##num) == WIIMOTE_LED_##num) |
#define |
MAX_PAYLOAD 32 |
#define |
WIIUSE_EXPORT_DECL |
#define |
WIIUSE_IMPORT_DECL |
#define |
WIIUSE_EXPORT WIIUSE_IMPORT_DECL |
Typedefs
|
typedef unsigned char |
byte |
typedef char |
sbyte |
typedef void(* |
wiiuse_read_cb )(struct wiimote_t *wm, byte *data, unsigned short len) |
|
Callback that handles a read event.
|
typedef struct wiimote_t |
wiimote |
Enumerations
|
enum |
ir_position_t { WIIUSE_IR_ABOVE, WIIUSE_IR_BELOW } |
enum |
aspect_t { WIIUSE_ASPECT_4_3, WIIUSE_ASPECT_16_9 } |
|
Screen aspect ratio.
|
enum |
win_bt_stack_t { WIIUSE_STACK_UNKNOWN, WIIUSE_STACK_MS, WIIUSE_STACK_BLUESOLEIL } |
enum |
WIIUSE_EVENT_TYPE {
WIIUSE_NONE = 0, WIIUSE_EVENT, WIIUSE_STATUS, WIIUSE_CONNECT,
WIIUSE_DISCONNECT, WIIUSE_UNEXPECTED_DISCONNECT, WIIUSE_READ_DATA, WIIUSE_NUNCHUK_INSERTED,
WIIUSE_NUNCHUK_REMOVED, WIIUSE_CLASSIC_CTRL_INSERTED, WIIUSE_CLASSIC_CTRL_REMOVED, WIIUSE_GUITAR_HERO_3_CTRL_INSERTED,
WIIUSE_GUITAR_HERO_3_CTRL_REMOVED
} |
|
Events that wiiuse can generate from a poll.
|
Functions
|
WIIUSE_EXPORT const char * |
wiiuse_version () |
WIIUSE_EXPORT struct wiimote_t ** |
wiiuse_init (int wiimotes) |
|
Initialize an array of wiimote structures.
|
WIIUSE_EXPORT void |
wiiuse_disconnected (struct wiimote_t *wm) |
|
The wiimote disconnected.
|
WIIUSE_EXPORT void |
wiiuse_cleanup (struct wiimote_t **wm, int wiimotes) |
|
Clean up wiimote_t array created by wiiuse_init().
|
WIIUSE_EXPORT void |
wiiuse_rumble (struct wiimote_t *wm, int status) |
|
Enable or disable the rumble.
|
WIIUSE_EXPORT void |
wiiuse_toggle_rumble (struct wiimote_t *wm) |
|
Toggle the state of the rumble.
|
WIIUSE_EXPORT void |
wiiuse_set_leds (struct wiimote_t *wm, int leds) |
|
Set the enabled LEDs.
|
WIIUSE_EXPORT void |
wiiuse_motion_sensing (struct wiimote_t *wm, int status) |
|
Set if the wiimote should report motion sensing.
|
WIIUSE_EXPORT int |
wiiuse_read_data (struct wiimote_t *wm, byte *buffer, unsigned int offset, unsigned short len) |
|
Read data from the wiimote (event version).
|
WIIUSE_EXPORT int |
wiiuse_write_data (struct wiimote_t *wm, unsigned int addr, byte *data, byte len) |
|
Write data to the wiimote.
|
WIIUSE_EXPORT void |
wiiuse_status (struct wiimote_t *wm) |
|
Request the wiimote controller status.
|
WIIUSE_EXPORT struct wiimote_t * |
wiiuse_get_by_id (struct wiimote_t **wm, int wiimotes, int unid) |
|
Find a wiimote_t structure by its unique identifier.
|
WIIUSE_EXPORT int |
wiiuse_set_flags (struct wiimote_t *wm, int enable, int disable) |
|
Set flags for the specified wiimote.
|
WIIUSE_EXPORT float |
wiiuse_set_smooth_alpha (struct wiimote_t *wm, float alpha) |
|
Set the wiimote smoothing alpha value.
|
WIIUSE_EXPORT void |
wiiuse_set_bluetooth_stack (struct wiimote_t **wm, int wiimotes, enum win_bt_stack_t type) |
|
Set the bluetooth stack type to use.
|
WIIUSE_EXPORT void |
wiiuse_set_orient_threshold (struct wiimote_t *wm, float threshold) |
|
Set the orientation event threshold.
|
WIIUSE_EXPORT void |
wiiuse_resync (struct wiimote_t *wm) |
|
Try to resync with the wiimote by starting a new handshake.
|
WIIUSE_EXPORT void |
wiiuse_set_timeout (struct wiimote_t **wm, int wiimotes, byte normal_timeout, byte exp_timeout) |
|
Set the normal and expansion handshake timeouts.
|
WIIUSE_EXPORT void |
wiiuse_set_accel_threshold (struct wiimote_t *wm, int threshold) |
|
Set the accelerometer event threshold.
|
WIIUSE_EXPORT int |
wiiuse_find (struct wiimote_t **wm, int max_wiimotes, int timeout) |
|
Find a wiimote or wiimotes.
|
WIIUSE_EXPORT int |
wiiuse_connect (struct wiimote_t **wm, int wiimotes) |
|
Connect to a wiimote or wiimotes once an address is known.
|
WIIUSE_EXPORT void |
wiiuse_disconnect (struct wiimote_t *wm) |
|
Disconnect a wiimote.
|
WIIUSE_EXPORT int |
wiiuse_poll (struct wiimote_t **wm, int wiimotes) |
|
Poll the wiimotes for any events.
|
WIIUSE_EXPORT void |
wiiuse_set_ir (struct wiimote_t *wm, int status) |
|
Set if the wiimote should track IR targets.
|
WIIUSE_EXPORT void |
wiiuse_set_ir_vres (struct wiimote_t *wm, unsigned int x, unsigned int y) |
|
Set the virtual screen resolution for IR tracking.
|
WIIUSE_EXPORT void |
wiiuse_set_ir_position (struct wiimote_t *wm, enum ir_position_t pos) |
|
Set the XY position for the IR cursor.
|
WIIUSE_EXPORT void |
wiiuse_set_aspect_ratio (struct wiimote_t *wm, enum aspect_t aspect) |
|
Set the aspect ratio of the TV/monitor.
|
WIIUSE_EXPORT void |
wiiuse_set_ir_sensitivity (struct wiimote_t *wm, int level) |
|
Set the IR sensitivity.
|
WIIUSE_EXPORT void |
wiiuse_set_nunchuk_orient_threshold (struct wiimote_t *wm, float threshold) |
|
Set the orientation event threshold for the nunchuk.
|
WIIUSE_EXPORT void |
wiiuse_set_nunchuk_accel_threshold (struct wiimote_t *wm, int threshold) |
|
Set the accelerometer event threshold for the nunchuk.
|
If this file is included from inside the wiiuse source and not from a third party program, then wiimote_internal.h is also included which extends this file.