jmri
Class DefaultProgrammerManager

java.lang.Object
  extended by jmri.DefaultProgrammerManager
All Implemented Interfaces:
ProgrammerManager
Direct Known Subclasses:
DebugProgrammerManager, EasyDccProgrammerManager, LnProgrammerManager, NceProgrammerManager, SprogProgrammerManager, SRCPProgrammerManager, XNetProgrammerManager

public class DefaultProgrammerManager
extends Object
implements ProgrammerManager

Provides a very-basic implementation of ProgrammerManager. You give it a service-mode Programmer at construction time; Ops Mode requests get a null in response.

Author:
Bob Jacobsen Copyright (C) 2001
See Also:
ProgrammerManager

Constructor Summary
DefaultProgrammerManager(Programmer pProgrammer)
           
 
Method Summary
 Programmer getOpsModeProgrammer(boolean pLongAddress, int pAddress)
          Gain access to a Ops Mode Programmer without reservation.
 Programmer getServiceModeProgrammer()
          Gain access to the Service Mode Programmer without reservation.
 boolean isOpsModePossible()
          Default programmer does not provide Ops Mode
 boolean isServiceModePossible()
          Allow for implementations that do not support Service mode programming
 void releaseOpsModeProgrammer(Programmer p)
          Return access to the Service Mode Programmer, so that it can be used elsewhere.
 void releaseServiceModeProgrammer(Programmer p)
          Return access to the Service Mode Programmer, so that it can be used elsewhere.
 Programmer reserveOpsModeProgrammer(boolean pLongAddress, int pAddress)
          Gain access to a (the) Ops Mode Programmer, in the process reserving it for yourself.
 Programmer reserveServiceModeProgrammer()
          Gain access to the Service Mode Programmer, in the process reserving it for yourself.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultProgrammerManager

public DefaultProgrammerManager(Programmer pProgrammer)
Method Detail

getServiceModeProgrammer

public Programmer getServiceModeProgrammer()
Description copied from interface: ProgrammerManager
Gain access to the Service Mode Programmer without reservation.

Specified by:
getServiceModeProgrammer in interface ProgrammerManager
Returns:
null only if there isn't a Service Mode Programmer in the system

getOpsModeProgrammer

public Programmer getOpsModeProgrammer(boolean pLongAddress,
                                       int pAddress)
Description copied from interface: ProgrammerManager
Gain access to a Ops Mode Programmer without reservation.

Specified by:
getOpsModeProgrammer in interface ProgrammerManager
Parameters:
pLongAddress - true if this is a long (14 bit) address, else false
pAddress - Specific decoder address to use.
Returns:
null only if there isn't an Ops Mode Programmer in the system

reserveServiceModeProgrammer

public Programmer reserveServiceModeProgrammer()
Description copied from interface: ProgrammerManager
Gain access to the Service Mode Programmer, in the process reserving it for yourself.

Specified by:
reserveServiceModeProgrammer in interface ProgrammerManager
Returns:
null if the existing Service Mode programmer is in use

releaseServiceModeProgrammer

public void releaseServiceModeProgrammer(Programmer p)
Description copied from interface: ProgrammerManager
Return access to the Service Mode Programmer, so that it can be used elsewhere.

Specified by:
releaseServiceModeProgrammer in interface ProgrammerManager

reserveOpsModeProgrammer

public Programmer reserveOpsModeProgrammer(boolean pLongAddress,
                                           int pAddress)
Description copied from interface: ProgrammerManager
Gain access to a (the) Ops Mode Programmer, in the process reserving it for yourself.

Specified by:
reserveOpsModeProgrammer in interface ProgrammerManager
Parameters:
pLongAddress - true if this is a long (14 bit) address, else false
pAddress - Specific decoder address to use.
Returns:
null if the address is in use by a reserved programmer

releaseOpsModeProgrammer

public void releaseOpsModeProgrammer(Programmer p)
Description copied from interface: ProgrammerManager
Return access to the Service Mode Programmer, so that it can be used elsewhere.

Specified by:
releaseOpsModeProgrammer in interface ProgrammerManager

isOpsModePossible

public boolean isOpsModePossible()
Default programmer does not provide Ops Mode

Specified by:
isOpsModePossible in interface ProgrammerManager
Returns:
false if there's no chance of getting one

isServiceModePossible

public boolean isServiceModePossible()
Allow for implementations that do not support Service mode programming

Specified by:
isServiceModePossible in interface ProgrammerManager
Returns:
false if there's no chance of getting one


Copyright © 1997 - 2008 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: SourceForge_Logo