UA Server SDK C++ Bundle  1.4.1.271
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
NodeManagerConfig Class Referenceabstract

Interface used to configure the address space in a NodeManager based on a generic node model. More...

#include <nodemanager.h>

Inherited by NodeManagerUaNode.

Public Member Functions

 NodeManagerConfig ()
 construction
 
virtual ~NodeManagerConfig ()
 destruction
 
virtual UaStatus addUaNode (UaNode *pNewNode)=0
 Add a new UaNode to the node management. More...
 
virtual UaStatus deleteUaNode (UaNode *pNode, OpcUa_Boolean deleteTargetReferences, OpcUa_Boolean deleteSourceReferences=OpcUa_False, OpcUa_Boolean deleteAllChildren=OpcUa_False)=0
 Remove a UaNode from the node management. More...
 
virtual UaStatus addNodeAndReference (UaReferenceLists *pSourceNode, UaReferenceLists *pNewNode, const UaNodeId &referenceTypeId)=0
 Add a new node and a reference to the node management Adds the passed new node to the internal node management of the NodeManager and creates a reference from the passed source node to the new node. More...
 
virtual UaStatus addNodeAndReference (const UaNodeId &sourceNode, UaReferenceLists *pNewNode, const UaNodeId &referenceTypeId)=0
 Add a new node and a reference to the node management Adds the passed new node to the internal node management of the NodeManager and creates a reference from the passed source node to the new node. More...
 
virtual UaStatus addUaReference (UaReferenceLists *pSourceNode, UaReferenceLists *pTargetNode, const UaNodeId &referenceTypeId)=0
 Add a reference from source node to target node Creates a reference from the passed source node to the target node. More...
 
virtual UaStatus addUaReference (const UaNodeId &sourceId, const UaNodeId &targetId, const UaNodeId &referenceTypeId)=0
 Add a reference from source node to target node This functions is provided for convenience and behaves like the functions above. More...
 
virtual UaStatus deleteUaReference (UaReferenceLists *pSourceNode, UaReferenceLists *pTargetNode, const UaNodeId &referenceTypeId)=0
 Remove a reference from source node to target node Deletes a reference from the passed source node to the target node. More...
 
virtual UaStatus deleteUaReference (const UaNodeId &sourceId, const UaNodeId &targetId, const UaNodeId &referenceTypeId)=0
 Remove a reference from source node to target node This functions is provided for convenience and behaves like the functions above. More...
 
virtual OpcUa_UInt16 getNameSpaceIndex () const =0
 Get the namespace index of the node manager. More...
 
virtual EventManagerUaNodegetEventManagerUaNode ()
 Get the EventManagerUaNode interface if implemented by the class implementing the NodeManagerConfig interface. More...
 
virtual void lockNodes ()
 Lock access to nodes managed by the NodeManager.
 
virtual void unlockNodes ()
 Unlock access to nodes managed by the NodeManager.
 

Detailed Description

Interface used to configure the address space in a NodeManager based on a generic node model.

In this interface it is possible to manage the Nodes. It is not possible to create plane copies of this Interface.

Member Function Documentation

virtual UaStatus NodeManagerConfig::addNodeAndReference ( UaReferenceLists pSourceNode,
UaReferenceLists pNewNode,
const UaNodeId referenceTypeId 
)
pure virtual

Add a new node and a reference to the node management Adds the passed new node to the internal node management of the NodeManager and creates a reference from the passed source node to the new node.

Parameters
pSourceNodePointer to UaReferenceLists interface of the source node.
pNewNodePointer to UaReferenceLists interface of the new node.
referenceTypeIdType of the reference to create from the source node to the new node.
Returns
Error code

Implemented in NodeManagerUaNode.

virtual UaStatus NodeManagerConfig::addNodeAndReference ( const UaNodeId sourceNode,
UaReferenceLists pNewNode,
const UaNodeId referenceTypeId 
)
pure virtual

Add a new node and a reference to the node management Adds the passed new node to the internal node management of the NodeManager and creates a reference from the passed source node to the new node.

Parameters
sourceNodeNodeId of the source node.
pNewNodePointer to UaReferenceLists interface of the new node.
referenceTypeIdType of the reference to create from the source node to the new node.
Returns
Error code

Implemented in NodeManagerUaNode.

virtual UaStatus NodeManagerConfig::addUaNode ( UaNode pNewNode)
pure virtual

