6 #ifndef IROHA_CONSENSUS_SUPERMAJORITY_CHECKER_HPP 7 #define IROHA_CONSENSUS_SUPERMAJORITY_CHECKER_HPP 12 #include <boost/range/any_range.hpp> 29 boost::forward_traversal_tag,
44 virtual bool hasSupermajority(PeersNumberType current,
45 PeersNumberType all)
const = 0;
53 virtual bool isTolerated(PeersNumberType number,
54 PeersNumberType all)
const = 0;
62 virtual bool canHaveSupermajority(
const VoteGroups &votes,
63 PeersNumberType all)
const = 0;
71 #endif // IROHA_CONSENSUS_SUPERMAJORITY_CHECKER_HPP std::unique_ptr< SupermajorityChecker > getSupermajorityChecker(ConsistencyModel c)
Get a SupermajorityChecker for the given consistency model.
Definition: supermajority_checker_getter.cpp:14
boost::any_range< PeersNumberType, boost::forward_traversal_tag, const PeersNumberType, std::ptrdiff_t > VoteGroups
Definition: supermajority_checker.hpp:34
Definition: command_executor.hpp:14
size_t PeersNumberType
Type for number of peers in round.
Definition: yac_types.hpp:13
ConsistencyModel
Definition: consistency_model.hpp:10
Definition: supermajority_checker.hpp:26
Definition: cluster_order.hpp:16