UaServerUtilities


Functions

OpcUa_StatusCode UaServer_ProviderList_AddProvider (UaServer *a_pServer, UaServer_Provider *a_pProvider)
 Adds a new provider to the server configuration.
OpcUa_StatusCode UaServer_SendFault (OpcUa_RequestHeader *a_pRequestHeader, OpcUa_StatusCode a_uStatus, OpcUa_Void **a_ppResponse, OpcUa_ResponseHeader *a_pResponseHeader, OpcUa_EncodeableType **a_ppResponseType)
 Test Implementation.
OpcUa_StatusCode UaServer_ProviderList_Create (UaServer *a_pServer)
 Initialize and Fill the Provider List.
UaServer_ProviderUaServer_ProviderList_GetProvider (UaServer *a_pServer, OpcUa_UInt16 a_NamespaceIndex)
 Returns the provider for the given namespace index.
OpcUa_StatusCode UaServer_ProviderList_Delete (UaServer *a_pServer)
 Clear the Provider List.
OpcUa_StatusCode UaServer_CreateVariantStringArray (OpcUa_Variant *pVariant, OpcUa_StringA *pStringArray, OpcUa_UInt32 uNumberOfStrings)
 ToDoDoc.
OpcUa_StatusCode UaServer_CreateVariantUInt32Array (OpcUa_Variant *pVariant, OpcUa_UInt32 *pUInt32Array, OpcUa_UInt32 uNumberOfUInt32s)
 Create an array of Variant UInts.
OpcUa_StatusCode UaServer_RingBuffer_Initialize (UaServer_RingBuffer *a_pRingbuffer, OpcUa_UInt32 a_uSize)
 Initialize a Ringbuffer.
OpcUa_Void UaServer_RingBuffer_Clear (UaServer_RingBuffer *a_pRingbuffer)
 Clear a Ringbuffer.
OpcUa_Void * UaServer_RingBuffer_Pop (UaServer_RingBuffer *a_pRingbuffer)
 Get an Element from a Ringbuffer.
OpcUa_Void * UaServer_RingBuffer_Push (UaServer_RingBuffer *a_pRingbuffer, OpcUa_Void *a_pData)
 Push an Element into a Rinbuffer.
OpcUa_StatusCode UaServer_RingBuffer_PushSafe (UaServer_RingBuffer *a_pRingbuffer, OpcUa_Void *a_pData)
 Push an Element into a Rinbuffer if it fits.
OpcUa_Void OpcUa_NodeId_Clone (OpcUa_NodeId *a_pValue, OpcUa_NodeId *a_pCopy)
 Clone a NodeId.
OpcUa_Void OpcUa_ExpandedNodeId_Clone (OpcUa_ExpandedNodeId *a_pValue, OpcUa_ExpandedNodeId *a_pCopy)
 Clone an ExpandedNodeId.
OpcUa_Void OpcUa_QualifiedName_Clone (OpcUa_QualifiedName *a_pValue, OpcUa_QualifiedName *a_pCopy)
 Clone a QualifiedText.
OpcUa_Void OpcUa_LocalizedText_Clone (OpcUa_LocalizedText *a_pValue, OpcUa_LocalizedText *a_pCopy)
 Clone a LocalizedText.
OpcUa_Void OpcUa_ByteString_Clone (OpcUa_ByteString *a_pValue, OpcUa_ByteString *a_pCopy)
 Clone a ByteString.
OpcUa_Void OpcUa_BrowseDescription_Clone (OpcUa_BrowseDescription *a_pValue, OpcUa_BrowseDescription *a_pCopy)
 Clone a BrowseDescription.
OpcUa_Void OpcUa_ReferenceDescription_Clone (OpcUa_ReferenceDescription *a_pValue, OpcUa_ReferenceDescription *a_pCopy)
 Clone a ReferenceDescription.
OpcUa_Void OpcUa_BrowseResult_Clone (OpcUa_BrowseResult *a_pValue, OpcUa_BrowseResult *a_pCopy)
 Clone a BrowseResult.
OpcUa_Void OpcUa_BuildInfo_Clone (OpcUa_BuildInfo *a_pValue, OpcUa_BuildInfo *a_pCopy)
 Clones the buildinfo structure.
OpcUa_Void OpcUa_ServerStatusDataType_Clone (OpcUa_ServerStatusDataType *a_pValue, OpcUa_ServerStatusDataType *a_pCopy)
 Clones the serverstatus datatype.
