Move CDiskBlockPos from chain to flatfile.
This commit is contained in:
parent
e0380933e3
commit
d6d8a78f26
3 changed files with 49 additions and 43 deletions
41
src/chain.h
41
src/chain.h
|
@ -8,6 +8,7 @@
|
||||||
|
|
||||||
#include <arith_uint256.h>
|
#include <arith_uint256.h>
|
||||||
#include <consensus/params.h>
|
#include <consensus/params.h>
|
||||||
|
#include <flatfile.h>
|
||||||
#include <primitives/block.h>
|
#include <primitives/block.h>
|
||||||
#include <tinyformat.h>
|
#include <tinyformat.h>
|
||||||
#include <uint256.h>
|
#include <uint256.h>
|
||||||
|
@ -90,46 +91,6 @@ public:
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
struct CDiskBlockPos
|
|
||||||
{
|
|
||||||
int nFile;
|
|
||||||
unsigned int nPos;
|
|
||||||
|
|
||||||
ADD_SERIALIZE_METHODS;
|
|
||||||
|
|
||||||
template <typename Stream, typename Operation>
|
|
||||||
inline void SerializationOp(Stream& s, Operation ser_action) {
|
|
||||||
READWRITE(VARINT(nFile, VarIntMode::NONNEGATIVE_SIGNED));
|
|
||||||
READWRITE(VARINT(nPos));
|
|
||||||
}
|
|
||||||
|
|
||||||
CDiskBlockPos() {
|
|
||||||
SetNull();
|
|
||||||
}
|
|
||||||
|
|
||||||
CDiskBlockPos(int nFileIn, unsigned int nPosIn) {
|
|
||||||
nFile = nFileIn;
|
|
||||||
nPos = nPosIn;
|
|
||||||
}
|
|
||||||
|
|
||||||
friend bool operator==(const CDiskBlockPos &a, const CDiskBlockPos &b) {
|
|
||||||
return (a.nFile == b.nFile && a.nPos == b.nPos);
|
|
||||||
}
|
|
||||||
|
|
||||||
friend bool operator!=(const CDiskBlockPos &a, const CDiskBlockPos &b) {
|
|
||||||
return !(a == b);
|
|
||||||
}
|
|
||||||
|
|
||||||
void SetNull() { nFile = -1; nPos = 0; }
|
|
||||||
bool IsNull() const { return (nFile == -1); }
|
|
||||||
|
|
||||||
std::string ToString() const
|
|
||||||
{
|
|
||||||
return strprintf("CDiskBlockPos(nFile=%i, nPos=%i)", nFile, nPos);
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
enum BlockStatus: uint32_t {
|
enum BlockStatus: uint32_t {
|
||||||
//! Unused.
|
//! Unused.
|
||||||
BLOCK_VALID_UNKNOWN = 0,
|
BLOCK_VALID_UNKNOWN = 0,
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
// Copyright (c) 2019 The Bitcoin Core developers
|
// Copyright (c) 2009-2010 Satoshi Nakamoto
|
||||||
|
// Copyright (c) 2009-2019 The Bitcoin Core developers
|
||||||
// Distributed under the MIT software license, see the accompanying
|
// Distributed under the MIT software license, see the accompanying
|
||||||
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
||||||
|
|
||||||
|
@ -19,6 +20,11 @@ FlatFileSeq::FlatFileSeq(fs::path dir, const char* prefix, size_t chunk_size) :
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string CDiskBlockPos::ToString() const
|
||||||
|
{
|
||||||
|
return strprintf("CDiskBlockPos(nFile=%i, nPos=%i)", nFile, nPos);
|
||||||
|
}
|
||||||
|
|
||||||
fs::path FlatFileSeq::FileName(const CDiskBlockPos& pos) const
|
fs::path FlatFileSeq::FileName(const CDiskBlockPos& pos) const
|
||||||
{
|
{
|
||||||
return m_dir / strprintf("%s%05u.dat", m_prefix, pos.nFile);
|
return m_dir / strprintf("%s%05u.dat", m_prefix, pos.nFile);
|
||||||
|
|
|
@ -1,12 +1,51 @@
|
||||||
// Copyright (c) 2019 The Bitcoin Core developers
|
// Copyright (c) 2009-2010 Satoshi Nakamoto
|
||||||
|
// Copyright (c) 2009-2019 The Bitcoin Core developers
|
||||||
// Distributed under the MIT software license, see the accompanying
|
// Distributed under the MIT software license, see the accompanying
|
||||||
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
||||||
|
|
||||||
#ifndef BITCOIN_FLATFILE_H
|
#ifndef BITCOIN_FLATFILE_H
|
||||||
#define BITCOIN_FLATFILE_H
|
#define BITCOIN_FLATFILE_H
|
||||||
|
|
||||||
#include <chain.h>
|
#include <string>
|
||||||
|
|
||||||
#include <fs.h>
|
#include <fs.h>
|
||||||
|
#include <serialize.h>
|
||||||
|
|
||||||
|
struct CDiskBlockPos
|
||||||
|
{
|
||||||
|
int nFile;
|
||||||
|
unsigned int nPos;
|
||||||
|
|
||||||
|
ADD_SERIALIZE_METHODS;
|
||||||
|
|
||||||
|
template <typename Stream, typename Operation>
|
||||||
|
inline void SerializationOp(Stream& s, Operation ser_action) {
|
||||||
|
READWRITE(VARINT(nFile, VarIntMode::NONNEGATIVE_SIGNED));
|
||||||
|
READWRITE(VARINT(nPos));
|
||||||
|
}
|
||||||
|
|
||||||
|
CDiskBlockPos() {
|
||||||
|
SetNull();
|
||||||
|
}
|
||||||
|
|
||||||
|
CDiskBlockPos(int nFileIn, unsigned int nPosIn) {
|
||||||
|
nFile = nFileIn;
|
||||||
|
nPos = nPosIn;
|
||||||
|
}
|
||||||
|
|
||||||
|
friend bool operator==(const CDiskBlockPos &a, const CDiskBlockPos &b) {
|
||||||
|
return (a.nFile == b.nFile && a.nPos == b.nPos);
|
||||||
|
}
|
||||||
|
|
||||||
|
friend bool operator!=(const CDiskBlockPos &a, const CDiskBlockPos &b) {
|
||||||
|
return !(a == b);
|
||||||
|
}
|
||||||
|
|
||||||
|
void SetNull() { nFile = -1; nPos = 0; }
|
||||||
|
bool IsNull() const { return (nFile == -1); }
|
||||||
|
|
||||||
|
std::string ToString() const;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* FlatFileSeq represents a sequence of numbered files storing raw data. This class facilitates
|
* FlatFileSeq represents a sequence of numbered files storing raw data. This class facilitates
|
||||||
|
|
Loading…
Reference in a new issue