GNUnet  0.10.x
Data Fields
GNUNET_ATS_PluginEnvironment Struct Reference

The ATS plugin will pass a pointer to a struct of this type as to the initialization function of the ATS plugins. More...

#include <gnunet_ats_plugin.h>

Collaboration diagram for GNUNET_ATS_PluginEnvironment:
[legend]

Data Fields

const struct GNUNET_CONFIGURATION_Handlecfg
 Configuration handle to be used by the solver. More...
 
struct GNUNET_STATISTICS_Handlestats
 Statistics handle to be used by the solver. More...
 
void * cls
 Closure to pass to all callbacks in this struct. More...
 
struct GNUNET_CONTAINER_MultiPeerMapaddresses
 Hashmap containing all addresses available. More...
 
GAS_bandwidth_changed_cb bandwidth_changed_cb
 ATS addresses callback to be notified about bandwidth assignment changes. More...
 
GAS_get_preferences get_preferences
 ATS addresses function to obtain preference values. More...
 
GAS_get_connectivity get_connectivity
 ATS addresses function to obtain preference values. More...
 
GAS_solver_information_callback info_cb
 Callback for solver to call with status information, can be NULL. More...
 
unsigned int network_count
 Number of networks available, size of the out_quota and in_quota arrays. More...
 
unsigned long long out_quota [6]
 Array of configured outbound quotas Order according to networks in network array. More...
 
unsigned long long in_quota [6]
 Array of configured inbound quotas Order according to networks in network array. More...
 
void(* suggest_cb )(void *cls, const struct GNUNET_PeerIdentity *pid, const char *address)
 Suggest to the transport that it should try establishing a connection using the given address. More...
 
void(* allocate_cb )(void *cls, struct GNUNET_ATS_Session *session, const struct GNUNET_PeerIdentity *peer, struct GNUNET_BANDWIDTH_Value32NBO bw_in, struct GNUNET_BANDWIDTH_Value32NBO bw_out)
 Tell the transport that it should allocate the given bandwidth to the specified session. More...
 

Detailed Description

The ATS plugin will pass a pointer to a struct of this type as to the initialization function of the ATS plugins.

Definition at line 419 of file gnunet_ats_plugin.h.

Field Documentation

◆ cfg

const struct GNUNET_CONFIGURATION_Handle * GNUNET_ATS_PluginEnvironment::cfg

◆ stats

struct GNUNET_STATISTICS_Handle * GNUNET_ATS_PluginEnvironment::stats

◆ cls

void * GNUNET_ATS_PluginEnvironment::cls

◆ addresses

struct GNUNET_CONTAINER_MultiPeerMap* GNUNET_ATS_PluginEnvironment::addresses

◆ bandwidth_changed_cb

GAS_bandwidth_changed_cb GNUNET_ATS_PluginEnvironment::bandwidth_changed_cb

◆ get_preferences

GAS_get_preferences GNUNET_ATS_PluginEnvironment::get_preferences

ATS addresses function to obtain preference values.

Definition at line 449 of file gnunet_ats_plugin.h.

Referenced by agent_get_utility(), distribute_bandwidth(), GAS_plugin_init(), get_peer_pref_value(), GNUNET_ATS_solvers_solver_start(), and libgnunet_plugin_ats_ril_init().

◆ get_connectivity

GAS_get_connectivity GNUNET_ATS_PluginEnvironment::get_connectivity

ATS addresses function to obtain preference values.

Definition at line 454 of file gnunet_ats_plugin.h.

Referenced by all_require_connectivity(), find_best_address_it(), GAS_plugin_init(), and update_active_address().

◆ info_cb

GAS_solver_information_callback GNUNET_ATS_PluginEnvironment::info_cb

Callback for solver to call with status information, can be NULL.

Definition at line 460 of file gnunet_ats_plugin.h.

Referenced by distribute_bandwidth_in_network(), GAS_plugin_init(), GNUNET_ATS_solvers_solver_start(), notify(), and ril_inform().

◆ network_count

unsigned int GNUNET_ATS_PluginEnvironment::network_count

◆ out_quota

unsigned long long GNUNET_ATS_PluginEnvironment::out_quota[6]

Array of configured outbound quotas Order according to networks in network array.

Definition at line 472 of file gnunet_ats_plugin.h.

Referenced by GAS_plugin_init(), GNUNET_ATS_solvers_solver_start(), libgnunet_plugin_ats_mlp_init(), libgnunet_plugin_ats_proportional_init(), and libgnunet_plugin_ats_ril_init().

◆ in_quota

unsigned long long GNUNET_ATS_PluginEnvironment::in_quota[6]

Array of configured inbound quotas Order according to networks in network array.

Definition at line 478 of file gnunet_ats_plugin.h.

Referenced by GAS_plugin_init(), GNUNET_ATS_solvers_solver_start(), libgnunet_plugin_ats_mlp_init(), libgnunet_plugin_ats_proportional_init(), and libgnunet_plugin_ats_ril_init().

◆ suggest_cb

void(* GNUNET_ATS_PluginEnvironment::suggest_cb) (void *cls, const struct GNUNET_PeerIdentity *pid, const char *address)

Suggest to the transport that it should try establishing a connection using the given address.

Parameters
clsclosure, NULL
pidpeer this is about
addressaddress the transport should try

Definition at line 224 of file gnunet_ats_plugin_new.h.

Referenced by run(), and suggest_hello().

◆ allocate_cb

void(* GNUNET_ATS_PluginEnvironment::allocate_cb) (void *cls, struct GNUNET_ATS_Session *session, const struct GNUNET_PeerIdentity *peer, struct GNUNET_BANDWIDTH_Value32NBO bw_in, struct GNUNET_BANDWIDTH_Value32NBO bw_out)

Tell the transport that it should allocate the given bandwidth to the specified session.

Parameters
clsclosure, NULL
sessionsession this is about
peerpeer this is about
bw_insuggested bandwidth for receiving
bw_outsuggested bandwidth for transmission

Definition at line 239 of file gnunet_ats_plugin_new.h.

Referenced by consider_notify_transport(), and run().


The documentation for this struct was generated from the following files: