![]() |
BSHA3
0.17.99
P2P Blockchain, based on Bitcoin
|
TxIndex is used to look up transactions included in the blockchain by hash. More...
#include <txindex.h>
Classes | |
| class | DB |
| Access to the txindex database (indexes/txindex/) More... | |
Public Member Functions | |
| TxIndex (size_t n_cache_size, bool f_memory=false, bool f_wipe=false) | |
| Constructs the index, which becomes available to be queried. More... | |
| virtual | ~TxIndex () override |
| bool | FindTx (const uint256 &tx_hash, uint256 &block_hash, CTransactionRef &tx) const |
| Look up a transaction by hash. More... | |
Public Member Functions inherited from BaseIndex | |
| virtual | ~BaseIndex () |
| Destructor interrupts sync thread if running and blocks until it exits. More... | |
| bool | BlockUntilSyncedToCurrentChain () |
| Blocks the current thread until the index is caught up to the current state of the block chain. More... | |
| void | Interrupt () |
| void | Start () |
| Start initializes the sync state and registers the instance as a ValidationInterface so that it stays in sync with blockchain updates. More... | |
| void | Stop () |
| Stops the instance from staying in sync with blockchain updates. More... | |
Protected Member Functions | |
| bool | Init () override |
| Override base class init to migrate from old database. More... | |
| bool | WriteBlock (const CBlock &block, const CBlockIndex *pindex) override |
| Write update index entries for a newly connected block. More... | |
| BaseIndex::DB & | GetDB () const override |
| const char * | GetName () const override |
| Get the name of the index for display in logs. More... | |
Protected Member Functions inherited from BaseIndex | |
| void | BlockConnected (const std::shared_ptr< const CBlock > &block, const CBlockIndex *pindex, const std::vector< CTransactionRef > &txn_conflicted) override |
| Notifies listeners of a block being connected. More... | |
| void | ChainStateFlushed (const CBlockLocator &locator) override |
| Notifies listeners of the new active block chain on-disk. More... | |
Protected Member Functions inherited from CValidationInterface | |
| ~CValidationInterface ()=default | |
| Protected destructor so that instances can only be deleted by derived classes. More... | |
| virtual void | UpdatedBlockTip (const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload) |
| Notifies listeners when the block chain tip advances. More... | |
| virtual void | TransactionAddedToMempool (const CTransactionRef &ptxn) |
| Notifies listeners of a transaction having been added to mempool. More... | |
| virtual void | TransactionRemovedFromMempool (const CTransactionRef &ptx) |
| Notifies listeners of a transaction leaving mempool. More... | |
| virtual void | BlockDisconnected (const std::shared_ptr< const CBlock > &block) |
| Notifies listeners of a block being disconnected. More... | |
| virtual void | ResendWalletTransactions (int64_t nBestBlockTime, CConnman *connman) |
| Tells listeners to broadcast their data. More... | |
| virtual void | BlockChecked (const CBlock &, const CValidationState &) |
| Notifies listeners of a block validation result. More... | |
| virtual void | NewPoWValidBlock (const CBlockIndex *pindex, const std::shared_ptr< const CBlock > &block) |
| Notifies listeners that a block which builds directly on our current tip has been received and connected to the headers tree, though not validated yet. More... | |
| virtual void | BlockFound (const uint256 &hash) |
| friend | void ::RegisterValidationInterface (CValidationInterface *) |
| friend | void ::UnregisterValidationInterface (CValidationInterface *) |
| friend | void ::UnregisterAllValidationInterfaces () |
Private Attributes | |
| const std::unique_ptr< DB > | m_db |
TxIndex is used to look up transactions included in the blockchain by hash.
The index is written to a LevelDB database and records the filesystem location of each transaction by transaction hash.
|
explicit |
Constructs the index, which becomes available to be queried.
Definition at line 226 of file txindex.cpp.
|
overridevirtual |
Definition at line 230 of file txindex.cpp.
| bool TxIndex::FindTx | ( | const uint256 & | tx_hash, |
| uint256 & | block_hash, | ||
| CTransactionRef & | tx | ||
| ) | const |
Look up a transaction by hash.
| [in] | tx_hash | The hash of the transaction to be returned. |
| [out] | block_hash | The hash of the block the transaction is found in. |
| [out] | tx | The transaction itself. |
Definition at line 260 of file txindex.cpp.
|
overrideprotectedvirtual |
Implements BaseIndex.
Definition at line 258 of file txindex.cpp.
|
inlineoverrideprotectedvirtual |
|
overrideprotectedvirtual |
Override base class init to migrate from old database.
Reimplemented from BaseIndex.
Definition at line 232 of file txindex.cpp.
|
overrideprotectedvirtual |
Write update index entries for a newly connected block.
Reimplemented from BaseIndex.
Definition at line 246 of file txindex.cpp.
1.8.14