veriblock-pop-cpp
C++11 Libraries for leveraging VeriBlock Proof-Of-Proof blockchain technology.
|
Defines config for POP payouts. More...
Definition at line 24 of file alt_chain_params.hpp.
#include <alt_chain_params.hpp>
Public Member Functions | |
double | startOfSlope () const noexcept |
we start decreasing rewards after this score More... | |
double | slopeNormal () const noexcept |
we decrease reward coefficient for this value for each additional score point above startOfDecreasingLine More... | |
double | slopeKeystone () const noexcept |
slope for keystone rounds More... | |
uint32_t | keystoneRound () const noexcept |
among all rounds, this number represents round for keystone blocks. More... | |
uint32_t | payoutRounds () const noexcept |
total number of payout rounds. More... | |
uint32_t | flatScoreRound () const noexcept |
we use this round number to pay flat reward (does not depend on pop difficulty) More... | |
bool | useFlatScoreRound () const noexcept |
should we use flat rewards at all More... | |
const std::vector< double > & | roundRatios () const noexcept |
we have these payout modifiers for different rounds. More... | |
double | maxScoreThresholdNormal () const noexcept |
limit block score to this value More... | |
double | maxScoreThresholdKeystone () const noexcept |
limit block with keystones score to this value More... | |
uint32_t | difficultyAveragingInterval () const noexcept |
collect this amount of blocks BEFORE the block to calculate pop difficulty More... | |
const std::vector< double > & | relativeScoreLookupTable () const noexcept |
reward score table we score each VeriBlock and lower the reward for late blocks More... | |
int32_t | getPopPayoutDelay () const noexcept |
number of blocks in ALT between endorsed block and payout block More... | |
Public Attributes | |
double | mStartOfSlope = 1.0 |
double | mSlopeNormal = 0.2 |
double | mSlopeKeystone = 0.21325 |
uint32_t | mKeystoneRound = 3 |
uint32_t | mPayoutRounds = 4 |
uint32_t | mFlatScoreRound = 2 |
bool | mUseFlatScoreRound = true |
double | mMaxScoreThresholdNormal = 2.0 |
double | mMaxScoreThresholdKeystone = 3.0 |
uint32_t | mDifficultyAveragingInterval = 50 |
int32_t | mPopPayoutDelay = 50 |
std::vector< double > | mRoundRatios {0.97, 1.03, 1.07, 3.00} |
std::vector< double > | mLookupTable |
|
inlinenoexcept |
Definition at line 67 of file alt_chain_params.hpp.
|
inlinenoexcept |
Definition at line 45 of file alt_chain_params.hpp.
|
inlinenoexcept |
Definition at line 78 of file alt_chain_params.hpp.
|
inlinenoexcept |
we use this round number to detect keystones.
Definition at line 37 of file alt_chain_params.hpp.
|
inlinenoexcept |
Definition at line 62 of file alt_chain_params.hpp.
|
inlinenoexcept |
Definition at line 57 of file alt_chain_params.hpp.
|
inlinenoexcept |
we have this number of rounds eg rounds 0, 1, 2, 3, total is 4
Definition at line 41 of file alt_chain_params.hpp.
|
inlinenoexcept |
Definition at line 73 of file alt_chain_params.hpp.
|
inlinenoexcept |
Keystone round has the highest multiplier
Definition at line 52 of file alt_chain_params.hpp.
|
inlinenoexcept |
Definition at line 33 of file alt_chain_params.hpp.
|
inlinenoexcept |
Definition at line 30 of file alt_chain_params.hpp.
|
inlinenoexcept |
Definition at line 26 of file alt_chain_params.hpp.
|
inlinenoexcept |
Definition at line 48 of file alt_chain_params.hpp.
uint32_t altintegration::PopPayoutsParams::mDifficultyAveragingInterval = 50 |
Definition at line 91 of file alt_chain_params.hpp.
uint32_t altintegration::PopPayoutsParams::mFlatScoreRound = 2 |
Definition at line 87 of file alt_chain_params.hpp.
uint32_t altintegration::PopPayoutsParams::mKeystoneRound = 3 |
Definition at line 85 of file alt_chain_params.hpp.
std::vector<double> altintegration::PopPayoutsParams::mLookupTable |
Definition at line 96 of file alt_chain_params.hpp.
double altintegration::PopPayoutsParams::mMaxScoreThresholdKeystone = 3.0 |
Definition at line 90 of file alt_chain_params.hpp.
double altintegration::PopPayoutsParams::mMaxScoreThresholdNormal = 2.0 |
Definition at line 89 of file alt_chain_params.hpp.
uint32_t altintegration::PopPayoutsParams::mPayoutRounds = 4 |
Definition at line 86 of file alt_chain_params.hpp.
int32_t altintegration::PopPayoutsParams::mPopPayoutDelay = 50 |
Definition at line 92 of file alt_chain_params.hpp.
std::vector<double> altintegration::PopPayoutsParams::mRoundRatios {0.97, 1.03, 1.07, 3.00} |
Definition at line 94 of file alt_chain_params.hpp.
double altintegration::PopPayoutsParams::mSlopeKeystone = 0.21325 |
Definition at line 84 of file alt_chain_params.hpp.
double altintegration::PopPayoutsParams::mSlopeNormal = 0.2 |
Definition at line 83 of file alt_chain_params.hpp.
double altintegration::PopPayoutsParams::mStartOfSlope = 1.0 |
Definition at line 82 of file alt_chain_params.hpp.
bool altintegration::PopPayoutsParams::mUseFlatScoreRound = true |
Definition at line 88 of file alt_chain_params.hpp.