jopt.csp.util
Class IntValIntervalSet

java.lang.Object
  extended byjopt.csp.util.IntSet
      extended byjopt.csp.util.IntIntervalSet
          extended byjopt.csp.util.IntValIntervalSet
All Implemented Interfaces:
IntervalSet, NumSet

public class IntValIntervalSet
extends IntIntervalSet

A sorted set of integer intervals


Constructor Summary
IntValIntervalSet()
          Creates a new set
 
Method Summary
 void add(int val)
          Adds a value to set
 void add(int start, int end)
          Adds a range of values to set
 void add(IntIntervalSet ivis, int val)
           
 void add(int start, int end, int worth)
          Adds a range of values to set
 void add(IntValIntervalSet ivis)
           
 java.lang.Object clone()
          Creates a duplicate of this set
 boolean equals(IntValIntervalSet ivis)
          An equals method for comparing if two set objects are equivalent
 void freeIntervalsOfZeroWorth()
           
 IntIntervalSet getAllRangesWithMaxWorth(int maxWorth)
           
 IntIntervalSet getAllRangesWithMaxWorth(int maxWorth, int start, int end)
           
 IntIntervalSet getAllRangesWithMinWorth(int minWorth)
           
 IntIntervalSet getAllRangesWithMinWorth(int minWorth, int start, int end)
           
 int getMaxDiff(IntValIntervalSet ivis)
           
 int getMaxDiff(IntValIntervalSet ivis, int start, int end)
           
 int getMaxWorthOverRange(int start, int end)
           
 int getMinDiff(IntValIntervalSet ivis)
           
 int getMinDiff(IntValIntervalSet ivis, int start, int end)
           
 int getMinWorthOverRange(int start, int end)
           
 int getWorth(int idx)
          Returns value of the interval at index idx
 void remove(int start, int end)
          Removes a range of values from the set
 void remove(int start, int end, int worth)
           
 void remove(IntValIntervalSet ivis)
           
 java.lang.String toString()
           
 
Methods inherited from class jopt.csp.util.IntIntervalSet
add, add, clear, contains, equals, getFirstIntervalIndex, getFreeIntervalsBetween, getIntervalEnd, getIntervalStart, getLastIntervalIndex, getListener, getMax, getMax, getMin, getMin, getNextHigher, getNextIntervalIndex, getNextLower, getPreviousIntervalIndex, indexOfValue, intersect, intervals, isEmpty, isIntervalContained, isIntervalEmpty, remove, remove, removeEndingAt, removeStartingFrom, setListener, size, values
 
Methods inherited from class jopt.csp.util.IntSet
addAll, removeAll, removeEndingBefore, removeStartingAfter, retainAll
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IntValIntervalSet

public IntValIntervalSet()
Creates a new set

Method Detail

clone

public java.lang.Object clone()
Creates a duplicate of this set

Specified by:
clone in interface NumSet
Overrides:
clone in class IntIntervalSet

getWorth

public int getWorth(int idx)
Returns value of the interval at index idx


add

public void add(int val)
Adds a value to set

Overrides:
add in class IntIntervalSet

add

public void add(int start,
                int end)
Adds a range of values to set

Overrides:
add in class IntIntervalSet

add

public void add(IntValIntervalSet ivis)

remove

public void remove(IntValIntervalSet ivis)

add

public void add(IntIntervalSet ivis,
                int val)

add

public void add(int start,
                int end,
                int worth)
Adds a range of values to set


freeIntervalsOfZeroWorth

public void freeIntervalsOfZeroWorth()

remove

public void remove(int start,
                   int end,
                   int worth)

remove

public void remove(int start,
                   int end)
Description copied from class: IntIntervalSet
Removes a range of values from the set

Overrides:
remove in class IntIntervalSet

getMinWorthOverRange

public int getMinWorthOverRange(int start,
                                int end)

getMaxWorthOverRange

public int getMaxWorthOverRange(int start,
                                int end)

getAllRangesWithMinWorth

public IntIntervalSet getAllRangesWithMinWorth(int minWorth)

getAllRangesWithMaxWorth

public IntIntervalSet getAllRangesWithMaxWorth(int maxWorth)

getAllRangesWithMinWorth

public IntIntervalSet getAllRangesWithMinWorth(int minWorth,
                                               int start,
                                               int end)

getAllRangesWithMaxWorth

public IntIntervalSet getAllRangesWithMaxWorth(int maxWorth,
                                               int start,
                                               int end)

equals

public boolean equals(IntValIntervalSet ivis)
Description copied from class: IntIntervalSet
An equals method for comparing if two set objects are equivalent

Overrides:
equals in class IntIntervalSet
Parameters:
ivis - IntValIntervalSet to compare this to
Returns:
true if the objects are determined to be equal

getMinDiff

public int getMinDiff(IntValIntervalSet ivis)

getMaxDiff

public int getMaxDiff(IntValIntervalSet ivis)

getMaxDiff

public int getMaxDiff(IntValIntervalSet ivis,
                      int start,
                      int end)

getMinDiff

public int getMinDiff(IntValIntervalSet ivis,
                      int start,
                      int end)

toString

public java.lang.String toString()
Overrides:
toString in class IntIntervalSet