Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
validationinterface.h
Go to the documentation of this file.
73 virtual void UpdatedBlockTip(const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload) {}
77 virtual void SynchronousUpdatedBlockTip(const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload) {}
101 virtual void BlockConnected(const std::shared_ptr<const CBlock> &block, const CBlockIndex *pindex, const std::vector<CTransactionRef> &txnConflicted) {}
107 virtual void BlockDisconnected(const std::shared_ptr<const CBlock> &block, const CBlockIndex *pindexDisconnected) {}
108 virtual void NotifyTransactionLock(const CTransaction &tx, const llmq::CInstantSendLock& islock) {}
112 virtual void NotifyInstantSendDoubleSpendAttempt(const CTransaction ¤tTx, const CTransaction &previousTx) {}
113 virtual void NotifyMasternodeListChanged(bool undo, const CDeterministicMNList& oldMNList, const CDeterministicMNListDiff& diff) {}
132 virtual void NewPoWValidBlock(const CBlockIndex *pindex, const std::shared_ptr<const CBlock>& block) {};
168 void SynchronousUpdatedBlockTip(const CBlockIndex *, const CBlockIndex *, bool fInitialDownload);
170 void BlockConnected(const std::shared_ptr<const CBlock> &, const CBlockIndex *pindex, const std::shared_ptr<const std::vector<CTransactionRef>> &);
171 void BlockDisconnected(const std::shared_ptr<const CBlock> &, const CBlockIndex* pindexDisconnected);
176 void NotifyInstantSendDoubleSpendAttempt(const CTransaction ¤tTx, const CTransaction &previousTx);
177 void NotifyMasternodeListChanged(bool undo, const CDeterministicMNList& oldMNList, const CDeterministicMNListDiff& diff);
void UpdatedBlockTip(const CBlockIndex *, const CBlockIndex *, bool fInitialDownload)
Definition: validationinterface.cpp:172
std::unique_ptr< MainSignalsInstance > m_internals
Definition: validationinterface.h:141
virtual void BlockChecked(const CBlock &, const CValidationState &)
Notifies listeners of a block validation result.
Definition: validationinterface.h:128
virtual void TransactionAddedToMempool(const CTransactionRef &ptxn, int64_t nAcceptTime)
Notifies listeners of a transaction having been added to mempool.
Definition: validationinterface.h:83
virtual void AcceptedBlockHeader(const CBlockIndex *pindexNew)
Definition: validationinterface.h:66
virtual void NotifyGovernanceVote(const CGovernanceVote &vote)
Definition: validationinterface.h:110
Describes a place in the block chain to another node such that if the other node doesn't have the sam...
Definition: block.h:127
Definition: deterministicmns.h:547
void NotifyHeaderTip(const CBlockIndex *pindexNew, bool fInitialDownload)
Definition: validationinterface.cpp:222
void SynchronousUpdatedBlockTip(const CBlockIndex *, const CBlockIndex *, bool fInitialDownload)
Definition: validationinterface.cpp:178
void BlockDisconnected(const std::shared_ptr< const CBlock > &, const CBlockIndex *pindexDisconnected)
Definition: validationinterface.cpp:194
Definition: block.h:72
Definition: governance-vote.h:54
void NotifyGovernanceVote(const CGovernanceVote &vote)
Definition: validationinterface.cpp:234
void TransactionAddedToMempool(const CTransactionRef &, int64_t)
Definition: validationinterface.cpp:182
virtual void ResendWalletTransactions(int64_t nBestBlockTime, CConnman *connman)
Tells listeners to broadcast their data.
Definition: validationinterface.h:121
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 connec...
Definition: validationinterface.h:132
void UnregisterBackgroundSignalScheduler()
Unregister a CScheduler to give callbacks which should run in the background - these callbacks will n...
Definition: validationinterface.cpp:56
void NotifyChainLock(const CBlockIndex *pindex, const llmq::CChainLockSig &clsig)
Definition: validationinterface.cpp:230
virtual void SetBestChain(const CBlockLocator &locator)
Notifies listeners of the new active block chain on-disk.
Definition: validationinterface.h:119
MemPoolRemovalReason
Reason why a transaction was removed from the mempool, this is passed to the notification signal...
Definition: txmempool.h:349
void SyncWithValidationInterfaceQueue()
This is a synonym for the following, which asserts certain locks are not held: std::promise<void> pro...
Definition: validationinterface.cpp:154
Definition: deterministicmns.h:26
void Broadcast(int64_t nBestBlockTime, CConnman *connman)
Definition: validationinterface.cpp:206
void BlockChecked(const CBlock &, const CValidationState &)
Definition: validationinterface.cpp:210
void NotifyMasternodeListChanged(bool undo, const CDeterministicMNList &oldMNList, const CDeterministicMNListDiff &diff)
Definition: validationinterface.cpp:246
Definition: validationinterface.h:64
void NotifyGovernanceObject(const CGovernanceObject &object)
Definition: validationinterface.cpp:238
virtual void NotifyHeaderTip(const CBlockIndex *pindexNew, bool fInitialDownload)
Definition: validationinterface.h:67
Definition: script.h:672
Definition: quorums_instantsend.h:20
virtual void NotifyChainLock(const CBlockIndex *pindex, const llmq::CChainLockSig &clsig)
Definition: validationinterface.h:109
Definition: deterministicmns.h:288
void RegisterValidationInterface(CValidationInterface *pwalletIn)
Register a wallet to receive updates from core.
Definition: validationinterface.cpp:84
virtual void NotifyInstantSendDoubleSpendAttempt(const CTransaction ¤tTx, const CTransaction &previousTx)
Definition: validationinterface.h:112
virtual void UpdatedBlockTip(const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload)
Notifies listeners of updated block chain tip.
Definition: validationinterface.h:73
void RegisterWithMempoolSignals(CTxMemPool &pool)
Register with mempool to call TransactionRemovedFromMempool callbacks.
Definition: validationinterface.cpp:71
virtual void NotifyMasternodeListChanged(bool undo, const CDeterministicMNList &oldMNList, const CDeterministicMNListDiff &diff)
Definition: validationinterface.h:113
void CallFunctionInValidationInterfaceQueue(std::function< void()> func)
Pushes a function to callback onto the notification queue, guaranteeing any callbacks generated prior...
Definition: validationinterface.cpp:150
void UnregisterWithMempoolSignals(CTxMemPool &pool)
Unregister with mempool.
Definition: validationinterface.cpp:75
void AcceptedBlockHeader(const CBlockIndex *pindexNew)
Definition: validationinterface.cpp:218
virtual void BlockDisconnected(const std::shared_ptr< const CBlock > &block, const CBlockIndex *pindexDisconnected)
Notifies listeners of a block being disconnected.
Definition: validationinterface.h:107
virtual void NotifyGovernanceObject(const CGovernanceObject &object)
Definition: validationinterface.h:111
Definition: validationinterface.h:139
void RegisterBackgroundSignalScheduler(CScheduler &scheduler)
Register a CScheduler to give callbacks which should run in the background (may only be called once) ...
Definition: validationinterface.cpp:51
CTxMemPool stores valid-according-to-the-current-best-chain transactions that may be included in the ...
Definition: txmempool.h:442
virtual void NotifyTransactionLock(const CTransaction &tx, const llmq::CInstantSendLock &islock)
Definition: validationinterface.h:108
The block chain is a tree shaped structure starting with the genesis block at the root...
Definition: chain.h:170
void FlushBackgroundCallbacks()
Call any remaining callbacks on the calling thread.
Definition: validationinterface.cpp:60
void MempoolEntryRemoved(CTransactionRef tx, MemPoolRemovalReason reason)
Definition: validationinterface.cpp:164
void NotifyInstantSendDoubleSpendAttempt(const CTransaction ¤tTx, const CTransaction &previousTx)
Definition: validationinterface.cpp:242
void UnregisterAllValidationInterfaces()
Unregister all wallets from core.
Definition: validationinterface.cpp:126
virtual void TransactionRemovedFromMempool(const CTransactionRef &ptx)
Notifies listeners of a transaction leaving mempool.
Definition: validationinterface.h:94
virtual void SynchronousUpdatedBlockTip(const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload)
Same as UpdatedBlockTip, but called from the caller's thread.
Definition: validationinterface.h:77
virtual void BlockConnected(const std::shared_ptr< const CBlock > &block, const CBlockIndex *pindex, const std::vector< CTransactionRef > &txnConflicted)
Notifies listeners of a block being connected.
Definition: validationinterface.h:101
void SetBestChain(const CBlockLocator &)
Definition: validationinterface.cpp:200
Definition: validationinterface.cpp:22
Definition: quorums_chainlocks.h:25
The basic transaction that is broadcasted on the network and contained in blocks. ...
Definition: transaction.h:198
Definition: scheduler.h:37
void NewPoWValidBlock(const CBlockIndex *, const std::shared_ptr< const CBlock > &)
Definition: validationinterface.cpp:214
void UnregisterValidationInterface(CValidationInterface *pwalletIn)
Unregister a wallet from core.
Definition: validationinterface.cpp:105
void NotifyTransactionLock(const CTransaction &tx, const llmq::CInstantSendLock &islock)
Definition: validationinterface.cpp:226
void BlockConnected(const std::shared_ptr< const CBlock > &, const CBlockIndex *pindex, const std::shared_ptr< const std::vector< CTransactionRef >> &)
Definition: validationinterface.cpp:188