veriblock-pop-cpp
C++11 Libraries for leveraging VeriBlock Proof-Of-Proof blockchain technology.
poprewards_calculator.hpp
1
// Copyright (c) 2019-2022 Xenios SEZC
2
// https://www.veriblock.org
3
// Distributed under the MIT software license, see the accompanying
4
// file LICENSE or http://www.opensource.org/licenses/mit-license.php.
5
6
#ifndef ALT_INTEGRATION_INCLUDE_VERIBLOCK_POPREWARDS_CALCULATOR_HPP_
7
#define ALT_INTEGRATION_INCLUDE_VERIBLOCK_POPREWARDS_CALCULATOR_HPP_
8
9
#include <veriblock/pop/blockchain/alt_block_tree.hpp>
10
#include <veriblock/pop/rewards/poprewards_bigdecimal.hpp>
11
12
namespace
altintegration
{
13
17
struct
PopRewardsCalculator
{
18
virtual
~PopRewardsCalculator
() =
default
;
19
30
virtual
bool
getPopPayout
(
const
AltBlockTree::hash_t& tip,
31
PopPayouts
& rewards,
32
ValidationState
& state) = 0;
33
};
34
35
}
// namespace altintegration
36
37
#endif
// ALT_INTEGRATION_INCLUDE_VERIBLOCK_POPREWARDS_CALCULATOR_HPP_
altintegration::ValidationState
Class that is used for storing validation state.
Definition:
validation_state.hpp:28
altintegration
Defines logging helpers.
Definition:
block.hpp:14
altintegration::PopPayouts
A container for Pop payouts information.
Definition:
pop_payouts.hpp:28
altintegration::PopRewardsCalculator
Definition:
poprewards_calculator.hpp:17
altintegration::PopRewardsCalculator::getPopPayout
virtual bool getPopPayout(const AltBlockTree::hash_t &tip, PopPayouts &rewards, ValidationState &state)=0
Calculate POP rewards for miners.