C++ Based OPC UA Client/Server SDK  1.5.5.355
HistoryManagerBase Class Referenceabstract

HistoryManager base implementation providing a simplified synchronous API. More...

#include <historymanagerbase.h>

Inherits HistoryManager.

Public Member Functions

 HistoryManagerBase ()
 Creates a HistoryManagerBase object with ReadProcessed and ReadAtTime default implementations activated.
 
 HistoryManagerBase (OpcUa_Boolean supportReadProcessed, OpcUa_Boolean supportReadAtTime)
 Creates a HistoryManagerBase object with the passed in ReadProcessed and ReadAtTime settings.
 
virtual ~HistoryManagerBase ()
 Destroys the HistoryManagerBase object.
 
UaStatus startUp (ServerManager *pServerManager)
 Start up the HistoryManagerBase object.
 
OpcUa::HistoryServerCapabilitiesTypepHistoryServerCapabilities ()
 Get the HistoryServerCapabilities object used to indicate the supported historical access features. More...
 
virtual UaStatus readRaw (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, HistoryReadCPUserDataBase **ppContinuationPoint, OpcUa_TimestampsToReturn timestampsToReturn, OpcUa_UInt32 maxValues, OpcUa_DateTime &startTime, OpcUa_DateTime &endTime, OpcUa_Boolean returnBounds, OpcUa_HistoryReadValueId *pReadValueId, UaDataValues &dataValues)=0
 Read raw history values for a node. More...
 
virtual UaStatus readModified (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, HistoryReadCPUserDataBase **ppContinuationPoint, OpcUa_TimestampsToReturn timestampsToReturn, OpcUa_UInt32 maxValues, OpcUa_DateTime &startTime, OpcUa_DateTime &endTime, OpcUa_Boolean returnBounds, OpcUa_HistoryReadValueId *pReadValueId, UaDataValues &dataValues, UaModificationInfo &modificationInformations)
 Read modified history values for a node. More...
 
virtual UaStatus readProcessed (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, HistoryReadCPUserDataBase **ppContinuationPoint, OpcUa_TimestampsToReturn timestampsToReturn, OpcUa_DateTime &startTime, OpcUa_DateTime &endTime, OpcUa_Double resampleInterval, const UaNodeId &aggregateType, OpcUa_AggregateConfiguration aggregateConfiguration, OpcUa_HistoryReadValueId *pReadValueId, UaDataValues &dataValues)
 Read processed history values for a node. More...
 
virtual UaStatus readAtTime (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, OpcUa_TimestampsToReturn timestampsToReturn, const UaDateTimeArray &requestedTimes, OpcUa_Boolean useSimpleBounds, OpcUa_HistoryReadValueId *pReadValueId, UaDataValues &dataValues)
 Read history values for a node at specific timestamps. More...
 
virtual UaStatus readEvents (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, HistoryReadCPUserDataBase **ppContinuationPoint, OpcUa_UInt32 numValuesPerNode, OpcUa_DateTime &startTime, OpcUa_DateTime &endTime, const OpcUa_EventFilter &filter, OpcUa_HistoryReadValueId *pReadValueId, UaHistoryEventFieldLists &events)
 Read event history for a node. More...
 
virtual UaStatus updateData (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, OpcUa_PerformUpdateType performInsertReplace, OpcUa_Boolean isStructureUpdate, const UaDataValues &updateValue, UaStatusCodeArray &operationResults, UaDiagnosticInfos &operationDiagnosticInfos)
 Update history data values for a node. More...
 
virtual UaStatus updateEvents (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, OpcUa_PerformUpdateType performInsertReplace, const OpcUa_EventFilter &filter, const UaHistoryEventFieldLists &eventData, UaStatusCodeArray &operationResults, UaDiagnosticInfos &operationDiagnosticInfos)
 Update history events for a node. More...
 
