Class HistoricalHashSet<E>
- java.lang.Object
-
- org.opentrafficsim.core.perception.AbstractHistorical<E,AbstractHistoricalCollection.EventCollection<E,C>>
-
- org.opentrafficsim.core.perception.collections.AbstractHistoricalCollection<E,LinkedHashSet<E>>
-
- org.opentrafficsim.core.perception.collections.HistoricalHashSet<E>
-
- Type Parameters:
E
- element type
- All Implemented Interfaces:
Iterable<E>
,Collection<E>
,Set<E>
,HistoricalCollection<E>
,HistoricalSet<E>
,HistoryManager.HistoricalElement
public class HistoricalHashSet<E> extends AbstractHistoricalCollection<E,LinkedHashSet<E>> implements HistoricalSet<E>
LinkedHashSet-valued historical state. The current hash set is always maintained, and past states of the hash set are obtained by applying the events between now and the requested time in reverse.
TheIterator
returned by this class does not support theremove()
method. Any returned subset is unmodifiable.Copyright (c) 2013-2022 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.- Version:
- $Revision$, $LastChangedDate$, by $Author$, initial version 3 feb. 2018
- Author:
- Alexander Verbraeck, Peter Knoppers, Wouter Schakel
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.opentrafficsim.core.perception.collections.AbstractHistoricalCollection
AbstractHistoricalCollection.AddEvent<E,C extends Collection<E>>, AbstractHistoricalCollection.EventCollection<E,C extends Collection<E>>, AbstractHistoricalCollection.RemoveEvent<E,C extends Collection<E>>
-
Nested classes/interfaces inherited from class org.opentrafficsim.core.perception.AbstractHistorical
AbstractHistorical.EventValue<T>
-
-
Constructor Summary
Constructors Constructor Description HistoricalHashSet(HistoryManager historyManager)
Constructor.HistoricalHashSet(HistoryManager historyManager, Collection<? extends E> c)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LinkedHashSet<E>
get()
Returns the current set.LinkedHashSet<E>
get(Time time)
Returns a past set.String
toString()
-
Methods inherited from class org.opentrafficsim.core.perception.collections.AbstractHistoricalCollection
add, addAll, clear, contains, containsAll, fill, fill, getCollection, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray
-
Methods inherited from class org.opentrafficsim.core.perception.AbstractHistorical
addEvent, cleanUpHistory, getEvent, getEvents, getLastEvent, isLastState, now, removeEvent
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
parallelStream, stream, toArray
-
Methods inherited from interface org.opentrafficsim.core.perception.collections.HistoricalCollection
removeIf
-
-
-
-
Constructor Detail
-
HistoricalHashSet
public HistoricalHashSet(HistoryManager historyManager)
Constructor.- Parameters:
historyManager
- HistoryManager; history manager
-
HistoricalHashSet
public HistoricalHashSet(HistoryManager historyManager, Collection<? extends E> c)
Constructor.- Parameters:
historyManager
- HistoryManager; history managerc
- Collection<? extends E>; initial collection
-
-
Method Detail
-
get
public LinkedHashSet<E> get()
Returns the current set.- Specified by:
get
in interfaceHistoricalCollection<E>
- Specified by:
get
in interfaceHistoricalSet<E>
- Returns:
- Set; current set
-
get
public LinkedHashSet<E> get(Time time)
Returns a past set.- Specified by:
get
in interfaceHistoricalCollection<E>
- Specified by:
get
in interfaceHistoricalSet<E>
- Parameters:
time
- Time; time to obtain the set at- Returns:
- Set; past set
-
-