Package jmri.jmrix

Interfaces and implementations for system-specific code.

This package provides a few interfaces and abstract implementations for the system-specific code, and serves as the parent to the system-specific packages.

We intend that this will still compile and run with any of the system-specific subpackages missing. And that might even work.

Most of the system specific code is organized as follows:

  • PortController classes handle the connection to the serial port or other communications link. That code is usually in the "SsssPortController" class in the "ssss.serialdriver" package
  • TrafficController classes handle the sequencing and scheduling of messages and replies through a port. The intention is that a particular system use one (or few) traffic controllers with perhaps multiple port controllers for different connections
  • System-specific tools are generally given their own sub-package under the system package