gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r25229 - gnunet/src/ats


From: gnunet
Subject: [GNUnet-SVN] r25229 - gnunet/src/ats
Date: Tue, 4 Dec 2012 15:38:22 +0100

Author: wachs
Date: 2012-12-04 15:38:22 +0100 (Tue, 04 Dec 2012)
New Revision: 25229

Modified:
   gnunet/src/ats/gnunet-service-ats_addresses.c
   gnunet/src/ats/gnunet-service-ats_addresses.h
   gnunet/src/ats/gnunet-service-ats_addresses_mlp.c
   gnunet/src/ats/gnunet-service-ats_addresses_mlp.h
   gnunet/src/ats/gnunet-service-ats_addresses_simplistic.c
   gnunet/src/ats/gnunet-service-ats_addresses_simplistic.h
Log:
changes

Modified: gnunet/src/ats/gnunet-service-ats_addresses.c
===================================================================
--- gnunet/src/ats/gnunet-service-ats_addresses.c       2012-12-04 14:02:47 UTC 
(rev 25228)
+++ gnunet/src/ats/gnunet-service-ats_addresses.c       2012-12-04 14:38:22 UTC 
(rev 25229)
@@ -63,10 +63,6 @@
 };
 
 
-
-
-
-
 struct GAS_Addresses_Handle
 {
   struct GNUNET_CONTAINER_MultiHashMap *addresses;
@@ -86,9 +82,11 @@
 
   /* Solver functions */
   GAS_solver_init s_init;
-  GAS_solver_done s_done;
+  GAS_solver_address_update s_update;
+  GAS_solver_get_preferred_address s_get;
   GAS_solver_address_delete s_del;
   GAS_solver_address_change_preference s_pref;
+  GAS_solver_done s_done;
 };
 
 struct GAS_Addresses_Handle *handle;
@@ -1084,6 +1082,8 @@
 #if HAVE_LIBGLPK
       ah->ats_mode = MODE_MLP;
       ah->s_init = &GAS_mlp_init;
+      ah->s_update = &GAS_mlp_address_update;
+      ah->s_get = &GAS_mlp_get_preferred_address;
       ah->s_pref = &GAS_mlp_address_change_preference;
       ah->s_del =  &GAS_mlp_address_delete;
       ah->s_done = &GAS_mlp_done;
@@ -1096,6 +1096,8 @@
       /* Init the simplistic solver with default values */
       ah->ats_mode = MODE_SIMPLISTIC;
       ah->s_init = &GAS_simplistic_init;
+      ah->s_update = &GAS_simplistic_address_update;
+      ah->s_get = &GAS_simplistic_get_preferred_address;
       ah->s_pref = &GAS_simplistic_address_change_preference;
       ah->s_del  = &GAS_simplistic_address_delete;
       ah->s_done = &GAS_simplistic_done;
@@ -1107,6 +1109,8 @@
   }
 
   GNUNET_assert (NULL != ah->s_init);
+  GNUNET_assert (NULL != ah->s_update);
+  GNUNET_assert (NULL != ah->s_get);
   GNUNET_assert (NULL != ah->s_pref);
   GNUNET_assert (NULL != ah->s_del);
   GNUNET_assert (NULL != ah->s_done);

Modified: gnunet/src/ats/gnunet-service-ats_addresses.h
===================================================================
--- gnunet/src/ats/gnunet-service-ats_addresses.h       2012-12-04 14:02:47 UTC 
(rev 25228)
+++ gnunet/src/ats/gnunet-service-ats_addresses.h       2012-12-04 14:38:22 UTC 
(rev 25229)
@@ -95,6 +95,11 @@
   int used;
 };
 
+
+typedef void *
+ (*GAS_solver_init) (const struct GNUNET_CONFIGURATION_Handle *cfg,
+                     const struct GNUNET_STATISTICS_Handle *stats);
+
 typedef void
 (*GAS_solver_address_change_preference) (void *solver,
                                          const struct GNUNET_PeerIdentity 
*peer,
@@ -102,14 +107,22 @@
                                          float score);
 
 typedef void
- (*GAS_solver_address_delete) (void *solver, struct 
GNUNET_CONTAINER_MultiHashMap * addresses, struct ATS_Address *address);
+ (*GAS_solver_address_delete) (void *solver,
+                               struct GNUNET_CONTAINER_MultiHashMap *addresses,
+                               struct ATS_Address *address);
 
+typedef void
+(*GAS_solver_address_update) (void *solver,
+                              struct GNUNET_CONTAINER_MultiHashMap *addresses,
+                              struct ATS_Address *address);
 
-typedef void *
- (*GAS_solver_init) (const struct GNUNET_CONFIGURATION_Handle *cfg,
-                     const struct GNUNET_STATISTICS_Handle *stats);
 
+typedef struct ATS_PreferedAddress *
+(*GAS_solver_get_preferred_address) (void *solver,
+                                     struct GNUNET_CONTAINER_MultiHashMap 
*addresses,
+                                     const struct GNUNET_PeerIdentity *peer);
 
