001package jmri.jmrit.logixng; 002 003import jmri.NamedBean; 004 005/** 006 * This interface declares an Inline LogixNG. 007 * @author Daniel Bergqvist (C) 2022 008 */ 009public interface InlineLogixNG { 010 011 /** 012 * Get the LogixNG of this InlineLogixNG. 013 * @return the LogixNG or null if it has no LogixNG 014 */ 015 public LogixNG getLogixNG(); 016 017 /** 018 * Set the LogixNG of this InlineLogixNG. 019 * @param logixNG the LogixNG or null if remove the LogixNG from the InlineLogixNG 020 */ 021 public void setLogixNG(LogixNG logixNG); 022 023 /** 024 * Set the system name for the LogixNG of this InlineLogixNG. 025 * @param systemName the system name 026 */ 027 public void setLogixNG_SystemName(String systemName); 028 029 /** 030 * Setup the LogixNG of this InlineLogixNG. 031 */ 032 public void setupLogixNG(); 033 034 /** 035 * Get the name of this InlineLogixNG. 036 * @return the name 037 */ 038 public String getNameString(); 039 040 /** 041 * Get the LogixNG of this InlineLogixNG. 042 * @return the LogixNG or null if it has no LogixNG 043 */ 044 public String getEditorName(); 045 046 /** 047 * Get the type of item of this InlineLogixNG. 048 * @return the type 049 */ 050 public String getTypeName(); 051 052 /** 053 * Get the X position of this InlineLogixNG. 054 * @return the X position 055 */ 056 public int getX(); 057 058 /** 059 * Get the Y position of this InlineLogixNG. 060 * @return the Y position 061 */ 062 public int getY(); 063 064}