Monero C++ Library
Loading...
Searching...
No Matches
monero_daemon.h
1
52
53#pragma once
54
55#include "common/monero_rpc_connection.h"
56#include "monero_daemon_model.h"
57
61namespace monero {
62
67 public:
68 std::shared_ptr<monero_block_header> m_last_header;
69
75 virtual void on_block_header(const std::shared_ptr<monero_block_header>& header) {
76 m_last_header = header;
77 }
78 };
79
84 public:
85
89 virtual ~monero_daemon() {}
90
96 virtual void add_listener(monero_daemon_listener &listener) {
97 throw std::runtime_error("monero_daemon::add_listener(): not supported");
98 }
99
105 virtual void remove_listener(monero_daemon_listener &listener) {
106 throw std::runtime_error("monero_daemon::remove_listener(): not supported");
107 }
108
112 virtual std::set<monero_daemon_listener*> get_listeners() {
113 throw std::runtime_error("monero_daemon::get_listeners(): not supported");
114 }
115
119 virtual void remove_listeners() {
120 throw std::runtime_error("monero_daemon::remove_listeners(): not supported");
121 }
122
129 throw std::runtime_error("monero_daemon::get_version(): not supported");
130 }
131
137 virtual bool is_trusted() {
138 throw std::runtime_error("monero_daemon::is_trusted(): not supported");
139 }
140
146 virtual uint64_t get_height() {
147 throw std::runtime_error("monero_daemon::get_height(): not supported");
148 }
149
156 virtual std::string get_block_hash(uint64_t height) {
157 throw std::runtime_error("monero_daemon::get_block_hash(): not supported");
158 }
159
167 virtual std::shared_ptr<monero_block_template> get_block_template(const std::string& wallet_address, const boost::optional<int>& reserve_size = boost::none) {
168 throw std::runtime_error("monero_daemon::get_block_template(): not supported");
169 }
170
177 virtual std::shared_ptr<monero_miner_data> get_miner_data() {
178 throw std::runtime_error("monero_daemon::get_miner_data(): not supported");
179 }
180
190 virtual std::string calculate_pow(uint32_t major_version, uint64_t height, const std::string& block_blob, const std::string& seed_hash) {
191 throw std::runtime_error("monero_daemon::calculate_pow(): not supported");
192 }
193
202 virtual std::shared_ptr<monero_add_auxiliary_pow_result> add_auxiliary_pow(const std::string& block_template_blob, const std::vector<std::shared_ptr<monero_auxiliary_pow>>& aux_pow) {
203 throw std::runtime_error("monero_daemon::add_auxiliary_pow(): not supported");
204 }
205
211 virtual std::shared_ptr<monero_block_header> get_last_block_header() {
212 throw std::runtime_error("monero_daemon::get_last_block_header(): not supported");
213 }
214
221 virtual std::shared_ptr<monero_block_header> get_block_header_by_hash(const std::string& block_hash) {
222 throw std::runtime_error("monero_daemon::get_block_header_by_hash(): not supported");
223 }
224
231 virtual std::shared_ptr<monero_block_header> get_block_header_by_height(uint64_t height) {
232 throw std::runtime_error("monero_daemon::get_block_header_by_height(): not supported");
233 }
234
242 virtual std::vector<std::shared_ptr<monero_block_header>> get_block_headers_by_range(uint64_t start_height, uint64_t end_height) {
243 throw std::runtime_error("monero_daemon::get_block_headers_by_range(): not supported");
244 }
245
252 virtual std::shared_ptr<monero_block> get_block_by_hash(const std::string& block_hash) {
253 throw std::runtime_error("monero_daemon::get_block_by_hash(): not supported");
254 }
255
276 virtual std::shared_ptr<monero_get_blocks_by_hash_result> get_blocks_by_hash(const std::vector<std::string>& block_hashes, uint64_t start_height, bool prune, uint64_t max_block_count = 0) {
277 throw std::runtime_error("monero_daemon::get_blocks_by_hash(): not supported");
278 }
279
286 virtual std::shared_ptr<monero_block> get_block_by_height(uint64_t height) {
287 throw std::runtime_error("monero_daemon::get_block_by_height(): not supported");
288 }
289
296 virtual std::vector<std::shared_ptr<monero_block>> get_blocks_by_height(const std::vector<uint64_t>& heights) {
297 throw std::runtime_error("monero_daemon::get_blocks_by_height(): not supported");
298 }
299
307 virtual std::vector<std::shared_ptr<monero_block>> get_blocks_by_range(boost::optional<uint64_t> start_height, boost::optional<uint64_t> end_height) {
308 throw std::runtime_error("monero_daemon::get_blocks_by_range(): not supported");
309 }
310
319 virtual std::vector<std::shared_ptr<monero_block>> get_blocks_by_range_chunked(boost::optional<uint64_t> start_height, boost::optional<uint64_t> end_height, boost::optional<uint64_t> max_chunk_size) {
320 throw std::runtime_error("monero_daemon::get_blocks_by_range_chunked(): not supported");
321 }
322
334 virtual std::shared_ptr<monero_get_block_hashes_result> get_block_hashes(const std::vector<std::string>& block_hashes) {
335 throw std::runtime_error("monero_daemon::get_block_hashes(): not supported");
336 }
337
345 virtual std::shared_ptr<monero_tx> get_tx(const std::string& tx_hash, bool prune = false) {
346 std::vector<std::string> hashes;
347 hashes.push_back(tx_hash);
348 auto txs = get_txs(hashes, prune);
349 std::shared_ptr<monero_tx> tx;
350
351 if (txs.size() > 0) {
352 tx = txs[0];
353 }
354
355 return tx;
356 }
357
365 virtual std::vector<std::shared_ptr<monero_tx>> get_txs(const std::vector<std::string>& tx_hashes, bool prune = false) {
366 throw std::runtime_error("monero_daemon::get_txs(): not supported");
367 }
368
369
377 virtual boost::optional<std::string> get_tx_hex(const std::string& tx_hash, bool prune = false) {
378 std::vector<std::string> hashes;
379 hashes.push_back(tx_hash);
380 auto hexes = get_tx_hexes(hashes, prune);
381 boost::optional<std::string> hex;
382 if (hexes.size() > 0) {
383 hex = hexes[0];
384 }
385
386 return hex;
387 }
388
396 virtual std::vector<std::string> get_tx_hexes(const std::vector<std::string>& tx_hashes, bool prune = false) {
397 throw std::runtime_error("monero_daemon::get_tx_hexes(): not supported");
398 }
399
407 virtual std::shared_ptr<monero_miner_tx_sum> get_miner_tx_sum(uint64_t height, uint64_t num_blocks) {
408 throw std::runtime_error("monero_daemon::get_miner_tx_sum(): not supported");
409 }
410
417 virtual std::shared_ptr<monero_fee_estimate> get_fee_estimate(uint64_t grace_blocks = 0) {
418 throw std::runtime_error("monero_daemon::get_fee_estimate(): not supported");
419 }
420
428 virtual std::shared_ptr<monero_submit_tx_result> submit_tx_hex(const std::string& tx_hex, bool do_not_relay = false) {
429 throw std::runtime_error("monero_daemon::submit_tx_hex(): not supported");
430 }
431
437 virtual void relay_tx_by_hash(const std::string& tx_hash) {
438 std::vector<std::string> tx_hashes;
439 tx_hashes.push_back(tx_hash);
440 relay_txs_by_hash(tx_hashes);
441 }
442
448 virtual void relay_txs_by_hash(const std::vector<std::string>& tx_hashes) {
449 throw std::runtime_error("monero_daemon::relay_txs_by_hash(): not supported");
450 }
451
458 virtual std::vector<std::shared_ptr<monero_tx>> get_tx_pool() {
459 throw std::runtime_error("monero_daemon::get_tx_pool(): not supported");
460 }
461
467 virtual std::vector<std::string> get_tx_pool_hashes() {
468 throw std::runtime_error("monero_daemon::get_tx_pool_hashes(): not supported");
469 }
470
476 virtual std::vector<monero_tx_backlog_entry> get_tx_pool_backlog() {
477 throw std::runtime_error("monero_daemon::get_tx_pool_backlog(): not supported");
478 }
479
485 virtual std::shared_ptr<monero_tx_pool_stats> get_tx_pool_stats() {
486 throw std::runtime_error("monero_daemon::get_tx_pool_stats(): not supported");
487 }
488
492 virtual void flush_tx_pool() {
493 throw std::runtime_error("monero_daemon::flush_tx_pool(): not supported");
494 }
495
501 virtual void flush_tx_pool(const std::vector<std::string> &hashes) {
502 throw std::runtime_error("monero_daemon::flush_tx_pool(): not supported");
503 }
504
510 virtual void flush_tx_pool(const std::string &hash) {
511 throw std::runtime_error("monero_daemon::flush_tx_pool(): not supported");
512 }
513
520 virtual monero_key_image_spent_status get_key_image_spent_status(const std::string& key_image) {
521 std::vector<std::string> key_images;
522 key_images.push_back(key_image);
523 auto statuses = get_key_image_spent_statuses(key_images);
524 if (statuses.empty()) throw std::runtime_error("Could not get key image spent status");
525 return statuses[0];
526 }
527
534 virtual std::vector<monero_key_image_spent_status> get_key_image_spent_statuses(const std::vector<std::string>& key_images) {
535 throw std::runtime_error("monero_daemon::get_key_image_spent_statuses(): not supported");
536 }
537
544 virtual std::vector<uint64_t> get_output_indices(const std::string& tx_hash) {
545 throw std::runtime_error("monero_daemon::get_output_indices(): not supported");
546 }
547
555 virtual std::vector<std::shared_ptr<monero_output>> get_outputs(const std::vector<monero_output>& outputs) {
556 throw std::runtime_error("monero_daemon::get_outputs(): not supported");
557 }
558
571 virtual std::vector<std::shared_ptr<monero_output_histogram_entry>> get_output_histogram(const std::vector<uint64_t>& amounts, const boost::optional<int>& min_count, const boost::optional<int>& max_count, const boost::optional<bool>& is_unlocked, const boost::optional<int>& recent_cutoff) {
572 throw std::runtime_error("monero_daemon::get_output_histogram(): not supported");
573 }
574
584 virtual std::vector<std::shared_ptr<monero_output_distribution_entry>> get_output_distribution(const std::vector<uint64_t>& amounts, const boost::optional<bool>& is_cumulative = boost::none, const boost::optional<uint64_t>& start_height = boost::none, const boost::optional<uint64_t>& end_height = boost::none) {
585 throw std::runtime_error("monero_daemon::get_output_distribution(): not supported");
586 }
587
593 virtual std::shared_ptr<monero_daemon_info> get_info() {
594 throw std::runtime_error("monero_daemon::get_info(): not supported");
595 }
596
602 virtual std::shared_ptr<monero_daemon_sync_info> get_sync_info() {
603 throw std::runtime_error("monero_daemon::get_sync_info(): not supported");
604 }
605
611 virtual std::shared_ptr<monero_daemon_network_stats> get_network_stats() {
612 throw std::runtime_error("monero_daemon::get_network_stats(): not supported");
613 }
614
620 virtual std::shared_ptr<monero_hard_fork_info> get_hard_fork_info() {
621 throw std::runtime_error("monero_daemon::get_hard_fork_info(): not supported");
622 }
623
629 virtual std::vector<std::shared_ptr<monero_alt_chain>> get_alt_chains() {
630 throw std::runtime_error("monero_daemon::get_alt_chains(): not supported");
631 }
632
638 virtual std::vector<std::string> get_alt_block_hashes() {
639 throw std::runtime_error("monero_daemon::get_alt_block_hashes(): not supported");
640 }
641
647 virtual int get_download_limit() {
648 throw std::runtime_error("monero_daemon::get_download_limit(): not supported");
649 }
650
657 virtual int set_download_limit(int limit) {
658 throw std::runtime_error("monero_daemon::set_download_limit(): not supported");
659 }
660
666 virtual int reset_download_limit() {
667 throw std::runtime_error("monero_daemon::reset_download_limit(): not supported");
668 }
669
675 virtual int get_upload_limit() {
676 throw std::runtime_error("monero_daemon::get_upload_limit(): not supported");
677 }
678
685 virtual int set_upload_limit(int limit) {
686 throw std::runtime_error("monero_daemon::set_upload_limit(): not supported");
687 }
688
694 virtual int reset_upload_limit() {
695 throw std::runtime_error("monero_daemon::reset_upload_limit(): not supported");
696 }
697
703 virtual std::vector<std::shared_ptr<monero_peer>> get_peers() {
704 throw std::runtime_error("monero_daemon::get_peers(): not supported");
705 }
706
712 virtual std::vector<std::shared_ptr<monero_peer>> get_known_peers() {
713 throw std::runtime_error("monero_daemon::get_known_peers(): not supported");
714 }
715
722 virtual std::vector<std::shared_ptr<monero_peer>> get_public_peers(bool include_offline = false) {
723 throw std::runtime_error("monero_daemon::get_public_peers(): not supported");
724 }
725
731 virtual void set_outgoing_peer_limit(int limit) {
732 throw std::runtime_error("monero_daemon::set_outgoing_peer_limit(): not supported");
733 }
734
740 virtual void set_incoming_peer_limit(int limit) {
741 throw std::runtime_error("monero_daemon::set_incoming_peer_limit(): not supported");
742 }
743
749 virtual std::vector<std::shared_ptr<monero_ban>> get_peer_bans() {
750 throw std::runtime_error("monero_daemon::get_peer_bans(): not supported");
751 }
752
758 virtual void set_peer_bans(const std::vector<std::shared_ptr<monero_ban>>& bans) {
759 throw std::runtime_error("monero_daemon::set_peer_bans(): not supported");
760 }
761
767 virtual void set_peer_ban(const std::shared_ptr<monero_ban>& ban) {
768 if (ban == nullptr) throw std::runtime_error("Ban is none");
769 std::vector<std::shared_ptr<monero_ban>> bans;
770 bans.push_back(ban);
771 set_peer_bans(bans);
772 }
773
780 virtual std::shared_ptr<monero_ban> get_peer_ban(const std::string& address) {
781 throw std::runtime_error("monero_daemon::get_peer_ban(): not supported");
782 }
783
792 virtual void start_mining(const std::string &address, boost::optional<uint64_t> num_threads, boost::optional<bool> is_background, boost::optional<bool> ignore_battery) {
793 throw std::runtime_error("monero_daemon::start_mining(): not supported");
794 }
795
799 virtual void stop_mining() {
800 throw std::runtime_error("monero_daemon::stop_mining(): not supported");
801 }
802
808 virtual std::shared_ptr<monero_mining_status> get_mining_status() {
809 throw std::runtime_error("monero_daemon::get_mining_status(): not supported");
810 }
811
821 virtual std::shared_ptr<monero_generate_blocks_result> generate_blocks(const std::string& wallet_address, uint64_t num_blocks, const boost::optional<std::string>& prev_block_hash = boost::none, const boost::optional<uint32_t>& starting_nonce = boost::none) {
822 throw std::runtime_error("monero_daemon::generate_blocks(): not supported");
823 }
824
830 virtual void submit_block(const std::string& block_blob) {
831 std::vector<std::string> block_blobs;
832 block_blobs.push_back(block_blob);
833 return submit_blocks(block_blobs);
834 }
835
841 virtual void submit_blocks(const std::vector<std::string>& block_blobs) {
842 throw std::runtime_error("monero_daemon::submit_blocks(): not supported");
843 }
844
851 virtual std::shared_ptr<monero_prune_result> prune_blockchain(bool check) {
852 throw std::runtime_error("monero_daemon::prune_blockchain(): not supported");
853 }
854
858 virtual void save_blockchain() {
859 throw std::runtime_error("monero_daemon::save_blockchain(): not supported");
860 }
861
868 virtual uint64_t pop_blocks(uint64_t num_blocks) {
869 throw std::runtime_error("monero_daemon::pop_blocks(): not supported");
870 }
871
877 virtual void flush_cache(bool bad_blocks = false) {
878 throw std::runtime_error("monero_daemon::flush_cache(): not supported");
879 }
880
891 virtual void set_bootstrap_daemon(const std::string& address, const std::string& username = "", const std::string& password = "", const std::string& proxy = "") {
892 throw std::runtime_error("monero_daemon::set_bootstrap_daemon(): not supported");
893 }
894
898 virtual void remove_bootstrap_daemon() {
900 }
901
907 virtual void set_log_hash_rate(bool is_visible) {
908 throw std::runtime_error("monero_daemon::set_log_hash_rate(): not supported");
909 }
910
916 virtual void set_log_level(int level) {
917 throw std::runtime_error("monero_daemon::set_log_level(): not supported");
918 }
919
926 virtual std::string set_log_categories(const std::string& categories = "") {
927 throw std::runtime_error("monero_daemon::set_log_categories(): not supported");
928 }
929
935 virtual std::shared_ptr<monero_daemon_update_check_result> check_for_update() {
936 throw std::runtime_error("monero_daemon::check_for_update(): not supported");
937 }
938
945 virtual std::shared_ptr<monero_daemon_update_download_result> download_update(const std::string& path = "") {
946 throw std::runtime_error("monero_daemon::download_update(): not supported");
947 }
948
952 virtual void stop() {
953 throw std::runtime_error("monero_daemon::stop(): not supported");
954 }
955
961 virtual std::shared_ptr<monero_block_header> wait_for_next_block_header() {
962 throw std::runtime_error("monero_daemon::wait_for_next_block_header(): not supported");
963 }
964
965 };
966}
Definition monero_daemon.h:66
virtual void on_block_header(const std::shared_ptr< monero_block_header > &header)
Definition monero_daemon.h:75
Definition monero_daemon.h:83
virtual void set_peer_bans(const std::vector< std::shared_ptr< monero_ban > > &bans)
Definition monero_daemon.h:758
virtual void set_log_level(int level)
Definition monero_daemon.h:916
virtual std::shared_ptr< monero_get_block_hashes_result > get_block_hashes(const std::vector< std::string > &block_hashes)
Definition monero_daemon.h:334
virtual int reset_upload_limit()
Definition monero_daemon.h:694
virtual int set_upload_limit(int limit)
Definition monero_daemon.h:685
virtual void stop()
Definition monero_daemon.h:952
virtual std::string set_log_categories(const std::string &categories="")
Definition monero_daemon.h:926
virtual std::string get_block_hash(uint64_t height)
Definition monero_daemon.h:156
virtual int get_download_limit()
Definition monero_daemon.h:647
virtual monero_version get_version()
Definition monero_daemon.h:128
virtual std::shared_ptr< monero_daemon_network_stats > get_network_stats()
Definition monero_daemon.h:611
virtual void remove_bootstrap_daemon()
Definition monero_daemon.h:898
virtual void submit_blocks(const std::vector< std::string > &block_blobs)
Definition monero_daemon.h:841
virtual std::vector< std::shared_ptr< monero_block_header > > get_block_headers_by_range(uint64_t start_height, uint64_t end_height)
Definition monero_daemon.h:242
virtual std::vector< std::string > get_alt_block_hashes()
Definition monero_daemon.h:638
virtual std::vector< std::shared_ptr< monero_block > > get_blocks_by_range(boost::optional< uint64_t > start_height, boost::optional< uint64_t > end_height)
Definition monero_daemon.h:307
virtual uint64_t get_height()
Definition monero_daemon.h:146
virtual std::shared_ptr< monero_hard_fork_info > get_hard_fork_info()
Definition monero_daemon.h:620
virtual void save_blockchain()
Definition monero_daemon.h:858
virtual std::shared_ptr< monero_tx_pool_stats > get_tx_pool_stats()
Definition monero_daemon.h:485
virtual std::shared_ptr< monero_miner_tx_sum > get_miner_tx_sum(uint64_t height, uint64_t num_blocks)
Definition monero_daemon.h:407
virtual std::shared_ptr< monero_miner_data > get_miner_data()
Definition monero_daemon.h:177
virtual std::shared_ptr< monero_generate_blocks_result > generate_blocks(const std::string &wallet_address, uint64_t num_blocks, const boost::optional< std::string > &prev_block_hash=boost::none, const boost::optional< uint32_t > &starting_nonce=boost::none)
Definition monero_daemon.h:821
virtual void remove_listeners()
Definition monero_daemon.h:119
virtual void flush_tx_pool(const std::string &hash)
Definition monero_daemon.h:510
virtual std::shared_ptr< monero_daemon_update_download_result > download_update(const std::string &path="")
Definition monero_daemon.h:945
virtual std::vector< std::shared_ptr< monero_tx > > get_tx_pool()
Definition monero_daemon.h:458
virtual void set_peer_ban(const std::shared_ptr< monero_ban > &ban)
Definition monero_daemon.h:767
virtual std::string calculate_pow(uint32_t major_version, uint64_t height, const std::string &block_blob, const std::string &seed_hash)
Definition monero_daemon.h:190
virtual monero_key_image_spent_status get_key_image_spent_status(const std::string &key_image)
Definition monero_daemon.h:520
virtual bool is_trusted()
Definition monero_daemon.h:137
virtual int get_upload_limit()
Definition monero_daemon.h:675
virtual std::shared_ptr< monero_daemon_update_check_result > check_for_update()
Definition monero_daemon.h:935
virtual std::shared_ptr< monero_block_header > get_block_header_by_hash(const std::string &block_hash)
Definition monero_daemon.h:221
virtual void flush_tx_pool()
Definition monero_daemon.h:492
virtual std::vector< uint64_t > get_output_indices(const std::string &tx_hash)
Definition monero_daemon.h:544
virtual std::vector< std::shared_ptr< monero_output_histogram_entry > > get_output_histogram(const std::vector< uint64_t > &amounts, const boost::optional< int > &min_count, const boost::optional< int > &max_count, const boost::optional< bool > &is_unlocked, const boost::optional< int > &recent_cutoff)
Definition monero_daemon.h:571
virtual void add_listener(monero_daemon_listener &listener)
Definition monero_daemon.h:96
virtual std::vector< std::shared_ptr< monero_output > > get_outputs(const std::vector< monero_output > &outputs)
Definition monero_daemon.h:555
virtual void relay_txs_by_hash(const std::vector< std::string > &tx_hashes)
Definition monero_daemon.h:448
virtual boost::optional< std::string > get_tx_hex(const std::string &tx_hash, bool prune=false)
Definition monero_daemon.h:377
virtual void flush_cache(bool bad_blocks=false)
Definition monero_daemon.h:877
virtual int reset_download_limit()
Definition monero_daemon.h:666
virtual std::vector< std::shared_ptr< monero_tx > > get_txs(const std::vector< std::string > &tx_hashes, bool prune=false)
Definition monero_daemon.h:365
virtual void remove_listener(monero_daemon_listener &listener)
Definition monero_daemon.h:105
virtual std::shared_ptr< monero_block_template > get_block_template(const std::string &wallet_address, const boost::optional< int > &reserve_size=boost::none)
Definition monero_daemon.h:167
virtual std::set< monero_daemon_listener * > get_listeners()
Definition monero_daemon.h:112
virtual std::shared_ptr< monero_block_header > get_last_block_header()
Definition monero_daemon.h:211
virtual std::vector< std::shared_ptr< monero_block > > get_blocks_by_range_chunked(boost::optional< uint64_t > start_height, boost::optional< uint64_t > end_height, boost::optional< uint64_t > max_chunk_size)
Definition monero_daemon.h:319
virtual std::shared_ptr< monero_fee_estimate > get_fee_estimate(uint64_t grace_blocks=0)
Definition monero_daemon.h:417
virtual void relay_tx_by_hash(const std::string &tx_hash)
Definition monero_daemon.h:437
virtual std::shared_ptr< monero_get_blocks_by_hash_result > get_blocks_by_hash(const std::vector< std::string > &block_hashes, uint64_t start_height, bool prune, uint64_t max_block_count=0)
Definition monero_daemon.h:276
virtual std::shared_ptr< monero_mining_status > get_mining_status()
Definition monero_daemon.h:808
virtual std::vector< std::shared_ptr< monero_alt_chain > > get_alt_chains()
Definition monero_daemon.h:629
virtual std::vector< std::shared_ptr< monero_ban > > get_peer_bans()
Definition monero_daemon.h:749
virtual std::shared_ptr< monero_daemon_info > get_info()
Definition monero_daemon.h:593
virtual std::vector< monero_key_image_spent_status > get_key_image_spent_statuses(const std::vector< std::string > &key_images)
Definition monero_daemon.h:534
virtual std::vector< std::string > get_tx_pool_hashes()
Definition monero_daemon.h:467
virtual void set_log_hash_rate(bool is_visible)
Definition monero_daemon.h:907
virtual std::vector< std::shared_ptr< monero_peer > > get_public_peers(bool include_offline=false)
Definition monero_daemon.h:722
virtual std::vector< monero_tx_backlog_entry > get_tx_pool_backlog()
Definition monero_daemon.h:476
virtual void start_mining(const std::string &address, boost::optional< uint64_t > num_threads, boost::optional< bool > is_background, boost::optional< bool > ignore_battery)
Definition monero_daemon.h:792
virtual void flush_tx_pool(const std::vector< std::string > &hashes)
Definition monero_daemon.h:501
virtual uint64_t pop_blocks(uint64_t num_blocks)
Definition monero_daemon.h:868
virtual void set_incoming_peer_limit(int limit)
Definition monero_daemon.h:740
virtual std::vector< std::shared_ptr< monero_block > > get_blocks_by_height(const std::vector< uint64_t > &heights)
Definition monero_daemon.h:296
virtual int set_download_limit(int limit)
Definition monero_daemon.h:657
virtual void submit_block(const std::string &block_blob)
Definition monero_daemon.h:830
virtual std::shared_ptr< monero_block > get_block_by_height(uint64_t height)
Definition monero_daemon.h:286
virtual void set_bootstrap_daemon(const std::string &address, const std::string &username="", const std::string &password="", const std::string &proxy="")
Definition monero_daemon.h:891
virtual std::shared_ptr< monero_block_header > wait_for_next_block_header()
Definition monero_daemon.h:961
virtual std::shared_ptr< monero_tx > get_tx(const std::string &tx_hash, bool prune=false)
Definition monero_daemon.h:345
virtual ~monero_daemon()
Definition monero_daemon.h:89
virtual std::shared_ptr< monero_submit_tx_result > submit_tx_hex(const std::string &tx_hex, bool do_not_relay=false)
Definition monero_daemon.h:428
virtual std::vector< std::shared_ptr< monero_output_distribution_entry > > get_output_distribution(const std::vector< uint64_t > &amounts, const boost::optional< bool > &is_cumulative=boost::none, const boost::optional< uint64_t > &start_height=boost::none, const boost::optional< uint64_t > &end_height=boost::none)
Definition monero_daemon.h:584
virtual std::vector< std::shared_ptr< monero_peer > > get_known_peers()
Definition monero_daemon.h:712
virtual std::shared_ptr< monero_block_header > get_block_header_by_height(uint64_t height)
Definition monero_daemon.h:231
virtual void stop_mining()
Definition monero_daemon.h:799
virtual std::vector< std::shared_ptr< monero_peer > > get_peers()
Definition monero_daemon.h:703
virtual std::shared_ptr< monero_add_auxiliary_pow_result > add_auxiliary_pow(const std::string &block_template_blob, const std::vector< std::shared_ptr< monero_auxiliary_pow > > &aux_pow)
Definition monero_daemon.h:202
virtual void set_outgoing_peer_limit(int limit)
Definition monero_daemon.h:731
virtual std::shared_ptr< monero_daemon_sync_info > get_sync_info()
Definition monero_daemon.h:602
virtual std::vector< std::string > get_tx_hexes(const std::vector< std::string > &tx_hashes, bool prune=false)
Definition monero_daemon.h:396
virtual std::shared_ptr< monero_ban > get_peer_ban(const std::string &address)
Definition monero_daemon.h:780
virtual std::shared_ptr< monero_prune_result > prune_blockchain(bool check)
Definition monero_daemon.h:851
virtual std::shared_ptr< monero_block > get_block_by_hash(const std::string &block_hash)
Definition monero_daemon.h:252
Definition monero_error.h:61
monero_key_image_spent_status
Definition monero_daemon_model.h:298
Definition monero_daemon_model.h:142