#include <iomanager2.h>
List of all members.
|
Public Member Functions |
| IOManager2 () |
virtual | ~IOManager2 () |
virtual UaStatus | beginRead (IOManager2Callback *pCallback, OpcUa_UInt32 hTransaction, const ServiceContext &serviceContext, VariableHandle **ppVariableHandleArray, OpcUa_ReadRequest *pReadRequest, OpcUa_ReadResponse *pReadResponse)=0 |
virtual UaStatus | beginWrite (IOManager2Callback *pCallback, OpcUa_UInt32 hTransaction, const ServiceContext &serviceContext, VariableHandle **ppVariableHandleArray, OpcUa_WriteRequest *pWriteRequest, OpcUa_WriteResponse *pWriteResponse)=0 |
virtual UaStatus | beginStartMonitoring (IOManager2Callback *pCallback, OpcUa_UInt32 hTransaction, const ServiceContext &serviceContext, OpcUa_UInt32 itemCount, VariableHandle **ppVariableHandleArray, MonitoringContext *pMonitoringContextArray, IOVariableCallback **ppCallbackInterfaceArray)=0 |
virtual UaStatus | beginModifyMonitoring (IOManager2Callback *pCallback, OpcUa_UInt32 hTransaction, const ServiceContext &serviceContext, const UaUInt32Array &hIOVariableArray, OpcUa_UInt32 itemCount, MonitoringContext *pMonitoringContextArray)=0 |
virtual UaStatus | beginStopMonitoring (IOManager2Callback *pCallback, OpcUa_UInt32 hTransaction, const ServiceContext &serviceContext, const UaUInt32Array &hIOVariableArray)=0 |
Detailed Description
Optimized but limited version of the
IOManager interface. The interface allows optimized access to one data source. It allows to access the in and out parameters of the Read and Write Services directly. Is is espeacially used for server implemenations where the data access information is already consolidated in one interface. Therefore the multiplexing provided by the server SDK can be reduced to all other nodes not consolidated in one place like the type and diagnostic nodes managed by the server SDK.
This is a very optimized version of the IOManager interface introducing several limitation.
- This interface works only with the UA Module and not with the COM DA module
- Only one instance of this interface can be registered with the SDK
The methods of the interface provide direct access to the request and response parameters. The implementer of the method must check if the variable handle is not NULL or if he is responsible for the namespace of the node in the request. The request may contain other nodes not handled by this IOManager2 instance.
The IOManager2 instance is responsible for Value attributes of Variables if
Constructor & Destructor Documentation
IOManager2::IOManager2 |
( |
|
) |
[inline] |
virtual IOManager2::~IOManager2 |
( |
|
) |
[inline, virtual] |
Member Function Documentation
Read values for a list of nodes.
- Parameters:
-
| pCallback | Callback interface used for the transaction. The IOManager2 must use this interface to finish the async transaction. |
| hTransaction | Handle for the transaction used by the SDK to identify the transaction in the callbacks. |
| serviceContext | Service context including the session context used for the UA service call. |
| ppVariableHandleArray | Array of VariableHandle pointers. If the pointer in the array element is not NULL, the node must be handled by the IOManager 2 instance. |
| pReadRequest | The read request containing the list of NodesToRead. If the namespace in the NodeId matches the namespace index the IOManager2 is responsible for and the requested attribute is Value, the node must be handled by the IOManager 2 instance. |
| pReadResponse | The read response containing the list of Results for the read. The result array is allocated and the read results for the affected nodes can be copied directly to the corresponding Result array element. |
- Returns:
- Result code
virtual UaStatus IOManager2::beginWrite |
( |
IOManager2Callback * |
pCallback, |
|
|
OpcUa_UInt32 |
hTransaction, |
|
|
const ServiceContext & |
serviceContext, |
|
|
VariableHandle ** |
ppVariableHandleArray, |
|
|
OpcUa_WriteRequest * |
pWriteRequest, |
|
|
OpcUa_WriteResponse * |
pWriteResponse | |
|
) |
| | [pure virtual] |
Write values for a list of nodes.
- Parameters:
-
| pCallback | Callback interface used for the transaction. The IOManager2 must use this interface to finish the async transaction. |
| hTransaction | Handle for the transaction used by the SDK to identify the transaction in the callbacks. |
| serviceContext | Service context including the session context used for the UA service call. |
| ppVariableHandleArray | Array of VariableHandle pointers. If the pointer in the array element is not NULL, the node must be handled by the IOManager 2 instance. |
| pReadRequest | The read request containing the list of NodesToRead. If the namespace in the NodeId matches the namespace index the IOManager2 is responsible for and the requested attribute is Value, the node must be handled by the IOManager 2 instance. |
| pReadResponse | The read response containing the list of Results for the read. The result array is allocated and the read results for the affected nodes can be copied directly to the corresponding Result array element. |
- Returns:
- Error code
Begin start monitoring values for a list of nodes.
- Parameters:
-
| pCallback | Callback interface used for the transaction. The IOManager2 must use this interface to finish the async transaction. |
| hTransaction | Handle for the transaction used by the SDK to identify the transaction in the callbacks. |
| serviceContext | Service context including the session context used for the UA service call. |
| itemCount | Count of items to create |
| ppVariableHandleArray | Array of variable handles provided by the NodeManager::getVariableHandle |
| pMonitoringContextArray | Array of the monitoring context for the items to create. See MonitoringContext for more details |
| ppCallbackInterfaceArray | Array of callback interfaces used for data change callbacks to the MonitoredItem managed by the SDK. |
- Returns:
- Error code
Begin modify monitoring values for a list of nodes.
- Parameters:
-
| pCallback | Callback interface used for the transaction. The IOManager2 must use this interface to finish the async transaction. |
| hTransaction | Handle for the transaction used by the SDK to identify the transaction in the callbacks. |
| serviceContext | Service context including the session context used for the UA service call. |
| hIOVariableArray | Array of handles for the items returned in the finishStartMonitoring callback. |
| itemCount | Count of items to modify |
| pMonitoringContextArray | Array of the monitoring context for the items to create. See MonitoringContext for more details |
- Returns:
- Error code
virtual UaStatus IOManager2::beginStopMonitoring |
( |
IOManager2Callback * |
pCallback, |
|
|
OpcUa_UInt32 |
hTransaction, |
|
|
const ServiceContext & |
serviceContext, |
|
|
const UaUInt32Array & |
hIOVariableArray | |
|
) |
| | [pure virtual] |
Begin stop monitoring values for a list of nodes.
- Parameters:
-
| pCallback | Callback interface used for the transaction. The IOManager2 must use this interface to finish the async transaction. |
| hTransaction | Handle for the transaction used by the SDK to identify the transaction in the callbacks. |
| serviceContext | Service context including the session context used for the UA service call. |
- Returns:
- Error code
The documentation for this class was generated from the following file:
- src/uaserver/uaservercpp/coremodule/iomanager2.h