001package jmri.jmrix.dccpp;
002
003/**
004 * interface for DCCppPortController objects.
005 * <p>
006 *
007 * @author Paul Bender Copyright (C) 2010
008 * @author      Mark Underwood Copyright (C) 2015
009  *
010 * Based on XNetPortController by Paul Bender
011 */
012public interface DCCppPortController extends jmri.jmrix.PortAdapter {
013
014    /**
015     * Check that this object is ready to operate. This is a question of
016     * configuration, not transient hardware status.
017     */
018    @Override
019    public boolean status();
020
021    /**
022     * Can the port accept additional characters? This might go false for short
023     * intervals, but it might also stick off if something goes wrong.
024     * @return true if OK to send, else false.
025     */
026    public boolean okToSend();
027
028    /**
029     * We need a way to say if the output buffer is empty or not
030     * @param s true to set buffer empty, else false.
031     */
032    public void setOutputBufferEmpty(boolean s);
033
034}
035
036
037