6 #ifndef CONSENSUS_GATE_OBJECT_HPP 7 #define CONSENSUS_GATE_OBJECT_HPP 9 #include <boost/variant.hpp> 29 std::shared_ptr<const LedgerState> ledger_state)
30 : round(
std::move(round)), ledger_state(
std::move(ledger_state)) {}
35 std::shared_ptr<shared_model::interface::Block>
block;
38 std::shared_ptr<const LedgerState> ledger_state,
39 std::shared_ptr<shared_model::interface::Block> block)
41 block(
std::move(block)) {}
49 std::shared_ptr<const LedgerState> ledger_state,
52 public_keys(
std::move(public_keys)) {}
61 std::shared_ptr<const LedgerState> ledger_state,
65 std::move(ledger_state),
66 std::move(public_keys)),
67 hash(
std::move(hash)) {}
72 using Synchronizable::Synchronizable;
77 using Synchronizable::Synchronizable;
82 using Synchronizable::Synchronizable;
87 using Synchronizable::Synchronizable;
107 #endif // CONSENSUS_GATE_OBJECT_HPP round.block_round > ledger_state->top_block_info.height + 1
Definition: gate_object.hpp:86
Current pair is valid.
Definition: gate_object.hpp:34
consensus::Round round
Definition: gate_object.hpp:25
VoteOther(consensus::Round round, std::shared_ptr< const LedgerState > ledger_state, shared_model::interface::types::PublicKeyCollectionType public_keys, shared_model::interface::types::HashType hash)
Definition: gate_object.hpp:59
Network votes for another pair and round.
Definition: gate_object.hpp:56
Definition: gate_object.hpp:24
shared_model::interface::types::PublicKeyCollectionType public_keys
Definition: gate_object.hpp:45
Synchronizable(consensus::Round round, std::shared_ptr< const LedgerState > ledger_state, shared_model::interface::types::PublicKeyCollectionType public_keys)
Definition: gate_object.hpp:47
Agreement on <None, None>
Definition: gate_object.hpp:81
std::vector< std::string > PublicKeyCollectionType
Type of public keys' collection.
Definition: types.hpp:52
Definition: gate_object.hpp:44
std::shared_ptr< shared_model::interface::Block > block
Definition: gate_object.hpp:35
PairValid(consensus::Round round, std::shared_ptr< const LedgerState > ledger_state, std::shared_ptr< shared_model::interface::Block > block)
Definition: gate_object.hpp:37
Definition: block_query.hpp:15
BaseGateObject(consensus::Round round, std::shared_ptr< const LedgerState > ledger_state)
Definition: gate_object.hpp:28
shared_model::interface::types::HashType hash
Definition: gate_object.hpp:57
Reject on proposal.
Definition: gate_object.hpp:71
Definition: command_executor.hpp:12
std::shared_ptr< const LedgerState > ledger_state
Definition: gate_object.hpp:26
boost::variant< PairValid, VoteOther, ProposalReject, BlockReject, AgreementOnNone, Future > GateObject
Definition: gate_object.hpp:95
Reject on block.
Definition: gate_object.hpp:76