/******************************************************************************* * Copyright (c) 2009, 2014 Ericsson * * All rights reserved. This program and the accompanying materials are * made available under the terms of the Eclipse Public License v1.0 which * accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Francois Chouinard - Initial API and implementation * Patrick Tasse - Support selection range *******************************************************************************/ package fr.inria.linuxtools.tmf.core.signal; import fr.inria.linuxtools.tmf.core.timestamp.ITmfTimestamp; /** * A new time or time range selection has been made. * * This is the selected time or time range. To synchronize on the visible * (zoom) range, use {@link TmfRangeSynchSignal}. * * @version 1.0 * @author Francois Chouinard */ public class TmfTimeSynchSignal extends TmfSignal { private final ITmfTimestamp fBeginTime; private final ITmfTimestamp fEndTime; /** * Constructor * * @param source * Object sending this signal * @param ts * Timestamp of selection * @since 2.0 */ public TmfTimeSynchSignal(Object source, ITmfTimestamp ts) { super(source); fBeginTime = ts; fEndTime = ts; } /** * Constructor * * @param source * Object sending this signal * @param begin * Timestamp of begin of selection range * @param end * Timestamp of end of selection range * @since 2.1 */ public TmfTimeSynchSignal(Object source, ITmfTimestamp begin, ITmfTimestamp end) { super(source); fBeginTime = begin; fEndTime = end; } /** * @return The begin timestamp of selection * @since 2.1 */ public ITmfTimestamp getBeginTime() { return fBeginTime; } /** * @return The end timestamp of selection * @since 2.1 */ public ITmfTimestamp getEndTime() { return fEndTime; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("[TmfTimeSynchSignal ("); //$NON-NLS-1$ if (fBeginTime != null) { sb.append(fBeginTime.toString()); if (!fBeginTime.equals(fEndTime) && fEndTime != null) { sb.append('-'); sb.append(fEndTime.toString()); } } sb.append(")]"); //$NON-NLS-1$ return sb.toString(); } }