#include <SVivaldi.h>
Public Member Functions | |
virtual void | init (NeighborCache *neighborCache) |
Protected Member Functions | |
virtual double | calcError (const simtime_t &rtt, double dist, double weight) |
virtual double | calcDelta (const simtime_t &rtt, double dist, double weight) |
Private Attributes | |
double | lossC |
double | effectiveSample |
double | loss |
double | lossResetLimit |
Definition at line 34 of file SVivaldi.h.
double SVivaldi::calcDelta | ( | const simtime_t & | rtt, | |
double | dist, | |||
double | weight | |||
) | [protected, virtual] |
double SVivaldi::calcError | ( | const simtime_t & | rtt, | |
double | dist, | |||
double | weight | |||
) | [protected, virtual] |
Reimplemented from Vivaldi.
Definition at line 43 of file SVivaldi.cc.
{ // get avg absolute prediction error double sum = neighborCache->getAvgAbsPredictionError(); // update weighted moving average of local error return (sum * errorC) + ownCoords->getError() * (1 - errorC); }
void SVivaldi::init | ( | NeighborCache * | neighborCache | ) | [virtual] |
Reimplemented from Vivaldi.
Definition at line 31 of file SVivaldi.cc.
{ Vivaldi::init(neighborCache); lossC = neighborCache->par("svivaldiLossConst"); lossResetLimit = neighborCache->par("svivaldiLossResetLimit"); loss = 0; WATCH(loss); }
double SVivaldi::effectiveSample [private] |
Definition at line 38 of file SVivaldi.h.
double SVivaldi::loss [private] |
Definition at line 39 of file SVivaldi.h.
Referenced by calcDelta(), and init().
double SVivaldi::lossC [private] |
Definition at line 37 of file SVivaldi.h.
Referenced by calcDelta(), and init().
double SVivaldi::lossResetLimit [private] |
Definition at line 40 of file SVivaldi.h.
Referenced by calcDelta(), and init().