From 60c8bac77c6612b84e3496b2227a01058d720ecc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jorge=20Tim=C3=B3n?= <jtimon@jtimon.cc>
Date: Sun, 5 Jul 2015 14:30:07 +0200
Subject: [PATCH] Includes: Cleanup around net main and wallet

-Move from .h to .cpp: in main, net and wallet
-Remove unnecessary #include "main.h"
-Cleanup some wallet files includes
---
 src/bitcoind.cpp               |  1 -
 src/main.cpp                   |  6 ++++++
 src/main.h                     | 10 +---------
 src/net.cpp                    |  4 +++-
 src/net.h                      |  3 ---
 src/qt/bitcoin.cpp             |  1 -
 src/qt/clientmodel.cpp         |  1 -
 src/qt/coincontroldialog.cpp   |  2 +-
 src/qt/guiutil.cpp             |  2 +-
 src/qt/optionsdialog.cpp       |  2 +-
 src/qt/optionsmodel.cpp        |  2 +-
 src/qt/paymentserver.cpp       |  2 +-
 src/qt/peertablemodel.h        |  2 +-
 src/qt/rpcconsole.cpp          |  1 -
 src/qt/sendcoinsdialog.cpp     |  2 +-
 src/test/alert_tests.cpp       |  5 +----
 src/test/checkblock_tests.cpp  |  2 +-
 src/test/mempool_tests.cpp     |  1 -
 src/test/pow_tests.cpp         |  1 -
 src/test/script_tests.cpp      |  1 -
 src/test/sighash_tests.cpp     |  2 +-
 src/test/skiplist_tests.cpp    |  1 -
 src/test/transaction_tests.cpp |  2 +-
 src/wallet/wallet.cpp          |  4 ++++
 src/wallet/wallet.h            |  4 ----
 src/wallet/wallet_ismine.h     |  1 -
 src/wallet/walletdb.cpp        |  2 +-
 src/wallet/walletdb.h          |  1 -
 28 files changed, 26 insertions(+), 42 deletions(-)

diff --git a/src/bitcoind.cpp b/src/bitcoind.cpp
index cfa32d981..39bb301f4 100644
--- a/src/bitcoind.cpp
+++ b/src/bitcoind.cpp
@@ -7,7 +7,6 @@
 #include "clientversion.h"
 #include "rpcserver.h"
 #include "init.h"
-#include "main.h"
 #include "noui.h"
 #include "scheduler.h"
 #include "util.h"
diff --git a/src/main.cpp b/src/main.cpp
index 58c42cf96..cf0002cc3 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -19,6 +19,12 @@
 #include "net.h"
 #include "policy/policy.h"
 #include "pow.h"
+#include "primitives/block.h"
+#include "primitives/transaction.h"
+#include "script/script.h"
+#include "script/sigcache.h"
+#include "script/standard.h"
+#include "tinyformat.h"
 #include "txdb.h"
 #include "txmempool.h"
 #include "ui_interface.h"
diff --git a/src/main.h b/src/main.h
index 78a139012..96ad54cda 100644
--- a/src/main.h
+++ b/src/main.h
@@ -12,19 +12,10 @@
 
 #include "amount.h"
 #include "chain.h"
-#include "chainparams.h"
 #include "coins.h"
 #include "net.h"
-#include "primitives/block.h"
-#include "primitives/transaction.h"
-#include "script/script.h"
 #include "script/script_error.h"
-#include "script/sigcache.h"
-#include "script/standard.h"
 #include "sync.h"
-#include "tinyformat.h"
-#include "txmempool.h"
-#include "uint256.h"
 
 #include <algorithm>
 #include <exception>
@@ -42,6 +33,7 @@ class CBlockTreeDB;
 class CBloomFilter;
 class CInv;
 class CScriptCheck;
+class CTxMemPool;
 class CValidationInterface;
 class CValidationState;
 
diff --git a/src/net.cpp b/src/net.cpp
index 3d369c7dd..e9fd74db4 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -12,10 +12,12 @@
 #include "addrman.h"
 #include "chainparams.h"
 #include "clientversion.h"
+#include "crypto/common.h"
+#include "hash.h"
 #include "primitives/transaction.h"
 #include "scheduler.h"
 #include "ui_interface.h"
