22class CompoundCreatorContainerManagerController :
public ::ContainerManagerController {
26 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::CompoundCreatorContainerManagerModel>> mModel;
27 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::CraftableCompounds>> mCraftableCompounds;
28 ::ll::TypedStorage<8, 40, ::SlotData const> mCreatedItemOutputSlot;
29 ::ll::TypedStorage<8, 128, ::ItemInstance> mResultItemPreview;
36 CompoundCreatorContainerManagerController();
42 virtual ~CompoundCreatorContainerManagerController() =
default;
44 virtual ::ItemStackBase
const& getTakeableItemStackBase(
::SlotData const& slot)
const ;
46 virtual void handleTakeAmount(
::SlotData const& dstSlot,
int amount,
::SlotData const& srcSlot) ;
52 virtual int handleAutoPlace(
55 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
56 ::std::vector<::AutoPlaceResult>& destinations
62 virtual bool isOutputSlot(::std::string
const& collectionName)
const ;
66 virtual ::CreateContainerItemScope
74 MCNAPI
explicit CompoundCreatorContainerManagerController(
75 ::std::weak_ptr<::CompoundCreatorContainerManagerModel> containerManagerModel
80 MCNAPI
void _setupCallbacks();
82 MCNAPI
void _updateResultPreview();
84 MCNAPI ::std::string getOutputFormula();
86 MCNAPI
bool isStillValid(
float pickRange);
94 MCNAPI
void* $ctor(::std::weak_ptr<::CompoundCreatorContainerManagerModel> containerManagerModel);
102 MCNAPI ::ItemStackBase
const& $getTakeableItemStackBase(
::SlotData const& slot)
const;
104 MCNAPI
void $handleTakeAmount(
::SlotData const& dstSlot,
int amount,
::SlotData const& srcSlot);
110 MCNAPI
int $handleAutoPlace(
113 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
114 ::std::vector<::AutoPlaceResult>& destinations
117 MCNAPI
void $handleAddToStack(
::SlotData const& dstSlot,
::SlotData const& srcSlot, ::ItemTakeType type);
119 MCNAPI
bool $isOutputSlot(::std::string
const& collectionName)
const;
123 MCNAPI ::CreateContainerItemScope