Sirikata
|
#include <Complete_Cache.hpp>
Public Member Functions | |
Complete_Cache (double avgPopPar, std::string complete_name, CompleteCacheScoreFunc ccScorer, CompleteCacheScoreFuncPrint ccScorerPrint, SpaceContext *spctx, float insideRadiusInsert=FLT_MAX) | |
Complete_Cache (double avgPopPar, std::string complete_name, CompleteCacheScoreFunc ccScorer, CompleteCacheScoreFuncPrint ccScorerPrint, SpaceContext *spctx, int complete_size, float insideRadiusInsert=FLT_MAX) | |
virtual | ~Complete_Cache () |
virtual void | insert (const UUID &toInsert, ServerID bid, CacheTimeMS tms, double vMag, double weight, double distance, double radius, double lookupWeight, double scaler) |
virtual const OSegEntry & | lookup (const UUID &lookingFor) |
ServerID | lookup_dynamic (UUID uuid) |
virtual std::string | getCacheName () |
virtual void | remove (const UUID &oid) |
void | printAll () |
Public Attributes | |
OSegEntry | mCraqEntry |
Private Types | |
typedef std::map< UUID, FCacheRecord * > | IDRecordMap |
typedef std::multimap< double, FCacheRecord * > | TimeRecordMap |
Private Member Functions | |
void | maintain () |
void | checkUpdate () |
Private Attributes | |
IDRecordMap | idRecMap |
TimeRecordMap | timeRecMap |
double | ewmaPopPar |
std::string | mName |
int | mMaxSize |
CompleteCacheScoreFunc | mScoreFunc |
CompleteCacheScoreFuncPrint | mScoreFuncPrint |
SpaceContext * | ctx |
CacheTimeMS | mPrevTime |
float | mInsideRadiusInsert |
typedef std::map<UUID,FCacheRecord*> Sirikata::Complete_Cache::IDRecordMap [private] |
typedef std::multimap<double,FCacheRecord*> Sirikata::Complete_Cache::TimeRecordMap [private] |
Sirikata::Complete_Cache::Complete_Cache | ( | double | avgPopPar, |
std::string | complete_name, | ||
CompleteCacheScoreFunc | ccScorer, | ||
CompleteCacheScoreFuncPrint | ccScorerPrint, | ||
SpaceContext * | spctx, | ||
float | insideRadiusInsert = FLT_MAX |
||
) |
Sirikata::Complete_Cache::Complete_Cache | ( | double | avgPopPar, |
std::string | complete_name, | ||
CompleteCacheScoreFunc | ccScorer, | ||
CompleteCacheScoreFuncPrint | ccScorerPrint, | ||
SpaceContext * | spctx, | ||
int | complete_size, | ||
float | insideRadiusInsert = FLT_MAX |
||
) |
Sirikata::Complete_Cache::~Complete_Cache | ( | ) | [virtual] |
void Sirikata::Complete_Cache::checkUpdate | ( | ) | [private] |
References ctx, ewmaPopPar, idRecMap, mPrevTime, mScoreFunc, Sirikata::Time::null(), Sirikata::Context::simTime(), and timeRecMap.
Referenced by lookup_dynamic().
std::string Sirikata::Complete_Cache::getCacheName | ( | ) | [virtual] |
Implements Sirikata::Cache.
References mName.
void Sirikata::Complete_Cache::insert | ( | const UUID & | toInsert, |
ServerID | bid, | ||
CacheTimeMS | tms, | ||
double | vMag, | ||
double | weight, | ||
double | distance, | ||
double | radius, | ||
double | lookupWeight, | ||
double | scaler | ||
) | [virtual] |
Implements Sirikata::Cache.
References ctx, idRecMap, maintain(), mInsideRadiusInsert, mScoreFunc, and timeRecMap.
Referenced by Sirikata::CommunicationCache::insert().
Implements Sirikata::Cache.
References idRecMap, mCraqEntry, Sirikata::OSegEntry::null(), Sirikata::OSegEntry::setRadius(), and Sirikata::OSegEntry::setServer().
Referenced by Sirikata::CommunicationCache::get().
ServerID Sirikata::Complete_Cache::lookup_dynamic | ( | UUID | uuid | ) |
References checkUpdate(), idRecMap, mScoreFunc, Sirikata::FCacheRecord::reqsSinceEvict, and timeRecMap.
void Sirikata::Complete_Cache::maintain | ( | ) | [private] |
References idRecMap, mMaxSize, and timeRecMap.
Referenced by insert().
void Sirikata::Complete_Cache::printAll | ( | ) |
References idRecMap.
void Sirikata::Complete_Cache::remove | ( | const UUID & | oid | ) | [virtual] |
Implements Sirikata::Cache.
References idRecMap, mScoreFunc, and timeRecMap.
Referenced by Sirikata::CommunicationCache::remove().
SpaceContext* Sirikata::Complete_Cache::ctx [private] |
Referenced by checkUpdate(), and insert().
double Sirikata::Complete_Cache::ewmaPopPar [private] |
Referenced by checkUpdate().
Referenced by checkUpdate(), insert(), lookup(), lookup_dynamic(), maintain(), printAll(), and remove().
Referenced by lookup().
Referenced by insert().
int Sirikata::Complete_Cache::mMaxSize [private] |
Referenced by maintain().
std::string Sirikata::Complete_Cache::mName [private] |
Referenced by getCacheName().
Referenced by checkUpdate().
Referenced by checkUpdate(), insert(), lookup_dynamic(), and remove().
Referenced by checkUpdate(), insert(), lookup_dynamic(), maintain(), and remove().