elements/src/node
2025-07-04 17:24:18 +02:00
..
abort.cpp kernel: Add fatalError method to notifications 2023-06-28 09:52:33 +02:00
abort.h kernel: Add fatalError method to notifications 2023-06-28 09:52:33 +02: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 be44332803 into merged_master (Bitcoin PR bitcoin/bitcoin#28191) 2025-07-03 15:53:03 +02:00
blockstorage.h Merge be44332803 into merged_master (Bitcoin PR bitcoin/bitcoin#28191) 2025-07-03 15:53:03 +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 Move block-arrival information / preciousblock counters to ChainstateManager 2023-07-14 17:09:06 -04:00
chainstate.h validation: Stricter assumeutxo error handling in LoadChainstate 2023-06-15 15:11:32 -04:00
chainstatemanager_args.cpp kernel: Remove StartShutdown calls from validation code 2023-07-11 12:30:56 -04:00
chainstatemanager_args.h Add [[nodiscard]] where ignoring a Result return type is an error 2023-05-29 13:12:45 +02:00
coin.cpp
coin.h
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
connection_types.cpp
connection_types.h
context.cpp kernel: Add notification interface 2023-05-20 12:03:22 +02:00
context.h Merge ef29d5d7e2 into merged_master (Bitcoin PR bitcoin/bitcoin#27607) 2025-07-01 11:32:01 +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
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 a62f5ee86c into merged_master (Bitcoin PR bitcoin/bitcoin#27675) 2025-07-04 09:56:00 +02:00
kernel_notifications.cpp kernel: Remove StartShutdown calls from validation code 2023-07-11 12:30:56 -04:00
kernel_notifications.h kernel: Remove StartShutdown calls from validation code 2023-07-11 12:30:56 -04:00
mempool_args.cpp Clean up things that include script/standard.h 2023-08-14 17:38:27 -04: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 b565485c24 into merged_master (Bitcoin PR bitcoin/bitcoin#28186) 2025-07-03 20:58:01 +02:00
miner.h Merge 361a0c00b3 into merged_master (Bitcoin PR bitcoin/bitcoin#27783) 2025-06-27 13:45:18 +02:00
mini_miner.cpp Mitigate timeout in CalculateTotalBumpFees 2023-06-01 18:04:44 -04:00
mini_miner.h Implement Mini version of BlockAssembler to calculate mining scores 2023-03-30 17:03:04 -04: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
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 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: Add path argument to FindSnapshotChainstateDir 2023-05-30 16:52:48 +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.