Package jmri

Interface AddressedProgrammer

All Superinterfaces:
Programmer
All Known Implementing Classes:
CbusDccOpsModeProgrammer, CbusProgrammer, Dcc4PcOpsModeProgrammer, DCCppOpsModeProgrammer, EasyDccOpsModeProgrammer, EcosOpsModeProgrammer, LnOpsModeProgrammer, MrcOpsModeProgrammer, NceOpsModeProgrammer, OlcbProgrammer, ProgDebugger, SprogOpsModeProgrammer, TamsOpsModeProgrammer, XNetOpsModeProgrammer, Z21XNetOpsModeProgrammer

public interface AddressedProgrammer
extends Programmer
Provide access to the hardware DCC decoder programming capability.

Programmers come in multiple types:

  • Global, previously "Service Mode" or on a programming track
  • Addressed, previously "Ops Mode" also known as "programming on the main"
Different equipment may also require different programmers:
  • DCC CV programming, on service mode track or on the main
  • CBUS Node Variable programmers
  • LocoNet System Variable programmers
  • LocoNet Op Switch programmers
  • etc
Depending on which type you have, only certain modes can be set. Valid modes are specified by the class static constants.

You get a Programmer object from an AddressedProgrammerManager, which in turn can be located from the InstanceManager.

Starting in JMRI 3.5.5, the CV addresses are Strings for generality. The methods that use ints for CV addresses will later be deprecated.


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.

See Also:
AddressedProgrammerManager, Programmer