PIVX Core  5.6.99
P2P Digital Currency
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
CNetFulfilledRequestManager Class Reference

#include <netfulfilledman.h>

Collaboration diagram for CNetFulfilledRequestManager:
[legend]

Public Member Functions

 CNetFulfilledRequestManager (unsigned int itemsFilterSize)
 
 SERIALIZE_METHODS (CNetFulfilledRequestManager, obj)
 
void AddFulfilledRequest (const CService &addr, const std::string &strRequest)
 
bool HasFulfilledRequest (const CService &addr, const std::string &strRequest) const
 
void AddItemRequest (const CService &addr, const uint256 &itemHash)
 
bool HasItemRequest (const CService &addr, const uint256 &itemHash) const
 
void CheckAndRemove ()
 
void Clear ()
 
std::string ToString () const
 
int Size () const
 
void DoMaintenance ()
 

Private Types

typedef std::map< std::string, int64_t > fulfilledreqmapentry_t
 
typedef std::map< CService, fulfilledreqmapentry_tfulfilledreqmap_t
 

Private Member Functions

fulfilledreqmap_t mapFulfilledRequests GUARDED_BY (cs_mapFulfilledRequests)
 
std::unique_ptr< CBloomFilter > itemsFilter GUARDED_BY (cs_mapFulfilledRequests)
 

Private Attributes

Mutex cs_mapFulfilledRequests
 
unsigned int itemsFilterSize {0}
 
unsigned int itemsFilterCount {0}
 
int64_t filterCleanupTime {DEFAULT_ITEMS_FILTER_CLEANUP}
 
int64_t lastFilterCleanup {0}
 

Detailed Description

Definition at line 26 of file netfulfilledman.h.

Member Typedef Documentation

◆ fulfilledreqmap_t

Definition at line 30 of file netfulfilledman.h.

◆ fulfilledreqmapentry_t

typedef std::map<std::string, int64_t> CNetFulfilledRequestManager::fulfilledreqmapentry_t
private

Definition at line 29 of file netfulfilledman.h.

Constructor & Destructor Documentation

◆ CNetFulfilledRequestManager()

CNetFulfilledRequestManager::CNetFulfilledRequestManager ( unsigned int  itemsFilterSize)
explicit

Definition at line 14 of file netfulfilledman.cpp.

Member Function Documentation

◆ AddFulfilledRequest()

void CNetFulfilledRequestManager::AddFulfilledRequest ( const CService addr,
const std::string &  strRequest 
)

Definition at line 22 of file netfulfilledman.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddItemRequest()

void CNetFulfilledRequestManager::AddItemRequest ( const CService addr,
const uint256 itemHash 
)

Definition at line 49 of file netfulfilledman.cpp.

Here is the caller graph for this function:

◆ CheckAndRemove()

void CNetFulfilledRequestManager::CheckAndRemove ( )

Definition at line 64 of file netfulfilledman.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Clear()

void CNetFulfilledRequestManager::Clear ( )

Definition at line 90 of file netfulfilledman.cpp.

Here is the caller graph for this function:

◆ DoMaintenance()

void CNetFulfilledRequestManager::DoMaintenance ( )

Definition at line 104 of file netfulfilledman.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GUARDED_BY() [1/2]

fulfilledreqmap_t mapFulfilledRequests CNetFulfilledRequestManager::GUARDED_BY ( cs_mapFulfilledRequests  )
private

◆ GUARDED_BY() [2/2]

std::unique_ptr<CBloomFilter> itemsFilter CNetFulfilledRequestManager::GUARDED_BY ( cs_mapFulfilledRequests  )
inlineprivate

Definition at line 36 of file netfulfilledman.h.

◆ HasFulfilledRequest()

bool CNetFulfilledRequestManager::HasFulfilledRequest ( const CService addr,
const std::string &  strRequest 
) const

Definition at line 28 of file netfulfilledman.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasItemRequest()

bool CNetFulfilledRequestManager::HasItemRequest ( const CService addr,
const uint256 itemHash 
) const

Definition at line 57 of file netfulfilledman.cpp.

Here is the caller graph for this function:

◆ SERIALIZE_METHODS()

CNetFulfilledRequestManager::SERIALIZE_METHODS ( CNetFulfilledRequestManager  ,
obj   
)
inline

Definition at line 45 of file netfulfilledman.h.

◆ Size()

int CNetFulfilledRequestManager::Size ( ) const
inline

Definition at line 61 of file netfulfilledman.h.

◆ ToString()

std::string CNetFulfilledRequestManager::ToString ( ) const

Definition at line 96 of file netfulfilledman.cpp.

Member Data Documentation

◆ cs_mapFulfilledRequests

Mutex CNetFulfilledRequestManager::cs_mapFulfilledRequests
mutableprivate

Definition at line 34 of file netfulfilledman.h.

◆ filterCleanupTime

int64_t CNetFulfilledRequestManager::filterCleanupTime {DEFAULT_ITEMS_FILTER_CLEANUP}
private

Definition at line 39 of file netfulfilledman.h.

◆ itemsFilterCount

unsigned int CNetFulfilledRequestManager::itemsFilterCount {0}
private

Definition at line 38 of file netfulfilledman.h.

◆ itemsFilterSize

unsigned int CNetFulfilledRequestManager::itemsFilterSize {0}
private

Definition at line 37 of file netfulfilledman.h.

◆ lastFilterCleanup

int64_t CNetFulfilledRequestManager::lastFilterCleanup {0}
private

Definition at line 40 of file netfulfilledman.h.


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