elements/src/node
2025-11-17 21:42:59 +02:00
..
abort.cpp refactor: Remove calls to StartShutdown from KernelNotifications 2023-12-04 15:39:15 -04:00
abort.h refactor: Remove calls to StartShutdown from KernelNotifications 2023-12-04 15:39:15 -04:00
blockmanager_args.cpp refactor: Move stopafterblockimport handling out of blockstorage 2023-07-11 12:00:57 +02:00
blockmanager_args.h Add [[nodiscard]] where ignoring a Result return type is an error 2023-05-29 13:12:45 +02:00
blockstorage.cpp Merge 622e79e0fb into merged_master (Bitcoin PR bitcoin/bitcoin#29021) 2025-11-17 15:07:22 +02:00
blockstorage.h Merge 622e79e0fb into merged_master (Bitcoin PR bitcoin/bitcoin#29021) 2025-11-17 15:07:22 +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: Remove call to ShutdownRequested from chainstate init 2023-12-04 15:39:15 -04:00
chainstate.h refactor: Remove call to ShutdownRequested from chainstate init 2023-12-04 15:39:15 -04:00
chainstatemanager_args.cpp refactor: Move {MAX,DEFAULT}_SCRIPTCHECK_THREADS constants 2023-10-03 10:52:17 +01:00
chainstatemanager_args.h refactor: Move {MAX,DEFAULT}_SCRIPTCHECK_THREADS constants 2023-10-03 10:52:17 +01:00
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 net: expose transport types/session IDs of connections in RPC and logs 2023-10-02 18:11:11 -04:00
connection_types.h net: expose transport types/session IDs of connections in RPC and logs 2023-10-02 18:11:11 -04:00
context.cpp kernel: Add notification interface 2023-05-20 12:03:22 +02:00
context.h Merge 4ad5c71adb into merged_master (Bitcoin PR bitcoin/bitcoin#28051) 2025-11-17 16:50:25 +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 143ace65db into merged_master (Bitcoin PR bitcoin/bitcoin#28890) 2025-11-17 21:42:59 +02:00
kernel_notifications.cpp refactor: Remove calls to StartShutdown from KernelNotifications 2023-12-04 15:39:15 -04:00
kernel_notifications.h refactor: Remove calls to StartShutdown from KernelNotifications 2023-12-04 15:39:15 -04:00
mempool_args.cpp mempool: persist with XOR 2023-11-09 19:44:50 +01:00
mempool_args.h refactor: Replace std::optional<bilingual_str> with util::Result 2023-05-24 08:55:47 -04:00
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 950af7c876 into merged_master (Bitcoin PR bitcoin/bitcoin#28878) 2025-11-10 14:35:23 +02:00
miner.h Merge dd5f5713bc into merged_master (Bitcoin PR bitcoin/bitcoin#28391) 2025-11-06 11:13:40 +02:00
mini_miner.cpp [refactor] Miniminer var cached_descendants to descendants 2023-11-07 08:56:43 -06:00
mini_miner.h [refactor] updating miniminer comments to be more accurate 2023-11-08 14:45:18 -06:00
minisketchwrapper.cpp Use steady clock in SeedStrengthen and FindBestImplementation 2023-03-02 14:48:28 +01:00
minisketchwrapper.h
peerman_args.cpp Merge bitcoin/bitcoin#28149: net processing: clamp PeerManager::Options user input 2023-08-09 14:26:03 +02:00
peerman_args.h [net processing] Introduce PeerManager options 2023-07-24 18:30:59 +02:00
protocol_version.h Rename version.h to node/protocol_version.h 2023-11-30 11:28:31 +01:00
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 Use Txid in COutpoint 2023-11-21 13:15:44 +00:00
transaction.h refactor: Move functions to BlockManager methods 2023-05-10 19:06:53 +02:00
txreconciliation.cpp refactor: Move system from util to common library 2023-05-20 12:08:13 +02:00
txreconciliation.h [net processing] Move -txreconciliation to PeerManager::Options 2023-07-24 18:35:28 +02:00
utxo_snapshot.cpp lint: remove /* Continued */ markers from codebase 2023-08-03 17:52:24 +01:00
utxo_snapshot.h refactor: Remove unused nchaintx from SnapshotMetadata constructor 2023-10-12 11:14:32 +02: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.