QKnxNetIpDeviceDibProxy Class
The QKnxNetIpDeviceDibProxy class provides the means to read the device information of a KNXnet/IP device from the generic QKnxNetIpDib class and to create a KNXnet/IP device information block (DIB) structure. More...
Header: | #include <QKnxNetIpDeviceDibProxy> |
qmake: | QT += knx |
Public Types
class | Builder |
Public Functions
QKnxNetIpDeviceDibProxy(const QKnxNetIpDib &dib) | |
QKnxNetIp::DescriptionType | descriptionType() const |
QByteArray | deviceName() const |
QKnxNetIp::ProgrammingMode | deviceStatus() const |
QKnxAddress | individualAddress() const |
bool | isValid() const |
QKnxByteArray | macAddress() const |
QKnx::MediumType | mediumType() const |
QHostAddress | multicastAddress() const |
quint16 | projectInstallationId() const |
QKnxByteArray | serialNumber() const |
Static Public Members
QKnxNetIpDeviceDibProxy::Builder | builder() |
Detailed Description
Note: When using QKnxNetIpDeviceDibProxy, care must be taken to ensure that the referenced KNXnet/IP DIB structure outlives the proxy on all code paths, lest the proxy ends up referencing deleted data.
Reading the device information can be achieved like this:
auto dib = QKnxNetIpDib::fromBytes(...); QKnxNetIpDeviceDibProxy proxy(dib); if (!proxy.isValid()) return; auto mediumType = proxy.mediumType(); auto programmingMode = proxy.deviceStatus(); ... auto deviceName = proxy.deviceName();
See also builder() and Qt KNXnet/IP Connection Classes.
Member Function Documentation
QKnxNetIpDeviceDibProxy::QKnxNetIpDeviceDibProxy(const QKnxNetIpDib &dib)
Constructs a proxy object with the specified KNXnet/IP DIB structure dib to read the device information of a KNXnet/IP device.
[static]
QKnxNetIpDeviceDibProxy::Builder QKnxNetIpDeviceDibProxy::builder()
Returns a builder object to create a KNXnet/IP device information DIB structure.
QKnxNetIp::DescriptionType QKnxNetIpDeviceDibProxy::descriptionType() const
Returns the description type of this KNXnet/IP structure if the object that was passed during construction was valid; otherwise returns QKnx::NetIp::Unknown.
QByteArray QKnxNetIpDeviceDibProxy::deviceName() const
Returns the device name contained inside the KNXnet/IP DIB structure if the object that was passed during construction was valid; otherwise returns an empty byte array.
QKnxNetIp::ProgrammingMode QKnxNetIpDeviceDibProxy::deviceStatus() const
Returns the device status contained inside the KNXnet/IP DIB structure.
See also QKnx::NetIp::ProgrammingMode.
QKnxAddress QKnxNetIpDeviceDibProxy::individualAddress() const
Returns the individual address contained inside the KNXnet/IP DIB structure if the object that was passed during construction was valid; otherwise returns a default constructed QKnxAddress.
bool QKnxNetIpDeviceDibProxy::isValid() const
Returns true
if the KNXnet/IP structure to create the object is a valid KNXnet/IP DIB structure; otherwise returns false
.
QKnxByteArray QKnxNetIpDeviceDibProxy::macAddress() const
Returns the MAC address contained inside the KNXnet/IP DIB structure if the object that was passed during construction was valid; otherwise returns an empty byte array.
QKnx::MediumType QKnxNetIpDeviceDibProxy::mediumType() const
Returns the medium type contained inside the KNXnet/IP DIB structure if the object that was passed during construction was valid; otherwise returns QKnx::Unknown.
QHostAddress QKnxNetIpDeviceDibProxy::multicastAddress() const
Returns the multicast address contained inside the KNXnet/IP DIB structure if the object that was passed during construction was valid; otherwise returns a default constructed QHostAddress.
quint16 QKnxNetIpDeviceDibProxy::projectInstallationId() const
Returns the KNX project installation ID contained inside the KNXnet/IP DIB structure.
QKnxByteArray QKnxNetIpDeviceDibProxy::serialNumber() const
Returns the device serial number contained inside the KNXnet/IP DIB structure if the object that was passed during construction was valid; otherwise returns an empty byte array.