public bool WaitForSegmentAck(BacnetAddress adr, byte invoke_id, Segmentation segmentation, int timeout) { bool signaled = m_last_segment_ack.Wait(adr, invoke_id, timeout); if (signaled) { segmentation.sequence_number = (byte)((m_last_segment_ack.sequence_number + 1) % 256); segmentation.window_size = m_last_segment_ack.window_size; } return signaled; }