LeviLamina
Loading...
Searching...
No Matches
ShowcasedScreenshots.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/PathBuffer.h"
7#include "mc/deps/core/threading/Async.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9
10// auto generated forward declare list
11// clang-format off
12namespace Core { class FileSystem; }
13namespace Screenshots { class IScreenshotGalleryHttpCall; }
14namespace Social { struct XUID; }
15namespace Screenshots { struct RawShowcasedScreenshot; }
16// clang-format on
17
18namespace Screenshots {
19
20class ShowcasedScreenshots {
21public:
22 // member variables
23 // NOLINTBEGIN
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
41 ShowcasedScreenshots& operator=(ShowcasedScreenshots const&);
42 ShowcasedScreenshots(ShowcasedScreenshots const&);
43 ShowcasedScreenshots();
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCNAPI_C ::std::string _addScreenshotToShowcaseCallback(
49 ::Core::PathBuffer<::std::string> const& imagePath,
50 ::std::optional<::Screenshots::RawShowcasedScreenshot> const& rawScreenshot
51 );
52
53 MCNAPI_C bool
54 _cacheScreenshot(::Core::PathBuffer<::std::string> const& path, ::std::vector<uchar> const& imageData) const;
55
56 MCNAPI_C ::Core::PathBuffer<::std::string> _getFeaturedImagePath();
57
58 MCNAPI_C ::Core::PathBuffer<::std::string> _getShowcasedImagePath(::std::string const& guid, bool isThumbnail);
59
60 MCNAPI_C bool _loadFeaturedScreenshotCallback(::std::optional<::std::vector<uchar>> const& rawScreenshot);
61
62 MCNAPI_C bool _loadGalleryCallback(
63 ::std::optional<::std::vector<::Screenshots::RawShowcasedScreenshot>> const& showcasedScreenshots
64 );
65
66 MCNAPI_C void _pruneCache();
67
68 MCNAPI_C void _pruneIncrementally(::std::vector<::Core::PathBuffer<::std::string>> fileList);
69
70 MCNAPI_C ::Bedrock::Threading::Async<::std::string>
71 addScreenshotToShowcase(int64 captureTime, bool featured, ::Core::PathBuffer<::std::string> const& imagePath);
72
73 MCNAPI_C ::Core::PathBuffer<::std::string> const getFeaturedScreenshotPath() const;
74
75 MCNAPI_C ::Bedrock::Threading::Async<bool> loadCount();
76
77 MCNAPI_C ::Bedrock::Threading::Async<bool> loadFeaturedScreenshot();
78
79 MCNAPI_C ::Bedrock::Threading::Async<bool> loadGallery();
80
81 MCNAPI_C ::Bedrock::Threading::Async<bool> loadShowcasedScreenshot(::std::string const& guid);
82
83 MCNAPI_C ::Bedrock::Threading::Async<bool> removeFeaturedScreenshot();
84
85 MCNAPI_C ::Bedrock::Threading::Async<bool> removeShowcasedScreenshot(::std::string const& guid);
86
87 MCNAPI_C ::Bedrock::Threading::Async<bool> setFeaturedScreenshot(::std::string const& guid);
88 // NOLINTEND
89
90public:
91 // static variables
92 // NOLINTBEGIN
93 MCNAPI_C static ::std::add_lvalue_reference_t<char const[]> CACHE_DIR_NAME();
94 // NOLINTEND
95
96public:
97 // constructor thunks
98 // NOLINTBEGIN
99 MCNAPI_C void* $ctor(
100 ::Social::XUID xuid,
101 ::Core::PathBuffer<::std::string> const& cacheStoragePath,
102 ::Bedrock::NotNullNonOwnerPtr<::Core::FileSystem> const& fileSystem,
103 ::std::unique_ptr<::Screenshots::IScreenshotGalleryHttpCall> httpCaller
104 );
105 // NOLINTEND
106
107public:
108 // destructor thunk
109 // NOLINTBEGIN
110 MCNAPI_C void $dtor();
111 // NOLINTEND
112};
113
114} // namespace Screenshots
Definition FileSystem.h:27
Definition PathBuffer.h:8
Definition IScreenshotGalleryHttpCall.h:19
Definition RawShowcasedScreenshot.h:7
Definition XUID.h:10
Definition Alias.h:14