Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
#include <privatesend.h>
Static Public Member Functions | |
static void | InitStandardDenominations () |
static std::vector< CAmount > | GetStandardDenominations () |
static CAmount | GetSmallestDenomination () |
static bool | IsDenominatedAmount (CAmount nInputAmount) |
static bool | IsValidDenomination (int nDenom) |
static int | AmountToDenomination (CAmount nInputAmount) |
static CAmount | DenominationToAmount (int nDenom) |
static std::string | DenominationToString (int nDenom) |
static std::string | GetMessageByID (PoolMessage nMessageID) |
static int | GetMinPoolParticipants () |
Get the minimum/maximum number of participants for the pool. More... | |
static int | GetMaxPoolParticipants () |
static CAmount | GetMaxPoolAmount () |
static bool | IsCollateralValid (const CTransaction &txCollateral) |
If the collateral is valid given by a client. More... | |
static CAmount | GetCollateralAmount () |
static CAmount | GetMaxCollateralAmount () |
static bool | IsCollateralAmount (CAmount nInputAmount) |
static void | AddDSTX (const CPrivateSendBroadcastTx &dstx) |
static CPrivateSendBroadcastTx | GetDSTX (const uint256 &hash) |
static void | UpdatedBlockTip (const CBlockIndex *pindex) |
static void | NotifyChainLock (const CBlockIndex *pindex) |
static void | UpdateDSTXConfirmedHeight (const CTransactionRef &tx, int nHeight) |
static void | TransactionAddedToMempool (const CTransactionRef &tx) |
static void | BlockConnected (const std::shared_ptr< const CBlock > &pblock, const CBlockIndex *pindex, const std::vector< CTransactionRef > &vtxConflicted) |
static void | BlockDisconnected (const std::shared_ptr< const CBlock > &pblock, const CBlockIndex *pindexDisconnected) |
Private Member Functions | |
CPrivateSend () | |
~CPrivateSend () | |
CPrivateSend (CPrivateSend const &)=delete | |
CPrivateSend & | operator= (CPrivateSend const &)=delete |
Static Private Member Functions | |
static void | CheckDSTXes (const CBlockIndex *pindex) |
Static Private Attributes | |
static std::vector< CAmount > | vecStandardDenominations |
static std::map< uint256, CPrivateSendBroadcastTx > | mapDSTX |
static CCriticalSection | cs_mapdstx |
Detailed Description
Definition at line 417 of file privatesend.h.
Constructor & Destructor Documentation
◆ CPrivateSend() [1/2]
|
inlineprivate |
Definition at line 421 of file privatesend.h.
◆ ~CPrivateSend()
|
inlineprivate |
Definition at line 422 of file privatesend.h.
◆ CPrivateSend() [2/2]
|
privatedelete |
Member Function Documentation
◆ AddDSTX()
|
static |
Definition at line 531 of file privatesend.cpp.
References cs_mapdstx, LOCK, mapDSTX, and CPrivateSendBroadcastTx::tx.
Referenced by CPrivateSendServer::CommitFinalTransaction(), and ProcessMessage().
◆ AmountToDenomination()
|
static |
Definition at line 403 of file privatesend.cpp.
References vecStandardDenominations.
Referenced by IsDenominatedAmount(), CPrivateSendBaseSession::IsValidInOuts(), and CPrivateSendClientSession::StartNewQueue().
◆ BlockConnected()
|
static |
Definition at line 591 of file privatesend.cpp.
References cs_mapdstx, LOCK, CBlockIndex::nHeight, and UpdateDSTXConfirmedHeight().
Referenced by CDSNotificationInterface::BlockConnected().
◆ BlockDisconnected()
|
static |
Definition at line 603 of file privatesend.cpp.
References cs_mapdstx, LOCK, and UpdateDSTXConfirmedHeight().
Referenced by CDSNotificationInterface::BlockDisconnected().
◆ CheckDSTXes()
|
staticprivate |
Definition at line 544 of file privatesend.cpp.
References cs_mapdstx, LOCK, LogPrint, mapDSTX, and BCLog::PRIVATESEND.
Referenced by NotifyChainLock(), and UpdatedBlockTip().
◆ DenominationToAmount()
|
static |
Definition at line 419 of file privatesend.cpp.
References vecStandardDenominations.
Referenced by DenominationToString(), CPrivateSendServer::GetJsonInfo(), CPrivateSendClientSession::GetJsonInfo(), IsValidDenomination(), CPrivateSendClientSession::PrepareDenominate(), and CWallet::SelectPSInOutPairsByDenominations().
◆ DenominationToString()
|
static |
Definition at line 453 of file privatesend.cpp.
References DenominationToAmount(), UniValue::getValStr(), and ValueFromAmount().
Referenced by CPrivateSendServer::AddUserToExistingSession(), CPrivateSendServer::CreateNewSession(), CPrivateSendClientManager::GetSessionDenoms(), CPrivateSendBaseSession::IsValidInOuts(), CPrivateSendClientSession::JoinExistingQueue(), CPrivateSendServer::ProcessMessage(), CPrivateSendServer::RelayCompletedTransaction(), CPrivateSendServer::RelayFinalTransaction(), CPrivateSendServer::RelayStatus(), and CPrivateSendClientSession::StartNewQueue().
◆ GetCollateralAmount()
|
inlinestatic |
Definition at line 460 of file privatesend.h.
References GetSmallestDenomination().
Referenced by CWallet::CreateCollateralTransaction(), TransactionRecord::decomposeTransaction(), CPrivateSendClientSession::DoAutomaticDenominating(), CWallet::GetAnonymizableBalance(), GetMaxCollateralAmount(), IsCollateralAmount(), IsCollateralValid(), and CPrivateSendClientSession::MakeCollateralAmounts().
◆ GetDSTX()
|
static |
Definition at line 537 of file privatesend.cpp.
References cs_mapdstx, LOCK, and mapDSTX.
Referenced by AlreadyHave(), CPrivateSendServer::CommitFinalTransaction(), ProcessGetData(), ProcessMessage(), CConnman::RelayTransaction(), and PeerLogicValidation::SendMessages().
◆ GetMaxCollateralAmount()
|
inlinestatic |
Definition at line 461 of file privatesend.h.
References GetCollateralAmount().
Referenced by CPrivateSendClientSession::CreateDenominated(), TransactionRecord::decomposeTransaction(), CPrivateSendClientSession::DoAutomaticDenominating(), IsCollateralAmount(), CPrivateSendClientSession::MakeCollateralAmounts(), and OverviewPage::togglePrivateSend().
◆ GetMaxPoolAmount()
|
inlinestatic |
Definition at line 456 of file privatesend.h.
References PRIVATESEND_ENTRY_MAX_SIZE, and vecStandardDenominations.
Referenced by CPrivateSendClientSession::SelectDenominate().
◆ GetMaxPoolParticipants()
|
inlinestatic |
Definition at line 452 of file privatesend.h.
References CSporkManager::IsSporkActive(), Params(), CChainParams::PoolMaxParticipants(), CChainParams::PoolNewMaxParticipants(), SPORK_22_PS_MORE_PARTICIPANTS, and sporkManager.
Referenced by CPrivateSendServer::AddEntry(), CPrivateSendServer::AddUserToExistingSession(), CPrivateSendServer::CreateNewSession(), CPrivateSendServer::IsSessionReady(), and CPrivateSendBroadcastTx::IsValidStructure().
◆ GetMessageByID()
|
static |
Definition at line 479 of file privatesend.cpp.
References _(), ERR_ALREADY_HAVE, ERR_DENOM, ERR_ENTRIES_FULL, ERR_EXISTING_TX, ERR_FEES, ERR_INVALID_COLLATERAL, ERR_INVALID_INPUT, ERR_INVALID_SCRIPT, ERR_INVALID_TX, ERR_MAXIMUM, ERR_MISSING_TX, ERR_MN_LIST, ERR_MODE, ERR_NON_STANDARD_PUBKEY, ERR_NOT_A_MN, ERR_QUEUE_FULL, ERR_RECENT, ERR_SESSION, ERR_SIZE_MISMATCH, ERR_VERSION, MSG_ENTRIES_ADDED, MSG_NOERR, and MSG_SUCCESS.
Referenced by CPrivateSendServer::AddEntry(), CPrivateSendClientSession::CheckTimeout(), CPrivateSendClientSession::CompletedTransaction(), CPrivateSendClientSession::ProcessMessage(), CPrivateSendClientSession::ProcessPoolStateUpdate(), and CPrivateSendClientSession::SignFinalTransaction().
◆ GetMinPoolParticipants()
|
inlinestatic |
Get the minimum/maximum number of participants for the pool.
Definition at line 449 of file privatesend.h.
References CSporkManager::IsSporkActive(), Params(), CChainParams::PoolMinParticipants(), CChainParams::PoolNewMinParticipants(), SPORK_22_PS_MORE_PARTICIPANTS, and sporkManager.
Referenced by CPrivateSendServer::CheckPool(), CPrivateSendServer::IsSessionReady(), and CPrivateSendBroadcastTx::IsValidStructure().
◆ GetSmallestDenomination()
|
inlinestatic |
Definition at line 437 of file privatesend.h.
References vecStandardDenominations.
Referenced by CPrivateSendClientSession::CreateDenominated(), CPrivateSendClientSession::DoAutomaticDenominating(), CWallet::GetAnonymizableBalance(), GetCollateralAmount(), CWallet::SelectCoinsGroupedByAddresses(), CWallet::SelectDenominatedAmounts(), and OverviewPage::togglePrivateSend().
◆ GetStandardDenominations()
|
inlinestatic |
Definition at line 436 of file privatesend.h.
References vecStandardDenominations.
Referenced by CPrivateSendClientSession::CreateDenominated(), CPrivateSendClientSession::DoAutomaticDenominating(), less_then_denom(), and COutput::Priority().
◆ InitStandardDenominations()
|
static |
Definition at line 316 of file privatesend.cpp.
References COIN, and vecStandardDenominations.
Referenced by AppInitMain().
◆ IsCollateralAmount()
|
static |
Definition at line 393 of file privatesend.cpp.
References GetCollateralAmount(), and GetMaxCollateralAmount().
Referenced by CWallet::AvailableCoins(), TransactionRecord::decomposeTransaction(), CWallet::GetRealOutpointPrivateSendRounds(), CPrivateSendClientSession::MakeCollateralAmounts(), CWallet::SelectCoinsGroupedByAddresses(), and CoinControlDialog::updateView().
◆ IsCollateralValid()
|
static |
If the collateral is valid given by a client.
Definition at line 339 of file privatesend.cpp.
References AcceptToMemoryPool(), cs_main, CTxMemPool::get(), GetCollateralAmount(), GetUTXOCoin(), llmq::CInstantSendManager::IsLocked(), CTxMemPool::isSpent(), LOCK, LogPrint, MakeTransactionRef(), maxTxFee, mempool, CTransaction::nLockTime, CTxOut::nValue, Coin::out, BCLog::PRIVATESEND, llmq::quorumInstantSendManager, CTransaction::ToString(), CTransaction::vin, and CTransaction::vout.
Referenced by CPrivateSendServer::AddEntry(), CPrivateSendClientSession::DoAutomaticDenominating(), and CPrivateSendServer::IsAcceptableDSA().
◆ IsDenominatedAmount()
|
static |
Definition at line 469 of file privatesend.cpp.
References AmountToDenomination().
Referenced by CWallet::AvailableCoins(), CPrivateSendClientSession::CreateDenominated(), TransactionRecord::decomposeTransaction(), CWallet::GetAnonymizableBalance(), CWalletTx::GetAnonymizedCredit(), CWalletTx::GetDenominatedCredit(), CWallet::GetNormalizedAnonymizedBalance(), CWallet::GetRealOutpointPrivateSendRounds(), CWallet::IsDenominated(), CPrivateSendBroadcastTx::IsValidStructure(), CPrivateSendClientSession::MakeCollateralAmounts(), CWallet::SelectCoinsGroupedByAddresses(), CWallet::SelectCoinsMinConf(), and CoinControlDialog::updateView().
◆ IsValidDenomination()
|
static |
Definition at line 474 of file privatesend.cpp.
References DenominationToAmount().
Referenced by CPrivateSendServer::IsAcceptableDSA(), CPrivateSendClientSession::PrepareDenominate(), and CWallet::SelectPSInOutPairsByDenominations().
◆ NotifyChainLock()
|
static |
Definition at line 565 of file privatesend.cpp.
References CheckDSTXes(), CMasternodeSync::IsBlockchainSynced(), and masternodeSync.
Referenced by CDSNotificationInterface::NotifyChainLock().
◆ operator=()
|
privatedelete |
◆ TransactionAddedToMempool()
|
static |
Definition at line 585 of file privatesend.cpp.
References cs_mapdstx, LOCK, and UpdateDSTXConfirmedHeight().
Referenced by CDSNotificationInterface::TransactionAddedToMempool().
◆ UpdatedBlockTip()
|
static |
Definition at line 558 of file privatesend.cpp.
References CheckDSTXes(), CMasternodeSync::IsBlockchainSynced(), and masternodeSync.
Referenced by CDSNotificationInterface::UpdatedBlockTip().
◆ UpdateDSTXConfirmedHeight()
|
static |
Definition at line 572 of file privatesend.cpp.
References AssertLockHeld(), cs_mapdstx, LogPrint, mapDSTX, and BCLog::PRIVATESEND.
Referenced by BlockConnected(), BlockDisconnected(), and TransactionAddedToMempool().
Member Data Documentation
◆ cs_mapdstx
|
staticprivate |
Definition at line 430 of file privatesend.h.
Referenced by AddDSTX(), BlockConnected(), BlockDisconnected(), CheckDSTXes(), GetDSTX(), TransactionAddedToMempool(), and UpdateDSTXConfirmedHeight().
◆ mapDSTX
|
staticprivate |
Definition at line 428 of file privatesend.h.
Referenced by AddDSTX(), CheckDSTXes(), GetDSTX(), and UpdateDSTXConfirmedHeight().
◆ vecStandardDenominations
|
staticprivate |
Definition at line 427 of file privatesend.h.
Referenced by AmountToDenomination(), DenominationToAmount(), GetMaxPoolAmount(), GetSmallestDenomination(), GetStandardDenominations(), and InitStandardDenominations().
The documentation for this class was generated from the following files:
- src/privatesend/privatesend.h
- src/privatesend/privatesend.cpp