elements/src/node
Ryan Ofsky ea53568a06
Merge bitcoin/bitcoin#31393: refactor: Move GuessVerificationProgress into ChainstateManager
facb4d010c refactor: Move GuessVerificationProgress into ChainstateManager (MarcoFalke)

Pull request description:

  Currently the function is standalone, which means any passed-in data like `TxData` or the block pointer needs to be taken from the `ChainstateManager` and passed in. This is currently verbose and may become even more verbose if the function is reworked in the future. As the function can not be called without a `ChainstateManager` in production code anyway, make it a member function on the class.

ACKs for top commit:
  ryanofsky:
    Code review ACK facb4d010c. Nice cleanup, that should make this code less awkward to work with
  TheCharlatan:
    ACK facb4d010c
  danielabrozzoni:
    reACK facb4d010c

Tree-SHA512: b17977e12cd7c6e308c47e6a1aa920acecd4442696e46d1f30bd7c201e9898ca2d581ff0bf2cc9f7334e146c1b0c50925adb849c8c17f65dcdf6877be1c5f776
2024-12-18 13:58:10 -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 Add -blocksxor boolean option 2024-07-26 17:30:53 +02:00
blockmanager_args.h
blockstorage.cpp streams: remove unused code 2024-09-19 07:33:02 -04:00
blockstorage.h Set notifications m_tip_block in LoadChainTip() 2024-12-06 14:24:21 +07:00
caches.cpp validation: drop maximum -dbcache 2024-05-28 08:36:28 +02:00
caches.h
chainstate.cpp Merge bitcoin/bitcoin#31064: init: Correct coins db cache size setting 2024-10-29 15:12:41 -04:00
chainstate.h kernel: Add less confusing reindex options 2024-06-07 19:17:11 +02:00
chainstatemanager_args.cpp scripted-diff: Replace strprintf(Untranslated) with Untranslated(strprintf) 2024-12-04 15:09:05 -04: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 Introduce Mining interface 2024-06-18 18:47:51 +02:00
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 Merge bitcoin/bitcoin#31393: refactor: Move GuessVerificationProgress into ChainstateManager 2024-12-18 13:58:10 -05:00
kernel_notifications.cpp scripted-diff: drop config/ subdir for bitcoin-config.h, rename to bitcoin-build-config.h 2024-10-10 12:22:12 +02:00
kernel_notifications.h Set notifications m_tip_block in LoadChainTip() 2024-12-06 14:24:21 +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: move LoadMempool/DumpMempool to node 2024-06-26 22:47:09 +00:00
mempool_persist_args.cpp
mempool_persist_args.h
miner.cpp Drop script_pub_key arg from createNewBlock 2024-12-04 12:44:57 +07:00
miner.h test: drop scriptPubKeyIn arg from CreateNewBlock 2024-12-04 12:46:33 +07:00
mini_miner.cpp MiniMiner: use FeeFrac in AncestorFeerateComparator 2024-07-09 17:22:51 +01: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
peerman_args.h
protocol_version.h Rename version.h to node/protocol_version.h 2023-11-30 11:28:31 +01:00
psbt.cpp
psbt.h
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 rpc: clarify ALREADY_IN_CHAIN rpc errors 2024-08-05 15:45:58 +01:00
transaction.h util: move fees.h and error.h to common/messages.h 2024-05-16 10:16:08 -05:00
txdownloadman.h [doc] comment fixups from n30110 2024-10-30 21:13:01 -04:00
txdownloadman_impl.cpp [p2p] filter 1p1c for child txid in recent rejects 2024-10-24 21:23:56 -04:00
txdownloadman_impl.h [doc] comment fixups from n30110 2024-10-30 21:13:01 -04:00
txreconciliation.cpp random: get rid of GetRand by inlining 2024-07-01 12:39:53 -04:00
txreconciliation.h
types.h Drop script_pub_key arg from createNewBlock 2024-12-04 12:44:57 +07: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 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.