AntHocNet 2.0.0
Paper-faithful ant-colony ad hoc routing: the shared core and its adapters
Loading...
Searching...
No Matches
anthocnet::core::AntMessage Struct Reference

Complete, copyable description of an ant packet. More...

#include <anthocnet/core/ant_message.h>

Public Member Functions

bool isForward () const
 
bool isBackward () const
 

Public Attributes

AntType type = AntType::Reactive
 
AntDirection direction = AntDirection::Up
 
NodeAddress src = kInvalidAddress
 Originating node.
 
NodeAddress dst = kInvalidAddress
 Final destination.
 
std::uint32_t seqNum = 0
 Widened from the original u_int8_t so it does not wrap after 256 ants (which silently broke (src,seq) dedup on long runs).
 
double timeStart = 0.0
 Generation time, for trip-time accounting.
 
double lifeAnt = 0.0
 Repair-ant lifetime budget (seconds).
 
int broadcastBudget = -1
 Remaining number of times this ant may be (re)broadcast.
 
VisitedPath visited
 Forward stack: nodes seen on the way out.
 
VisitedPath history
 Back-ant stack: path being reinforced.
 
std::vector< HelloDest > helloDests
 Hello-ant adverts.
 
NodeAddress prevHop = kInvalidAddress
 
int hops = 0
 
double pathTime = 0.0
 accumulated time estimate (was prevSINR).
 
double pheromone = 0.0
 

Detailed Description

Complete, copyable description of an ant packet.

Definition at line 48 of file ant_message.h.

Member Function Documentation

◆ isForward()

bool anthocnet::core::AntMessage::isForward ( ) const
inline

Definition at line 80 of file ant_message.h.

References direction, and anthocnet::core::Up.

◆ isBackward()

bool anthocnet::core::AntMessage::isBackward ( ) const
inline

Definition at line 81 of file ant_message.h.

References direction, and anthocnet::core::Down.

Member Data Documentation

◆ type

AntType anthocnet::core::AntMessage::type = AntType::Reactive

Definition at line 49 of file ant_message.h.

◆ direction

AntDirection anthocnet::core::AntMessage::direction = AntDirection::Up

Definition at line 50 of file ant_message.h.

Referenced by isBackward(), and isForward().

◆ src

NodeAddress anthocnet::core::AntMessage::src = kInvalidAddress

Originating node.

Definition at line 52 of file ant_message.h.

◆ dst

NodeAddress anthocnet::core::AntMessage::dst = kInvalidAddress

Final destination.

Definition at line 53 of file ant_message.h.

◆ seqNum

std::uint32_t anthocnet::core::AntMessage::seqNum = 0

Widened from the original u_int8_t so it does not wrap after 256 ants (which silently broke (src,seq) dedup on long runs).

Definition at line 57 of file ant_message.h.

◆ timeStart

double anthocnet::core::AntMessage::timeStart = 0.0

Generation time, for trip-time accounting.

Definition at line 59 of file ant_message.h.

◆ lifeAnt

double anthocnet::core::AntMessage::lifeAnt = 0.0

Repair-ant lifetime budget (seconds).

Definition at line 60 of file ant_message.h.

◆ broadcastBudget

int anthocnet::core::AntMessage::broadcastBudget = -1

Remaining number of times this ant may be (re)broadcast.

-1 == untracked (unbounded; relies on (src,seq) dedup). Repair/LinkFail ants set a finite budget so exploration/propagation can't storm the network ([1] ยง3.5).

Definition at line 65 of file ant_message.h.

◆ visited

VisitedPath anthocnet::core::AntMessage::visited

Forward stack: nodes seen on the way out.

Definition at line 67 of file ant_message.h.

◆ history

VisitedPath anthocnet::core::AntMessage::history

Back-ant stack: path being reinforced.

Definition at line 68 of file ant_message.h.

◆ helloDests

std::vector<HelloDest> anthocnet::core::AntMessage::helloDests

Hello-ant adverts.

Definition at line 70 of file ant_message.h.

◆ prevHop

NodeAddress anthocnet::core::AntMessage::prevHop = kInvalidAddress

Definition at line 75 of file ant_message.h.

◆ hops

int anthocnet::core::AntMessage::hops = 0

Definition at line 76 of file ant_message.h.

◆ pathTime

double anthocnet::core::AntMessage::pathTime = 0.0

accumulated time estimate (was prevSINR).

Definition at line 77 of file ant_message.h.

◆ pheromone

double anthocnet::core::AntMessage::pheromone = 0.0

Definition at line 78 of file ant_message.h.


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