Bitcoin Core  22.99.0
P2P Digital Currency
init.h
Go to the documentation of this file.
1 // Copyright (c) 2009-2010 Satoshi Nakamoto
2 // Copyright (c) 2009-2021 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 #ifndef BITCOIN_INIT_H
7 #define BITCOIN_INIT_H
8 
9 #include <any>
10 #include <memory>
11 #include <string>
12 
14 static constexpr bool DEFAULT_DAEMON = false;
16 static constexpr bool DEFAULT_DAEMONWAIT = false;
17 
18 class ArgsManager;
19 namespace interfaces {
20 struct BlockAndHeaderTipInfo;
21 }
22 namespace node {
23 struct NodeContext;
24 } // namespace node
25 
30 void InitLogging(const ArgsManager& args);
33 
50 bool AppInitSanityChecks();
67 
71 void SetupServerArgs(ArgsManager& argsman);
72 
74 std::string LicenseInfo();
75 
76 #endif // BITCOIN_INIT_H
interfaces
Definition: dummywallet.cpp:10
InitLogging
void InitLogging(const ArgsManager &args)
Initialize the logging infrastructure.
Definition: init.cpp:734
AppInitBasicSetup
bool AppInitBasicSetup(const ArgsManager &args)
Initialize bitcoin core: Basic context setup.
Definition: init.cpp:764
LicenseInfo
std::string LicenseInfo()
Returns licensing information (for -version)
Definition: init.cpp:594
Interrupt
void Interrupt(node::NodeContext &node)
Interrupt threads.
Definition: init.cpp:178
node::NodeContext
NodeContext struct containing references to chain state and connection state.
Definition: context.h:40
interfaces::BlockAndHeaderTipInfo
Block and header tip information.
Definition: node.h:48
InitParameterInteraction
void InitParameterInteraction(ArgsManager &args)
Parameter interaction: change current parameters depending on various rules.
Definition: init.cpp:656
AppInitParameterInteraction
bool AppInitParameterInteraction(const ArgsManager &args)
Initialization: parameter interaction.
Definition: init.cpp:809
AppInitSanityChecks
bool AppInitSanityChecks()
Initialization sanity checks: ecc init, sanity checks, dir lock.
Definition: init.cpp:1093
AppInitInterfaces
bool AppInitInterfaces(node::NodeContext &node)
Initialize node and wallet interface pointers.
Definition: init.cpp:1121
DEFAULT_DAEMONWAIT
static constexpr bool DEFAULT_DAEMONWAIT
Default value for -daemonwait option.
Definition: init.h:16
AppInitMain
bool AppInitMain(node::NodeContext &node, interfaces::BlockAndHeaderTipInfo *tip_info=nullptr)
Bitcoin core main initialization.
Definition: init.cpp:1127
Shutdown
void Shutdown(node::NodeContext &node)
Definition: init.cpp:197
ArgsManager
Definition: system.h:158
SetupServerArgs
void SetupServerArgs(ArgsManager &argsman)
Register all arguments with the ArgsManager.
Definition: init.cpp:371
node
Definition: init.h:22
AppInitLockDataDirectory
bool AppInitLockDataDirectory()
Lock bitcoin core data directory.
Definition: init.cpp:1109
DEFAULT_DAEMON
static constexpr bool DEFAULT_DAEMON
Default value for -daemon option.
Definition: init.h:14
args
ArgsManager args
Definition: notifications.cpp:36