From 6db06f117ae362041cb3b6ae484a8bd887484fb9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Terziman?= Date: Tue, 23 Aug 2016 11:59:49 +0200 Subject: [PATCH] In metadata: added method to append new metadata to structure --- include/assimp/metadata.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/include/assimp/metadata.h b/include/assimp/metadata.h index 814d89272..0cc27a802 100644 --- a/include/assimp/metadata.h +++ b/include/assimp/metadata.h @@ -192,7 +192,28 @@ struct aiMetadata } } + template + inline void Add( const std::string& key, const T& value ) + { + aiString* new_keys = new aiString[mNumProperties + 1]; + aiMetadataEntry* new_values = new aiMetadataEntry[mNumProperties + 1]; + for(unsigned int i = 0; i < mNumProperties; ++i) + { + new_keys[i] = mKeys[i]; + new_values[i] = mValues[i]; + } + + delete mKeys; + delete mValues; + + mKeys = new_keys; + mValues = new_values; + + mNumProperties++; + + Set(mNumProperties - 1, key, value); + } template inline void Set( unsigned index, const std::string& key, const T& value )