MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ get_metadata()

std::optional< FileMetadata > MayaFlux::IO::ModelReader::get_metadata ( ) const
overridevirtual

Get metadata from the open file.

Returns
File metadata or nullopt if no file is open.

Implements MayaFlux::IO::FileReader.

Definition at line 298 of file ModelReader.cpp.

299{
300 if (!m_impl->scene) {
301 return std::nullopt;
302 }
303
304 FileMetadata meta;
305 meta.format = "model";
306 meta.mime_type = "model/gltf-binary"; // reasonable default; format-agnostic
307
308 const aiScene* s = m_impl->scene;
309 meta.attributes["mesh_count"] = static_cast<uint64_t>(s->mNumMeshes);
310 meta.attributes["material_count"] = static_cast<uint64_t>(s->mNumMaterials);
311 meta.attributes["animation_count"] = static_cast<uint64_t>(s->mNumAnimations);
312 meta.attributes["texture_count"] = static_cast<uint64_t>(s->mNumTextures);
313
314 return meta;
315}
std::unique_ptr< Impl > m_impl

References MayaFlux::IO::FileMetadata::attributes, MayaFlux::IO::FileMetadata::format, m_impl, and MayaFlux::IO::FileMetadata::mime_type.