LeviLamina
Loading...
Searching...
No Matches
TemporaryTextureHolder.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/platform/threading/Mutex.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace cg { class ImageBuffer; }
11namespace mce { class TexturePtr; }
12// clang-format on
13
14namespace OreUI {
15
17public:
18 // TemporaryTextureHolder inner types define
19 using ImageId = uint64;
20
21 using TextureResource = ::std::variant<::cg::ImageBuffer, ::mce::TexturePtr>;
22
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mMutex;
27 ::ll::TypedStorage<8, 8, uint64> mId;
28 ::ll::TypedStorage<8, 16, ::std::map<uint64, ::std::variant<::cg::ImageBuffer, ::mce::TexturePtr>>>
29 mTextureResources;
30 // NOLINTEND
31
32public:
33 // member functions
34 // NOLINTBEGIN
35 MCAPI ::std::variant<::cg::ImageBuffer, ::mce::TexturePtr> consumeImageBuffer(uint64 id);
36
37 MCAPI uint64 holdImageBuffer(::cg::ImageBuffer buffer);
38
39 MCAPI uint64 holdTexturePtr(::mce::TexturePtr texture);
40
41 MCAPI ~TemporaryTextureHolder();
42 // NOLINTEND
43
44public:
45 // destructor thunk
46 // NOLINTBEGIN
47 MCAPI void $dtor();
48 // NOLINTEND
49};
50
51} // namespace OreUI
Definition TemporaryTextureHolder.h:7
Definition ImageBuffer.h:16
Definition TexturePtr.h:19