net.wimpi.modbus.msg
Class ReadInputDiscretesResponse

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

public final class ReadInputDiscretesResponse
extends ModbusResponse

Class implementing a ReadInputDiscretesResponse. The implementation directly correlates with the class 1 function read input discretes (FC 2). It encapsulates the corresponding response message.

Input Discretes are understood as bits that cannot be manipulated (i.e. set or unset).

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

Constructor Summary
ReadInputDiscretesResponse()
          Constructs a new ReadInputDiscretesResponse instance.
ReadInputDiscretesResponse(int count)
          Constructs a new ReadInputDiscretesResponse instance with a given count of input discretes (i.e.
 
Method Summary
 int getBitCount()
          Returns the number of bits (i.e.
 BitVector getDiscretes()
          Returns the BitVector that stores the collection of bits that have been read.
 boolean getDiscreteStatus(int index)
          Convenience method that returns the state of the bit at the given index.
 void readData(DataInput din)
          Reads the subclass specific data from the given DataInput instance.
 void setBitCount(int count)
          Sets the number of bits in this response.
 void setDiscreteStatus(int index, boolean b)
          Sets the status of the given input discrete.
 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

ReadInputDiscretesResponse

public ReadInputDiscretesResponse()
Constructs a new ReadInputDiscretesResponse instance.


ReadInputDiscretesResponse

public ReadInputDiscretesResponse(int count)
Constructs a new ReadInputDiscretesResponse instance with a given count of input discretes (i.e. bits).

Parameters:
count - the number of bits to be read.
Method Detail

getBitCount

public int getBitCount()
Returns the number of bits (i.e. input discretes) read with the request.

Returns:
the number of bits that have been read.

setBitCount

public void setBitCount(int count)
Sets the number of bits in this response.

Parameters:
count - the number of response bits as int.

getDiscretes

public BitVector getDiscretes()
Returns the BitVector that stores the collection of bits that have been read.

Returns:
the BitVector holding the bits that have been read.

getDiscreteStatus

public boolean getDiscreteStatus(int index)
                          throws IndexOutOfBoundsException
Convenience method that returns the state of the bit at the given index.

Parameters:
index - the index of the input discrete for which the status should be returned.
Returns:
true if set, false otherwise.
Throws:
IndexOutOfBoundsException - if the index is out of bounds

setDiscreteStatus

public void setDiscreteStatus(int index,
                              boolean b)
                       throws IndexOutOfBoundsException
Sets the status of the given input discrete.

Parameters:
index - the index of the input discrete to be set.
b - true if to be set, false if to be reset.
Throws:
IndexOutOfBoundsException - if the given index exceeds bounds.

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.