001package jmri.jmrit.ussctc;
002
003/**
004 * A Section is the base type for the pieces that make up and are referenced by a {@link jmri.jmrit.ussctc.Station}.
005 * It combines a {@link jmri.jmrit.ussctc.CentralSection} and a {@link jmri.jmrit.ussctc.FieldSection}
006 * into one for convenience and consistency.
007 * <p>
008 * The type argument defines the communications from central to field and from field to central
009 * @author Bob Jacobsen Copyright (C) 2007, 2017
010 * @param <To> communications from field to central.
011 * @param <From> communications from central to field.
012 */
013public interface Section<To extends Enum<To>, From extends Enum<From>>
014                 extends CentralSection<To, From>, FieldSection<To, From> {
015
016
017    /**
018     * Name of this Section.
019     * Does not include name of associated Station.
020     * @return section name without station.
021    */
022    String getName();
023
024    Station<To, From> getStation();
025
026}