diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp index 7928e1c6..5ff8ae40 100644 --- a/src/wallet/wallet2.cpp +++ b/src/wallet/wallet2.cpp @@ -89,7 +89,7 @@ void wallet2::init(const std::string& daemon_address, uint64_t upper_transaction m_daemon_address = daemon_address; } //---------------------------------------------------------------------------------------------------- -bool wallet2::is_deterministic() +bool wallet2::is_deterministic() const { crypto::secret_key second; keccak((uint8_t *)&get_account().get_keys().m_spend_secret_key, sizeof(crypto::secret_key), (uint8_t *)&second, sizeof(crypto::secret_key)); @@ -98,7 +98,7 @@ bool wallet2::is_deterministic() return keys_deterministic; } //---------------------------------------------------------------------------------------------------- -bool wallet2::get_seed(std::string& electrum_words) +bool wallet2::get_seed(std::string& electrum_words) const { bool keys_deterministic = is_deterministic(); if (!keys_deterministic) @@ -119,7 +119,7 @@ bool wallet2::get_seed(std::string& electrum_words) /*! * \brief Gets the seed language */ -const std::string wallet2::get_seed_language() +const std::string &wallet2::get_seed_language() const { return seed_language; } @@ -287,7 +287,7 @@ void wallet2::process_new_blockchain_entry(const cryptonote::block& b, cryptonot m_callback->on_new_block(height, b); } //---------------------------------------------------------------------------------------------------- -void wallet2::get_short_chain_history(std::list& ids) +void wallet2::get_short_chain_history(std::list& ids) const { size_t i = 0; size_t current_multiplier = 1; @@ -580,7 +580,7 @@ void wallet2::load_keys(const std::string& keys_file_name, const std::string& pa * can be used prior to rewriting wallet keys file, to ensure user has entered the correct password * */ -bool wallet2::verify_password(const std::string& password) +bool wallet2::verify_password(const std::string& password) const { const std::string keys_file_name = m_keys_file; wallet2::keys_file_data keys_file_data; @@ -765,7 +765,7 @@ void wallet2::load(const std::string& wallet_, const std::string& password) m_local_bc_height = m_blockchain.size(); } //---------------------------------------------------------------------------------------------------- -void wallet2::check_genesis(const crypto::hash& genesis_hash) { +void wallet2::check_genesis(const crypto::hash& genesis_hash) const { std::string what("Genesis block missmatch. You probably use wallet without testnet flag with blockchain from test network or vice versa"); THROW_WALLET_EXCEPTION_IF(genesis_hash != m_blockchain[0], error::wallet_internal_error, what); @@ -777,17 +777,17 @@ void wallet2::store() THROW_WALLET_EXCEPTION_IF(!r, error::file_save_error, m_wallet_file); } //---------------------------------------------------------------------------------------------------- -uint64_t wallet2::unlocked_balance() +uint64_t wallet2::unlocked_balance() const { uint64_t amount = 0; - BOOST_FOREACH(transfer_details& td, m_transfers) + BOOST_FOREACH(const transfer_details& td, m_transfers) if(!td.m_spent && is_transfer_unlocked(td)) amount += td.amount(); return amount; } //---------------------------------------------------------------------------------------------------- -uint64_t wallet2::balance() +uint64_t wallet2::balance() const { uint64_t amount = 0; BOOST_FOREACH(auto& td, m_transfers) diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h index 1febfba3..712cda40 100644 --- a/src/wallet/wallet2.h +++ b/src/wallet/wallet2.h @@ -157,8 +157,9 @@ namespace tools /*! * \brief verifies given password is correct for default wallet keys file */ - bool verify_password(const std::string& password); + bool verify_password(const std::string& password) const; cryptonote::account_base& get_account(){return m_account;} + const cryptonote::account_base& get_account()const{return m_account;} // upper_transaction_size_limit as defined below is set to // approximately 125% of the fixed minimum allowable penalty @@ -176,12 +177,12 @@ namespace tools /*! * \brief Checks if deterministic wallet */ - bool is_deterministic(); - bool get_seed(std::string& electrum_words); + bool is_deterministic() const; + bool get_seed(std::string& electrum_words) const; /*! * \brief Gets the seed language */ - const std::string get_seed_language(); + const std::string &get_seed_language() const; /*! * \brief Sets the seed language */ @@ -195,11 +196,11 @@ namespace tools void refresh(uint64_t start_height, size_t & blocks_fetched, bool& received_money); bool refresh(size_t & blocks_fetched, bool& received_money, bool& ok); - bool testnet() { return m_testnet; } + bool testnet() const { return m_testnet; } bool restricted() const { return m_restricted; } - uint64_t balance(); - uint64_t unlocked_balance(); + uint64_t balance() const; + uint64_t unlocked_balance() const; template void transfer(const std::vector& dsts, size_t fake_outputs_count, uint64_t unlock_time, uint64_t fee, const std::vector& extra, T destination_split_strategy, const tx_dust_policy& dust_policy); template @@ -267,7 +268,7 @@ namespace tools void process_new_transaction(const cryptonote::transaction& tx, uint64_t height); void process_new_blockchain_entry(const cryptonote::block& b, cryptonote::block_complete_entry& bche, crypto::hash& bl_id, uint64_t height); void detach_blockchain(uint64_t height); - void get_short_chain_history(std::list& ids); + void get_short_chain_history(std::list& ids) const; bool is_tx_spendtime_unlocked(uint64_t unlock_time) const; bool is_transfer_unlocked(const transfer_details& td) const; bool clear(); @@ -277,7 +278,7 @@ namespace tools void process_unconfirmed(const cryptonote::transaction& tx); void add_unconfirmed_tx(const cryptonote::transaction& tx, uint64_t change_amount); void generate_genesis(cryptonote::block& b); - void check_genesis(const crypto::hash& genesis_hash); //throws + void check_genesis(const crypto::hash& genesis_hash) const; //throws cryptonote::account_base m_account; std::string m_daemon_address;