refs #413 Macros to ease the task of disambiguating inherited members when using mixins in an inheritance hierarchy.

This commit is contained in:
Mathew Sutcliffe
2015-05-03 23:15:02 +01:00
parent 36a2e1a2bb
commit 68ebcd7b8d
10 changed files with 89 additions and 153 deletions

View File

@@ -31,13 +31,7 @@ namespace BlackMisc
//! Base type
using base_type = CModulator<CAdfSystem>;
using Mixin::MetaType<CAdfSystem>::registerMetadata;
using Mixin::MetaType<CAdfSystem>::getMetaTypeId;
using Mixin::MetaType<CAdfSystem>::isA;
using Mixin::MetaType<CAdfSystem>::toCVariant;
using Mixin::MetaType<CAdfSystem>::toQVariant;
using Mixin::MetaType<CAdfSystem>::convertFromCVariant;
using Mixin::MetaType<CAdfSystem>::convertFromQVariant;
BLACKMISC_DECLARE_USING_MIXIN_METATYPE(CAdfSystem)
//! Default constructor
CAdfSystem() = default;

View File

@@ -39,23 +39,11 @@ namespace BlackMisc
//! Base type
using base_type = PhysicalQuantities::CLength;
using Mixin::MetaTypeAndQList<CAltitude>::registerMetadata;
using Mixin::MetaTypeAndQList<CAltitude>::getMetaTypeId;
using Mixin::MetaTypeAndQList<CAltitude>::isA;
using Mixin::MetaTypeAndQList<CAltitude>::toCVariant;
using Mixin::MetaTypeAndQList<CAltitude>::toQVariant;
using Mixin::MetaTypeAndQList<CAltitude>::convertFromCVariant;
using Mixin::MetaTypeAndQList<CAltitude>::convertFromQVariant;
using Mixin::String<CAltitude>::toQString;
using Mixin::String<CAltitude>::toFormattedQString;
using Mixin::String<CAltitude>::toStdString;
using Mixin::String<CAltitude>::stringForStreaming;
using Mixin::DBusByTuple<CAltitude>::marshallToDbus;
using Mixin::DBusByTuple<CAltitude>::unmarshallFromDbus;
using Mixin::JsonByTuple<CAltitude>::toJson;
using Mixin::JsonByTuple<CAltitude>::convertFromJson;
using Mixin::Icon<CAltitude>::toIcon;
using Mixin::Icon<CAltitude>::toPixmap;
BLACKMISC_DECLARE_USING_MIXIN_METATYPE_AND_QLIST(CAltitude)
BLACKMISC_DECLARE_USING_MIXIN_STRING(CAltitude)
BLACKMISC_DECLARE_USING_MIXIN_DBUS(CAltitude)
BLACKMISC_DECLARE_USING_MIXIN_JSON(CAltitude)
BLACKMISC_DECLARE_USING_MIXIN_ICON(CAltitude)
/*!
* Enum type to distinguish between MSL and AGL

View File

@@ -30,13 +30,7 @@ namespace BlackMisc
//! Base type
using base_type = CModulator<CComSystem>;
using Mixin::MetaType<CComSystem>::registerMetadata;
using Mixin::MetaType<CComSystem>::getMetaTypeId;
using Mixin::MetaType<CComSystem>::isA;
using Mixin::MetaType<CComSystem>::toCVariant;
using Mixin::MetaType<CComSystem>::toQVariant;
using Mixin::MetaType<CComSystem>::convertFromCVariant;
using Mixin::MetaType<CComSystem>::convertFromQVariant;
BLACKMISC_DECLARE_USING_MIXIN_METATYPE(CComSystem)
//! Channel spacing frequency
enum ChannelSpacing

View File

@@ -38,21 +38,10 @@ namespace BlackMisc
//! Base type
using base_type = PhysicalQuantities::CAngle;
using Mixin::MetaTypeAndQList<CHeading>::registerMetadata;
using Mixin::MetaTypeAndQList<CHeading>::getMetaTypeId;
using Mixin::MetaTypeAndQList<CHeading>::isA;
using Mixin::MetaTypeAndQList<CHeading>::toCVariant;
using Mixin::MetaTypeAndQList<CHeading>::toQVariant;
using Mixin::MetaTypeAndQList<CHeading>::convertFromCVariant;
using Mixin::MetaTypeAndQList<CHeading>::convertFromQVariant;
using Mixin::String<CHeading>::toQString;
using Mixin::String<CHeading>::toFormattedQString;
using Mixin::String<CHeading>::toStdString;
using Mixin::String<CHeading>::stringForStreaming;
using Mixin::DBusByTuple<CHeading>::marshallToDbus;
using Mixin::DBusByTuple<CHeading>::unmarshallFromDbus;
using Mixin::JsonByTuple<CHeading>::toJson;
using Mixin::JsonByTuple<CHeading>::convertFromJson;
BLACKMISC_DECLARE_USING_MIXIN_METATYPE_AND_QLIST(CHeading)
BLACKMISC_DECLARE_USING_MIXIN_STRING(CHeading)
BLACKMISC_DECLARE_USING_MIXIN_DBUS(CHeading)
BLACKMISC_DECLARE_USING_MIXIN_JSON(CHeading)
//! Enum type to distinguish between true north and magnetic north
enum ReferenceNorth

View File

@@ -30,13 +30,7 @@ namespace BlackMisc
//! Base type
using base_type = CModulator<CNavSystem>;
using Mixin::MetaType<CNavSystem>::registerMetadata;
using Mixin::MetaType<CNavSystem>::getMetaTypeId;
using Mixin::MetaType<CNavSystem>::isA;
using Mixin::MetaType<CNavSystem>::toCVariant;
using Mixin::MetaType<CNavSystem>::toQVariant;
using Mixin::MetaType<CNavSystem>::convertFromCVariant;
using Mixin::MetaType<CNavSystem>::convertFromQVariant;
BLACKMISC_DECLARE_USING_MIXIN_METATYPE(CNavSystem)
//! Default constructor
CNavSystem() = default;

View File

@@ -39,21 +39,10 @@ namespace BlackMisc
//! Base type
using base_type = PhysicalQuantities::CAngle;
using Mixin::MetaTypeAndQList<CTrack>::registerMetadata;
using Mixin::MetaTypeAndQList<CTrack>::getMetaTypeId;
using Mixin::MetaTypeAndQList<CTrack>::isA;
using Mixin::MetaTypeAndQList<CTrack>::toCVariant;
using Mixin::MetaTypeAndQList<CTrack>::toQVariant;
using Mixin::MetaTypeAndQList<CTrack>::convertFromCVariant;
using Mixin::MetaTypeAndQList<CTrack>::convertFromQVariant;
using Mixin::String<CTrack>::toQString;
using Mixin::String<CTrack>::toFormattedQString;
using Mixin::String<CTrack>::toStdString;
using Mixin::String<CTrack>::stringForStreaming;
using Mixin::DBusByTuple<CTrack>::marshallToDbus;
using Mixin::DBusByTuple<CTrack>::unmarshallFromDbus;
using Mixin::JsonByTuple<CTrack>::toJson;
using Mixin::JsonByTuple<CTrack>::convertFromJson;
BLACKMISC_DECLARE_USING_MIXIN_METATYPE_AND_QLIST(CTrack)
BLACKMISC_DECLARE_USING_MIXIN_STRING(CTrack)
BLACKMISC_DECLARE_USING_MIXIN_DBUS(CTrack)
BLACKMISC_DECLARE_USING_MIXIN_JSON(CTrack)
/*!
* Enum type to distinguish between true north and magnetic north