jmri.jmrix.sprog
Class SprogThrottleManager

java.lang.Object
  extended by jmri.jmrix.AbstractThrottleManager
      extended by jmri.jmrix.sprog.SprogThrottleManager
All Implemented Interfaces:
ThrottleManager

public class SprogThrottleManager
extends AbstractThrottleManager

SPROG implementation of a ThrottleManager.

Author:
Bob Jacobsen Copyright (C) 2001

Nested Class Summary
 
Nested classes/interfaces inherited from class jmri.jmrix.AbstractThrottleManager
AbstractThrottleManager.Addresses
 
Constructor Summary
SprogThrottleManager()
          Constructor.
 
Method Summary
 boolean addressTypeUnique()
          Are there any ambiguous addresses (short vs long) on this system?
 boolean canBeLongAddress(int address)
          Address 100 and above is a long address
 boolean canBeShortAddress(int address)
          Address 127 and below is a short address
 boolean disposeThrottle(DccThrottle t, ThrottleListener l)
          Not for general use, see releaseThrottle and dispatchThrottle.
static SprogThrottleManager instance()
           
 void requestThrottleSetup(LocoAddress address, boolean control)
          Abstract member to actually do the work of configuring a new throttle, usually via interaction with the DCC system
 
Methods inherited from class jmri.jmrix.AbstractThrottleManager
addressReleased, addressStillRequired, attachListener, cancelThrottleRequest, cancelThrottleRequest, dispatchThrottle, failedThrottleRequest, getThrottleInfo, hasDispatchFunction, notifyThrottleKnown, releaseThrottle, removeListener, requestThrottle, requestThrottle, requestThrottle, requestThrottleSetup, singleUse, supportedSpeedModes
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SprogThrottleManager

public SprogThrottleManager()
Constructor.

Method Detail

instance

public static SprogThrottleManager instance()

requestThrottleSetup

public void requestThrottleSetup(LocoAddress address,
                                 boolean control)
Description copied from class: AbstractThrottleManager
Abstract member to actually do the work of configuring a new throttle, usually via interaction with the DCC system

Specified by:
requestThrottleSetup in class AbstractThrottleManager

canBeLongAddress

public boolean canBeLongAddress(int address)
Address 100 and above is a long address


canBeShortAddress

public boolean canBeShortAddress(int address)
Address 127 and below is a short address


addressTypeUnique

public boolean addressTypeUnique()
Are there any ambiguous addresses (short vs long) on this system?


disposeThrottle

public boolean disposeThrottle(DccThrottle t,
                               ThrottleListener l)
Description copied from interface: ThrottleManager
Not for general use, see releaseThrottle and dispatchThrottle.

Dispose of object when finished it. This will free up hardware resource

Used for handling certain internal error conditions, where the object still exists but hardware is not associated with it.

After this, further usage of this Throttle object will result in a JmriException.

Specified by:
disposeThrottle in interface ThrottleManager
Overrides:
disposeThrottle in class AbstractThrottleManager
Parameters:
t - Throttle being released
l - Throttle Listener releasing the throttle
Returns:
true if the throttle has been disposed of.


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