Making your objects serializable with QVariant

Now that we implemented the logic in our business classes, we have to think about what we are going to serialize and how we are going to do it. The user interacts with a Track class that contains all the data to be recorded and played back.

Starting from here, we can assume that the object to be serialized is Track, which in turn should somehow bring along its mSoundEvents containing a list of SoundEvent instances. To achieve this, we will rely heavily on the QVariant class.

You might have worked with QVariant before. It is a generic placeholder for any primitive type (charintdouble, and so on) but also complex types (QStringQDateQPoint, and many more).

Note

The complete list of QVariant supported ...

Get Mastering Qt 5 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.