/*---------------------------------------------------------------------------* Copyright (C)2012 Nintendo. All rights reserved. These coded instructions, statements, and computer programs contain proprietary information of Nintendo of America Inc. and/or Nintendo Company Ltd., and are protected by Federal copyright law. They may not be disclosed to third parties or copied or duplicated in any form, in whole or in part, without the prior written consent of Nintendo. *---------------------------------------------------------------------------*/ #ifndef NN_SAVE_SAVE_API_H_ #define NN_SAVE_SAVE_API_H_ #include #include #ifdef __cplusplus extern "C" { #endif /*---------------------------------------------------------------------------* Name: SAVEInit Description: Init SAVE lib This function calls FSInit inside. Therefore, please call it following FSInit. Returns: Result code : SAVE_STATUS_OK SAVE_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ SAVEStatus SAVEInit(void); /*---------------------------------------------------------------------------* Name: SAVEShutdown Description: Shutdown SAVE lib This function calls FSShutdown inside. Therefore, please call FSShutdown following this function. *---------------------------------------------------------------------------*/ void SAVEShutdown(void); /*---------------------------------------------------------------------------* Name: SAVEInitSaveDir Description: Set up save directory Arguments: accountSlotNo user account slot number Returns: Result code : SAVE_STATUS_OK SAVE_STATUS_NOT_FOUND SAVE_STATUS_STORAGE_FULL (SAVE_STATUS_DEVICE_FULL) SAVE_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ SAVEStatus SAVEInitSaveDir(u8 accountSlotNo); /*---------------------------------------------------------------------------* Name: SAVEChangeDir(Async) Description: Change directory Arguments: client Pointer to client buffer block Command block accountSlotNo user account slot number path Directory path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. Returns: Result code : FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_CANCELED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEChangeDir( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSRetFlag errHandling ); FSStatus SAVEChangeDirAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenFile(Async) Description: Open file Arguments: client Pointer to client buffer block Command block accountSlotNo user account slot number path File path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. mode Access mode fileHandle Pointer to the handle of file stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_ALREADY_OPEN FS_STATUS_NOT_FOUND FS_STATUS_NOT_FILE FS_STATUS_ACCESS_ERROR FS_STATUS_PERMISSION_ERROR FS_STATUS_JOURNAL_FULL FS_STATUS_STORAGE_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenFile( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling ); FSStatus SAVEOpenFileAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenFileOtherApplication(Async) Description: Open file of other application. Arguments: client Pointer to client buffer block Command block titleId target titleId. accountSlotNo user account slot number path File path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. mode Access mode.(only "r") fileHandle Pointer to the handle of file stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_ALREADY_OPEN FS_STATUS_NOT_FOUND FS_STATUS_NOT_FILE FS_STATUS_ACCESS_ERROR FS_STATUS_PERMISSION_ERROR FS_STATUS_JOURNAL_FULL FS_STATUS_STORAGE_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenFileOtherApplication( FSClient *client, FSCmdBlock *block, u64 titleId, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling ); FSStatus SAVEOpenFileOtherApplicationAsync( FSClient *client, FSCmdBlock *block, u64 titleId, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenFileOtherNormalApplication(Async) Description: Open file of other normal application. Target title variation is 0x00. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. accountSlotNo user account slot number path File path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. mode Access mode.(only "r") fileHandle Pointer to the handle of file stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_ALREADY_OPEN FS_STATUS_NOT_FOUND FS_STATUS_NOT_FILE FS_STATUS_ACCESS_ERROR FS_STATUS_PERMISSION_ERROR FS_STATUS_JOURNAL_FULL FS_STATUS_STORAGE_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenFileOtherNormalApplication( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling ); FSStatus SAVEOpenFileOtherNormalApplicationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenFileOtherNormalApplicationVariation(Async) Description: Open file of other normal application. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. variation target title variation. accountSlotNo user account slot number path File path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. mode Access mode.(only "r") fileHandle Pointer to the handle of file stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_ALREADY_OPEN FS_STATUS_NOT_FOUND FS_STATUS_NOT_FILE FS_STATUS_ACCESS_ERROR FS_STATUS_PERMISSION_ERROR FS_STATUS_JOURNAL_FULL FS_STATUS_STORAGE_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenFileOtherNormalApplicationVariation( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling ); FSStatus SAVEOpenFileOtherNormalApplicationVariationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenFileOtherDemoApplication(Async) Description: Open file of other demo application. Target title variation is 0x00. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. accountSlotNo user account slot number path File path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. mode Access mode.(only "r") fileHandle Pointer to the handle of file stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_ALREADY_OPEN FS_STATUS_NOT_FOUND FS_STATUS_NOT_FILE FS_STATUS_ACCESS_ERROR FS_STATUS_PERMISSION_ERROR FS_STATUS_JOURNAL_FULL FS_STATUS_STORAGE_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenFileOtherDemoApplication( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling ); FSStatus SAVEOpenFileOtherDemoApplicationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, const char *mode, FSFileHandle *fileHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenFileOtherDemoApplicationVariation(Async) Description: Open file of other demo application. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. variation target title variation. accountSlotNo user account slot number path File path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. mode Access mode.(only "r") fileHandle Pointer to the handle of file stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_ALREADY_OPEN FS_STATUS_NOT_FOUND FS_STATUS_NOT_FILE FS_STATUS_ACCESS_ERROR FS_STATUS_PERMISSION_ERROR FS_STATUS_JOURNAL_FULL FS_STATUS_STORAGE_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ 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 ); /*---------------------------------------------------------------------------* Name: SAVEOpenDir(Async) Description: Open save directory and creates directory stream Arguments: client Pointer to client buffer block Command block path Directory path. Length must be less than SAVE_MAX_ARGPATH_SIZE. pDirHandle Pointer to the handle of directory stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_NOT_FOUND FS_STATUS_NOT_DIR FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenDir( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling ); FSStatus SAVEOpenDirAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenDirOtherApplication(Async) Description: Open save directory of other application and creates directory stream Arguments: client Pointer to client buffer block Command block titleId target titleId. path Directory path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. pDirHandle Pointer to the handle of directory stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_NOT_FOUND FS_STATUS_NOT_DIR FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenDirOtherApplication( FSClient *client, FSCmdBlock *block, u64 titleId, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling ); FSStatus SAVEOpenDirOtherApplicationAsync( FSClient *client, FSCmdBlock *block, u64 titleId, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenDirOtherNormalApplication(Async) Description: Open save directory of other normal application and creates directory stream. Target title variation is 0x00. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. path Directory path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. pDirHandle Pointer to the handle of directory stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_NOT_FOUND FS_STATUS_NOT_DIR FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenDirOtherNormalApplication( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling ); FSStatus SAVEOpenDirOtherNormalApplicationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenDirOtherNormalApplicationVariation(Async) Description: Open save directory of other normal application and creates directory stream. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. variation target title variation. path Directory path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. pDirHandle Pointer to the handle of directory stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_NOT_FOUND FS_STATUS_NOT_DIR FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenDirOtherNormalApplicationVariation( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling ); FSStatus SAVEOpenDirOtherNormalApplicationVariationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenDirOtherDemoApplication(Async) Description: Open save directory of other demo application and creates directory stream. Target title variation is 0x00. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. path Directory path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. pDirHandle Pointer to the handle of directory stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_NOT_FOUND FS_STATUS_NOT_DIR FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenDirOtherDemoApplication( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling ); FSStatus SAVEOpenDirOtherDemoApplicationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEOpenDirOtherDemoApplicationVariation(Async) Description: Open save directory of other demo application and creates directory stream. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. variation target title variation. path Directory path relative to save directory of the specified user account. Length must be less than SAVE_MAX_ARGPATH_SIZE. pDirHandle Pointer to the handle of directory stream Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_MAX FS_STATUS_NOT_FOUND FS_STATUS_NOT_DIR FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEOpenDirOtherDemoApplicationVariation( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling ); FSStatus SAVEOpenDirOtherDemoApplicationVariationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, FSDirHandle *dirHandle, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEMakeDir(Async) Description: Create directory. Arguments: client Pointer to client buffer block Command block path Directory path relative to save directory of the specified user account. Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_NOT_DIR FS_STATUS_PERMISSION_ERROR FS_STATUS_ALREADY_OPEN FS_STATUS_EXISTS FS_STATUS_UNSUPPORTED_CMD FS_STATUS_STORAGE_FULL FS_STATUS_JOURNAL_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEMakeDir( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSRetFlag errHandling ); FSStatus SAVEMakeDirAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVERemove(Async) Description: Remove entry. Arguments: client Pointer to client buffer block Command block path Entry path relative to save directory of the specified user account. Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_EXISTS FS_STATUS_NOT_FOUND FS_STATUS_ACCESS_ERROR FS_STATUS_PERMISSION_ERROR FS_STATUS_ALREADY_OPEN FS_STATUS_UNSUPPORTED_CMD FS_STATUS_STORAGE_FULL FS_STATUS_JOURNAL_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVERemove( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSRetFlag errHandling ); FSStatus SAVERemoveAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVERename(Async) Description: Rename entry. Arguments: client Pointer to client buffer block Command block oldPath Old entry path, relative to save directory of the specified user account. newPath New entry path, relative to save directory of the specified user account. Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_EXISTS FS_STATUS_ALREADY_OPEN FS_STATUS_UNSUPPORTED_CMD FS_STATUS_STORAGE_FULL FS_STATUS_JOURNAL_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVERename( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *oldPath, const char *newPath, FSRetFlag errHandling ); FSStatus SAVERenameAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *oldPath, const char *newPath, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEFlushQuota(Async) Description: Flush quota It is for only for file systems supporting journaling feature. The other file systems are return FS_STATUS_OK. Arguments: client Pointer to client buffer block Command block Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_UNSUPPORTED_CMD FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEFlushQuota( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, FSRetFlag errHandling ); FSStatus SAVEFlushQuotaAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVERollbackQuota(Async) Description: Rollback quota It is for only for file systems supporting journaling feature. The other file systems are return FS_STATUS_UNSUPPORTED_CMD. Arguments: client Pointer to client buffer block Command block path Rollback quota path Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_ALREADY_OPEN FS_STATUS_UNSUPPORTED_CMD FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_WRITE_PROTECTED (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVERollbackQuota( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, FSRetFlag errHandling ); FSStatus SAVERollbackQuotaAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEGetStat(Async) Description: Get entry status Arguments: client Pointer to client buffer block Command block path Entry path, relative to save directory of the specified user account returnedStat Entry status Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_FATAL_ERROR (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEGetStat( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling ); FSStatus SAVEGetStatAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEGetStatOtherApplication(Async) Description: Get entry status of other application. Arguments: client Pointer to client buffer block Command block titleId target titleId. path Entry path, relative to save directory of the specified user account returnedStat Entry status Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_FATAL_ERROR (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEGetStatOtherApplication( FSClient *client, FSCmdBlock *block, u64 titleId, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling ); FSStatus SAVEGetStatOtherApplicationAsync( FSClient *client, FSCmdBlock *block, u64 titleId, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEGetStatOtherNormalApplication(Async) Description: Get entry status of other normal application. Target title variation is 0x00. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. path Entry path, relative to save directory of the specified user account returnedStat Entry status Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_FATAL_ERROR (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEGetStatOtherNormalApplication( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling ); FSStatus SAVEGetStatOtherNormalApplicationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEGetStatOtherNormalApplication(Async) Description: Get entry status of other normal application. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. variation target title variation. path Entry path, relative to save directory of the specified user account returnedStat Entry status Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_FATAL_ERROR (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEGetStatOtherNormalApplicationVariation( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling ); FSStatus SAVEGetStatOtherNormalApplicationVariationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEGetStatOtherDemoApplication(Async) Description: Get entry status of other demo application. Target title variation is 0x00. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. path Entry path, relative to save directory of the specified user account returnedStat Entry status Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_FATAL_ERROR (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEGetStatOtherDemoApplication( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling ); FSStatus SAVEGetStatOtherDemoApplicationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEGetStatOtherDemoApplication(Async) Description: Get entry status of other demo application. Arguments: client Pointer to client buffer block Command block uniqueId target uniqueId. variation target title variation. path Entry path, relative to save directory of the specified user account returnedStat Entry status Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_FATAL_ERROR (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEGetStatOtherDemoApplicationVariation( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling ); FSStatus SAVEGetStatOtherDemoApplicationVariationAsync( FSClient *client, FSCmdBlock *block, u32 uniqueId, u8 variation, u8 accountSlotNo, const char *path, FSStat *returnedStat, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEGetFreeSpaceSize(Async) Description: Get free space size in quota Arguments: client Pointer to client buffer block Command block returnedFreeSize Pointer to free size in quota Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELED FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_FATAL_ERROR (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEGetFreeSpaceSize( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, FSFreeSpaceSize *returnedFreeSize, FSRetFlag errHandling ); FSStatus SAVEGetFreeSpaceSizeAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, FSFreeSpaceSize *returnedFreeSize, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); /*---------------------------------------------------------------------------* Name: SAVEChangeGroupMode(Async) Description: Change permission mode of entry. This function change only group permission (read/write). If User ID is corresponded between process and entry and owner has write permission, mode can be changed. In the other case, FS_STATUS_PERMISSION is returned. Arguments: client Pointer to client buffer block Command block accountSlotNo slot number of account slot. path entry relative path from account save directory mode permission mode Returns: Result code : FS_STATUS_OK FS_STATUS_CANCELLED FS_STATUS_NOT_FOUND FS_STATUS_PERMISSION_ERROR FS_STATUS_UNSUPPORTED_CMD FS_STATUS_JOURNAL_FULL FS_STATUS_MEDIA_NOT_READY FS_STATUS_MEDIA_ERROR FS_STATUS_DATA_CORRUPTED FS_STATUS_FATAL_ERROR (Async API: Immediate return values) FS_STATUS_OK FS_STATUS_NOT_FOUND FS_STATUS_FATAL_ERROR *---------------------------------------------------------------------------*/ FSStatus SAVEChangeGroupMode( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSMode mode, FSRetFlag errHandling ); FSStatus SAVEChangeGroupModeAsync( FSClient *client, FSCmdBlock *block, u8 accountSlotNo, const char *path, FSMode mode, FSRetFlag errHandling, const FSAsyncParams *asyncParams ); #ifdef __cplusplus } #endif #endif // NN_SAVE_SAVE_API_H_