OpcUa_Void OpcUa_Argument_Clone (OpcUa_Argument *a_pValue, OpcUa_Argument *a_pCopy)
 Clones the Argument.
OpcUa_Void OpcUa_DataValue_Clone (OpcUa_DataValue *a_pValue, OpcUa_DataValue *a_pCopy)
 Clones a DataValue.
OpcUa_Void OpcUa_MonitoredItemNotification_Clone (OpcUa_MonitoredItemNotification *a_pValue, OpcUa_MonitoredItemNotification *a_pCopy)
 Clones a MonitoredItemNotification.
OpcUa_Void OpcUa_DiagnosticInfo_Clone (OpcUa_DiagnosticInfo *a_pValue, OpcUa_DiagnosticInfo *a_pCopy)
 Clones a DiagnosticInfo.
OpcUa_Void OpcUa_DataChangeNotification_Clone (OpcUa_DataChangeNotification *a_pValue, OpcUa_DataChangeNotification *a_pCopy)
 Clones a DataChangeNotification.
OpcUa_Void OpcUa_ExtensionObject_Clone (OpcUa_ExtensionObject *a_pValue, OpcUa_ExtensionObject *a_pCopy)
 Clone a ExtensionObject.
OpcUa_Void OpcUa_Variant_Clone (OpcUa_Variant *a_pValue, OpcUa_Variant *a_pCopy)
 Clone a Variant.
OpcUa_Void OpcUa_NotificationMessage_Clone (OpcUa_NotificationMessage *a_pValue, OpcUa_NotificationMessage *a_pCopy)
 Clones a NotificationMessage.
OpcUa_Int32 OpcUa_Variant_Compare (OpcUa_Variant *a, OpcUa_Variant *b)
 Compares two variant values.
OpcUa_Int32 OpcUa_ByteString_Compare (OpcUa_ByteString *a, OpcUa_ByteString *b)
 Compares two ByteStrings.
OpcUa_Int32 OpcUa_QualifiedName_Compare (OpcUa_QualifiedName *a, OpcUa_QualifiedName *b)
 Compares two QualifiedNames.
OpcUa_StatusCode UaServer_DateTime_CheckTimeoutHint (OpcUa_TimeVal Reception, OpcUa_TimeVal Now, OpcUa_UInt32 TimeoutHint)
 Checks if TimeoutHint of RequestHeader is timed out.

Variables

OpcUa_UInt32 g_uDataTypeSize [NUM_BUILTINTYPES]
 ToDoDoc.

Function Documentation

OpcUa_Void OpcUa_Argument_Clone ( OpcUa_Argument *  a_pValue,
OpcUa_Argument *  a_pCopy 
)

Clones the Argument.

Parameters:
a_pValue source
a_pCopy destination

OpcUa_Void OpcUa_BrowseDescription_Clone ( OpcUa_BrowseDescription *  a_pValue,
OpcUa_BrowseDescription *  a_pCopy 
)

Clone a BrowseDescription.

Parameters:
a_pValue the value of the actual BrowseDescription.
a_pCopy the destination of this operation.

OpcUa_Void OpcUa_BrowseResult_Clone ( OpcUa_BrowseResult *  a_pValue,
OpcUa_BrowseResult *  a_pCopy 
)

Clone a BrowseResult.

Parameters:
a_pValue source
a_pCopy destination

OpcUa_Void OpcUa_BuildInfo_Clone ( OpcUa_BuildInfo *  a_pValue,
OpcUa_BuildInfo *  a_pCopy 
)

Clones the buildinfo structure.

Parameters:
a_pValue source
a_pCopy destination

OpcUa_Void OpcUa_ByteString_Clone ( OpcUa_ByteString *  a_pValue,
OpcUa_ByteString *  a_pCopy 
)

Clone a ByteString.

Parameters:
a_pValue the value of the actual bytestring.
a_pCopy the destination of this operation.

OpcUa_Int32 OpcUa_ByteString_Compare ( OpcUa_ByteString *  a,
OpcUa_ByteString *  b 
)

Compares two ByteStrings.

Works similar to strcmp().

Parameters:
a First ByteString to compare.
b Second ByteString to compare.
Returns:
0 if the values are identical.

OpcUa_Void OpcUa_DataChangeNotification_Clone ( OpcUa_DataChangeNotification *  a_pValue,
OpcUa_DataChangeNotification *  a_pCopy 
)

Clones a DataChangeNotification.

