SimGrid  3.16
Versatile Simulation of Distributed Systems
simgrid::s4u::Link Class Reference

Detailed Description

A Link represents the network facilities between hosts.

#include <Link.hpp>

Public Member Functions

const char * name ()
 Get da name. More...
 
double bandwidth ()
 Get the bandwidth in bytes per second of current Link. More...
 
double latency ()
 Get the latency in seconds of current Link. More...
 

Static Public Member Functions

static LinkbyName (const char *name)
 Retrieve a link from its name. More...
 
static simgrid::xbt::signal< void(s4u::Link &)> onCreation
 Callback signal fired when a new Link is created. More...
 
static simgrid::xbt::signal< void(s4u::Link &)> onDestruction
 Callback signal fired when a Link is destroyed. More...
 
static simgrid::xbt::signal< void(s4u::Link &)> onStateChange
 Callback signal fired when the state of a Link changes (when it is turned on or off) More...
 
static simgrid::xbt::signal< void(surf::NetworkAction *, s4u::Host *src, s4u::Host *dst)> onCommunicate
 Callback signal fired when a communication starts. More...
 
static simgrid::xbt::signal< void(surf::NetworkAction *)> onCommunicationStateChange
 Callback signal fired when a communication changes it state (ready/done/cancel) More...
 
int sharingPolicy ()
 The sharing policy is alink e_surf_link_sharing_policy_t::EType} (0: FATPIPE, 1: SHARED, 2: FULLDUPLEX) More...
 
bool isUsed ()
 Check if the Link is used. More...
 
void turnOn ()
 
void turnOff ()
 
voidgetData ()
 
void setData (void *d)
 
void setStateTrace (tmgr_trace_t trace)
 
void setBandwidthTrace (tmgr_trace_t trace)
 
void setLatencyTrace (tmgr_trace_t trace)
 

Member Function Documentation

◆ byName()

Link * simgrid::s4u::Link::byName ( const char *  name)
static

Retrieve a link from its name.

◆ name()

const char * simgrid::s4u::Link::name ( )

Get da name.

◆ bandwidth()

double simgrid::s4u::Link::bandwidth ( )

Get the bandwidth in bytes per second of current Link.

◆ latency()

double simgrid::s4u::Link::latency ( )

Get the latency in seconds of current Link.

◆ sharingPolicy()

int simgrid::s4u::Link::sharingPolicy ( )

The sharing policy is alink e_surf_link_sharing_policy_t::EType} (0: FATPIPE, 1: SHARED, 2: FULLDUPLEX)

◆ isUsed()

bool simgrid::s4u::Link::isUsed ( )

Check if the Link is used.

◆ turnOn()

void simgrid::s4u::Link::turnOn ( )

◆ turnOff()

void simgrid::s4u::Link::turnOff ( )

◆ getData()

void * simgrid::s4u::Link::getData ( )

◆ setData()

void simgrid::s4u::Link::setData ( void d)

◆ setStateTrace()

void simgrid::s4u::Link::setStateTrace ( tmgr_trace_t  trace)

◆ setBandwidthTrace()

void simgrid::s4u::Link::setBandwidthTrace ( tmgr_trace_t  trace)

◆ setLatencyTrace()

void simgrid::s4u::Link::setLatencyTrace ( tmgr_trace_t  trace)

Member Data Documentation

◆ onCreation

simgrid::xbt::signal< void(s4u::Link &)> simgrid::s4u::Link::onCreation
static

Callback signal fired when a new Link is created.

◆ onDestruction

simgrid::xbt::signal< void(s4u::Link &)> simgrid::s4u::Link::onDestruction
static

Callback signal fired when a Link is destroyed.

◆ onStateChange

simgrid::xbt::signal< void(s4u::Link &)> simgrid::s4u::Link::onStateChange
static

Callback signal fired when the state of a Link changes (when it is turned on or off)

◆ onCommunicate

simgrid::xbt::signal< void(surf::NetworkAction *, s4u::Host *src, s4u::Host *dst)> simgrid::s4u::Link::onCommunicate
static

Callback signal fired when a communication starts.

◆ onCommunicationStateChange

simgrid::xbt::signal< void(surf::NetworkAction *)> simgrid::s4u::Link::onCommunicationStateChange
static

Callback signal fired when a communication changes it state (ready/done/cancel)


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