-#include "crypto/common.h"
+#include "utilstrencodings.h"
 
 #ifdef WIN32
 #include <string.h>
diff --git a/src/net.h b/src/net.h
index 86d74e217..658f586b1 100644
--- a/src/net.h
+++ b/src/net.h
@@ -8,7 +8,6 @@
 
 #include "bloom.h"
 #include "compat.h"
-#include "hash.h"
 #include "limitedmap.h"
 #include "mruset.h"
 #include "netbase.h"
@@ -17,7 +16,6 @@
 #include "streams.h"
 #include "sync.h"
 #include "uint256.h"
-#include "utilstrencodings.h"
 
 #include <deque>
 #include <stdint.h>
@@ -31,7 +29,6 @@
 #include <boost/signals2/signal.hpp>
 
 class CAddrMan;
-class CBlockIndex;
 class CScheduler;
 class CNode;
 
diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp
index 36b9bc50a..708d86391 100644
--- a/src/qt/bitcoin.cpp
+++ b/src/qt/bitcoin.cpp
@@ -25,7 +25,6 @@
 #endif
 
 #include "init.h"
-#include "main.h"
 #include "rpcserver.h"
 #include "scheduler.h"
 #include "ui_interface.h"
diff --git a/src/qt/clientmodel.cpp b/src/qt/clientmodel.cpp
index 92a9ef279..41dc2ea77 100644
--- a/src/qt/clientmodel.cpp
+++ b/src/qt/clientmodel.cpp
@@ -11,7 +11,6 @@
 #include "chainparams.h"
 #include "checkpoints.h"
 #include "clientversion.h"
-#include "main.h"
 #include "net.h"
 #include "ui_interface.h"
 #include "util.h"
diff --git a/src/qt/coincontroldialog.cpp b/src/qt/coincontroldialog.cpp
index 764596df3..934d62d5f 100644
--- a/src/qt/coincontroldialog.cpp
+++ b/src/qt/coincontroldialog.cpp
@@ -15,7 +15,7 @@
 
 #include "coincontrol.h"
 #include "init.h"
-#include "main.h"
+#include "main.h" // For minRelayTxFee
 #include "wallet/wallet.h"
 
 #include <boost/assign/list_of.hpp> // for 'map_list_of()'
diff --git a/src/qt/guiutil.cpp b/src/qt/guiutil.cpp
index 581d2321b..550dbacf9 100644
--- a/src/qt/guiutil.cpp
+++ b/src/qt/guiutil.cpp
@@ -11,7 +11,7 @@
 
 #include "primitives/transaction.h"
 #include "init.h"
-#include "main.h"
+#include "main.h" // For minRelayTxFee
 #include "protocol.h"
 #include "script/script.h"
 #include "script/standard.h"
diff --git a/src/qt/optionsdialog.cpp b/src/qt/optionsdialog.cpp
index 173bed3b6..062c4540e 100644
--- a/src/qt/optionsdialog.cpp
+++ b/src/qt/optionsdialog.cpp
@@ -13,7 +13,7 @@
 #include "guiutil.h"
 #include "optionsmodel.h"
 
-#include "main.h" // for MAX_SCRIPTCHECK_THREADS
+#include "main.h" // for DEFAULT_SCRIPTCHECK_THREADS and MAX_SCRIPTCHECK_THREADS
 #include "netbase.h"
 #include "txdb.h" // for -dbcache defaults
 
diff --git a/src/qt/optionsmodel.cpp b/src/qt/optionsmodel.cpp
index b4ce8191d..6191edc44 100644
--- a/src/qt/optionsmodel.cpp
+++ b/src/qt/optionsmodel.cpp
@@ -13,7 +13,7 @@
 
 #include "amount.h"
 #include "init.h"
-#include "main.h"
+#include "main.h" // For DEFAULT_SCRIPTCHECK_THREADS
 #include "net.h"
 #include "txdb.h" // for -dbcache defaults
 
diff --git a/src/qt/paymentserver.cpp b/src/qt/paymentserver.cpp
index 6481b0046..0827d9912 100644
--- a/src/qt/paymentserver.cpp
+++ b/src/qt/paymentserver.cpp
@@ -10,7 +10,7 @@
 
 #include "base58.h"
 #include "chainparams.h"