virtual UaStatus deleteRawModified (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, OpcUa_Boolean isDeleteModified, OpcUa_DateTime &startTime, OpcUa_DateTime &endTime)
 Delete raw or modified history values for a node. More...
 
virtual UaStatus deleteAtTime (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, const UaDateTimeArray &requestedTimes, UaStatusCodeArray &operationResults, UaDiagnosticInfos &operationDiagnosticInfos)
 Delete history values at the passed timestamps. More...
 
virtual UaStatus deleteEvents (const ServiceContext &serviceContext, HistoryVariableHandle *pVariableHandle, const UaByteStringArray &eventIds, UaStatusCodeArray &operationResults, UaDiagnosticInfos &operationDiagnosticInfos)
 Delete events for a node. More...
 
UaStatus beginHistoryTransaction (HistoryManagerCallback *, const ServiceContext &, OpcUa_UInt32, OpcUa_UInt32, HistoryManager::TransactionType, OpcUa_TimestampsToReturn, OpcUa_Handle &)
 Begins a transaction for historical access. More...
 
UaStatus beginReadRawModified (OpcUa_Handle, OpcUa_UInt32, HistoryVariableHandle *, HistoryReadCPUserDataBase *, OpcUa_Boolean, OpcUa_UInt32, OpcUa_DateTime &, OpcUa_DateTime &, OpcUa_Boolean, OpcUa_HistoryReadValueId *)
 Read raw or modified history values for a node. More...
 
UaStatus beginReadProcessed (OpcUa_Handle, OpcUa_UInt32, HistoryVariableHandle *, HistoryReadCPUserDataBase *, OpcUa_DateTime &, OpcUa_DateTime &, OpcUa_Double, const OpcUa_NodeId &, OpcUa_AggregateConfiguration, OpcUa_HistoryReadValueId *)
 Read processed history values for a node. More...
 
UaStatus beginReadAtTime (OpcUa_Handle, OpcUa_UInt32, HistoryVariableHandle *, HistoryReadCPUserDataBase *, const UaDateTimeArray &, OpcUa_Boolean, OpcUa_HistoryReadValueId *)
 Read history values for a node at specific timestamps. More...
 
UaStatus beginReadEvents (OpcUa_Handle, OpcUa_UInt32, HistoryVariableHandle *, HistoryReadCPUserDataBase *, OpcUa_UInt32, OpcUa_DateTime &, OpcUa_DateTime &, const OpcUa_EventFilter &, OpcUa_HistoryReadValueId *)
 Read event history for a node. More...
 
UaStatus beginUpdateData (OpcUa_Handle, OpcUa_UInt32, HistoryVariableHandle *, OpcUa_PerformUpdateType, OpcUa_Boolean, const UaDataValues &)
 Update history values for a node. More...
 
UaStatus beginUpdateEvents (OpcUa_Handle, OpcUa_UInt32, HistoryVariableHandle *, OpcUa_PerformUpdateType, const OpcUa_EventFilter &, const UaHistoryEventFieldLists &)
 Update history event for a node. More...
 
UaStatus beginDeleteRawModified (OpcUa_Handle, OpcUa_UInt32, HistoryVariableHandle *, OpcUa_Boolean, OpcUa_DateTime &, OpcUa_DateTime &)
 Delete raw or modified history values for a node. More...
 
UaStatus beginDeleteAtTime (OpcUa_Handle, OpcUa_UInt32, HistoryVariableHandle *, const UaDateTimeArray &)
 Delete history values at given times. More...
 
UaStatus beginDeleteEvents (OpcUa_Handle, OpcUa_UInt32, HistoryVariableHandle *, const UaByteStringArray &)
 Delete events for a node. More...
 
UaStatus finishHistoryTransaction (OpcUa_Handle)
 Finish a transaction. More...
 
- Public Member Functions inherited from HistoryManager
 HistoryManager ()
 construction
 
virtual ~HistoryManager ()
 destruction
 
