veriblock-pop-cpp
C++11 Libraries for leveraging VeriBlock Proof-Of-Proof blockchain technology.
altintegration::PopRewardsParams Struct Reference

A container for PoP rewards params. More...

Detailed Description

Definition at line 36 of file poprewards_params.hpp.

#include <poprewards_params.hpp>

+ Collaboration diagram for altintegration::PopRewardsParams:

Public Member Functions

virtual uint32_t keystoneRound () const noexcept
 
virtual uint32_t payoutRounds () const noexcept
 
virtual uint32_t flatScoreRound () const noexcept
 
virtual bool flatScoreRoundUse () const noexcept
 
virtual std::vector< PopRewardsBigDecimal > roundRatios () const noexcept
 
virtual PopRewardsBigDecimal maxScoreThresholdNormal () const noexcept
 
virtual PopRewardsBigDecimal maxScoreThresholdKeystone () const noexcept
 
virtual uint32_t difficultyAveragingInterval () const noexcept
 
virtual uint32_t rewardSettlementInterval () const noexcept
 
virtual const PopRewardsCurveParamsgetCurveParams () const noexcept
 
virtual std::vector< PopRewardsBigDecimal > relativeScoreLookupTable () const noexcept
 

Protected Attributes

PopRewardsCurveParams curveParms {}
 

Member Function Documentation

◆ difficultyAveragingInterval()

virtual uint32_t altintegration::PopRewardsParams::difficultyAveragingInterval ( ) const
inlinevirtualnoexcept

Definition at line 59 of file poprewards_params.hpp.

59{ return 50; }

◆ flatScoreRound()

virtual uint32_t altintegration::PopRewardsParams::flatScoreRound ( ) const
inlinevirtualnoexcept

Definition at line 43 of file poprewards_params.hpp.

43{ return 2; }

◆ flatScoreRoundUse()

virtual bool altintegration::PopRewardsParams::flatScoreRoundUse ( ) const
inlinevirtualnoexcept

Definition at line 45 of file poprewards_params.hpp.

45{ return true; }

◆ getCurveParams()

virtual const PopRewardsCurveParams & altintegration::PopRewardsParams::getCurveParams ( ) const
inlinevirtualnoexcept

Definition at line 63 of file poprewards_params.hpp.

63 {
64 return curveParms;
65 }

◆ keystoneRound()

virtual uint32_t altintegration::PopRewardsParams::keystoneRound ( ) const
inlinevirtualnoexcept

Definition at line 39 of file poprewards_params.hpp.

39{ return 3; }

◆ maxScoreThresholdKeystone()

virtual PopRewardsBigDecimal altintegration::PopRewardsParams::maxScoreThresholdKeystone ( ) const
inlinevirtualnoexcept

Definition at line 55 of file poprewards_params.hpp.

55 {
56 return 3.0;
57 }

◆ maxScoreThresholdNormal()

virtual PopRewardsBigDecimal altintegration::PopRewardsParams::maxScoreThresholdNormal ( ) const
inlinevirtualnoexcept

Definition at line 51 of file poprewards_params.hpp.

51 {
52 return 2.0;
53 }

◆ payoutRounds()

virtual uint32_t altintegration::PopRewardsParams::payoutRounds ( ) const
inlinevirtualnoexcept

Definition at line 41 of file poprewards_params.hpp.

41{ return 4; }

◆ relativeScoreLookupTable()

virtual std::vector< PopRewardsBigDecimal > altintegration::PopRewardsParams::relativeScoreLookupTable ( ) const
inlinevirtualnoexcept

Definition at line 69 of file poprewards_params.hpp.

70 {
71 return {1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
72 1.00000000, 1.00000000, 1.00000000, 1.00000000, 1.00000000,
73 1.00000000, 1.00000000, 0.48296816, 0.31551694, 0.23325824,
74 0.18453616, 0.15238463, 0.12961255, 0.11265630, 0.09955094,
75 0.08912509, 0.08063761, 0.07359692, 0.06766428, 0.06259873,
76 0.05822428, 0.05440941, 0.05105386, 0.04807993, 0.04542644,
77 0.04304458, 0.04089495, 0.03894540, 0.03716941, 0.03554497,
78 0.03405359, 0.03267969, 0.03141000, 0.03023319, 0.02913950,
79 0.02812047, 0.02716878, 0.02627801, 0.02544253, 0.02465739,
80 0.02391820, 0.02322107, 0.02256255, 0.02193952, 0.02134922};
81 }

◆ rewardSettlementInterval()

virtual uint32_t altintegration::PopRewardsParams::rewardSettlementInterval ( ) const
inlinevirtualnoexcept

Definition at line 61 of file poprewards_params.hpp.

61{ return 400; }

◆ roundRatios()

virtual std::vector< PopRewardsBigDecimal > altintegration::PopRewardsParams::roundRatios ( ) const
inlinevirtualnoexcept

Definition at line 47 of file poprewards_params.hpp.

47 {
48 return {0.97, 1.03, 1.07, 3.00};
49 }

Member Data Documentation

◆ curveParms

PopRewardsCurveParams altintegration::PopRewardsParams::curveParms {}
protected

Definition at line 84 of file poprewards_params.hpp.


The documentation for this struct was generated from the following file: