6 #ifndef IROHA_CONSENSUS_SUPERMAJORITY_CHECKER_HPP 7 #define IROHA_CONSENSUS_SUPERMAJORITY_CHECKER_HPP 12 #include <boost/range/any_range.hpp> 34 boost::forward_traversal_tag,
49 virtual bool hasSupermajority(PeersNumberType current,
50 PeersNumberType all)
const = 0;
58 virtual bool isTolerated(PeersNumberType number,
59 PeersNumberType all)
const = 0;
67 virtual bool canHaveSupermajority(
const VoteGroups &votes,
68 PeersNumberType all)
const = 0;
79 #endif // IROHA_CONSENSUS_SUPERMAJORITY_CHECKER_HPP
Definition: block_query.hpp:15
boost::any_range< PeersNumberType, boost::forward_traversal_tag, const PeersNumberType, std::ptrdiff_t > VoteGroups
Definition: supermajority_checker.hpp:39
size_t PeersNumberType
Type for number of peers in round.
Definition: yac_types.hpp:16
ConsistencyModel
Definition: consistency_model.hpp:13
std::unique_ptr< SupermajorityChecker > getSupermajorityChecker(ConsistencyModel c)
Get a SupermajorityChecker for the given consistency model.
Definition: supermajority_checker_getter.cpp:15
Definition: command_executor.hpp:12
Definition: supermajority_checker.hpp:31