hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
consensus_outcome_delay.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_CONSENSUS_OUTCOME_DELAY_HPP
7 #define IROHA_CONSENSUS_OUTCOME_DELAY_HPP
8 
9 #include <chrono>
10 #include <cstdint>
11 
13 
14 namespace iroha::consensus::yac {
15 
17  public:
18  ConsensusOutcomeDelay(std::chrono::milliseconds max_rounds_delay);
19 
20  std::chrono::milliseconds operator()(ConsensusOutcomeType type);
21 
22  private:
23  std::chrono::milliseconds const max_rounds_delay_;
24  std::chrono::milliseconds const delay_increment_;
25  std::chrono::milliseconds reject_delay_;
26  uint64_t const max_local_counter_;
27  uint64_t local_counter_;
28  };
29 
30 } // namespace iroha::consensus::yac
31 
32 #endif // IROHA_CONSENSUS_OUTCOME_DELAY_HPP
ConsensusOutcomeType
Definition: consensus_outcome_type.hpp:12
Definition: consensus_outcome_delay.hpp:16
std::chrono::milliseconds operator()(ConsensusOutcomeType type)
Definition: consensus_outcome_delay.cpp:22
ConsensusOutcomeDelay(std::chrono::milliseconds max_rounds_delay)
Definition: consensus_outcome_delay.cpp:13
Definition: cluster_order.hpp:18