High Performance OPC UA Server SDK  1.2.0.193
ua_modifysubscriptionrequest Struct Reference

Asynchronous call to modify a Subscription. More...

#include <modifysubscriptionrequest.h>

Data Fields

uint32_t subscription_id
 The Server-assigned identifier for the Subscription.
 
double requested_publishing_interval
 This interval defines the cyclic rate that the Subscription is being requested to return Notifications to the Client. More...
 
uint32_t requested_lifetime_count
 The requested lifetime count. More...
 
uint32_t requested_max_keep_alive_count
 Requested maximum keep-alive count. More...
 
uint32_t max_notifications_per_publish
 The maximum number of notifications that the Client wishes to receive in a single Publish response. More...
 
uint8_t priority
 Indicates the relative priority of the Subscription. More...
 

Related Functions

void ua_modifysubscriptionrequest_init (struct ua_modifysubscriptionrequest *t)
 Initialize an ua_modifysubscriptionrequest struct with a valid value. More...
 
void ua_modifysubscriptionrequest_clear (struct ua_modifysubscriptionrequest *t)
 Clear all resources alloctated in an ua_modifysubscriptionrequest struct. More...
 
int ua_modifysubscriptionrequest_compare (const struct ua_modifysubscriptionrequest *a, const struct ua_modifysubscriptionrequest *b)
 Compare two ua_modifysubscriptionrequest structs. More...
 
int ua_modifysubscriptionrequest_copy (struct ua_modifysubscriptionrequest *dst, const struct ua_modifysubscriptionrequest *src)
 Create a copy of a ua_modifysubscriptionrequest struct. More...
 

Detailed Description

Asynchronous call to modify a Subscription.

Illegal request values for parameters that can be revised do not generate errors. Instead the server will choose default values and indicate them in the corresponding revised parameter.

Changes to the Subscription settings shall be applied immediately by the Server. They take effect as soon as practical but not later than twice the new ua_ModifySubscriptionResponse::revised_publishing_interval.

Friends And Related Function Documentation

void ua_modifysubscriptionrequest_clear ( struct ua_modifysubscriptionrequest t)
related

Clear all resources alloctated in an ua_modifysubscriptionrequest struct.

Frees allocated memory like arrays and resets numeric values. The ua_modifysubscriptionrequest struct itself is not freed and must be freed by the caller if required. This function always succeeds for a valid ua_modifysubscriptionrequest struct, that was validly decoded or initilized by ua_modifysubscriptionrequest_init.

int ua_modifysubscriptionrequest_compare ( const struct ua_modifysubscriptionrequest a,
const struct ua_modifysubscriptionrequest b 
)
related

Compare two ua_modifysubscriptionrequest structs.

Compares the content of the ua_modifysubscriptionrequest struct a to the content of the ua_modifysubscriptionrequest struct b. If a is smaller than b, an integer less than zero is returned, if a is bigger than b, an integer greater than zero is returned. If both structs are equal zero is returned.

This function creates a total order on ua_modifysubscriptionrequest structs, so it is well suited to not only determine equality, but also sort multiple instances of this struct.

int ua_modifysubscriptionrequest_copy ( struct ua_modifysubscriptionrequest dst,
const struct ua_modifysubscriptionrequest src 
)
related

Create a copy of a ua_modifysubscriptionrequest struct.

Copy all fields from struct ua_modifysubscriptionrequest src to dst. Creates a deep copy so all content is recusively copied and both src and dst can be used and must be freed separately.

dst is not cleared before the copy operation, so it must not have any allocated data. It may or may not be initilized by the caller before copy.

Returns
Zero on success or ua_statuscode on failure.
void ua_modifysubscriptionrequest_init ( struct ua_modifysubscriptionrequest t)
related

Initialize an ua_modifysubscriptionrequest struct with a valid value.

After initialization the fields of the struct are set to valid and consistent values and can safley be accessed. An initialized ua_modifysubscriptionrequest struct can also be passed to ua_modifysubscriptionrequest_clear. This function will always succeed as long as an ua_modifysubscriptionrequest struct is passed to it.

Field Documentation

max_notifications_per_publish

The maximum number of notifications that the Client wishes to receive in a single Publish response.

A value of zero indicates that there is no limit.

priority

Indicates the relative priority of the Subscription.

When more than one Subscription needs to send Notifications, the Server should dequeue a Publish request to the Subscription with the highest priority number. For Subscriptions with equal priority the Server should dequeue Publish requests in a round-robin fashion. Any Subscription that needs to send a keep-alive Message shall take precedence regardless of its priority, in order to prevent the Subscription from expiring.

A Client that does not require special priority settings should set this value to zero.

requested_lifetime_count

The requested lifetime count.

The lifetime count shall be a mimimum of three times the keep keep-alive count.

When the publishing timer has expired this number of times without a Publish request being available to send a NotificationMessage, then the Subscription shall be deleted by the Server.

requested_max_keep_alive_count

Requested maximum keep-alive count.

When the publishing timer has expired this number of times without requiring any NotificationMessage to be sent, the Subscription sends a keep-alive Message to the Client.

The negotiated value for this parameter is returned in the response.

If the requested value is 0, the server shall revise with the smallest supported keep-alive count.

requested_publishing_interval

This interval defines the cyclic rate that the Subscription is being requested to return Notifications to the Client.

This interval is expressed in milliseconds.

The negotiated value for this parameter returned in the response is used as the default sampling interval for MonitoredItems assigned to this Subscription.

If the requested value is 0 or negative, the server shall revise with the fastest supported publishing interval.


The documentation for this struct was generated from the following files: