jmri.jmrix.lenz
Class XNetMessage

java.lang.Object
  extended by jmri.jmrix.AbstractMessage
      extended by jmri.jmrix.AbstractMRMessage
          extended by jmri.jmrix.lenz.XNetMessage
All Implemented Interfaces:
Serializable, Message

public class XNetMessage
extends AbstractMRMessage
implements Serializable

Represents a single command or response on the XpressNet.

Content is represented with ints to avoid the problems with sign-extension that bytes have, and because a Java char is actually a variable number of bytes in Unicode.

Author:
Bob Jacobsen Copyright (C) 2002, Paul Bender Copyright (C) 2003,2004
See Also:
Serialized Form

Field Summary
 
Fields inherited from class jmri.jmrix.AbstractMRMessage
LONG_TIMEOUT, SHORT_TIMEOUT
 
Fields inherited from class jmri.jmrix.AbstractMessage
_dataChars
 
Constructor Summary
XNetMessage(int len)
          Create a new object, representing a specific-length message.
XNetMessage(XNetMessage message)
          Create a new object, that is a copy of an existing message.
XNetMessage(XNetReply message)
          Create an XNetMessage from an XNetReply.
 
Method Summary
 boolean checkParity()
          check whether the message has a valid parity
static XNetMessage getAddLocoToConsistMsg(int consist, int address, boolean isNormalDir)
           
static XNetMessage getBitVerifyOpsModeCVMsg(int AH, int AL, int cv, int bit, boolean value)
           
static XNetMessage getBitWriteOpsModeCVMsg(int AH, int AL, int cv, int bit, boolean value)
           
static XNetMessage getBuildDoubleHeaderMsg(int address1, int address2)
           
static XNetMessage getDBSearchMsgConsistAddress(int address, boolean searchForward)
           
static XNetMessage getDBSearchMsgNextMULoco(int consist, int address, boolean searchForward)
           
static XNetMessage getDeleteAddressOnStackMsg(int address)
           
static XNetMessage getDisolveDoubleHeaderMsg(int address)
           
 Integer getElementBCD(int n)
          Get an integer representation of a BCD value
static XNetMessage getExitProgModeMsg()
           
static XNetMessage getFeedbackRequestMsg(int pNumber, boolean pLowerNibble)
          Generate a message to recieve the feedback information for an upper or lower nibble of the feedback address in question
static XNetMessage getLocomotiveFunctionStatusMsg(int address)
           
static XNetMessage getLocomotiveInfoRequestMsg(int address)
           
static XNetMessage getNextAddressOnStackMsg(int address, boolean searchForward)
           
 int getOpCode()
           
 String getOpCodeHex()
          Get a String representation of the op code in hex
static XNetMessage getReadDirectCVMsg(int cv)
           
static XNetMessage getReadPagedCVMsg(int cv)
           
static XNetMessage getReadRegisterMsg(int reg)
           
static XNetMessage getRemoveLocoFromConsistMsg(int consist, int address)
           
static XNetMessage getServiceModeResultsMsg()
           
static XNetMessage getTurnoutCommandMsg(int pNumber, boolean pClose, boolean pThrow, boolean pOn)
          Generate a message to change turnout state
static XNetMessage getVerifyOpsModeCVMsg(int AH, int AL, int cv, int val)
           
static XNetMessage getWriteDirectCVMsg(int cv, int val)
           
static XNetMessage getWriteOpsModeCVMsg(int AH, int AL, int cv, int val)
           
static XNetMessage getWritePagedCVMsg(int cv, int val)
           
static XNetMessage getWriteRegisterMsg(int reg, int val)
           
 int length()
          return the message length
 void setOpCode(int i)
           
 void setParity()
           
 
Methods inherited from class jmri.jmrix.AbstractMRMessage
addIntAsFourHex, addIntAsThree, addIntAsThreeHex, addIntAsTwoHex, getNeededMode, getRetries, getTimeout, isBinary, replyExpected, setBinary, setNeededMode, setRetries, setTimeout, 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
 

Constructor Detail

XNetMessage

public XNetMessage(int len)
Create a new object, representing a specific-length message.

Parameters:
len - Total bytes in message, including opcode and error-detection byte.

