hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
ordering_gate_common.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_ORDERING_GATE_COMMON_HPP
7 #define IROHA_ORDERING_GATE_COMMON_HPP
8 
9 #include <memory>
10 
11 #include <boost/optional.hpp>
13 #include "consensus/round.hpp"
14 
15 namespace shared_model {
16  namespace interface {
17  class Proposal;
18  } // namespace interface
19 } // namespace shared_model
20 
21 namespace iroha {
22  namespace network {
23 
27  struct OrderingEvent {
28  boost::optional<std::shared_ptr<const shared_model::interface::Proposal>>
31  std::shared_ptr<const LedgerState> ledger_state;
32  };
33 
34  std::shared_ptr<const shared_model::interface::Proposal> getProposalUnsafe(
35  const OrderingEvent &event);
36 
37  } // namespace network
38 } // namespace iroha
39 
40 #endif // IROHA_ORDERING_GATE_COMMON_HPP
std::shared_ptr< const shared_model::interface::Proposal > getProposalUnsafe(const OrderingEvent &event)
Definition: ordering_gate_common.cpp:11
consensus::Round round
Definition: ordering_gate_common.hpp:30
boost::optional< std::shared_ptr< const shared_model::interface::Proposal > > proposal
Definition: ordering_gate_common.hpp:29
std::shared_ptr< const LedgerState > ledger_state
Definition: ordering_gate_common.hpp:31
Definition: block_query.hpp:14
Definition: ordering_gate_common.hpp:27
Definition: round.hpp:31
Definition: command_executor.hpp:12