6 #ifndef IROHA_YAC_GATE_IMPL_HPP 7 #define IROHA_YAC_GATE_IMPL_HPP 13 #include <rxcpp/rx-lite.hpp> 39 std::shared_ptr<HashGate> hash_gate,
40 std::shared_ptr<YacPeerOrderer> orderer,
41 boost::optional<ClusterOrdering> alternative_order,
42 std::shared_ptr<YacHashProvider> hash_provider,
43 std::shared_ptr<simulator::BlockCreator> block_creator,
44 std::shared_ptr<consensus::ConsensusResultCache>
45 consensus_result_cache,
52 rxcpp::observable<GateObject> onOutcome()
override;
63 rxcpp::observable<GateObject> handleCommit(
const CommitMessage &msg);
64 rxcpp::observable<GateObject> handleReject(
const RejectMessage &msg);
65 rxcpp::observable<GateObject> handleFuture(
const FutureMessage &msg);
69 boost::optional<std::shared_ptr<shared_model::interface::Block>>
72 boost::optional<ClusterOrdering> alternative_order_;
73 std::shared_ptr<const LedgerState> current_ledger_state_;
75 rxcpp::observable<GateObject> published_events_;
76 std::shared_ptr<YacPeerOrderer> orderer_;
77 std::shared_ptr<YacHashProvider> hash_provider_;
78 std::shared_ptr<simulator::BlockCreator> block_creator_;
79 std::shared_ptr<consensus::ConsensusResultCache>
80 consensus_result_cache_;
81 std::shared_ptr<HashGate> hash_gate_;
88 #endif // IROHA_YAC_GATE_IMPL_HPP Definition: block_creator_common.hpp:34
Definition: yac_hash_provider.hpp:30
ConsensusOutcomeType
Definition: consensus_outcome_type.hpp:12
std::shared_ptr< Logger > LoggerPtr
Definition: logger_fwd.hpp:22
Definition: block_loader.hpp:20
Definition: block_query.hpp:15
Definition: consensus_outcome_delay.hpp:16
Definition: yac_gate.hpp:21
Definition: outcome_messages.hpp:73
Definition: outcome_messages.hpp:61
Definition: block_creator.hpp:22
Definition: outcome_messages.hpp:49
Definition: yac_gate_impl.hpp:36