/// <summary> /// Updates the specified context. /// </summary> /// <param name="context">The context.</param> /// <param name="decoder">The decoder.</param> /// <param name="attibutesToLoad">The attributes to load.</param> public override void Update(ISystemContext context, BinaryDecoder decoder, AttributesToSave attibutesToLoad) { base.Update(context, decoder, attibutesToLoad); if ((attibutesToLoad & AttributesToSave.Value) != 0) { WrappedValue = decoder.ReadVariant(null); } if ((attibutesToLoad & AttributesToSave.DataType) != 0) { m_dataType = decoder.ReadNodeId(null); } if ((attibutesToLoad & AttributesToSave.ValueRank) != 0) { m_valueRank = decoder.ReadInt32(null); } if ((attibutesToLoad & AttributesToSave.ArrayDimensions) != 0) { UInt32Collection arrayDimensions = decoder.ReadUInt32Array(null); if (arrayDimensions != null && arrayDimensions.Count > 0) { m_arrayDimensions = new ReadOnlyList <uint>(arrayDimensions); } else { m_arrayDimensions = null; } } }
/// <summary> /// Invokes the DeleteSubscriptions service. /// </summary> public virtual ResponseHeader DeleteSubscriptions( RequestHeader requestHeader, UInt32Collection subscriptionIds, out StatusCodeCollection results, out DiagnosticInfoCollection diagnosticInfos) { results = null; diagnosticInfos = null; ValidateRequest(requestHeader); // Insert implementation. return(CreateResponse(requestHeader, StatusCodes.BadServiceUnsupported)); }
/// <summary> /// Invokes the SetMonitoringMode service. /// </summary> public virtual ResponseHeader SetMonitoringMode( RequestHeader requestHeader, uint subscriptionId, MonitoringMode monitoringMode, UInt32Collection monitoredItemIds, out StatusCodeCollection results, out DiagnosticInfoCollection diagnosticInfos) { results = null; diagnosticInfos = null; ValidateRequest(requestHeader); // Insert implementation. return(CreateResponse(requestHeader, StatusCodes.BadServiceUnsupported)); }
/// <summary> /// Returns the ids for all attributes which are valid for the at least one of the node classes specified by the mask. /// </summary> public static UInt32Collection GetIdentifiers(NodeClass nodeClass) { FieldInfo[] fields = typeof(Attributes).GetFields(BindingFlags.Public | BindingFlags.Static); UInt32Collection ids = new UInt32Collection(fields.Length); foreach (FieldInfo field in fields) { uint id = (uint)field.GetValue(typeof(Attributes)); if (IsValid(nodeClass, id)) { ids.Add(id); } } return(ids); }
/// <summary> /// Invokes the SetTriggering service. /// </summary> public virtual ResponseHeader SetTriggering( RequestHeader requestHeader, uint subscriptionId, uint triggeringItemId, UInt32Collection linksToAdd, UInt32Collection linksToRemove, out StatusCodeCollection addResults, out DiagnosticInfoCollection addDiagnosticInfos, out StatusCodeCollection removeResults, out DiagnosticInfoCollection removeDiagnosticInfos) { addResults = null; addDiagnosticInfos = null; removeResults = null; removeDiagnosticInfos = null; ValidateRequest(requestHeader); // Insert implementation. return(CreateResponse(requestHeader, StatusCodes.BadServiceUnsupported)); }
/// <summary> /// Invokes the Publish service. /// </summary> public virtual ResponseHeader Publish( RequestHeader requestHeader, SubscriptionAcknowledgementCollection subscriptionAcknowledgements, out uint subscriptionId, out UInt32Collection availableSequenceNumbers, out bool moreNotifications, out NotificationMessage notificationMessage, out StatusCodeCollection results, out DiagnosticInfoCollection diagnosticInfos) { subscriptionId = 0; availableSequenceNumbers = null; moreNotifications = false; notificationMessage = null; results = null; diagnosticInfos = null; ValidateRequest(requestHeader); // Insert implementation. return(CreateResponse(requestHeader, StatusCodes.BadServiceUnsupported)); }