bitcoin/src/node
2025-02-10 09:56:09 -05:00
..
abort.cpp refactor: Split up NodeContext shutdown_signal and shutdown_request 2024-10-01 09:10:54 +02:00
abort.h refactor: Split up NodeContext shutdown_signal and shutdown_request 2024-10-01 09:10:54 +02:00
blockmanager_args.cpp kernel: Move block tree db open to block manager 2025-01-20 21:19:39 +01:00
blockmanager_args.h
blockstorage.cpp Merge bitcoin/bitcoin#30965: kernel: Move block tree db open to block manager 2025-01-31 15:28:06 -05:00
blockstorage.h kernel: Move block tree db open to BlockManager constructor 2025-01-20 21:27:50 +01:00
caches.cpp init: Use size_t consistently for cache sizes 2025-01-15 15:44:56 +01:00
caches.h init: Use size_t consistently for cache sizes 2025-01-15 15:44:56 +01:00
chainstate.cpp kernel: Move block tree db open to BlockManager constructor 2025-01-20 21:27:50 +01:00
chainstate.h kernel: Move block tree db open to block manager 2025-01-20 21:19:39 +01:00
chainstatemanager_args.cpp kernel: Move block tree db open to block manager 2025-01-20 21:19:39 +01:00
chainstatemanager_args.h refactor: Clamp worker threads in ChainstateManager constructor 2024-11-18 11:13:20 +01:00
coin.cpp refactor: Rely on returned value of GetCoin instead of parameter 2024-09-18 20:03:47 +02:00
coin.h
coins_view_args.cpp
coins_view_args.h
connection_types.cpp
connection_types.h
context.cpp
context.h refactor: Split up NodeContext shutdown_signal and shutdown_request 2024-10-01 09:10:54 +02:00
database_args.cpp
database_args.h
eviction.cpp
eviction.h
interface_ui.cpp refactor: Use + instead of strformat to concatenate translated & untranslated strings 2024-12-04 15:09:05 -04:00
interface_ui.h add missing #include <cstdint> for GCC 15 2024-08-12 11:15:11 +01:00
interfaces.cpp Add capnp wrapper for Chain interface 2025-02-10 09:56:09 -05:00
kernel_notifications.cpp Ensure m_tip_block is never ZERO 2024-12-17 10:19:00 +07:00
kernel_notifications.h Ensure m_tip_block is never ZERO 2024-12-17 10:19:00 +07:00
mempool_args.cpp scripted-diff: Replace strprintf(Untranslated) with Untranslated(strprintf) 2024-12-04 15:09:05 -04:00
mempool_args.h
mempool_persist.cpp streams: remove AutoFile::Get() entirely 2024-09-13 21:59:29 -04:00
mempool_persist.h
mempool_persist_args.cpp
mempool_persist_args.h
miner.cpp Merge bitcoin/bitcoin#31384: mining: bugfix: Fix duplicate coinbase tx weight reservation 2025-02-10 08:26:01 -05:00
miner.h Merge bitcoin/bitcoin#31384: mining: bugfix: Fix duplicate coinbase tx weight reservation 2025-02-10 08:26:01 -05:00
mini_miner.cpp MiniMiner: use FeeFrac in AncestorFeerateComparator 2024-07-09 17:22:51 +01:00
mini_miner.h
minisketchwrapper.cpp
minisketchwrapper.h
peerman_args.cpp
peerman_args.h
protocol_version.h
psbt.cpp
psbt.h
README.md
timeoffsets.cpp
timeoffsets.h
transaction.cpp scripted-diff: rename block and undo functions for consistency 2025-01-09 15:17:02 +01:00
transaction.h
txdownloadman.h [cleanup] remove p2p_inv from AddTxAnnouncement 2025-01-06 09:02:05 -05:00
txdownloadman_impl.cpp add orphanage byte accounting to TxDownloadManagerImpl::CheckIsEmpty() 2025-02-06 15:45:30 -05:00
txdownloadman_impl.h [refactor] rename to OrphanResolutionCandidate to MaybeAdd* 2025-01-29 18:05:09 -05:00
txreconciliation.cpp
txreconciliation.h
types.h miner: bugfix: fix duplicate weight reservation in block assembler 2025-02-04 11:53:03 -05:00
utxo_snapshot.cpp streams: remove unused code 2024-09-19 07:33:02 -04:00
utxo_snapshot.h assumeutxo: Drop block height from metadata 2024-08-08 23:55:06 +02:00
warnings.cpp scripted-diff: drop config/ subdir for bitcoin-config.h, rename to bitcoin-build-config.h 2024-10-10 12:22:12 +02:00
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.