ledger-core
RippleLikeTransactionBuilder.hpp
1 // AUTOGENERATED FILE - DO NOT MODIFY!
2 // This file generated by Djinni from ripple_like_wallet.djinni
3 
4 #ifndef DJINNI_GENERATED_RIPPLELIKETRANSACTIONBUILDER_HPP
5 #define DJINNI_GENERATED_RIPPLELIKETRANSACTIONBUILDER_HPP
6 
7 #include <cstdint>
8 #include <memory>
9 #include <string>
10 #include <vector>
11 #ifndef LIBCORE_EXPORT
12  #if defined(_MSC_VER)
13  #include <libcore_export.h>
14  #else
15  #define LIBCORE_EXPORT
16  #endif
17 #endif
18 
19 namespace ledger { namespace core { namespace api {
20 
21 class Amount;
22 class RippleLikeTransaction;
23 class RippleLikeTransactionCallback;
24 struct Currency;
25 struct RippleLikeMemo;
26 
27 class LIBCORE_EXPORT RippleLikeTransactionBuilder {
28 public:
29  virtual ~RippleLikeTransactionBuilder() {}
30 
37  virtual std::shared_ptr<RippleLikeTransactionBuilder> sendToAddress(const std::shared_ptr<Amount> & amount, const std::string & address) = 0;
38 
44  virtual std::shared_ptr<RippleLikeTransactionBuilder> wipeToAddress(const std::string & address) = 0;
45 
50  virtual std::shared_ptr<RippleLikeTransactionBuilder> setFees(const std::shared_ptr<Amount> & fees) = 0;
51 
56  virtual std::shared_ptr<RippleLikeTransactionBuilder> addMemo(const RippleLikeMemo & memo) = 0;
57 
59  virtual std::shared_ptr<RippleLikeTransactionBuilder> setDestinationTag(int64_t tag) = 0;
60 
62  virtual void build(const std::shared_ptr<RippleLikeTransactionCallback> & callback) = 0;
63 
68  virtual std::shared_ptr<RippleLikeTransactionBuilder> clone() = 0;
69 
71  virtual void reset() = 0;
72 
73  static std::shared_ptr<RippleLikeTransaction> parseRawUnsignedTransaction(const Currency & currency, const std::vector<uint8_t> & rawTransaction);
74 
75  static std::shared_ptr<RippleLikeTransaction> parseRawSignedTransaction(const Currency & currency, const std::vector<uint8_t> & rawTransaction);
76 };
77 
78 } } } // namespace ledger::core::api
79 #endif //DJINNI_GENERATED_RIPPLELIKETRANSACTIONBUILDER_HPP
Definition: RippleLikeTransactionBuilder.hpp:27
Definition: Currency.hpp:23
Definition: Account.cpp:8
Definition: RippleLikeMemo.hpp:18