IPriceProviderAggregator

Overview

License: MIT

interface IPriceProviderAggregator

Functions info

setTokenAndPriceProvider (0xf913ab66)

function setTokenAndPriceProvider(
    address token,
    address priceProvider,
    uint8 priceDecimals
) external

Sets price provider to token and its corresponding price provider.

Parameters:

NameTypeDescription

token

address

the address of token.

priceProvider

address

the address of price provider. Should implement the interface of PriceProvider.

priceDecimals

uint8

the decimals of token price.

changeActive (0x3651084e)

function changeActive(
    address priceProvider,
    address token,
    bool active
) external

Allows the moderator to change the active status of a price provider for a specific token.

Parameters:

NameTypeDescription

priceProvider

address

The address of the price provider to change the active status for.

token

address

The address of the token to change the active status for.

active

bool

The new active status to set for the price provider.

updateMultiFinalPrices (0x1e5f85e6)

function updateMultiFinalPrices(address[] memory token) external

Calculates and update multiple the final TWAP prices of a token.

Parameters:

NameTypeDescription

token

address[]

The token array needs to update the price.

updatePrices (0x0aa9adbc)

function updatePrices(
    bytes32[] memory priceIds,
    bytes[] calldata updateData
) external payable

Perform a price update if the price is no longer valid.

Parameters:

NameTypeDescription

priceIds

bytes32[]

The priceIds need to update.

updateData

bytes[]

The updateData provided by PythNetwork.

getTokensUpdateFinalPrices (0xef290120)

function getTokensUpdateFinalPrices(
    address projectToken,
    address actualLendingToken,
    bool isBorrow
) external view returns (address[] memory tokens)

This function is called when performing operations using token prices, to determine which tokens will need to update their final price.

Parameters:

NameTypeDescription

projectToken

address

Address of the project token.

actualLendingToken

address

Address of the lending token.

isBorrow

bool

Whether getting the list of tokens for updateFinalPrices is related to the borrowing operation or not.

Return values:

NameTypeDescription

tokens

address[]

Array of tokens that need to update final price.

tokenPriceProvider (0xa33540f1)

function tokenPriceProvider(
    address token
) external view returns (address priceProvider)

Returns priceProvider address.

Parameters:

NameTypeDescription

token

address

The address of token which address of priceProvider is to return.

getPrice (0x41976e09)

function getPrice(
    address token
)
    external
    view
    returns (
        uint8 priceDecimals,
        uint32 timestamp,
        uint256 collateralPrice,
        uint256 capitalPrice
    )

Returns the most recent TWAP price of a token.

Parameters:

NameTypeDescription

token

address

The address of the token.

Return values:

NameTypeDescription

priceDecimals

uint8

The decimals of the price.

timestamp

uint32

The last updated timestamp of the price.

collateralPrice

uint256

The collateral price of the token.

capitalPrice

uint256

The capital price of the token.

getEvaluation (0x81fd01ea)

function getEvaluation(
    address token,
    uint256 tokenAmount
)
    external
    view
    returns (uint256 collateralEvaluation, uint256 capitalEvaluation)

returns the most TWAP price in USD evaluation of token by its tokenAmount

Parameters:

NameTypeDescription

token

address

the address of token to evaluate

tokenAmount

uint256

the amount of token to evaluate

Return values:

NameTypeDescription

collateralEvaluation

uint256

the USD evaluation of token by its tokenAmount in collateral price

capitalEvaluation

uint256

the USD evaluation of token by its tokenAmount in capital price

Last updated