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

OPC UA SimpleAttributeOperand used in ContentFilterElement or UaEventFilter. More...

#include <uacontentfilter.h>

Inherits UaFilterOperand.

Public Member Functions

 UaSimpleAttributeOperand ()
 Constructs an empty simple attribute filter operand object with the attributeId set to Value.
 
 UaSimpleAttributeOperand (const UaSimpleAttributeOperand &other)
 Constructs a simple attribute operand object from another simple attribute operand object.
 
 UaSimpleAttributeOperand (const OpcUa_SimpleAttributeOperand &other)
 Constructs a simple attribute operand object from a simple attribute operand structure.
 
virtual ~UaSimpleAttributeOperand ()
 Destroys the simple attribute operand object.
 
UaSimpleAttributeOperandoperator= (const UaSimpleAttributeOperand &other)
 Assigns the content of another simple attribute operand object to this simple attribute operand object and returns a reference to this object.
 
UaFilterOperand::FilterOperandType getFilterOperandType () const
 Returns the filter operand type SimpleAttribute.
 
void getSimpleAttributeOperand (OpcUa_SimpleAttributeOperand &operand, OpcUa_Boolean createDeepCopy) const
 Returns the SimpleAttributeOperand contained in the OpcUa_SimpleAttributeOperand. More...
 
void setTypeId (const UaNodeId &typeId)
 Sets the type nodeId for the attribute operand. More...
 
UaNodeId typeId () const
 Returns the type nodeId of the attribute operand.
 
void setBrowsePathElement (OpcUa_UInt32 index, const UaQualifiedName &name, OpcUa_UInt32 arraySize)
 Sets one element of the browse path. More...
 
void clearBrowsePath ()
 Clear the browse path.
 
OpcUa_UInt32 noOfBrowsePath () const
 Returns the number of array entries in the browsePath. More...
 
const OpcUa_QualifiedName * browsePath () const
 Returns the BrowsePath of the attribute operand. More...
 
void setAttributeId (OpcUa_UInt32 attributeId)
 Sets the AttributeId of the simple attribute operand. More...
 
OpcUa_UInt32 attributeId () const
 Returns the AttributeId of the simple attribute operand.
 
void setIndexRange (const UaString &indexRange)
 Sets the IndexRange of the simple attribute operand. More...
 
UaString indexRange () const
 Returns the IndexRange of the simple attribute operand.
 
UaString toString () const
 Returns the simple attribute operand as string.
 
- Public Member Functions inherited from UaFilterOperand
 UaFilterOperand ()
 Constructs an empty filter operand object.
 
virtual ~UaFilterOperand ()
 Destroys the filter operand object.
 

Additional Inherited Members

- Public Types inherited from UaFilterOperand
enum  FilterOperandType { Element, Literal, SimpleAttribute }
 FilterOperandType enumeration. More...
 

Detailed Description

OPC UA SimpleAttributeOperand used in ContentFilterElement or UaEventFilter.

This class is used to build and hold an OPC UA SimpleAttributeOperand used in the UaContentFilterElement or in the UaEventFilter. The selectClause and whereClause parameters of an EventFilter are specified with the SimpleAttributeOperand structure. The structure is composed of

  • typeId (NodeId) NodeId of the type definition node. This is an event type node for event filters. In some cases the same BrowsePath will apply to multiple EventTypes. If the Client specifies the BaseEventType in the SimpleAttributeOperand then the Server shall evaluate the BrowsePath without considering the Type. The default value for the typeId set by the class is the BaseEventType.
  • browsePath[] (QualifiedName) This parameter specifies a relative path using a list of BrowseNames. The list of BrowseNames in an event filter represents the nodes from an EventType to the event field of interest following hierarchical forward references. All Nodes followed by the browsePath shall be of the NodeClass Object or Variable. If this list is empty the Node is the instance of the TypeDefinition e.g. the instance of a Condition object.
  • attributeId (IntegerId) The SimpleAttributeOperand structure allows the Client to specify any Attribute, however, the Server is only required to support the Value Attribute (OpcUa_Attributes_Value) for Variable Nodes and the NodeId Attribute (OpcUa_Attributes_NodeId)for Object Nodes. The default value set by this class is the Value attribute.
  • indexRange (NumericRange) This parameter is used to identify a single element of an array, or a single range of indexes for an array.

This class is concrete implementation of the abstract UaFilterOperand. It specifies any attribute of an object or variable node using a TypeDefinition and a relative path constructed from BrowseNames.

Member Function Documentation

const OpcUa_QualifiedName * UaSimpleAttributeOperand::browsePath ( ) const

Returns the BrowsePath of the attribute operand.

Returns
Pointer to the raw OpcUa_QualifiedName name array forming the BrowsPath.
void UaSimpleAttributeOperand::getSimpleAttributeOperand ( OpcUa_SimpleAttributeOperand &  operand,
OpcUa_Boolean  createDeepCopy 
) const

Returns the SimpleAttributeOperand contained in the OpcUa_SimpleAttributeOperand.

Parameters
[in,out]operandSimpleAttributeOperand structure to be filled
[in]createDeepCopyFlag indicating the type of copy, TRUE creates a deep copy and the caller must free the memory, FALSE creates a shallow copy and the caller doesn't have to clear the memory.
OpcUa_UInt32 UaSimpleAttributeOperand::noOfBrowsePath ( ) const

Returns the number of array entries in the browsePath.

Returns
Array size of the raw OpcUa_QualifiedName name array forming the BrowsPath
See Also
browsePath.
void UaSimpleAttributeOperand::setAttributeId ( OpcUa_UInt32  attributeId)

Sets the AttributeId of the simple attribute operand.

Parameters
attributeIdThe Id to set
void UaSimpleAttributeOperand::setBrowsePathElement ( OpcUa_UInt32  index,
const UaQualifiedName name,
OpcUa_UInt32  arraySize 
)

Sets one element of the browse path.

The browse path is composed of an array of QualifiedNames.

Parameters
[in]indexIndex of the browse path elmenet in the array
[in]nameQualifiedName to set at the index in the array
[in]arraySizeSize of the name array filled with this method
void UaSimpleAttributeOperand::setIndexRange ( const UaString indexRange)

Sets the IndexRange of the simple attribute operand.

Parameters
[in]indexRangethe IndexRange of the simple attribute operand.
void UaSimpleAttributeOperand::setTypeId ( const UaNodeId typeId)

Sets the type nodeId for the attribute operand.

Parameters
[in]typeIdThe nodeId for the attribute operand.

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