Public Member Functions | Private Attributes

# LinkGraphJob::Edge Class Reference

A job edge. More...

`#include <linkgraphjob.h>`

Inheritance diagram for LinkGraphJob::Edge:

## Public Member Functions
| Edge (const LinkGraph::BaseEdge &edge, EdgeAnnotation &anno)
| Constructor.
uint | Demand () const
| Get the transport demand between end the points of the edge.
uint | UnsatisfiedDemand () const
| Get the transport demand that hasn't been satisfied by flows, yet.
uint | Flow () const
| Get the total flow on the edge.
void | AddFlow (uint flow)
| Add some flow.
void | RemoveFlow (uint flow)
| Remove some flow.
void | AddDemand (uint demand)
| Add some (not yet satisfied) demand.
void | SatisfyDemand (uint demand)
| Satisfy some demand.
## Private Attributes
EdgeAnnotation & | anno
| Annotation being wrapped.

## Detailed Description

A job edge.

Wraps a link graph edge and an edge annotation. The annotation can be modified, the edge is constant.

Definition at line 77 of file linkgraphjob.h.

## Constructor & Destructor Documentation

LinkGraphJob::Edge::Edge | ( | const LinkGraph::BaseEdge & | edge,
|  | EdgeAnnotation & | anno |
| ) |  |  | `[inline]`

Constructor.

Parameters:

  | edge | Link graph edge to be wrapped.
  | anno | Annotation to be wrapped.

Definition at line 86 of file linkgraphjob.h.

## Member Function Documentation

void LinkGraphJob::Edge::AddDemand | ( | uint | demand | ) | `[inline]`

Add some (not yet satisfied) demand.

Parameters:

  | demand | Demand to be added.

Definition at line 127 of file linkgraphjob.h.

References anno, LinkGraphJob::EdgeAnnotation::demand, and LinkGraphJob::EdgeAnnotation::unsatisfied_demand.

void LinkGraphJob::Edge::AddFlow | ( | uint | flow | ) | `[inline]`

Add some flow.

Parameters:

  | flow | Flow to be added.

Definition at line 111 of file linkgraphjob.h.

References anno, and LinkGraphJob::EdgeAnnotation::flow.

Referenced by Path::AddFlow().

uint LinkGraphJob::Edge::Demand | ( |  | ) | const`[inline]`

Get the transport demand between end the points of the edge.

Returns:
  Demand.

Definition at line 93 of file linkgraphjob.h.

References anno, and LinkGraphJob::EdgeAnnotation::demand.

uint LinkGraphJob::Edge::Flow | ( |  | ) | const`[inline]`

Get the total flow on the edge.

Returns:
  Flow.

Definition at line 105 of file linkgraphjob.h.

References anno, and LinkGraphJob::EdgeAnnotation::flow.

Referenced by Path::AddFlow().

void LinkGraphJob::Edge::RemoveFlow | ( | uint | flow | ) | `[inline]`

Remove some flow.

Parameters:

  | flow | Flow to be removed.

Definition at line 117 of file linkgraphjob.h.

References anno, and LinkGraphJob::EdgeAnnotation::flow.

void LinkGraphJob::Edge::SatisfyDemand | ( | uint | demand | ) | `[inline]`

Satisfy some demand.

Parameters:

  | demand | Demand to be satisfied.

Definition at line 137 of file linkgraphjob.h.

References anno, and LinkGraphJob::EdgeAnnotation::unsatisfied_demand.

uint LinkGraphJob::Edge::UnsatisfiedDemand | ( |  | ) | const`[inline]`

Get the transport demand that hasn't been satisfied by flows, yet.

Returns:
  Unsatisfied demand.

Definition at line 99 of file linkgraphjob.h.

References anno, and LinkGraphJob::EdgeAnnotation::unsatisfied_demand.

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

- src/linkgraph/linkgraphjob.h