InceptionVaultFactory
This contract is responsible for deploying and initializing the 3 Inception Vault contracts. For gas efficiency the deployment is done using the OpenZeppelin Clones library.
Write Methods
cloneInceptionVault(IInceptionVaultsCore.VaultConfig calldata _vaultConfig, IERC20 _inceptionCollateral, address _inceptionVaultPriceFeed, address _assetOracle)
cloneInceptionVault(IInceptionVaultsCore.VaultConfig calldata _vaultConfig, IERC20 _inceptionCollateral, address _inceptionVaultPriceFeed, address _assetOracle)
Clones and initializes all 3 Inception Vault contracts :
Requirements :
The
_inceptionCollateral
cannot be set toaddress(0)
The
_inceptionPriceFeed
cannot be set toaddress(0)
If the
_inceptionVaultPriceFeed
is a custom price feed then the provided_assetOracle
cannot beaddress(0)
If the
_inceptionVaultPriceFeed
is not a custom price feed then the provided_assetOracle
must beaddress(0)
_vaultConfig
struct
VaultConfig
struct with all inception vault configuration parameters
_inceptionCollateral
IERC20
The address of the ERC20 token that will be set as inceptionCollateral
_inceptionVaultPriceFeed
address
The address of the InceptionVaultPriceFeed
to be used for the inception vault
_assetOracle
address
The address of the oracle of the inception vault collateral
addPriceFeed(address _address)
addPriceFeed(address _address)
Adds a new standard price feed to be used for inception vaults deployments.
Requirements :
Can only be called by the contract owner which is set to the DAO multisig
_address
address
The address of the new standard price feed
View Methods
a()
a()
Returns the AddressProvider
address.
debtNotifier()
debtNotifier()
Returns the DebtNotifier
address.
weth()
weth()
Returns the WETH
address.
mimo()
mimo()
Returns the MIMO
address.
adminInceptionVaultBase()
adminInceptionVaultBase()
Returns the AdminInceptionVault
implementation contract address.
inceptionVaultsCoreBase()
inceptionVaultsCoreBase()
Returns the InceptionVaultsCore
implementation contract address.
inceptionVaultsDataProviderBase()
inceptionVaultsDataProviderBase()
Returns the InceptionVaultsDataProvider
implementation contract address.
getInceptionVaultCount
()
getInceptionVaultCount
()
Returns the number of inception vaults deployed.
getPriceFeedCount()
getPriceFeedCount()
Returns the number of standard price feeds available.
getInceptionVault(uint256 _id)
getInceptionVault(uint256 _id)
Call Params
_id
uint256
The id of the queried inception vault
Return Values
NA
struct
InceptionVault
struct containing all inception vault contract addresses
InceptionVault
isCustomPriceFeed
bool
true
if the set price feed is a custom one false
if not
adminInceptionVault
IAdminInceptionVault
AdminInceptionVault
address
inceptionVaultsCore
IInceptionVaultsCore
InceptionVaultsCore
address
inceptionVaultsDataProvider
IInceptionVaultsDataProvider
InceptionVaultsDataProvider
address
inceptionVaultPriceFeed
IInceptionVaultPriceFeed
InceptionVaultPriceFeed
address
getPriceFeed(uint256 _id)
getPriceFeed(uint256 _id)
Call Params
_id
uint256
The id of the queried inception vault
Return Params
NA
address
InceptionVaultPrice
address
getPriceFeedId(address _priceFeed)
getPriceFeedId(address _priceFeed)
Call Params
_priceFeed
address
InceptionVaultPriceFeed
address
Returned Values
NA
uint256
InceptionVaultPriceFeed
id
Last updated