diff options
author | Karsten Heimrich <karsten.heimrich@qt.io> | 2018-04-26 22:39:39 +0200 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@qt.io> | 2018-04-26 21:59:57 +0000 |
commit | ed9684c7ce66a8c2707991a6161cc0f3673bdfa6 (patch) | |
tree | 75da867c321ee23463f9767deba1ab4384a4ea20 | |
parent | 34cffcd585b12902bb7a9ed6622915aefc639e62 (diff) |
Doc: Edit code examples
Change-Id: If87d88e5fe7d56b177f8fd26d11ee9760c162a47
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
-rw-r--r-- | src/knx/netip/qknxnetipconnectionstaterequest.cpp | 26 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipconnectionstateresponse.cpp | 24 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipconnectresponse.cpp | 36 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipdescriptionrequest.cpp | 23 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipdescriptionresponse.cpp | 21 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipdeviceconfigurationacknowledge.cpp | 28 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipdeviceconfigurationrequest.cpp | 32 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipdisconnectrequest.cpp | 27 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipdisconnectresponse.cpp | 23 | ||||
-rw-r--r-- | src/knx/netip/qknxnetiproutingbusy.cpp | 10 | ||||
-rw-r--r-- | src/knx/netip/qknxnetiproutingindication.cpp | 19 | ||||
-rw-r--r-- | src/knx/netip/qknxnetiproutinglostmessage.cpp | 18 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipsearchrequest.cpp | 23 | ||||
-rw-r--r-- | src/knx/netip/qknxnetipsearchresponse.cpp | 24 | ||||
-rw-r--r-- | src/knx/netip/qknxnetiptunnelingacknowledge.cpp | 21 | ||||
-rw-r--r-- | src/knx/netip/qknxnetiptunnelingrequest.cpp | 23 | ||||
-rw-r--r-- | src/knx/qknxextendedcontrolfield.cpp | 25 |
17 files changed, 222 insertions, 181 deletions
diff --git a/src/knx/netip/qknxnetipconnectionstaterequest.cpp b/src/knx/netip/qknxnetipconnectionstaterequest.cpp index e9de438..77f9521 100644 --- a/src/knx/netip/qknxnetipconnectionstaterequest.cpp +++ b/src/knx/netip/qknxnetipconnectionstaterequest.cpp @@ -57,13 +57,14 @@ QT_BEGIN_NAMESPACE request information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpConnectionStateRequestProxy connectionStateRequest(netIpFrame); - if (!connectionStateRequest.isValid()) - return; - quint8 chanId = connectionStateRequest.channelId(); - QKnxNetIpHpai seqNum = connectionStateRequest.controlEndpoint(); - // ... + auto frame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpConnectionStateRequestProxy connectionStateRequest(netIpFrame); + if (!connectionStateRequest.isValid()) + return; + + quint8 chanId = connectionStateRequest.channelId(); + auto hpai = connectionStateRequest.controlEndpoint(); \endcode \sa builder(), QKnxNetIpConnectionStateResponseProxy @@ -153,11 +154,12 @@ QKnxNetIpConnectionStateRequestProxy::Builder QKnxNetIpConnectionStateRequestPro The common way to create a connection state request is: \code - QKnxNetIpHpaiProxy hpai = // build QKnxNetIpHpaiProxy; - QKnxNetIpFrame netIpFrame = QKnxNetIpConnectionStateRequestProxy::builder() - .setChannelId(255) - .setControlEndpoint(hpai) - .create(); + auto hpai = QKnxNetIpHpaiProxy::builder().create(); + + auto netIpFrame = QKnxNetIpConnectionStateRequestProxy::builder() + .setChannelId(255) + .setControlEndpoint(hpai) + .create(); \endcode If the KNXnet/IP client does not receive the connection state response diff --git a/src/knx/netip/qknxnetipconnectionstateresponse.cpp b/src/knx/netip/qknxnetipconnectionstateresponse.cpp index 5409939..35180c6 100644 --- a/src/knx/netip/qknxnetipconnectionstateresponse.cpp +++ b/src/knx/netip/qknxnetipconnectionstateresponse.cpp @@ -53,13 +53,14 @@ QT_BEGIN_NAMESPACE response information sent by a KNXnet/IP server: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpConnectionStateResponseProxy connectionStateResponse(netIpFrame); - if (!connectionStateResponse.isValid()) - return; - auto chanId = connectionStateResponse.channelId(); - auto status = connectionStateResponse.status(); - // ... + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpConnectionStateResponseProxy connectionStateResponse(netIpFrame); + if (!connectionStateResponse.isValid()) + return; + + auto chanId = connectionStateResponse.channelId(); + auto status = connectionStateResponse.status(); \endcode \sa builder(), QKnxNetIpConnectionStateRequestProxy @@ -147,11 +148,10 @@ QKnxNetIpConnectionStateResponseProxy::Builder QKnxNetIpConnectionStateResponseP The common way to create a connection state response is: \code - QKnxNetIpFrame netIpFrame = QKnxNetIpConnectionStateResponseProxy.builder() - .setChannelId(25) - .setStatus(QKnx::NetIp::Error::ConnectionId) - .create(); - // ... + auto netIpFrame = QKnxNetIpConnectionStateResponseProxy.builder() + .setChannelId(25) + .setStatus(QKnx::NetIp::Error::None) + .create(); \endcode If the KNXnet/IP client does not receive the connection state response diff --git a/src/knx/netip/qknxnetipconnectresponse.cpp b/src/knx/netip/qknxnetipconnectresponse.cpp index c88cf73..75c83d7 100644 --- a/src/knx/netip/qknxnetipconnectresponse.cpp +++ b/src/knx/netip/qknxnetipconnectresponse.cpp @@ -54,15 +54,15 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP server: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpConnectResponseProxy connectResponse(netIpFrame); - if (!connectResponse.isValid()) - return; - quint8 chanId = connectResponse.channelId(); - QKnxNetIpCrd data = connectResponse.responseData(); - QKnxNetIpHpai endPoint = connectResponse.dataEndpoint(); - QKnx::NetIp::Error knxLinkFrame = connectResponse.status(); - // ... + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + const QKnxNetIpConnectResponseProxy connectResponse(netIpFrame); + if (!connectResponse.isValid()) + return; + + auto chanId = connectResponse.channelId(); + auto data = connectResponse.responseData(); + auto endPoint = connectResponse.dataEndpoint(); + auto netIpError = connectResponse.status(); \endcode \sa builder() @@ -174,14 +174,14 @@ QKnxNetIpConnectResponseProxy::Builder QKnxNetIpConnectResponseProxy::builder() The common way to create a connection response is: \code - QKnxNetIpHpai hpai; - QKnxNetIpCrdProxy data; - QKnxNetIpFrame netIpFrame = QKnxNetIpConnectResponseProxy::builder(). - .setChannelId(200) - .setStatus(QKnx::NetIp::Error::None) - .setDataEndpoint(hpai) - .setResponseData(data) - .create(); + QKnxNetIpHpai hpai; + QKnxNetIpCrdProxy data; + auto netIpFrame = QKnxNetIpConnectResponseProxy::builder() + .setChannelId(200) + .setStatus(QKnx::NetIp::Error::None) + .setDataEndpoint(hpai) + .setResponseData(data) + .create(); \endcode */ @@ -208,7 +208,7 @@ QKnxNetIpConnectResponseProxy::Builder & } /*! - Sets the data endpoint of the KNXnet/IP server to \a hpai and retuns a + Sets the data endpoint of the KNXnet/IP server to \a hpai and returns a reference to the builder. */ QKnxNetIpConnectResponseProxy::Builder & diff --git a/src/knx/netip/qknxnetipdescriptionrequest.cpp b/src/knx/netip/qknxnetipdescriptionrequest.cpp index d1fbad2..f0cdb4e 100644 --- a/src/knx/netip/qknxnetipdescriptionrequest.cpp +++ b/src/knx/netip/qknxnetipdescriptionrequest.cpp @@ -55,12 +55,13 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpDescriptionRequestProxy descriptionRequest(netIpFrame); - if (!descriptionRequest.isValid()) - return; - QKnxNetIpHpai endPoint = descriptionRequest.controlEndpoint(); - // ... + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpDescriptionRequestProxy descriptionRequest(netIpFrame); + if (!descriptionRequest.isValid()) + return; + + auto endPoint = descriptionRequest.controlEndpoint(); \endcode \sa builder(), QKnxNetIpDescriptionResponseProxy @@ -139,11 +140,11 @@ QKnxNetIpDescriptionRequestProxy::Builder QKnxNetIpDescriptionRequestProxy::buil The common way to create a a search response is: \code - QKnxNetIpFrame netIpFrame = QKnxNetIpDescriptionRequestProxy::builder() - .setControlEndpoint(QKnxNetIpHpaiProxy::builder() - .setHostAddress(QHostAddress::LocalHost) - .setPort(3671).create()) - .create(); + auto netIpFrame = QKnxNetIpDescriptionRequestProxy::builder() + .setControlEndpoint(QKnxNetIpHpaiProxy::builder() + .setHostAddress(QHostAddress::LocalHost) + .setPort(3671).create()) + .create(); \endcode */ diff --git a/src/knx/netip/qknxnetipdescriptionresponse.cpp b/src/knx/netip/qknxnetipdescriptionresponse.cpp index 2572975..02787d4 100644 --- a/src/knx/netip/qknxnetipdescriptionresponse.cpp +++ b/src/knx/netip/qknxnetipdescriptionresponse.cpp @@ -54,7 +54,16 @@ QT_BEGIN_NAMESPACE The following code sample illustrates how to read the description response information sent by a KNXnet/IP server: - //TODO: Add sample code. + \code + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpDescriptionResponseProxy response(netIpFrame); + if (!response.isValid()) + return; + + auto hardware = response.deviceHardware(); + auto families = response.supportedFamilies(); + \endcode \sa builder(), QKnxNetIpDescriptionRequestProxy */ @@ -165,7 +174,15 @@ QKnxNetIpDescriptionResponseProxy::Builder QKnxNetIpDescriptionResponseProxy::bu The common way to create a a description response is: - //TODO: Add sample code. + \code + auto ddib = QKnxNetIpDeviceDibProxy::builder().create(); + auto sdib = QKnxNetIpServiceFamiliesDibProxy::builder().create(); + + auto response = QKnxNetIpDescriptionResponseProxy::builder() + .setDeviceHardware(ddib) + .setSupportedFamilies(sdib) + .create(); + \endcode */ /*! diff --git a/src/knx/netip/qknxnetipdeviceconfigurationacknowledge.cpp b/src/knx/netip/qknxnetipdeviceconfigurationacknowledge.cpp index 2c6ddab..8f15763 100644 --- a/src/knx/netip/qknxnetipdeviceconfigurationacknowledge.cpp +++ b/src/knx/netip/qknxnetipdeviceconfigurationacknowledge.cpp @@ -63,14 +63,15 @@ QT_BEGIN_NAMESPACE acknowledgment information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpDeviceConfigurationAcknowledgeProxy configAck(netIpFrame); - if (!configAck.isValid()) - return; - quint8 chanId = configAck.channelId(); - quint8 seqNum = configAck.sequenceNumber(); - QKnx::NetIp::Error knxLinkFrame = configAck.status(); - // ... + auto frame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpDeviceConfigurationAcknowledgeProxy configAck(netIpFrame); + if (!configAck.isValid()) + return; + + quint8 chanId = configAck.channelId(); + quint8 seqNum = configAck.sequenceNumber(); + QKnx::NetIp::Error error = configAck.status(); \endcode \sa builder(), QKnxNetIpDeviceConfigurationRequestProxy @@ -182,12 +183,11 @@ QKnxNetIpDeviceConfigurationAcknowledgeProxy::Builder request information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame = QKnxNetIpDeviceConfigurationAcknowledgeProxy::builder() - .setChannelId(200) - .setSequenceNumber(250) - .setStatus(QKnx::NetIp::Error::ConnectionId) - .create(); - // ... + auto netIpFrame = QKnxNetIpDeviceConfigurationAcknowledgeProxy::builder() + .setChannelId(200) + .setSequenceNumber(250) + .setStatus(QKnx::NetIp::Error::ConnectionId) + .create(); \endcode If the KNXnet/IP client does not receive a device configuration diff --git a/src/knx/netip/qknxnetipdeviceconfigurationrequest.cpp b/src/knx/netip/qknxnetipdeviceconfigurationrequest.cpp index 72ab3a4..af8c864 100644 --- a/src/knx/netip/qknxnetipdeviceconfigurationrequest.cpp +++ b/src/knx/netip/qknxnetipdeviceconfigurationrequest.cpp @@ -78,18 +78,18 @@ QT_BEGIN_NAMESPACE request information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpDeviceConfigurationRequestProxy configRequest(netIpFrame); - if (!configRequest.isValid()) - return; - quint8 chanId = configRequest.channelId(); - quint8 seqNum = configRequest.sequenceNumber(); - QKnxDeviceManagementFrame knxLinkFrame = configRequest.cemi(); - // ... + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpDeviceConfigurationRequestProxy configRequest(netIpFrame); + if (!configRequest.isValid()) + return; + + quint8 chanId = configRequest.channelId(); + quint8 seqNum = configRequest.sequenceNumber(); + auto knxLinkFrame = configRequest.cemi(); \endcode - \sa builder(), QKnxNetIpServerDiscoveryAgent, - QKnxNetIpDeviceConfigurationAcknowledgeProxy + \sa builder(), QKnxNetIpServerDiscoveryAgent, QKnxNetIpDeviceConfigurationAcknowledgeProxy */ /*! @@ -193,12 +193,12 @@ QKnxNetIpDeviceConfigurationRequestProxy::Builder QKnxNetIpDeviceConfigurationRe The common way to create a device configuration request is: \code - QKnxDeviceManagementFrame cemi = // build cemi; - QKnxNetIpFrame netIpFrame = QKnxNetIpDeviceConfigurationRequestProxy::builder() - .setChannelId(1) - .setSequenceNumber(1) - .setCemi(cemi) - .create(); + QKnxDeviceManagementFrame cemi = // build cEMI frame + auto netIpFrame = QKnxNetIpDeviceConfigurationRequestProxy::builder() + .setChannelId(1) + .setSequenceNumber(1) + .setCemi(cemi) + .create(); \endcode If the KNXnet/IP client does not receive a device configuration diff --git a/src/knx/netip/qknxnetipdisconnectrequest.cpp b/src/knx/netip/qknxnetipdisconnectrequest.cpp index 37efb77..3a8045c 100644 --- a/src/knx/netip/qknxnetipdisconnectrequest.cpp +++ b/src/knx/netip/qknxnetipdisconnectrequest.cpp @@ -60,13 +60,14 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpDisconnectRequestProxy disconnectRequest(netIpFrame); - if (!disconnectRequest.isValid()) - return; - quint8 chanId = disconnectRequest.channelId(); - QKnxNetIpHpai ctrlEndPoint = disconnectRequest.controlEndpoint(); - // ... + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpDisconnectRequestProxy disconnectRequest(netIpFrame); + if (!disconnectRequest.isValid()) + return; + + quint8 chanId = disconnectRequest.channelId(); + auto hpai = disconnectRequest.controlEndpoint(); \endcode \sa builder() @@ -164,12 +165,12 @@ QKnxNetIpDisconnectRequestProxy::Builder QKnxNetIpDisconnectRequestProxy::builde The common way to create a disconnection request is: \code - QKnxNetIpFrame netIpFrame = QKnxNetIpDisconnectRequestProxy::builder() - .setChannelId(200) - .setControlEndpoint(QKnxNetIpHpaiProxy::builder() - .setHostAddress(QHostAddress::LocalHost) - .setPort(3671).create()) - .create(); + auto netIpFrame = QKnxNetIpDisconnectRequestProxy::builder() + .setChannelId(200) + .setControlEndpoint(QKnxNetIpHpaiProxy::builder() + .setHostAddress(QHostAddress::LocalHost) + .setPort(3671).create()) + .create(); \endcode */ diff --git a/src/knx/netip/qknxnetipdisconnectresponse.cpp b/src/knx/netip/qknxnetipdisconnectresponse.cpp index bf7793c..1432dcb 100644 --- a/src/knx/netip/qknxnetipdisconnectresponse.cpp +++ b/src/knx/netip/qknxnetipdisconnectresponse.cpp @@ -53,13 +53,14 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpDisconnectRequestProxy disconnectRequest(netIpFrame); - if (!disconnectRequest.isValid()) - return; - quint8 chanId = disconnectRequest.channelId(); - QKnx::NetIp::Error state = disconnectRequest.status(); - // ... + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpDisconnectRequestProxy disconnectRequest(netIpFrame); + if (!disconnectRequest.isValid()) + return; + + quint8 chanId = disconnectRequest.channelId(); + QKnx::NetIp::Error state = disconnectRequest.status(); \endcode \sa builder(), QKnxNetIpDisconnectRequestProxy @@ -151,10 +152,10 @@ QKnxNetIpDisconnectResponseProxy::Builder QKnxNetIpDisconnectResponseProxy::buil The common way to create a disconnection response is: \code - auto frame = QKnxNetIpDisconnectResponseProxy::builder() - .setChannelId(200) - .setStatus(QKnx::NetIp::Error::NoMoreConnections) - .create(); + auto frame = QKnxNetIpDisconnectResponseProxy::builder() + .setChannelId(200) + .setStatus(QKnx::NetIp::Error::None) + .create(); \endcode */ diff --git a/src/knx/netip/qknxnetiproutingbusy.cpp b/src/knx/netip/qknxnetiproutingbusy.cpp index 382ee4a..1cd9505 100644 --- a/src/knx/netip/qknxnetiproutingbusy.cpp +++ b/src/knx/netip/qknxnetiproutingbusy.cpp @@ -60,11 +60,13 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP router or device: \code - QKnxNetIpFrame receivedFrame; QKnxNetIpRoutingBusyProxy routerAnswer(receivedFrame); + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpRoutingBusyProxy routerAnswer(netIpFrame); + if (!routerAnswer.isValid()) + return; - if (routerAnswer.isValid()) { auto busyTime = routerAnswer.routingBusyWaitTime(); - } \endcode The sending device will wait for \c busyTime before sending the next frame. @@ -165,7 +167,7 @@ QKnxNetIpRoutingBusyProxy::Builder QKnxNetIpRoutingBusyProxy::builder() The common way to create a routing-busy message is: \code - auto frame = QKnxNetIpRoutingBusyProxy::builder() + auto frame = QKnxNetIpRoutingBusyProxy::builder() .setDeviceState(QKnx::NetIp::DeviceState::IpFault) .setRoutingBusyWaitTime(99) .setRoutingBusyControl(0xffff) diff --git a/src/knx/netip/qknxnetiproutingindication.cpp b/src/knx/netip/qknxnetiproutingindication.cpp index 4c482e3..5ee6b25 100644 --- a/src/knx/netip/qknxnetiproutingindication.cpp +++ b/src/knx/netip/qknxnetiproutingindication.cpp @@ -46,12 +46,13 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP router or device: \code - QKnxNetIpFrame receivedFrame; - QKnxNetIpRoutingIndicationProxy routingIndication(receivedFrame); - if (routingIndication.isValid()) { + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpRoutingIndicationProxy routingIndication(netIpFrame); + if (!routingIndication.isValid()) + return; + auto linkFrame = routingIndication.linkLayerFrame(); - // ... - } \endcode \sa builder(), QKnxNetIpRoutingLostMessageProxy, QKnxNetIpRoutingBusyProxy @@ -128,10 +129,10 @@ QKnxNetIpRoutingIndicationProxy::Builder QKnxNetIpRoutingIndicationProxy::builde The common way to create a routing indication is: \code - QKnxLinkLayerFrame linkFrame = // create a link frame ....; - netIpframe = QKnxNetIpRoutingIndicationProxy::builder() - .setLinkLayerFrame(linkFrame) - .create(); + QKnxLinkLayerFrame linkFrame = // create a link frame ....; + auto netIpframe = QKnxNetIpRoutingIndicationProxy::builder() + .setLinkLayerFrame(linkFrame) + .create(); \endcode If a KNXnet/IP router or device receives a router busy message from another diff --git a/src/knx/netip/qknxnetiproutinglostmessage.cpp b/src/knx/netip/qknxnetiproutinglostmessage.cpp index 9d62920..ad28fc5 100644 --- a/src/knx/netip/qknxnetiproutinglostmessage.cpp +++ b/src/knx/netip/qknxnetiproutinglostmessage.cpp @@ -55,13 +55,15 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP router: \code - QKnxNetIpFrame receivedFrame; - QKnxNetIpRoutingLostMessageProxy routingProxy(QKnxNetIpRoutingLostMessageProxy); - if (routingProxy.isValid()) { + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + QKnxNetIpRoutingLostMessageProxy routingProxy(netIpFrame); + if (!routingProxy.isValid()) + return; + if (routingProxy.deviceState() == QKnx::NetIp::DeviceState::KnxFault) { .... } - } \endcode \sa builder(), QKnxNetIpRoutingIndicationProxy, QKnxNetIpRoutingBusyProxy @@ -145,10 +147,10 @@ QKnxNetIpRoutingLostMessageProxy::Builder QKnxNetIpRoutingLostMessageProxy::buil about three frames being lost because an error occurred in the IP network: \code - QKnxNetIpFrame frame = QKnxNetIpRoutingLostMessageProxy::builder() - .setDeviceState(QKnx::NetIp::DeviceState::IpFault) - .setLostMessageCount(3) - .create(); + auto frame = QKnxNetIpRoutingLostMessageProxy::builder() + .setDeviceState(QKnx::NetIp::DeviceState::IpFault) + .setLostMessageCount(3) + .create(); \endcode */ diff --git a/src/knx/netip/qknxnetipsearchrequest.cpp b/src/knx/netip/qknxnetipsearchrequest.cpp index e87e8a3..588d827 100644 --- a/src/knx/netip/qknxnetipsearchrequest.cpp +++ b/src/knx/netip/qknxnetipsearchrequest.cpp @@ -60,12 +60,14 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpSearchRequestProxy searchRequest(netIpFrame); - if (!searchRequest.isValid()) - return; - QKnxNetIpHpai chanId = searchRequest.discoveryEndpoint(); - // ... + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + QKnxNetIpSearchRequestProxy searchRequest(netIpFrame); + if (!searchRequest.isValid()) + return; + + QKnxNetIpHpai hpai = searchRequest.discoveryEndpoint(); + // ... \endcode \sa builder() @@ -148,10 +150,11 @@ QKnxNetIpSearchRequestProxy::Builder QKnxNetIpSearchRequestProxy::builder() The common way to create a search request is: \code - QKnxNetIpHpai hpai = // discovery endpoint creation here; - QKnxNetIpFrame netIpFrame = QKnxNetIpSearchRequestProxy::builder() - .setDiscoveryEndpoint(hpai) - .create(); + auto hpai = QKnxNetIpHpaiProxy::builder().create(); + + auto netIpFrame = QKnxNetIpSearchRequestProxy::builder() + .setDiscoveryEndpoint(hpai) + .create(); \endcode After sending the search request, the KNXnet/IP client waits until timeout diff --git a/src/knx/netip/qknxnetipsearchresponse.cpp b/src/knx/netip/qknxnetipsearchresponse.cpp index 9513700..f8adc43 100644 --- a/src/knx/netip/qknxnetipsearchresponse.cpp +++ b/src/knx/netip/qknxnetipsearchresponse.cpp @@ -61,14 +61,16 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP server: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpSearchResponseProxy searchResponse(netIpFrame); - if (searchResponse.isValid()) { + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpSearchResponseProxy searchResponse(netIpFrame); + if (!searchResponse.isValid()) + return + auto netIpHpai = searchResponse.controlEndpoint(); auto hardwareNetIpDib = searchResponse.deviceHardware(); auto supportedFamillies = searchResponse.supportedFamilies(); // ... - } \endcode \sa builder(), QKnxNetIpSearchRequestProxy @@ -166,13 +168,13 @@ QKnxNetIpSearchResponseProxy::Builder QKnxNetIpSearchResponseProxy::builder() The common way to create a a search response is: \code - QKnxNetIpHpai controlEndpoint; - QKnxNetIpDib deviceHardware, supportedFamillies; - QKnxNetIpFrame netIpFrame = QKnxNetIpSearchResponseProxy::builder() - .setControlEndpoint(controlEndpoint) - .setSupportedFamilies(deviceHardware) - .setDeviceHardware(supportedFamillies) - .create(); + QKnxNetIpHpai controlEndpoint; + QKnxNetIpDib deviceHardware, supportedFamillies; + auto netIpFrame = QKnxNetIpSearchResponseProxy::builder() + .setControlEndpoint(controlEndpoint) + .setSupportedFamilies(deviceHardware) + .setDeviceHardware(supportedFamillies) + .create(); \endcode \sa QKnxNetIpHpaiProxy::builder(), QKnxNetIpServiceFamiliesDibProxy::builder(), QKnxNetIpDeviceDibProxy::builder() diff --git a/src/knx/netip/qknxnetiptunnelingacknowledge.cpp b/src/knx/netip/qknxnetiptunnelingacknowledge.cpp index 8e6c90b..e72f94c 100644 --- a/src/knx/netip/qknxnetiptunnelingacknowledge.cpp +++ b/src/knx/netip/qknxnetiptunnelingacknowledge.cpp @@ -65,14 +65,15 @@ QT_BEGIN_NAMESPACE acknowledgment information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpTunnelingAcknowledgeProxy tunnelAck(netIpFrame); - if (tunnelAck.isValid()) { + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpTunnelingAcknowledgeProxy tunnelAck(netIpFrame); + if (!tunnelAck.isValid()) + return; + auto chanId = tunnelAck.channelId(); auto seqNum = tunnelAck.sequenceNumber(); auto tunnelStatus = tunnelAck.status(); - // ... - } \endcode \sa builder(), QKnxNetIpTunnelingRequestProxy @@ -173,11 +174,11 @@ QKnxNetIpTunnelingAcknowledgeProxy::Builder QKnxNetIpTunnelingAcknowledgeProxy:: The common way to create a tunneling acknowledgment is: \code - QKnxNetIpFrame netIpFrame = QKnxNetIpTunnelingAcknowledgeProxy::Builder - .setChannelId(4) - .setSequenceNumber(3) - .setStatus(QKnx::NetIp::Error::NoMoreConnections) - .create() + auto netIpFrame = QKnxNetIpTunnelingAcknowledgeProxy::builder() + .setChannelId(4) + .setSequenceNumber(3) + .setStatus(QKnx::NetIp::Error::None) + .create() \endcode If the KNXnet/IP client does not receive a tunneling acknowledgment within diff --git a/src/knx/netip/qknxnetiptunnelingrequest.cpp b/src/knx/netip/qknxnetiptunnelingrequest.cpp index c01b441..a64a879 100644 --- a/src/knx/netip/qknxnetiptunnelingrequest.cpp +++ b/src/knx/netip/qknxnetiptunnelingrequest.cpp @@ -66,14 +66,15 @@ QT_BEGIN_NAMESPACE information sent by a KNXnet/IP client: \code - QKnxNetIpFrame netIpFrame; - QKnxNetIpTunnelingRequestProxy tunnelRequest(netIpFrame); - if (tunnelRequest.isValid()) { + auto netIpFrame = QKnxNetIpFrame::fromBytes(...); + + const QKnxNetIpTunnelingRequestProxy tunnelRequest(netIpFrame); + if (!tunnelRequest.isValid()) + return; + auto chanId = tunnelRequest.channelId(); auto seqNum = tunnelRequest.sequenceNumber(); auto knxLinkFrame = tunnelRequest.cemi(); - // ... - } \endcode \sa builder(), QKnxNetIpTunnelingAcknowledgeProxy @@ -174,12 +175,12 @@ QKnxNetIpTunnelingRequestProxy::Builder QKnxNetIpTunnelingRequestProxy::builder( The common way to create a tunneling request is: \code - QKnxLinkLayerFrame linkFrame; - auto tunnelRequest = QKnxNetIpTunnelingRequestProxy.builder() - .setCemi(linkFrame) - .setChannelId(10) - .setSequenceNumber(0) - .create(); + QKnxLinkLayerFrame linkFrame; + auto tunnelRequest = QKnxNetIpTunnelingRequestProxy.builder() + .setCemi(linkFrame) + .setChannelId(10) + .setSequenceNumber(0) + .create(); \endcode If the KNXnet/IP client does not receive a tunneling acknowledgment within diff --git a/src/knx/qknxextendedcontrolfield.cpp b/src/knx/qknxextendedcontrolfield.cpp index d6ccbc2..9f31dbe 100644 --- a/src/knx/qknxextendedcontrolfield.cpp +++ b/src/knx/qknxextendedcontrolfield.cpp @@ -60,11 +60,18 @@ const std::bitset<8> gHopCountMask = 0x70; KNX byte array: \code - QKnxByteArray data; - QKnxExtendedControlField extCtrlField(data); - auto hopCount = extCtrlField.hopCount(); - auto frameFormat = extCtrlField.format(); - auto size = extCtrlField.size(); + auto data = QKnxByteArray::fromHex("e0"); + const QKnxExtendedControlField extCtrlField(data); + \endcode + + In addition to the default constructors a builder can be used: + + \code + auto extCtrl = QKnxExtendedControlField::builder() + .setDestinationAddressType(QKnxAddress::Type::Group) + .setHopCount(6) + .setFormat(QKnxExtendedControlField::ExtendedFrameFormat::Standard) + .create(); \endcode \sa builder(), QKnxControlField @@ -239,7 +246,7 @@ QDebug operator<<(QDebug debug, const QKnxExtendedControlField &field) Example: \code - auto ctrl = QKnxExtendedControlField::builder.create(); + auto ctrl = QKnxExtendedControlField::builder.create(); \endcode Some flags can be modified for more advanced use, such as setting up an @@ -247,9 +254,9 @@ QDebug operator<<(QDebug debug, const QKnxExtendedControlField &field) to the individual address of a device: \code - auto ctrl = QKnxControlField::builder - .setDestinationAddressType(QKnxAddress::Type::Individual) - .create(); + auto ctrl = QKnxControlField::builder + .setDestinationAddressType(QKnxAddress::Type::Individual) + .create(); \endcode */ |