virtual UaStatus cancelHistoryTransaction (OpcUa_Handle hHistoryManagerContext)
 Canceles the transaction for historical access. More...
 

Additional Inherited Members

- Public Types inherited from HistoryManager
enum  TransactionType {
  TransactionReadEvents, TransactionReadRaw, TransactionReadModified, TransactionReadProcessed,
  TransactionReadAtTime, TransactionUpdateData, TransactionUpdateStructureData, TransactionUpdateEvents,
  TransactionDeleteData, TransactionDeleteAtTime, TransactionDeleteEvents
}
 TransactionType enumeration. More...
 

Detailed Description

HistoryManager base implementation providing a simplified synchronous API.

This class simplifies the HistoryManager interface implementation by changing the interface to a single node based synchronous API and by providing a default implementation for most of the function, either returning an error BadHistoryOperationUnsupported or by providing an implementation like for read processed. The only required method to implement in the derived class is the readRawModified method. Other methods can be implemented if the functionality should be provided by the server.

Member Function Documentation

UaStatus HistoryManagerBase::beginDeleteAtTime ( OpcUa_Handle  hHistoryManagerContext,
OpcUa_UInt32  callbackHandle,
HistoryVariableHandle pVariableHandle,
const UaDateTimeArray requestedTimes 
)
virtual

Delete history values at given times.

Parameters
hHistoryManagerContextHandle provided by the HistoryManager in beginHistoryTransaction used to identify the transaction context for this call.
callbackHandleHandle for the variable in the callback.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle. This object contains the information needed by the HistoryManager to identify the variable to delete in its context.
requestedTimesThe list of timestamps to delete.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::beginDeleteEvents ( OpcUa_Handle  hHistoryManagerContext,
OpcUa_UInt32  callbackHandle,
HistoryVariableHandle pVariableHandle,
const UaByteStringArray eventIds 
)
virtual

Delete events for a node.

Parameters
hHistoryManagerContextHandle provided by the HistoryManager in beginHistoryTransaction used to identify the transaction context for this call.
callbackHandleHandle for the variable in the callback.
pVariableHandleVariable handle provided by the NodeManager::getVariableHandle. This object contains the information needed by the IOManager to identify the node to read in its context.
eventIdsThe list of EventIds for the events to delete.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::beginDeleteRawModified ( OpcUa_Handle  hHistoryManagerContext,
OpcUa_UInt32  callbackHandle,
HistoryVariableHandle pVariableHandle,
OpcUa_Boolean  isDeleteModified,
OpcUa_DateTime startTime,
OpcUa_DateTime endTime 
)
virtual

Delete raw or modified history values for a node.

Parameters
hHistoryManagerContextHandle provided by the HistoryManager in beginHistoryTransaction used to identify the transaction context for this call.
callbackHandleHandle for the variable in the callback.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle. This object contains the information needed by the HistoryManager to identify the variable to delete in its context.
isDeleteModifiedA flag that indicates if modified values should be deleted instead of raw value.
startTimeThe start time of the time period to delete.
endTimeThe end time of the time period to delete.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::beginHistoryTransaction ( HistoryManagerCallback pCallback,
const ServiceContext serviceContext,
OpcUa_UInt32  hTransaction,
OpcUa_UInt32  totalItemCountHint,
HistoryManager::TransactionType  transactionType,
OpcUa_TimestampsToReturn  timestampsToReturn,
OpcUa_Handle &  hHistoryManagerContext 
)
virtual

Begins a transaction for historical access.

