/* Generated from Extensions for 'extended' examples */

#include "types.h"

namespace Example
{
 bool operator==(const ContactHat& v1, const ContactHat& v2)
{
    return ((v1.contact == v2.contact)
            && (v1.color == v2.color)
            && (v1.style == v2.style)
            && (v1.properties == v2.properties)
            );
}

 QDBusArgument& operator<<(QDBusArgument& arg, const ContactHat& val)
{
    arg.beginStructure();
    arg << val.contact << val.color << val.style << val.properties;
    arg.endStructure();
    return arg;
}

 const QDBusArgument& operator>>(const QDBusArgument& arg, ContactHat& val)
{
    arg.beginStructure();
    arg >> val.contact >> val.color >> val.style >> val.properties;
    arg.endStructure();
    return arg;
}

void registerTypes()
{
    static bool registered = false;
    if (registered)
        return;
    registered = true;

    qDBusRegisterMetaType<Example::ContactHat>();
    qDBusRegisterMetaType<Example::ContactHatList>();
    qDBusRegisterMetaType<Example::UIntList>();
}
}
