3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/events/TextProcessingEventOrigin.h"
8#include "mc/util/CallbackToken.h"
9#include "mc/util/CallbackTokenContext.h"
10#include "mc/world/containers/ContainerEnumName.h"
11#include "mc/world/inventory/network/ItemStackNetManagerBase.h"
12#include "mc/world/inventory/network/TypedClientNetId.h"
13#include "mc/world/level/Tick.h"
32 enum class TextFilterState :
int {
38 using RetainScope = ::gsl::final_action<::std::function<void()>>;
43 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ItemStackRequestActionHandler>> mRequestActionHandler;
44 ::ll::TypedStorage<1, 1, bool> mRetainSetItemStackNetIdVariants;
45 ::ll::TypedStorage<4, 4, ::ItemStackNetManagerServer::TextFilterState> mTextFilterState;
50 queue<::std::unique_ptr<::ItemStackRequestData>, ::std::deque<::std::unique_ptr<::ItemStackRequestData>>>>
52 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::TextFilteringProcessor>> mTextFilteringProcessor;
53 ::ll::TypedStorage<8, 8, ::Tick> mTextFilterRequestTimer;
54 ::ll::TypedStorage<8, 8, ::Tick const> mTextFilterRequestTimeout;
55 ::ll::TypedStorage<8, 16, ::CallbackToken> mTextFilterRequestToken;
57 mOnContainerScreenCloseCB;
71 virtual ::ItemStackRequestId getRequestId()
const ;
74 virtual bool retainSetItemStackNetIdVariant()
const ;
77 virtual bool allowInventoryTransactionManager()
const ;
93 ::std::vector<::std::string>
const& stringsToFilter,
94 ::TextProcessingEventOrigin
const& stringsToFilterOrigin
99 ::std::vector<::std::pair<::ContainerEnumName, ::std::vector<uchar>>>
const& legacySetItemSlots
107 MCNAPI
void _queueRequest(::std::unique_ptr<::ItemStackRequestData> request);
Definition CallbackTokenContext.h:6
Definition ContainerScreenContext.h:17
Definition ItemStackNetManagerBase.h:28
Definition ItemStackNetManagerScreen.h:9
Definition ItemStackNetManagerServer.h:29
MCAPI void _setTextFilterState(::ItemStackNetManagerServer::TextFilterState state)
MCAPI void _handleLegacyTransactionRequest(::ItemStackLegacyRequestId const &legacyClientRequestId, ::std::vector<::std::pair<::ContainerEnumName, ::std::vector< uchar > > > const &legacySetItemSlots)
MCAPI bool $retainSetItemStackNetIdVariant() const
MCAPI void _processQueue()
MCAPI ItemStackNetManagerServer(::ServerPlayer &serverPlayer, bool isEnabled)
MCAPI void _handleRequestData(::std::vector<::ItemStackResponseInfo > &responses, ::ItemStackRequestData const *requestData)
MCAPI void _filterStrings(::ItemStackRequestId requestId, ::std::vector<::std::string > const &stringsToFilter, ::TextProcessingEventOrigin const &stringsToFilterOrigin)
MCAPI bool $allowInventoryTransactionManager() const
MCAPI void * $ctor(::ServerPlayer &serverPlayer, bool isEnabled)
MCAPI void _queueRequest(::std::unique_ptr<::ItemStackRequestData > request)
static MCAPI void ** $vftable()
MCAPI void _sendResponsePacket(::std::vector<::ItemStackResponseInfo > &&responses)
MCAPI::CallbackToken tryCloseContainerScreen(::std::function< void()> onContainerScreenCloseCB)
MCAPI bool _tryFilterText(::ItemStackRequestData const *requestData)
MCAPI void _queueRequests(::ItemStackRequestBatch const &requestBatch)
MCAPI void $onContainerScreenOpen(::ContainerScreenContext const &screenContext)
MCAPI::ItemStackRequestId $getRequestId() const
MCAPI void $_initScreen(::ItemStackNetManagerScreen &screen)
Definition ItemStackRequestActionHandler.h:41
Definition ItemStackRequestBatch.h:14
Definition ItemStackRequestData.h:18
Definition ServerPlayer.h:65
Definition TextFilteringProcessor.h:18
Definition TypedClientNetId.h:6
Definition ItemStackLegacyRequestIdTag.h:5
Definition ItemStackRequestIdTag.h:5
Definition ItemStackResponseInfo.h:15