55 #include "monero_wallet_model.h" 84 virtual void on_sync_progress(uint64_t height, uint64_t start_height, uint64_t end_height,
double percent_done,
const string& message) {}
140 throw runtime_error(
"set_daemon_connection() not supported");
149 throw runtime_error(
"set_daemon_connection() not supported");
158 throw runtime_error(
"get_daemon_connection() not supported");
167 throw runtime_error(
"is_connected() not supported");
176 throw runtime_error(
"is_daemon_synced() not supported");
185 throw runtime_error(
"is_daemon_trusted() not supported");
194 throw runtime_error(
"is_synced() not supported");
203 throw runtime_error(
"get_version() not supported");
212 throw runtime_error(
"get_path() not supported");
221 throw runtime_error(
"get_network_type() not supported");
230 throw runtime_error(
"get_mnemonic() not supported");
239 throw runtime_error(
"get_mnemonic_language() not supported");
248 throw runtime_error(
"get_public_view_key() not supported");
257 throw runtime_error(
"get_private_view_key() not supported");
266 throw runtime_error(
"get_public_spend_key() not supported");
275 throw runtime_error(
"get_private_spend_key() not supported");
284 return get_address(0, 0);
294 virtual string get_address(
const uint32_t account_idx,
const uint32_t subaddress_idx)
const {
295 throw runtime_error(
"get_address() not supported");
306 throw runtime_error(
"get_address_index() not supported");
317 throw runtime_error(
"get_integrated_address() not supported");
327 throw runtime_error(
"decode_integrated_address() not supported");
336 throw runtime_error(
"get_height() not supported");
345 throw runtime_error(
"get_restore_height() not supported");
354 throw runtime_error(
"set_restore_height() not supported");
363 throw runtime_error(
"get_daemon_height() not supported");
372 throw runtime_error(
"get_daemon_max_peer_height() not supported");
381 throw runtime_error(
"add_listener() not supported");
390 throw runtime_error(
"remove_listener() not supported");
397 throw runtime_error(
"get_listeners() not supported");
406 throw runtime_error(
"sync() not supported");
416 throw runtime_error(
"sync() not supported");
426 throw runtime_error(
"sync() not supported");
437 throw runtime_error(
"sync() not supported");
444 throw runtime_error(
"start_syncing() not supported");
451 throw runtime_error(
"stop_syncing() not supported");
464 throw runtime_error(
"rescan_spent() not supported");
475 throw runtime_error(
"rescan_blockchain() not supported");
491 throw runtime_error(
"get_balance() not supported");
501 throw runtime_error(
"get_balance() not supported");
511 virtual uint64_t
get_balance(uint32_t account_idx, uint32_t subaddress_idx)
const {
512 throw runtime_error(
"get_balance() not supported");
521 throw runtime_error(
"get_unlocked_balance() not supported");
531 throw runtime_error(
"get_unlocked_balance() not supported");
542 throw runtime_error(
"get_unlocked_balance() not supported");
551 return get_accounts(
false,
string(
""));
560 virtual vector<monero_account>
get_accounts(
bool include_subaddresses)
const {
561 return get_accounts(include_subaddresses,
"");
571 return get_accounts(
false, tag);
581 virtual vector<monero_account>
get_accounts(
bool include_subaddresses,
const string& tag)
const {
582 throw runtime_error(
"get_accounts() not supported");
592 return get_account(account_idx,
false);
603 throw runtime_error(
"get_account() not supported");
613 throw runtime_error(
"create_account() not supported");
623 return get_subaddresses(account_idx, vector<uint32_t>());
633 virtual vector<monero_subaddress>
get_subaddresses(
const uint32_t account_idx,
const vector<uint32_t>& subaddress_indices)
const {
634 throw runtime_error(
"get_subaddresses() not supported");
645 throw runtime_error(
"get_subaddress() not supported");
656 throw runtime_error(
"create_subaddress() not supported");
673 virtual vector<shared_ptr<monero_tx_wallet>>
get_txs()
const {
674 throw runtime_error(
"get_txs() not supported");
698 throw runtime_error(
"get_txs(query) not supported");
709 virtual vector<shared_ptr<monero_tx_wallet>>
get_txs(
const monero_tx_query& query, vector<string>& missing_tx_hashes)
const {
710 throw runtime_error(
"get_txs(query, missing_tx_hashes) not supported");
769 throw runtime_error(
"get_transfers() not supported");
794 throw runtime_error(
"get_outputs() not supported");
803 throw runtime_error(
"get_outputs_hex() not supported");
813 throw runtime_error(
"import_outputs_hex() not supported");
822 throw runtime_error(
"get_key_images() not supported");
831 virtual shared_ptr<monero_key_image_import_result>
import_key_images(
const vector<shared_ptr<monero_key_image>>& key_images) {
832 throw runtime_error(
"import_key_images() not supported");
850 throw runtime_error(
"create_tx() not supported");
863 throw runtime_error(
"create_tx() not supported");
877 throw runtime_error(
"create_tx() not supported");
888 throw runtime_error(
"create_txs() not supported");
897 virtual string relay_tx(
const string& tx_metadata) {
898 throw runtime_error(
"relay_tx() not supported");
908 throw runtime_error(
"relay_tx() not supported");
917 virtual vector<string>
relay_txs(
const vector<string>& tx_metadatas) {
918 throw runtime_error(
"relay_txs() not supported");
927 virtual vector<string>
relay_txs(
const vector<shared_ptr<monero_tx_wallet>>& txs) {
928 throw runtime_error(
"relay_txs() not supported");
939 throw runtime_error(
"send() not supported");
952 throw runtime_error(
"send() not supported");
966 throw runtime_error(
"send() not supported");
977 throw runtime_error(
"send_split() not supported");
1010 throw runtime_error(
"sweep_unlocked() not supported");
1020 throw runtime_error(
"sweep_output() not supported");
1093 throw runtime_error(
"sweep_dust() not supported");
1103 throw runtime_error(
"parse_tx_set() not supported");
1112 virtual string sign(
const string& msg)
const {
1113 throw runtime_error(
"sign() not supported");
1124 virtual bool verify(
const string& msg,
const string& address,
const string& signature)
const {
1125 throw runtime_error(
"verify() not supported");
1135 throw runtime_error(
"get_tx_key() not supported");
1146 virtual shared_ptr<monero_check_tx>
check_tx_key(
const string& tx_hash,
const string& txKey,
const string& address)
const {
1147 throw runtime_error(
"check_tx_key() not supported");
1167 virtual string get_tx_proof(
const string& tx_hash,
const string& address,
const string& message)
const {
1168 throw runtime_error(
"get_tx_proof() not supported");
1180 virtual shared_ptr<monero_check_tx>
check_tx_proof(
const string& tx_hash,
const string& address,
const string& message,
const string& signature)
const {
1181 throw runtime_error(
"check_tx_proof() not supported");
1200 throw runtime_error(
"get_spend_proof() not supported");
1211 virtual bool check_spend_proof(
const string& tx_hash,
const string& message,
const string& signature)
const {
1212 throw runtime_error(
"check_spend_proof() not supported");
1222 throw runtime_error(
"get_reserve_proof_wallet() not supported");
1234 throw runtime_error(
"get_reserve_proof_account() not supported");
1245 virtual shared_ptr<monero_check_reserve>
check_reserve_proof(
const string& address,
const string& message,
const string& signature)
const {
1246 throw runtime_error(
"check_reserve_proof() not supported");
1256 throw runtime_error(
"get_tx_note() not supported");
1265 virtual vector<string>
get_tx_notes(
const vector<string>& tx_hashes)
const {
1266 throw runtime_error(
"get_tx_notes() not supported");
1276 throw runtime_error(
"set_tx_note() not supported");
1285 virtual void set_tx_notes(
const vector<string>& tx_hashes,
const vector<string>& notes) {
1286 throw runtime_error(
"set_tx_notes() not supported");
1296 throw runtime_error(
"get_address_book_entries() not supported");
1307 throw runtime_error(
"add_address_book_entry() not supported");
1321 virtual void edit_address_book_entry(uint64_t index,
bool set_address,
const string& address,
bool set_description,
const string& description,
bool set_payment_id =
false,
const string& payment_id =
"") {
1322 throw runtime_error(
"edit_address_book_entry() not supported");
1331 throw runtime_error(
"delete_address_book_entry() not supported");
1371 throw runtime_error(
"create_payment_uri() not supported");
1381 throw runtime_error(
"parse_payment_uri() not supported");
1392 throw runtime_error(
"get_attribute() not supported");
1402 throw runtime_error(
"set_attribute() not supported");
1412 virtual void start_mining(boost::optional<uint64_t> num_threads, boost::optional<bool> background_mining, boost::optional<bool> ignore_battery) {
1413 throw runtime_error(
"start_mining() not supported");
1420 throw runtime_error(
"stop_mining() not supported");
1429 throw runtime_error(
"wait_for_next_block() not supported");
1438 throw runtime_error(
"is_multisig_import_needed() not supported");
1449 throw runtime_error(
"get_multisig_info() not supported");
1459 throw runtime_error(
"prepare_multisig() not supported");
1471 throw runtime_error(
"make_multisig() not supported");
1484 throw runtime_error(
"exchange_multisig_keys() not supported");
1493 throw runtime_error(
"get_multisig_hex() not supported");
1507 throw runtime_error(
"import_multisig_hex() not supported");
1517 throw runtime_error(
"monero_multisig_sign_result() not supported");
1527 throw runtime_error(
"submit_multisig_tx_hex() not supported");
1534 throw runtime_error(
"save() not supported");
1543 virtual void move_to(
string path,
string password) {
1544 throw runtime_error(
"move_to() not supported");
1553 throw runtime_error(
"close() not supported");
virtual uint64_t add_address_book_entry(const string &address, const string &description, const string &payment_id="")
Definition: monero_wallet.h:1306
Definition: monero_wallet_model.h:407
virtual string get_tx_key(const string &tx_hash) const
Definition: monero_wallet.h:1134
Definition: monero_daemon.cpp:58
virtual void rescan_blockchain()
Definition: monero_wallet.h:474
virtual void add_listener(monero_wallet_listener &listener)
Definition: monero_wallet.h:380
virtual uint64_t get_daemon_max_peer_height() const
Definition: monero_wallet.h:371
virtual monero_multisig_sign_result sign_multisig_tx_hex(const string &multisig_tx_hex)
Definition: monero_wallet.h:1516
virtual monero_network_type get_network_type() const
Definition: monero_wallet.h:220
virtual string get_spend_proof(const string &tx_hash, const string &message) const
Definition: monero_wallet.h:1199
Definition: monero_wallet.h:123
virtual void close(bool save=false)
Definition: monero_wallet.h:1552
virtual monero_tx_set parse_tx_set(const monero_tx_set &tx_set)
Definition: monero_wallet.h:1102
virtual string get_public_view_key() const
Definition: monero_wallet.h:247
virtual string get_mnemonic_language() const
Definition: monero_wallet.h:238
virtual void move_to(string path, string password)
Definition: monero_wallet.h:1543
virtual vector< string > get_tx_notes(const vector< string > &tx_hashes) const
Definition: monero_wallet.h:1265
virtual bool is_connected() const
Definition: monero_wallet.h:166
virtual string get_primary_address() const
Definition: monero_wallet.h:283
Definition: monero_wallet_model.h:318
virtual ~monero_wallet()
Definition: monero_wallet.h:130
virtual set< monero_wallet_listener * > get_listeners()
Definition: monero_wallet.h:396
virtual string get_outputs_hex() const
Definition: monero_wallet.h:802
virtual monero_version get_version() const
Definition: monero_wallet.h:202
virtual monero_account create_account(const string &label="")
Definition: monero_wallet.h:612
virtual void on_output_spent(const monero_output_wallet &output)
Definition: monero_wallet.h:112
virtual vector< shared_ptr< monero_output_wallet > > get_outputs(const monero_output_query &query) const
Definition: monero_wallet.h:793
virtual monero_tx_set send(uint32_t account_index, string address, uint64_t amount)
Definition: monero_wallet.h:951
virtual string get_public_spend_key() const
Definition: monero_wallet.h:265
virtual uint64_t get_unlocked_balance() const
Definition: monero_wallet.h:520
virtual string get_mnemonic() const
Definition: monero_wallet.h:229
virtual vector< shared_ptr< monero_key_image > > get_key_images() const
Definition: monero_wallet.h:821
virtual void set_daemon_connection(const string &uri, const string &username="", const string &password="")
Definition: monero_wallet.h:139
virtual monero_tx_set sweep_output(const monero_send_request &request)
Definition: monero_wallet.h:1019
Definition: monero_wallet.h:90
virtual vector< monero_address_book_entry > get_address_book_entries(const vector< uint64_t > &indices) const
Definition: monero_wallet.h:1295
virtual vector< string > relay_txs(const vector< shared_ptr< monero_tx_wallet >> &txs)
Definition: monero_wallet.h:927
Definition: monero_wallet.h:72
virtual shared_ptr< monero_send_request > parse_payment_uri(const string &uri) const
Definition: monero_wallet.h:1380
virtual vector< monero_subaddress > get_subaddresses(const uint32_t account_idx, const vector< uint32_t > &subaddress_indices) const
Definition: monero_wallet.h:633
virtual monero_tx_set send_split(const monero_send_request &request)
Definition: monero_wallet.h:976
virtual uint64_t get_balance() const
Definition: monero_wallet.h:490
virtual string get_private_view_key() const
Definition: monero_wallet.h:256
virtual monero_tx_set create_txs(monero_send_request &request)
Definition: monero_wallet.h:887
virtual string get_reserve_proof_wallet(const string &message) const
Definition: monero_wallet.h:1221
Definition: monero_wallet_model.h:421
Definition: monero_wallet_model.h:274
virtual monero_subaddress get_address_index(const string &address) const
Definition: monero_wallet.h:305
virtual vector< shared_ptr< monero_tx_wallet > > get_txs(const monero_tx_query &query) const
Definition: monero_wallet.h:697
virtual void start_mining(boost::optional< uint64_t > num_threads, boost::optional< bool > background_mining, boost::optional< bool > ignore_battery)
Definition: monero_wallet.h:1412
virtual void set_daemon_connection(const monero_rpc_connection &connection)
Definition: monero_wallet.h:148
virtual uint64_t get_balance(uint32_t account_idx, uint32_t subaddress_idx) const
Definition: monero_wallet.h:511
virtual vector< monero_account > get_accounts() const
Definition: monero_wallet.h:550
virtual vector< monero_tx_set > sweep_unlocked(const monero_send_request &request)
Definition: monero_wallet.h:1009
virtual monero_integrated_address decode_integrated_address(const string &integrated_address) const
Definition: monero_wallet.h:326
virtual void stop_syncing()
Definition: monero_wallet.h:450
virtual uint64_t get_daemon_height() const
Definition: monero_wallet.h:362
virtual vector< string > submit_multisig_tx_hex(const string &signed_multisig_tx_hex)
Definition: monero_wallet.h:1526
virtual monero_integrated_address get_integrated_address(const string &standard_address="", const string &payment_id="") const
Definition: monero_wallet.h:316
Definition: monero_wallet_model.h:431
virtual bool is_multisig_import_needed() const
Definition: monero_wallet.h:1437
virtual string get_address(const uint32_t account_idx, const uint32_t subaddress_idx) const
Definition: monero_wallet.h:294
virtual vector< shared_ptr< monero_tx_wallet > > get_txs(const monero_tx_query &query, vector< string > &missing_tx_hashes) const
Definition: monero_wallet.h:709
Definition: monero_daemon_model.h:101
virtual void stop_mining()
Definition: monero_wallet.h:1419
Definition: monero_wallet_model.h:246
virtual void start_syncing()
Definition: monero_wallet.h:443
monero_send_priority
Definition: monero_wallet_model.h:329
virtual monero_tx_set create_tx(uint32_t account_index, string address, uint64_t amount)
Definition: monero_wallet.h:862
virtual void edit_address_book_entry(uint64_t index, bool set_address, const string &address, bool set_description, const string &description, bool set_payment_id=false, const string &payment_id="")
Definition: monero_wallet.h:1321
virtual string get_private_spend_key() const
Definition: monero_wallet.h:274
virtual vector< string > relay_txs(const vector< string > &tx_metadatas)
Definition: monero_wallet.h:917
virtual void set_tx_notes(const vector< string > &tx_hashes, const vector< string > ¬es)
Definition: monero_wallet.h:1285
virtual string get_tx_proof(const string &tx_hash, const string &address, const string &message) const
Definition: monero_wallet.h:1167
virtual monero_tx_set send(uint32_t account_index, string address, uint64_t amount, monero_send_priority priority)
Definition: monero_wallet.h:965
virtual int import_multisig_hex(const vector< string > &multisig_hexes)
Definition: monero_wallet.h:1506
Definition: monero_wallet_model.h:68
Definition: monero_wallet_model.h:304
virtual vector< monero_account > get_accounts(const string &tag) const
Definition: monero_wallet.h:570
virtual shared_ptr< monero_check_tx > check_tx_key(const string &tx_hash, const string &txKey, const string &address) const
Definition: monero_wallet.h:1146
virtual monero_tx_set send(const monero_send_request &request)
Definition: monero_wallet.h:938
virtual void on_output_received(const monero_output_wallet &output)
Definition: monero_wallet.h:105
virtual void set_restore_height(uint64_t restore_height)
Definition: monero_wallet.h:353
virtual monero_sync_result sync(monero_sync_listener &listener)
Definition: monero_wallet.h:415
virtual vector< monero_account > get_accounts(bool include_subaddresses) const
Definition: monero_wallet.h:560
virtual uint64_t get_restore_height() const
Definition: monero_wallet.h:344
virtual shared_ptr< monero_check_reserve > check_reserve_proof(const string &address, const string &message, const string &signature) const
Definition: monero_wallet.h:1245
virtual uint64_t get_unlocked_balance(uint32_t account_idx, uint32_t subaddress_idx) const
Definition: monero_wallet.h:541
virtual monero_tx_set create_tx(monero_send_request &request)
Definition: monero_wallet.h:849
virtual vector< monero_subaddress > get_subaddresses(const uint32_t account_idx) const
Definition: monero_wallet.h:622
Definition: monero_wallet_model.h:225
Definition: monero_wallet_model.h:339
virtual void on_new_block(uint64_t height)
Definition: monero_wallet.h:98
virtual monero_account get_account(const uint32_t account_idx, bool include_subaddresses) const
Definition: monero_wallet.h:602
Definition: monero_wallet_model.h:97
virtual void save()
Definition: monero_wallet.h:1533
virtual monero_tx_set sweep_dust(bool do_not_relay=false)
Definition: monero_wallet.h:1092
virtual shared_ptr< monero_check_tx > check_tx_proof(const string &tx_hash, const string &address, const string &message, const string &signature) const
Definition: monero_wallet.h:1180
Definition: monero_daemon_model.h:113
Definition: monero_wallet_model.h:80
virtual bool is_synced() const
Definition: monero_wallet.h:193
virtual string sign(const string &msg) const
Definition: monero_wallet.h:1112
virtual void on_sync_progress(uint64_t height, uint64_t start_height, uint64_t end_height, double percent_done, const string &message)
Definition: monero_wallet.h:84
virtual bool is_daemon_trusted() const
Definition: monero_wallet.h:184
virtual monero_sync_result sync(uint64_t start_height, monero_sync_listener &listener)
Definition: monero_wallet.h:436
virtual bool get_attribute(const string &key, string &value) const
Definition: monero_wallet.h:1391
virtual string relay_tx(const monero_tx_wallet &tx)
Definition: monero_wallet.h:907
Definition: monero_wallet_model.h:205
virtual monero_subaddress create_subaddress(uint32_t account_idx, const string &label="")
Definition: monero_wallet.h:655
virtual string get_reserve_proof_account(uint32_t account_idx, uint64_t amount, const string &message) const
Definition: monero_wallet.h:1233
virtual string get_tx_note(const string &tx_hash) const
Definition: monero_wallet.h:1255
virtual string get_multisig_hex()
Definition: monero_wallet.h:1492
virtual shared_ptr< monero_key_image_import_result > import_key_images(const vector< shared_ptr< monero_key_image >> &key_images)
Definition: monero_wallet.h:831
virtual string create_payment_uri(const monero_send_request &request) const
Definition: monero_wallet.h:1370
virtual void rescan_spent()
Definition: monero_wallet.h:463
virtual int import_outputs_hex(const string &outputs_hex)
Definition: monero_wallet.h:812
virtual bool check_spend_proof(const string &tx_hash, const string &message, const string &signature) const
Definition: monero_wallet.h:1211
virtual monero_multisig_info get_multisig_info()
Definition: monero_wallet.h:1448
virtual uint64_t get_balance(uint32_t account_idx) const
Definition: monero_wallet.h:500
Definition: monero_wallet_model.h:183
virtual monero_sync_result sync(uint64_t start_height)
Definition: monero_wallet.h:425
virtual uint64_t wait_for_next_block()
Definition: monero_wallet.h:1428
virtual void delete_address_book_entry(uint64_t index)
Definition: monero_wallet.h:1330
virtual uint64_t get_unlocked_balance(uint32_t account_idx) const
Definition: monero_wallet.h:530
monero_network_type
Definition: monero_daemon_model.h:92
virtual monero_tx_set create_tx(int account_index, string address, uint64_t amount, monero_send_priority priority)
Definition: monero_wallet.h:876
virtual monero_sync_result sync()
Definition: monero_wallet.h:405
virtual void set_attribute(const string &key, const string &val)
Definition: monero_wallet.h:1401
virtual monero_multisig_init_result make_multisig(const vector< string > &multisig_hexes, int threshold, const string &password)
Definition: monero_wallet.h:1470
virtual monero_multisig_init_result exchange_multisig_keys(const vector< string > &mutisig_hexes, const string &password)
Definition: monero_wallet.h:1483
virtual vector< shared_ptr< monero_transfer > > get_transfers(const monero_transfer_query &query) const
Definition: monero_wallet.h:768
virtual void remove_listener(monero_wallet_listener &listener)
Definition: monero_wallet.h:389
virtual monero_subaddress get_subaddress(const uint32_t account_idx, const uint32_t subaddress_idx) const
Definition: monero_wallet.h:644
virtual bool verify(const string &msg, const string &address, const string &signature) const
Definition: monero_wallet.h:1124
virtual void set_tx_note(const string &tx_hash, const string ¬e)
Definition: monero_wallet.h:1275
virtual string relay_tx(const string &tx_metadata)
Definition: monero_wallet.h:897
virtual bool is_daemon_synced() const
Definition: monero_wallet.h:175
virtual string prepare_multisig()
Definition: monero_wallet.h:1458
virtual vector< monero_account > get_accounts(bool include_subaddresses, const string &tag) const
Definition: monero_wallet.h:581
virtual uint64_t get_height() const
Definition: monero_wallet.h:335
virtual string get_path() const
Definition: monero_wallet.h:211
virtual vector< shared_ptr< monero_tx_wallet > > get_txs() const
Definition: monero_wallet.h:673
Definition: monero_wallet_core.cpp:657
virtual shared_ptr< monero_rpc_connection > get_daemon_connection() const
Definition: monero_wallet.h:157
virtual monero_account get_account(uint32_t account_idx) const
Definition: monero_wallet.h:591