aboutsummaryrefslogtreecommitdiff
path: root/src/miner.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/miner.h')
-rw-r--r--src/miner.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/miner.h b/src/miner.h
new file mode 100644
index 0000000000..ad13204818
--- /dev/null
+++ b/src/miner.h
@@ -0,0 +1,37 @@
+// Copyright (c) 2009-2010 Satoshi Nakamoto
+// Copyright (c) 2009-2013 The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#ifndef BITCOIN_MINER_H
+#define BITCOIN_MINER_H
+
+#include "primitives/block.h"
+
+#include <stdint.h>
+
+class CBlockIndex;
+class CChainParams;
+class CReserveKey;
+class CScript;
+class CWallet;
+namespace Consensus { struct Params; };
+
+static const int DEFAULT_GENERATE_THREADS = 1;
+
+struct CBlockTemplate
+{
+ CBlock block;
+ std::vector<CAmount> vTxFees;
+ std::vector<int64_t> vTxSigOps;
+};
+
+/** Run the miner threads */
+void GenerateBitcoins(bool fGenerate, int nThreads, const CChainParams& chainparams);
+/** Generate a new block, without valid proof-of-work */
+CBlockTemplate* CreateNewBlock(const CScript& scriptPubKeyIn);
+/** Modify the extranonce in a block */
+void IncrementExtraNonce(CBlock* pblock, const CBlockIndex* pindexPrev, unsigned int& nExtraNonce);
+int64_t UpdateTime(CBlockHeader* pblock, const Consensus::Params& consensusParams, const CBlockIndex* pindexPrev);
+
+#endif // BITCOIN_MINER_H