Add a new UaNode to the node management.

Adds the passed new node to the internal node management of the NodeManager.

Parameters
pNewNodePointer to UaNode interface of the new node.
Returns
Error code

Implemented in NodeManagerUaNode.

virtual UaStatus NodeManagerConfig::addUaReference ( UaReferenceLists pSourceNode,
UaReferenceLists pTargetNode,
const UaNodeId referenceTypeId 
)
pure virtual

Add a reference from source node to target node Creates a reference from the passed source node to the target node.

Parameters
pSourceNodePointer to UaReferenceLists interface of the source node.
pTargetNodePointer to UaReferenceLists interface of the target node.
referenceTypeIdType of the reference to create from the source node to the target node.
Returns
Error code

Implemented in NodeManagerUaNode.

virtual UaStatus NodeManagerConfig::addUaReference ( const UaNodeId sourceId,
const UaNodeId targetId,
const UaNodeId referenceTypeId 
)
pure virtual

Add a reference from source node to target node This functions is provided for convenience and behaves like the functions above.

This function finds the node objects for the specified source and target nodeIds and creates a new reference if the nodes exist.

Parameters
sourceIdNodeId of the source node.
targetIdNodeId of the target node.
referenceTypeIdType of the reference to create from the source node to the target node.
Returns
Error code

Implemented in NodeManagerUaNode.

virtual UaStatus NodeManagerConfig::deleteUaNode ( UaNode pNode,
OpcUa_Boolean  deleteTargetReferences,
OpcUa_Boolean  deleteSourceReferences = OpcUa_False,
OpcUa_Boolean  deleteAllChildren = OpcUa_False 
)
pure virtual

Remove a UaNode from the node management.

Removes the passed node from the internal node management of the NodeManager.

Parameters
pNodePointer to UaNode interface of the node to remove.
deleteTargetReferencesIndicates if the references from the node to delete to the target node must be deleted in the target node
deleteSourceReferencesIndicates if the references from the source node to the node to delete must be deleted in the source node
deleteAllChildrenIndicates if all child nodes of the node to delete and all references of the nodes must be deleted. In this case the function follows all forward references that are a subtype of HasChild like HasComponent or HasProperty and deletes the target nodes and all of their references. If this flag is set and one of the child nodes to delete is shared, the shared node and its children are not deleted.
Returns
Error code

Implemented in NodeManagerUaNode.

virtual UaStatus NodeManagerConfig::deleteUaReference ( UaReferenceLists pSourceNode,
UaReferenceLists pTargetNode,
const UaNodeId referenceTypeId 
)
pure virtual

Remove a reference from source node to target node Deletes a reference from the passed source node to the target node.

Parameters
pSourceNodePointer to UaReferenceLists interface of the source node.
pTargetNodePointer to UaReferenceLists interface of the target node.
referenceTypeIdType of the reference to delete from the source node to the target node.
Returns
Error code

Implemented in NodeManagerUaNode.

virtual UaStatus NodeManagerConfig::deleteUaReference ( const UaNodeId sourceId,
const UaNodeId targetId,
const UaNodeId referenceTypeId 
)
pure virtual

Remove a reference from source node to target node This functions is provided for convenience and behaves like the functions above.

This function finds the node objects for the specified source and target nodeIds and creates a deletes the reference if the nodes exist.

Parameters
sourceIdNodeId of the source node.
targetIdNodeId of the target node.
referenceTypeIdType of the reference to delete from the source node to the target node.
Returns
Error code

Implemented in NodeManagerUaNode.

EventManagerUaNode * NodeManagerConfig::getEventManagerUaNode ( )
virtual

Get the EventManagerUaNode interface if implemented by the class implementing the NodeManagerConfig interface.

The implementation in this class returns a NULL pointer. Classes derived from NodeManagerConfig and EventManagerUaNode must overwrite this method and must return the EventManagerUaNode interface. This connection is used to provide the EventManagerUaNode interface to UaCondition classes keeping a NodeManagerConfig interface but needing also the EventManagerUaNode Interface for sending events.

Returns
The method implemented in this class returns a Null pointer.

Reimplemented in NodeManagerBase.

virtual OpcUa_UInt16 NodeManagerConfig::getNameSpaceIndex ( ) const
pure virtual

Get the namespace index of the node manager.

Returns
Namespace index of the node manager.

Implemented in NodeManagerUaNode.


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