|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcz.cuni.amis.pogamut.ut2004.agent.module.utils.TabooSet<T>
public class TabooSet<T>
This class is a simple implementation of TabooSet (similar to TabooList). It allows you to insert
items that are taboo either for infinite time (via add(Object)
) or for a specified
amount of UT2004 time (via add(Object, double)
).
Items inside taboo set are either removed automatically due to a timeout (a specified amount of time has passed)
or manually via remove(Object)
.
Nested Class Summary | |
---|---|
static interface |
TabooSet.IRelaxedTaboo<T>
|
Constructor Summary | |
---|---|
TabooSet(UT2004Bot bot)
Constructor of the TabuSet. |
Method Summary | ||
---|---|---|
boolean |
add(T item)
Adds a taboo item that is valid for an infinite amount of time. |
|
void |
add(T item,
double timeout)
Adds a tabu item that is valid for a period of 'timeout' time (in seconds). |
|
boolean |
addAll(Collection<? extends T> c)
|
|
void |
clear()
Clears the taboo set. |
|
boolean |
contains(Object o)
|
|
boolean |
containsAll(Collection<?> c)
|
|
Set<T> |
filter(Collection<T> collection)
Filters collection according to the current state of the tabu set. |
|
Set<T> |
filter(Collection<T> collection,
TabooSet.IRelaxedTaboo estimator)
Filters collection according to the current state of the tabu set. |
|
double |
getTabooTime(T item)
If not tabooized forever, it returns remaining time for the item to remain taboo. |
|
double |
getTime()
Returns current UT2004 time that is used by the TabooSet. |
|
boolean |
isAccepted(T item)
Method that is used by DistanceUtils methods to filter items. |
|
boolean |
isEmpty()
|
|
boolean |
isTaboo(T item)
Determines whether an 'item' is inside tabu set or not based on the current UT2004 time. |
|
boolean |
isTaboo(T item,
TabooSet.IRelaxedTaboo estimator)
Determines whether an 'item' is considered to be taboo using relaxed 'estimator'. |
|
Iterator<T> |
iterator()
|
|
boolean |
remove(Object item)
Removes a tabu item from the set. |
|
boolean |
removeAll(Collection<?> c)
|
|
boolean |
retainAll(Collection<?> c)
|
|
int |
size()
Return how many items are inside taboo set. |
|
Object[] |
toArray()
|
|
|
toArray(T[] a)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.util.Collection |
---|
equals, hashCode |
Constructor Detail |
---|
public TabooSet(UT2004Bot bot)
bot
- Method Detail |
---|
public double getTabooTime(T item)
If tabooized forever, returns Double.POSITIVE_INFINITY
.
If item is not tabooized, returns 0.
item
-
public boolean isTaboo(T item)
item
-
public boolean isTaboo(T item, TabooSet.IRelaxedTaboo estimator)
item
- estimator
-
public boolean isAccepted(T item)
DistanceUtils
methods to filter items.
isAccepted
in interface cz.cuni.amis.utils.IFilter<T>
item
-
isTaboo(Object)
public Set<T> filter(Collection<T> collection)
collection
-
public Set<T> filter(Collection<T> collection, TabooSet.IRelaxedTaboo estimator)
collection
-
public double getTime()
public boolean add(T item)
add
in interface Collection<T>
item
-
public void add(T item, double timeout)
item
- timeout
- in secondspublic boolean remove(Object item)
remove
in interface Collection<T>
item
-
public boolean isEmpty()
isEmpty
in interface Collection<T>
public boolean contains(Object o)
contains
in interface Collection<T>
public Iterator<T> iterator()
iterator
in interface Iterable<T>
iterator
in interface Collection<T>
public Object[] toArray()
toArray
in interface Collection<T>
public <T> T[] toArray(T[] a)
toArray
in interface Collection<T>
public boolean containsAll(Collection<?> c)
containsAll
in interface Collection<T>
public boolean addAll(Collection<? extends T> c)
addAll
in interface Collection<T>
public boolean removeAll(Collection<?> c)
removeAll
in interface Collection<T>
public boolean retainAll(Collection<?> c)
retainAll
in interface Collection<T>
public int size()
size
in interface Collection<T>
public void clear()
clear
in interface Collection<T>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |