High Performance OPC UA Server SDK
1.2.0.193
|
The Browse service is used by a client to navigate through the address space by passing a starting node and browse filters. More...
#include <browserequest.h>
Data Fields | |
struct ua_viewdescription | view |
Description of the View to browse. More... | |
uint32_t | requested_max_references_per_node |
Indicates the maximum number of references to return for each starting Node specified in the request. More... | |
struct ua_browsedescription * | nodes |
A list of nodes to Browse. | |
int32_t | num_nodes |
Number of elements in ua_browserequest::nodes. | |
Related Functions | |
void | ua_browserequest_init (struct ua_browserequest *t) |
Initialize an ua_browserequest struct with a valid value. More... | |
void | ua_browserequest_clear (struct ua_browserequest *t) |
Clear all resources alloctated in an ua_browserequest struct. More... | |
int | ua_browserequest_compare (const struct ua_browserequest *a, const struct ua_browserequest *b) |
Compare two ua_browserequest structs. More... | |
int | ua_browserequest_copy (struct ua_browserequest *dst, const struct ua_browserequest *src) |
Create a copy of a ua_browserequest struct. More... | |
static int | ua_browserequest_resize_nodes_array (struct ua_browserequest *val, int32_t new_len) |
Resize the nodes array of a ua_browserequest struct. More... | |
The Browse service is used by a client to navigate through the address space by passing a starting node and browse filters.
The server returns the list of referenced nodes matching the filter criteria.
The Browse service takes a list of starting nodes and returns a list of connected nodes for each starting node. Nevertheless, most clients will only pass one starting node for the main purpose of building a tree hierarchy. Since the OPC UA address space can be a full-meshed network and is not limited to a pure hierarchy, the capability to pass in a list of starting nodes is mainly used to browse metadata like the properties of a list of variables.
|
related |
Clear all resources alloctated in an ua_browserequest struct.
Frees allocated memory like arrays and resets numeric values. The ua_browserequest struct itself is not freed and must be freed by the caller if required. This function always succeeds for a valid ua_browserequest struct, that was validly decoded or initilized by ua_browserequest_init.
|
related |
Compare two ua_browserequest structs.
Compares the content of the ua_browserequest struct a
to the content of the ua_browserequest 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_browserequest structs, so it is well suited to not only determine equality, but also sort multiple instances of this struct.
|
related |
Create a copy of a ua_browserequest struct.
Copy all fields from struct ua_browserequest 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.
|
related |
Initialize an ua_browserequest 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_browserequest struct can also be passed to ua_browserequest_clear. This function will always succeed as long as an ua_browserequest struct is passed to it.
|
related |
Resize the nodes array of a ua_browserequest struct.
Depending on new_len
and the current size of the array, the array will be created, increased, decreased or deleted. In case array members are removed these are cleared properly, new array members are initialized with zero.
new_len | New length of the nodes array in number of members. |
requested_max_references_per_node |
Indicates the maximum number of references to return for each starting Node specified in the request.
The value 0 indicates that the Client is imposing no limitation.
view |
Description of the View to browse.
An empty ViewDescription value indicates the entire address space. If ViewDescription is empty, all references of the node to browse are returned. If any other view is specified, only the references of the node to browse that are defined for that view are returned.