Bitcoin ABC  0.28.12
P2P Digital Currency
block.cpp
Go to the documentation of this file.
1 // Copyright (c) 2009-2010 Satoshi Nakamoto
2 // Copyright (c) 2009-2016 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 #include <primitives/block.h>
7 
8 #include <hash.h>
9 #include <tinyformat.h>
10 
12  return BlockHash(SerializeHash(*this));
13 }
14 
15 std::string CBlock::ToString() const {
16  std::stringstream s;
17  s << strprintf("CBlock(hash=%s, ver=0x%08x, hashPrevBlock=%s, "
18  "hashMerkleRoot=%s, nTime=%u, nBits=%08x, nNonce=%u, "
19  "vtx=%u)\n",
22  for (const auto &tx : vtx) {
23  s << " " << tx->ToString() << "\n";
24  }
25  return s.str();
26 }
BlockHash GetHash() const
Definition: block.cpp:11
uint32_t nNonce
Definition: block.h:31
uint32_t nBits
Definition: block.h:30
uint32_t nTime
Definition: block.h:29
BlockHash hashPrevBlock
Definition: block.h:27
int32_t nVersion
Definition: block.h:26
uint256 hashMerkleRoot
Definition: block.h:28
std::string ToString() const
Definition: block.cpp:15
std::vector< CTransactionRef > vtx
Definition: block.h:63
std::string ToString() const
Definition: uint256.h:78
uint256 SerializeHash(const T &obj, int nType=SER_GETHASH, int nVersion=PROTOCOL_VERSION)
Compute the 256-bit hash of an object's serialization.
Definition: hash.h:192
A BlockHash is a unqiue identifier for a block.
Definition: blockhash.h:13
#define strprintf
Format arguments and return the string or write to given std::ostream (see tinyformat::format doc for...
Definition: tinyformat.h:1202