Bitcoin Core  0.20.99
P2P Digital Currency
chainparamsbase.h
Go to the documentation of this file.
1 // Copyright (c) 2014-2019 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 
5 #ifndef BITCOIN_CHAINPARAMSBASE_H
6 #define BITCOIN_CHAINPARAMSBASE_H
7 
8 #include <memory>
9 #include <string>
10 
11 class ArgsManager;
12 
18 {
19 public:
21 
22  static const std::string MAIN;
23  static const std::string TESTNET;
24  static const std::string REGTEST;
26 
27  const std::string& DataDir() const { return strDataDir; }
28  int RPCPort() const { return nRPCPort; }
29 
30  CBaseChainParams() = delete;
31  CBaseChainParams(const std::string& data_dir, int rpc_port) : nRPCPort(rpc_port), strDataDir(data_dir) {}
32 
33 private:
34  int nRPCPort;
35  std::string strDataDir;
36 };
37 
43 std::unique_ptr<CBaseChainParams> CreateBaseChainParams(const std::string& chain);
44 
49 
55 
57 void SelectBaseParams(const std::string& chain);
58 
59 #endif // BITCOIN_CHAINPARAMSBASE_H
void SelectBaseParams(const std::string &chain)
Sets the params returned by Params() to those for the given network.
static const std::string REGTEST
std::string strDataDir
std::unique_ptr< CBaseChainParams > CreateBaseChainParams(const std::string &chain)
Creates and returns a std::unique_ptr<CBaseChainParams> of the chosen chain.
CBaseChainParams(const std::string &data_dir, int rpc_port)
CBaseChainParams()=delete
const std::string & DataDir() const
static const std::string MAIN
Chain name strings.
const CBaseChainParams & BaseParams()
Return the currently selected parameters.
int RPCPort() const
CBaseChainParams defines the base parameters (shared between bitcoin-cli and bitcoind) of a given ins...
static const std::string TESTNET
void SetupChainParamsBaseOptions(ArgsManager &argsman)
Set the arguments for chainparams.