LeviLamina
Loading...
Searching...
No Matches
IGeometryAtlas.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/pub_sub/Connector.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace GeometryAtlas { class IItemTile; }
11namespace GeometryAtlas { class IPaperDollTile; }
12namespace GeometryAtlas { class IRenderContext; }
13namespace GeometryAtlas { struct TileDefinition; }
14// clang-format on
15
16namespace GeometryAtlas {
17
18class IGeometryAtlas {
19public:
20 // virtual functions
21 // NOLINTBEGIN
22 virtual ~IGeometryAtlas() = default;
23
24 virtual ::Bedrock::PubSub::Connector<void(::std::vector<uint> const&)>& getTileChangeConnector() = 0;
25
26 virtual ::std::shared_ptr<::GeometryAtlas::IItemTile>
27 createItem(::GeometryAtlas::TileDefinition const& definition) = 0;
28
29 virtual ::std::shared_ptr<::GeometryAtlas::IPaperDollTile>
30 createDoll(::GeometryAtlas::TileDefinition const& definition) = 0;
31
32 virtual void trySubmitUpdates(::GeometryAtlas::IRenderContext& context) = 0;
33
34 virtual bool hasAnyUpdates() const = 0;
35 // NOLINTEND
36};
37
38} // namespace GeometryAtlas
Definition IGeometryAtlas.h:7
Definition IItemTile.h:7
Definition IPaperDollTile.h:7
Definition IRenderContext.h:7
Definition TileDefinition.h:7