Class AbstractQuadrupleWordElement<E,T>

Type Parameters:
E - the subclass of myself
T - the target OpenemsType
All Implemented Interfaces:
ModbusElement<T>, ModbusRegisterElement<T>
Direct Known Subclasses:
FloatQuadruplewordElement, SignedQuadruplewordElement, UnsignedQuadruplewordElement

public abstract class AbstractQuadrupleWordElement<E,T> extends AbstractModbusRegisterElement<E,T>
A QuadrupleWordElement has a size of four Modbus Registers or 64 bit.
  • Constructor Details

    • AbstractQuadrupleWordElement

      public AbstractQuadrupleWordElement(OpenemsType type, int startAddress)
  • Method Details

    • getLength

      public final int getLength()
      Description copied from interface: ModbusElement
      Number of Registers or Coils.
      Returns:
      the number of Registers or Coils
    • _setInputRegisters

      protected final void _setInputRegisters(com.ghgande.j2mod.modbus.procimg.InputRegister... registers)
      Specified by:
      _setInputRegisters in class AbstractModbusRegisterElement<E,T>
    • fromByteBuffer

      protected abstract T fromByteBuffer(ByteBuffer buff)
      Converts a 8-byte ByteBuffer to the current OpenemsType.
      Parameters:
      buff - the ByteBuffer
      Returns:
      an instance of the current OpenemsType
    • _setNextWriteValue

      public final void _setNextWriteValue(Optional<T> valueOpt) throws OpenemsException
      Description copied from interface: ModbusElement
      Sets a value that should be written to the Modbus device.
      Parameters:
      valueOpt - the Optional value
      Throws:
      OpenemsException - on error
    • toByteBuffer

      protected abstract ByteBuffer toByteBuffer(ByteBuffer buff, T value)
      Converts the current OpenemsType to a 8-byte ByteBuffer.
      Parameters:
      buff - the target ByteBuffer
      value - the value
      Returns:
      the ByteBuffer
    • wordOrder

      public final E wordOrder(WordOrder wordOrder)
      Sets the Word-Order. Default is "MWSLSW" - "Most Significant Word; Least Significant Word". See http://www.simplymodbus.ca/FAQ.htm#Order.
      Parameters:
      wordOrder - the WordOrder
      Returns:
      myself