diff --git a/src/runtime2/communication.rs b/src/runtime2/communication.rs index 335f4c6d0864416a0135f0c9522eb433f19f3328..e7b2d674b32c4330a5e07c5cb859aadfa740735e 100644 --- a/src/runtime2/communication.rs +++ b/src/runtime2/communication.rs @@ -1,4 +1,5 @@ use crate::protocol::eval::*; +use crate::protocol::eval::value::ValueId; use super::runtime::*; use super::component::*; @@ -31,6 +32,7 @@ pub struct DataMessage { pub data_header: MessageDataHeader, pub sync_header: MessageSyncHeader, pub content: ValueGroup, + pub ports: Vec, } #[derive(Debug)] @@ -61,6 +63,14 @@ pub struct MessageDataHeader { pub target_port: PortId, } +#[derive(Debug)] +pub struct TransmittedPort { + location: ValueId, // within `content` + messages: Vec, // owned by previous component + peer_comp: CompId, + peer_port: PortId, +} + // ----------------------------------------------------------------------------- // Sync messages // -----------------------------------------------------------------------------