API for the ATS solvers. More...
Go to the source code of this file.
Data Structures | |
struct | GNUNET_ATS_SolverFunctions |
Solver functions. More... | |
struct | GNUNET_ATS_PluginEnvironment |
The ATS plugin will pass a pointer to a struct of this type as to the initialization function of the ATS plugins. More... | |
Typedefs | |
typedef void(* | GAS_solver_address_change_preference) (void *solver, const struct GNUNET_PeerIdentity *peer, enum GNUNET_ATS_PreferenceKind kind, double pref_rel) |
Change the preference for a peer. More... | |
typedef void(* | GAS_solver_address_feedback_preference) (void *solver, struct GNUNET_SERVICE_Client *application, const struct GNUNET_PeerIdentity *peer, const struct GNUNET_TIME_Relative scope, enum GNUNET_ATS_PreferenceKind kind, double score) |
Give feedback about the current assignment. More... | |
typedef void(* | GAS_solver_bulk_start) (void *solver) |
Notify the solver about a bulk operation changing possibly a lot of values Solver will not resolve until all bulk operations are marked as done. More... | |
typedef void(* | GAS_solver_bulk_stop) (void *solver) |
Mark a bulk operation as done Solver will resolve if values have changed. More... | |
typedef void(* | GAS_solver_address_add) (void *solver, struct ATS_Address *address, uint32_t network) |
Add a single address within a network to the solver. More... | |
typedef void(* | GAS_solver_address_delete) (void *solver, struct ATS_Address *address) |
Delete an address or just the session from the solver. More... | |
typedef void(* | GAS_solver_address_property_changed) (void *solver, struct ATS_Address *address) |
Transport properties for this address have changed. More... | |
typedef void(* | GAS_solver_get_preferred_address) (void *solver, const struct GNUNET_PeerIdentity *peer) |
Get the preferred address for a peer from solver. More... | |
typedef void(* | GAS_solver_stop_get_preferred_address) (void *solver, const struct GNUNET_PeerIdentity *peer) |
Stop getting the preferred address for a peer from solver. More... | |
typedef void(* | GAS_solver_information_callback) (void *cls, enum GAS_Solver_Operation op, enum GAS_Solver_Status stat, enum GAS_Solver_Additional_Information) |
Callback to call with additional information Used for measurement. More... | |
typedef void(* | GAS_bandwidth_changed_cb) (void *cls, struct ATS_Address *address) |
Callback to call from solver when bandwidth for address has changed. More... | |
typedef const double *(* | GAS_get_preferences) (void *cls, const struct GNUNET_PeerIdentity *id) |
Callback to call from solver to obtain application preference values for a peer. More... | |
typedef unsigned int(* | GAS_get_connectivity) (void *cls, const struct GNUNET_PeerIdentity *id) |
Callback to call from solver to obtain application connectivity preferences for a peer. More... | |
Enumerations | |
enum | GAS_Solver_Operation { GAS_OP_SOLVE_START , GAS_OP_SOLVE_STOP , GAS_OP_SOLVE_SETUP_START , GAS_OP_SOLVE_SETUP_STOP , GAS_OP_SOLVE_MLP_LP_START , GAS_OP_SOLVE_MLP_LP_STOP , GAS_OP_SOLVE_MLP_MLP_START , GAS_OP_SOLVE_MLP_MLP_STOP , GAS_OP_SOLVE_UPDATE_NOTIFICATION_START , GAS_OP_SOLVE_UPDATE_NOTIFICATION_STOP } |
Operation codes for solver information callback. More... | |
enum | GAS_Solver_Status { GAS_STAT_SUCCESS , GAS_STAT_FAIL } |
Status of a GAS_Solver_Operation operation. More... | |
enum | GAS_Solver_Additional_Information { GAS_INFO_NONE , GAS_INFO_FULL , GAS_INFO_UPDATED , GAS_INFO_PROP_SINGLE , GAS_INFO_PROP_ALL } |
Status of the operation. More... | |
API for the ATS solvers.
Definition in file gnunet_ats_plugin.h.