Skip to main content

IEmissionManager

Git Source

Functions

execute

calculate and execute sale, if applicable, once per day (every 3 beats)

this function is restricted to the heart role and is called on each heart beat

if the contract is not active, the function does nothing

function execute() external;

Events

SaleCreated

event SaleCreated(uint256 marketID, uint256 saleAmount);

BackingUpdated

event BackingUpdated(uint256 newBacking, uint256 supplyAdded, uint256 reservesAdded);

BaseRateChanged

Emitted when the base emission rate is changed

event BaseRateChanged(uint256 changeBy, uint48 forNumBeats, bool add);

MinimumPremiumChanged

Emitted when the minimum premium is changed

event MinimumPremiumChanged(uint256 newMinimumPremium);

VestingPeriodChanged

Emitted when the vesting period is changed

event VestingPeriodChanged(uint48 newVestingPeriod);

BackingChanged

Emitted when the backing is changed This differs from BackingUpdated in that it is emitted when the backing is changed directly by governance

event BackingChanged(uint256 newBacking);

RestartTimeframeChanged

Emitted when the restart timeframe is changed

event RestartTimeframeChanged(uint48 newRestartTimeframe);

BondContractsSet

Emitted when the bond contracts are set

event BondContractsSet(address auctioneer, address teller);

Activated

Emitted when the contract is activated

event Activated();

Deactivated

Emitted when the contract is deactivated

event Deactivated();

Errors

OnlyTeller

error OnlyTeller();

InvalidMarket

error InvalidMarket();

InvalidCallback

error InvalidCallback();

InvalidParam

error InvalidParam(string parameter);

CannotRestartYet

error CannotRestartYet(uint48 availableAt);

RestartTimeframePassed

error RestartTimeframePassed();

NotActive

error NotActive();

AlreadyActive

error AlreadyActive();

Structs

BaseRateChange

struct BaseRateChange {
uint256 changeBy;
uint48 daysLeft;
bool addition;
}