elements/src/node
2026-03-13 13:51:41 +00:00
..
abort.cpp
abort.h
blockmanager_args.cpp
blockmanager_args.h
blockstorage.cpp Merge 24ced52744 into merged_master (Bitcoin PR bitcoin/bitcoin#28687) 2026-03-12 13:25:17 +00:00
blockstorage.h Merge 949b673472 into merged_master (Bitcoin PR bitcoin/bitcoin#28052) 2026-03-11 12:29:52 +00:00
caches.cpp
caches.h
chainstate.cpp
chainstate.h
chainstatemanager_args.cpp
chainstatemanager_args.h
coin.cpp
coin.h
coins_view_args.cpp
coins_view_args.h
connection_types.cpp
connection_types.h
context.cpp
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
interface_ui.h Merge fc037c8c83 into merged_master (Bitcoin PR bitcoin/bitcoin#27150) 2025-04-09 17:42:19 +00:00
interfaces.cpp Merge ec8b38c7b9 into merged_master (Bitcoin PR bitcoin/bitcoin#626) 2026-03-11 00:30:35 +00:00
kernel_notifications.cpp
kernel_notifications.h
mempool_args.cpp
mempool_args.h
mempool_persist.cpp
mempool_persist.h
mempool_persist_args.cpp
mempool_persist_args.h
miner.cpp Merge 338b9d82dc into merged_master (Bitcoin PR bitcoin/bitcoin#30681) 2026-03-13 13:51:41 +00:00
miner.h Merge 0f68a05c08 into merged_master (Bitcoin PR bitcoin/bitcoin#30194) 2026-03-11 23:06:03 +00:00
mini_miner.cpp
mini_miner.h
minisketchwrapper.cpp
minisketchwrapper.h
peerman_args.cpp
peerman_args.h
protocol_version.h
psbt.cpp Merge e9262ea32a into merged_master (Bitcoin PR bitcoin/bitcoin#26750) 2025-03-31 16:37:52 +02:00
psbt.h
README.md
timeoffsets.cpp
timeoffsets.h
transaction.cpp
transaction.h
txreconciliation.cpp Merge 5c0cd205a1 into merged_master (Bitcoin PR bitcoin/bitcoin#29625) 2026-03-03 15:43:14 +00:00
txreconciliation.h
types.h
utxo_snapshot.cpp
utxo_snapshot.h
validation_cache_args.cpp
validation_cache_args.h
warnings.cpp
warnings.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.