001package org.javasimon.source;
002
003import org.javasimon.Split;
004import org.javasimon.Stopwatch;
005
006/**
007 * Stopwatch source is source that uses {@link org.javasimon.Stopwatch} as the monitor type.
008 *
009 * @author <a href="mailto:virgo47@gmail.com">Richard "Virgo" Richter</a>
010 * @since 3.4
011 */
012public interface StopwatchSource<L> extends MonitorSource<L, Stopwatch> {
013        /**
014         * Convenient method to return split for the location or disabled split, if the location is not monitored.
015         *
016         * @param location location to be monitored
017         * @return {@link Split} for the location or {Split#DISABLED} if the location is not monitored
018         * @since 3.4
019         */
020        Split start(L location);
021}