1 package org.djutils.stats.summarizers; 2 3 import java.util.Calendar; 4 5 /** 6 * The TimestampedTally interface defines the methods that a timestamped tally should implement in addition to the standard 7 * weighted tally. Timestamps can, e.g., be Number based or Calendar based. 8 * <p> 9 * Copyright (c) 2020-2022 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br> 10 * BSD-style license. See <a href="https://djutils.org/docs/current/djutils/licenses.html">DJUTILS License</a>. 11 * </p> 12 * @author <a href="https://www.tudelft.nl/averbraeck">Alexander Verbraeck</a> 13 * @author <a href="https://www.tudelft.nl/pknoppers">Peter Knoppers</a> 14 */ 15 public interface TimestampTallyInterface extends WeightedTallyInterface 16 { 17 /** 18 * Return whether the statistic is active (accepting observations) or not. 19 * @return boolean; whether the statistic is active (accepting observations) or not 20 */ 21 boolean isActive(); 22 23 /** 24 * End the observations and closes the last interval of observations. After ending, no more observations will be accepted. 25 * Calling this method will create an extra observation, and corresponding events for the EventBased implementations of this 26 * interface will be called. 27 * @param timestamp Number; the Number object representing the final timestamp 28 */ 29 void endObservations(Number timestamp); 30 31 /** 32 * End the observations and closes the last interval of observations. After ending, no more observations will be accepted. 33 * Calling this method will create an extra observation, and corresponding events for the EventBased implementations of this 34 * interface will be called. 35 * @param timestamp Calendar; the Calendar object representing the final timestamp 36 */ 37 void endObservations(Calendar timestamp); 38 39 }