Package jmri.jmrix.tams
Class TamsProgrammerManager
- java.lang.Object
-
- jmri.beans.PropertyChangeSupport
-
- jmri.managers.DefaultProgrammerManager
-
- jmri.jmrix.tams.TamsProgrammerManager
-
- All Implemented Interfaces:
AddressedProgrammerManager
,PropertyChangeFirer
,PropertyChangeProvider
,GlobalProgrammerManager
public class TamsProgrammerManager extends DefaultProgrammerManager
Extend DefaultProgrammerManager to provide ops mode programmers for NCE systems- See Also:
Based on work by Bob Jacobsen
-
-
Field Summary
Fields Modifier and Type Field Description (package private) TamsTrafficController
tc
-
Fields inherited from class jmri.beans.PropertyChangeSupport
propertyChangeSupport
-
-
Constructor Summary
Constructors Constructor Description TamsProgrammerManager(Programmer serviceModeProgrammer, TamsSystemConnectionMemo memo)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AddressedProgrammer
getAddressedProgrammer(boolean pLongAddress, int pAddress)
Gain access to a Addressed Mode Programmer without reservation.boolean
isAddressedModePossible()
Works with command station to provide Ops Mode, so say it worksboolean
isGlobalProgrammerAvailable()
Works with PH command station to provide Service Mode and USB connect to PowerCab.AddressedProgrammer
reserveAddressedProgrammer(boolean pLongAddress, int pAddress)
Gain access to a (the) Addressed Mode Programmer, in the process reserving it for yourself.-
Methods inherited from class jmri.managers.DefaultProgrammerManager
dispose, getDefaultModes, getGlobalProgrammer, getUserName, isAddressedModePossible, releaseAddressedProgrammer, releaseGlobalProgrammer, reserveGlobalProgrammer, toString
-
Methods inherited from class jmri.beans.PropertyChangeSupport
addPropertyChangeListener, addPropertyChangeListener, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface jmri.AddressedProgrammerManager
getAddressedProgrammer, reserveAddressedProgrammer
-
Methods inherited from interface jmri.beans.PropertyChangeProvider
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
-
-
-
-
Constructor Detail
-
TamsProgrammerManager
public TamsProgrammerManager(Programmer serviceModeProgrammer, TamsSystemConnectionMemo memo)
-
-
Method Detail
-
isAddressedModePossible
public boolean isAddressedModePossible()
Works with command station to provide Ops Mode, so say it works- Specified by:
isAddressedModePossible
in interfaceAddressedProgrammerManager
- Overrides:
isAddressedModePossible
in classDefaultProgrammerManager
- Returns:
- true
-
isGlobalProgrammerAvailable
public boolean isGlobalProgrammerAvailable()
Works with PH command station to provide Service Mode and USB connect to PowerCab.- Specified by:
isGlobalProgrammerAvailable
in interfaceGlobalProgrammerManager
- Overrides:
isGlobalProgrammerAvailable
in classDefaultProgrammerManager
- Returns:
- true if not USB connect to SB3
-
getAddressedProgrammer
public AddressedProgrammer getAddressedProgrammer(boolean pLongAddress, int pAddress)
Description copied from interface:AddressedProgrammerManager
Gain access to a Addressed Mode Programmer without reservation.- Specified by:
getAddressedProgrammer
in interfaceAddressedProgrammerManager
- Overrides:
getAddressedProgrammer
in classDefaultProgrammerManager
- Parameters:
pLongAddress
- true if this is a long (14 bit) address, else falsepAddress
- specific decoder address to use- Returns:
- null only if there isn't an Ops Mode Programmer in the system
-
reserveAddressedProgrammer
public AddressedProgrammer reserveAddressedProgrammer(boolean pLongAddress, int pAddress)
Description copied from interface:AddressedProgrammerManager
Gain access to a (the) Addressed Mode Programmer, in the process reserving it for yourself.- Specified by:
reserveAddressedProgrammer
in interfaceAddressedProgrammerManager
- Overrides:
reserveAddressedProgrammer
in classDefaultProgrammerManager
- Parameters:
pLongAddress
- true if this is a long (14 bit) address, else falsepAddress
- Specific decoder address to use- Returns:
- null if the address is in use by a reserved programmer
-
-