MachineShareOracleFactory
Inherits: AccessManagedUpgradeable, IMachineShareOracleFactory
Constants
MachineShareOracleFactoryStorageLocation
bytes32 private constant MachineShareOracleFactoryStorageLocation =
0x566402f20de4969fde1c09f6ddbae1c0f5590a4d61e4a12b6deb88f69bf7c700;Functions
_getMachineShareOracleFactoryStorage
function _getMachineShareOracleFactoryStorage() internal pure returns (MachineShareOracleFactoryStorage storage $);Returns
| Name | Type | Description |
|---|---|---|
| $ | MachineShareOracleFactoryStorage |
constructor
constructor();initialize
function initialize(address _machineShareOracleBeacon, address _initialAuthority) external initializer;Parameters
| Name | Type | Description |
|---|---|---|
| _machineShareOracleBeacon | address | |
| _initialAuthority | address |
machineShareOracleBeacon
Address of the machine share oracle beacon.
function machineShareOracleBeacon() external view override returns (address);Returns
| Name | Type | Description |
|---|---|---|
| <none> | address |
isMachineShareOracle
Address => Whether this is an oracle deployed by this factory.
function isMachineShareOracle(address oracle) external view override returns (bool);Parameters
| Name | Type | Description |
|---|---|---|
| oracle | address | The oracle address to check. |
Returns
| Name | Type | Description |
|---|---|---|
| <none> | bool |
createMachineShareOracle
Creates an oracle for the given machine share.
function createMachineShareOracle(address shareOwner, uint8 decimals)
external
override
restricted
returns (address);Parameters
| Name | Type | Description |
|---|---|---|
| shareOwner | address | The current owner contract of the share (machine or pre-deposit vault). |
| decimals | uint8 | Decimals to use for the oracle price. |
Returns
| Name | Type | Description |
|---|---|---|
| <none> | address |
setMachineShareOracleBeacon
Sets the machine share oracle beacon address.
function setMachineShareOracleBeacon(address _machineShareOracleBeacon) external override restricted;Parameters
| Name | Type | Description |
|---|---|---|
| _machineShareOracleBeacon | address | The address of the machine share oracle beacon. |
Structs
MachineShareOracleFactoryStorage
Note:
- storage-location: erc7201:makina.storage.MachineShareOracleFactory
struct MachineShareOracleFactoryStorage {
mapping(address oracle => bool isOracle) _isMachineShareOracle;
address _machineShareOracleBeacon;
}Properties
| Name | Type | Description |
|---|---|---|
| _isMachineShareOracle | mapping(address oracle => bool isOracle) | |
| _machineShareOracleBeacon | address |