IAlgebraVirtualPoolBase
Base interface for virtual pools
Functions
timeOutside
function timeOutside() external view returns (uint32)
view external
Returns:
Name | Type | Description |
---|---|---|
[0] | uint32 |
ticks
function ticks(int24 tickId) external view returns (uint128 liquidityTotal, int128 liquidityDelta, uint256 outerFeeGrowth0Token, uint256 outerFeeGrowth1Token, int56 outerTickCumulative, uint160 outerSecondsPerLiquidity, uint32 outerSecondsSpent, bool initialized)
view external
Name | Type | Description |
---|---|---|
tickId | int24 |
Returns:
Name | Type | Description |
---|---|---|
liquidityTotal | uint128 | |
liquidityDelta | int128 | |
outerFeeGrowth0Token | uint256 | |
outerFeeGrowth1Token | uint256 | |
outerTickCumulative | int56 | |
outerSecondsPerLiquidity | uint160 | |
outerSecondsSpent | uint32 | |
initialized | bool |
currentLiquidity
function currentLiquidity() external view returns (uint128)
view external
Returns:
Name | Type | Description |
---|---|---|
[0] | uint128 |
globalTick
function globalTick() external view returns (int24)
view external
Returns:
Name | Type | Description |
---|---|---|
[0] | int24 |
globalSecondsPerLiquidityCumulative
function globalSecondsPerLiquidityCumulative() external view returns (uint160)
view external
Returns:
Name | Type | Description |
---|---|---|
[0] | uint160 |
prevTimestamp
function prevTimestamp() external view returns (uint32)
view external
Returns:
Name | Type | Description |
---|---|---|
[0] | uint32 |
getInnerSecondsPerLiquidity
function getInnerSecondsPerLiquidity(int24 bottomTick, int24 topTick) external view returns (uint160 innerSecondsSpentPerLiquidity)
view external
This function is used to calculate the seconds per liquidity inside a certain position
Name | Type | Description |
---|---|---|
bottomTick | int24 | The bottom tick of a position |
topTick | int24 | The top tick of a position |
Returns:
Name | Type | Description |
---|---|---|
innerSecondsSpentPerLiquidity | uint160 | The seconds per liquidity inside the position |
applyLiquidityDeltaToPosition
function applyLiquidityDeltaToPosition(uint32 currentTimestamp, int24 bottomTick, int24 topTick, int128 liquidityDelta, int24 currentTick) external
external
Developer note: This function is called when anyone farms their liquidity. The position in a virtual pool should be changed accordingly
Name | Type | Description |
---|---|---|
currentTimestamp | uint32 | The timestamp of current block |
bottomTick | int24 | The bottom tick of a position |
topTick | int24 | The top tick of a position |
liquidityDelta | int128 | The amount of liquidity in a position |
currentTick | int24 | The current tick in the main pool |