1234567891011121314151617181920212223242526272829303132333435 |
- // Copyright (c) 2009-2010 Satoshi Nakamoto
- // Copyright (c) 2009-2015 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_CONSENSUS_PARAMS_H
- #define BITCOIN_CONSENSUS_PARAMS_H
-
- #include "uint256.h"
-
- namespace Consensus {
- /**
- * Parameters that influence chain consensus.
- */
- struct Params {
- uint256 hashGenesisBlock;
- int nSubsidyHalvingInterval;
- /** Used to check majorities for block version upgrade */
- int nMajorityEnforceBlockUpgrade;
- int nMajorityRejectBlockOutdated;
- int nMajorityWindow;
- /** Block height and hash at which BIP34 becomes active */
- int BIP34Height;
- uint256 BIP34Hash;
- /** Proof of work parameters */
- uint256 powLimit;
- bool fPowAllowMinDifficultyBlocks;
- bool fPowNoRetargeting;
- int64_t nPowTargetSpacing;
- int64_t nPowTargetTimespan;
- int64_t DifficultyAdjustmentInterval() const { return nPowTargetTimespan / nPowTargetSpacing; }
- };
- } // namespace Consensus
-
- #endif // BITCOIN_CONSENSUS_PARAMS_H
|