UaReferenceLists Class Reference
[Core Module Address Model Classes]

Class definition of the UaReferenceLists Implements the complete Referencelist of Nodes. More...

#include <uabasenodes.h>

Inheritance diagram for UaReferenceLists:
Collaboration diagram for UaReferenceLists:

List of all members.


Public Member Functions

 UaReferenceLists ()
virtual ~UaReferenceLists ()
virtual UaStatus browseReferences (const ServiceContext &serviceContext, BrowseContext &browseContext, UaReferenceDescriptions &References)
virtual UaStatus translateBrowsePathToNodeId (const ServiceContext &serviceContext, const UaNodeId &startingNode, UaRelativePath &relativePath, UaBrowsePathTargets &browsePathTargets)
virtual void addTargetNode (UaReference *pReference)
virtual void addSourceNode (UaReference *pReference)
virtual UaStatus removeSourceNode (UaReference *pReferenceToRemove)
virtual UaStatus removeTargetNode (UaNode *pTargetNode, const UaNodeId &referenceTypeId, OpcUa_Boolean deleteBidirectional)
virtual UaStatus removeTargetNode (const UaNodeId &targetNodeId, const UaNodeId &referenceTypeId, OpcUa_Boolean deleteBidirectional)
virtual UaStatus removeCrossNodeManagerRef (NodeManager *pNodeManager)
virtual UaStatus invalidateSourceReferences (OpcUa_Boolean deleteSourceReferences)
virtual UaStatus invalidateTargetReferences (OpcUa_Boolean deleteTargetReferences)
virtual UaNodegetUaNode () const =0

Protected Attributes

UaReferencem_pTargetNodes
UaReferencem_pSourceNodes

Detailed Description

Class definition of the UaReferenceLists Implements the complete Referencelist of Nodes.

UaReferenceLists


Constructor & Destructor Documentation

UaReferenceLists::UaReferenceLists (  ) 

construction

UaReferenceLists::~UaReferenceLists (  )  [virtual]

destruction


Member Function Documentation

UaStatus UaReferenceLists::browseReferences ( const ServiceContext serviceContext,
BrowseContext browseContext,
UaReferenceDescriptions &  References 
) [virtual]

Discover the references of a specified node of a view. This method is used to return a list of references and target nodes for the passed node to browse for the services Browse and BrowseNext.

Parameters:
serviceContext General context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
browseContext Browse context for the first browse or the following browse with continuation point.
References Array of ReferenceDescription results for the browsed node.
Returns:
Error code

UaStatus UaReferenceLists::translateBrowsePathToNodeId ( const ServiceContext serviceContext,
const UaNodeId startingNode,
UaRelativePath relativePath,
UaBrowsePathTargets &  browsePathTargets 
) [virtual]

Find a node based on an element of an relative path.

Parameters:
serviceContext General context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
startingNode Starting node from where the relative path is defined.
relativePath Relative path from the starting node to the searched node.
browsePathTargets all needed targets of the Browsepath.
Returns:
Error code

void UaReferenceLists::addTargetNode ( UaReference pReference  )  [virtual]

Add a reference to a target node where this node is the source node.

Parameters:
pReference a reference to a target node.

void UaReferenceLists::addSourceNode ( UaReference pReference  )  [virtual]

Add a reference to a source node where this node is the target node.

Parameters:
pReference a reference to a target node.

UaStatus UaReferenceLists::removeSourceNode ( UaReference pReferenceToRemove  )  [virtual]

Remove a reference to a source node where this node is the target node.

Parameters:
pReferenceToRemove a reference to a target node to be removed.
Returns:
Error code

UaStatus UaReferenceLists::removeTargetNode ( UaNode pTargetNode,
const UaNodeId referenceTypeId,
OpcUa_Boolean  deleteBidirectional 
) [virtual]

Remove a reference to a target node where this node is the source node.

Parameters:
pTargetNode The target node to which the reference should be removed.
referenceTypeId Type of the reference to remove from the source node to the target node.
deleteBidirectional TRUE if delete bidirectional FALSE if not.
Returns:
Error code

UaStatus UaReferenceLists::removeTargetNode ( const UaNodeId targetNodeId,
const UaNodeId referenceTypeId,
OpcUa_Boolean  deleteBidirectional 
) [virtual]

Remove a reference to a target node where this node is the source node.

Parameters:
pTargetNode The target node to which the reference should be removed.
referenceTypeId Type of the reference to remove from the source node to the target node.
deleteBidirectional TRUE if delete bidirectional FALSE if not.
Returns:
Error code

UaStatus UaReferenceLists::removeCrossNodeManagerRef ( NodeManager pNodeManager  )  [virtual]

Remove references to another NodeManager.

Parameters:
pNodeManager Pointer to NodeManager that manages references from the starting node to nodes in the that NodeManager.
Returns:
Error code

UaStatus UaReferenceLists::invalidateSourceReferences ( OpcUa_Boolean  deleteSourceReferences  )  [virtual]

Set all refernces from SourceNodes to this Node invalid.

Parameters:
deleteSourceReferences Indicates if the inverse references in the target nodes must be deleted
Returns:
Error code

UaStatus UaReferenceLists::invalidateTargetReferences ( OpcUa_Boolean  deleteTargetReferences  )  [virtual]

Set all refernces to TargetNode of this node invalid.

Parameters:
deleteTargetReferences Indicates if the inverse references in the target nodes must be deleted
Returns:
Error code


Member Data Documentation

List of references to target nodes where this node is the source node.

List of references to source nodes where this node is the target node.


The documentation for this class was generated from the following files:
  • src/uaserver/uaservercpp/coremodule/uabasenodes.h
  • src/uaserver/uaservercpp/coremodule/uabasenodes.cpp