00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 enum speaker_freq
00013 {
00014
00015 FREQ_NONE = 0,
00016
00017
00018 FREQ_4200HZ = 1,
00019 FREQ_3920HZ = 2,
00020 FREQ_3640HZ = 3,
00021 FREQ_3360HZ = 4,
00022
00023
00024 FREQ_3130HZ = 5,
00025 FREQ_2940HZ = 6,
00026 FREQ_2760HZ = 7,
00027 FREQ_2610HZ = 8,
00028 FREQ_2470HZ = 9,
00029 };
00030
00031
00032 struct wiimote_sample
00033 {
00034 wiimote_sample() : samples(NULL), length(0), freq(FREQ_NONE) {}
00035 BYTE* samples;
00036 DWORD length;
00037 speaker_freq freq;
00038 };
00039
00040
00041 enum state_change_flags
00042 {
00043
00044 NO_CHANGE = 0,
00045
00046
00047 CONNECTED = 1<<0,
00048 CONNECTION_LOST = 1<<1,
00049 BATTERY_CHANGED = 1<<2,
00050 BATTERY_DRAINED = 1<<3,
00051 LEDS_CHANGED = 1<<4,
00052 BUTTONS_CHANGED = 1<<5,
00053 ACCEL_CHANGED = 1<<6,
00054 ORIENTATION_CHANGED = 1<<7,
00055 IR_CHANGED = 1<<8,
00056
00057 WIIMOTE_CHANGED = CONNECTION_LOST|BATTERY_CHANGED|BATTERY_DRAINED|
00058 LEDS_CHANGED|BUTTONS_CHANGED|ACCEL_CHANGED|
00059 ORIENTATION_CHANGED|IR_CHANGED,
00060
00061
00062 NUNCHUK_CONNECTED = 1<<9,
00063 NUNCHUK_BUTTONS_CHANGED = 1<<10,
00064 NUNCHUK_ACCEL_CHANGED = 1<<11,
00065 NUNCHUK_ORIENTATION_CHANGED = 1<<12,
00066 NUNCHUK_JOYSTICK_CHANGED = 1<<13,
00067
00068 NUNCHUK_CHANGED = NUNCHUK_CONNECTED|NUNCHUK_BUTTONS_CHANGED|
00069 NUNCHUK_ACCEL_CHANGED|NUNCHUK_ORIENTATION_CHANGED|
00070 NUNCHUK_JOYSTICK_CHANGED,
00071
00072 CLASSIC_CONNECTED = 1<<14,
00073 CLASSIC_BUTTONS_CHANGED = 1<<15,
00074 CLASSIC_JOYSTICK_L_CHANGED = 1<<16,
00075 CLASSIC_JOYSTICK_R_CHANGED = 1<<17,
00076 CLASSIC_TRIGGERS_CHANGED = 1<<18,
00077
00078 CLASSIC_CHANGED = CLASSIC_CONNECTED|CLASSIC_BUTTONS_CHANGED|
00079 CLASSIC_JOYSTICK_L_CHANGED|
00080 CLASSIC_JOYSTICK_R_CHANGED|
00081 CLASSIC_TRIGGERS_CHANGED,
00082
00083 BALANCE_CONNECTED = 1<<19,
00084 BALANCE_WEIGHT_CHANGED = 1<<20,
00085
00086 BALANCE_CHANGED = BALANCE_CONNECTED|BALANCE_WEIGHT_CHANGED,
00087
00088
00089 MOTIONPLUS_DETECTED = 1<<21,
00090 MOTIONPLUS_ENABLED = 1<<22,
00091 MOTIONPLUS_SPEED_CHANGED = 1<<23,
00092 MOTIONPLUS_EXTENSION_CONNECTED = 1<<24,
00093
00094 MOTIONPLUS_EXTENSION_DISCONNECTED = 1<<25,
00095
00096 MOTIONPLUS_CHANGED = MOTIONPLUS_DETECTED|MOTIONPLUS_ENABLED|
00097 MOTIONPLUS_SPEED_CHANGED|
00098 MOTIONPLUS_EXTENSION_CONNECTED|
00099 MOTIONPLUS_EXTENSION_DISCONNECTED,
00100
00101 EXTENSION_DISCONNECTED = 1<<26,
00102 EXTENSION_PARTIALLY_INSERTED = 1<<27,
00103 EXTENSION_CONNECTED = NUNCHUK_CONNECTED|CLASSIC_CONNECTED|
00104 BALANCE_CONNECTED|MOTIONPLUS_ENABLED,
00105 EXTENSION_CHANGED = EXTENSION_DISCONNECTED|NUNCHUK_CHANGED|
00106 CLASSIC_CHANGED|BALANCE_CHANGED|MOTIONPLUS_CHANGED,
00107
00108 CHANGED_ALL = WIIMOTE_CHANGED|EXTENSION_CHANGED,
00109 };