Parameters:
a_pValue source
a_pCopy destination

OpcUa_Void OpcUa_DataValue_Clone ( OpcUa_DataValue *  a_pValue,
OpcUa_DataValue *  a_pCopy 
)

Clones a DataValue.

Parameters:
a_pValue source
a_pCopy destination

OpcUa_Void OpcUa_DiagnosticInfo_Clone ( OpcUa_DiagnosticInfo *  a_pValue,
OpcUa_DiagnosticInfo *  a_pCopy 
)

Clones a DiagnosticInfo.

Parameters:
a_pValue source
a_pCopy destination

OpcUa_Void OpcUa_ExpandedNodeId_Clone ( OpcUa_ExpandedNodeId *  a_pValue,
OpcUa_ExpandedNodeId *  a_pCopy 
)

Clone an ExpandedNodeId.

Parameters:
a_pValue the value of the actual node.
a_pCopy the destination of this operation.

OpcUa_Void OpcUa_ExtensionObject_Clone ( OpcUa_ExtensionObject *  a_pValue,
OpcUa_ExtensionObject *  a_pCopy 
)

Clone a ExtensionObject.

Parameters:
a_pValue the value of the actual ExtensionObject.
a_pCopy the destination of this operation.

OpcUa_Void OpcUa_LocalizedText_Clone ( OpcUa_LocalizedText *  a_pValue,
OpcUa_LocalizedText *  a_pCopy 
)

Clone a LocalizedText.

Parameters:
a_pValue the value of the actual localized text.
a_pCopy the destination of this operation.

OpcUa_Void OpcUa_MonitoredItemNotification_Clone ( OpcUa_MonitoredItemNotification *  a_pValue,
OpcUa_MonitoredItemNotification *  a_pCopy 
)

Clones a MonitoredItemNotification.

Parameters:
a_pValue source
a_pCopy destination

OpcUa_Void OpcUa_NodeId_Clone ( OpcUa_NodeId *  a_pValue,
OpcUa_NodeId *  a_pCopy 
)

Clone a NodeId.

Parameters:
a_pValue the value of the actual node.
a_pCopy the destination of this operation.

OpcUa_Void OpcUa_NotificationMessage_Clone ( OpcUa_NotificationMessage *  a_pValue,
OpcUa_NotificationMessage *  a_pCopy 
)

Clones a NotificationMessage.

Parameters:
a_pValue source
a_pCopy destination

OpcUa_Void OpcUa_QualifiedName_Clone ( OpcUa_QualifiedName *  a_pValue,
OpcUa_QualifiedName *  a_pCopy 
)

Clone a QualifiedText.

Parameters:
a_pValue the value of the actual qualified name.
a_pCopy the destination of this operation.

OpcUa_Int32 OpcUa_QualifiedName_Compare ( OpcUa_QualifiedName *  a,
OpcUa_QualifiedName *  b 
)

Compares two QualifiedNames.

Works similar to strcmp().

Parameters:
a First QualifiedName to compare.
b Second QualifiedName to compare.
Returns:
0 if the values are identical.

OpcUa_Void OpcUa_ReferenceDescription_Clone ( OpcUa_ReferenceDescription *  a_pValue,
OpcUa_ReferenceDescription *  a_pCopy 
)

Clone a ReferenceDescription.

Parameters:
a_pValue the value of the actual ReferenceDescription.
a_pCopy the destination of this operation.

OpcUa_Void OpcUa_ServerStatusDataType_Clone ( OpcUa_ServerStatusDataType *  a_pValue,
OpcUa_ServerStatusDataType *  a_pCopy 
)

Clones the serverstatus datatype.

Parameters:
a_pValue source
a_pCopy destination

OpcUa_Void OpcUa_Variant_Clone ( OpcUa_Variant *  a_pValue,
OpcUa_Variant *  a_pCopy 
)

Clone a Variant.

Parameters:
a_pValue the value of the actual variant.
a_pCopy the destination of this operation.

OpcUa_Int32 OpcUa_Variant_Compare ( OpcUa_Variant *  a,
OpcUa_Variant *  b 
)

Compares two variant values.

Works similar to strcmp().

Parameters:
a First variant to compare.
b Second variant to compare.
Returns:
0 if the values are identical.

OpcUa_StatusCode UaServer_CreateVariantStringArray ( OpcUa_Variant *  pVariant,
OpcUa_StringA *  pStringArray,
OpcUa_UInt32  uNumberOfStrings 
)

