hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
block_creator_common.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_BLOCK_CREATOR_COMMON_HPP
7 #define IROHA_BLOCK_CREATOR_COMMON_HPP
8 
9 #include <memory>
10 
11 #include <boost/optional.hpp>
12 #include "consensus/round.hpp"
13 
14 namespace shared_model {
15  namespace interface {
16  class Block;
17  class Proposal;
18  } // namespace interface
19 } // namespace shared_model
20 
21 namespace iroha {
22  namespace simulator {
23 
24  struct RoundData {
25  std::shared_ptr<shared_model::interface::Proposal> proposal;
26  std::shared_ptr<shared_model::interface::Block> block;
27  };
28 
34  boost::optional<RoundData> round_data;
36  };
37 
38  std::shared_ptr<shared_model::interface::Block> getBlockUnsafe(
39  const BlockCreatorEvent &event);
40 
41  } // namespace simulator
42 } // namespace iroha
43 
44 #endif // IROHA_BLOCK_CREATOR_COMMON_HPP
Definition: block_creator_common.hpp:33
std::shared_ptr< shared_model::interface::Block > block
Definition: block_creator_common.hpp:26
Definition: block_creator_common.hpp:24
std::shared_ptr< shared_model::interface::Proposal > proposal
Definition: block_creator_common.hpp:25
consensus::Round round
Definition: block_creator_common.hpp:35
Definition: block_query.hpp:16
std::shared_ptr< shared_model::interface::Block > getBlockUnsafe(const BlockCreatorEvent &event)
Definition: block_creator_common.cpp:11
boost::optional< RoundData > round_data
Definition: block_creator_common.hpp:34
Definition: round.hpp:31
Definition: command_executor.hpp:12