libnx/nx/include/switch/services/capsc.h
HookedBehemoth 420bc60d72 fix structs
expose overlay
fix aruid un-/registration
2020-02-10 18:36:57 +01:00

57 lines
3.3 KiB
C

/**
* @file capsc.h
* @brief Album Control (caps:c) service IPC wrapper.
* @author Behemoth
* @copyright libnx Authors
*/
#pragma once
#include "../types.h"
#include "../sf/service.h"
#include "../services/caps.h"
/// Initialize caps:c
Result capscInitialize(void);
/// Exit caps:c.
void capscExit(void);
/// Gets the Service for caps:c.
Service* capscGetServiceSession(void);
Result capscNotifyAlbumStorageIsAvailable(CapsAlbumStorage storage);
Result capscNotifyAlbumStorageIsUnAvailable(CapsAlbumStorage storage);
Result capscRegisterAppletResourceUserId(u64 appletResourceUserId, u64 application_id);
Result capscUnregisterAppletResourceUserId(u64 appletResourceUserId, u64 application_id);
Result capscGetApplicationIdFromAruid(u64 *application_id, u64 aruid);
Result capscCheckApplicationIdRegistered(u64 application_id);
Result capscGenerateCurrentAlbumFileId(u64 application_id, CapsAlbumFileContents contents, CapsAlbumFileId *file_id);
Result capscGenerateApplicationAlbumEntry(CapsApplicationAlbumEntry *appEntry, const CapsAlbumEntry *entry, u64 application_id);
Result capscSaveAlbumScreenShotFile(CapsAlbumFileId *file_id, void* buffer, u64 buffer_size);
Result capscSaveAlbumScreenShotFileEx(CapsAlbumFileId *file_id, u64 unk_0, u64 unk_1, u64 unk_2, void* buffer, u64 buffer_size);
Result capscSetOverlayScreenShotThumbnailData(const CapsAlbumFileId *file_id, const void* image, u64 image_size);
Result capscSetOverlayMovieThumbnailData(const CapsAlbumFileId *file_id, const void* image, u64 image_size);
Result capscOpenAlbumMovieReadStream(u64 *stream, const CapsAlbumFileId *file_id);
Result capscCloseAlbumMovieStream(u64 stream);
Result capscGetAlbumMovieStreamSize(u64 stream, u64 *size);
Result capscReadMovieDataFromAlbumMovieReadStream(u64 stream, u64 offset, void* buffer, size_t size, u64 *actual_size);
Result capscGetAlbumMovieReadStreamBrokenReason(u64 stream);
Result capscGetAlbumMovieReadStreamImageDataSize(u64 stream, u64 *size);
Result capscReadImageDataFromAlbumMovieReadStream(u64 stream, u64 offset, void* buffer, size_t size, u64 *actual_size);
Result capscReadFileAttributeFromAlbumMovieReadStream(u64 stream, CapsScreenShotAttribute *attribute);
Result capscOpenAlbumMovieWriteStream(u64 *stream, const CapsAlbumFileId *file_id);
Result capscFinishAlbumMovieWriteStream(u64 stream);
Result capscCommitAlbumMovieWriteStream(u64 stream);
Result capscDiscardAlbumMovieWriteStream(u64 stream);
Result capscDiscardAlbumMovieWriteStreamNoDelete(u64 stream);
Result capscCommitAlbumMovieWriteStreamEx(u64 stream, CapsAlbumCommitOutput *out);
Result capscStartAlbumMovieWriteStreamDataSection(u64 stream);
Result capscEndAlbumMovieWriteStreamDataSection(u64 stream);
Result capscStartAlbumMovieWriteStreamMetaSection(u64 stream);
Result capscEndAlbumMovieWriteStreamMetaSection(u64 stream);
Result capscReadDataFromAlbumMovieWriteStream(u64 stream, u64 offset, void* buffer, u64 size, u64 *actual_size);
Result capscWriteDataToAlbumMovieWriteStream(u64 stream, u64 offset, void* buffer, u64 size);
Result capscWriteMetaToAlbumMovieWriteStream(u64 stream, u64 offset, void* buffer, u64 size);
Result capscGetAlbumMovieWriteStreamBrokenReason(u64 stream);
Result capscGetAlbumMovieWriteStreamDataSize(u64 stream, u64 *size);
Result capscSetAlbumMovieWriteStreamDataSize(u64 stream, u64 size);