hyperledger/iroha
Iroha - A simple, decentralized ledger http://iroha.tech
transaction.hpp
Go to the documentation of this file.
1 
6 #ifndef IROHA_TRANSACTION_HPP
7 #define IROHA_TRANSACTION_HPP
8 
9 #include <memory>
10 #include <string>
11 #include <vector>
12 
13 #include "crypto/hash_types.hpp"
14 #include "datetime/time.hpp"
15 #include "model/command.hpp"
16 #include "model/signature.hpp"
17 
18 namespace iroha {
19  namespace model {
20 
26  struct Transaction {
31  std::vector<Signature> signatures{};
32 
33  using SignaturesType = decltype(signatures);
34 
35  using TimeType = ts64_t;
36 
42 
47  std::string creator_account_id{};
48 
54  uint8_t quorum = 1;
55 
61  std::vector<std::shared_ptr<Command>> commands{};
62 
63  using CommandsType = decltype(commands);
64 
65  bool operator==(const Transaction &rhs) const;
66  bool operator!=(const Transaction &rhs) const;
67  };
68  } // namespace model
69 } // namespace iroha
70 #endif // IROHA_TRANSACTION_HPP
TimeType created_ts
Definition: transaction.hpp:41
std::string creator_account_id
Definition: transaction.hpp:47
decltype(commands) CommandsType
Definition: transaction.hpp:63
Definition: transaction.hpp:26
bool operator==(const Transaction &rhs) const
Definition: model_operators.cpp:198
std::vector< std::shared_ptr< Command > > commands
Definition: transaction.hpp:61
uint8_t quorum
Definition: transaction.hpp:54
uint64_t ts64_t
Definition: time.hpp:14
Definition: block_query.hpp:14
decltype(signatures) SignaturesType
Definition: transaction.hpp:33
bool operator!=(const Transaction &rhs) const
Definition: model_operators.cpp:42
std::vector< Signature > signatures
Definition: transaction.hpp:31
ts64_t TimeType
Definition: transaction.hpp:35