QKnxNetIpRoutingSystemBroadcastProxy Class
The QKnxNetIpRoutingSystemBroadcastProxy class provides the means to introspect a generic routing system broadcast QKnxNetIpFrame and to create a KNXnet/IP frame based on the information. More...
Header: | #include <QKnxNetIpRoutingSystemBroadcastProxy> |
qmake: | QT += knx |
Since: | Qt 5.12 |
This class was introduced in Qt 5.12.
Public Types
class | Builder |
Public Functions
QKnxNetIpRoutingSystemBroadcastProxy(const QKnxNetIpFrame &frame) | |
QKnxLinkLayerFrame | cemi() const |
bool | isValid() const |
Static Public Members
QKnxNetIpRoutingSystemBroadcastProxy::Builder | builder() |
Detailed Description
Routing system broadcast messages are useful in the situation when KNXnet/IP devices configured on different multicast addresses and secure KNXnet/IP devices configured on different backbone keys are not able to communicate between each other.
Note: When using QKnxNetIpRoutingSystemBroadcastProxy, care must be taken to ensure that the referenced KNXnet/IP frame outlives the proxy on all code paths, lest the proxy ends up referencing deleted data.
The following code sample illustrates how to introspect a routing system broadcast frame:
auto netIpFrame = QKnxNetIpFrame::fromBytes(...); const QKnxNetIpRoutingSystemBroadcastProxy proxy(netIpFrame); if (!proxy.isValid()) return; auto linkFrame = proxy.cemi();
See also builder(), QKnxNetIpRoutingSystemBroadcastProxy, and Qt KNXnet/IP Connection Classes.
Member Function Documentation
QKnxNetIpRoutingSystemBroadcastProxy::QKnxNetIpRoutingSystemBroadcastProxy(const QKnxNetIpFrame &frame)
Constructs a proxy object to read the routing system broadcast carried by the specified KNXnet/IP frame frame.
[static]
QKnxNetIpRoutingSystemBroadcastProxy::Builder QKnxNetIpRoutingSystemBroadcastProxy::builder()
Returns a builder object to create a KNXnet/IP routing system broadcast frame.
QKnxLinkLayerFrame QKnxNetIpRoutingSystemBroadcastProxy::cemi() const
Returns a cEMI frame that contains the routing system broadcast message.
bool QKnxNetIpRoutingSystemBroadcastProxy::isValid() const
Returns true
if the frame contains initialized values and is in itself valid, otherwise returns false
. A valid KNXnet/IP frame consists of at least a valid header and a size in bytes corresponding to the total size of the KNXnet/IP frame header.