/// <summary>Performs a common Write-repeatstart-read command response operation</summary>
 /// <param name="WriteBuffer">Buffer containing data to write</param>
 /// <param name="ReadBuffer">
 ///     Buffer to receive data. The Length property of ReadBuffer determines the number of bytes to
 ///     read
 /// </param>
 /// <remarks>
 ///     Many I2C devices have a simple command response protocol of some sort
 ///     this method simplifies the implementation of device specific drivers
 ///     by wrapping up the I2CTransaction creation and timeout detection etc.
 ///     to support a simple command/response type of protocol. It creates a write
 ///     transactionand a read transaction with a repeat-start condition in between
 ///     to maintain control of the bus forthe entire operation.
 /// </remarks>
 /// <exception cref="T:System.IO.IOException">Operation failed to complete</exception>
 protected void WriteRead(byte[] WriteBuffer, byte[] ReadBuffer)
 {
     Bus.WriteRead(Config, WriteBuffer, ReadBuffer, Timeout);
 }