aboutsummaryrefslogtreecommitdiff
path: root/src/init.h
diff options
context:
space:
mode:
authorRussell Yanofsky <russ@yanofsky.org>2017-05-30 15:55:17 -0400
committerRussell Yanofsky <russ@yanofsky.org>2018-11-06 11:44:40 -0400
commit8db11dd0b182a93042899651545cc21b34bf0742 (patch)
tree8165f7a88f2f56cca4d152c5e4fc0d2e5743bc54 /src/init.h
parent7e2e62cf7c513bd7d8e784069c5534fda1c50c52 (diff)
downloadbitcoin-8db11dd0b182a93042899651545cc21b34bf0742.tar.xz
Pass chain and client variables where needed
This commit does not change behavior. All it does is pass new function parameters. It is easiest to review this change with: git log -p -n1 -U0 --word-diff-regex=.
Diffstat (limited to 'src/init.h')
-rw-r--r--src/init.h17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/init.h b/src/init.h
index b106353d08..1c59ca069e 100644
--- a/src/init.h
+++ b/src/init.h
@@ -10,8 +10,17 @@
#include <string>
#include <util/system.h>
-class CScheduler;
-class CWallet;
+namespace interfaces {
+class Chain;
+class ChainClient;
+} // namespace interfaces
+
+//! Pointers to interfaces used during init and destroyed on shutdown.
+struct InitInterfaces
+{
+ std::unique_ptr<interfaces::Chain> chain;
+ std::vector<std::unique_ptr<interfaces::ChainClient>> chain_clients;
+};
namespace boost
{
@@ -20,7 +29,7 @@ class thread_group;
/** Interrupt threads */
void Interrupt();
-void Shutdown();
+void Shutdown(InitInterfaces& interfaces);
//!Initialize the logging infrastructure
void InitLogging();
//!Parameter interaction: change current parameters depending on various rules
@@ -54,7 +63,7 @@ bool AppInitLockDataDirectory();
* @note This should only be done after daemonization. Call Shutdown() if this function fails.
* @pre Parameters should be parsed and config file should be read, AppInitLockDataDirectory should have been called.
*/
-bool AppInitMain();
+bool AppInitMain(InitInterfaces& interfaces);
/**
* Setup the arguments for gArgs