aboutsummaryrefslogtreecommitdiff
path: root/src/node
diff options
context:
space:
mode:
authorJames O'Beirne <james.obeirne@gmail.com>2019-03-28 12:09:06 -0400
committerJames O'Beirne <james.obeirne@gmail.com>2019-11-05 10:54:00 -0500
commit92fafb3a7da66f737e960e541fcfbcadedf6043a (patch)
treedfb8740306736532fb514f1e0076d5716d673e7f /src/node
parent707fde7b9ba522c22179e2db0ed7b462c65138d9 (diff)
downloadbitcoin-92fafb3a7da66f737e960e541fcfbcadedf6043a.tar.xz
coinstats: add coins_count
Also changes existing CCoinsStats attributes to be C++11 initialized.
Diffstat (limited to 'src/node')
-rw-r--r--src/node/coinstats.cpp2
-rw-r--r--src/node/coinstats.h21
2 files changed, 13 insertions, 10 deletions
diff --git a/src/node/coinstats.cpp b/src/node/coinstats.cpp
index 57fa158ad2..23269cd4b0 100644
--- a/src/node/coinstats.cpp
+++ b/src/node/coinstats.cpp
@@ -38,6 +38,7 @@ static void ApplyStats(CCoinsStats &stats, CHashWriter& ss, const uint256& hash,
//! Calculate statistics about the unspent transaction output set
bool GetUTXOStats(CCoinsView *view, CCoinsStats &stats)
{
+ stats = CCoinsStats();
std::unique_ptr<CCoinsViewCursor> pcursor(view->Cursor());
assert(pcursor);
@@ -61,6 +62,7 @@ bool GetUTXOStats(CCoinsView *view, CCoinsStats &stats)
}
prevkey = key.hash;
outputs[key.n] = std::move(coin);
+ stats.coins_count++;
} else {
return error("%s: unable to read value", __func__);
}
diff --git a/src/node/coinstats.h b/src/node/coinstats.h
index 7c11aab8bd..a19af0fd1b 100644
--- a/src/node/coinstats.h
+++ b/src/node/coinstats.h
@@ -15,16 +15,17 @@ class CCoinsView;
struct CCoinsStats
{
- int nHeight;
- uint256 hashBlock;
- uint64_t nTransactions;
- uint64_t nTransactionOutputs;
- uint64_t nBogoSize;
- uint256 hashSerialized;
- uint64_t nDiskSize;
- CAmount nTotalAmount;
-
- CCoinsStats() : nHeight(0), nTransactions(0), nTransactionOutputs(0), nBogoSize(0), nDiskSize(0), nTotalAmount(0) {}
+ int nHeight{0};
+ uint256 hashBlock{};
+ uint64_t nTransactions{0};
+ uint64_t nTransactionOutputs{0};
+ uint64_t nBogoSize{0};
+ uint256 hashSerialized{};
+ uint64_t nDiskSize{0};
+ CAmount nTotalAmount{0};
+
+ //! The number of coins contained.
+ uint64_t coins_count{0};
};
//! Calculate statistics about the unspent transaction output set