diff --git a/src/runtime2/communication.rs b/src/runtime2/communication.rs index cebb7b67d319eb1fb2106c9ac06857d5a575659f..7be0b8b8ec97bb4981dccfaab90c50de37fcba94 100644 --- a/src/runtime2/communication.rs +++ b/src/runtime2/communication.rs @@ -176,11 +176,17 @@ pub enum ControlMessageContent { Ack, BlockPort(PortId), UnblockPort(PortId), - ClosePort(PortId), + ClosePort(ControlMessageClosePort), PortPeerChangedBlock(PortId), PortPeerChangedUnblock(PortId, CompId), } +#[derive(Debug)] +pub struct ControlMessageClosePort { + pub port_to_close: PortId, // ID of the receiving port + pub closed_in_sync_round: bool, // needed to ensure correct handling of errors +} + // ----------------------------------------------------------------------------- // Messages (generic) // -----------------------------------------------------------------------------