Master Core  v0.0.9 - 2abfd2849db8ba7a83957c64eb976b406713c123
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
CChainParams Class Referenceabstract

CChainParams defines various tweakable parameters of a given instance of the Bitcoin system. More...

#include <chainparams.h>

+ Inheritance diagram for CChainParams:
+ Collaboration diagram for CChainParams:

Public Types

enum  Network {
  MAIN,
  TESTNET,
  REGTEST,
  MAX_NETWORK_TYPES
}
 
enum  Base58Type {
  PUBKEY_ADDRESS,
  SCRIPT_ADDRESS,
  SECRET_KEY,
  EXT_PUBLIC_KEY,
  EXT_SECRET_KEY,
  MAX_BASE58_TYPES
}
 

Public Member Functions

const uint256HashGenesisBlock () const
 
const MessageStartCharsMessageStart () const
 
const vector< unsigned char > & AlertKey () const
 
int GetDefaultPort () const
 
const CBigNumProofOfWorkLimit () const
 
int SubsidyHalvingInterval () const
 
virtual const CBlockGenesisBlock () const =0
 
virtual bool RequireRPCPassword () const
 
const string & DataDir () const
 
virtual Network NetworkID () const =0
 
const vector< CDNSSeedData > & DNSSeeds () const
 
const std::vector< unsigned char > & Base58Prefix (Base58Type type) const
 
virtual const vector< CAddress > & FixedSeeds () const =0
 
int RPCPort () const
 

Protected Member Functions

 CChainParams ()
 

Protected Attributes

uint256 hashGenesisBlock
 
MessageStartChars pchMessageStart
 
vector< unsigned char > vAlertPubKey
 
int nDefaultPort
 
int nRPCPort
 
CBigNum bnProofOfWorkLimit
 
int nSubsidyHalvingInterval
 
string strDataDir
 
vector< CDNSSeedDatavSeeds
 
std::vector< unsigned char > base58Prefixes [MAX_BASE58_TYPES]
 

Detailed Description

CChainParams defines various tweakable parameters of a given instance of the Bitcoin system.

There are three: the main network on which people trade goods and services, the public test network which gets reset from time to time and a regression test mode which is intended for private networks only. It has minimal difficulty to ensure that blocks can be found instantly.

Definition at line 34 of file chainparams.h.

Member Enumeration Documentation

Enumerator
PUBKEY_ADDRESS 
SCRIPT_ADDRESS 
SECRET_KEY 
EXT_PUBLIC_KEY 
EXT_SECRET_KEY 
MAX_BASE58_TYPES 

Definition at line 45 of file chainparams.h.

Enumerator
MAIN 
TESTNET 
REGTEST 
MAX_NETWORK_TYPES 

Definition at line 37 of file chainparams.h.

Constructor & Destructor Documentation

CChainParams::CChainParams ( )
inlineprotected

Definition at line 70 of file chainparams.h.

Member Function Documentation

const vector<unsigned char>& CChainParams::AlertKey ( ) const
inline

Definition at line 57 of file chainparams.h.

const std::vector<unsigned char>& CChainParams::Base58Prefix ( Base58Type  type) const
inline

Definition at line 66 of file chainparams.h.

Referenced by CBitcoinAddress::IsScript(), CBitcoinAddress::IsValid(), and CBitcoinSecret::IsValid().

+ Here is the caller graph for this function:

const string& CChainParams::DataDir ( ) const
inline

Definition at line 63 of file chainparams.h.

Referenced by getblockchaininfo(), and GetDataDir().

+ Here is the caller graph for this function:

const vector<CDNSSeedData>& CChainParams::DNSSeeds ( ) const
inline

Definition at line 65 of file chainparams.h.

Referenced by ThreadDNSAddressSeed().

+ Here is the caller graph for this function:

virtual const vector<CAddress>& CChainParams::FixedSeeds ( ) const
pure virtual

Implemented in CMainParams.

virtual const CBlock& CChainParams::GenesisBlock ( ) const
pure virtual

Implemented in CMainParams.

Referenced by mastercore::GetLatestBlockTime(), and InitBlockIndex().

+ Here is the caller graph for this function:

int CChainParams::GetDefaultPort ( ) const
inline

Definition at line 58 of file chainparams.h.

Referenced by getaddednodeinfo(), ThreadOpenAddedConnections(), and ThreadOpenConnections().

+ Here is the caller graph for this function:

const uint256& CChainParams::HashGenesisBlock ( ) const
inline

Definition at line 55 of file chainparams.h.

Referenced by ConnectBlock().

+ Here is the caller graph for this function:

const MessageStartChars& CChainParams::MessageStart ( ) const
inline

Definition at line 56 of file chainparams.h.

virtual Network CChainParams::NetworkID ( ) const
pure virtual

Implemented in CRegTestParams, CTestNetParams, and CMainParams.

Referenced by GetDataDir(), main(), RegTest(), and TestNet().

+ Here is the caller graph for this function:

const CBigNum& CChainParams::ProofOfWorkLimit ( ) const
inline

Definition at line 59 of file chainparams.h.

Referenced by ComputeMinWork(), and GetNextWorkRequired().

+ Here is the caller graph for this function:

virtual bool CChainParams::RequireRPCPassword ( ) const
inlinevirtual

Reimplemented in CRegTestParams.

Definition at line 62 of file chainparams.h.

int CChainParams::RPCPort ( ) const
inline

Definition at line 68 of file chainparams.h.

int CChainParams::SubsidyHalvingInterval ( ) const
inline

Definition at line 60 of file chainparams.h.

Referenced by GetBlockValue().

+ Here is the caller graph for this function:

Member Data Documentation

std::vector<unsigned char> CChainParams::base58Prefixes[MAX_BASE58_TYPES]
protected

Definition at line 82 of file chainparams.h.

CBigNum CChainParams::bnProofOfWorkLimit
protected

Definition at line 78 of file chainparams.h.

uint256 CChainParams::hashGenesisBlock
protected

Definition at line 72 of file chainparams.h.

int CChainParams::nDefaultPort
protected

Definition at line 76 of file chainparams.h.

int CChainParams::nRPCPort
protected

Definition at line 77 of file chainparams.h.

int CChainParams::nSubsidyHalvingInterval
protected

Definition at line 79 of file chainparams.h.

MessageStartChars CChainParams::pchMessageStart
protected

Definition at line 73 of file chainparams.h.

string CChainParams::strDataDir
protected

Definition at line 80 of file chainparams.h.

vector<unsigned char> CChainParams::vAlertPubKey
protected

Definition at line 75 of file chainparams.h.

vector<CDNSSeedData> CChainParams::vSeeds
protected

Definition at line 81 of file chainparams.h.


The documentation for this class was generated from the following file: