WM_StepDataSharing

C Specification

#include <nitro/wm.h>

WMErrCode WM_StepDataSharing(
WMDataSharingInfo*  dsInfo ,
const u16*      sendData,
WMDataSet*          receiveData
);

Arguments

dsInfo Specifies the pointer to the data sharing information structure. Specify the structure using the WM_StartDataSharing function.
sendData Pointer to the send data. The data length is the fixed share data length that is specified by WM_StartDataSharing.
receiveData Pointer to the buffer receiving the shared data.

Return Values

Returns the results of the WMErrCode enumerated type process.

Description

Advances data sharing synchronization by one This function can be executed when data sharing is opened by the WM_StartDataSharing function. This is a synchronous function that immediately returns WM_ERRCODE_SUCCESS when the process succeeds. This function returns WM_ERRCODE_NO_DATASET when synchronization is delayed because another terminal in the data share group did not call this function. If a recoverable error was generated during communication, WM_StepDataSharing continues to return WM_ERRCODE_FAILED. Use WM_GetSharedDataAddress when you check the data of each terminal from the received data structure. By specifying different dsInfo arguments, data sharing can be performed with multiple groups. In such cases, you must call the function for each group and step the synchronization separately.

To make the data sharing stable, you must call this API as soon as possible after V-blank.

In the current implementation, the frame offset is corrected automatically only when data sharing is executed in every frame or every other frame. When you call this function at intervals of three or more frames, data sharing can be executed but the frame offset caused by some children in a shared period not being detected.

See Also

WM_StartDataSharing, WM_EndDataSharing, WM_GetSharedDataAddress

Revision History

10/22/2004 Changed return value type
09/25/2004 Added descriptions
09/21/2004 Deleted cautions because some restrictions were eliminated
08/11/2004 Initial version