GNUnet  0.10.x
gnunet-service-ats_performance.h
Go to the documentation of this file.
1 /*
2  This file is part of GNUnet.
3  Copyright (C) 2011-2015 GNUnet e.V.
4 
5  GNUnet is free software: you can redistribute it and/or modify it
6  under the terms of the GNU Affero General Public License as published
7  by the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  GNUnet is distributed in the hope that it will be useful, but
11  WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  Affero General Public License for more details.
14 
15  You should have received a copy of the GNU Affero General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 
18  SPDX-License-Identifier: AGPL3.0-or-later
19  */
20 
27 #ifndef GNUNET_SERVICE_ATS_PERFORMANCE_H
28 #define GNUNET_SERVICE_ATS_PERFORMANCE_H
29 
30 #include "gnunet_util_lib.h"
31 #include "gnunet_ats_service.h"
32 #include "ats.h"
33 
34 
52 void
54  const char *plugin_name,
55  const void *plugin_addr,
56  size_t plugin_addr_len,
57  int active,
58  const struct GNUNET_ATS_Properties *prop,
59  enum GNUNET_HELLO_AddressInfo local_address_info,
60  struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out,
61  struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in);
62 
63 
70 void
72  enum StartFlag flag);
73 
74 
81 void
83 
84 
88 void
90 
91 
92 #endif
93 /* end of gnunet-service-ats_performance.h */
StartFlag
Flag used to indicate which type of client is connecting to the ATS service.
Definition: ats.h:37
ATS performance characteristics for an address.
void GAS_performance_done(void)
Shutdown performance subsystem.
Handle to a client that is connected to a service.
Definition: service.c:246
void GAS_performance_init(void)
Initialize performance subsystem.
static char * plugin_name
Solver plugin name as string.
struct GNUNET_TESTBED_Peer * peer
The peer associated with this model.
32-bit bandwidth used for network exchange by GNUnet, in bytes per second.
The identity of the host (wraps the signing key of the peer).
Automatic transport selection and outbound bandwidth determination.
void GAS_performance_add_client(struct GNUNET_SERVICE_Client *client, enum StartFlag flag)
Register a new performance client.
void GAS_performance_notify_all_clients(const struct GNUNET_PeerIdentity *peer, const char *plugin_name, const void *plugin_addr, size_t plugin_addr_len, int active, const struct GNUNET_ATS_Properties *prop, enum GNUNET_HELLO_AddressInfo local_address_info, struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out, struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in)
Transmit the given performance information to all performance clients.
GNUNET_HELLO_AddressInfo
Additional local information about an address.
automatic transport selection messages