jmri.jmrix.can.adapters.gridconnect
Class GridConnectReply

java.lang.Object
  extended by jmri.jmrix.AbstractMessage
      extended by jmri.jmrix.AbstractMRReply
          extended by jmri.jmrix.can.adapters.gridconnect.GridConnectReply
All Implemented Interfaces:
Message
Direct Known Subclasses:
MergReply

public class GridConnectReply
extends AbstractMRReply

Class for replies in a GridConnect based message/reply protocol.

The GridConnect protocol encodes messages as an ASCII string of up to 24 characters of the form: :ShhhhNd0d1d2d3d4d5d6d7; hhhh is the two byte (11 useful bits) header The S indicates a standard CAN frame :XhhhhhhhhNd0d1d2d3d4d5d6d7; The X indicates an extended CAN frame N or R indicates a normal or remote frame, in position 6 or 10 d0 - d7 are the (up to) 8 data bytes

Author:
Andrew Crosland Copyright (C) 2008, 2009, Bob Jacobsen Copyright (C) 2008

Field Summary
 
Fields inherited from class jmri.jmrix.AbstractMRReply
DEFAULTMAXSIZE
 
Fields inherited from class jmri.jmrix.AbstractMessage
_dataChars, _nDataChars
 
Constructor Summary
GridConnectReply()
           
GridConnectReply(String s)
           
 
Method Summary
 CanReply createReply()
           
 int getByte(int b)
          Get a hex data byte from the message Data bytes are encoded as two ASCII hex digits starting at byte 7 of the message.
 int getElement(int n)
           
 int getHeader()
          Get the CAN header by using chars from 2 to up to 9 Right justify standard headers that had 4 digits
 int getNumBytes()
          Get the number of data bytes
 int getNumDataElements()
           
 boolean isExtended()
           
 boolean isRtr()
           
 int maxSize()
           
 void setData(int[] d)
           
 void setElement(int n, int v)
           
 void setNumDataElements(int n)
           
protected  int skipPrefix(int index)
           
 
Methods inherited from class jmri.jmrix.AbstractMRReply
flush, getOpCode, isBinary, isRetransmittableErrorMsg, isUnsolicited, match, pollValue, setBinary, setOpCode, setUnsolicited, skipWhiteSpace, toString, value
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GridConnectReply

public GridConnectReply()

GridConnectReply

public GridConnectReply(String s)
Method Detail

createReply

public CanReply createReply()

skipPrefix

protected int skipPrefix(int index)
Specified by:
skipPrefix in class AbstractMRReply

getNumDataElements

public int getNumDataElements()
Specified by:
getNumDataElements in interface Message
Overrides:
getNumDataElements in class AbstractMessage

setNumDataElements

public void setNumDataElements(int n)

getElement

public int getElement(int n)
Specified by:
getElement in interface Message
Overrides:
getElement in class AbstractMessage

setElement

public void setElement(int n,
                       int v)
Specified by:
setElement in interface Message
Overrides:
setElement in class AbstractMRReply

isExtended

public boolean isExtended()

isRtr

public boolean isRtr()

maxSize

public int maxSize()
Overrides:
maxSize in class AbstractMRReply

setData

public void setData(int[] d)

getHeader

public int getHeader()
Get the CAN header by using chars from 2 to up to 9 Right justify standard headers that had 4 digits

Returns:
the CAN header as an int

getNumBytes

public int getNumBytes()
Get the number of data bytes

Returns:
int the number of bytes

getByte

public int getByte(int b)
Get a hex data byte from the message

Data bytes are encoded as two ASCII hex digits starting at byte 7 of the message.

Parameters:
b - The byte offset (0 - 7)
Returns:
The value


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