Package jmri
Interface CommandStation
-
- All Known Implementing Classes:
BiDiBTrafficController
,CbusCommandStation
,DCCppCommandStation
,EasyDccCommandStation
,HornbyEliteCommandStation
,LenzCommandStation
,MarklinSimTrafficController
,MarklinTrafficController
,Mx1CommandStation
,NceTrafficController
,OlcbCommandStation
,RocoCommandStation
,RocoZ21CommandStation
,SlotManager
,SprogCommandStation
,TamsTrafficController
,TrafficController
,UhlenbrockSlotManager
public interface CommandStation
Provide a DCC command station's basic ability: Sending DCC packets to the rails.Note that this is separate from higher-level things like access to
Throttle
capability (e.g. viaThrottleManager
), more convenient sending of accessory command messages via JMRITurnout
objects, programming via service mode (Programmer
) or on-main programmers (AddressedProgrammer
) etc.System-specific implementations can be obtained via the
InstanceManager
class.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description java.lang.String
getSystemPrefix()
java.lang.String
getUserName()
default void
sendAccSignalDecoderPkt(int address, int aspect, int count)
As a shortcut, and to allow for command station types that cannot sent generic packets to the rails, we provide this method to specifically send Accessory Signal Decoder Packets.default void
sendAltAccSignalDecoderPkt(int address, int aspect, int count)
As a shortcut, and to allow for command station types that cannot sent generic packets to the rails, we provide this method to specifically send the alternate form of Accessory Signal Decoder Packets.boolean
sendPacket(byte[] packet, int repeats)
Send a specific packet to the rails.
-
-
-
Method Detail
-
sendPacket
boolean sendPacket(@Nonnull byte[] packet, int repeats)
Send a specific packet to the rails.- Parameters:
packet
- Byte array representing the packet, including the error-correction byte.repeats
- Number of times to repeat the transmission.- Returns:
true
if the operation succeeds,false
otherwise.
-
getUserName
java.lang.String getUserName()
-
getSystemPrefix
@Nonnull java.lang.String getSystemPrefix()
-
sendAccSignalDecoderPkt
default void sendAccSignalDecoderPkt(int address, int aspect, int count)
As a shortcut, and to allow for command station types that cannot sent generic packets to the rails, we provide this method to specifically send Accessory Signal Decoder Packets.It's equivalent to calling
NmraPacket.accSignalDecoderPkt(int, int)
and sending the resulting packet to the rails- Parameters:
address
- The DCC signal decoder address to useaspect
- The signal aspect to sendcount
- the number of times to repeat the send
-
sendAltAccSignalDecoderPkt
default void sendAltAccSignalDecoderPkt(int address, int aspect, int count)
As a shortcut, and to allow for command station types that cannot sent generic packets to the rails, we provide this method to specifically send the alternate form of Accessory Signal Decoder Packets.It's equivalent to calling
NmraPacket.altAccSignalDecoderPkt(int, int)
and sending the resulting packet to the rails- Parameters:
address
- The DCC signal decoder address to useaspect
- The signal aspect to sendcount
- the number of times to repeat the send
-
-