ToDoDoc.

Parameters:
pVariant a pointer to a variant variable.
pStringArray pointer to an array of Strings.
uNumberOfStrings the number of Strings.
Returns:
the OPC UA Status code.

OpcUa_StatusCode UaServer_CreateVariantUInt32Array ( OpcUa_Variant *  pVariant,
OpcUa_UInt32 *  pUInt32Array,
OpcUa_UInt32  uNumberOfUInt32s 
)

Create an array of Variant UInts.

Parameters:
pVariant a pointer to a variant variable.
pUInt32Array pointer to an array of UInts.
uNumberOfUInt32s the number of UInts.
Returns:
the OPC UA Status code.

OpcUa_StatusCode UaServer_DateTime_CheckTimeoutHint ( OpcUa_TimeVal  Reception,
OpcUa_TimeVal  Now,
OpcUa_UInt32  TimeoutHint 
)

Checks if TimeoutHint of RequestHeader is timed out.

Parameters:
Reception TimeVal when the message was received
Now now...
the timeout hint of the RequestHeader
Returns:
OpcUa_Good if not timed out, OpcUa_Bad otherwise

OpcUa_StatusCode UaServer_ProviderList_AddProvider ( UaServer a_pServer,
UaServer_Provider a_pProvider 
)

Adds a new provider to the server configuration.

Parameters:
a_pServer Server context.
a_pProvider Provider configuration.

OpcUa_StatusCode UaServer_ProviderList_Create ( UaServer a_pServer  ) 

Initialize and Fill the Provider List.

Parameters:
a_pServer a pointer to the actual server.
Returns:
the OPC UA Status code.

OpcUa_StatusCode UaServer_ProviderList_Delete ( UaServer a_pServer  ) 

Clear the Provider List.

Parameters:
a_pServer a pointer to all information of the Server.
Returns:
the OPC UA Status code.

UaServer_Provider* UaServer_ProviderList_GetProvider ( UaServer a_pServer,
OpcUa_UInt16  a_NamespaceIndex 
)

Returns the provider for the given namespace index.

Parameters:
a_pServer Server context.
a_NamespaceIndex The namespace index.
Returns:
Returns the pointer to the provider context if found or NULL if not found.

OpcUa_Void UaServer_RingBuffer_Clear ( UaServer_RingBuffer *  a_pRingbuffer  ) 

Clear a Ringbuffer.

Parameters:
a_pRingbuffer a pointer to the existing ringbuffer.

OpcUa_StatusCode UaServer_RingBuffer_Initialize ( UaServer_RingBuffer *  a_pRingbuffer,
OpcUa_UInt32  a_uSize 
)

Initialize a Ringbuffer.

Parameters:
a_pRingbuffer a pointer to the new ringbuffer.
a_uSize the size for the new ringbuffer.
Returns:
the OPC UA Status code.

OpcUa_Void* UaServer_RingBuffer_Pop ( UaServer_RingBuffer *  a_pRingbuffer  ) 

Get an Element from a Ringbuffer.

Parameters:
a_pRingbuffer a pointer to the existing ringbuffer.

OpcUa_Void* UaServer_RingBuffer_Push ( UaServer_RingBuffer *  a_pRingbuffer,
OpcUa_Void *  a_pData 
)

Push an Element into a Rinbuffer.

Parameters:
a_pRingbuffer a pointer to the existing ringbuffer.
a_pData the data to push into the ringbuffer.

OpcUa_StatusCode UaServer_RingBuffer_PushSafe ( UaServer_RingBuffer *  a_pRingbuffer,
OpcUa_Void *  a_pData 
)

Push an Element into a Rinbuffer if it fits.

Parameters:
a_pRingbuffer a pointer to the existing ringbuffer.
a_pData the data to push into the ringbuffer.
Returns:
the OPC UA Status code.

OpcUa_StatusCode UaServer_SendFault ( OpcUa_RequestHeader *  a_pRequestHeader,
OpcUa_StatusCode  a_uStatus,
OpcUa_Void **  a_ppResponse,
OpcUa_ResponseHeader *  a_pResponseHeader,
OpcUa_EncodeableType **  a_ppResponseType 
)

Test Implementation.

Parameters:
a_pRequestHeader The RequestHeader structure.
a_uStatus Error code.
a_ppResponse a pointer to the Response.
a_pResponseHeader The ResponseHeader structure.
a_ppResponseType ToDoDoc
Returns:
the OPC UA Status code.