Bitcoin Core 31.99.0
P2P Digital Currency
Classes | Namespaces | Typedefs | Functions | Variables
txindex_key.h File Reference
#include <consensus/consensus.h>
#include <crypto/siphash.h>
#include <primitives/transaction_identifier.h>
#include <serialize.h>
#include <uint256.h>
#include <array>
#include <cstddef>
#include <cstdint>
#include <ios>
#include <string>
#include <utility>
Include dependency graph for txindex_key.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  txindex::BlockTxPosition
 The location of a transaction: the sequence number of the block that contains it and the transaction's serialized byte offset from the start of that block (including the header), so the on-disk position is simply block_data_pos + tx_offset_in_block. More...
 
struct  txindex::BlockSeqKey
 Key for looking up the hash of the block with the given sequence number. More...
 
struct  txindex::BlockHashKey
 Key for looking up the sequence number assigned to the block with the given hash. More...
 
struct  txindex::DBKey
 

Namespaces

namespace  txindex
 

Typedefs

using txindex::TxHashKeyPrefix = uint64_t
 

Functions

TxHashKeyPrefix txindex::CreateKeyPrefix (const SipHasher13UJ &hasher, const Txid &txid)
 
std::pair< uint8_t, uint256txindex::LegacyTxKey (const Txid &txid)
 Key of a legacy (pre-hashing) txindex row: the full txid under the 't' prefix. More...
 

Variables

constexpr uint8_t txindex::DB_TXINDEX_HASHED {'x'}
 
constexpr uint8_t txindex::DB_BLOCK_SEQ {'s'}
 
constexpr uint8_t txindex::DB_BLOCK_HASH {'h'}
 
const std::string txindex::DB_NEXT_BLOCK_SEQ {"next_block_seq"}
 
const std::string txindex::DB_TXID_HASH_SALT {"txid_hash_salt"}
 
const std::string txindex::DB_BEST_BLOCK_V2 {"best_block_v2"}
 
constexpr uint8_t txindex::DB_TXINDEX {'t'}
 Prefix of a legacy (pre-hashing) txindex row. More...
 
constexpr std::array< std::byte, 0 > txindex::EMPTY_VALUE {}
 Empty value of a hashed txindex row, whose position is encoded in its key. More...
 
constexpr uint32_t txindex::BLOCK_HEADER_SIZE {80}
 Serialized size of a block header, the offset of the first byte after it. More...
 
constexpr int txindex::HASH_PREFIX_SIZE {5}