net.wimpi.modbus.msg
Class ReadInputRegistersResponse

java.lang.Object
  extended by net.wimpi.modbus.msg.ModbusMessageImpl
      extended by net.wimpi.modbus.msg.ModbusResponse
          extended by net.wimpi.modbus.msg.ReadInputRegistersResponse
All Implemented Interfaces:
Transportable, ModbusMessage

public final class ReadInputRegistersResponse
extends ModbusResponse

Class implementing a ReadInputRegistersRequest. The implementation directly correlates with the class 0 function read multiple registers (FC 4). It encapsulates the corresponding response message.

Version:
@version@ (@date@)
Author:
Dieter Wimberger

Constructor Summary
ReadInputRegistersResponse()
          Constructs a new ReadInputRegistersResponse instance.
ReadInputRegistersResponse(InputRegister[] registers)
          Constructs a new ReadInputRegistersResponse instance.
 
Method Summary
 int getByteCount()
          Returns the number of bytes that have been read.
 InputRegister getRegister(int index)
          Returns the InputRegister at the given position (relative to the reference used in the request).
 InputRegister[] getRegisters()
          Returns a reference to the array of input registers read.
 int getRegisterValue(int index)
          Returns the value of the register at the given position (relative to the reference used in the request) interpreted as usigned short.
 int getWordCount()
          Returns the number of words that have been read.
 void readData(DataInput din)
          Reads the subclass specific data from the given DataInput instance.
 void writeData(DataOutput dout)
          Writes the subclass specific data to the given DataOutput.
 
Methods inherited from class net.wimpi.modbus.msg.ModbusResponse
createModbusResponse
 
Methods inherited from class net.wimpi.modbus.msg.ModbusMessageImpl
getDataLength, getFunctionCode, getHexMessage, getOutputLength, getProtocolID, getTransactionID, getUnitID, isHeadless, readFrom, setDataLength, setHeadless, setProtocolID, setTransactionID, setUnitID, writeTo
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ReadInputRegistersResponse

public ReadInputRegistersResponse()
Constructs a new ReadInputRegistersResponse instance.


ReadInputRegistersResponse

public ReadInputRegistersResponse(InputRegister[] registers)
Constructs a new ReadInputRegistersResponse instance.

Parameters:
registers - the InputRegister[] holding response input registers.
Method Detail

getByteCount

public int getByteCount()
Returns the number of bytes that have been read.

Returns:
the number of bytes that have been read as int.

getWordCount

public int getWordCount()
Returns the number of words that have been read. The returned value should be twice as much as the byte count of the response.

Returns:
the number of words that have been read as int.

getRegister

public InputRegister getRegister(int index)
                          throws IndexOutOfBoundsException
Returns the InputRegister at the given position (relative to the reference used in the request).

Parameters:
index - the relative index of the InputRegister.
Returns:
the register as InputRegister.
Throws:
IndexOutOfBoundsException - if the index is out of bounds.

getRegisterValue

public int getRegisterValue(int index)
                     throws IndexOutOfBoundsException
Returns the value of the register at the given position (relative to the reference used in the request) interpreted as usigned short.

Parameters:
index - the relative index of the register for which the value should be retrieved.
Returns:
the value as int.
Throws:
IndexOutOfBoundsException - if the index is out of bounds.

getRegisters

public InputRegister[] getRegisters()
Returns a reference to the array of input registers read.

Returns:
a InputRegister[] instance.

writeData

public void writeData(DataOutput dout)
               throws IOException
Description copied from class: ModbusMessageImpl
Writes the subclass specific data to the given DataOutput.

Specified by:
writeData in class ModbusMessageImpl
Parameters:
dout - the DataOutput to be written to.
Throws:
IOException - if an I/O related error occurs.

readData

public void readData(DataInput din)
              throws IOException
Description copied from class: ModbusMessageImpl
Reads the subclass specific data from the given DataInput instance.

Specified by:
readData in class ModbusMessageImpl
Parameters:
din - the DataInput to read from.
Throws:
IOException - if an I/O related error occurs.


Copyright © 2010. All Rights Reserved.