![]() |
Bitcoin Core 22.99.0
P2P Digital Currency
|
Top-level interface for a bitcoin node (bitcoind process). More...
#include <node.h>
Public Types | |
| using | NodesStats = std::vector< std::tuple< CNodeStats, bool, CNodeStateStats > > |
| Get stats for connected nodes. More... | |
| using | InitMessageFn = std::function< void(const std::string &message)> |
| Register handler for init messages. More... | |
| using | MessageBoxFn = std::function< bool(const bilingual_str &message, const std::string &caption, unsigned int style)> |
| Register handler for message box messages. More... | |
| using | QuestionFn = std::function< bool(const bilingual_str &message, const std::string &non_interactive_message, const std::string &caption, unsigned int style)> |
| Register handler for question messages. More... | |
| using | ShowProgressFn = std::function< void(const std::string &title, int progress, bool resume_possible)> |
| Register handler for progress messages. More... | |
| using | NotifyNumConnectionsChangedFn = std::function< void(int new_num_connections)> |
| Register handler for number of connections changed messages. More... | |
| using | NotifyNetworkActiveChangedFn = std::function< void(bool network_active)> |
| Register handler for network active messages. More... | |
| using | NotifyAlertChangedFn = std::function< void()> |
| Register handler for notify alert messages. More... | |
| using | BannedListChangedFn = std::function< void()> |
| Register handler for ban list messages. More... | |
| using | NotifyBlockTipFn = std::function< void(SynchronizationState, interfaces::BlockTip tip, double verification_progress)> |
| Register handler for block tip messages. More... | |
| using | NotifyHeaderTipFn = std::function< void(SynchronizationState, interfaces::BlockTip tip, double verification_progress)> |
| Register handler for header tip messages. More... | |
Public Member Functions | |
| virtual | ~Node () |
| virtual void | initLogging ()=0 |
| Init logging. More... | |
| virtual void | initParameterInteraction ()=0 |
| Init parameter interaction. More... | |
| virtual bilingual_str | getWarnings ()=0 |
| Get warnings. More... | |
| virtual uint32_t | getLogCategories ()=0 |
| virtual bool | baseInitialize ()=0 |
| Initialize app dependencies. More... | |
| virtual bool | appInitMain (interfaces::BlockAndHeaderTipInfo *tip_info=nullptr)=0 |
| Start node. More... | |
| virtual void | appShutdown ()=0 |
| Stop node. More... | |
| virtual void | startShutdown ()=0 |
| Start shutdown. More... | |
| virtual bool | shutdownRequested ()=0 |
| Return whether shutdown was requested. More... | |
| virtual void | mapPort (bool use_upnp, bool use_natpmp)=0 |
| Map port. More... | |
| virtual bool | getProxy (Network net, proxyType &proxy_info)=0 |
| Get proxy. More... | |
| virtual size_t | getNodeCount (ConnectionDirection flags)=0 |
| Get number of connections. More... | |
| virtual bool | getNodesStats (NodesStats &stats)=0 |
| virtual bool | getBanned (banmap_t &banmap)=0 |
| Get ban map entries. More... | |
| virtual bool | ban (const CNetAddr &net_addr, int64_t ban_time_offset)=0 |
| Ban node. More... | |
| virtual bool | unban (const CSubNet &ip)=0 |
| Unban node. More... | |
| virtual bool | disconnectByAddress (const CNetAddr &net_addr)=0 |
| Disconnect node by address. More... | |
| virtual bool | disconnectById (NodeId id)=0 |
| Disconnect node by id. More... | |
| virtual std::vector< ExternalSigner > | externalSigners ()=0 |
| List external signers. More... | |
| virtual int64_t | getTotalBytesRecv ()=0 |
| Get total bytes recv. More... | |
| virtual int64_t | getTotalBytesSent ()=0 |
| Get total bytes sent. More... | |
| virtual size_t | getMempoolSize ()=0 |
| Get mempool size. More... | |
| virtual size_t | getMempoolDynamicUsage ()=0 |
| Get mempool dynamic usage. More... | |
| virtual bool | getHeaderTip (int &height, int64_t &block_time)=0 |
| Get header tip height and time. More... | |
| virtual int | getNumBlocks ()=0 |
| Get num blocks. More... | |
| virtual uint256 | getBestBlockHash ()=0 |
| Get best block hash. More... | |
| virtual int64_t | getLastBlockTime ()=0 |
| Get last block time. More... | |
| virtual double | getVerificationProgress ()=0 |
| Get verification progress. More... | |
| virtual bool | isInitialBlockDownload ()=0 |
| Is initial block download. More... | |
| virtual bool | getReindex ()=0 |
| Get reindex. More... | |
| virtual bool | getImporting ()=0 |
| Get importing. More... | |
| virtual void | setNetworkActive (bool active)=0 |
| Set network active. More... | |
| virtual bool | getNetworkActive ()=0 |
| Get network active. More... | |
| virtual CFeeRate | getDustRelayFee ()=0 |
| Get dust relay fee. More... | |
| virtual UniValue | executeRpc (const std::string &command, const UniValue ¶ms, const std::string &uri)=0 |
| Execute rpc command. More... | |
| virtual std::vector< std::string > | listRpcCommands ()=0 |
| List rpc commands. More... | |
| virtual void | rpcSetTimerInterfaceIfUnset (RPCTimerInterface *iface)=0 |
| Set RPC timer interface if unset. More... | |
| virtual void | rpcUnsetTimerInterface (RPCTimerInterface *iface)=0 |
| Unset RPC timer interface. More... | |
| virtual bool | getUnspentOutput (const COutPoint &output, Coin &coin)=0 |
| Get unspent outputs associated with a transaction. More... | |
| virtual WalletClient & | walletClient ()=0 |
| Get wallet client. More... | |
| virtual std::unique_ptr< Handler > | handleInitMessage (InitMessageFn fn)=0 |
| virtual std::unique_ptr< Handler > | handleMessageBox (MessageBoxFn fn)=0 |
| virtual std::unique_ptr< Handler > | handleQuestion (QuestionFn fn)=0 |
| virtual std::unique_ptr< Handler > | handleShowProgress (ShowProgressFn fn)=0 |
| virtual std::unique_ptr< Handler > | handleNotifyNumConnectionsChanged (NotifyNumConnectionsChangedFn fn)=0 |
| virtual std::unique_ptr< Handler > | handleNotifyNetworkActiveChanged (NotifyNetworkActiveChangedFn fn)=0 |
| virtual std::unique_ptr< Handler > | handleNotifyAlertChanged (NotifyAlertChangedFn fn)=0 |
| virtual std::unique_ptr< Handler > | handleBannedListChanged (BannedListChangedFn fn)=0 |
| virtual std::unique_ptr< Handler > | handleNotifyBlockTip (NotifyBlockTipFn fn)=0 |
| virtual std::unique_ptr< Handler > | handleNotifyHeaderTip (NotifyHeaderTipFn fn)=0 |
| virtual NodeContext * | context () |
| Get and set internal node context. More... | |
| virtual void | setContext (NodeContext *context) |
| using interfaces::Node::BannedListChangedFn = std::function<void()> |
| using interfaces::Node::InitMessageFn = std::function<void(const std::string& message)> |
| using interfaces::Node::MessageBoxFn = std::function<bool(const bilingual_str& message, const std::string& caption, unsigned int style)> |
| using interfaces::Node::NodesStats = std::vector<std::tuple<CNodeStats, bool, CNodeStateStats> > |
| using interfaces::Node::NotifyAlertChangedFn = std::function<void()> |
| using interfaces::Node::NotifyBlockTipFn = std::function<void(SynchronizationState, interfaces::BlockTip tip, double verification_progress)> |
| using interfaces::Node::NotifyHeaderTipFn = std::function<void(SynchronizationState, interfaces::BlockTip tip, double verification_progress)> |
| using interfaces::Node::NotifyNetworkActiveChangedFn = std::function<void(bool network_active)> |
| using interfaces::Node::NotifyNumConnectionsChangedFn = std::function<void(int new_num_connections)> |
| using interfaces::Node::QuestionFn = std::function<bool(const bilingual_str& message, const std::string& non_interactive_message, const std::string& caption, unsigned int style)> |
| using interfaces::Node::ShowProgressFn = std::function<void(const std::string& title, int progress, bool resume_possible)> |
|
pure virtual |
Start node.
|
pure virtual |
Stop node.
|
pure virtual |
Ban node.
|
pure virtual |
Initialize app dependencies.
|
inlinevirtual |
|
pure virtual |
Disconnect node by address.
|
pure virtual |
Disconnect node by id.
|
pure virtual |
Execute rpc command.
|
pure virtual |
List external signers.
|
pure virtual |
Get ban map entries.
|
pure virtual |
Get best block hash.
|
pure virtual |
Get dust relay fee.
|
pure virtual |
Get header tip height and time.
|
pure virtual |
Get importing.
|
pure virtual |
Get last block time.
|
pure virtual |
|
pure virtual |
Get mempool dynamic usage.
|
pure virtual |
Get mempool size.
|
pure virtual |
Get network active.
|
pure virtual |
Get number of connections.
|
pure virtual |
|
pure virtual |
Get num blocks.
Get proxy.
|
pure virtual |
Get reindex.
|
pure virtual |
Get total bytes recv.
|
pure virtual |
Get total bytes sent.
|
pure virtual |
Get unspent outputs associated with a transaction.
|
pure virtual |
Get verification progress.
|
pure virtual |
Get warnings.
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
Init logging.
|
pure virtual |
Init parameter interaction.
|
pure virtual |
Is initial block download.
|
pure virtual |
List rpc commands.
|
pure virtual |
Map port.
|
pure virtual |
Set RPC timer interface if unset.
|
pure virtual |
Unset RPC timer interface.
|
inlinevirtual |
|
pure virtual |
Set network active.
|
pure virtual |
Return whether shutdown was requested.
|
pure virtual |
Start shutdown.
|
pure virtual |
Unban node.
|
pure virtual |
Get wallet client.