19 const char* EXE_NAME =
"bitcoin-node";
34 std::unique_ptr<interfaces::WalletLoader> makeWalletLoader(
interfaces::Chain& chain)
override 41 std::unique_ptr<interfaces::Ipc>
m_ipc;
49 auto init = std::make_unique<init::BitcoinNodeInit>(
node, argc > 0 ? argv[0] :
"");
std::unique_ptr< Echo > MakeEcho()
Return implementation of Echo interface.
std::unique_ptr< Node > MakeNode(node::NodeContext &context)
Return implementation of Node interface.
NodeContext struct containing references to chain state and connection state.
std::unique_ptr< WalletLoader > MakeWalletLoader(Chain &chain, ArgsManager &args)
Return implementation of ChainClient interface for a wallet loader.
std::unique_ptr< interfaces::Init > init
std::unique_ptr< Ipc > MakeIpc(const char *exe_name, const char *process_argv0, Init &init)
Return implementation of Ipc interface.
interfaces::Init * init
Init interface for initializing current process and connecting to other processes.
std::unique_ptr< Init > MakeNodeInit(node::NodeContext &node, int argc, char *argv[], int &exit_status)
Return implementation of Init interface for the node process.
std::unique_ptr< Chain > MakeChain(node::NodeContext &node)
Return implementation of Chain interface.
std::unique_ptr< interfaces::Ipc > m_ipc
Interface giving clients (wallet processes, maybe other analysis tools in the future) ability to acce...
std::unique_ptr< Mining > MakeMining(node::NodeContext &node)
Return implementation of Mining interface.
Initial interface created when a process is first started, and used to give and get access to other i...
node::NodeContext & m_node
void InitContext(NodeContext &node)
Initialize node context shutdown and args variables.
Interface providing access to interprocess-communication (IPC) functionality.
#define Assert(val)
Identity function.