jmri.jmrix
Class AbstractMRMessage

java.lang.Object
  extended by jmri.jmrix.AbstractMessage
      extended by jmri.jmrix.AbstractMRMessage
All Implemented Interfaces:
Message
Direct Known Subclasses:
AcelaMessage, CanMessage, EasyDccMessage, GridConnectMessage, Message, Message, MrcMessage, NceMessage, SerialMessage, SerialMessage, SerialMessage, SerialMessage, SerialMessage, SerialMessage, SerialMessage, SprogMessage, SRCPMessage, XNetMessage

public abstract class AbstractMRMessage
extends AbstractMessage

Abstract base class for messages in a message/reply protocol. Carries a sequence of characters, with accessors.

Author:
Bob Jacobsen Copyright (C) 2003

Field Summary
protected static int LONG_TIMEOUT
           
protected static int SHORT_TIMEOUT
          Minimum timeout that's acceptable.
 
Fields inherited from class jmri.jmrix.AbstractMessage
_dataChars, _nDataChars
 
Constructor Summary
AbstractMRMessage()
           
AbstractMRMessage(AbstractMRMessage m)
           
AbstractMRMessage(int i)
           
AbstractMRMessage(String s)
           
 
Method Summary
 void addIntAsFourHex(int val, int offset)
           
 void addIntAsThree(int val, int offset)
           
 void addIntAsThreeHex(int val, int offset)
           
 void addIntAsTwoHex(int val, int offset)
           
 int getNeededMode()
           
 int getOpCode()
           
 String getOpCodeHex()
           
 int getRetries()
           
 int getTimeout()
           
 boolean isBinary()
           
 boolean replyExpected()
          Is a reply expected to this message?
 void setBinary(boolean b)
           
 void setNeededMode(int pMode)
           
 void setOpCode(int i)
           
 void setRetries(int i)
           
 void setTimeout(int t)
           
 String toString()
           
 
Methods inherited from class jmri.jmrix.AbstractMessage
getElement, getNumDataElements, setElement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SHORT_TIMEOUT

protected static int SHORT_TIMEOUT
Minimum timeout that's acceptable.

Also used as default for normal operations. Don't shorten this "to make recovery faster", as sometimes internal delays can slow processing down.

Units are milliseconds.


LONG_TIMEOUT

protected static int LONG_TIMEOUT
Constructor Detail

AbstractMRMessage

public AbstractMRMessage()

AbstractMRMessage

public AbstractMRMessage(int i)

AbstractMRMessage

public AbstractMRMessage(AbstractMRMessage m)

AbstractMRMessage

public AbstractMRMessage(String s)
Method Detail

setOpCode

public void setOpCode(int i)

getOpCode

public int getOpCode()

getOpCodeHex

public String getOpCodeHex()

setNeededMode

public void setNeededMode(int pMode)

getNeededMode

public int getNeededMode()

replyExpected

public boolean replyExpected()
Is a reply expected to this message?

By default, a reply is expected to every message; either a reply or a timeout is needed before the next message can be sent.

If this returns false, the transmit queue will immediately go on to transmitt the next message (if any).


isBinary

public boolean isBinary()

setBinary

public void setBinary(boolean b)

setTimeout

public void setTimeout(int t)

getTimeout

public int getTimeout()

setRetries

public void setRetries(int i)

getRetries

public int getRetries()

addIntAsThree

public void addIntAsThree(int val,
                          int offset)

addIntAsTwoHex

public void addIntAsTwoHex(int val,
                           int offset)

addIntAsThreeHex

public void addIntAsThreeHex(int val,
                             int offset)

addIntAsFourHex

public void addIntAsFourHex(int val,
                            int offset)

toString

public String toString()
Specified by:
toString in interface Message
Overrides:
toString in class Object


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