diff options
author | Carl Dong <contact@carldong.me> | 2022-03-09 16:11:39 -0500 |
---|---|---|
committer | TheCharlatan <seb.kung@gmail.com> | 2023-03-15 16:42:42 +0100 |
commit | 84b85786f0f5cb23cc257a4464ae345e1d372313 (patch) | |
tree | ef292571361801e2e0953d0c1a82e2e54b4717d2 /src/chainparams.h | |
parent | 76cd4e7c96242398172989609f1b9a8843c404b4 (diff) | |
download | bitcoin-84b85786f0f5cb23cc257a4464ae345e1d372313.tar.xz |
Decouple RegTestChainParams from ArgsManager
RegTest chain params can now be initialized by configuring a
RegTestOptions struct, or with ArgsManager. This offers an interface for
creating RegTestChainParams without a gArgs object.
Diffstat (limited to 'src/chainparams.h')
-rw-r--r-- | src/chainparams.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/chainparams.h b/src/chainparams.h index 2f6f3f0907..f2e2eb8bc0 100644 --- a/src/chainparams.h +++ b/src/chainparams.h @@ -13,8 +13,10 @@ #include <protocol.h> #include <util/hash_type.h> +#include <cstdint> #include <memory> #include <string> +#include <unordered_map> #include <vector> typedef std::map<int, uint256> MapCheckpoints; @@ -131,6 +133,24 @@ public: std::optional<std::vector<std::string>> seeds{}; }; + /** + * VersionBitsParameters holds activation parameters + */ + struct VersionBitsParameters { + int64_t start_time; + int64_t timeout; + int min_activation_height; + }; + + /** + * RegTestOptions holds configurations for creating a regtest CChainParams. + */ + struct RegTestOptions { + std::unordered_map<Consensus::DeploymentPos, VersionBitsParameters> version_bits_parameters{}; + std::unordered_map<Consensus::BuriedDeployment, int> activation_heights{}; + bool fastprune{false}; + }; + protected: CChainParams() {} |