diff options
author | Andrew O'Doherty <andrew.odoherty@qt.io> | 2018-09-11 14:49:59 +0200 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@qt.io> | 2018-09-13 08:19:56 +0000 |
commit | 071ac7c6b3b20f738c3c8d016f30cc50bd6cae71 (patch) | |
tree | cca168ac22546e4d13b086a00015c3a88e38cbaf /src/knx/netip/qknxnetiproutingsystembroadcast.cpp | |
parent | 9b3df740acb61e68ce1cb061153b2684858cd3c4 (diff) |
Add d-pointers to new builder classes
Change-Id: I303795f8b1cf627986588541db129ce2bfb787ca
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
Diffstat (limited to 'src/knx/netip/qknxnetiproutingsystembroadcast.cpp')
-rw-r--r-- | src/knx/netip/qknxnetiproutingsystembroadcast.cpp | 44 |
1 files changed, 41 insertions, 3 deletions
diff --git a/src/knx/netip/qknxnetiproutingsystembroadcast.cpp b/src/knx/netip/qknxnetiproutingsystembroadcast.cpp index 2bbf250..6b3f7fe 100644 --- a/src/knx/netip/qknxnetiproutingsystembroadcast.cpp +++ b/src/knx/netip/qknxnetiproutingsystembroadcast.cpp @@ -85,6 +85,15 @@ QT_BEGIN_NAMESPACE \internal */ +class QKnxNetIpRoutingSystemBroadcastBuilderPrivate : public QSharedData +{ +public: + QKnxNetIpRoutingSystemBroadcastBuilderPrivate() = default; + ~QKnxNetIpRoutingSystemBroadcastBuilderPrivate() = default; + + QKnxLinkLayerFrame m_llf; +}; + namespace QKnxPrivate { static bool isCemiValid(const QKnxLinkLayerFrame &linkFrame) @@ -161,6 +170,18 @@ QKnxNetIpRoutingSystemBroadcastProxy::Builder QKnxNetIpRoutingSystemBroadcastPro */ /*! + Creates a new empty system broadcast frame builder object. +*/ +QKnxNetIpRoutingSystemBroadcastProxy::Builder::Builder() + : d_ptr(new QKnxNetIpRoutingSystemBroadcastBuilderPrivate) +{} + +/*! + Destroys the object and frees any allocated resources. +*/ +QKnxNetIpRoutingSystemBroadcastProxy::Builder::~Builder() = default; + +/*! Sets the cEMI frame containing the routing system broadcast message to \a cemi. */ @@ -168,7 +189,7 @@ QKnxNetIpRoutingSystemBroadcastProxy::Builder & QKnxNetIpRoutingSystemBroadcastProxy::Builder::setCemi(const QKnxLinkLayerFrame &cemi) { if (QKnxPrivate::isCemiValid(cemi)) - m_llf = cemi; + d_ptr->m_llf = cemi; return *this; } @@ -177,9 +198,26 @@ QKnxNetIpRoutingSystemBroadcastProxy::Builder & */ QKnxNetIpFrame QKnxNetIpRoutingSystemBroadcastProxy::Builder::create() const { - if (!m_llf.isValid()) + if (!d_ptr->m_llf.isValid()) return {}; - return { QKnxNetIp::ServiceType::RoutingSystemBroadcast, m_llf.bytes() }; + return { QKnxNetIp::ServiceType::RoutingSystemBroadcast, d_ptr->m_llf.bytes() }; +} + +/*! + Constructs a copy of \a other. +*/ +QKnxNetIpRoutingSystemBroadcastProxy::Builder::Builder(const Builder &other) + : d_ptr(other.d_ptr) +{} + +/*! + Assigns the specified \a other to this object. +*/ +QKnxNetIpRoutingSystemBroadcastProxy::Builder & + QKnxNetIpRoutingSystemBroadcastProxy::Builder::operator=(const Builder &other) +{ + d_ptr = other.d_ptr; + return *this; } QT_END_NAMESPACE |