Skip to content

Commit

Permalink
Merge bitcoin#19734: Move CDiskTxPos to its own file
Browse files Browse the repository at this point in the history
7668db3 Move only: Move CDiskTxPos to its own file (Marcin Jachymiak)

Pull request description:

  Moves `CDiskTxPos` it its own file so it can be used without the `txindex.h` include elsewhere. Originally part of bitcoin#14053.

ACKs for top commit:
  jnewbery:
    utACK 7668db3
  promag:
    ACK 7668db3.

Tree-SHA512: b108e980ad04e43d1323410c3683a82bed70aee7795f5d8a2afbaf32a07ba598571f00b047bdde15048124b17178bcbd10654c48461beac988e9643cb2df664c
  • Loading branch information
MarcoFalke authored and gades committed May 2, 2022
1 parent bb5f6d6 commit bef7b25
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 23 deletions.
1 change: 1 addition & 0 deletions src/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,7 @@ BITCOIN_CORE_H = \
httpserver.h \
index/base.h \
index/blockfilterindex.h \
index/disktxpos.h \
index/txindex.h \
indirectmap.h \
init.h \
Expand Down
37 changes: 37 additions & 0 deletions src/index/disktxpos.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
// 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.

#ifndef BITCOIN_INDEX_DISKTXPOS_H
#define BITCOIN_INDEX_DISKTXPOS_H

#include <chain.h>
#include <flatfile.h>
#include <primitives/block.h>
#include <primitives/transaction.h>

struct CDiskTxPos : public FlatFilePos
{
unsigned int nTxOffset; // after header

SERIALIZE_METHODS(CDiskTxPos, obj)
{
READWRITEAS(FlatFilePos, obj);
READWRITE(VARINT(obj.nTxOffset));
}

CDiskTxPos(const FlatFilePos &blockIn, unsigned int nTxOffsetIn) : FlatFilePos(blockIn.nFile, blockIn.nPos), nTxOffset(nTxOffsetIn) {
}

CDiskTxPos() {
SetNull();
}

void SetNull() {
FlatFilePos::SetNull();
nTxOffset = 0;
}
};


#endif // BITCOIN_INDEX_DISKTXPOS_H
24 changes: 1 addition & 23 deletions src/index/txindex.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.

#include <index/disktxpos.h>
#include <index/txindex.h>
#include <init.h>
#include <ui_interface.h>
Expand All @@ -16,29 +17,6 @@ constexpr char DB_TXINDEX_BLOCK = 'T';

std::unique_ptr<TxIndex> g_txindex;

struct CDiskTxPos : public FlatFilePos
{
unsigned int nTxOffset; // after header

SERIALIZE_METHODS(CDiskTxPos, obj)
{
READWRITEAS(FlatFilePos, obj);
READWRITE(VARINT(obj.nTxOffset));
}

CDiskTxPos(const FlatFilePos &blockIn, unsigned int nTxOffsetIn) : FlatFilePos(blockIn.nFile, blockIn.nPos), nTxOffset(nTxOffsetIn) {
}

CDiskTxPos() {
SetNull();
}

void SetNull() {
FlatFilePos::SetNull();
nTxOffset = 0;
}
};

/**
* Access to the txindex database (indexes/txindex/)
*
Expand Down

0 comments on commit bef7b25

Please sign in to comment.