#include <uabasereferences.h>

Inheritance diagram for UaReference:
Collaboration diagram for UaReference:

List of all members.

Public Types

enum  CrossNodeManagerReferenceType { UA_NO_CROSSNODEMANAGER = 0, UA_LIST_OF_REFERENCES, UA_SINGLE_REFERENCE }
 

Enumeration of cross node manager reference type.

More...

Public Member Functions

 UaReference (UaNode *pSourceNode, UaNode *pTargetNode)
virtual ~UaReference ()
virtual
CrossNodeManagerReferenceType 
isCrossNodeManagerRef () const
virtual OpcUa_Boolean isOutOfServerRef () const
UaNodepSourceNode () const
UaNodepTargetNode () const
virtual UaNodeId referenceTypeId () const =0
virtual OpcUa_Boolean isSubtypeOf (const OpcUa_NodeId *pNodeId) const =0
void setSourceNodeInvalid ()
void setTargetNodeInvalid ()
void setNextForwardReference (UaReference *pNextReference)
UaReferencepNextForwardReference ()
void setNextInverseReference (UaReference *pNextReference)
UaReferencepNextInverseReference ()

Protected Attributes

UaNodem_pSourceNode
 Source node of the reference.
UaNodem_pTargetNode
 Target node of the reference.
UaReferencem_pNextForwardReference
 Next reference in a list of forward references.
UaReferencem_pNextInverseReference
 Next reference in a list of inverse references.

Detailed Description

Interface definition of the UaReference. Abstract base class for OPC UA references between UA nodes. It is not possible to use the default constructor.


Member Enumeration Documentation

Enumeration of cross node manager reference type.

Enumerator:
UA_NO_CROSSNODEMANAGER 

This is not a cross node manager reference

UA_LIST_OF_REFERENCES 

This cross node manager reference can have a list of target nodes

UA_SINGLE_REFERENCE 

This cross node manager reference has one target node


Constructor & Destructor Documentation

UaReference::UaReference ( UaNode pSourceNode,
UaNode pTargetNode 
)

construction

virtual UaReference::~UaReference (  ) [inline, virtual]

destruction


Member Function Documentation

virtual CrossNodeManagerReferenceType UaReference::isCrossNodeManagerRef (  ) const [inline, virtual]

Checks wether this reference is across node managers or not.

Returns:
The type of cross node manager reference or UA_NO_CROSSNODEMANAGER if it is a normal reference.

Reimplemented in UaRefCrossNodeManager, and UaRefCrossNodeManagerSingle.

virtual OpcUa_Boolean UaReference::isOutOfServerRef (  ) const [inline, virtual]

Checks wether a Node is out of Servers References.

Returns:
FALSE if out of Server Reference.

Reimplemented in UaRefOutOfServer.

virtual OpcUa_Boolean UaReference::isSubtypeOf ( const OpcUa_NodeId *  pNodeId ) const [pure virtual]

Check wether the current reference is a subtype of the passed reference type node id.

Parameters:
pNodeIdNodeId of the requested reference type.
Returns:
TRUE if the reference is a subtype of the passed type FALSE if not.

Implemented in UaRefCrossNodeManager, UaRefCrossNodeManagerSingle, UaRefOutOfServer, UaGenericReference, UaRefOrganizes, UaRefHasComponent, UaRefHasHistoricalConfiguration, UaRefHasOrderedComponent, UaRefHasProperty, UaRefHasSubtype, UaRefHasEventSource, UaRefHasNotifier, UaRefHasTypeDefinition, UaRefGeneratesEvent, UaRefHasCondition, UaRefHasDescription, UaRefHasEncoding, UaRefHasModelParent, UaRefHasModellingRule, UaRefFromState, UaRefHasCause, UaRefHasEffect, and UaRefToState.

UaReference* UaReference::pNextForwardReference (  ) [inline]

Get the next reference in a list of forward references.

UaReference* UaReference::pNextInverseReference (  ) [inline]

Get the next reference in a list of inverse references.

UaNode* UaReference::pSourceNode (  ) const [inline]

Get the source Node.

Returns:
the source Node.
UaNode* UaReference::pTargetNode (  ) const [inline]

Get the target Node.

Returns:
the target Node.
void UaReference::setNextForwardReference ( UaReference pNextReference ) [inline]

Set the next reference for a list of forward references.

void UaReference::setNextInverseReference ( UaReference pNextReference ) [inline]

Set the next reference for a list of inverse references.

void UaReference::setSourceNodeInvalid (  ) [inline]

Set source node to invalid.

void UaReference::setTargetNodeInvalid (  ) [inline]

Set target Node to invalid.


The documentation for this class was generated from the following files:
  • /home/buildbot/work/uasdkcpp/src/uaserver/uaservercpp/coremodule/uabasereferences.h
  • /home/buildbot/work/uasdkcpp/src/uaserver/uaservercpp/coremodule/uabasereferences.cpp