载入中...
搜索中...
未找到
ImageImporter.cpp
浏览该文件的文档.
22Result<ImageInfo> inspectImage(std::span<const std::uint8_t> bytes, std::uint64_t maximumDecodedBytes) {
29 if (bytes.size() >= 4 && ((bytes[0] == 'I' && bytes[1] == 'I') || (bytes[0] == 'M' && bytes[1] == 'M'))) {
71 DiagnosticCode::ParseError, "JPEG dimensions are missing or malformed", {}, {}, "asset.import"));
74 DiagnosticCode::Unsupported, "image importer supports PNG, JPEG and admitted TIFF/TGA encoded sources", {}, {},
119 if (!encodedDefinition) return Result<PreparedAssetImport>::failure(encodedDefinition.status());
135 detail::sha256(std::span<const std::uint8_t>(reinterpret_cast<const std::uint8_t*>(definitionText.data()),
Tool-side image and glTF importers producing canonical .eva candidates.
Safe source-image conversion to runtime EVIMG payloads.
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
Result< std::string > toJson() const
Serialize this value as deterministic compact JSON.
Definition Value.cpp:67
Id128 child(std::string_view role) const noexcept
Derives a deterministic child UUID for a hierarchical identity.
Definition Identity.h:192
Result< TgaPixels > decodeTgaRgba8(std::span< const std::uint8_t > b, std::uint64_t budget)
Decode true-color 24/32-bit raw or RLE TGA with bounded allocation.
Definition SourceTga.cpp:7
Result< TiffPixels > decodeTiffRgba8(std::span< const std::uint8_t > bytes, std::uint64_t maximumDecodedBytes)
Decode bounded strip-based unsigned RGB TIFF (8/16 bits, raw/LZW/Deflate).
Definition SourceTiff.cpp:81
EVENGINE_API_PLATFORM Result< void > finalizeImportReport(PreparedAssetImport &prepared, const ImportPackageIdentity &package, std::string_view sourceEngine, std::string_view sourceVersion, Value::Object options={})
Append the deterministic mandatory import report and bind it from provenance.
Definition ImportReport.cpp:21
Result< asset::EvaManifest > baseManifest(const ImportPackageIdentity &package, std::string_view importer)
Base manifest.
Definition ImportCommon.h:31
Definition AssetImporter.h:14
@ Translated
EVENGINE_API_PLATFORM Result< PreparedAssetImport > prepareImageImport(const ImageImportRequest &request)
Decode image metadata and prepare one canonical eve.image source asset.
Definition ImageImporter.cpp:80
Result< CookedCanonicalImage > cookCanonicalImageRgba8(std::span< const std::uint8_t > definition, std::span< const std::uint8_t > encodedSource, std::uint64_t maximumDecodedBytes)
Decode image/2 base images or image/3 explicit linear RGBA8 mip chains into bounded EVIMG.
Definition CanonicalImageCook.cpp:163
@ InvalidArgument
@ Unsupported
@ ParseError
detail::StrongUint64< detail::SchemaVersionTag > SchemaVersion
Persistent data-format version; not a runtime replacement generation.
Definition SchemaVersion.h:13
std::uint64_t maximumDecodedBytes
Definition AssetImporter.h:19
std::uint64_t maximumSourceBytes
Definition AssetImporter.h:18
std::uint32_t maximumStringBytes
Definition AssetImporter.h:23
ImportPackageIdentity package
Definition AssetImporter.h:55
Untrusted encoded image input and its explicit semantic settings.
Definition AssetImporter.h:41
PersistentId packageId
Definition AssetImporter.h:34
Owning, validated source archive candidate not yet published to disk/database.
Definition AssetImporter.h:90
std::vector< ImportFinding > findings
Definition AssetImporter.h:93
std::vector< asset::EvaArchiveEntry > entries
Definition AssetImporter.h:92
std::vector< ImportSourceMapping > sourceMappings
Definition AssetImporter.h:94
asset::EvaManifest manifest
Definition AssetImporter.h:91