![]() |
Feathercoin
0.5.0
P2P Digital Currency
|
This is the complete list of members for CAddrMan, including all inherited members.
Add(const CAddress &addr, const CNetAddr &source, int64 nTimePenalty=0) | CAddrMan | inline |
Add(const std::vector< CAddress > &vAddr, const CNetAddr &source, int64 nTimePenalty=0) | CAddrMan | inline |
Add_(const CAddress &addr, const CNetAddr &source, int64 nTimePenalty) | CAddrMan | protected |
Attempt(const CService &addr, int64 nTime=GetAdjustedTime()) | CAddrMan | inline |
Attempt_(const CService &addr, int64 nTime) | CAddrMan | protected |
Check() | CAddrMan | inline |
Connected(const CService &addr, int64 nTime=GetAdjustedTime()) | CAddrMan | inline |
Connected_(const CService &addr, int64 nTime) | CAddrMan | protected |
Create(const CAddress &addr, const CNetAddr &addrSource, int *pnId=NULL) | CAddrMan | protected |
cs | CAddrMan | mutableprivate |
Find(const CNetAddr &addr, int *pnId=NULL) | CAddrMan | protected |
GetAddr() | CAddrMan | inline |
GetAddr_(std::vector< CAddress > &vAddr) | CAddrMan | protected |
Good(const CService &addr, int64 nTime=GetAdjustedTime()) | CAddrMan | inline |
Good_(const CService &addr, int64 nTime) | CAddrMan | protected |
IMPLEMENT_SERIALIZE(({{LOCK(cs);unsigned char nVersion=0;READWRITE(nVersion);READWRITE(nKey);READWRITE(nNew);READWRITE(nTried);CAddrMan *am=const_cast< CAddrMan * >(this);if(fWrite){int nUBuckets=ADDRMAN_NEW_BUCKET_COUNT;READWRITE(nUBuckets);std::map< int, int > mapUnkIds;int nIds=0;for(std::map< int, CAddrInfo >::iterator it=am->mapInfo.begin();it!=am->mapInfo.end();it++){if(nIds==nNew) break;mapUnkIds[(*it).first]=nIds;CAddrInfo &info=(*it).second;if(info.nRefCount){READWRITE(info);nIds++;}}nIds=0;for(std::map< int, CAddrInfo >::iterator it=am->mapInfo.begin();it!=am->mapInfo.end();it++){if(nIds==nTried) break;CAddrInfo &info=(*it).second;if(info.fInTried){READWRITE(info);nIds++;}}for(std::vector< std::set< int > >::iterator it=am->vvNew.begin();it!=am->vvNew.end();it++){const std::set< int > &vNew=(*it);int nSize=vNew.size();READWRITE(nSize);for(std::set< int >::iterator it2=vNew.begin();it2!=vNew.end();it2++){int nIndex=mapUnkIds[*it2];READWRITE(nIndex);}}}else{int nUBuckets=0;READWRITE(nUBuckets);am->nIdCount=0;am->mapInfo.clear();am->mapAddr.clear();am->vRandom.clear();am->vvTried=std::vector< std::vector< int > >(ADDRMAN_TRIED_BUCKET_COUNT, std::vector< int >(0));am->vvNew=std::vector< std::set< int > >(ADDRMAN_NEW_BUCKET_COUNT, std::set< int >());for(int n=0;n< am->nNew;n++){CAddrInfo &info=am->mapInfo[n];READWRITE(info);am->mapAddr[info]=n;info.nRandomPos=vRandom.size();am->vRandom.push_back(n);if(nUBuckets!=ADDRMAN_NEW_BUCKET_COUNT){am->vvNew[info.GetNewBucket(am->nKey)].insert(n);info.nRefCount++;}}am->nIdCount=am->nNew;int nLost=0;for(int n=0;n< am->nTried;n++){CAddrInfo info;READWRITE(info);std::vector< int > &vTried=am->vvTried[info.GetTriedBucket(am->nKey)];if(vTried.size()< ADDRMAN_TRIED_BUCKET_SIZE){info.nRandomPos=vRandom.size();info.fInTried=true;am->vRandom.push_back(am->nIdCount);am->mapInfo[am->nIdCount]=info;am->mapAddr[info]=am->nIdCount;vTried.push_back(am->nIdCount);am->nIdCount++;}else{nLost++;}}am->nTried-=nLost;for(int b=0;b< nUBuckets;b++){std::set< int > &vNew=am->vvNew[b];int nSize=0;READWRITE(nSize);for(int n=0;n< nSize;n++){int nIndex=0;READWRITE(nIndex);CAddrInfo &info=am->mapInfo[nIndex];if(nUBuckets==ADDRMAN_NEW_BUCKET_COUNT &&info.nRefCount< ADDRMAN_NEW_BUCKETS_PER_ADDRESS){info.nRefCount++;vNew.insert(nIndex);}}}}}});) CAddrMan() | CAddrMan | inline |
MakeTried(CAddrInfo &info, int nId, int nOrigin) | CAddrMan | protected |
mapAddr | CAddrMan | private |
mapInfo | CAddrMan | private |
nIdCount | CAddrMan | private |
nKey | CAddrMan | private |
nNew | CAddrMan | private |
nTried | CAddrMan | private |
Select(int nUnkBias=50) | CAddrMan | inline |
Select_(int nUnkBias) | CAddrMan | protected |
SelectTried(int nKBucket) | CAddrMan | protected |
ShrinkNew(int nUBucket) | CAddrMan | protected |
size() | CAddrMan | inline |
SwapRandom(unsigned int nRandomPos1, unsigned int nRandomPos2) | CAddrMan | protected |
vRandom | CAddrMan | private |
vvNew | CAddrMan | private |
vvTried | CAddrMan | private |