elements/src/node
2026-03-05 16:00:34 +00:00
..
abort.cpp refactor: remove warnings globals 2024-06-13 11:20:49 +01:00
abort.h refactor: remove warnings globals 2024-06-13 11:20:49 +01:00
blockmanager_args.cpp kernel: Add less confusing reindex options 2024-06-07 19:17:11 +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 f4849f6922 into merged_master (Bitcoin PR bitcoin/bitcoin#29668) 2026-03-05 16:00:34 +00:00
blockstorage.h Merge f4849f6922 into merged_master (Bitcoin PR bitcoin/bitcoin#29668) 2026-03-05 16:00:34 +00:00
caches.cpp
caches.h
chainstate.cpp blockman: Replace m_reindexing with m_blockfiles_indexed 2024-06-07 19:18:46 +02:00
chainstate.h kernel: Add less confusing reindex options 2024-06-07 19:17:11 +02:00
chainstatemanager_args.cpp kernel: De-globalize signature cache 2024-07-05 09:03:04 +02:00
chainstatemanager_args.h refactor: Move {MAX,DEFAULT}_SCRIPTCHECK_THREADS constants 2023-10-03 10:52:17 +01:00
coin.cpp
coin.h
coins_view_args.cpp
coins_view_args.h
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 Introduce Mining interface 2024-06-18 18:47:51 +02:00
context.h Merge 323b0acfcb into merged_master (Bitcoin PR bitcoin/bitcoin#30200) 2026-03-02 15:10:06 +00:00
database_args.cpp
database_args.h
eviction.cpp
eviction.h
interface_ui.cpp util: Move util/string.h functions to util namespace 2024-05-16 10:16:08 -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 2f6dca4d1c into merged_master (Bitcoin PR bitcoin/bitcoin#30335) 2026-03-03 11:17:26 +00:00
kernel_notifications.cpp Merge bitcoin/bitcoin#30058: Encapsulate warnings in generalized node::Warnings and remove globals 2024-06-17 17:09:18 -04:00
kernel_notifications.h refactor: remove warnings globals 2024-06-13 11:20:49 +01:00
mempool_args.cpp util: move fees.h and error.h to common/messages.h 2024-05-16 10:16:08 -05:00
mempool_args.h refactor: Replace std::optional<bilingual_str> with util::Result 2023-05-24 08:55:47 -04:00
mempool_persist.cpp mempool: move LoadMempool/DumpMempool to node 2024-06-26 22:47:09 +00:00
mempool_persist.h mempool: move LoadMempool/DumpMempool to node 2024-06-26 22:47:09 +00:00
mempool_persist_args.cpp
mempool_persist_args.h
miner.cpp Merge be63674c18 into merged_master (Bitcoin PR bitcoin/bitcoin#30324) 2026-03-03 13:59:54 +00:00
miner.h Merge be63674c18 into merged_master (Bitcoin PR bitcoin/bitcoin#30324) 2026-03-03 13:59:54 +00:00
mini_miner.cpp [refactor] Miniminer var cached_descendants to descendants 2023-11-07 08:56:43 -06:00
mini_miner.h Don't use iterator addresses in IteratorComparator 2024-06-19 10:14:31 +01:00
minisketchwrapper.cpp
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
timeoffsets.cpp refactor: remove warnings globals 2024-06-13 11:20:49 +01:00
timeoffsets.h refactor: remove warnings globals 2024-06-13 11:20:49 +01:00
transaction.cpp util: add TransactionError includes and namespace declarations 2024-05-16 10:16:08 -05:00
transaction.h util: move fees.h and error.h to common/messages.h 2024-05-16 10:16:08 -05:00
txreconciliation.cpp Merge 5c0cd205a1 into merged_master (Bitcoin PR bitcoin/bitcoin#29625) 2026-03-03 15:43:14 +00:00
txreconciliation.h [net processing] Move -txreconciliation to PeerManager::Options 2023-07-24 18:35:28 +02:00
types.h util: add TransactionError includes and namespace declarations 2024-05-16 10:16:08 -05:00
utxo_snapshot.cpp lint: remove /* Continued */ markers from codebase 2023-08-03 17:52:24 +01:00
utxo_snapshot.h assumeutxo: Add network magic ctor param to SnapshotMetadata 2024-05-24 18:44:02 +02:00
validation_cache_args.cpp kernel: De-globalize signature cache 2024-07-05 09:03:04 +02:00
validation_cache_args.h kernel: De-globalize signature cache 2024-07-05 09:03:04 +02:00
warnings.cpp Use WITH_LOCK in Warnings::Set 2024-07-06 13:00:53 -04:00
warnings.h refactor: remove warnings globals 2024-06-13 11:20:49 +01:00

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.