SAVEOpenFileOtherDemoApplicationVariation / SAVEOpenFileOtherDemoApplicationVariationAsync

Syntax

#include <nn/save.h>

FSStatus            SAVEOpenFileOtherDemoApplicationVariation(
                        FSClient                *client,
                        FSCmdBlock              *block,
                        u32                     uniqueId,
                        u8                      variation,
                        u8                      accountSlotNo,
                        const char              *path,
                        const char              *mode,
                        FSFileHandle            *fileHandle,
                        FSRetFlag               errHandling
                        );
FSStatus            SAVEOpenFileOtherDemoApplicationVariationAsync(
                        FSClient                *client,
                        FSCmdBlock              *block,
                        u32                     uniqueId,
                        u8                      variation,
                        u8                      accountSlotNo,
                        const char              *path,
                        const char              *mode,
                        FSFileHandle            *fileHandle,
                        FSRetFlag               errHandling,
                        const FSAsyncParams     *asyncParams
                        );

Parameters

client Pointer to the client buffer.
block Command block.
uniqueId The unique ID of the target.
variation The variation of the target.
accountSlotNo The user account slot number.
path Path that specifies the quota. The relative path for the save directory for the specified user account. The length must be less than FS_MAX_ARGPATH_SIZE.
mode Short string parameter that specifies the access mode. The length must be less than FS_MAX_MODE_SIZE. The following values can be specified in the parameters:
"r": Open a file for reading. This file must exist.
fileHandle Pointer to the handle of the file stream associated with the file to open.
errHandling Automatic error handling flag. Only the indicated error is returned.
asyncParams (Async API only) Notification parameters for an asynchronous call.

Return Values

Synchronous API: Return Value; Asynchronous API: Callback Return Value

FS_STATUS_OK Successfully completed.
FS_STATUS_CANCELED The command was canceled.
FS_STATUS_MAX System has too many file points to create more.
FS_STATUS_ALREADY_OPEN The file is already open.
You are trying to open the file illegally.
FS_STATUS_NOT_FOUND Target not found.
or
The specified user account does not exist on this Wii U console.
FS_STATUS_NOT_FILE Specified path is not a file.
FS_STATUS_ACCESS_ERROR Access mode is invalid (e.g. specified "r+" for read-only media).
FS_STATUS_PERMISSION_ERROR The caller does not have correct access permission.
FS_STATUS_JOURNAL_FULL Journaling space is full and new journaling block cannot be allocated.
FS_STATUS_STORAGE_FULL Data space cannot be allocated.
FS_STATUS_MEDIA_NOT_READY (Only for manually mounted devices) Media is not present.
FS_STATUS_MEDIA_ERROR (Only for manually mounted devices) Media is in some inaccessible condition.
FS_STATUS_DATA_CORRUPTED (Only for manually mounted devices) The data is corrupted beyond repair. The volume needs format.
FS_STATUS_WRITE_PROTECTED (Only for manually mounted devices) Media is write protected.

Async API: Immediate Return Values

FS_STATUS_OK Successfully issued the request.
FS_STATUS_NOT_FOUND The specified user account does not exist on this Wii U console.
FS_STATUS_FATAL_ERROR The argument is invalid.
FS_STATUS_PERMISSION_ERROR The caller does not have the correct access permissions.

Description

Opens the save data file of other demo application specified in uniqueId, variation and path and creates the file stream associated with that file. The position of the file stream is set to the beginning. mode is a short string parameter to specify the access mode.

Both the sync and the async style API functions are provided. To use the async API functions, set the user callback and parameters in asyncParams. For more information, see FSAsyncParams.

The generated file handle is stored in fileHandle when completed.

The generated file handle is a positive value (>0) if the function succeeds. Otherwise, the handle value is FS_INVALID_HANDLE_VALUE. The invalid handle value is not necessary to close.

If you plan to run an application that uses these functions in an environment with a USB drive connected, the USB drive must be connected when you start the application and create the save data. If you plan to run the application in an environment without a USB drive connected, the USB drive must be disconnected when you start the application and create the save data.

If you prepare save data using the Save Data Manager menu item in the System Config Tool, note that this function can only access save data that exists in NAND and USB storage, not on the host PC. Also note that to access save data in NAND, the application that uses these functions needs to be launched using either cafediscrun or caferun in an environment that is not connected to a USB drive.

Do Not Call From

SAVEOpenFileOtherDemoApplicationVariation

None.

SAVEOpenFileOtherDemoApplicationVariationAsync

None.

See Also

File/Directory operations
FSReadFile
FSWriteFile
FSCloseFile

Revision History

2014/10/22 Revised the return values.
2014/06/04 Initial version.


CONFIDENTIAL