Branch data Line data Source code
1 : : // Copyright (c) 2025 The Bitcoin Core developers
2 : : // Distributed under the MIT software license, see the accompanying
3 : : // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 : :
5 : : #include <interfaces/init.h>
6 : : #include <interfaces/ipc.h>
7 : :
8 : : namespace init {
9 : : namespace {
10 : : class BitcoinBasicInit : public interfaces::Init
11 : : {
12 : : public:
13 [ + - ]: 1097 : BitcoinBasicInit(const char* exe_name, const char* process_argv0) : m_ipc(interfaces::MakeIpc(exe_name, process_argv0, *this)) {}
14 : 2194 : interfaces::Ipc* ipc() override { return m_ipc.get(); }
15 : : private:
16 : : std::unique_ptr<interfaces::Ipc> m_ipc;
17 : : };
18 : : } // namespace
19 : : } // namespace init
20 : :
21 : : namespace interfaces {
22 : 1097 : std::unique_ptr<Init> MakeBasicInit(const char* exe_name, const char* process_argv0)
23 : : {
24 : 1097 : return std::make_unique<init::BitcoinBasicInit>(exe_name, process_argv0);
25 : : }
26 : : } // namespace interfaces
|