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
int _tick(::std::function<
void(
::Packet&)> broadcastPacketFunction,
int ticksSinceLastCleanup);
98 MCAPI
void* $ctor(
bool isClientSide);
104 MCAPI ::std::unique_ptr<::ListTag>
111 MCAPI ::std::shared_ptr<::StorageItemContainerModel> $getModel(
::FullContainerName const& name);
113 MCAPI ::std::shared_ptr<::FillingContainer> $getBackingContainer(
::FullContainerName const& name);
115 MCAPI
void $tryCreateEntry(
121 MCAPI ::std::unique_ptr<::DynamicContainerManager> $createContainerManager(
128 MCAPI uint $generateNewID();
132 MCAPI
void $setExpired(::std::vector<::FullContainerName>
const& removedContainers);
134 MCFOLD uint64 $getSize();
142 MCAPI
static void** $vftableForIDynamicContainerSerialization();
144 MCAPI
static void** $vftableForIContainerRegistryTracker();
146 MCAPI
static void** $vftableForIContainerRegistryAccess();
Definition SaveContext.h:5