diff options
author | Matthias Wachs <wachs@net.in.tum.de> | 2013-06-11 08:20:33 +0000 |
---|---|---|
committer | Matthias Wachs <wachs@net.in.tum.de> | 2013-06-11 08:20:33 +0000 |
commit | b795dc777c7577cc162ae462f36710ad8dbb05ab (patch) | |
tree | cbd730f4ea7c189170520d4a9ddf9f43650bb2c8 /src/ats/gnunet-service-ats-solver_proportional.c | |
parent | 8c980d8ca66c5606a42790e33d8d1eb86b7c48a3 (diff) | |
download | gnunet-b795dc777c7577cc162ae462f36710ad8dbb05ab.tar.gz gnunet-b795dc777c7577cc162ae462f36710ad8dbb05ab.zip |
docu
Diffstat (limited to 'src/ats/gnunet-service-ats-solver_proportional.c')
-rw-r--r-- | src/ats/gnunet-service-ats-solver_proportional.c | 76 |
1 files changed, 75 insertions, 1 deletions
diff --git a/src/ats/gnunet-service-ats-solver_proportional.c b/src/ats/gnunet-service-ats-solver_proportional.c index 119c97bf3..261e5fb68 100644 --- a/src/ats/gnunet-service-ats-solver_proportional.c +++ b/src/ats/gnunet-service-ats-solver_proportional.c | |||
@@ -310,38 +310,112 @@ struct Network | |||
310 | }; | 310 | }; |
311 | 311 | ||
312 | 312 | ||
313 | /** | ||
314 | * Wrapper for addresses to store them in network's linked list | ||
315 | */ | ||
313 | struct AddressWrapper | 316 | struct AddressWrapper |
314 | { | 317 | { |
318 | /** | ||
319 | * Next in DLL | ||
320 | */ | ||
315 | struct AddressWrapper *next; | 321 | struct AddressWrapper *next; |
322 | |||
323 | /** | ||
324 | * Previous in DLL | ||
325 | */ | ||
316 | struct AddressWrapper *prev; | 326 | struct AddressWrapper *prev; |
317 | 327 | ||
328 | /** | ||
329 | * The address | ||
330 | */ | ||
318 | struct ATS_Address *addr; | 331 | struct ATS_Address *addr; |
319 | }; | 332 | }; |
320 | 333 | ||
321 | 334 | ||
335 | /** | ||
336 | * Preference client | ||
337 | */ | ||
322 | struct PreferenceClient | 338 | struct PreferenceClient |
323 | { | 339 | { |
340 | /** | ||
341 | * Next in DLL | ||
342 | */ | ||
324 | struct PreferenceClient *prev; | 343 | struct PreferenceClient *prev; |
344 | |||
345 | /** | ||
346 | * Next in DLL | ||
347 | */ | ||
348 | |||
325 | struct PreferenceClient *next; | 349 | struct PreferenceClient *next; |
350 | |||
351 | /** | ||
352 | * Client handle | ||
353 | */ | ||
326 | void *client; | 354 | void *client; |
327 | 355 | ||
356 | /** | ||
357 | * Total preference for this peer | ||
358 | */ | ||
328 | double f_total[GNUNET_ATS_PreferenceCount]; | 359 | double f_total[GNUNET_ATS_PreferenceCount]; |
329 | 360 | ||
361 | /** | ||
362 | * List of peer preferences for this client | ||
363 | */ | ||
364 | |||
365 | /** | ||
366 | * Head of peer list | ||
367 | */ | ||
330 | struct PreferencePeer *p_head; | 368 | struct PreferencePeer *p_head; |
369 | |||
370 | /** | ||
371 | * Tail of peer list | ||
372 | */ | ||
331 | struct PreferencePeer *p_tail; | 373 | struct PreferencePeer *p_tail; |
332 | }; | 374 | }; |
333 | 375 | ||
334 | 376 | /** | |
377 | * Preference peer | ||
378 | */ | ||
335 | struct PreferencePeer | 379 | struct PreferencePeer |
336 | { | 380 | { |
381 | /** | ||
382 | * Next in DLL | ||
383 | */ | ||
337 | struct PreferencePeer *next; | 384 | struct PreferencePeer *next; |
385 | |||
386 | /** | ||
387 | * Previous in DLL | ||
388 | */ | ||
338 | struct PreferencePeer *prev; | 389 | struct PreferencePeer *prev; |
390 | |||
391 | /** | ||
392 | * Client | ||
393 | */ | ||
339 | struct PreferenceClient *client; | 394 | struct PreferenceClient *client; |
395 | |||
396 | /** | ||
397 | * Solver handle | ||
398 | */ | ||
340 | struct GAS_PROPORTIONAL_Handle *s; | 399 | struct GAS_PROPORTIONAL_Handle *s; |
400 | |||
401 | /** | ||
402 | * Peer id | ||
403 | */ | ||
341 | struct GNUNET_PeerIdentity id; | 404 | struct GNUNET_PeerIdentity id; |
342 | 405 | ||
406 | /** | ||
407 | * Preference Values | ||
408 | */ | ||
343 | double f[GNUNET_ATS_PreferenceCount]; | 409 | double f[GNUNET_ATS_PreferenceCount]; |
410 | |||
411 | /** | ||
412 | * Relative Preference Values | ||
413 | */ | ||
344 | double f_rel[GNUNET_ATS_PreferenceCount]; | 414 | double f_rel[GNUNET_ATS_PreferenceCount]; |
415 | |||
416 | /** | ||
417 | * Relative Total Preference Value | ||
418 | */ | ||
345 | double f_rel_total; | 419 | double f_rel_total; |
346 | 420 | ||
347 | GNUNET_SCHEDULER_TaskIdentifier aging_task; | 421 | GNUNET_SCHEDULER_TaskIdentifier aging_task; |