001package jmri.jmrix.tams; 002 003/** 004 * Define interface for sending and receiving messages to the Tams command 005 * station. 006 * 007 * Based on work by Bob Jacobsen 008 * 009 * @author Kevin Dickerson Copyright (C) 2012 010 */ 011public interface TamsInterface { 012 013 void addTamsListener(TamsListener l); 014 015 void removeTamsListener(TamsListener l); 016 017 /** 018 * Test operational status of interface. 019 * 020 * @return true is interface implementation is operational. 021 */ 022 boolean status(); 023 024 /** 025 * Send a message through the interface. 026 * 027 * @param m Message to be sent. 028 * @param l Listener to be notified of reply. 029 */ 030 void sendTamsMessage(TamsMessage m, TamsListener l); 031} 032 033