elements/src/node
2025-06-20 10:46:05 +02:00
..
blockmanager_args.cpp refactor, blockstorage: Replace stopafterblockimport arg 2023-05-10 19:07:46 +02:00
blockmanager_args.h Move ::nPruneTarget into BlockManager 2023-03-15 15:33:12 +01:00
blockstorage.cpp Merge c2f2abd0a4 into merged_master (Bitcoin PR bitcoin/bitcoin#27125) 2025-06-20 10:46:05 +02:00
blockstorage.h Merge c2f2abd0a4 into merged_master (Bitcoin PR bitcoin/bitcoin#27125) 2025-06-20 10:46:05 +02:00
caches.cpp move-only: Extract common/args and common/config.cpp from util/system 2023-04-19 10:48:30 +02:00
caches.h
chainstate.cpp refactor: Move functions to BlockManager methods 2023-05-10 19:06:53 +02:00
chainstate.h doc: add explanation for fail_on_insufficient_dbcache 2023-02-24 15:11:27 -05:00
chainstatemanager_args.cpp move-only: Extract common/args and common/config.cpp from util/system 2023-04-19 10:48:30 +02:00
chainstatemanager_args.h
coin.cpp
coin.h scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
coins_view_args.cpp move-only: Extract common/args and common/config.cpp from util/system 2023-04-19 10:48:30 +02:00
coins_view_args.h refactor, txdb: Add CoinsViewOptions struct 2023-02-10 04:39:11 -04:00
connection_types.cpp
connection_types.h
context.cpp scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
context.h Merge e9262ea32a into merged_master (Bitcoin PR bitcoin/bitcoin#26750) 2025-03-31 16:37:52 +02:00
database_args.cpp move-only: Extract common/args and common/config.cpp from util/system 2023-04-19 10:48:30 +02:00
database_args.h refactor, dbwrapper: Add DBParams and DBOptions structs 2023-02-10 04:39:11 -04:00
eviction.cpp
eviction.h
interface_ui.cpp Add InitError(error, details) overload 2023-02-28 12:04:47 -05:00
interface_ui.h Merge fc037c8c83 into merged_master (Bitcoin PR bitcoin/bitcoin#27150) 2025-04-09 17:42:19 +00:00
interfaces.cpp Merge c2f2abd0a4 into merged_master (Bitcoin PR bitcoin/bitcoin#27125) 2025-06-20 10:46:05 +02:00
mempool_args.cpp refactor: Replace string chain name constants with ChainTypes 2023-05-09 15:49:14 +02:00
mempool_args.h
mempool_persist_args.cpp move-only: Extract common/args and common/config.cpp from util/system 2023-04-19 10:48:30 +02:00
mempool_persist_args.h refactor: Move fs.* to util/fs.* 2023-03-23 12:55:18 +01:00
miner.cpp Merge 669af32632 into merged_master (Bitcoin PR bitcoin/bitcoin#27419) 2025-05-09 11:47:45 +02:00
miner.h Merge 08b65df1bb into merged_master (Bitcoin PR bitcoin/bitcoin#26883) 2025-04-07 10:22:15 +02:00
minisketchwrapper.cpp Use steady clock in SeedStrengthen and FindBestImplementation 2023-03-02 14:48:28 +01:00
minisketchwrapper.h
psbt.cpp Merge e9262ea32a into merged_master (Bitcoin PR bitcoin/bitcoin#26750) 2025-03-31 16:37:52 +02:00
psbt.h Merge c561f2f06e into merged_master (Bitcoin PR bitcoin/bitcoin#23497) 2023-06-19 09:28:31 +00:00
README.md
transaction.cpp refactor: Move functions to BlockManager methods 2023-05-10 19:06:53 +02:00
transaction.h refactor: Move functions to BlockManager methods 2023-05-10 19:06:53 +02:00
txreconciliation.cpp move-only: Extract common/args and common/config.cpp from util/system 2023-04-19 10:48:30 +02:00
txreconciliation.h
utxo_snapshot.cpp move-only: Extract common/args and common/config.cpp from util/system 2023-04-19 10:48:30 +02:00
utxo_snapshot.h refactor: Move fs.* to util/fs.* 2023-03-23 12:55:18 +01:00
validation_cache_args.cpp move-only: Extract common/args and common/config.cpp from util/system 2023-04-19 10:48:30 +02:00
validation_cache_args.h

src/node/

The src/node/ directory contains code that needs to access node state (state in CChain, CBlockIndex, CCoinsView, CTxMemPool, and similar classes).

Code in src/node/ is meant to be segregated from code in src/wallet/ and src/qt/, to ensure wallet and GUI code changes don't interfere with node operation, to allow wallet and GUI code to run in separate processes, and to perhaps eventually allow wallet and GUI code to be maintained in separate source repositories.

As a rule of thumb, code in one of the src/node/, src/wallet/, or src/qt/ directories should avoid calling code in the other directories directly, and only invoke it indirectly through the more limited src/interfaces/ classes.

This directory is at the moment sparsely populated. Eventually more substantial files like src/validation.cpp and src/txmempool.cpp might be moved there.