Builder Class

(QKnxNetIpCrdProxy::Builder)

The QKnxNetIpCrdProxy::Builder class creates a KNXnet/IP connection response data (CDR) structure. More...

Header: #include <QKnxNetIpCrdProxy>
qmake: QT += knx

Public Functions

QKnxNetIpCrd create() const
Builder &setAdditionalData(const QKnxByteArray &additionalData)
Builder &setConnectionType(QKnxNetIp::ConnectionType type)
Builder &setIndividualAddress(const QKnxAddress &address)

Detailed Description

The QKnxNetIpCrdProxy::Builder class creates a KNXnet/IP connection response data (CDR) structure.

A KNXnet/IP CRD structure contains the data block returned with the connect response QKnxNetIpFrame.

The common way to create such a CRD structure is:

auto crd = QKnxNetIpCrdProxy::builder()
    .setConnectionType(QKnxNetIp::ConnectionType::Tunnel)
    .setIndividualAddress(QKnxAddress::createIndividual(1, 1, 1))
    .create();

Member Function Documentation

QKnxNetIpCrd Builder::create() const

Creates and returns a KNXnet/IP CRD structure.

Note: The returned structure may be invalid depending on the values used during setup.

See also isValid().

Builder &Builder::setAdditionalData(const QKnxByteArray &additionalData)

Sets the additional data to additionalData and returns a reference to the builder.

The current KNX specification foresees additional data only in the case of tunneling.

See also setIndividualAddress().

Builder &Builder::setConnectionType(QKnxNetIp::ConnectionType type)

Sets the connection type to type and returns a reference to the builder.

Does nothing if type is not QKnx::NetIp::ConnectionType.

Builder &Builder::setIndividualAddress(const QKnxAddress &address)

Sets the additional data to the individual address address and returns a reference to the builder.

Does nothing if address is invalid or not an individual address.

See also setAdditionalData().

© 2018 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.