27 using ActionScope = ::gsl::final_action<::std::function<void()>>;
32 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::MaterialReducerContainerManagerModel>> mModel;
33 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::CraftableCompounds>> mCraftableCompounds;
34 ::ll::TypedStorage<8, 8, ::BlockReducer*> mBlockReducer;
35 ::ll::TypedStorage<1, 1, bool> mObservingContainers;
36 ::ll::TypedStorage<8, 40, ::SlotData const> mCreatedItemOutputSlot;
44 virtual bool isOutputSlot(::std::string
const& collectionName)
const ;
46 virtual void closeContainers() ;
50 virtual int handleAutoPlace(
53 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
54 ::std::vector<::AutoPlaceResult>& destinations
63 MCNAPI_C
void _consumeInputItem();
69 MCNAPI_C
bool _hasAnyInput();
71 MCNAPI_C
bool _hasAnyOutput();
73 MCNAPI_C ::CreateContainerItemScope _makeCreateOutputItemScope(
79 MCNAPI_C
void _setupCallbacks();
81 MCNAPI_C
void _updateResult(
::ItemStack const& input);
83 MCNAPI_C
bool isStillValid(
float pickRange);
89 MCNAPI_C
void* $ctor(::std::weak_ptr<::MaterialReducerContainerManagerModel> containerManagerModel);
96 MCNAPI
bool $isOutputSlot(::std::string
const& collectionName)
const;
98 MCNAPI
void $closeContainers();
102 MCNAPI
int $handleAutoPlace(
105 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
106 ::std::vector<::AutoPlaceResult>& destinations