#include <revolution/kpad.h>
typedef struct KPADUnifiedWpadStatus {
union {
WPADStatus core;
WPADFSStatus fs;
WPADCLStatus cl;
WPADTRStatus tr;
WPADBLStatus bl;
} u;
u8 fmt;
u8 padding;
} KPADUnifiedWpadStatus;
void KPADGetUnifiedWpadStatus( s32 chan, KPADUnifiedWpadStatus *dst, u32 count );
| chan | One of the WPAD_CHANn values. |
|---|---|
| dst | Pointer to the buffer that stores the controller data. |
| count | Number of stored data. This value cannot exceed KPAD_RING_BUFS. |
None.
To the application-created buffer, copies the controller data stored in the internal buffer by the KPAD library.
Regardless of the number of sampling-completed data in the KPAD library, the number of stored data will always be specified by count. The top most element will be the newest sampling data.
Note:This function will not decrement the "number of sampling-completed data" counter in the KPAD library. KPADRead function decrements the counter to prevent repeat use of data already processed.
Using the KPADRead function return value immediately preceding this will give a number close to the actual sampling-completed data count. However, a controller data sampling (interrupt) may occur after the KPADRead function call. To use the exact same number of data or to obtain the same data processed by the immediately preceding KPADRead function, KPADRead and this function need to be called in interrupt-prohibited state.
The application should reference the copied data through the following method. For error status and controller type definitions, see the description of the WPADStatus structure.
WPAD_ERR_NONE, a sampling-completed data is stored in the u member. Even if the value is not WPAD_ERR_NONE, some of the data may be properly sampled.
WPADGetDataFormat function's return value at sampling is stored in a u8 type.
KPADUnifiedWpadStatus, KPADRead, WPADStatus
2008/04/30 Updated the structure declarations.
2006/10/25 Initial version.
CONFIDENTIAL