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

The manager of the factories for creating instances. More...

#include <instancefactory.h>

Public Member Functions

 XmlUaNodeFactoryManager ()
 Creates an instance of the XmlUaNodeFactoryManager. More...
 
void addNamespace (XmlUaNodeFactoryNamespace *pFactoryNamespace)
 Adds an additional XmlUaNodeFactoryNamespace to be managed by this instance. More...
 
UaVariablecreateVariable (UaBase::Variable *pVariable, NodeManagerConfig *pNodeConfig, UaMutexRefCounted *pSharedMutex=NULL)
 Creates a Variable with all components. More...
 
UaObjectcreateObject (UaBase::Object *pObject, NodeManagerConfig *pNodeConfig, UaMutexRefCounted *pSharedMutex=NULL)
 Creates an Object with all components. More...
 
virtual UaMethodcreateMethod (UaBase::Method *pMethod, NodeManagerConfig *pNodeConfig, UaMutexRefCounted *pSharedMutex=NULL)
 
virtual UaDataTypecreateDataType (UaBase::DataType *pDataType, NodeManagerConfig *pNodeConfig, UaMutexRefCounted *pSharedMutex=NULL)
 
virtual UaReferenceTypecreateReferenceType (UaBase::ReferenceType *pReferenceType, NodeManagerConfig *pNodeConfig, UaMutexRefCounted *pSharedMutex=NULL)
 
virtual UaObjectTypecreateObjectType (UaBase::ObjectType *pObjectType, NodeManagerConfig *pNodeConfig, UaMutexRefCounted *pSharedMutex=NULL)
 
virtual UaVariableTypecreateVariableType (UaBase::VariableType *pVariableType, NodeManagerConfig *pNodeConfig, UaMutexRefCounted *pSharedMutex=NULL)
 
UaVariant defaultValue (const UaNodeId &dataTypeId, OpcUa_Int32 valueRank) const
 

Detailed Description

The manager of the factories for creating instances.

Constructor & Destructor Documentation

XmlUaNodeFactoryManager::XmlUaNodeFactoryManager ( )

Creates an instance of the XmlUaNodeFactoryManager.

The XmlUaNodeFactoryNamespace for namespace 0 is added by this constructor.

Member Function Documentation

void XmlUaNodeFactoryManager::addNamespace ( XmlUaNodeFactoryNamespace *  pFactoryNamespace)

Adds an additional XmlUaNodeFactoryNamespace to be managed by this instance.

The caller has to delete the XmlUaNodeFactoryNamespace.

UaObject * XmlUaNodeFactoryManager::createObject ( UaBase::Object pObject,
NodeManagerConfig pNodeConfig,
UaMutexRefCounted pSharedMutex = NULL 
)

Creates an Object with all components.

If the namespace of the type definition is not managed by this instance, a generic object with generic children is created.

Parameters
pObjectThe temporary data representation of the object to create
pNodeConfigIf pNodeConfig can be casted to NodeManagerNodeSetXml, the callback NodeManagerNodeSetXml::objectCreated is called for each child.
pSharedMutexAn optional mutex that is used across different objects
UaVariable * XmlUaNodeFactoryManager::createVariable ( UaBase::Variable pVariable,
NodeManagerConfig pNodeConfig,
UaMutexRefCounted pSharedMutex = NULL 
)

Creates a Variable with all components.

If the namespace of the type definition is not managed by this instance, a generic variable with generic children is created.

Parameters
pVariableThe temporary data representation of the variable to create
pNodeConfigIf pNodeConfig can be casted to NodeManagerNodeSetXml, the callback NodeManagerNodeSetXml::variableCreated is called for each child.
pSharedMutexAn optional mutex that is used across different variables

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