Bitcoin
Namespaces | Classes | Typedefs | Functions
interfaces Namespace Reference

Namespaces

 anonymous_namespace{chain.cpp}
 
 anonymous_namespace{handler.cpp}
 
 anonymous_namespace{node.cpp}
 
 anonymous_namespace{wallet.cpp}
 

Classes

class  Chain
 
class  ChainClient
 
class  Handler
 
class  Node
 Top-level interface for a bitcoin node (bitcoind process). More...
 
class  PendingWalletTx
 Tracking object returned by CreateTransaction and passed to CommitTransaction. More...
 
class  Wallet
 Interface for accessing a wallet. More...
 
struct  WalletAddress
 Information about one wallet address. More...
 
struct  WalletBalances
 Collection of wallet balances. More...
 
struct  WalletTx
 
struct  WalletTxOut
 Wallet transaction output. More...
 
struct  WalletTxStatus
 Updated transaction status. More...
 

Typedefs

using WalletOrderForm = std::vector< std::pair< std::string, std::string > >
 
using WalletValueMap = std::map< std::string, std::string >
 

Functions

std::unique_ptr< WalletMakeWallet (const std::shared_ptr< CWallet > &wallet)
 
std::unique_ptr< ChainMakeChain ()
 Return implementation of Chain interface. More...
 
std::unique_ptr< ChainClientMakeWalletClient (Chain &chain, std::vector< std::string > wallet_filenames)
 
std::unique_ptr< HandlerMakeHandler (boost::signals2::connection connection)
 Return handler wrapping a boost signal connection. More...
 
std::unique_ptr< NodeMakeNode ()
 Return implementation of Node interface. More...
 

Typedef Documentation

◆ WalletOrderForm

using interfaces::WalletOrderForm = typedef std::vector<std::pair<std::string, std::string> >

◆ WalletValueMap

using interfaces::WalletValueMap = typedef std::map<std::string, std::string>

Function Documentation

◆ MakeChain()

std::unique_ptr< Chain > interfaces::MakeChain ( )

Return implementation of Chain interface.

◆ MakeHandler()

std::unique_ptr< Handler > interfaces::MakeHandler ( boost::signals2::connection  connection)

Return handler wrapping a boost signal connection.

◆ MakeNode()

std::unique_ptr< Node > interfaces::MakeNode ( )

Return implementation of Node interface.

◆ MakeWallet()

std::unique_ptr< Wallet > interfaces::MakeWallet ( const std::shared_ptr< CWallet > &  wallet)

Return implementation of Wallet interface. This function is defined in dummywallet.cpp and throws if the wallet component is not compiled.

◆ MakeWalletClient()

std::unique_ptr< ChainClient > interfaces::MakeWalletClient ( Chain chain,
std::vector< std::string >  wallet_filenames 
)

Return implementation of ChainClient interface for a wallet client. This function will be undefined in builds where ENABLE_WALLET is false.

Currently, wallets are the only chain clients. But in the future, other types of chain clients could be added, such as tools for monitoring, analysis, or fee estimation. These clients need to expose their own MakeXXXClient functions returning their implementations of the ChainClient interface.