LeviLamina
Loading...
Searching...
No Matches
BedrockTexture.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core_graphics/TextureSetLayerType.h"
7#include "mc/deps/minecraft_renderer/renderer/IsMissingTexture.h"
8
9// auto generated forward declare list
10// clang-format off
13namespace cg { class TextureSetDefinition; }
14namespace cg { class TextureSetImageContainer; }
15namespace cg { class TextureSetImageDescription; }
16namespace mce { class TextureContainer; }
17namespace mce { struct ClientTexture; }
18namespace mce { struct TextureDescription; }
19namespace mce { struct TextureResourceService; }
20// clang-format on
21
22class BedrockTexture {
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::BedrockTextureData>> mBedrockTextureData;
27 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::BedrockTextureData>> mBedrockMERSTextureData;
28 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::BedrockTextureData>> mBedrockNormalTextureData;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 BedrockTexture(BedrockTexture const&);
34 BedrockTexture();
35
36public:
37 // member functions
38 // NOLINTBEGIN
39 MCAPI ::std::optional<::ResourceLocationPair> const _getLayerLocation(
40 ::gsl::not_null<::std::shared_ptr<::cg::TextureSetDefinition>> textureSetDefinition,
41 ::cg::TextureSetLayerType layerType
42 );
43
44 MCAPI bool _loadFromImageBuffer(
45 ::cg::TextureSetImageContainer& imageContainer,
46 ::cg::TextureSetLayerType textureType,
47 ::mce::TextureResourceService& textureResourceService,
48 ::cg::TextureSetImageDescription const& setDescription,
49 ::IsMissingTexture isMissing,
50 ::std::string_view debugName
51 ) const;
52
53 MCAPI ::mce::ClientTexture const& getClientHandle(::cg::TextureSetLayerType textureType) const;
54
55 MCAPI bool load(
56 ::mce::TextureResourceService& textureResourceService,
57 ::gsl::not_null<::std::shared_ptr<::cg::TextureSetDefinition>> textureSetDefinition,
58 ::std::string_view debugName
59 );
60
61 MCAPI bool load(
62 ::mce::TextureResourceService& textureResourceService,
63 ::mce::TextureContainer&& textureContainer,
64 ::IsMissingTexture isMissingTexture,
65 ::std::string_view debugName,
66 ::cg::TextureSetLayerType textureType
67 );
68
69 MCAPI void loadMetadata(::gsl::not_null<::std::shared_ptr<::cg::TextureSetDefinition>> textureSetDefinition);
70
71 MCAPI void loadMetadata(
72 ::mce::TextureDescription const& textureDescription,
73 ::std::optional<::IsMissingTexture> optIsMissingTexture
74 );
75
76 MCAPI ::BedrockTexture& operator=(::BedrockTexture const& rhs);
77
78 MCAPI void unload();
79
80 MCAPI ~BedrockTexture();
81 // NOLINTEND
82
83public:
84 // destructor thunk
85 // NOLINTBEGIN
86 MCFOLD void $dtor();
87 // NOLINTEND
88};
Definition BedrockTexture.h:5
Definition ResourceLocationPair.h:11
Definition TextureSetDefinition.h:19
Definition TextureSetImageContainer.h:20
Definition TextureSetImageDescription.h:18
Definition TextureContainer.h:7
Definition BedrockTextureData.h:5
Definition ClientTexture.h:7
Definition TextureDescription.h:7
Definition TextureResourceService.h:7