// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include "core/hle/service/caps/caps_types.h" #include "core/hle/service/cmif_types.h" #include "core/hle/service/service.h" namespace Core { class System; } namespace Service::Capture { class AlbumManager; class IAlbumAccessorService final : public ServiceFramework { public: explicit IAlbumAccessorService(Core::System& system_, std::shared_ptr album_manager); ~IAlbumAccessorService() override; private: Result GetAlbumFileList(Out out_count, AlbumStorage storage, OutArray out_entries); Result DeleteAlbumFile(AlbumFileId file_id); Result IsAlbumMounted(Out out_is_mounted, AlbumStorage storage); Result Unknown18( Out out_buffer_size, OutArray out_buffer); Result GetAlbumFileListEx0(Out out_entries_size, AlbumStorage storage, u8 flags, OutArray out_entries); Result GetAutoSavingStorage(Out out_is_autosaving); Result LoadAlbumScreenShotImageEx1( const AlbumFileId& file_id, const ScreenShotDecodeOption& decoder_options, OutLargeData out_image_output, OutArray out_image, OutArray out_buffer); Result LoadAlbumScreenShotThumbnailImageEx1( const AlbumFileId& file_id, const ScreenShotDecodeOption& decoder_options, OutLargeData out_image_output, OutArray out_image, OutArray out_buffer); Result TranslateResult(Result in_result); std::shared_ptr manager = nullptr; }; } // namespace Service::Capture