Parameters
pCallbackCallback interface used for the transaction. The HistoryManager must use this interface to finish the action for each passed variable in the transaction.
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
hTransactionHandle for the transaction used by the SDK to identify the transaction in the callbacks. The HistoryManager must store this handle and use it in callbacks to HistoryManagerCallback
totalItemCountHintA hint for the HistoryManager about the total number of variables in the transaction. The HistoryManager may not be responsible for all variables but he can use this hint if he wants to optimize memory allocation for further processing.
transactionTypeType of the history transaction.
timestampsToReturnThe client selected timestamp to return. Valid enum values are: OpcUa_TimestampsToReturn_Source, OpcUa_TimestampsToReturn_Server, OpcUa_TimestampsToReturn_Both
hHistoryManagerContextHandle provided by the HistoryManager to identify the transaction in the following begin calls.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::beginReadAtTime ( OpcUa_Handle  hHistoryManagerContext,
OpcUa_UInt32  callbackHandle,
HistoryVariableHandle pVariableHandle,
HistoryReadCPUserDataBase pContinuationPoint,
const UaDateTimeArray requestedTimes,
OpcUa_Boolean  useSimpleBounds,
OpcUa_HistoryReadValueId pReadValueId 
)
virtual

Read history values for a node at specific timestamps.

Parameters
hHistoryManagerContextHandle provided by the HistoryManager in beginHistoryTransaction used to identify the transaction context for this call.
callbackHandleHandle for the variable in the callback.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle. This object contains the information needed by the HistoryManager to identify the variable to read in its context.
pContinuationPointThe continuation point data from a previous Read call. Null if first Read. Implementers of this interface can store the continuation point data in a derived class.
requestedTimesThe requested timestamps to read.
useSimpleBoundsUse SimpleBounds to determine the value at the specific timestamp.
pReadValueIdContext for the node to read. The context contains the IndexRange and the DataEncoding requested by the client. The other parameters of this context are already handled by the HistoryVariableHandle and the SDK.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::beginReadEvents ( OpcUa_Handle  hHistoryManagerContext,
OpcUa_UInt32  callbackHandle,
HistoryVariableHandle pVariableHandle,
HistoryReadCPUserDataBase pContinuationPoint,
OpcUa_UInt32  numValuesPerNode,
OpcUa_DateTime startTime,
OpcUa_DateTime endTime,
const OpcUa_EventFilter filter,
OpcUa_HistoryReadValueId pReadValueId 
)
virtual

Read event history for a node.

Parameters
hHistoryManagerContextHandle provided by the HistoryManager in beginHistoryTransaction used to identify the transaction context for this call.
callbackHandleHandle for the variable in the callback.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle. This object contains the information needed by the HistoryManager to identify the variable to read in its context.
pContinuationPointThe continuation point data from a previous Read call. Null if first Read. Implementers of this interface can store the continuation point data in a derived class.
numValuesPerNodeThe maximum number of values per Node to return.
startTimeThe start time of the time period to read.
endTimeThe end time of the time period to read.
filterAn event filter used to select events to read.
pReadValueIdContext for the node to read. The context contains the IndexRange and the DataEncoding requested by the client. The other parameters of this context are already handled by the HistoryVariableHandle and the SDK.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::beginReadProcessed ( OpcUa_Handle  hHistoryManagerContext,
OpcUa_UInt32  callbackHandle,
HistoryVariableHandle pVariableHandle,
HistoryReadCPUserDataBase pContinuationPoint,
OpcUa_DateTime startTime,
OpcUa_DateTime endTime,
OpcUa_Double  resampleInterval,
const OpcUa_NodeId aggregateType,
OpcUa_AggregateConfiguration  aggregateConfiguration,
OpcUa_HistoryReadValueId pReadValueId 
)
virtual

Read processed history values for a node.

