Package jmri.jmrix.powerline

This package handles communications for powerline adapters, such as X10.

See:
          Description

Interface Summary
InsteonSequence.Command Represent a single Insteon command, which is either a "set address" or "do function" operation
SerialInterface Interface to send/receive serial information
SerialListener Listener interface to be notified about serial traffic
X10Sequence.Command Represent a single X10 command, which is either a "set address" or "do function" operation
 

Class Summary
ActiveFlag Provide a flag to indicate that the system provided by this package is active.
InsteonSequence Represent a sequence of one or more Insteon commands (addresses and functions).
InsteonSequence.Address Represent a single "set address" Insteon command
InsteonSequence.ExtData Represent a single "Extended Data" Insteon command
InsteonSequence.Function Represent a single "do function" Insteon command
SerialAddress Utility Class supporting parsing and testing of addresses Two address formats are supported: For X10: Ptnxx where: t is the type code, 'S' for sensors, and 'L' for lights n is the house code of the input or output bit (A - P) xx is a bit number of the input or output bit (1-16) examples: PLA2 (House Code A, Unit 2), PSK1 (House Code K, Unit 1) For Insteon: Pthh.hh.hh where: t is the type code, 'S' for sensors, and 'L' for lights aa is two hexadecimal digits examples: PLA2.43.CB
SerialConnectionTypeList Returns a list of valid Powerline Connection Types
SerialLight Implementation of the Light Object for Powerline devices.
SerialLightManager Implement light manager for powerline serial systems System names are "PLnnn", where nnn is the bit number without padding.
SerialMessage Contains the data payload of a serial packet.
SerialPortController Abstract base for classes representing a communications port
SerialReply Contains the data payload of a serial reply packet.
SerialSensor Extend jmri.AbstractSensor for serial systems
SerialSensorManager Manage the system-specific Sensor implementation.
SerialSystemConnectionMemo Lightweight class to denote that a system is active, and provide general information.
SerialTrafficController Converts Stream-based I/O to/from messages.
SerialTurnout Turnout implementation for X10.
SerialTurnoutManager Implement turnout manager for powerline systems System names are "PTnnn", where nnn is the turnout number without padding.
SerialX10Light Implementation of the Light class for X10-based subclasses.
SystemMenu Deprecated.
X10Sequence Represent a sequence of one or more X10 commands (addresses and functions).
X10Sequence.Address Represent a single "set address" X10 command
X10Sequence.ExtData Represent a single "Extended Data" X10 command
X10Sequence.Function Represent a single "do function" X10 command
 

Package jmri.jmrix.powerline Description

This package handles communications for powerline adapters, such as X10.

The package structure has to take two kinds of variation into account:

  1. Multiple adapters, e.g. as shown on the compatibility page. Each of these has its own serial protocol, including its own message format.
  2. Multiple device families and types, starting with X10, but later including Insteon and perhaps others. Individual adapters might support one or several of these.

Our strategy is to use explicit interfaces for each device protocol, implemented by a polymorphic TrafficController for each adapter type.

For example, the primary SerialTrafficController abstract class has an interface for sending X10Sequence objects. An X10Sequence encapulates just the X10 commands, not the particular message needed to send them. When the X10Sequence is passed to the specific SerialTrafficController implementation, e.g. SpecificTrafficController, it's encapsulated in one or more SpecificMessage objects, queued and sent.

The setup is done in SerialDriverAdapter, which keys off the adapter name in option1.

Related Documentation

Other sources of documentation

Since:
2.1.1

To Do



Copyright © 1997 - 2011 JMRI Community.
JMRI, DecoderPro, PanelPro, SoundPro, DispatcherPro and associated logos are our trademarks.

Additional information on copyright, trademarks and licenses is linked here.
Site hosted by: Get JMRI Model Railroad Interface at SourceForge.net. Fast, secure and Free Open Source software downloads