diff --git a/src/blackmisc/dbus.h b/src/blackmisc/dbus.h index 67bd693f4..639ed7633 100644 --- a/src/blackmisc/dbus.h +++ b/src/blackmisc/dbus.h @@ -160,6 +160,32 @@ const QDBusArgument &operator >>(const QDBusArgument &arg, E &value) return arg; } +/*! + * Operator for streaming QFlags to QDBusArgument. + */ +template +QDBusArgument &operator <<(QDBusArgument &arg, const QFlags &value) +{ + arg.beginStructure(); + arg << static_cast::Int>(value); + arg.endStructure(); + return arg; +} + +/*! + * Operator for streaming QFlags from QDBusArgument. + */ +template +const QDBusArgument &operator >>(const QDBusArgument &arg, QFlags &value) +{ + typename QFlags::Int temp = 0; + arg.beginStructure(); + arg >> temp; + arg.endStructure(); + value = static_cast>(temp); + return arg; +} + /*! * Operator for streaming pairs to QDBusArgument. */ diff --git a/src/blackmisc/simulation/matchinglog.h b/src/blackmisc/simulation/matchinglog.h index 0d45b55e3..dabebf758 100644 --- a/src/blackmisc/simulation/matchinglog.h +++ b/src/blackmisc/simulation/matchinglog.h @@ -46,28 +46,4 @@ Q_DECLARE_METATYPE(BlackMisc::Simulation::MatchingLog) Q_DECLARE_METATYPE(BlackMisc::Simulation::MatchingLogFlag) Q_DECLARE_OPERATORS_FOR_FLAGS(BlackMisc::Simulation::MatchingLog) -/*! - * Operator for streaming enums to QDBusArgument. - */ -inline QDBusArgument &operator <<(QDBusArgument &arg, const BlackMisc::Simulation::MatchingLog &value) -{ - arg.beginStructure(); - arg << static_cast(value); - arg.endStructure(); - return arg; -} - -/*! - * Operator for streaming enums from QDBusArgument. - */ -inline const QDBusArgument &operator >>(const QDBusArgument &arg, BlackMisc::Simulation::MatchingLog &value) -{ - int temp; - arg.beginStructure(); - arg >> temp; - arg.endStructure(); - value = static_cast(temp); - return arg; -} - #endif // guard diff --git a/src/blackmisc/simulation/reverselookup.h b/src/blackmisc/simulation/reverselookup.h index 3dc305c29..4501bebee 100644 --- a/src/blackmisc/simulation/reverselookup.h +++ b/src/blackmisc/simulation/reverselookup.h @@ -34,28 +34,4 @@ Q_DECLARE_METATYPE(BlackMisc::Simulation::ReverseLookupLogging) Q_DECLARE_METATYPE(BlackMisc::Simulation::ReverseLookupLoggingFlag) Q_DECLARE_OPERATORS_FOR_FLAGS(BlackMisc::Simulation::ReverseLookupLogging) -/*! - * Operator for streaming enums to QDBusArgument. - */ -inline QDBusArgument &operator <<(QDBusArgument &arg, const BlackMisc::Simulation::ReverseLookupLogging &value) -{ - arg.beginStructure(); - arg << static_cast(value); - arg.endStructure(); - return arg; -} - -/*! - * Operator for streaming enums from QDBusArgument. - */ -inline const QDBusArgument &operator >>(const QDBusArgument &arg, BlackMisc::Simulation::ReverseLookupLogging &value) -{ - int temp; - arg.beginStructure(); - arg >> temp; - arg.endStructure(); - value = static_cast(temp); - return arg; -} - #endif // guard