Struct caminos_lib::Packet
source · [−]pub struct Packet {
pub size: usize,
pub routing_info: RefCell<RoutingInfo>,
pub message: Rc<Message>,
pub index: usize,
pub cycle_into_network: RefCell<usize>,
pub extra: RefCell<Option<PacketExtraInfo>>,
}
Expand description
A portion of a message. They are divided into phits. All phits must go through the same queues without phits of other packets in between.
Fields
size: usize
Number of phits
routing_info: RefCell<RoutingInfo>
Information for the routing
message: Rc<Message>
The message to what this packet belongs.
index: usize
position inside the message
cycle_into_network: RefCell<usize>
The cycle when the packet has touched the first router. This is, the packet leading phit has been inserted into a router. We set it to 0 if the packet has not entered the network yet.
extra: RefCell<Option<PacketExtraInfo>>
Extra info tracked for some special statistics.
Trait Implementations
sourceimpl Quantifiable for Packet
impl Quantifiable for Packet
sourcefn total_memory(&self) -> usize
fn total_memory(&self) -> usize
Get the total memory currently being employed by the implementing type. Both stack and heap.
sourcefn print_memory_breakdown(&self)
fn print_memory_breakdown(&self)
Prints by stdout how much memory is used per component.
sourcefn forecast_total_memory(&self) -> usize
fn forecast_total_memory(&self) -> usize
Get an estimation on how much memory the type could reach during the simulation.
Auto Trait Implementations
impl !RefUnwindSafe for Packet
impl !Send for Packet
impl !Sync for Packet
impl Unpin for Packet
impl UnwindSafe for Packet
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more