Parameters
hHistoryManagerContextHandle provided by the HistoryManager in beginHistoryTransaction used to identify the transaction context for this call.
callbackHandleHandle for the variable in the callback.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle. This object contains the information needed by the HistoryManager to identify the variable to read in its context.
pContinuationPointThe continuation point data from a previous Read call. Null if first Read. Implementers of this interface can store the continuation point data in a derived class.
startTimeThe start time of the time period to read.
endTimeThe end time of the time period to read.
resampleIntervalThe interval to re sample.
aggregateTypeThe aggregate type node id.
aggregateConfigurationThe aggregate configuration.
pReadValueIdContext for the node to read. The context contains the IndexRange and the DataEncoding requested by the client. The other parameters of this context are already handled by the HistoryVariableHandle and the SDK.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::beginReadRawModified ( OpcUa_Handle  hHistoryManagerContext,
OpcUa_UInt32  callbackHandle,
HistoryVariableHandle pVariableHandle,
HistoryReadCPUserDataBase pContinuationPoint,
OpcUa_Boolean  bIsReadModified,
OpcUa_UInt32  numValuesPerNode,
OpcUa_DateTime startTime,
OpcUa_DateTime endTime,
OpcUa_Boolean  returnBounds,
OpcUa_HistoryReadValueId pReadValueId 
)
virtual

Read raw or modified history values for a node.

Parameters
hHistoryManagerContextHandle provided by the HistoryManager in beginHistoryTransaction used to identify the transaction context for this call.
callbackHandleHandle for the variable in the callback.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle. This object contains the information needed by the HistoryManager to identify the variable to read in its context.
pContinuationPointThe continuation point data from a previous Read call. Null if first Read. Implementers of this interface can store the continuation point data in a derived class.
bIsReadModifiedtrue if modified data should be read - false if raw data should be read.
numValuesPerNodeThe maximum number of values per Node to return.
startTimeThe start time of the time period to read.
endTimeThe end time of the time period to read.
returnBoundsFlag that indicates if bounding values should be returned.
pReadValueIdContext for the node to read. The context contains the IndexRange and the DataEncoding requested by the client. The other parameters of this context are already handled by the HistoryVariableHandle and the SDK.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::beginUpdateData ( OpcUa_Handle  hHistoryManagerContext,
OpcUa_UInt32  callbackHandle,
HistoryVariableHandle pVariableHandle,
OpcUa_PerformUpdateType  performInsertReplace,
OpcUa_Boolean  isStructureUpdate,
const UaDataValues updateValue 
)
virtual

Update history values for a node.

Parameters
hHistoryManagerContextHandle provided by the HistoryManager in beginHistoryTransaction used to identify the transaction context for this call.
callbackHandleHandle for the variable in the callback.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle. This object contains the information needed by the HistoryManager to identify the variable to update in its context.
performInsertReplaceThe mode to insert data or to replace data.
isStructureUpdateFlag indicating if the provided data is meta data like anotations describing an entry in the history database
updateValueThe data values to update.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::beginUpdateEvents ( OpcUa_Handle  hHistoryManagerContext,
OpcUa_UInt32  callbackHandle,
HistoryVariableHandle pVariableHandle,
OpcUa_PerformUpdateType  performInsertReplace,
const OpcUa_EventFilter filter,
const UaHistoryEventFieldLists eventData 
)
virtual

Update history event for a node.

Parameters
hHistoryManagerContextHandle provided by the HistoryManager in beginHistoryTransaction used to identify the transaction context for this call.
callbackHandleHandle for the variable in the callback.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle. This object contains the information needed by the HistoryManager to identify the variable to update in its context.
performInsertReplaceThe mode to insert events or to replace events.
filterAn event filter used to select the event to update.
eventDataA list of event data to update.
Returns
Result code of the method call

Implements HistoryManager.

UaStatus HistoryManagerBase::deleteAtTime ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
const UaDateTimeArray requestedTimes,
UaStatusCodeArray operationResults,
UaDiagnosticInfos &  operationDiagnosticInfos 
)
virtual

Delete history values at the passed timestamps.