-#include "main.h"
+#include "main.h" // For minRelayTxFee
 #include "ui_interface.h"
 #include "util.h"
 #include "wallet/wallet.h"
diff --git a/src/qt/peertablemodel.h b/src/qt/peertablemodel.h
index fcb89b761..5f149ea87 100644
--- a/src/qt/peertablemodel.h
+++ b/src/qt/peertablemodel.h
@@ -5,7 +5,7 @@
 #ifndef BITCOIN_QT_PEERTABLEMODEL_H
 #define BITCOIN_QT_PEERTABLEMODEL_H
 
-#include "main.h"
+#include "main.h" // For CNodeStateStats
 #include "net.h"
 
 #include <QAbstractTableModel>
diff --git a/src/qt/rpcconsole.cpp b/src/qt/rpcconsole.cpp
index 2fafb83d4..b2717558c 100644
--- a/src/qt/rpcconsole.cpp
+++ b/src/qt/rpcconsole.cpp
@@ -10,7 +10,6 @@
 #include "peertablemodel.h"
 #include "scicon.h"
 
-#include "main.h"
 #include "chainparams.h"
 #include "rpcserver.h"
 #include "rpcclient.h"
diff --git a/src/qt/sendcoinsdialog.cpp b/src/qt/sendcoinsdialog.cpp
index 9841f6ced..2407fcbc4 100644
--- a/src/qt/sendcoinsdialog.cpp
+++ b/src/qt/sendcoinsdialog.cpp
@@ -17,7 +17,7 @@
 
 #include "base58.h"
 #include "coincontrol.h"
-#include "main.h"
+#include "main.h" // mempool and minRelayTxFee
 #include "ui_interface.h"
 #include "txmempool.h"
 #include "wallet/wallet.h"
diff --git a/src/test/alert_tests.cpp b/src/test/alert_tests.cpp
index 38dcc6023..b8d5606cc 100644
--- a/src/test/alert_tests.cpp
+++ b/src/test/alert_tests.cpp
@@ -2,17 +2,14 @@
 // Distributed under the MIT software license, see the accompanying
 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
 
-//
 // Unit tests for alert system
-//
 
 #include "alert.h"
 #include "chain.h"
 #include "chainparams.h"
 #include "clientversion.h"
 #include "data/alertTests.raw.h"
-
-#include "main.h"
+#include "main.h" // For PartitionCheck
 #include "serialize.h"
 #include "streams.h"
 #include "util.h"
diff --git a/src/test/checkblock_tests.cpp b/src/test/checkblock_tests.cpp
index fe9fa86ab..f7e247061 100644
--- a/src/test/checkblock_tests.cpp
+++ b/src/test/checkblock_tests.cpp
@@ -4,7 +4,7 @@
 
 #include "clientversion.h"
 #include "consensus/validation.h"
-#include "main.h"
+#include "main.h" // For CheckBlock
 #include "primitives/block.h"
 #include "test/test_bitcoin.h"
 #include "utiltime.h"
diff --git a/src/test/mempool_tests.cpp b/src/test/mempool_tests.cpp
index 0996e13c4..2439689d7 100644
--- a/src/test/mempool_tests.cpp
+++ b/src/test/mempool_tests.cpp
@@ -2,7 +2,6 @@
 // Distributed under the MIT software license, see the accompanying
 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
 
-#include "main.h"
 #include "txmempool.h"
 #include "util.h"
 
diff --git a/src/test/pow_tests.cpp b/src/test/pow_tests.cpp
index 992f9c971..b6eb39bc3 100644
--- a/src/test/pow_tests.cpp
+++ b/src/test/pow_tests.cpp
@@ -4,7 +4,6 @@
 
 #include "chain.h"
 #include "chainparams.h"
-#include "main.h"
 #include "pow.h"
 #include "random.h"
 #include "util.h"
diff --git a/src/test/script_tests.cpp b/src/test/script_tests.cpp
index daf3d8989..37c046935 100644
--- a/src/test/script_tests.cpp
+++ b/src/test/script_tests.cpp
@@ -8,7 +8,6 @@
 #include "core_io.h"
 #include "key.h"
 #include "keystore.h"
