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 * <p> 006 * The type argument defines the communications from central to field and from field to central 007 * @author Bob Jacobsen Copyright (C) 2007, 2017 008 */ 009public interface CentralSection<To extends Enum<To>, From extends Enum<From>> { 010 011 /** 012 * Inform central CTC machine part of section that a code-send operation (from central to field) 013 * has started and obtain the value to be sent over the line. 014 * @return The value to be conveyed to the field. 015 */ 016 To codeSendStart(); 017 018 /** 019 * Provides the code sequence to the central CTC machine at the end of the indication-send operation. 020 * @param value to be conveyed. 021 */ 022 void indicationComplete(From value); 023 024}