0
0
Fork 0
mirror of https://github.com/bitcoin/bitcoin.git synced 2025-03-09 15:37:00 -04:00
bitcoin-core/src/interfaces
Andrew Chow f1ee37319a wallet: Reload previously loaded wallets on GUI startup
Enable the GUI to also use the load_on_startup feature.
Wallets loaded in the GUI always have load_on_startup=true.
When they are unloaded from the GUI, load_on_startup=false.

To facilitate this change, UpdateWalletSetting is moved into the wallet
module and called from within LoadWallet, RemoveWallet, and
Createwallet. This change does not actually touch the GUI code but
rather the wallet functions that are shared between the GUI and RPC.
2020-09-01 12:13:50 -04:00
..
chain.cpp Add loadwallet and createwallet RPC load_on_startup options 2020-08-13 09:44:48 -04:00
chain.h refactor: Move wallet methods out of chain.h and node.h 2020-08-27 14:33:00 -04:00
handler.cpp scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
handler.h scripted-diff: Bump copyright headers 2020-04-16 13:33:09 -04:00
node.cpp refactor: Move wallet methods out of chain.h and node.h 2020-08-27 14:33:00 -04:00
node.h refactor: Move wallet methods out of chain.h and node.h 2020-08-27 14:33:00 -04:00
README.md Suggested interfaces::Chain cleanups from #15288 2019-03-04 15:57:58 -05:00
wallet.cpp wallet: Reload previously loaded wallets on GUI startup 2020-09-01 12:13:50 -04:00
wallet.h refactor: Move wallet methods out of chain.h and node.h 2020-08-27 14:33:00 -04:00

Internal c++ interfaces

The following interfaces are defined here:

  • Chain — used by wallet to access blockchain and mempool state. Added in #14437, #14711, #15288, and #10973.

  • ChainClient — used by node to start & stop Chain clients. Added in #14437.

  • Node — used by GUI to start & stop bitcoin node. Added in #10244.

  • Wallet — used by GUI to access wallets. Added in #10244.

  • Handler — returned by handleEvent methods on interfaces above and used to manage lifetimes of event handlers.

  • Init — used by multiprocess code to access interfaces above on startup. Added in #10102.

The interfaces above define boundaries between major components of bitcoin code (node, wallet, and gui), making it possible for them to run in different processes, and be tested, developed, and understood independently. These interfaces are not currently designed to be stable or to be used externally.