v31.1-roots.1 · Commit 6: [PATCH 06/17] feat(wallet): preserve Roots signing and spend controls on v31
src/interfaces/chain.h
Before: src/interfaces/chain.h · After: src/interfaces/chain.h
File metadata
index 20369fd2e2629c21cf1a9c593a3d61b7c7e3b275..34def9a5d676a5c089fc348d81328e56abdca578 100644
Download original patch · Release notes
Diff rows 1–38 of 38. Line numbers refer to the original before/after files.
+ Added− RemovedUnmarked lines are context.
Scroll the code area horizontally to read long lines. Before is on the left; after is on the right. Unified view fits narrow screens more easily.
src/interfaces/chain.h
CHANGED
|
@@ -18,6 +18,7 @@
|
|
| 18 |
#include <map>
|
| 19 |
#include <memory>
|
| 20 |
#include <optional>
|
|
|
|
| 21 |
#include <string>
|
| 22 |
#include <vector>
|
| 23 |
|
|
@@ -28,6 +29,8 @@ class CFeeRate;
|
|
| 28 |
class CRPCCommand;
|
| 29 |
class CScheduler;
|
| 30 |
class Coin;
|
|
|
|
|
|
|
| 31 |
class uint256;
|
| 32 |
enum class MemPoolRemovalReason;
|
| 33 |
enum class RBFTransactionState;
|
|
@@ -43,6 +46,14 @@ struct NodeContext;
|
|
| 43 |
|
| 44 |
namespace interfaces {
|
| 45 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 46 |
class Handler;
|
| 47 |
class Wallet;
|
| 48 |
|
|
@@ -175,6 +186,9 @@ public:
|
|
| 175 |
//! the current chain UTXO set. Iterates through all the keys in the map and
|
| 176 |
//! populates the values.
|
| 177 |
virtual void findCoins(std::map<COutPoint, Coin>& coins) = 0;
|
|
|
|
|
|
|
|
|
|
| 178 |
|
| 179 |
//! Estimate fraction of total transactions verified if blocks up to
|
| 180 |
//! the specified block hash are verified.
|
|
|
|
| 18 |
#include <map>
|
| 19 |
#include <memory>
|
| 20 |
#include <optional>
|
| 21 |
+
#include <set>
|
| 22 |
#include <string>
|
| 23 |
#include <vector>
|
| 24 |
|
|
|
|
| 29 |
class CRPCCommand;
|
| 30 |
class CScheduler;
|
| 31 |
class Coin;
|
| 32 |
+
class CScript;
|
| 33 |
+
class COutPoint;
|
| 34 |
class uint256;
|
| 35 |
enum class MemPoolRemovalReason;
|
| 36 |
enum class RBFTransactionState;
|
|
|
|
| 46 |
|
| 47 |
namespace interfaces {
|
| 48 |
|
| 49 |
+
//! Result of a shared UTXO-set script scan.
|
| 50 |
+
enum class ScanResult {
|
| 51 |
+
SUCCESS,
|
| 52 |
+
BUSY,
|
| 53 |
+
ABORTED,
|
| 54 |
+
UNAVAILABLE,
|
| 55 |
+
};
|
| 56 |
+
|
| 57 |
class Handler;
|
| 58 |
class Wallet;
|
| 59 |
|
|
|
|
| 186 |
//! the current chain UTXO set. Iterates through all the keys in the map and
|
| 187 |
//! populates the values.
|
| 188 |
virtual void findCoins(std::map<COutPoint, Coin>& coins) = 0;
|
| 189 |
+
//! Snapshot scan for script matches. Results can become spent before use.
|
| 190 |
+
virtual ScanResult findScriptPubKeys(const std::set<CScript>& needles, std::map<COutPoint, Coin>& coins,
|
| 191 |
+
const std::function<bool()>& should_abort = {}) = 0;
|
| 192 |
|
| 193 |
//! Estimate fraction of total transactions verified if blocks up to
|
| 194 |
//! the specified block hash are verified.
|