public static class WDMUtils.RSA extends Object
Modifier and Type  Field and Description 

Node 
egressNode
The end node of the lightpath

Node 
ingressNode
The initial node of the lightpath

IntMatrix2D 
seqFrequencySlots_se
A 2D integer matrix with as many columns as traversed links (in the same order), and rows as the number of frequency slots occupied (the same in all the links).

List<Link> 
seqLinks
The sequence of traversed fibers

int[] 
seqRegeneratorsOccupancy_e
An integer vector with one coordinate per traversed fiber.

Constructor and Description 

RSA(List<Link> seqLinks,
int occupiedSlotId)
Creates a RSA where the same one single slot is occupied in all the traversed links.

RSA(List<Link> seqLinks,
int initialSlot,
int numSlots)
Creates a RSA with the same set of contigous slots occupied in all the traversed fibers

RSA(List<Link> seqLinks,
int initialSlot,
int numSlots,
int[] seqRegenerators_e)
Creates a RSA with the same set of contigous slots occupied in all the traversed fibers

RSA(List<Link> seqLinks,
IntMatrix2D seqFrequencySlots_se)
Equivalent to
RSA (seqLinks , seqFrequencySlot, null) 
RSA(List<Link> seqLinks,
IntMatrix2D seqFrequencySlots_se,
int[] seqRegenerators_e)
Creates a RSA object from the provided information

RSA(Route r,
boolean initializeWithTheInitialState)
Creates a RSA object reading the information from the existing Route object (and its WDMrelated attributes).

Modifier and Type  Method and Description 

void 
checkFrequencySlotConversionOccupiesARegenerator()
Checks that in every node where the frequency slots of the RSA change, a regenerator is placed (if not, an exception is raised).

boolean 
equals(WDMUtils.RSA rsa)
Returns true if this RSA has the same sequence of links, occupied slots and regenerators as the given RSA

double 
getLengthInKm()
Gets the length of the RSA in km, summing the length of the traversed fibers

List<Node> 
getNodesWithFrequencySlotConversion()
Gets the list of nodes (in the same order as they are traversed) where frequency slot changes in the RSA.

int 
getNumSlots()
Gets the number of slots occupied in this RSA (the same in all the traversed fibers)

List<Node> 
getSignalRegenerationNodes()
Gets the list of nodes (in the same order as they are traversed) where a regenerator has been placed.

boolean 
hasFrequencySlotConversions()
Returns whether or not frequency slot conversions occur in this RSA (and thus converters would be needed)

boolean 
isDown()
Returns true if the path in the RSA is down (traverses a node/link that is down)

boolean 
isFrequencySlotContiguous()
Returns true if in ALL the links, the slots occupied are contigous
(e.g. slots 12,13,14 are contiguous), or false otherwise (p.e. if in a link it occupied slots 12, 16, 17, they are not contigous and returns false).

String 
toString() 
public final Node egressNode
public final Node ingressNode
public final IntMatrix2D seqFrequencySlots_se
public final int[] seqRegeneratorsOccupancy_e
public RSA(List<Link> seqLinks, int occupiedSlotId)
RSA (seqLinks , occupiedSlotId , 1)
seqLinks
 sequence of traversed fibersoccupiedSlotId
 the slot occupiedpublic RSA(List<Link> seqLinks, int initialSlot, int numSlots)
seqLinks
 Sequence of traversed fiberinitialSlot
 id of the initial frequency slot occupiednumSlots
 number of contiguous slots of the RSApublic RSA(List<Link> seqLinks, int initialSlot, int numSlots, int[] seqRegenerators_e)
seqLinks
 Sequence of traversed fiberinitialSlot
 id of the initial frequency slot occupiednumSlots
 number of contiguous slots of the RSAseqRegenerators_e
 vector with the sequence of traversed regenerators information (if null
, no regenerators are placed)public RSA(List<Link> seqLinks, IntMatrix2D seqFrequencySlots_se)
RSA (seqLinks , seqFrequencySlot, null)
seqLinks
 sequence of traversed fibers (a copy is made internally)seqFrequencySlots_se
 2D array with the sequence of frequency slots information.public RSA(List<Link> seqLinks, IntMatrix2D seqFrequencySlots_se, int[] seqRegenerators_e)
seqLinks
 sequence of traversed fibers (a copy is made internally)seqFrequencySlots_se
 2D array with the sequence of frequency slots information.seqRegenerators_e
 vector with the sequence of traversed regenerators information (if null
, no regenerators are placed)public RSA(Route r, boolean initializeWithTheInitialState)
r
 the route objectinitializeWithTheInitialState
 if true
, the RSA object created gets the information from the route primary path: sequence of links, and if not, from the route current sequence of traversed links.public void checkFrequencySlotConversionOccupiesARegenerator()
public boolean equals(WDMUtils.RSA rsa)
rsa
 The RSApublic double getLengthInKm()
public List<Node> getNodesWithFrequencySlotConversion()
public int getNumSlots()
public List<Node> getSignalRegenerationNodes()
public boolean hasFrequencySlotConversions()
true
if frequency slot conversion occurs, false
otherwisepublic boolean isDown()
public boolean isFrequencySlotContiguous()
true
if frequency slots occupied are contiguous in all the linksCopyright © 2017. All rights reserved.