Package jmri

Interface SignalSystem

All Superinterfaces:
Comparable<NamedBean>, NamedBean, PropertyChangeProvider
All Known Implementing Classes:
DefaultSignalSystem

public interface SignalSystem
extends NamedBean
A SignalSystem defines a signalling system by representing the properties of various signal aspects it contains.

At present, the signal aspects are enumerated by Strings, not by specific objects; this table exists to attach properties to those Strings.

Setting or getting the "state" of one of these will throw an error.

You'll have one of these objects for each signaling _system_ on your railroad. In turn, these will be used by 1 to N specific mappings to appearances, see e.g. SignalAppearanceMap.

Insertion order is preserved when retrieving keys.


This file is part of JMRI.

JMRI is free software; you can redistribute it and/or modify it under the terms of version 2 of the GNU General Public License as published by the Free Software Foundation. See the "COPYING" file for a copy of this license.

JMRI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.