Dash Core  0.12.2.1
P2P Digital Currency
validationinterface.cpp
Go to the documentation of this file.
1 // Copyright (c) 2009-2010 Satoshi Nakamoto
2 // Copyright (c) 2009-2014 The Bitcoin Core developers
3 // Distributed under the MIT software license, see the accompanying
4 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
5 
6 #include "validationinterface.h"
7 
9 
11 {
12  return g_signals;
13 }
14 
16  g_signals.AcceptedBlockHeader.connect(boost::bind(&CValidationInterface::AcceptedBlockHeader, pwalletIn, _1));
17  g_signals.NotifyHeaderTip.connect(boost::bind(&CValidationInterface::NotifyHeaderTip, pwalletIn, _1, _2));
18  g_signals.UpdatedBlockTip.connect(boost::bind(&CValidationInterface::UpdatedBlockTip, pwalletIn, _1, _2, _3));
19  g_signals.SyncTransaction.connect(boost::bind(&CValidationInterface::SyncTransaction, pwalletIn, _1, _2));
21  g_signals.UpdatedTransaction.connect(boost::bind(&CValidationInterface::UpdatedTransaction, pwalletIn, _1));
22  g_signals.SetBestChain.connect(boost::bind(&CValidationInterface::SetBestChain, pwalletIn, _1));
23  g_signals.Inventory.connect(boost::bind(&CValidationInterface::Inventory, pwalletIn, _1));
24  g_signals.Broadcast.connect(boost::bind(&CValidationInterface::ResendWalletTransactions, pwalletIn, _1, _2));
25  g_signals.BlockChecked.connect(boost::bind(&CValidationInterface::BlockChecked, pwalletIn, _1, _2));
26  g_signals.ScriptForMining.connect(boost::bind(&CValidationInterface::GetScriptForMining, pwalletIn, _1));
27  g_signals.BlockFound.connect(boost::bind(&CValidationInterface::ResetRequestCount, pwalletIn, _1));
28 }
29 
31  g_signals.BlockFound.disconnect(boost::bind(&CValidationInterface::ResetRequestCount, pwalletIn, _1));
32  g_signals.ScriptForMining.disconnect(boost::bind(&CValidationInterface::GetScriptForMining, pwalletIn, _1));
33  g_signals.BlockChecked.disconnect(boost::bind(&CValidationInterface::BlockChecked, pwalletIn, _1, _2));
34  g_signals.Broadcast.disconnect(boost::bind(&CValidationInterface::ResendWalletTransactions, pwalletIn, _1, _2));
35  g_signals.Inventory.disconnect(boost::bind(&CValidationInterface::Inventory, pwalletIn, _1));
36  g_signals.SetBestChain.disconnect(boost::bind(&CValidationInterface::SetBestChain, pwalletIn, _1));
37  g_signals.UpdatedTransaction.disconnect(boost::bind(&CValidationInterface::UpdatedTransaction, pwalletIn, _1));
38  g_signals.NotifyTransactionLock.disconnect(boost::bind(&CValidationInterface::NotifyTransactionLock, pwalletIn, _1));
39  g_signals.SyncTransaction.disconnect(boost::bind(&CValidationInterface::SyncTransaction, pwalletIn, _1, _2));
40  g_signals.UpdatedBlockTip.disconnect(boost::bind(&CValidationInterface::UpdatedBlockTip, pwalletIn, _1, _2, _3));
41  g_signals.NotifyHeaderTip.disconnect(boost::bind(&CValidationInterface::NotifyHeaderTip, pwalletIn, _1, _2));
42  g_signals.AcceptedBlockHeader.disconnect(boost::bind(&CValidationInterface::AcceptedBlockHeader, pwalletIn, _1));
43 }
44 
46  g_signals.BlockFound.disconnect_all_slots();
47  g_signals.ScriptForMining.disconnect_all_slots();
48  g_signals.BlockChecked.disconnect_all_slots();
49  g_signals.Broadcast.disconnect_all_slots();
50  g_signals.Inventory.disconnect_all_slots();
51  g_signals.SetBestChain.disconnect_all_slots();
52  g_signals.UpdatedTransaction.disconnect_all_slots();
53  g_signals.NotifyTransactionLock.disconnect_all_slots();
54  g_signals.SyncTransaction.disconnect_all_slots();
55  g_signals.UpdatedBlockTip.disconnect_all_slots();
56  g_signals.NotifyHeaderTip.disconnect_all_slots();
57  g_signals.AcceptedBlockHeader.disconnect_all_slots();
58 }
virtual void ResendWalletTransactions(int64_t nBestBlockTime, CConnman *connman)
boost::signals2::signal< void(boost::shared_ptr< CReserveScript > &)> ScriptForMining
boost::signals2::signal< void(const CTransaction &, const CBlock *)> SyncTransaction
boost::signals2::signal< void(const CTransaction &)> NotifyTransactionLock
virtual void NotifyHeaderTip(const CBlockIndex *pindexNew, bool fInitialDownload)
boost::signals2::signal< void(const CBlockIndex *, bool fInitialDownload)> NotifyHeaderTip
void UnregisterAllValidationInterfaces()
void UnregisterValidationInterface(CValidationInterface *pwalletIn)
boost::signals2::signal< void(const uint256 &)> BlockFound
boost::signals2::signal< void(const uint256 &)> Inventory
boost::signals2::signal< bool(const uint256 &)> UpdatedTransaction
boost::signals2::signal< void(int64_t nBestBlockTime, CConnman *connman)> Broadcast
virtual void SyncTransaction(const CTransaction &tx, const CBlock *pblock)
boost::signals2::signal< void(const CBlockLocator &)> SetBestChain
static CMainSignals g_signals
boost::signals2::signal< void(const CBlockIndex *)> AcceptedBlockHeader
virtual void BlockChecked(const CBlock &, const CValidationState &)
CMainSignals & GetMainSignals()
virtual void NotifyTransactionLock(const CTransaction &tx)
void RegisterValidationInterface(CValidationInterface *pwalletIn)
virtual void GetScriptForMining(boost::shared_ptr< CReserveScript > &)
boost::signals2::signal< void(const CBlock &, const CValidationState &)> BlockChecked
virtual void AcceptedBlockHeader(const CBlockIndex *pindexNew)
boost::signals2::signal< void(const CBlockIndex *, const CBlockIndex *, bool fInitialDownload)> UpdatedBlockTip
virtual void ResetRequestCount(const uint256 &hash)
virtual void SetBestChain(const CBlockLocator &locator)
virtual void Inventory(const uint256 &hash)
virtual bool UpdatedTransaction(const uint256 &hash)
virtual void UpdatedBlockTip(const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload)