High Performance OPC UA Server SDK  1.2.0.193
ua_modelchangestructuredatatype Struct Reference

Contains elements that describe changes of the model. More...

#include <modelchangestructuredatatype.h>

Data Fields

struct ua_nodeid affected
 NodeId of the Node that was changed. More...
 
struct ua_nodeid affected_type
 If the affected Node was an object or Variable, affectedType contains the NodeId of the TypeDefinitionNode of the affected Node. More...
 
uint8_t verb
 Describes the changes happening to the affected Node. More...
 

Related Functions

void ua_modelchangestructuredatatype_init (struct ua_modelchangestructuredatatype *t)
 Initialize an ua_modelchangestructuredatatype struct with a valid value. More...
 
void ua_modelchangestructuredatatype_clear (struct ua_modelchangestructuredatatype *t)
 Clear all resources alloctated in an ua_modelchangestructuredatatype struct. More...
 
int ua_modelchangestructuredatatype_compare (const struct ua_modelchangestructuredatatype *a, const struct ua_modelchangestructuredatatype *b)
 Compare two ua_modelchangestructuredatatype structs. More...
 
int ua_modelchangestructuredatatype_copy (struct ua_modelchangestructuredatatype *dst, const struct ua_modelchangestructuredatatype *src)
 Create a copy of a ua_modelchangestructuredatatype struct. More...
 

Detailed Description

Contains elements that describe changes of the model.

Friends And Related Function Documentation

void ua_modelchangestructuredatatype_clear ( struct ua_modelchangestructuredatatype t)
related

Clear all resources alloctated in an ua_modelchangestructuredatatype struct.

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

int ua_modelchangestructuredatatype_compare ( const struct ua_modelchangestructuredatatype a,
const struct ua_modelchangestructuredatatype b 
)
related

Compare two ua_modelchangestructuredatatype structs.

Compares the content of the ua_modelchangestructuredatatype struct a to the content of the ua_modelchangestructuredatatype 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_modelchangestructuredatatype structs, so it is well suited to not only determine equality, but also sort multiple instances of this struct.

int ua_modelchangestructuredatatype_copy ( struct ua_modelchangestructuredatatype dst,
const struct ua_modelchangestructuredatatype src 
)
related

Create a copy of a ua_modelchangestructuredatatype struct.

Copy all fields from struct ua_modelchangestructuredatatype 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_modelchangestructuredatatype_init ( struct ua_modelchangestructuredatatype t)
related

Initialize an ua_modelchangestructuredatatype 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_modelchangestructuredatatype struct can also be passed to ua_modelchangestructuredatatype_compare, ua_modelchangestructuredatatype_copy and ua_modelchangestructuredatatype_clear. This function will always succeed as long as an ua_modelchangestructuredatatype struct is passed to it.

Field Documentation

affected

NodeId of the Node that was changed.

The client should assume that the affected Node has been created or deleted, had a Reference added or deleted, or the DataType has changed as described by the verb.

affected_type

If the affected Node was an object or Variable, affectedType contains the NodeId of the TypeDefinitionNode of the affected Node.

Otherwise it is set to null.

verb

Describes the changes happening to the affected Node.

The verb is an 8-bit unsigned integer used as bit mask with the structure defined in the following table:

Field Bit Description
NodeAdded 0 Indicates the affected Node has been added.
NodeDeleted 1 Indicates the affected Node has been deleted.
ReferenceAdded 2 Indicates a Reference has been added. The affected Node may be either a SourceNode or TargetNode. Note that an added bidirectional Reference is reflected by two ChangeStructures.
ReferenceDeleted 3 Indicates a Reference has been deleted. The affected Node may be either a SourceNode or TargetNode. Note that a deleted bidirectional Reference is reflected by two ChangeStructures.
DataTypeChanged 4 This verb may be used only for affected Nodes that are Variables or VariableTypes. It indicates that the DataType Attribute has changed.
Reserved 5:7 Reserved for future use. Shall always be zero.

A verb may identify several changes on the affected Node at once. This feature should be used if event compression is used.

Note that all verbs shall always be considered in the context where the ModelChangeStructureDataType is used. A NodeDeleted may indicate that a Node was removed from a view but still exists in other Views.


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