QOpcUaMonitoringParameters Class
QOpcUaMonitoringParameters bietet die Möglichkeit, Parameter für Abonnements und überwachte Elemente festzulegen und abzurufen. Mehr...
| Kopfzeile: | #include <QOpcUaMonitoringParameters> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS OpcUa) target_link_libraries(mytarget PRIVATE Qt6::OpcUa) |
| qmake: | QT += opcua |
Öffentliche Typen
| class | DataChangeFilter |
| class | EventFilter |
| enum class | MonitoringMode { Disabled, Sampling, Reporting } |
| enum class | Parameter { PublishingEnabled, PublishingInterval, LifetimeCount, MaxKeepAliveCount, MaxNotificationsPerPublish, …, TriggeredItemIds } |
| flags | Parameters |
| enum class | SubscriptionType { Shared, Exclusive } |
Öffentliche Funktionen
| QOpcUaMonitoringParameters() | |
| QOpcUaMonitoringParameters(double publishingInterval, QOpcUaMonitoringParameters::SubscriptionType shared = SubscriptionType::Shared, quint32 subscriptionId = 0) | |
| QOpcUaMonitoringParameters(const QOpcUaMonitoringParameters &other) | |
| ~QOpcUaMonitoringParameters() | |
| void | clearFilter() |
| void | clearFilterResult() |
| bool | discardOldest() const |
(since 6.7) QHash<quint32, QOpcUa::UaStatusCode> | failedTriggeredItemsStatus() const |
| QVariant | filter() const |
| QVariant | filterResult() const |
| QString | indexRange() const |
| bool | isPublishingEnabled() const |
| quint32 | lifetimeCount() const |
| quint32 | maxKeepAliveCount() const |
| quint32 | maxNotificationsPerPublish() const |
| quint32 | monitoredItemId() const |
| QOpcUaMonitoringParameters::MonitoringMode | monitoringMode() const |
| quint8 | priority() const |
| double | publishingInterval() const |
| quint32 | queueSize() const |
| double | samplingInterval() const |
| void | setDiscardOldest(bool discardOldest) |
(since 6.7) void | setFailedTriggeredItemsStatus(const QHash<quint32, QOpcUa::UaStatusCode> &status) |
| void | setFilter(const QOpcUaMonitoringParameters::DataChangeFilter &filter) |
| void | setFilter(const QOpcUaMonitoringParameters::EventFilter &eventFilter) |
| void | setFilterResult(const QOpcUaEventFilterResult &eventFilterResult) |
| void | setIndexRange(const QString &indexRange) |
| void | setLifetimeCount(quint32 lifetimeCount) |
| void | setMaxKeepAliveCount(quint32 maxKeepAliveCount) |
| void | setMaxNotificationsPerPublish(quint32 maxNotificationsPerPublish) |
| void | setMonitoredItemId(quint32 monitoredItemId) |
| void | setMonitoringMode(QOpcUaMonitoringParameters::MonitoringMode monitoringMode) |
| void | setPriority(quint8 priority) |
| void | setPublishingEnabled(bool publishingEnabled) |
| void | setPublishingInterval(double publishingInterval) |
| void | setQueueSize(quint32 queueSize) |
| void | setSamplingInterval(double samplingInterval) |
| void | setStatusCode(QOpcUa::UaStatusCode statusCode) |
| void | setSubscriptionId(quint32 subscriptionId) |
| void | setSubscriptionType(QOpcUaMonitoringParameters::SubscriptionType shared) |
(since 6.7) void | setTriggeredItemIds(const QSet<quint32> &ids) |
| QOpcUa::UaStatusCode | statusCode() const |
| quint32 | subscriptionId() const |
| QOpcUaMonitoringParameters::SubscriptionType | subscriptionType() const |
(since 6.7) QSet<quint32> | triggeredItemIds() const |
| QOpcUaMonitoringParameters & | operator=(const QOpcUaMonitoringParameters &other) |
Detaillierte Beschreibung
Diese Klasse wird in QOpcUaNode::enableMonitoring()-Anfragen sowie als Rückgabewert für QOpcUaNode::monitoringStatus() verwendet; in diesem Fall enthält sie die vom Server übermittelten aktualisierten Werte.
Verwendung
In den meisten Anwendungsfällen ist lediglich das Veröffentlichungsintervall erforderlich.
QOpcUaMonitoringParameters p(100); // Set a publishing interval of 100ms and share the subscription.
node->enableMonitoring(QOpcUa::NodeAttribute::Value, p);Wenn ein exclusive -Abonnement erforderlich ist, verwenden Sie den zweiten Parameter.
QOpcUaMonitoringParameters p(100, QOpcUaMonitoringParameters::SubscriptionType::Exclusive); // Create a new subscriptionUm einem bestehenden Abonnement weitere Elemente hinzuzufügen, verwenden Sie den dritten Parameter bei den nächsten Aufrufen von ` QOpcUaNode::enableMonitoring()`.
quint32 subscriptionId = node->monitoringStatus(QOpcUa::NodeAttribute::Value).subscriptionId();
QOpcUaMonitoringParameters p(100, QOpcUaMonitoringParameters::SubscriptionType::Shared, subscriptionId); // Add the monitored item to this subscriptionFalls weitere Parameter erforderlich sind, müssen diese über die Setter-Methoden festgelegt werden.
Dokumentation zu den Mitgliedstypen
enum class QOpcUaMonitoringParameters::MonitoringMode
Diese Enumeration dient dazu, den Überwachungsmodus für ein überwachtes Element festzulegen.
| Konstante | Wert | Beschreibung |
|---|---|---|
QOpcUaMonitoringParameters::MonitoringMode::Disabled | 0 | Die Erfassung ist deaktiviert und es werden keine Benachrichtigungen generiert. |
QOpcUaMonitoringParameters::MonitoringMode::Sampling | 1 | Die Erfassung ist aktiviert, Benachrichtigungen werden generiert und in die Warteschlange gestellt, die Berichterstellung ist jedoch deaktiviert. |
QOpcUaMonitoringParameters::MonitoringMode::Reporting | 2 | Die Stichprobenentnahme ist aktiviert, Benachrichtigungen werden generiert und in die Warteschlange gestellt, die Berichterstellung ist aktiviert. |
enum class QOpcUaMonitoringParameters::Parameter
flags QOpcUaMonitoringParameters::Parameters
Listet Parameter auf, die zur Laufzeit mithilfe von ` QOpcUaNode::modifyMonitoring()` geändert werden können. Es kann nicht garantiert werden, dass alle Werte von allen Plugins unterstützt werden. Eine fehlende Unterstützung wird über das Signal ` QOpcUaNode::monitoringStatusChanged ` gemeldet.
| Konstante | Wert |
|---|---|
QOpcUaMonitoringParameters::Parameter::PublishingEnabled | (1 << 0) |
QOpcUaMonitoringParameters::Parameter::PublishingInterval | (1 << 1) |
QOpcUaMonitoringParameters::Parameter::LifetimeCount | (1 << 2) |
QOpcUaMonitoringParameters::Parameter::MaxKeepAliveCount | (1 << 3) |
QOpcUaMonitoringParameters::Parameter::MaxNotificationsPerPublish | (1 << 4) |
QOpcUaMonitoringParameters::Parameter::Priority | (1 << 5) |
QOpcUaMonitoringParameters::Parameter::SamplingInterval | (1 << 6) |
QOpcUaMonitoringParameters::Parameter::Filter | (1 << 7) |
QOpcUaMonitoringParameters::Parameter::QueueSize | (1 << 8) |
QOpcUaMonitoringParameters::Parameter::DiscardOldest | (1 << 9) |
QOpcUaMonitoringParameters::Parameter::MonitoringMode | (1 << 10) |
QOpcUaMonitoringParameters::Parameter::TriggeredItemIds (since Qt 6.7) | (1 << 11) |
Der Typ „Parameters“ ist ein `typedef` für ` QFlags<Parameter>`. Er speichert eine ODER-Kombination von Parameterwerten.
enum class QOpcUaMonitoringParameters::SubscriptionType
Diese Enumeration dient dazu, festzustellen, ob das überwachte Element einem gemeinsamen Abonnement hinzugefügt werden kann oder ob ein neues Abonnement angelegt werden muss.
| Konstante | Wert | Beschreibung |
|---|---|---|
QOpcUaMonitoringParameters::SubscriptionType::Shared | 0 | Abonnement mit anderen überwachten Elementen mit demselben Intervall teilen |
QOpcUaMonitoringParameters::SubscriptionType::Exclusive | 1 | Ein neues Abonnement für dieses Attribut anfordern |
Dokumentation der Member-Funktionen
QOpcUaMonitoringParameters::QOpcUaMonitoringParameters()
Der Standardkonstruktor für `QOpcUaMonitoringParameters`.
QOpcUaMonitoringParameters::QOpcUaMonitoringParameters(double publishingInterval, QOpcUaMonitoringParameters::SubscriptionType shared = SubscriptionType::Shared, quint32 subscriptionId = 0)
Dies ist der Konstruktor, der die meisten Anwendungsfälle für den Benutzer von „ Qt OPC UA “ abdeckt. „ publishingInterval “ muss angegeben werden, „ shared “ und „ subscriptionId “ sind optional.
QOpcUaMonitoringParameters::QOpcUaMonitoringParameters(const QOpcUaMonitoringParameters &other)
Erstellt ein „QOpcuaMonitoringParameters“-Objekt anhand des Werts von „ other “.
[noexcept] QOpcUaMonitoringParameters::~QOpcUaMonitoringParameters()
Der Destruktor für „ QOpcUaMonitoringParameters “.
void QOpcUaMonitoringParameters::clearFilter()
Entfernt den aktuellen Filter aus den Überwachungsparametern.
Siehe auch filter() und setFilter().
void QOpcUaMonitoringParameters::clearFilterResult()
Entfernt das aktuelle Filterergebnis aus den Überwachungsparametern.
Siehe auch filterResult() und setFilterResult().
bool QOpcUaMonitoringParameters::discardOldest() const
Gibt die Einstellung „discardOldest“ des überwachten Elements zurück.
Siehe auch „ setDiscardOldest()“.
[since 6.7] QHash<quint32, QOpcUa::UaStatusCode> QOpcUaMonitoringParameters::failedTriggeredItemsStatus() const
Gibt die Statuscodes für alle durch ` setTriggeredItemIds()` ausgelösten Elemente zurück, die nicht erfolgreich hinzugefügt werden konnten.
Diese Funktion wurde in Qt 6.7 eingeführt.
Siehe auch ` setFailedTriggeredItemsStatus()`.
QVariant QOpcUaMonitoringParameters::filter() const
Gibt den aktuellen Filter zurück.
Siehe auch „ setFilter()“.
QVariant QOpcUaMonitoringParameters::filterResult() const
Gibt das Filterergebnis zurück.
Bei der Attributüberwachung ist dieser Wert leer. Bei der Ereignisüberwachung kann das Filterergebnis leer sein, wenn der Server keine Fehler im Filter festgestellt hat.
Siehe auch setFilterResult().
QString QOpcUaMonitoringParameters::indexRange() const
Gibt den Indexbereich für das überwachte Element zurück.
Siehe auch „ setIndexRange()“.
bool QOpcUaMonitoringParameters::isPublishingEnabled() const
Gibt den Veröffentlichungsmodus für das Abonnement zurück.
quint32 QOpcUaMonitoringParameters::lifetimeCount() const
Gibt die Gesamtanzahl der Abonnements zurück.
Siehe auch „ setLifetimeCount()“.
quint32 QOpcUaMonitoringParameters::maxKeepAliveCount() const
Gibt die maximale Keepalive-Anzahl des Abonnements zurück.
Siehe auch ` setMaxKeepAliveCount()`.
quint32 QOpcUaMonitoringParameters::maxNotificationsPerPublish() const
Gibt den Wert für die maximale Anzahl an Benachrichtigungen pro Veröffentlichung des Abonnements zurück.
Siehe auch „ setMaxNotificationsPerPublish()“.
quint32 QOpcUaMonitoringParameters::monitoredItemId() const
Gibt die vom Server zugewiesene ID des überwachten Elements zurück. Wenn die ID des überwachten Elements 0 ist, konnte das überwachte Element nicht erfolgreich angelegt werden.
Siehe auch ` setMonitoredItemId()`.
QOpcUaMonitoringParameters::MonitoringMode QOpcUaMonitoringParameters::monitoringMode() const
Gibt den Überwachungsmodus für das überwachte Element zurück.
Siehe auch „ setMonitoringMode()“.
quint8 QOpcUaMonitoringParameters::priority() const
Gibt die Priorität des Abonnements zurück, das für das überwachte Element verwendet wird.
Siehe auch setPriority().
double QOpcUaMonitoringParameters::publishingInterval() const
Gibt das Veröffentlichungsintervall des Abonnements zurück. Das Intervall wird in Millisekunden angegeben.
Siehe auch ` setPublishingInterval()`.
quint32 QOpcUaMonitoringParameters::queueSize() const
Gibt die Warteschlangengröße des überwachten Elements zurück.
Siehe auch „ setQueueSize()“.
double QOpcUaMonitoringParameters::samplingInterval() const
Gibt das angepasste Abtastintervall des überwachten Elements zurück. Das Intervall wird in Millisekunden angegeben.
Siehe auch „ setSamplingInterval()“.
void QOpcUaMonitoringParameters::setDiscardOldest(bool discardOldest)
Legen Sie für das überwachte Element die Einstellung „ discardOldest “ auf „ discardOldest “ fest.
Siehe auch discardOldest().
[since 6.7] void QOpcUaMonitoringParameters::setFailedTriggeredItemsStatus(const QHash<quint32, QOpcUa::UaStatusCode> &status)
Legt die Statuscodes für alle ausgelösten Elemente fest, die nicht erfolgreich zu „ status “ hinzugefügt werden konnten. Die Einstellung dieses Werts als Client hat keine Auswirkung.
Diese Funktion wurde in Qt 6.7 eingeführt.
Siehe auch failedTriggeredItemsStatus().
void QOpcUaMonitoringParameters::setFilter(const QOpcUaMonitoringParameters::DataChangeFilter &filter)
Legt „ DataChangeFilter filter “ als Filter für das überwachte Element fest. Falls bereits ein anderer Datenänderungsfilter oder ein Ereignisfilter vorhanden ist, wird dieser ersetzt.
Wenn der Server den Filter nicht akzeptiert, wird dies durch den Statuscode angezeigt, nachdem die Anfrage „ QOpcUaNode::enableMonitoring()“ abgeschlossen ist.
Siehe auch filter().
void QOpcUaMonitoringParameters::setFilter(const QOpcUaMonitoringParameters::EventFilter &eventFilter)
Fordern Sie „ eventFilter “ als Filter für das überwachte Element an. Falls ein anderer Ereignisfilter oder ein Datenänderungsfilter vorhanden ist, wird dieser ersetzt. Wenn der Server den Filter nicht akzeptiert, wird dies durch den Statuscode und das Ergebnis des Ereignisfilters angezeigt, nachdem die Anfrage „ QOpcUaNode::enableMonitoring()“ abgeschlossen ist.
Siehe auch ` filter()`.
void QOpcUaMonitoringParameters::setFilterResult(const QOpcUaEventFilterResult &eventFilterResult)
Setzt das Ergebnis des Ereignisfilters auf „ eventFilterResult “.
Diese Methode darf nur vom Backend verwendet werden; das Festlegen eines Ereignisfilterergebnisses durch einen Benutzer hat keinerlei Auswirkungen.
Siehe auch „ filterResult()“.
void QOpcUaMonitoringParameters::setIndexRange(const QString &indexRange)
Fordert „ indexRange “ als Indexbereich für das überwachte Element an. Weitere Informationen zur Zeichenfolge für den Indexbereich finden Sie unter QOpcUaNode::readAttributeRange().
Siehe auch indexRange().
void QOpcUaMonitoringParameters::setLifetimeCount(quint32 lifetimeCount)
Legen Sie „ lifetimeCount “ als Gesamtanzahl für das Abonnement fest.
Siehe auch lifetimeCount().
void QOpcUaMonitoringParameters::setMaxKeepAliveCount(quint32 maxKeepAliveCount)
Legen Sie „ maxKeepAliveCount “ als maximale Keepalive-Anzahl für das Abonnement fest.
Siehe auch maxKeepAliveCount().
void QOpcUaMonitoringParameters::setMaxNotificationsPerPublish(quint32 maxNotificationsPerPublish)
Legen Sie „ maxNotificationsPerPublish “ als Wert für die maximale Anzahl von Benachrichtigungen pro Veröffentlichung für das Abonnement fest.
Siehe auch maxNotificationsPerPublish().
void QOpcUaMonitoringParameters::setMonitoredItemId(quint32 monitoredItemId)
Setzt die ID des überwachten Elements auf „ monitoredItemId “.
Das Setzen dieses Werts als Client hat keine Auswirkung.
Siehe auch monitoredItemId().
void QOpcUaMonitoringParameters::setMonitoringMode(QOpcUaMonitoringParameters::MonitoringMode monitoringMode)
Legen Sie „ monitoringMode “ als Überwachungsmodus für das überwachte Element fest.
Siehe auch monitoringMode().
void QOpcUaMonitoringParameters::setPriority(quint8 priority)
Legen Sie „ priority “ als Priorität für das Abonnement fest.
Siehe auch priority().
void QOpcUaMonitoringParameters::setPublishingEnabled(bool publishingEnabled)
Legen Sie „ publishingEnabled “ als Veröffentlichungsmodus für das Abonnement fest.
Siehe auch isPublishingEnabled().
void QOpcUaMonitoringParameters::setPublishingInterval(double publishingInterval)
Geben Sie als Veröffentlichungsintervall für das Abonnement „ publishingInterval “ an. Das Intervall wird in Millisekunden angegeben.
Siehe auch ` publishingInterval()`.
void QOpcUaMonitoringParameters::setQueueSize(quint32 queueSize)
Legen Sie als Warteschlangengröße für das überwachte Element „ queueSize “ fest.
Siehe auch queueSize().
void QOpcUaMonitoringParameters::setSamplingInterval(double samplingInterval)
Legen Sie „ samplingInterval “ als Abtastintervall für das überwachte Element fest. Das Intervall wird in Millisekunden angegeben.
Siehe auch „ samplingInterval()“.
void QOpcUaMonitoringParameters::setStatusCode(QOpcUa::UaStatusCode statusCode)
Setzen Sie den Statuscode auf „ statusCode “.
Siehe auch „ statusCode()“.
void QOpcUaMonitoringParameters::setSubscriptionId(quint32 subscriptionId)
Fordern Sie mit dem Befehl „ subscriptionId “ an, dass die überwachten Elemente in einem bekannten Abonnement angelegt werden.
Siehe auch ` subscriptionId()`.
void QOpcUaMonitoringParameters::setSubscriptionType(QOpcUaMonitoringParameters::SubscriptionType shared)
Geben Sie als Abonnementtyp „ shared “ für das Abonnement an.
Siehe auch subscriptionType().
[since 6.7] void QOpcUaMonitoringParameters::setTriggeredItemIds(const QSet<quint32> &ids)
Fügt Trigger-Links zu allen überwachten Elementen in „ ids “ hinzu, wie in OPC UA 1.05, 5.12.1.6 beschrieben.
Die Werte in „ ids “ müssen die IDs anderer überwachter Elemente desselben Abonnements sein. Ist der Überwachungsmodus dieser Elemente auf „Sampling“ eingestellt, werden ihre Datenänderungsbenachrichtigungen an den Client gesendet, sobald diese Überwachung eine Datenänderung feststellt.
IDen, die nicht hinzugefügt werden konnten, werden nicht in den Überwachungsstatus aufgenommen, sondern erscheinen stattdessen in „ failedTriggeredItemsStatus “ ().
Wenn diese Einstellung auf eine leere Menge gesetzt wird, werden alle auslösenden Verknüpfungen entfernt.
Diese Funktion wurde in Qt 6.7 eingeführt.
Siehe auch „ triggeredItemIds“ ().
QOpcUa::UaStatusCode QOpcUaMonitoringParameters::statusCode() const
Gibt den Statuscode der Erstellung des überwachten Elements zurück.
Siehe auch setStatusCode().
quint32 QOpcUaMonitoringParameters::subscriptionId() const
Gibt die zugewiesene Abonnement-ID zurück.
Siehe auch „ setSubscriptionId()“.
QOpcUaMonitoringParameters::SubscriptionType QOpcUaMonitoringParameters::subscriptionType() const
Gibt den Abonnementtyp zurück.
Siehe auch „ setSubscriptionType()“.
[since 6.7] QSet<quint32> QOpcUaMonitoringParameters::triggeredItemIds() const
Gibt die IDs der überwachten Elemente zurück, die durch dieses überwachte Element ausgelöst wurden.
Diese Funktion wurde in Qt 6.7 eingeführt.
Siehe auch ` setTriggeredItemIds()`.
QOpcUaMonitoringParameters &QOpcUaMonitoringParameters::operator=(const QOpcUaMonitoringParameters &other)
Weist diesem Objekt den Wert „ other “ zu.
© 2026 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.