QOpcUaMonitoringParameters Class
QOpcUaMonitoringParameters permet de définir et de récupérer les paramètres des abonnements et des éléments surveillés. En savoir plus...
| En-tête : | #include <QOpcUaMonitoringParameters> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS OpcUa) target_link_libraries(mytarget PRIVATE Qt6::OpcUa) |
| qmake : | QT += opcua |
Types publics
| 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 } |
Fonctions publiques
| 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) |
Description détaillée
Cette classe est utilisée dans les requêtes QOpcUaNode::enableMonitoring() et comme valeur de retour pour QOpcUaNode::monitoringStatus(), auquel cas elle contient les valeurs mises à jour provenant du serveur.
Utilisation
Dans la plupart des cas, seul l'intervalle de publication est requis.
QOpcUaMonitoringParameters p(100); // Set a publishing interval of 100ms and share the subscription.
node->enableMonitoring(QOpcUa::NodeAttribute::Value, p);Si un abonnement exclusive est requis, utilisez le deuxième paramètre.
QOpcUaMonitoringParameters p(100, QOpcUaMonitoringParameters::SubscriptionType::Exclusive); // Create a new subscriptionPour ajouter des éléments supplémentaires à un abonnement existant, utilisez le troisième paramètre lors des prochains appels à QOpcUaNode::enableMonitoring().
quint32 subscriptionId = node->monitoringStatus(QOpcUa::NodeAttribute::Value).subscriptionId();
QOpcUaMonitoringParameters p(100, QOpcUaMonitoringParameters::SubscriptionType::Shared, subscriptionId); // Add the monitored item to this subscriptionSi d’autres paramètres sont requis, ils doivent être définis à l’aide des méthodes de définition.
Documentation sur les types de membres
enum class QOpcUaMonitoringParameters::MonitoringMode
Cette énumération sert à définir le mode de surveillance d'un élément surveillé.
| Constante | Valeur | Description |
|---|---|---|
QOpcUaMonitoringParameters::MonitoringMode::Disabled | 0 | L'échantillonnage est désactivé et aucune notification n'est générée. |
QOpcUaMonitoringParameters::MonitoringMode::Sampling | 1 | L'échantillonnage est activé, les notifications sont générées et mises en file d'attente, mais la création de rapports est désactivée. |
QOpcUaMonitoringParameters::MonitoringMode::Reporting | 2 | L'échantillonnage est activé, les notifications sont générées et mises en file d'attente, et la création de rapports est activée. |
enum class QOpcUaMonitoringParameters::Parameter
flags QOpcUaMonitoringParameters::Parameters
Énumère les paramètres pouvant être modifiés à l'exécution à l'aide de la fonction ` QOpcUaNode::modifyMonitoring()`. Il n'est pas garanti que toutes les valeurs soient prises en charge par tous les plugins. L'absence de prise en charge sera signalée via le signal ` QOpcUaNode::monitoringStatusChanged `.
| Constante | Valeur |
|---|---|
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) |
Le type « Parameters » est un typedef pour QFlags<Parameter>. Il stocke une combinaison OU de valeurs de type « Parameter ».
enum class QOpcUaMonitoringParameters::SubscriptionType
Cette énumération sert à déterminer si l'élément surveillé peut être ajouté à un abonnement partagé ou s'il faut créer un nouvel abonnement.
| Constante | Valeur | Description |
|---|---|---|
QOpcUaMonitoringParameters::SubscriptionType::Shared | 0 | Partager l'abonnement avec d'autres éléments surveillés ayant le même intervalle |
QOpcUaMonitoringParameters::SubscriptionType::Exclusive | 1 | Demander un nouvel abonnement pour cet attribut |
Documentation des fonctions membres
QOpcUaMonitoringParameters::QOpcUaMonitoringParameters()
Le constructeur par défaut de QOpcUaMonitoringParameters.
QOpcUaMonitoringParameters::QOpcUaMonitoringParameters(double publishingInterval, QOpcUaMonitoringParameters::SubscriptionType shared = SubscriptionType::Shared, quint32 subscriptionId = 0)
Il s'agit du constructeur qui couvre la plupart des cas d'utilisation pour l'utilisateur de Qt OPC UA. Le paramètre « publishingInterval » doit être fourni, tandis que « shared » et « subscriptionId » sont facultatifs.
QOpcUaMonitoringParameters::QOpcUaMonitoringParameters(const QOpcUaMonitoringParameters &other)
Crée un objet `QOpcuaMonitoringParameters` à partir de la valeur de ` other`.
[noexcept] QOpcUaMonitoringParameters::~QOpcUaMonitoringParameters()
Le destructeur de ` QOpcUaMonitoringParameters`.
void QOpcUaMonitoringParameters::clearFilter()
Supprime le filtre actuel des paramètres de surveillance.
Voir également filter() et setFilter().
void QOpcUaMonitoringParameters::clearFilterResult()
Supprime le résultat actuel du filtre des paramètres de surveillance.
Voir également filterResult() et setFilterResult().
bool QOpcUaMonitoringParameters::discardOldest() const
Renvoie le paramètre « discardOldest » de l'élément surveillé.
Voir aussi setDiscardOldest().
[since 6.7] QHash<quint32, QOpcUa::UaStatusCode> QOpcUaMonitoringParameters::failedTriggeredItemsStatus() const
Renvoie les codes d'état de tous les éléments déclenchés par la fonction ` setTriggeredItemIds()` qui n'ont pas pu être ajoutés correctement.
Cette fonction a été introduite dans Qt 6.7.
Voir aussi setFailedTriggeredItemsStatus().
QVariant QOpcUaMonitoringParameters::filter() const
Renvoie le filtre actuel.
Voir aussi setFilter().
QVariant QOpcUaMonitoringParameters::filterResult() const
Renvoie le résultat du filtrage.
Cette valeur est vide dans le cas d'une surveillance d'attribut. Dans le cas d'une surveillance d'événement, le résultat du filtre peut être vide si le serveur n'a détecté aucune erreur dans le filtre.
Voir également setFilterResult().
QString QOpcUaMonitoringParameters::indexRange() const
Renvoie la plage d'index de l'élément surveillé.
Voir également setIndexRange().
bool QOpcUaMonitoringParameters::isPublishingEnabled() const
Renvoie le mode de publication de l'abonnement.
quint32 QOpcUaMonitoringParameters::lifetimeCount() const
Renvoie le nombre total d'abonnements créés depuis sa création.
Voir également setLifetimeCount().
quint32 QOpcUaMonitoringParameters::maxKeepAliveCount() const
Renvoie le nombre maximal de tentatives de connexion de l'abonnement.
Voir également setMaxKeepAliveCount().
quint32 QOpcUaMonitoringParameters::maxNotificationsPerPublish() const
Renvoie le nombre maximal de notifications par publication pour l'abonnement.
Voir aussi setMaxNotificationsPerPublish().
quint32 QOpcUaMonitoringParameters::monitoredItemId() const
Renvoie l'identifiant de l'élément surveillé attribué par le serveur. Si l'identifiant de l'élément surveillé est égal à 0, cela signifie que la création de l'élément surveillé a échoué.
Voir également setMonitoredItemId().
QOpcUaMonitoringParameters::MonitoringMode QOpcUaMonitoringParameters::monitoringMode() const
Renvoie le mode de surveillance de l'élément surveillé.
Voir également setMonitoringMode().
quint8 QOpcUaMonitoringParameters::priority() const
Renvoie la priorité de l'abonnement utilisé pour l'élément surveillé.
Voir également setPriority().
double QOpcUaMonitoringParameters::publishingInterval() const
Renvoie l'intervalle de publication de l'abonnement. L'intervalle est exprimé en millisecondes.
Voir également setPublishingInterval().
quint32 QOpcUaMonitoringParameters::queueSize() const
Renvoie la taille de la file d'attente de l'élément surveillé.
Voir aussi setQueueSize().
double QOpcUaMonitoringParameters::samplingInterval() const
Renvoie l'intervalle d'échantillonnage révisé de l'élément surveillé. L'intervalle est exprimé en millisecondes.
Voir également setSamplingInterval().
void QOpcUaMonitoringParameters::setDiscardOldest(bool discardOldest)
Définissez « discardOldest » (Dernière modification) comme paramètre « discardOldest » (Date de modification) pour l'élément surveillé.
Voir également discardOldest().
[since 6.7] void QOpcUaMonitoringParameters::setFailedTriggeredItemsStatus(const QHash<quint32, QOpcUa::UaStatusCode> &status)
Définit les codes d'état pour tous les éléments déclenchés qui n'ont pas pu être ajoutés correctement à status. La définition de cette valeur en tant que client n'a aucun effet.
Cette fonction a été introduite dans Qt 6.7.
Voir également failedTriggeredItemsStatus().
void QOpcUaMonitoringParameters::setFilter(const QOpcUaMonitoringParameters::DataChangeFilter &filter)
Définit DataChangeFilter filter comme filtre pour l'élément surveillé. Si un autre filtre de modification des données ou un filtre d'événement est présent, celui-ci sera remplacé.
Si le serveur n'accepte pas le filtre, cela sera indiqué par le code d'état une fois la requête QOpcUaNode::enableMonitoring() terminée.
Voir également filter().
void QOpcUaMonitoringParameters::setFilter(const QOpcUaMonitoringParameters::EventFilter &eventFilter)
Demandez « eventFilter » comme filtre pour l'élément surveillé. Si un autre filtre d'événement ou un filtre de modification de données est présent, il sera remplacé. Si le serveur n'accepte pas le filtre, cela sera indiqué par le code d'état et le résultat du filtre d'événement une fois la requête QOpcUaNode::enableMonitoring() terminée.
Voir également filter().
void QOpcUaMonitoringParameters::setFilterResult(const QOpcUaEventFilterResult &eventFilterResult)
Définit le résultat du filtre d'événement sur « eventFilterResult ».
Cette méthode ne doit être utilisée que par le backend ; la définition d'un résultat de filtre d'événement par un utilisateur n'a aucun effet.
Voir également filterResult().
void QOpcUaMonitoringParameters::setIndexRange(const QString &indexRange)
Demande indexRange comme plage d'index pour l'élément surveillé. Pour plus d'informations sur la chaîne de caractères de la plage d'index, consultez QOpcUaNode::readAttributeRange().
Voir également indexRange().
void QOpcUaMonitoringParameters::setLifetimeCount(quint32 lifetimeCount)
Définir « lifetimeCount » comme nombre total d'abonnements.
Voir également lifetimeCount().
void QOpcUaMonitoringParameters::setMaxKeepAliveCount(quint32 maxKeepAliveCount)
Définissez la valeur « maxKeepAliveCount » comme nombre maximal de tentatives de connexion pour l'abonnement.
Voir également maxKeepAliveCount().
void QOpcUaMonitoringParameters::setMaxNotificationsPerPublish(quint32 maxNotificationsPerPublish)
Définissez la valeur « maxNotificationsPerPublish » comme nombre maximal de notifications par publication pour l'abonnement.
Voir également maxNotificationsPerPublish().
void QOpcUaMonitoringParameters::setMonitoredItemId(quint32 monitoredItemId)
Définit l'identifiant de l'élément surveillé sur monitoredItemId.
La définition de cette valeur en tant que client n'a aucun effet.
Voir également monitoredItemId().
void QOpcUaMonitoringParameters::setMonitoringMode(QOpcUaMonitoringParameters::MonitoringMode monitoringMode)
Définissez « monitoringMode » comme mode de surveillance pour l'élément surveillé.
Voir également monitoringMode().
void QOpcUaMonitoringParameters::setPriority(quint8 priority)
Définissez priority comme priorité pour l'abonnement.
Voir également priority().
void QOpcUaMonitoringParameters::setPublishingEnabled(bool publishingEnabled)
Définissez « publishingEnabled » comme mode de publication pour l'abonnement.
Voir également isPublishingEnabled().
void QOpcUaMonitoringParameters::setPublishingInterval(double publishingInterval)
Demander l'publishingInterval e comme intervalle de publication pour l'abonnement. L'intervalle est exprimé en millisecondes.
Voir également la fonction ` publishingInterval()`.
void QOpcUaMonitoringParameters::setQueueSize(quint32 queueSize)
Définissez la taille de la file d'attente de l'élément surveillé sur « queueSize ».
Voir également queueSize().
void QOpcUaMonitoringParameters::setSamplingInterval(double samplingInterval)
Demandez un intervalle d’échantill samplingInterval pour l’élément surveillé. L’intervalle est exprimé en millisecondes.
Voir également samplingInterval().
void QOpcUaMonitoringParameters::setStatusCode(QOpcUa::UaStatusCode statusCode)
Définissez le code d'état sur « statusCode ».
Voir également statusCode().
void QOpcUaMonitoringParameters::setSubscriptionId(quint32 subscriptionId)
Demandez la création des éléments surveillés sur un abonnement connu à l'aide de la commande « subscriptionId ».
Voir également subscriptionId().
void QOpcUaMonitoringParameters::setSubscriptionType(QOpcUaMonitoringParameters::SubscriptionType shared)
Spécifiez « shared » comme type d’abonnement pour cet abonnement.
Voir également subscriptionType().
[since 6.7] void QOpcUaMonitoringParameters::setTriggeredItemIds(const QSet<quint32> &ids)
Ajoute des liens de déclenchement à tous les éléments surveillés dans « ids », conformément à la description fournie dans la spécification OPC UA 1.05, section 5.12.1.6.
Les valeurs de ` ids ` doivent correspondre aux identifiants d’éléments surveillés d’autres éléments surveillés sur le même abonnement. Si le mode de surveillance de ces éléments est défini sur « Échantillonnage », leurs notifications de modification de données seront transmises au client chaque fois que cette surveillance détectera une modification de données.
Les identifiants qui n'ont pas pu être ajoutés ne seront pas inclus dans l'état de surveillance, mais apparaîtront à la place dans failedTriggeredItemsStatus().
La modification de ce paramètre pour le vider supprimera tous les liens de déclenchement.
Cette fonction a été introduite dans Qt 6.7.
Voir également ` triggeredItemIds()`.
QOpcUa::UaStatusCode QOpcUaMonitoringParameters::statusCode() const
Renvoie le code d'état de la création de l'élément surveillé.
Voir également setStatusCode().
quint32 QOpcUaMonitoringParameters::subscriptionId() const
Renvoie l'identifiant d'abonnement attribué.
Voir aussi setSubscriptionId().
QOpcUaMonitoringParameters::SubscriptionType QOpcUaMonitoringParameters::subscriptionType() const
Renvoie le type d'abonnement.
Voir aussi setSubscriptionType().
[since 6.7] QSet<quint32> QOpcUaMonitoringParameters::triggeredItemIds() const
Renvoie les identifiants des éléments surveillés déclenchés par cet élément surveillé.
Cette fonction a été introduite dans Qt 6.7.
Voir également setTriggeredItemIds().
QOpcUaMonitoringParameters &QOpcUaMonitoringParameters::operator=(const QOpcUaMonitoringParameters &other)
Attribue la valeur « other » à cet objet.
© 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.