The default implementation of this method returns OpcUa_BadHistoryOperationUnsupported to indicate that update is not supported. If the HistoryManager supports update, the derived class must overwrite this method with an implementation that executes the update.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getVariableHandle. This object contains the information needed by the IOManager to identify the node to read in its context.
requestedTimesThe list of timestamps to delete.
operationResultsThe results for the requested timestamps to delete.
operationDiagnosticInfosThe diagnostic for the requested timestamps to delete.
Returns
Error code
UaStatus HistoryManagerBase::deleteEvents ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
const UaByteStringArray eventIds,
UaStatusCodeArray operationResults,
UaDiagnosticInfos &  operationDiagnosticInfos 
)
virtual

Delete events for a node.

The default implementation of this method returns OpcUa_BadHistoryOperationUnsupported to indicate that update is not supported. If the HistoryManager supports update, the derived class must overwrite this method with an implementation that executes the update.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getVariableHandle. This object contains the information needed by the IOManager to identify the node to read in its context.
eventIdsThe list of EventIds for the events to delete.
operationResultsThe results for the requested events to delete.
operationDiagnosticInfosThe diagnostic for the requested events to delete.
Returns
Error code
UaStatus HistoryManagerBase::deleteRawModified ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
OpcUa_Boolean  isDeleteModified,
OpcUa_DateTime startTime,
OpcUa_DateTime endTime 
)
virtual

Delete raw or modified history values for a node.

The default implementation of this method returns OpcUa_BadHistoryOperationUnsupported to indicate that update is not supported. If the HistoryManager supports update, the derived class must overwrite this method with an implementation that executes the update.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getVariableHandle. This object contains the information needed by the IOManager to identify the node to read in its context.
isDeleteModifiedA flag that indicates if modified values should be deleted instead of raw value.
startTimeThe start time of the time period to delete.
endTimeThe end time of the time period to delete.
Returns
Error code
UaStatus HistoryManagerBase::finishHistoryTransaction ( OpcUa_Handle  hHistoryManagerContext)
virtual

Finish a transaction.

Parameters
hHistoryManagerContextGeneral context for the service calls containing information like history.
Returns
Error code.

Implements HistoryManager.

OpcUa::HistoryServerCapabilitiesType * HistoryManagerBase::pHistoryServerCapabilities ( )

Get the HistoryServerCapabilities object used to indicate the supported historical access features.

Users of this class can set the supported historical access features through this object. It is strongly recommended to set only supported features to true since other modules of the server may support additional features.

UaStatus HistoryManagerBase::readAtTime ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
OpcUa_TimestampsToReturn  timestampsToReturn,
const UaDateTimeArray requestedTimes,
OpcUa_Boolean  useSimpleBounds,
OpcUa_HistoryReadValueId pReadValueId,
UaDataValues dataValues 
)
virtual

Read history values for a node at specific timestamps.

The default implementation of this method implements read at specific timestamps by using the readRaw method of this class. This functionality can be deactivated when creating the HistoryManagerBase instance.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getVariableHandle.
timestampsToReturnThe client selected timestamp to return. Valid enum values are: OpcUa_TimestampsToReturn_Source, OpcUa_TimestampsToReturn_Server, OpcUa_TimestampsToReturn_Both
requestedTimesThe requested timestamps to read.
useSimpleBoundsUse SimpleBounds to determine the value at the specific timestamp.
pReadValueIdContext for the node to read. The context contains the IndexRange and the DataEncoding requested by the client. The other parameters of this context are already handled by the HistoryVariableHandle and the SDK.
dataValuesThe requested values for this operation.
Returns
Error code.
UaStatus HistoryManagerBase::readEvents ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
HistoryReadCPUserDataBase **  ppContinuationPoint,
OpcUa_UInt32  numValuesPerNode,
OpcUa_DateTime startTime,
OpcUa_DateTime endTime,
const OpcUa_EventFilter filter,
OpcUa_HistoryReadValueId pReadValueId,
UaHistoryEventFieldLists events 
)
virtual

Read event history for a node.

