public ItemValue[] SyncReadItems(DataSource source, int[] serverIds) { if (@group == null) { throw new ObjectDisposedException("Group"); } serverIds.ArgumentNotNull("serverIds"); if (serverIds.Length == 0) { return(new ItemValue[0]); } IntPtr dataPtr; IntPtr errorsPtr; syncIO.Read(source, (uint)serverIds.Length, serverIds, out dataPtr, out errorsPtr); return(ItemValueReader.Read(serverIds.Length, dataPtr, errorsPtr)); }
public void OnReadComplete(int transactionId, int groupId, int quality, int error, uint count, int[] clientIds, IntPtr values, short[] qualities, long[] timeStamps, int[] errors) { if (@group.ClientId != groupId) { return; } var handler = @group.readCompleteHandlers; if (handler != null) { handler(@group, new DataChangeEventArgs( groupId, transactionId, quality, error, ItemValueReader.Read(clientIds, values, qualities, timeStamps, errors))); } }