AlchemistNetworkManager

class AlchemistNetworkManager(val event: Reaction<Any>, val device: ProtelisDevice<*> = event.node.asProperty(), val program: RunProtelisProgram<*>, val retentionTime: Double = Double.NaN, val distanceLossDistribution: ERROR CLASS: Symbol not found for RealDistribution?? = null) : <ERROR CLASS> ERROR CLASS: Symbol not found for NetworkManager, Serializable

Emulates a NetworkManager. This particular network manager does not send messages instantly. Instead, it records the last message to send, and only when simulateMessageArrival is called the transfer is actually performed.

Constructors

Link copied to clipboard
constructor(event: Reaction<Any>, device: ProtelisDevice<*> = event.node.asProperty(), program: RunProtelisProgram<*>, retentionTime: Double = Double.NaN, distanceLossDistribution: ERROR CLASS: Symbol not found for RealDistribution?? = null)

Properties

Link copied to clipboard

The ProtelisDevice required to run Protelis.

Link copied to clipboard
val distanceLossDistribution: ERROR CLASS: Symbol not found for RealDistribution??

the distribution connecting the distance to the packet loss.

Link copied to clipboard

This reaction stores the time at which the neighbor state is read.

Link copied to clipboard

The action this network manager is associated with.

Link copied to clipboard

the message retention time, or NaN if all the messages get discarded as soon as a computation cycle is concluded.

Functions

Link copied to clipboard
open override fun getNeighborState(): ERROR CLASS: Symbol not found for ImmutableMap<ERROR CLASS: Symbol not found for DeviceUID, kotlin/collections/Map<ERROR CLASS: Symbol not found for CodePath, kotlin/Any>>
Link copied to clipboard
open override fun shareState(toSend: Map<ERROR CLASS: Symbol not found for CodePath, Any>)
Link copied to clipboard
fun simulateMessageArrival(currentTime: Double)

Simulates the arrival of the message to other nodes.