001package jmri;
002
003import jmri.util.PhysicalLocation;
004
005/**
006 * Implements a common way that a Reporter that supports having a Physical Location
007 * can report that location to querying objects.
008 * <hr>
009 * This file is part of JMRI.
010 * <p>
011 * JMRI is free software; you can redistribute it and/or modify it under 
012 * the terms of version 2 of the GNU General Public License as published 
013 * by the Free Software Foundation. See the "COPYING" file for a copy
014 * of this license.
015 * <p>
016 * JMRI is distributed in the hope that it will be useful, but WITHOUT 
017 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 
018 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License 
019 * for more details.
020 *
021 * @author   Mark Underwood Copyright (C) 2012
022 */
023public interface PhysicalLocationReporter {
024
025    enum Direction {
026
027        UNKNOWN, ENTER, EXIT
028    }
029
030    LocoAddress getLocoAddress(String s);
031
032    Direction getDirection(String s);
033
034    PhysicalLocation getPhysicalLocation();
035
036    PhysicalLocation getPhysicalLocation(String s);
037
038}