The default implementation of this method returns OpcUa_BadHistoryOperationUnsupported to indicate that reading of event history is not supported. If the HistoryManager supports reading of event history, the derived class must overwrite this method with an implementation that delivers the event history.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getVariableHandle. This object contains the information needed by the IOManager to identify the node to read in its context.
ppContinuationPointThe continuation point data from a previous Read call. Null if first Read. Implementers of this interface can store the continuation point data in a derived class.
numValuesPerNodethe Number of Values per Node.
startTimeThe start time of the time period to read.
endTimeThe end time of the time period to read.
filterAn event filter used to select events to read.
pReadValueIdContext for the node to read. The context contains the IndexRange and the DataEncoding requested by the client. The other parameters of this context are already handled by the HistoryVariableHandle and the SDK.
eventsA list of events that match the read filter.
Returns
Error code
UaStatus HistoryManagerBase::readModified ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
HistoryReadCPUserDataBase **  ppContinuationPoint,
OpcUa_TimestampsToReturn  timestampsToReturn,
OpcUa_UInt32  maxValues,
OpcUa_DateTime startTime,
OpcUa_DateTime endTime,
OpcUa_Boolean  returnBounds,
OpcUa_HistoryReadValueId pReadValueId,
UaDataValues dataValues,
UaModificationInfo &  modificationInformations 
)
virtual

Read modified history values for a node.

The default implementation of this method returns OpcUa_GoodNoData to indicate that there is no modified data available. If the HistoryManager supports modified data, the derived class must overwrite this method with an implementation that delivers the modified data.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle.
ppContinuationPointThe continuation point data from a previous Read call. Null if first Read. Implementers of this interface can store the continuation point data in a derived class. The pointer to the continuation point object must be deleted in the method and must be set to NULL. A new continuation point can be created, queued in the Session and assigned to this parameter as out value if necessary.
timestampsToReturnThe client selected timestamp to return. Valid enum values are: OpcUa_TimestampsToReturn_Source, OpcUa_TimestampsToReturn_Server, OpcUa_TimestampsToReturn_Both
maxValuesThe maximum number of values to return.
startTimeThe start time of the time period to read.
endTimeThe end time of the time period to read.
returnBoundsFlag that indicates if bounding values should be returned.
pReadValueIdContext for the node to read. The context contains the IndexRange and the DataEncoding requested by the client. The other parameters of this context are already handled by the HistoryVariableHandle and the SDK.
dataValuesThe requested values for this operation.
modificationInformationsThe modification information for the requested Values for this operation. The information array will be detached by the SDK.
Returns
Error code.
UaStatus HistoryManagerBase::readProcessed ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
HistoryReadCPUserDataBase **  ppContinuationPoint,
OpcUa_TimestampsToReturn  timestampsToReturn,
OpcUa_DateTime startTime,
OpcUa_DateTime endTime,
OpcUa_Double  resampleInterval,
const UaNodeId aggregateType,
OpcUa_AggregateConfiguration  aggregateConfiguration,
OpcUa_HistoryReadValueId pReadValueId,
UaDataValues dataValues 
)
virtual

Read processed history values for a node.

The default implementation of this method implements all aggregate calculations defined in the OPC UA Aggregates specification by using the readRaw method of this class. The calculation can be deactivated when creating the HistoryManagerBase instance.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getVariableHandle.
ppContinuationPointThe continuation point data from a previous Read call. Null if first Read. Implementers of this interface can store the continuation point data in a derived class. The pointer to the continuation point object must be deleted in the method and must be set to NULL. A new continuation point can be created, queued in the Session and assigned to this parameter as out value if necessary.
timestampsToReturnThe client selected timestamp to return. Valid enum values are: OpcUa_TimestampsToReturn_Source, OpcUa_TimestampsToReturn_Server, OpcUa_TimestampsToReturn_Both
startTimeThe start time of the time period to read.
endTimeThe end time of the time period to read.
resampleIntervalThe interval to re sample.
aggregateTypeThe aggregate type node id.
aggregateConfigurationThe aggregate configuration.
pReadValueIdContext for the node to read. The context contains the IndexRange and the DataEncoding requested by the client. The other parameters of this context are already handled by the HistoryVariableHandle and the SDK.
dataValuesThe requested values for this operation.
Returns
Error code.
virtual UaStatus HistoryManagerBase::readRaw ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
HistoryReadCPUserDataBase **  ppContinuationPoint,
OpcUa_TimestampsToReturn  timestampsToReturn,
OpcUa_UInt32  maxValues,
OpcUa_DateTime startTime,
OpcUa_DateTime endTime,
OpcUa_Boolean  returnBounds,
OpcUa_HistoryReadValueId pReadValueId,
UaDataValues dataValues 
)
pure virtual

