32class ItemStackNetManagerServer :
public ::ItemStackNetManagerBase {
35 enum class TextFilterState :
int {
41 using RetainScope = ::gsl::final_action<::std::function<void()>>;
46 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ItemStackRequestActionHandler>> mRequestActionHandler;
47 ::ll::TypedStorage<1, 1, bool> mRetainSetItemStackNetIdVariants;
48 ::ll::TypedStorage<4, 4, ::ItemStackNetManagerServer::TextFilterState> mTextFilterState;
53 queue<::std::unique_ptr<::ItemStackRequestData>, ::std::deque<::std::unique_ptr<::ItemStackRequestData>>>>
55 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::TextFilteringProcessor>> mTextFilteringProcessor;
56 ::ll::TypedStorage<8, 8, ::Tick> mTextFilterRequestTimer;
57 ::ll::TypedStorage<8, 8, ::Tick const> mTextFilterRequestTimeout;
58 ::ll::TypedStorage<8, 16, ::CallbackToken> mTextFilterRequestToken;
60 mOnContainerScreenCloseCB;
65 ItemStackNetManagerServer();
70 virtual ~ItemStackNetManagerServer() ;
72 virtual ::ItemStackRequestId getRequestId()
const ;
74 virtual bool retainSetItemStackNetIdVariant()
const ;
76 virtual bool allowInventoryTransactionManager()
const ;
86 MCAPI ItemStackNetManagerServer(
::ServerPlayer& serverPlayer,
bool isEnabled);
88 MCAPI
void _filterStrings(
89 ::ItemStackRequestId requestId,
90 ::std::vector<::std::string>
const& stringsToFilter,
91 ::TextProcessingEventOrigin
const& stringsToFilterOrigin
94 MCAPI
void _handleLegacyTransactionRequest(
95 ::ItemStackLegacyRequestId
const& legacyClientRequestId,
96 ::std::vector<::std::pair<::ContainerEnumName, ::std::vector<uchar>>>
const& legacySetItemSlots
100 _handleRequestData(::std::vector<::ItemStackResponseInfo>& responses,
::ItemStackRequestData const* requestData);
102 MCAPI
void _processQueue();
104 MCAPI
void _queueRequest(::std::unique_ptr<::ItemStackRequestData> request);
108 MCAPI ::gsl::final_action<::std::function<void()>> _retainSetItemStackNetIdVariantScope();
110 MCAPI
void _sendResponsePacket(::std::vector<::ItemStackResponseInfo>&& responses);
112 MCAPI
void _setTextFilterState(::ItemStackNetManagerServer::TextFilterState state);
116 MCAPI
void handleRequest(
117 ::std::unique_ptr<::ItemStackRequestData> request,
121 MCAPI
void handleRequestBatch(
128 MCAPI
void normalTick();
130 MCAPI
void startCrafting(
bool workbench,
::BlockPos const& pos);
132 MCAPI ::CallbackToken tryCloseContainerScreen(::std::function<
void()> onContainerScreenCloseCB);
150 MCAPI ::ItemStackRequestId $getRequestId()
const;
152 MCAPI
bool $retainSetItemStackNetIdVariant()
const;
154 MCAPI
bool $allowInventoryTransactionManager()
const;
Definition CallbackTokenContext.h:6
Definition ContainerScreenContext.h:19
Definition TextFilteringProcessor.h:20