private void write(DataItem aItem) { mWriteRequests = mWriteRequests + 1; byte[] lValue = aItem.write(mClient); if (lValue != null && aItem.mGroup != 0) { var lGroupDsc = mGroups[aItem.mGroup - 1]; int lIndex = aItem.Byte - lGroupDsc.mStart; if (aItem.DataType == EWordlen.S7_Bit) { if (lValue[0] == 1) { lGroupDsc.mBuffer[lIndex] = (byte)(lGroupDsc.mBuffer[lIndex] | (1 << aItem.Bit)); } else { lGroupDsc.mBuffer[lIndex] = (byte)(lGroupDsc.mBuffer[lIndex] & ~(1 << aItem.Bit)); } } else { for (int i = lIndex; i < lValue.Length; i++) { lGroupDsc.mBuffer[i] = lValue[i]; } } } }
private void write(DataItem aItem) { mWriteRequests = mWriteRequests + 1; aItem.write(mClient); }