2014-03-04 18:25:51 +00:00
|
|
|
/* Copyright (C) 2011, 2012, 2013, 2014 The uOFW team
|
|
|
|
See the file COPYING for copying permission.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "common_header.h"
|
|
|
|
#include "mediaman.h"
|
|
|
|
|
2014-05-03 21:13:23 +00:00
|
|
|
/** @defgroup MediamanUser Mediaman User
|
|
|
|
* @ingroup Mediaman
|
|
|
|
*
|
|
|
|
* User application API.
|
|
|
|
* @{
|
|
|
|
*/
|
|
|
|
|
2014-03-04 18:25:51 +00:00
|
|
|
#ifndef MEDIAMAN_USER_H
|
|
|
|
#define MEDIAMAN_USER_H
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/**
|
2014-05-03 21:13:23 +00:00
|
|
|
* Activate the UMD drive. This includes assigning the file system, the block device (set to "umd0:")
|
|
|
|
* and setting the alias name for the file system access.
|
2014-03-04 18:25:51 +00:00
|
|
|
*
|
2014-05-04 13:52:59 +00:00
|
|
|
* @param mode The initial UMD drive power mode. One of ::SceUmdDevicePowerModes.
|
2014-05-03 21:13:23 +00:00
|
|
|
* @param aliasName The alias name for the mounted filesystem device name. Pass ::SCE_UMD_ALIAS_NAME.
|
2014-03-04 18:25:51 +00:00
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise SCE_ERROR_ERRNO_INVALID_ARGUMENT.
|
|
|
|
*/
|
|
|
|
s32 sceUmdActivate(s32 mode, const char *aliasName);
|
|
|
|
|
|
|
|
/**
|
2014-05-03 21:13:23 +00:00
|
|
|
* Deactivate the UMD drive.
|
2014-03-04 18:25:51 +00:00
|
|
|
*
|
2014-05-04 13:52:59 +00:00
|
|
|
* @param mode The new UMD drive power mode. One of ::SceUmdDevicePowerModes.
|
2014-05-03 21:13:23 +00:00
|
|
|
* @param aliasName aliasName The alias name for the mounted filesystem device name. Pass ::SCE_UMD_ALIAS_NAME.
|
2014-03-04 18:25:51 +00:00
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise SCE_ERROR_ERRNO_INVALID_ARGUMENT.
|
|
|
|
*/
|
|
|
|
s32 sceUmdDeactivate(s32 mode, const char *aliasName);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get the disc information.
|
|
|
|
*
|
|
|
|
* @param pDiscInfo Pointer to a SceUmdDiscInfo structure to retrieve the disc information.
|
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise SCE_ERROR_ERRNO_INVALID_ARGUMENT on invalid arguments;
|
|
|
|
* SCE_ERROR_UMD_NO_MEDIUM if there is no UMD medium inserted.
|
|
|
|
*/
|
|
|
|
s32 sceUmdGetDiscInfo(SceUmdDiscInfo *pDiscInfo);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Register a callback that is called when the UMD disc state changes. Only exactly one callback can be
|
|
|
|
* registered at any given time.
|
|
|
|
*
|
|
|
|
* @param callbackId The ID of the callback.
|
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise SCE_ERROR_ERRNO_INVALID_ARGUMENT (when the passed ID does
|
|
|
|
* not belong to a callback).
|
|
|
|
*/
|
|
|
|
s32 sceUmdRegisterUMDCallBack(SceUID callbackId);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Unregister a callback that is called when the UMD disc state changes.
|
|
|
|
*
|
|
|
|
* @param callbackId The ID of the callback.
|
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise SCE_ERROR_ERRNO_INVALID_ARGUMENT (when the passed ID does
|
|
|
|
* not match the ID of the previously registered callback).
|
|
|
|
*/
|
|
|
|
s32 sceUmdUnRegisterUMDCallBack(SceUID callbackId);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Verify the existence of an UMD medium.
|
|
|
|
*
|
|
|
|
* @return 0, if no disc is present, a value != 0 indicates disc is present.
|
|
|
|
*/
|
|
|
|
s32 sceUmdCheckMedium(void);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Wait for a UMD drive status event.
|
|
|
|
*
|
|
|
|
* @param umdState The state to wait for until it occurs. One of ::SceUmdDiscStates.
|
|
|
|
*
|
2014-05-04 13:52:59 +00:00
|
|
|
* @return SCE_ERROR_OK, otherwise SCE_ERROR_ERRNO_INVALID_ARGUMENT if the given UMD state
|
2014-03-04 18:25:51 +00:00
|
|
|
* isn't one of the following: SCE_UMD_MEDIA_OUT, SCE_UMD_MEDIA_IN, SCE_UMD_NOT_READY,
|
|
|
|
* SCE_UMD_READY, SCE_UMD_READABLE
|
|
|
|
* Other errors indicate a thread synchronization error.
|
|
|
|
*/
|
|
|
|
s32 sceUmdWaitDriveStat(s32 umdState);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Wait for a UMD drive status event.
|
|
|
|
*
|
|
|
|
* @param umdState The state to wait for until it occurs. One of ::SceUmdDiscStates.
|
|
|
|
* @param timeout Timeout value in microseconds for the wait.
|
|
|
|
*
|
2014-05-04 13:52:59 +00:00
|
|
|
* @return SCE_ERROR_OK, otherwise SCE_ERROR_ERRNO_INVALID_ARGUMENT if the given UMD state
|
2014-03-04 18:25:51 +00:00
|
|
|
* isn't one of the following: SCE_UMD_MEDIA_OUT, SCE_UMD_MEDIA_IN, SCE_UMD_NOT_READY,
|
|
|
|
* SCE_UMD_READY, SCE_UMD_READABLE.
|
|
|
|
* Other errors indicate a thread synchronization error.
|
|
|
|
*/
|
|
|
|
s32 sceUmdWaitDriveStatWithTimer(u32 umdState, u32 timeout);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Wait for a UMD drive status event with callback.
|
|
|
|
*
|
|
|
|
* @param umdState The state to wait for until it occurs. One of ::SceUmdDiscStates.
|
|
|
|
* @param timeout Timeout value in microseconds for the wait.
|
|
|
|
*
|
2014-05-04 13:52:59 +00:00
|
|
|
* @return SCE_ERROR_OK, otherwise SCE_ERROR_ERRNO_INVALID_ARGUMENT if the given UMD state
|
2014-03-04 18:25:51 +00:00
|
|
|
* isn't one of the following: SCE_UMD_MEDIA_OUT, SCE_UMD_MEDIA_IN, SCE_UMD_NOT_READY,
|
|
|
|
* SCE_UMD_READY, SCE_UMD_READABLE
|
|
|
|
* Other errors indicate a thread synchronization error.
|
|
|
|
*/
|
|
|
|
s32 sceUmdWaitDriveStatCB(u32 umdState, u32 timeout);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Cancel a wait for a UMD drive status event.
|
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise less than 0.
|
|
|
|
*/
|
|
|
|
s32 sceUmdCancelWaitDriveStat(void);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get the current UMD drive status.
|
|
|
|
*
|
|
|
|
* @return The UMD drive status. One of ::SceUmdDiscStates.
|
|
|
|
*/
|
|
|
|
s32 sceUmdGetDriveStat(void);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get the current UMD error status.
|
|
|
|
*
|
|
|
|
* @return The UMD error status. One of the error codes defined in include/umd_error.h
|
|
|
|
*/
|
|
|
|
s32 sceUmdGetErrorStat(void);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Prohibit UMD disc being replaced.
|
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise less than 0.
|
|
|
|
*/
|
|
|
|
s32 sceUmdReplaceProhibit(void);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Permit UMD disc being replaced.
|
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise less than 0.
|
|
|
|
*/
|
|
|
|
s32 sceUmdReplacePermit(void);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Unknown.
|
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise less than 0.
|
|
|
|
*/
|
2014-04-25 22:46:48 +00:00
|
|
|
s32 sceUmdUseUMDInMsUsbWlan(void);
|
2014-03-04 18:25:51 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Unknown.
|
|
|
|
*
|
|
|
|
* @return SCE_ERROR_OK on success, otherwise less than 0.
|
|
|
|
*/
|
2014-04-25 22:46:48 +00:00
|
|
|
s32 sceUmdUnuseUMDInMsUsbWlan(void);
|
2014-03-04 18:25:51 +00:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif /* MEDIAMAN_USER_H */
|
|
|
|
|
2014-05-03 21:13:23 +00:00
|
|
|
/** @} */
|
|
|
|
|