29 auto PreReadOffset = OffsetPtr;
31 if (OffsetPtr == PreReadOffset)
33 std::make_error_code(std::errc::invalid_argument),
34 "Failed reading version from file header at offset %" PRId64
".",
37 PreReadOffset = OffsetPtr;
38 FileHeader.
Type = HeaderExtractor.
getU16(&OffsetPtr);
39 if (OffsetPtr == PreReadOffset)
41 std::make_error_code(std::errc::invalid_argument),
42 "Failed reading file type from file header at offset %" PRId64
".",
45 PreReadOffset = OffsetPtr;
47 if (OffsetPtr == PreReadOffset)
49 std::make_error_code(std::errc::invalid_argument),
50 "Failed reading flag bits from file header at offset %" PRId64
".",
55 PreReadOffset = OffsetPtr;
57 if (OffsetPtr == PreReadOffset)
59 std::make_error_code(std::errc::invalid_argument),
60 "Failed reading cycle frequency from file header at offset %" PRId64
70 return std::move(FileHeader);