Class ArrivalBoundCache
- java.lang.Object
-
- org.networkcalculus.dnc.feedforward.ArrivalBoundCache
-
public class ArrivalBoundCache extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) class
ArrivalBoundCache.CacheEntry
(package private) class
ArrivalBoundCache.CacheEntryServer
(package private) class
ArrivalBoundCache.CacheEntryTurn
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<Server,java.util.Set<ArrivalBoundCache.CacheEntryServer>>
map__server__entries
private java.util.Map<Turn,java.util.Set<ArrivalBoundCache.CacheEntryTurn>>
map__turn__entries
-
Constructor Summary
Constructors Modifier Constructor Description protected
ArrivalBoundCache()
-
Method Summary
Modifier and Type Method Description protected void
addArrivalBounds(AnalysisConfig configuration, Server server, java.util.Set<Flow> bounded_flows, Flow flow_of_interest, java.util.Set<ArrivalCurve> arrival_bounds)
The cache content is generally overwritten! If there is an entry for this arrival bound and the arrival bounds are not convolved into a single one, then the cache just replaces any existing cache entry.protected void
addArrivalBounds(AnalysisConfig configuration, Turn turn, java.util.Set<Flow> bounded_flows, Flow flow_of_interest, java.util.Set<ArrivalCurve> arrival_bounds)
The cache content is generally overwritten! If there is an entry for this arrival bound and the arrival bounds are not convolved into a single one, then the cache just replaces any existing cache entry.protected void
clearCache()
protected java.util.Set<ArrivalCurve>
getArrivalBounds(AnalysisConfig configuration, Server server, java.util.Set<Flow> bounded_flows, Flow flow_of_interest)
protected java.util.Set<ArrivalCurve>
getArrivalBounds(AnalysisConfig configuration, Turn turn, java.util.Set<Flow> bounded_flows, Flow flow_of_interest)
protected ArrivalBoundCache.CacheEntryServer
getCacheEntry(AnalysisConfig configuration, Server server, java.util.Set<Flow> bounded_flows, Flow flow_of_interest)
Returns the cache entry for the given parameters if there is one.protected ArrivalBoundCache.CacheEntryTurn
getCacheEntry(AnalysisConfig configuration, Turn turn, java.util.Set<Flow> bounded_flows, Flow flow_of_interest)
-
-
-
Field Detail
-
map__server__entries
private java.util.Map<Server,java.util.Set<ArrivalBoundCache.CacheEntryServer>> map__server__entries
-
map__turn__entries
private java.util.Map<Turn,java.util.Set<ArrivalBoundCache.CacheEntryTurn>> map__turn__entries
-
-
Method Detail
-
clearCache
protected void clearCache()
-
addArrivalBounds
protected void addArrivalBounds(AnalysisConfig configuration, Server server, java.util.Set<Flow> bounded_flows, Flow flow_of_interest, java.util.Set<ArrivalCurve> arrival_bounds) throws java.lang.Exception
The cache content is generally overwritten! If there is an entry for this arrival bound and the arrival bounds are not convolved into a single one, then the cache just replaces any existing cache entry.- Parameters:
configuration
-server
-bounded_flows
-flow_of_interest
-arrival_bounds
-- Throws:
java.lang.Exception
-
getArrivalBounds
protected java.util.Set<ArrivalCurve> getArrivalBounds(AnalysisConfig configuration, Server server, java.util.Set<Flow> bounded_flows, Flow flow_of_interest)
-
getCacheEntry
protected ArrivalBoundCache.CacheEntryServer getCacheEntry(AnalysisConfig configuration, Server server, java.util.Set<Flow> bounded_flows, Flow flow_of_interest)
Returns the cache entry for the given parameters if there is one. If not, it returns null. In addition, if there's no entry, the internal mappings will be created as a subsequent adding of an according entry is expected.- Parameters:
server
-bounded_flows
-flow_of_interest
-- Returns:
-
addArrivalBounds
protected void addArrivalBounds(AnalysisConfig configuration, Turn turn, java.util.Set<Flow> bounded_flows, Flow flow_of_interest, java.util.Set<ArrivalCurve> arrival_bounds) throws java.lang.Exception
The cache content is generally overwritten! If there is an entry for this arrival bound and the arrival bounds are not convolved into a single one, then the cache just replaces any existing cache entry.- Parameters:
configuration
-server
-bounded_flows
-flow_of_interest
-arrival_bounds
-- Throws:
java.lang.Exception
-
getArrivalBounds
protected java.util.Set<ArrivalCurve> getArrivalBounds(AnalysisConfig configuration, Turn turn, java.util.Set<Flow> bounded_flows, Flow flow_of_interest)
-
getCacheEntry
protected ArrivalBoundCache.CacheEntryTurn getCacheEntry(AnalysisConfig configuration, Turn turn, java.util.Set<Flow> bounded_flows, Flow flow_of_interest)
-
-