LeviLamina
Loading...
Searching...
No Matches
DynamicContainerTracker.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/game_refs/WeakRef.h"
7#include "mc/world/containers/FullContainerName.h"
8
9// auto generated forward declare list
10// clang-format off
14class ItemStack;
18// clang-format on
19
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 16, ::WeakRef<::IContainerRegistryAccess>> mContainerRegistryAccess;
25 ::ll::TypedStorage<8, 16, ::WeakRef<::IContainerRegistryTracker>> mContainerRegistryManager;
26 ::ll::TypedStorage<8, 64, ::std::unordered_map<::FullContainerName, ::std::unique_ptr<::DynamicContainerManager>>>
27 mTrackedContainers;
28 ::ll::TypedStorage<8, 64, ::std::unordered_set<::FullContainerName>> mMarkedReachable;
29 // NOLINTEND
30
31public:
32 // member functions
33 // NOLINTBEGIN
34 MCAPI ::std::optional<::ItemStack> _initializeStorageItem(
35 ::ItemStack const& item,
36 ::StorageItemComponent* storageItemComponent,
37 ::StorageWeightLimitItemComponent* storageWeightLimitItemComponent
38 );
39
40 MCAPI void _markAux(::ItemStack const& item, int depth);
41
42 MCAPI void _retrackRecursiveAux(::ItemStack const& item, int depth);
43
44 MCAPI void
45 broadcastChanges(::PlayerContainerRefresher& refresher, ::std::function<void()> contentsChangedCallback) const;
46
47 MCAPI void sweep();
48
49 MCAPI ::std::optional<::ItemStack> tryTrackContainer(::ItemStack const& item);
50 // NOLINTEND
51};
Definition DynamicContainerManager.h:18
Definition DynamicContainerTracker.h:20
Definition IContainerRegistryAccess.h:14
Definition IContainerRegistryTracker.h:15
Definition ItemStack.h:24
Definition StorageItemComponent.h:26
Definition StorageWeightLimitItemComponent.h:15
Definition PlayerContainerRefresher.h:13