hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
block_creator.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_BLOCK_CREATOR_HPP
7 #define IROHA_BLOCK_CREATOR_HPP
8 
9 #include <rxcpp/rx.hpp>
11 
12 namespace iroha {
13  namespace validation {
14  struct VerifiedProposalAndErrors;
15  }
16 
17  namespace simulator {
18 
22  class BlockCreator {
23  public:
27  virtual boost::optional<std::shared_ptr<shared_model::interface::Block>>
28  processVerifiedProposal(
29  const std::shared_ptr<validation::VerifiedProposalAndErrors>
30  &verified_proposal_and_errors) = 0;
31 
35  virtual rxcpp::observable<BlockCreatorEvent> onBlock() = 0;
36 
37  virtual ~BlockCreator() = default;
38  };
39  } // namespace simulator
40 } // namespace iroha
41 
42 #endif // IROHA_BLOCK_CREATOR_HPP
Definition: block_query.hpp:16
Definition: block_creator.hpp:22