summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarsten Heimrich <karsten.heimrich@qt.io>2018-04-26 22:39:39 +0200
committerKarsten Heimrich <karsten.heimrich@qt.io>2018-04-26 21:59:57 +0000
commited9684c7ce66a8c2707991a6161cc0f3673bdfa6 (patch)
tree75da867c321ee23463f9767deba1ab4384a4ea20
parent34cffcd585b12902bb7a9ed6622915aefc639e62 (diff)
Doc: Edit code examples
Change-Id: If87d88e5fe7d56b177f8fd26d11ee9760c162a47 Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
-rw-r--r--src/knx/netip/qknxnetipconnectionstaterequest.cpp26
-rw-r--r--src/knx/netip/qknxnetipconnectionstateresponse.cpp24
-rw-r--r--src/knx/netip/qknxnetipconnectresponse.cpp36
-rw-r--r--src/knx/netip/qknxnetipdescriptionrequest.cpp23
-rw-r--r--src/knx/netip/qknxnetipdescriptionresponse.cpp21
-rw-r--r--src/knx/netip/qknxnetipdeviceconfigurationacknowledge.cpp28
-rw-r--r--src/knx/netip/qknxnetipdeviceconfigurationrequest.cpp32
-rw-r--r--src/knx/netip/qknxnetipdisconnectrequest.cpp27
-rw-r--r--src/knx/netip/qknxnetipdisconnectresponse.cpp23
-rw-r--r--src/knx/netip/qknxnetiproutingbusy.cpp10
-rw-r--r--src/knx/netip/qknxnetiproutingindication.cpp19
-rw-r--r--src/knx/netip/qknxnetiproutinglostmessage.cpp18
-rw-r--r--src/knx/netip/qknxnetipsearchrequest.cpp23
-rw-r--r--src/knx/netip/qknxnetipsearchresponse.cpp24
-rw-r--r--src/knx/netip/qknxnetiptunnelingacknowledge.cpp21
-rw-r--r--src/knx/netip/qknxnetiptunnelingrequest.cpp23
-rw-r--r--src/knx/qknxextendedcontrolfield.cpp25
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
*/