/* * Copyright 1999-2002 Carnegie Mellon University. * Portions Copyright 2002 Sun Microsystems, Inc. * Portions Copyright 2002 Mitsubishi Electric Research Laboratories. * All Rights Reserved. Use is subject to license terms. * * See the file "license.terms" for information on usage and * redistribution of this file, and for a DISCLAIMER OF ALL * WARRANTIES. * */ package edu.cmu.sphinx.frontend; /** * A signal that indicates the end of data. * * @see Data * @see DataProcessor * @see Signal */ public class DataEndSignal extends Signal { private final long duration; /** * Constructs a DataEndSignal. * * @param duration the duration of the entire data stream in milliseconds */ public DataEndSignal(long duration) { this(duration, System.currentTimeMillis()); } /** * Constructs a DataEndSignal with the given creation time. * * @param duration the duration of the entire data stream in milliseconds * @param time the creation time of the DataEndSignal */ public DataEndSignal(long duration, long time) { super(time); this.duration = duration; } /** * Returns the duration of the entire data stream in milliseconds * * @return the duration of the entire data stream in milliseconds */ public long getDuration() { return duration; } /** * Returns the string "DataEndSignal". * * @return the string "DataEndSignal" */ @Override public String toString() { return ("DataEndSignal: creation time: " + getTime() + ", duration: " + getDuration() + "ms"); } }