public static class WDMUtils.TransponderTypesInfo extends Object
transponderTypesInfo
.
In such parameters, the user can establish the set of available transponder types for an algorithm, as
a String
. Transpoder types separated by \";\" . Each type is characterized by the space-separated values:
(i) Line rate in Gbps, (ii) cost of the transponder, (iii) number of slots occupied in each traversed fiber,
(iv) optical reach in km (a non-positive number means no reach limit), (v) cost of
the optical signal regenerator (regenerators do NOT make wavelength conversion ; if negative, regeneration is not possible).
Constructor and Description |
---|
TransponderTypesInfo(String initializationString)
Constructor to initialize the available transponder types object from the user's input parameter string.
|
Modifier and Type | Method and Description |
---|---|
double |
getCost(int tpType)
Returns the cost of the transponder of the given type
|
double |
getLineRateGbps(int tpType)
Returns the line rate in Gbps of a transponder type
|
double |
getMaxOpticalReachKm()
The maximum optical reach among all the transponders.
|
int |
getNumSlots(int tpType)
Returns the number of frequency slots occupied in all the traversed fibers by the lightpaths initiated in this transponder
|
int |
getNumTypes()
Returns the number of transponder types defined
|
double |
getOpticalReachKm(int tpType)
Returns the maximum optical reach without signal regeneration of this transponder type.
|
double |
getRegeneratorCost(int tpType)
Returns the cost of a signal regenerator for the lightpaths of the transponders of the given type.
|
double[] |
getVectorCosts()
Returns a vector with one element per transponder type, and its cost
|
double[] |
getVectorLineRates()
Returns a vector with one element per transponder type, with its line rate and Gbps
|
int[] |
getVectorNumSlots()
Returns a vector with one elements per transponder type, with its number of occupied frequency slots
|
double[] |
getVectorOpticalReachesKm()
Returns a vector with one element per transponder type, with its unregenrated optical reach
|
double[] |
getVectorRegeneratorCosts()
Returns a vector with one element per transponder type, with its cost of a signal regenerator as returned by the
getRegeneratorCost method. |
boolean |
isFixedGrid()
Returns true if all the transponders defined have a number of occupied slots equal to one, and false otherwise.
|
boolean |
isFixedLineRate()
Returns true if all the transponder types defined have the same line rate.
|
boolean |
isOpticalRegenerationPossible(int tpType)
Returns true if signal regeneration is allowed for the lightpaths with the given transponder type.
|
boolean |
isValidLineRateForAtLeastOneType(double lineRateGbps)
Returns true if the given line rate is the rate of at least one transponder type
|
public TransponderTypesInfo(String initializationString)
initializationString
- The initialization string as comes from the userpublic double getCost(int tpType)
tpType
- the typepublic double getLineRateGbps(int tpType)
tpType
- the typepublic double getMaxOpticalReachKm()
public int getNumSlots(int tpType)
tpType
- the typepublic int getNumTypes()
public double getOpticalReachKm(int tpType)
tpType
- the typepublic double getRegeneratorCost(int tpType)
tpType
- the typepublic double[] getVectorCosts()
public double[] getVectorLineRates()
public int[] getVectorNumSlots()
public double[] getVectorOpticalReachesKm()
public double[] getVectorRegeneratorCosts()
getRegeneratorCost
method.public boolean isFixedGrid()
public boolean isFixedLineRate()
public boolean isOpticalRegenerationPossible(int tpType)
tpType
- the typepublic boolean isValidLineRateForAtLeastOneType(double lineRateGbps)
lineRateGbps
- the rateCopyright © 2018. All rights reserved.