Monero
Classes | Namespaces | Macros | Functions
wallet2.h File Reference
#include <memory>
#include <boost/program_options/options_description.hpp>
#include <boost/program_options/variables_map.hpp>
#include <boost/serialization/list.hpp>
#include <boost/serialization/vector.hpp>
#include <boost/serialization/deque.hpp>
#include <boost/thread/lock_guard.hpp>
#include <atomic>
#include <random>
#include "include_base_utils.h"
#include "cryptonote_basic/account.h"
#include "cryptonote_basic/account_boost_serialization.h"
#include "cryptonote_basic/cryptonote_basic_impl.h"
#include "net/http.h"
#include "storages/http_abstract_invoke.h"
#include "rpc/core_rpc_server_commands_defs.h"
#include "cryptonote_basic/cryptonote_format_utils.h"
#include "cryptonote_core/cryptonote_tx_utils.h"
#include "common/unordered_containers_boost_serialization.h"
#include "common/util.h"
#include "crypto/chacha.h"
#include "crypto/hash.h"
#include "ringct/rctTypes.h"
#include "ringct/rctOps.h"
#include "checkpoints/checkpoints.h"
#include "serialization/crypto.h"
#include "serialization/string.h"
#include "serialization/pair.h"
#include "serialization/tuple.h"
#include "serialization/containers.h"
#include "wallet_errors.h"
#include "common/password.h"
#include "node_rpc_proxy.h"
#include "message_store.h"
#include "wallet_light_rpc.h"
#include "wallet_rpc_helpers.h"
Include dependency graph for wallet2.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  tools::gamma_picker
 
struct  tools::gamma_picker::gamma_engine
 
class  tools::wallet_keys_unlocker
 
class  tools::i_wallet2_callback
 
class  tools::wallet_device_callback
 
struct  tools::tx_dust_policy
 
class  tools::hashchain
 
class  tools::wallet2
 
struct  tools::wallet2::multisig_info
 
struct  tools::wallet2::multisig_info::LR
 
struct  tools::wallet2::tx_scan_info_t
 
struct  tools::wallet2::transfer_details
 
struct  tools::wallet2::exported_transfer_details
 
struct  tools::wallet2::payment_details
 
struct  tools::wallet2::address_tx
 
struct  tools::wallet2::pool_payment_details
 
struct  tools::wallet2::unconfirmed_transfer_details
 
struct  tools::wallet2::confirmed_transfer_details
 
struct  tools::wallet2::tx_construction_data
 
struct  tools::wallet2::multisig_sig
 
struct  tools::wallet2::pending_tx
 
struct  tools::wallet2::unsigned_tx_set
 
struct  tools::wallet2::signed_tx_set
 
struct  tools::wallet2::multisig_tx_set
 
struct  tools::wallet2::keys_file_data
 
struct  tools::wallet2::cache_file_data
 
struct  tools::wallet2::address_book_row
 
struct  tools::wallet2::reserve_proof_entry
 
struct  tools::wallet2::background_synced_tx_t
 
struct  tools::wallet2::background_sync_data_t
 
struct  tools::wallet2::parsed_block
 
struct  tools::wallet2::is_out_data
 
struct  tools::wallet2::tx_cache_data
 
struct  tools::wallet2::detached_blockchain_data
 
struct  tools::wallet2::process_tx_entry_t
 
struct  tools::wallet2::tx_entry_data
 
struct  tools::wallet2::message_signature_result_t
 

Namespaces

 tools
 Various Tools.
 
 boost
 
 boost::serialization
 
 tools::detail
 

Macros

#define MONERO_DEFAULT_LOG_CATEGORY   "wallet.wallet2"
 
#define THROW_ON_RPC_RESPONSE_ERROR(r, error, res, method, ...)
 
#define THROW_ON_RPC_RESPONSE_ERROR_GENERIC(r, err, res, method)   THROW_ON_RPC_RESPONSE_ERROR(r, err, res, method, tools::error::wallet_generic_rpc_error, method, res.status)
 

Functions

template<class Archive , class F , class S , class T >
void boost::serialization::serialize (Archive &ar, std::tuple< F, S, T > &t, const unsigned int)
 
template<class Archive >
std::enable_if<!Archive::is_loading::value, void >::type boost::serialization::initialize_transfer_details (Archive &a, tools::wallet2::transfer_details &x, const boost::serialization::version_type ver)
 
template<class Archive >
std::enable_if< Archive::is_loading::value, void >::type boost::serialization::initialize_transfer_details (Archive &a, tools::wallet2::transfer_details &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::transfer_details &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::multisig_info::LR &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::multisig_info &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::multisig_tx_set &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::unconfirmed_transfer_details &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::confirmed_transfer_details &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::payment_details &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::pool_payment_details &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::address_book_row &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::reserve_proof_entry &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::unsigned_tx_set &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::signed_tx_set &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::tx_construction_data &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::multisig_sig &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::pending_tx &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::background_synced_tx_t &x, const boost::serialization::version_type ver)
 
template<class Archive >
void boost::serialization::serialize (Archive &a, tools::wallet2::background_sync_data_t &x, const boost::serialization::version_type ver)
 
void tools::detail::digit_split_strategy (const std::vector< cryptonote::tx_destination_entry > &dsts, const cryptonote::tx_destination_entry &change_dst, uint64_t dust_threshold, std::vector< cryptonote::tx_destination_entry > &splitted_dsts, std::vector< cryptonote::tx_destination_entry > &dust_dsts)
 
void tools::detail::null_split_strategy (const std::vector< cryptonote::tx_destination_entry > &dsts, const cryptonote::tx_destination_entry &change_dst, uint64_t dust_threshold, std::vector< cryptonote::tx_destination_entry > &splitted_dsts, std::vector< cryptonote::tx_destination_entry > &dust_dsts)
 
void tools::detail::print_source_entry (const cryptonote::tx_source_entry &src)
 

Macro Definition Documentation

◆ MONERO_DEFAULT_LOG_CATEGORY

#define MONERO_DEFAULT_LOG_CATEGORY   "wallet.wallet2"

◆ THROW_ON_RPC_RESPONSE_ERROR

#define THROW_ON_RPC_RESPONSE_ERROR (   r,
  error,
  res,
  method,
  ... 
)
Value:
do { \
handle_payment_changes(res, std::integral_constant<bool, HasCredits<decltype(res)>::Has>()); \
throw_on_rpc_response_error(r, error, res.status, method); \
THROW_WALLET_EXCEPTION_IF(res.status != CORE_RPC_STATUS_OK, ## __VA_ARGS__); \
} while(0)
const char * res
Definition: hmac_keccak.cpp:42
#define CORE_RPC_STATUS_OK
Definition: core_rpc_server_commands_defs.h:78
r
Definition: testupnpigd.py:61
error
Tracks LMDB error codes.
Definition: error.h:44

◆ THROW_ON_RPC_RESPONSE_ERROR_GENERIC

#define THROW_ON_RPC_RESPONSE_ERROR_GENERIC (   r,
  err,
  res,
  method 
)    THROW_ON_RPC_RESPONSE_ERROR(r, err, res, method, tools::error::wallet_generic_rpc_error, method, res.status)