-#include "main.h"
 #include "script/script.h"
 #include "script/script_error.h"
 #include "script/sign.h"
diff --git a/src/test/sighash_tests.cpp b/src/test/sighash_tests.cpp
index 9fc227cfd..4b9646156 100644
--- a/src/test/sighash_tests.cpp
+++ b/src/test/sighash_tests.cpp
@@ -5,7 +5,7 @@
 #include "consensus/validation.h"
 #include "data/sighash.json.h"
 #include "hash.h"
-#include "main.h"
+#include "main.h" // For CheckTransaction
 #include "random.h"
 #include "script/interpreter.h"
 #include "script/script.h"
diff --git a/src/test/skiplist_tests.cpp b/src/test/skiplist_tests.cpp
index 8a061b0de..a904e3862 100644
--- a/src/test/skiplist_tests.cpp
+++ b/src/test/skiplist_tests.cpp
@@ -3,7 +3,6 @@
 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
 
 #include "chain.h"
-#include "main.h"
 #include "random.h"
 #include "util.h"
 #include "test/test_bitcoin.h"
diff --git a/src/test/transaction_tests.cpp b/src/test/transaction_tests.cpp
index 5f1af1f94..e70ebddc2 100644
--- a/src/test/transaction_tests.cpp
+++ b/src/test/transaction_tests.cpp
@@ -11,7 +11,7 @@
 #include "core_io.h"
 #include "key.h"
 #include "keystore.h"
-#include "main.h"
+#include "main.h" // For CheckTransaction
 #include "policy/policy.h"
 #include "script/script.h"
 #include "script/script_error.h"
diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp
index 5a52d931d..58b9ccc07 100644
--- a/src/wallet/wallet.cpp
+++ b/src/wallet/wallet.cpp
@@ -11,9 +11,13 @@
 #include "coincontrol.h"
 #include "consensus/consensus.h"
 #include "consensus/validation.h"
+#include "key.h"
+#include "keystore.h"
 #include "main.h"
 #include "net.h"
 #include "policy/policy.h"
+#include "primitives/block.h"
+#include "primitives/transaction.h"
 #include "script/script.h"
 #include "script/sign.h"
 #include "timedata.h"
diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h
index de3232e56..ae007e467 100644
--- a/src/wallet/wallet.h
+++ b/src/wallet/wallet.h
@@ -7,10 +7,6 @@
 #define BITCOIN_WALLET_WALLET_H
 
 #include "amount.h"
-#include "key.h"
-#include "keystore.h"
-#include "primitives/block.h"
-#include "primitives/transaction.h"
 #include "streams.h"
 #include "tinyformat.h"
 #include "ui_interface.h"
diff --git a/src/wallet/wallet_ismine.h b/src/wallet/wallet_ismine.h
index 9619410e7..7846565f8 100644
--- a/src/wallet/wallet_ismine.h
+++ b/src/wallet/wallet_ismine.h
@@ -6,7 +6,6 @@
 #ifndef BITCOIN_WALLET_WALLET_ISMINE_H
 #define BITCOIN_WALLET_WALLET_ISMINE_H
 
-#include "key.h"
 #include "script/standard.h"
 
 #include <stdint.h>
diff --git a/src/wallet/walletdb.cpp b/src/wallet/walletdb.cpp
index f777926e7..c1eb18458 100644
--- a/src/wallet/walletdb.cpp
+++ b/src/wallet/walletdb.cpp
@@ -7,7 +7,7 @@
 
 #include "base58.h"
 #include "consensus/validation.h"
-#include "main.h"
+#include "main.h" // For CheckTransaction
 #include "protocol.h"
 #include "serialize.h"
 #include "sync.h"
diff --git a/src/wallet/walletdb.h b/src/wallet/walletdb.h
index bc1a104b5..270f826ae 100644
--- a/src/wallet/walletdb.h
+++ b/src/wallet/walletdb.h
@@ -9,7 +9,6 @@
 #include "amount.h"
 #include "wallet/db.h"
 #include "key.h"
-#include "keystore.h"
 
 #include <list>
 #include <stdint.h>