Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

#include <bls_worker.h>

+ Collaboration diagram for CBLSWorkerCache:

Public Member Functions

 CBLSWorkerCache (CBLSWorker &_worker)
 
BLSVerificationVectorPtr BuildQuorumVerificationVector (const uint256 &cacheKey, const std::vector< BLSVerificationVectorPtr > &vvecs)
 
CBLSSecretKey AggregateSecretKeys (const uint256 &cacheKey, const BLSSecretKeyVector &skShares)
 
CBLSPublicKey BuildPubKeyShare (const uint256 &cacheKey, const BLSVerificationVectorPtr &vvec, const CBLSId &id)
 

Private Member Functions

template<typename T , typename Builder >
GetOrBuild (const uint256 &cacheKey, std::map< uint256, std::shared_future< T > > &cache, Builder &&builder)
 

Private Attributes

CBLSWorkerworker
 
std::mutex cacheCs
 
std::map< uint256, std::shared_future< BLSVerificationVectorPtr > > vvecCache
 
std::map< uint256, std::shared_future< CBLSSecretKey > > secretKeyShareCache
 
std::map< uint256, std::shared_future< CBLSPublicKey > > publicKeyShareCache
 

Detailed Description

Definition at line 150 of file bls_worker.h.

Constructor & Destructor Documentation

◆ CBLSWorkerCache()

CBLSWorkerCache::CBLSWorkerCache ( CBLSWorker _worker)
inlineexplicit

Definition at line 161 of file bls_worker.h.

Member Function Documentation

◆ AggregateSecretKeys()

CBLSSecretKey CBLSWorkerCache::AggregateSecretKeys ( const uint256 cacheKey,
const BLSSecretKeyVector skShares 
)
inline

◆ BuildPubKeyShare()

CBLSPublicKey CBLSWorkerCache::BuildPubKeyShare ( const uint256 cacheKey,
const BLSVerificationVectorPtr vvec,
const CBLSId id 
)
inline

◆ BuildQuorumVerificationVector()

BLSVerificationVectorPtr CBLSWorkerCache::BuildQuorumVerificationVector ( const uint256 cacheKey,
const std::vector< BLSVerificationVectorPtr > &  vvecs 
)
inline

◆ GetOrBuild()

template<typename T , typename Builder >
T CBLSWorkerCache::GetOrBuild ( const uint256 cacheKey,
std::map< uint256, std::shared_future< T > > &  cache,
Builder &&  builder 
)
inlineprivate

Definition at line 185 of file bls_worker.h.

References cacheCs.

Referenced by AggregateSecretKeys(), BuildPubKeyShare(), and BuildQuorumVerificationVector().

Member Data Documentation

◆ cacheCs

std::mutex CBLSWorkerCache::cacheCs
private

Definition at line 155 of file bls_worker.h.

Referenced by GetOrBuild().

◆ publicKeyShareCache

std::map<uint256, std::shared_future<CBLSPublicKey> > CBLSWorkerCache::publicKeyShareCache
private

Definition at line 158 of file bls_worker.h.

Referenced by BuildPubKeyShare().

◆ secretKeyShareCache

std::map<uint256, std::shared_future<CBLSSecretKey> > CBLSWorkerCache::secretKeyShareCache
private

Definition at line 157 of file bls_worker.h.

Referenced by AggregateSecretKeys().

◆ vvecCache

std::map<uint256, std::shared_future<BLSVerificationVectorPtr> > CBLSWorkerCache::vvecCache
private

Definition at line 156 of file bls_worker.h.

Referenced by BuildQuorumVerificationVector().

◆ worker

CBLSWorker& CBLSWorkerCache::worker
private

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