Validate PPI project layout

This commit is contained in:
2026-06-01 12:38:21 +02:00
parent 37854ea8b9
commit 2da247f0fb
9 changed files with 146 additions and 21 deletions

View File

@@ -34,7 +34,20 @@ struct PpiHeaderInfo {
PpiThumbnailInfo thumbnail;
};
struct PpiProjectLayout {
PpiHeaderInfo header;
std::size_t thumbnail_offset = 0;
std::size_t thumbnail_bytes = 0;
std::size_t body_offset = 0;
std::size_t body_bytes = 0;
};
[[nodiscard]] pp::foundation::Result<PpiHeaderInfo> parse_ppi_header(
std::span<const std::byte> bytes) noexcept;
[[nodiscard]] pp::foundation::Result<std::size_t> ppi_thumbnail_byte_size(PpiThumbnailInfo thumbnail) noexcept;
[[nodiscard]] pp::foundation::Result<PpiProjectLayout> parse_ppi_project_layout(
std::span<const std::byte> bytes) noexcept;
}