caps:a remove OverlayThumbnailData

This commit is contained in:
HookedBehemoth 2020-02-12 18:59:37 +01:00 committed by HookedBehemoth
parent 15429c71c2
commit 8a8cd49af2
3 changed files with 21 additions and 16 deletions

View File

@ -164,12 +164,6 @@ typedef struct {
CapsAlbumContentsUsage usages[16]; ///< \ref CapsAlbumContentsUsage
} CapsAlbumUsage16;
/// OverlayThumbnailData
typedef struct {
CapsAlbumFileId file_id; ///< \ref CapsAlbumFileId
u64 size; ///< Size.
} CapsOverlayThumbnailData;
/// UserIdList
typedef struct {
AccountUid uids[ACC_USER_LIST_SIZE]; ///< \ref AccountUid

View File

@ -223,20 +223,22 @@ Result capsaGetAlbumFileListEx0(CapsAlbumStorage storage, u8 flags, u64 *out, Ca
/**
* @brief Returns the image from the last shown ScreenShot Overlay.
* @param[out] data \ref CapsOverlayThumbnailData
* @param[out] file_id \ref CapsAlbumFileId
* @param[out] out_size Size of the thumbnail image. Always 0x5100.
* @param[out] image RGBA8 image output buffer.
* @param[in] image_size Image buffer size, should be at least large enough for RGBA8 96×54.
*/
Result capsaGetLastOverlayScreenShotThumbnail(CapsOverlayThumbnailData *data, void* image, u64 image_size);
Result capsaGetLastOverlayScreenShotThumbnail(CapsAlbumFileId *file_id, u64 *out_size, void* image, u64 image_size);
/**
* @brief Returns the image from the last shown Movie Overlay.
* @note Only available on [4.0.0+].
* @param[out] data \ref CapsOverlayThumbnailData
* @param[out] file_id \ref CapsAlbumFileId
* @param[out] out_size Size of the thumbnail image. Always 0x5100.
* @param[out] image RGBA8 image output buffer.
* @param[in] image_size Image buffer size, should be at least large enough for RGBA8 96×54.
*/
Result capsaGetLastOverlayMovieThumbnail(CapsOverlayThumbnailData *data, void* image, u64 image_size);
Result capsaGetLastOverlayMovieThumbnail(CapsAlbumFileId *file_id, u64 *out_size, void* image, u64 image_size);
/**
* @brief Gets the currently set autosaving storage.

View File

@ -255,21 +255,30 @@ Result capsaGetAlbumFileListEx0(CapsAlbumStorage storage, u8 flags, u64 *out, Ca
);
}
Result _capsaGetLastOverlayThumbnail(CapsOverlayThumbnailData *data, void* image, u64 image_size, u32 cmd_id) {
return serviceDispatchOut(&g_capsaSrv, cmd_id, *data,
Result _capsaGetLastOverlayThumbnail(CapsAlbumFileId *file_id, u64 *out_size, void* image, u64 image_size, u32 cmd_id) {
struct {
CapsAlbumFileId file_id;
u64 size;
} out;
Result rc = serviceDispatchOut(&g_capsaSrv, cmd_id, out,
.buffer_attrs = { SfBufferAttr_HipcMapAlias | SfBufferAttr_Out, },
.buffers = { { image, image_size }, },
);
if (R_SUCCEEDED(rc)) {
if (file_id) *file_id = out.file_id;
if (out_size) *out_size = out.size;
}
return rc;
}
Result capsaGetLastOverlayScreenShotThumbnail(CapsOverlayThumbnailData *data, void* image, u64 image_size) {
return _capsaGetLastOverlayThumbnail(data, image, image_size, 301);
Result capsaGetLastOverlayScreenShotThumbnail(CapsAlbumFileId *file_id, u64 *out_size, void* image, u64 image_size) {
return _capsaGetLastOverlayThumbnail(file_id, out_size, image, image_size, 301);
}
Result capsaGetLastOverlayMovieThumbnail(CapsOverlayThumbnailData *data, void* image, u64 image_size) {
Result capsaGetLastOverlayMovieThumbnail(CapsAlbumFileId *file_id, u64 *out_size, void* image, u64 image_size) {
if (hosversionBefore(4,0,0))
return MAKERESULT(Module_Libnx, LibnxError_IncompatSysVer);
return _capsaGetLastOverlayThumbnail(data, image, image_size, 302);
return _capsaGetLastOverlayThumbnail(file_id, out_size, image, image_size, 302);
}
Result capsaGetAutoSavingStorage(CapsAlbumStorage *storage) {