From 9183d6ef656c8f3ed406821b99827f9b5f047665 Mon Sep 17 00:00:00 2001 From: Jim Posen Date: Sun, 6 Jan 2019 11:06:31 -0800 Subject: validation: Extract basic block file logic into FlatFileSeq class. --- src/flatfile.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/flatfile.cpp (limited to 'src/flatfile.cpp') diff --git a/src/flatfile.cpp b/src/flatfile.cpp new file mode 100644 index 0000000000..c9ca9aa869 --- /dev/null +++ b/src/flatfile.cpp @@ -0,0 +1,23 @@ +// Copyright (c) 2019 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#include + +#include +#include + +FlatFileSeq::FlatFileSeq(fs::path dir, const char* prefix, size_t chunk_size) : + m_dir(std::move(dir)), + m_prefix(prefix), + m_chunk_size(chunk_size) +{ + if (chunk_size == 0) { + throw std::invalid_argument("chunk_size must be positive"); + } +} + +fs::path FlatFileSeq::FileName(const CDiskBlockPos& pos) const +{ + return m_dir / strprintf("%s%05u.dat", m_prefix, pos.nFile); +} -- cgit v1.2.3