+
 typedef void
  (*GAS_solver_done) (void *solver);
 

Modified: gnunet/src/ats/gnunet-service-ats_addresses_mlp.c
===================================================================
--- gnunet/src/ats/gnunet-service-ats_addresses_mlp.c   2012-12-04 14:02:47 UTC 
(rev 25228)
+++ gnunet/src/ats/gnunet-service-ats_addresses_mlp.c   2012-12-04 14:38:22 UTC 
(rev 25229)
@@ -1527,8 +1527,9 @@
  * @param address the address to update
  */
 void
-GAS_mlp_address_update (struct GAS_MLP_Handle *mlp, struct 
GNUNET_CONTAINER_MultiHashMap * addresses, struct ATS_Address *address)
+GAS_mlp_address_update (void *solver, struct GNUNET_CONTAINER_MultiHashMap * 
addresses, struct ATS_Address *address)
 {
+  struct GAS_MLP_Handle *mlp = solver;
   int new;
   struct MLP_information *mlpi;
   struct GAS_MLP_SolutionContext ctx;
@@ -1712,7 +1713,7 @@
  * @return suggested address
  */
 struct ATS_PreferedAddress *
-GAS_mlp_get_preferred_address (struct GAS_MLP_Handle *mlp,
+GAS_mlp_get_preferred_address (void *solver,
                                struct GNUNET_CONTAINER_MultiHashMap * 
addresses,
                                const struct GNUNET_PeerIdentity *peer)
 {

Modified: gnunet/src/ats/gnunet-service-ats_addresses_mlp.h
===================================================================
--- gnunet/src/ats/gnunet-service-ats_addresses_mlp.h   2012-12-04 14:02:47 UTC 
(rev 25228)
+++ gnunet/src/ats/gnunet-service-ats_addresses_mlp.h   2012-12-04 14:38:22 UTC 
(rev 25229)
@@ -351,7 +351,9 @@
  * @param address the address to update
  */
 void
-GAS_mlp_address_update (struct GAS_MLP_Handle *mlp, struct 
GNUNET_CONTAINER_MultiHashMap * addresses, struct ATS_Address *address);
+GAS_mlp_address_update (void *solver,
+                        struct GNUNET_CONTAINER_MultiHashMap * addresses,
+                        struct ATS_Address *address);
 
 
 /**
@@ -392,7 +394,7 @@
  * @return suggested address
  */
 struct ATS_PreferedAddress *
-GAS_mlp_get_preferred_address (struct GAS_MLP_Handle *mlp,
+GAS_mlp_get_preferred_address (void *solver,
                                struct GNUNET_CONTAINER_MultiHashMap * 
addresses,
                                const struct GNUNET_PeerIdentity *peer);
 
@@ -400,7 +402,7 @@
  * Shutdown the MLP problem solving component
  */
 void
-GAS_mlp_done ();
+GAS_mlp_done (void *solver);
 
 #endif
 /* end of gnunet-service-ats_addresses_mlp.h */

Modified: gnunet/src/ats/gnunet-service-ats_addresses_simplistic.c
===================================================================
--- gnunet/src/ats/gnunet-service-ats_addresses_simplistic.c    2012-12-04 
14:02:47 UTC (rev 25228)
+++ gnunet/src/ats/gnunet-service-ats_addresses_simplistic.c    2012-12-04 
14:38:22 UTC (rev 25229)
@@ -28,7 +28,6 @@
 #include "gnunet_util_lib.h"
 #include "gnunet-service-ats_addresses.h"
 #include "gnunet_statistics_service.h"
-#include "glpk.h"
 
 struct GAS_SIMPLISTIC_Handle
 {
@@ -79,6 +78,15 @@
 
 }
 
+
+struct ATS_PreferedAddress *
+GAS_simplistic_get_preferred_address (void *solver,
+                               struct GNUNET_CONTAINER_MultiHashMap * 
addresses,
+                               const struct GNUNET_PeerIdentity *peer)
+{
+
+}
+
 /**
  * Changes the preferences for a peer in the  problem
  *

Modified: gnunet/src/ats/gnunet-service-ats_addresses_simplistic.h
===================================================================
--- gnunet/src/ats/gnunet-service-ats_addresses_simplistic.h    2012-12-04 
14:02:47 UTC (rev 25228)
+++ gnunet/src/ats/gnunet-service-ats_addresses_simplistic.h    2012-12-04 
14:38:22 UTC (rev 25229)
@@ -62,6 +62,11 @@
 void
 GAS_simplistic_address_delete (void *solver, struct 
GNUNET_CONTAINER_MultiHashMap * addresses, struct ATS_Address *address);
 
+struct ATS_PreferedAddress *
+GAS_simplistic_get_preferred_address (void *solver,
+                               struct GNUNET_CONTAINER_MultiHashMap * 
addresses,
+                               const struct GNUNET_PeerIdentity *peer);
+
 /**
  * Changes the preferences for a peer in the  problem
  *




reply via email to

[Prev in Thread] Current Thread [Next in Thread]