golos.emitensures the generation of new tokens and their distribution among reward pools in accordance with settings the parameters of the smart contract.
golos.emitare emitted according to the algorithm specified in the parameter settings. New tokens are distributed between smart contract reward pools, such as
golos.ctrlin accordance with the settings of the
golos.emitsmart contract parameters. Funds from the vesting pool are accrued to the owners of vesting, from the publication pool — to the authors and curators of posts.
inflation_rate— inflation parameters that determine the number of new tokens emitted for a certain period of time. Tokens that are already in circulation are not taken into account when calculating this indicator. The
inflation_ratevalue is a structure containing the fields:
start— initial inflation rate;
stop— minimum inflation rate;
narrowing— the rate of decrease in the current percentage of inflation (shows the number of seconds during which the
startparameter value decreases by 0.01%).
reward_pools— reward pool vector. For each pool, the parameter value has the form of a structure containing fields:
namepool. This value is set to an accuracy of 0.01 percent. This parameter takes the values from 0 to 10000. The value 10000 corresponds 100 %.
emit_token— the type of token that is being issued:
emit_interval— emission interval parameter:
stopparameter, tokens continue to be emitted, but remain unchanged.
Restrictions: The total percentage of all tokens distributed in pools must be no more than 100 (or 10 000 tokens). For example, 25 (pool of vesting) + 25 (pool of publications) + 49 (some other pool) + 0 (control pool) = 99 (%).
setparamsaction is used to set the parameters of the smart contract (to configure the smart contract). The action has the following form:
params— a list of parameters to be set.
validateprmsaction is internal and called by the smart contract
golos.emit. The action is used to check the parameters for validity, controls the presence of errors in them. The action has the following form:
params— a list of parameters to be check.
startaction is used to start the emission process of tokens of a certain type in accordance with the selected algorithm. The action has the following form:
startaction, it is required to configure the smart contract parameters, as well as the reward pools.
stopaction is used to temporarily or completely stop the token emission process, due to various reasons, including the need to change the parameters of the smart contract (for example, to reconfigure reward pools). The action has the following form:
emitaction is internal and its call is not available to a user. It is used to emit tokens in the amount determined by the selected algorithm. The action has the following form:
emitaction is called periodically at regular intervals. Each call determines the amount of funds to accrue for each reward pool. Below is the diagram showing the emit of tokens by the
golos.emitsmart contract. This diagram also shows the moments of calling the actions
startaction. Tokens emission stopped after the
stopcalls. When the threshold value n1 was reached, tokens emission remained at the minimum acceptable level. After the
emitcalls, the amount of tokens emission is displayed, which should be distributed among the award pools of smart contracts.