--- libgig/trunk/ChangeLog 2017/04/16 23:20:30 3117 +++ libgig/trunk/ChangeLog 2017/05/10 21:17:10 3169 @@ -4,6 +4,9 @@ - using now native integer size where appropriate - fixed minor issues with man pages (patch by Debian maintainer) - fixed various spelling mistakes (patch by Debian maintainer) + - Added new "Serialization" framework (and equally named namespace) + which allows to serialize and deserialize native C++ objects + in a portable, easy and flexible way. * src/gig.cpp, src/gig.h: - fixed bug in Script::SetGroup: the script chunk wasn't moved @@ -26,6 +29,10 @@ - Fixed CRC checksums being wrong sometimes. - Fix: method File::AddContentOf() did not clone script groups and scripts of passed original file. + - Added support for serializing & deserializing DimensionRegion + objects (and crossfade_t and leverage_ctrl_t objects). + - Added enum reflection API functions for retrieving enum declaration type + information at runtime (countEnum(), enumKey(), enumKeys(), enumValue()). * src/DLS.cpp, src/DLS.h: - Sample: wave pool offsets are now 64 bits (to allow support for files @@ -40,6 +47,25 @@ - when saving a modified, grown RIFF file, the temporary file size during Save() operation will no longer be larger than the final grown file size + * src/Serialization.cpp, src/Serialization.h: + - Archive: Added method isModified(). + - Archive: Added method setAutoValue(). + - Archive: Added method setIntValue(). + - Archive: Added method setRealValue(). + - Archive: Added method setBoolValue(). + - Archive: Added method setEnumValue(). + - Archive: Added method valueAsString(). + - Archive::rawData(): Automatically re-encode new raw data stream if + archive had been modified (i.e. by remove(), setAutoValue(), etc.). + - Object: Added method memberByUID(). + - Object: remove() method is now protected. + - Archive: Added method removeMember(). + - Archive: Added methods name() and setName(). + - Archive: Added methods comment() and setComment(). + - Archive: Added methods timeStampCreated(), timeStampModified(), + dateTimeCreated() and dateTimeModified(). + - Archive: Added methods valueAsInt(), valueAsReal() and valueAsBool(). + * src/tools/akaidump.cpp, src/tools/akaiextract.cpp: - improved output of non-ascii characters in usage messages - fixed printf format strings