On Wednesday 14 May 2014 12:50:18 Aaron J. Seigo wrote: > * one entry at a time, serialized > * no changing data once put there > * no getting the data back out > > the class would then just batch up data into its QByteArray and then shunt > it across the wire when needed. no middle men, no 100s of 1000s of objects > and QLists and << operators. just an API sth like: > > startEntry > addField > endEntry
I like this idea very much. Mark: see, it's quite close to what we were discussing by email recently. And I hadn't read this yet :) Note how this is not specific to the ioslave using QT_STATBUFF :) > internally it could either batch up the fields and then stream them out > when endEntry is called, or (and this is what i would do personally) on > startEntry it would set up the header but with bad data (e.g. field count > of 0) and then start appending the fields as they come in and increment a > field count variable. when endEntry is called, update the header with the > right field count. Ah but batching requires a vector again. Or you meant writing into a bytearray and coming back to update the count - that would rely on QDataStream internals I'm afraid (how to know the offset....). But the alternative is to replace the field count with an "end of fields" special field. -- David Faure, fa...@kde.org, http://www.davidfaure.fr Working on KDE Frameworks 5 _______________________________________________ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel