22class GrindstoneContainerManagerController :
public ::ContainerManagerController {
26 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::GrindstoneContainerManagerModel>> mGrindstoneContainerManagerModel;
27 ::ll::TypedStorage<8, 40, ::SlotData const> mCreatedItemOutputSlot;
28 ::ll::TypedStorage<8, 128, ::ItemInstance> mResultItemPreview;
29 ::ll::TypedStorage<8, 24, ::ItemStackNetIdVariant> mSrcItemNetId;
36 GrindstoneContainerManagerController();
42 virtual ~GrindstoneContainerManagerController() =
default;
44 virtual bool isOutputSlot(::std::string
const& collectionName)
const ;
46 virtual ::ItemStackBase
const& getTakeableItemStackBase(
::SlotData const& slot)
const ;
48 virtual bool handleTakeAmount(
::SlotData const& dstSlot,
int amount,
::SlotData const& srcSlot) ;
56 virtual int handleAutoPlace(
59 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
60 ::std::vector<::AutoPlaceResult>& destinations
64 virtual ::CreateContainerItemScope
67 virtual ::CreateContainerItemScope
77 MCNAPI
explicit GrindstoneContainerManagerController(
78 ::std::weak_ptr<::GrindstoneContainerManagerModel> containerManagerModel
83 MCNAPI
void _setupCallbacks();
85 MCNAPI
void _updateResultPreview();
93 MCNAPI
void* $ctor(::std::weak_ptr<::GrindstoneContainerManagerModel> containerManagerModel);
101 MCNAPI
bool $isOutputSlot(::std::string
const& collectionName)
const;
103 MCNAPI ::ItemStackBase
const& $getTakeableItemStackBase(
::SlotData const& slot)
const;
105 MCNAPI
bool $handleTakeAmount(
::SlotData const& dstSlot,
int amount,
::SlotData const& srcSlot);
113 MCNAPI
int $handleAutoPlace(
116 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
117 ::std::vector<::AutoPlaceResult>& destinations