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