Bitcoin ABC  0.29.12
P2P Digital Currency
coinstats.h
Go to the documentation of this file.
1 // Copyright (c) 2010 Satoshi Nakamoto
2 // Copyright (c) 2009-2019 The Bitcoin Core developers
3 // Distributed under the MIT software license, see the accompanying
4 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
5 
6 #ifndef BITCOIN_NODE_COINSTATS_H
7 #define BITCOIN_NODE_COINSTATS_H
8 
9 #include <kernel/coinstats.h>
10 
11 #include <chain.h>
12 #include <coins.h>
13 #include <consensus/amount.h>
14 #include <primitives/blockhash.h>
15 #include <streams.h>
16 #include <uint256.h>
17 
18 #include <cstdint>
19 #include <functional>
20 #include <optional>
21 
22 class CCoinsView;
23 namespace node {
24 class BlockManager;
25 } // namespace node
26 
27 namespace node {
34 std::optional<kernel::CCoinsStats>
36  kernel::CoinStatsHashType hash_type,
37  const std::function<void()> &interruption_point = {},
38  const CBlockIndex *pindex = nullptr, bool index_requested = true);
39 } // namespace node
40 
41 #endif // BITCOIN_NODE_COINSTATS_H
The block chain is a tree shaped structure starting with the genesis block at the root,...
Definition: blockindex.h:25
Abstract view on the open txout dataset.
Definition: coins.h:163
Maintains a tree of blocks (stored in m_block_index) which is consulted to determine where the most-w...
Definition: blockstorage.h:74
CoinStatsHashType
Definition: coinstats.h:23
Definition: init.h:28
std::optional< kernel::CCoinsStats > GetUTXOStats(CCoinsView *view, BlockManager &blockman, kernel::CoinStatsHashType hash_type, const std::function< void()> &interruption_point, const CBlockIndex *pindex, bool index_requested)
Calculate statistics about the unspent transaction output set.
Definition: coinstats.cpp:16