aboutsummaryrefslogtreecommitdiff
path: root/src/ats/gnunet-service-ats_normalization.c
diff options
context:
space:
mode:
authorMatthias Wachs <wachs@net.in.tum.de>2014-05-08 14:54:32 +0000
committerMatthias Wachs <wachs@net.in.tum.de>2014-05-08 14:54:32 +0000
commit09794f7d0dc2fe43878b88d0d65eb053e3928419 (patch)
treefafa9f8c480c2a6ec9c0c50ceb6b0a334edf7369 /src/ats/gnunet-service-ats_normalization.c
parentc8bee99b7ac37d2c29bb9b36c6c2650f2f3907b8 (diff)
downloadgnunet-09794f7d0dc2fe43878b88d0d65eb053e3928419.tar.gz
gnunet-09794f7d0dc2fe43878b88d0d65eb053e3928419.zip
only call callback on change
Diffstat (limited to 'src/ats/gnunet-service-ats_normalization.c')
-rw-r--r--src/ats/gnunet-service-ats_normalization.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/ats/gnunet-service-ats_normalization.c b/src/ats/gnunet-service-ats_normalization.c
index fd09a262f..f29646260 100644
--- a/src/ats/gnunet-service-ats_normalization.c
+++ b/src/ats/gnunet-service-ats_normalization.c
@@ -726,13 +726,18 @@ normalize_address (void *cls, const struct GNUNET_PeerIdentity *h, void *k)
726{ 726{
727 struct Property *p = cls; 727 struct Property *p = cls;
728 struct ATS_Address *address = k; 728 struct ATS_Address *address = k;
729
730 double delta; 729 double delta;
731 uint32_t avg_value = address->atsin[p->prop_type].avg; 730 double backup;
731 uint32_t avg_value;
732 732
733 backup = address->atsin[p->prop_type].norm;
734 avg_value = address->atsin[p->prop_type].avg;
733 delta = p->max - p->min; 735 delta = p->max - p->min;
734 address->atsin[p->prop_type].norm = (delta + (avg_value - p->min)) / (delta); 736 address->atsin[p->prop_type].norm = (delta + (avg_value - p->min)) / (delta);
735 737
738 if (backup == address->atsin[p->prop_type].norm)
739 return GNUNET_OK;
740
736 LOG(GNUNET_ERROR_TYPE_DEBUG, 741 LOG(GNUNET_ERROR_TYPE_DEBUG,
737 "Normalize `%s' address %p's '%s' with value %u to range [%u..%u] = %.3f\n", 742 "Normalize `%s' address %p's '%s' with value %u to range [%u..%u] = %.3f\n",
738 GNUNET_i2s (&address->peer), address, 743 GNUNET_i2s (&address->peer), address,