jagua_rs/probs/bpp/io/
export.rs1use crate::Instant;
2use crate::io::export::export_layout_snapshot;
3use crate::probs::bpp::entities::{BPInstance, BPSolution};
4use crate::probs::bpp::io::ext_repr::ExtBPSolution;
5
6#[must_use]
8pub fn export(instance: &BPInstance, solution: &BPSolution, epoch: Instant) -> ExtBPSolution {
9 ExtBPSolution {
10 cost: solution.cost(instance),
11 layouts: solution
12 .layout_snapshots
13 .values()
14 .map(|sl| export_layout_snapshot(sl, instance))
15 .collect(),
16 run_time_sec: solution.time_stamp.duration_since(epoch).as_secs(),
17 density: solution.density(instance),
18 }
19}