XNetMessage

public XNetMessage(XNetMessage message)
Create a new object, that is a copy of an existing message.

Parameters:
message - existing message.

XNetMessage

public XNetMessage(XNetReply message)
Create an XNetMessage from an XNetReply.

Method Detail

setOpCode

public void setOpCode(int i)
Overrides:
setOpCode in class AbstractMRMessage

getOpCode

public int getOpCode()
Overrides:
getOpCode in class AbstractMRMessage

getOpCodeHex

public String getOpCodeHex()
Get a String representation of the op code in hex

Overrides:
getOpCodeHex in class AbstractMRMessage

checkParity

public boolean checkParity()
check whether the message has a valid parity


setParity

public void setParity()

getElementBCD

public Integer getElementBCD(int n)
Get an integer representation of a BCD value


length

public int length()
return the message length


getTurnoutCommandMsg

public static XNetMessage getTurnoutCommandMsg(int pNumber,
                                               boolean pClose,
                                               boolean pThrow,
                                               boolean pOn)
Generate a message to change turnout state


getFeedbackRequestMsg

public static XNetMessage getFeedbackRequestMsg(int pNumber,
                                                boolean pLowerNibble)
Generate a message to recieve the feedback information for an upper or lower nibble of the feedback address in question


getServiceModeResultsMsg

public static XNetMessage getServiceModeResultsMsg()

getExitProgModeMsg

public static XNetMessage getExitProgModeMsg()

getReadPagedCVMsg

public static XNetMessage getReadPagedCVMsg(int cv)

getReadDirectCVMsg

public static XNetMessage getReadDirectCVMsg(int cv)

getWritePagedCVMsg

public static XNetMessage getWritePagedCVMsg(int cv,
                                             int val)

getWriteDirectCVMsg

public static XNetMessage getWriteDirectCVMsg(int cv,
                                              int val)

getReadRegisterMsg

public static XNetMessage getReadRegisterMsg(int reg)

getWriteRegisterMsg

public static XNetMessage getWriteRegisterMsg(int reg,
                                              int val)

getWriteOpsModeCVMsg

public static XNetMessage getWriteOpsModeCVMsg(int AH,
                                               int AL,
                                               int cv,
                                               int val)

getVerifyOpsModeCVMsg

public static XNetMessage getVerifyOpsModeCVMsg(int AH,
                                                int AL,
                                                int cv,
                                                int val)

getBitWriteOpsModeCVMsg

public static XNetMessage getBitWriteOpsModeCVMsg(int AH,
                                                  int AL,
                                                  int cv,
                                                  int bit,
                                                  boolean value)

getBitVerifyOpsModeCVMsg

public static XNetMessage getBitVerifyOpsModeCVMsg(int AH,
                                                   int AL,
                                                   int cv,
                                                   int bit,
                                                   boolean value)

getBuildDoubleHeaderMsg

public static XNetMessage getBuildDoubleHeaderMsg(int address1,
                                                  int address2)

getDisolveDoubleHeaderMsg

public static XNetMessage getDisolveDoubleHeaderMsg(int address)

getAddLocoToConsistMsg

public static XNetMessage getAddLocoToConsistMsg(int consist,
                                                 int address,
                                                 boolean isNormalDir)

getRemoveLocoFromConsistMsg

public static XNetMessage getRemoveLocoFromConsistMsg(int consist,
                                                      int address)

getNextAddressOnStackMsg

public static XNetMessage getNextAddressOnStackMsg(int address,
                                                   boolean searchForward)

getDBSearchMsgConsistAddress

public static XNetMessage getDBSearchMsgConsistAddress(int address,
                                                       boolean searchForward)

getDBSearchMsgNextMULoco

public static XNetMessage getDBSearchMsgNextMULoco(int consist,
                                                   int address,
                                                   boolean searchForward)

getDeleteAddressOnStackMsg

public static XNetMessage getDeleteAddressOnStackMsg(int address)

getLocomotiveInfoRequestMsg

public static XNetMessage getLocomotiveInfoRequestMsg(int address)

getLocomotiveFunctionStatusMsg

public static XNetMessage getLocomotiveFunctionStatusMsg(int address)


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