001package jmri.jmrix.mrc;
002
003import java.util.Date;
004
005/**
006 * MrcTrafficListener provides the call-back interface for notification when a
007 * new Mrc message arrives from the layout.
008 * <p>
009 * In contrast to MrcListener this interface defines separate methods to notify
010 * transmitted or received mrc messages. Further, the actual time stamp when a
011 * message was passed to the hardware interface or was first seen is provided.
012 * As most functions in JMRI do not depend on the actual time a message was sent
013 * or received, this interface may help in debugging communication.
014 *
015 * Based upon the LocoNet TrafficListener
016 *
017 * @author Matthias Keil Copyright (C) 2013
018 * 
019 *
020 */
021public interface MrcTrafficListener {
022
023    void notifyXmit(Date timestamp, MrcMessage m);
024
025    void notifyRcv(Date timestamp, MrcMessage m);
026
027    void notifyFailedXmit(Date timestamp, MrcMessage m);
028}