Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

#include <masternode-meta.h>

+ Collaboration diagram for CMasternodeMetaMan:

Public Member Functions

template<typename Stream , typename Operation >
ADD_SERIALIZE_METHODS void SerializationOp (Stream &s, Operation ser_action)
 
CMasternodeMetaInfoPtr GetMetaInfo (const uint256 &proTxHash, bool fCreate=true)
 
int64_t GetDsqCount ()
 
int64_t GetDsqThreshold (const uint256 &proTxHash, int nMnCount)
 
void AllowMixing (const uint256 &proTxHash)
 
void DisallowMixing (const uint256 &proTxHash)
 
bool AddGovernanceVote (const uint256 &proTxHash, const uint256 &nGovernanceObjectHash)
 
void RemoveGovernanceObject (const uint256 &nGovernanceObjectHash)
 
std::vector< uint256GetAndClearDirtyGovernanceObjectHashes ()
 
void Clear ()
 
void CheckAndRemove ()
 
std::string ToString () const
 

Private Attributes

CCriticalSection cs
 
std::map< uint256, CMasternodeMetaInfoPtrmetaInfos
 
std::vector< uint256vecDirtyGovernanceObjectHashes
 
int64_t nDsqCount = 0
 

Static Private Attributes

static const std::string SERIALIZATION_VERSION_STRING = "CMasternodeMetaMan-Version-2"
 

Detailed Description

Definition at line 88 of file masternode-meta.h.

Member Function Documentation

◆ AddGovernanceVote()

bool CMasternodeMetaMan::AddGovernanceVote ( const uint256 proTxHash,
const uint256 nGovernanceObjectHash 
)

Definition at line 93 of file masternode-meta.cpp.

References cs, GetMetaInfo(), and LOCK.

Referenced by CGovernanceObject::ProcessVote().

◆ AllowMixing()

void CMasternodeMetaMan::AllowMixing ( const uint256 proTxHash)

◆ CheckAndRemove()

void CMasternodeMetaMan::CheckAndRemove ( )

Definition at line 124 of file masternode-meta.cpp.

◆ Clear()

void CMasternodeMetaMan::Clear ( )

Definition at line 117 of file masternode-meta.cpp.

References cs, LOCK, metaInfos, and vecDirtyGovernanceObjectHashes.

Referenced by SerializationOp().

◆ DisallowMixing()

void CMasternodeMetaMan::DisallowMixing ( const uint256 proTxHash)

Definition at line 84 of file masternode-meta.cpp.

References cs, GetMetaInfo(), and LOCK.

Referenced by ProcessMessage().

◆ GetAndClearDirtyGovernanceObjectHashes()

std::vector< uint256 > CMasternodeMetaMan::GetAndClearDirtyGovernanceObjectHashes ( )

Definition at line 109 of file masternode-meta.cpp.

References cs, LOCK, and vecDirtyGovernanceObjectHashes.

Referenced by CGovernanceManager::UpdateCachesAndClean().

◆ GetDsqCount()

int64_t CMasternodeMetaMan::GetDsqCount ( )
inline

◆ GetDsqThreshold()

int64_t CMasternodeMetaMan::GetDsqThreshold ( const uint256 proTxHash,
int  nMnCount 
)

◆ GetMetaInfo()

◆ RemoveGovernanceObject()

void CMasternodeMetaMan::RemoveGovernanceObject ( const uint256 nGovernanceObjectHash)

Definition at line 101 of file masternode-meta.cpp.

References cs, LOCK, and metaInfos.

Referenced by CGovernanceManager::UpdateCachesAndClean().

◆ SerializationOp()

template<typename Stream , typename Operation >
ADD_SERIALIZE_METHODS void CMasternodeMetaMan::SerializationOp ( Stream &  s,
Operation  ser_action 
)
inline

Definition at line 105 of file masternode-meta.h.

References Clear(), cs, LOCK, metaInfos, nDsqCount, READWRITE, and SERIALIZATION_VERSION_STRING.

◆ ToString()

std::string CMasternodeMetaMan::ToString ( ) const

Definition at line 129 of file masternode-meta.cpp.

References metaInfos, and nDsqCount.

Member Data Documentation

◆ cs

◆ metaInfos

std::map<uint256, CMasternodeMetaInfoPtr> CMasternodeMetaMan::metaInfos
private

◆ nDsqCount

int64_t CMasternodeMetaMan::nDsqCount = 0
private

◆ SERIALIZATION_VERSION_STRING

const std::string CMasternodeMetaMan::SERIALIZATION_VERSION_STRING = "CMasternodeMetaMan-Version-2"
staticprivate

Definition at line 91 of file masternode-meta.h.

Referenced by SerializationOp().

◆ vecDirtyGovernanceObjectHashes

std::vector<uint256> CMasternodeMetaMan::vecDirtyGovernanceObjectHashes
private

Definition at line 96 of file masternode-meta.h.

Referenced by Clear(), and GetAndClearDirtyGovernanceObjectHashes().


The documentation for this class was generated from the following files:
Released under the MIT license