ledger-core
BitcoinLikeInput.hpp
1 // AUTOGENERATED FILE - DO NOT MODIFY!
2 // This file generated by Djinni from bitcoin_like_wallet.djinni
3 
4 #ifndef DJINNI_GENERATED_BITCOINLIKEINPUT_HPP
5 #define DJINNI_GENERATED_BITCOINLIKEINPUT_HPP
6 
7 #include "../utils/optional.hpp"
8 #include <cstdint>
9 #include <memory>
10 #include <string>
11 #include <vector>
12 #ifndef LIBCORE_EXPORT
13  #if defined(_MSC_VER)
14  #include <libcore_export.h>
15  #else
16  #define LIBCORE_EXPORT
17  #endif
18 #endif
19 
20 namespace ledger { namespace core { namespace api {
21 
22 class Amount;
23 class BinaryCallback;
24 class BitcoinLikeOutput;
25 class BitcoinLikeScript;
26 class DerivationPath;
27 
29 class LIBCORE_EXPORT BitcoinLikeInput {
30 public:
31  virtual ~BitcoinLikeInput() {}
32 
34  virtual std::experimental::optional<std::string> getAddress() = 0;
35 
40  virtual std::vector<std::vector<uint8_t>> getPublicKeys() = 0;
41 
43  virtual std::vector<std::shared_ptr<DerivationPath>> getDerivationPath() = 0;
44 
49  virtual std::shared_ptr<Amount> getValue() = 0;
50 
55  virtual std::experimental::optional<std::string> getPreviousTxHash() = 0;
56 
61  virtual bool isCoinbase() = 0;
62 
67  virtual std::experimental::optional<std::string> getCoinbase() = 0;
68 
73  virtual std::experimental::optional<int32_t> getPreviousOutputIndex() = 0;
74 
81  virtual std::shared_ptr<BitcoinLikeOutput> getPreviousOuput() = 0;
82 
84  virtual std::vector<uint8_t> getScriptSig() = 0;
85 
87  virtual std::shared_ptr<BitcoinLikeScript> parseScriptSig() = 0;
88 
93  virtual void setScriptSig(const std::vector<uint8_t> & scriptSig) = 0;
94 
96  virtual void pushToScriptSig(const std::vector<uint8_t> & data) = 0;
97 
99  virtual void setSequence(int32_t sequence) = 0;
100 
102  virtual int64_t getSequence() = 0;
103 
105  virtual void getPreviousTransaction(const std::shared_ptr<BinaryCallback> & callback) = 0;
106 
108  virtual void setP2PKHSigScript(const std::vector<uint8_t> & signature) = 0;
109 };
110 
111 } } } // namespace ledger::core::api
112 #endif //DJINNI_GENERATED_BITCOINLIKEINPUT_HPP
Definition: BitcoinLikeInput.hpp:29
Definition: Account.cpp:8