Read raw history values for a node.

This method is pure virtual and must be implemented by a derived class. Implementation of this method is the minimum requirement for HistoryRead support.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getHistoryVariableHandle.
ppContinuationPointThe continuation point data from a previous Read call. Null if first Read. Implementers of this interface can store the continuation point data in a derived class. The pointer to the continuation point object must be deleted in the method and must be set to NULL. A new continuation point can be created, queued in the Session and assigned to this parameter as out value if necessary.
timestampsToReturnThe client selected timestamp to return. Valid enum values are: OpcUa_TimestampsToReturn_Source, OpcUa_TimestampsToReturn_Server, OpcUa_TimestampsToReturn_Both
maxValuesThe maximum number of values to return.
startTimeThe start time of the time period to read.
endTimeThe end time of the time period to read.
returnBoundsFlag that indicates if bounding values should be returned.
pReadValueIdContext for the node to read. The context contains the IndexRange and the DataEncoding requested by the client. The other parameters of this context are already handled by the HistoryVariableHandle and the SDK.
dataValuesThe requested values for this operation.
Returns
Error code.
UaStatus HistoryManagerBase::updateData ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
OpcUa_PerformUpdateType  performInsertReplace,
OpcUa_Boolean  isStructureUpdate,
const UaDataValues updateValue,
UaStatusCodeArray operationResults,
UaDiagnosticInfos &  operationDiagnosticInfos 
)
virtual

Update history data values for a node.

The default implementation of this method returns OpcUa_BadHistoryOperationUnsupported to indicate that update is not supported. If the HistoryManager supports update, the derived class must overwrite this method with an implementation that executes the update.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getVariableHandle. This object contains the information needed by the IOManager to identify the node to read in its context.
performInsertReplaceThe mode to insert data or to replace older data.
isStructureUpdateFlag indicating if the provided data is meta data like anotations describing an entry in the history database
updateValueThe list of data values to update.
operationResultsThe results for the requested update values.
operationDiagnosticInfosThe diagnostic for the requested update values.
Returns
Error code
UaStatus HistoryManagerBase::updateEvents ( const ServiceContext serviceContext,
HistoryVariableHandle pVariableHandle,
OpcUa_PerformUpdateType  performInsertReplace,
const OpcUa_EventFilter filter,
const UaHistoryEventFieldLists eventData,
UaStatusCodeArray operationResults,
UaDiagnosticInfos &  operationDiagnosticInfos 
)
virtual

Update history events for a node.

The default implementation of this method returns OpcUa_BadHistoryOperationUnsupported to indicate that update is not supported. If the HistoryManager supports update, the derived class must overwrite this method with an implementation that executes the update.

Parameters
serviceContextGeneral context for the service calls containing information like the session object, return diagnostic mask and timeout hint.
pVariableHandleVariable handle provided by the NodeManager::getVariableHandle. This object contains the information needed by the IOManager to identify the node to read in its context.
performInsertReplaceThe mode to insert events or to replace older events.
filterAn event filter used to select events to update.
eventDataA list of events to update.
operationResultsThe results for the requested update events.
operationDiagnosticInfosThe diagnsotic for the requested update events.
Returns
Error code

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