elements/src/node
2023-10-14 16:21:34 +00:00
..
blockstorage.cpp Merge 5e49b2a252 into merged_master (Bitcoin PR bitcoin/bitcoin#24050) 2023-10-13 12:02:55 +00:00
blockstorage.h Merge 5e49b2a252 into merged_master (Bitcoin PR bitcoin/bitcoin#24050) 2023-10-13 12:02:55 +00:00
caches.cpp
caches.h
chainstate.cpp
chainstate.h
coin.cpp
coin.h
coinstats.cpp
coinstats.h
context.cpp
context.h
interfaces.cpp Merge 848b11615b into merged_master (Bitcoin PR bitcoin/bitcoin#22834) 2023-07-03 09:33:46 +00:00
miner.cpp Merge 23e8c702bc into merged_master (Bitcoin PR bitcoin/bitcoin#24421) 2023-10-14 16:21:34 +00:00
miner.h Merge 23e8c702bc into merged_master (Bitcoin PR bitcoin/bitcoin#24421) 2023-10-14 16:21:34 +00:00
minisketchwrapper.cpp
minisketchwrapper.h
psbt.cpp
psbt.h
README.md
transaction.cpp
transaction.h
ui_interface.cpp
ui_interface.h
utxo_snapshot.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.