IFarmingCenter

Functions

virtualPoolAddresses

function virtualPoolAddresses(address) external view returns (address) view external

Returns:

nonfungiblePositionManager

function nonfungiblePositionManager() external view returns (contract INonfungiblePositionManager) view external

The nonfungible position manager with which this farming contract is compatible

Returns:

eternalFarming

function eternalFarming() external view returns (contract IAlgebraEternalFarming) view external

The eternal farming contract

Returns:

algebraPoolDeployer

function algebraPoolDeployer() external view returns (address) view external

The Algebra poolDeployer contract

Returns:

deposits

function deposits(uint256 tokenId) external view returns (bytes32 eternalIncentiveId) view external

Returns information about a deposited NFT

Returns:

connectVirtualPool

function connectVirtualPool(contract IAlgebraPool pool, address virtualPool) external external

Updates activeIncentive in AlgebraPool Developer note: only farming can do it

enterFarming

function enterFarming(struct IncentiveKey key, uint256 tokenId) external external

Enters in incentive (time-limited or eternal farming) with NFT-position token Developer note: token must be deposited in FarmingCenter

exitFarming

function exitFarming(struct IncentiveKey key, uint256 tokenId) external external

Exits from incentive (time-limited or eternal farming) with NFT-position token

collectRewards

function collectRewards(struct IncentiveKey key, uint256 tokenId) external returns (uint256 reward, uint256 bonusReward) external

Used to collect reward from eternal farming. Then reward can be claimed.

Returns:

claimReward

function claimReward(contract IERC20Minimal rewardToken, address to, uint256 amountRequested) external returns (uint256 reward) external

Used to claim and send rewards from farming(s) Developer note: can be used via static call to get current rewards for user

Returns: