Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
#include <arith_uint256.h>
#include <bls/bls.h>
#include <dbwrapper.h>
#include <evo/evodb.h>
#include <evo/providertx.h>
#include <evo/simplifiedmns.h>
#include <saltedhasher.h>
#include <sync.h>
#include <immer/map.hpp>
#include <immer/map_transient.hpp>
#include <unordered_map>
Go to the source code of this file.
Classes | |
class | CDeterministicMNState |
class | CDeterministicMNStateDiff |
class | CDeterministicMN |
class | CDeterministicMNList |
class | CDeterministicMNListDiff |
class | CDeterministicMNListDiff_OldFormat |
class | CDeterministicMNManager |
Namespaces | |
llmq | |
Macros | |
#define | DMN_STATE_DIFF_ALL_FIELDS |
#define | DMN_STATE_DIFF_LINE(f) if (a.f != b.f) { state.f = b.f; fields |= Field_##f; } |
#define | DMN_STATE_DIFF_LINE(f) if (fields & Field_##f) READWRITE(state.f); |
#define | DMN_STATE_DIFF_LINE(f) if (fields & Field_##f) target.f = state.f; |
Typedefs | |
typedef std::shared_ptr< CDeterministicMNState > | CDeterministicMNStatePtr |
typedef std::shared_ptr< const CDeterministicMNState > | CDeterministicMNStateCPtr |
typedef std::shared_ptr< const CDeterministicMN > | CDeterministicMNCPtr |
Functions | |
template<typename Stream , typename K , typename T , typename Hash , typename Equal > | |
void | SerializeImmerMap (Stream &os, const immer::map< K, T, Hash, Equal > &m) |
template<typename Stream , typename K , typename T , typename Hash , typename Equal > | |
void | UnserializeImmerMap (Stream &is, immer::map< K, T, Hash, Equal > &m) |
template<typename Stream , typename K , typename T , typename Hash , typename Equal > | |
void | SerReadWrite (Stream &s, const immer::map< K, T, Hash, Equal > &m, CSerActionSerialize ser_action) |
template<typename Stream , typename K , typename T , typename Hash , typename Equal > | |
void | SerReadWrite (Stream &s, immer::map< K, T, Hash, Equal > &obj, CSerActionUnserialize ser_action) |
Variables | |
std::unique_ptr< CDeterministicMNManager > | deterministicMNManager |
Macro Definition Documentation
◆ DMN_STATE_DIFF_ALL_FIELDS
#define DMN_STATE_DIFF_ALL_FIELDS |
Definition at line 140 of file deterministicmns.h.
Referenced by CDeterministicMNStateDiff::ApplyToState(), CDeterministicMNStateDiff::CDeterministicMNStateDiff(), and CDeterministicMNStateDiff::SerializationOp().
◆ DMN_STATE_DIFF_LINE [1/3]
#define DMN_STATE_DIFF_LINE | ( | f | ) | if (a.f != b.f) { state.f = b.f; fields |= Field_##f; } |
◆ DMN_STATE_DIFF_LINE [2/3]
#define DMN_STATE_DIFF_LINE | ( | f | ) | if (fields & Field_##f) READWRITE(state.f); |
◆ DMN_STATE_DIFF_LINE [3/3]
#define DMN_STATE_DIFF_LINE | ( | f | ) | if (fields & Field_##f) target.f = state.f; |
Typedef Documentation
◆ CDeterministicMNCPtr
typedef std::shared_ptr<const CDeterministicMN> CDeterministicMNCPtr |
Definition at line 249 of file deterministicmns.h.
◆ CDeterministicMNStateCPtr
typedef std::shared_ptr<const CDeterministicMNState> CDeterministicMNStateCPtr |
Definition at line 118 of file deterministicmns.h.
◆ CDeterministicMNStatePtr
typedef std::shared_ptr<CDeterministicMNState> CDeterministicMNStatePtr |
Definition at line 117 of file deterministicmns.h.
Function Documentation
◆ SerializeImmerMap()
void SerializeImmerMap | ( | Stream & | os, |
const immer::map< K, T, Hash, Equal > & | m | ||
) |
Definition at line 254 of file deterministicmns.h.
References immer::map< K, T, Hash, Equal, MemoryPolicy, B >::begin(), immer::map< K, T, Hash, Equal, MemoryPolicy, B >::end(), Serialize(), immer::map< K, T, Hash, Equal, MemoryPolicy, B >::size(), and WriteCompactSize().
Referenced by SerReadWrite().
◆ SerReadWrite() [1/2]
|
inline |
Definition at line 276 of file deterministicmns.h.
References SerializeImmerMap().
◆ SerReadWrite() [2/2]
|
inline |
Definition at line 282 of file deterministicmns.h.
References UnserializeImmerMap().
◆ UnserializeImmerMap()
void UnserializeImmerMap | ( | Stream & | is, |
immer::map< K, T, Hash, Equal > & | m | ||
) |
Definition at line 262 of file deterministicmns.h.
References ReadCompactSize(), immer::map< K, T, Hash, Equal, MemoryPolicy, B >::set(), and Unserialize().
Referenced by SerReadWrite().
Variable Documentation
◆ deterministicMNManager
std::unique_ptr<CDeterministicMNManager> deterministicMNManager |
Definition at line 24 of file deterministicmns.cpp.
Referenced by llmq::CLLMQUtils::AddQuorumProbeConnections(), CWallet::AddToWallet(), CTxMemPool::addUnchecked(), AppInitMain(), CWallet::AutoLockMasternodeCollaterals(), BuildSimplifiedMNListDiff(), CalcCbTxMerkleRootMNList(), CheckProRegTx(), CheckProUpRegTx(), CheckProUpRevTx(), CheckProUpServTx(), CGovernanceObject::ClearMasternodeVotes(), CPrivateSendClientSession::DoAutomaticDenominating(), CPrivateSendClientManager::DoAutomaticDenominating(), llmq::CLLMQUtils::EnsureQuorumConnections(), CTxMemPool::existsProviderTxConflict(), llmq::CLLMQUtils::GetAllQuorumMembers(), CMasternodePayments::GetBlockTxOuts(), CGovernanceManager::GetCurrentVotes(), GetNextMasternodeForPayment(), CPrivateSendClientManager::GetRandomNotUsedMasternode(), GetRequiredPaymentsStrings(), gobject_submit(), gobject_vote_conf(), CActiveMasternodeManager::Init(), llmq::CDKGSessionHandler::InitNewQuorum(), CConnman::IsMasternodeQuorumNode(), CMasternodePayments::IsTransactionValid(), CGovernanceVote::IsValid(), CGovernanceObject::IsValidLocally(), CPrivateSendClientSession::JoinExistingQueue(), CWallet::ListProTxCoins(), masternode_count(), masternode_status(), masternodelist(), PrepareShutdown(), CMNAuth::ProcessMessage(), CPrivateSendServer::ProcessMessage(), CPrivateSendClientManager::ProcessMessage(), ProcessMessage(), ProcessSpecialTxsInBlock(), CGovernanceObject::ProcessVote(), protx_info(), protx_list(), quorum_memberof(), ClientModel::refreshMasternodeList(), CGovernanceVote::Relay(), CGovernanceManager::RemoveInvalidVotes(), CTxMemPool::removeProTxSpentCollateralConflicts(), CGovernanceManager::RequestGovernanceObjectVotes(), CPrivateSendClientSession::StartNewQueue(), CDSNotificationInterface::SynchronousUpdatedBlockTip(), ThreadImport(), CConnman::ThreadOpenConnections(), CConnman::ThreadOpenMasternodeConnections(), UndoSpecialTxsInBlock(), CActiveMasternodeManager::UpdatedBlockTip(), llmq::CDKGSessionManager::UpdatedBlockTip(), CGovernanceManager::UpdatedBlockTip(), CGovernanceObject::UpdateSentinelVariables(), voteraw(), and VoteWithMasternodes().