32 ::ll::TypedStorage<4, 4, uint> mNextDynamicId;
33 ::ll::TypedStorage<8, 64, ::std::unordered_map<::FullContainerName, ::DynamicTrackedContainer>> mContainers;
34 ::ll::TypedStorage<1, 1, bool const> mIsClientSide;
35 ::ll::TypedStorage<4, 4, int> mTicksSinceLastCleanup;
36 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::Bedrock::Threading::SharedRecursiveMutex>> mContainerContextMutex;
46 virtual ~ContainerRegistry() =
default;
48 virtual ::std::unique_ptr<::ListTag>
55 virtual ::std::shared_ptr<::StorageItemContainerModel> getModel(
::FullContainerName const& name) ;
57 virtual ::std::shared_ptr<::FillingContainer> getBackingContainer(
::FullContainerName const& name) ;
59 virtual void tryCreateEntry(
65 virtual ::std::unique_ptr<::DynamicContainerManager> createContainerManager(
72 virtual uint generateNewID() ;
76 virtual void setExpired(::std::vector<::FullContainerName>
const& removedContainers) ;
78 virtual uint64 getSize() ;
84 MCAPI
explicit ContainerRegistry(
bool isClientSide);
86 MCAPI ::DynamicTrackedContainer& _getOrCreate(
92 MCAPI
void _serverCleanUp(::std::function<
void(
::Packet&)> broadcastPacketFunction);
94 MCAPI
void tick(::std::function<
void(
::Packet&)> broadcastPacketFunction);
100 MCAPI
static void sendCleanupPackets(
101 ::std::function<
void(
::Packet&)>
const& broadcastPacketFunction,
102 ::std::vector<::FullContainerName>
const& removedContainers
109 MCAPI
void* $ctor(
bool isClientSide);
115 MCAPI ::std::unique_ptr<::ListTag>
122 MCAPI ::std::shared_ptr<::StorageItemContainerModel> $getModel(
::FullContainerName const& name);
124 MCAPI ::std::shared_ptr<::FillingContainer> $getBackingContainer(
::FullContainerName const& name);
126 MCAPI
void $tryCreateEntry(
132 MCAPI ::std::unique_ptr<::DynamicContainerManager> $createContainerManager(
139 MCAPI uint $generateNewID();
143 MCAPI
void $setExpired(::std::vector<::FullContainerName>
const& removedContainers);
145 MCFOLD uint64 $getSize();
153 MCAPI
static void** $vftableForIDynamicContainerSerialization();
155 MCAPI
static void** $vftableForIContainerRegistryTracker();
157 MCAPI
static void** $vftableForIContainerRegistryAccess();
Definition SaveContext.h:5