6 #ifndef PIVX_TIERTWO_NETFULFILLEDMAN_H
7 #define PIVX_TIERTWO_NETFULFILLEDMAN_H
18 static const std::string NET_REQUESTS_CACHE_FILENAME =
"netrequests.dat";
19 static const std::string NET_REQUESTS_CACHE_FILE_ID =
"magicNetRequestsCache";
21 static const unsigned int DEFAULT_ITEMS_FILTER_SIZE = 250;
22 static const unsigned int DEFAULT_ITEMS_FILTER_CLEANUP = 60 * 60;
46 LOCK(obj.cs_mapFulfilledRequests);
BloomFilter is a probabilistic filter which SPV clients provide so that we can filter the transaction...
Mutex cs_mapFulfilledRequests
void AddFulfilledRequest(const CService &addr, const std::string &strRequest)
CNetFulfilledRequestManager(unsigned int itemsFilterSize)
unsigned int itemsFilterSize
void AddItemRequest(const CService &addr, const uint256 &itemHash)
int64_t lastFilterCleanup
std::map< CService, fulfilledreqmapentry_t > fulfilledreqmap_t
std::string ToString() const
bool HasFulfilledRequest(const CService &addr, const std::string &strRequest) const
bool HasItemRequest(const CService &addr, const uint256 &itemHash) const
std::map< std::string, int64_t > fulfilledreqmapentry_t
SERIALIZE_METHODS(CNetFulfilledRequestManager, obj)
int64_t filterCleanupTime
fulfilledreqmap_t mapFulfilledRequests GUARDED_BY(cs_mapFulfilledRequests)
std::unique_ptr< CBloomFilter > itemsFilter GUARDED_BY(cs_mapFulfilledRequests)
unsigned int itemsFilterCount
A combination of a network address (CNetAddr) and a (TCP) port.
CNetFulfilledRequestManager g_netfulfilledman
#define WITH_LOCK(cs, code)
Run code while locking a mutex.