Class HistoricalEnumMap<K extends Enum<K>,​V>

java.lang.Object
org.opentrafficsim.core.perception.AbstractHistorical<K,​AbstractHistoricalMap.EventMap<K,​V,​M>>
org.opentrafficsim.core.perception.collections.AbstractHistoricalMap<K,​V,​EnumMap<K,​V>>
org.opentrafficsim.core.perception.collections.HistoricalEnumMap<K,​V>
Type Parameters:
K - key type
V - value type
All Implemented Interfaces:
Map<K,​V>, HistoricalMap<K,​V>, HistoryManager.HistoricalElement

public class HistoricalEnumMap<K extends Enum<K>,​V>
extends AbstractHistoricalMap<K,​V,​EnumMap<K,​V>>
EnumMap-valued historical state. The current enum map is always maintained, and past states of the enum map are obtained by applying the events between now and the requested time in reverse.

The set views returned by this class are unmodifiable.

Copyright (c) 2013-2019 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 4 feb. 2018
Author:
Alexander Verbraeck, Peter Knoppers, Wouter Schakel
  • Constructor Details

    • HistoricalEnumMap

      public HistoricalEnumMap​(HistoryManager historyManager, Class<K> clazz)
      Constructor.
      Parameters:
      historyManager - HistoryManager; history manager
      clazz - Class<K>; enum class
    • HistoricalEnumMap

      public HistoricalEnumMap​(HistoryManager historyManager, EnumMap<K,​? extends V> m, Class<K> clazz)
      Constructor.
      Parameters:
      historyManager - HistoryManager; history manager
      m - EnumMap<K, ? extends V>; initial map
      clazz - Class<K>; enum class
  • Method Details

    • get

      public EnumMap<K,​V> get()
      Returns the current map.
      Returns:
      Map; current map
    • get

      public EnumMap<K,​V> get​(Time time)
      Returns a past map.
      Parameters:
      time - Time; time to obtain the map at
      Returns:
      Map; past map
    • toString

      public String toString()
      Overrides:
      toString in class Object