OpcShelvedStateMachineNode Class

Namespace: Opc.UaFx
Assemblies: Opc.UaFx.Advanced.dll

Defines a specialization of the OpcFiniteStateMachineNode which implements a sub-state machine that represents an advanced alarm filtering model.

C#

public class OpcShelvedStateMachineNode : OpcFiniteStateMachineNode, IOpcNode, IOpcNodeInfo


Inheritance ObjectOpcNodeOpcInstanceNodeOpcObjectNodeOpcStateMachineNodeOpcFiniteStateMachineNode › OpcShelvedStateMachineNode


Implements IOpcNode, IOpcNodeInfo

Remarks

The state model supports two types of Shelving: OneShotShelving and TimedShelving. This includes the allowed transitions between the various sub-states. Shelving is an operator initiated activity.

In OneShotShelving, a user requests that an alarm be shelved for its current active state. This type of shelving is typically used when an alarm is continually occurring on a boundary (i.e. a condition is jumping between high alarm and high high alarm, always in the active state). The one shot shelving will automatically clear when an alarm returns to an inactive state. Another use for this type of shelving is for a plant area that is shutdown i.e. a long running alarm such as a low level alarm for a tank that is not in use. When the tank starts operation again the shelving state will automatically clear.

In TimedShelving, a user specifies that an alarm be shelved for a fixed time period. This type of shelving is quite often used to block nuisance alarms. For example, an alarm that occurs more than 10 times in a minute may get shelved for a few minutes.

In all states, the Unshelve(OpcContext) can be called to cause a transition to the unshelve state; this includes un-shelving an alarm that is in the timed shelve state before the time has expired and the one shot shelve state without a transition to an inactive state.

The 'Time Expired' transition is simply a system generated transition that occurs when the time value defined as part of the 'Timed Shelved Call' has expired. The 'Any Transition Occurs' transition is also a system generated transition; this transition is generated when the condition goes to an inactive state.

Name Description
OpcShelvedStateMachineNode(IOpcNode, OpcName) Initializes a new instance of the OpcShelvedStateMachineNode class accessible by the name specified as a child node of the parent node given.
OpcShelvedStateMachineNode(IOpcNode, OpcName, OpcNodeId) Initializes a new instance of the OpcShelvedStateMachineNode class accessible by the name and id specified as a child node of the parent node given.
OpcShelvedStateMachineNode(OpcName) Initializes a new instance of the OpcShelvedStateMachineNode class accessible by the name specified.
OpcShelvedStateMachineNode(OpcName, OpcNodeId) Initializes a new instance of the OpcShelvedStateMachineNode class accessible by the name and id specified.
Name Description
AfterApplyChanges Occurs after one or more changes on the node has been notified.
(Inherited from OpcNode)
BeforeApplyChanges Occurs before one or more changes on the node are notified.
(Inherited from OpcNode)
Name Description
Category Gets the NodeCategoryOpcAttribute which identifies the kind of node and is therefore used to classify the node regarding its use and purpose.
(Inherited from OpcNode)
CurrentState Gets or sets the current state of the OpcStateMachineNode and provides a human readable name for the current state which may not be suitable for use in application control logic. Applications should use the VariableId property of the CurrentStateNode if they need a unique identifier for the state.
(Inherited from OpcStateMachineNode)
CurrentState Gets the current state of the OpcFiniteStateMachineNode and provides a human readable name for the current state which may not be suitable for use in application control logic. Applications should use the VariableId property of the CurrentStateNode if they need a unique identifier for the state.
(Inherited from OpcFiniteStateMachineNode)
CurrentStateNode Gets the OpcStateVariableNode of the CurrentState property.
(Inherited from OpcStateMachineNode)
CurrentStateNode Gets the OpcFiniteStateVariableNode of the CurrentState property.
(Inherited from OpcFiniteStateMachineNode)
DefaultReferenceTypeId Gets the default identifier which identifies the type that defines the underlying node reference within this OpcInstanceNode is referenced by its parent node.
(Inherited from OpcInstanceNode)
DefaultReferenceTypeId Gets the default identifier which identifies the type that defines the underlying node reference within this OpcInstanceNode is referenced by its parent node.
(Inherited from OpcObjectNode)
DefaultTypeDefinitionId Gets the default identifier which identifies the node that defines the underlying node type from that this OpcInstanceNode has been created.
DefaultTypeDefinitionId Gets the default identifier which identifies the node that defines the underlying node type from that this OpcInstanceNode has been created.
(Inherited from OpcInstanceNode)
DefaultTypeDefinitionId Gets the default identifier which identifies the node that defines the underlying node type from that this OpcInstanceNode has been created.
(Inherited from OpcObjectNode)
DefaultTypeDefinitionId Gets the default identifier which identifies the node that defines the underlying node type from that this OpcInstanceNode has been created.
(Inherited from OpcStateMachineNode)
DefaultTypeDefinitionId Gets the default identifier which identifies the node that defines the underlying node type from that this OpcInstanceNode has been created.
(Inherited from OpcFiniteStateMachineNode)
Description Gets or sets the value of the optional DescriptionOpcAttribute which shall explain the meaning of the node.
(Inherited from OpcNode)
Descriptions Gets the OpcNodeGlobalization instance used to control the localization and other globalization related tasks for the Description attribute of the current node.
(Inherited from OpcNode)
DisplayName Gets or sets the value of the DisplayNameOpcAttribute which defines the localizable name of the node.
(Inherited from OpcNode)
DisplayNames Gets the OpcNodeGlobalization instance used to control the localization and other globalization related tasks for the DisplayName attribute of the current node.
(Inherited from OpcNode)
HasPendingChanges Gets a value indiciating whether there exists any pending change on the node.
(Inherited from OpcNode)
Id Gets the value of the NodeIdOpcAttribute which unambiguously identifies the node.
(Inherited from OpcNode)
LastTransition Gets or sets the last transition which occurred in an instance and provides a human readable name for the last transition which may not be suitable for use in application control logic. Applications should use the VariableId property of the LastTransitionNode if they need a unique identifier for the transition.
(Inherited from OpcStateMachineNode)
LastTransition Gets the last transition which occurred in an instance and provides a human readable name for the last transition which may not be suitable for use in application control logic. Applications should use the VariableId property of the LastTransitionNode if they need a unique identifier for the transition.
(Inherited from OpcFiniteStateMachineNode)
LastTransitionNode Gets the OpcTransitionVariableNode of the LastTransition property.
(Inherited from OpcStateMachineNode)
LastTransitionNode Gets the OpcFiniteTransitionVariableNode of the LastTransition property.
(Inherited from OpcFiniteStateMachineNode)
ModellingRuleId Gets or sets the identifier which defines how the OpcInstanceNode is used for instantiation.
(Inherited from OpcInstanceNode)
Name Gets or sets the value of the BrowseNameOpcAttribute which defines the non-localizable human-readable name used when browsing the address space.
(Inherited from OpcNode)
Namespace (Inherited from OpcNode)
OneShotShelveCallback Gets or sets a callback used to shelve the condition node once.
OneShotShelveNode Gets the OpcActionMethodNode used to handle 'OneShotShelve' method calls to shelve a condition node once.
Parent Gets the parent node of the node.
(Inherited from OpcNode)
Parent Gets the parent node of the node.
(Inherited from OpcInstanceNode)
PendingChanges Gets a value indicating the most recent changes performed on the node since their last notification.
(Inherited from OpcNode)
QueryEventsCallback Gets or sets a callback used to query any event information which belongs to the node.
(Inherited from OpcNode)
ReadDescriptionCallback (Inherited from OpcNode)
ReadDisplayNameCallback (Inherited from OpcNode)
ReadUserWriteAccessCallback (Inherited from OpcNode)
ReadWriteAccessCallback (Inherited from OpcNode)
ReferenceType Gets a value which defines a pre-defined used ReferenceTypeId as one of the members defined by the OpcReferenceType enumeration to simplify querying standard reference types.
(Inherited from OpcInstanceNode)
ReferenceTypeId Gets or sets the identifier which identifies the node that defines the semantic of the reference between a source and a target node and generally reflects an operation between the two, such as “A contains B”.
(Inherited from OpcInstanceNode)
SymbolicName (Inherited from OpcNode)
Tag Gets or sets the object that contains additional user data about the node.
(Inherited from OpcNode)
TimedShelveCallback Gets or sets a callback used to shelve the condition node for a specific amount of time.
TimedShelveNode Gets the OpcTimedShelveMethodNode used to handle 'TimedShelve' method calls to shelve a condition node for a specific amount of time.
TypeDefinitionId Gets or sets the identifier which identifies the node that defines the underlying node type from that this OpcInstanceNode has been created.
(Inherited from OpcInstanceNode)
UnshelveCallback Gets or sets a callback used to unshelve the condition node.
UnshelveNode Gets the OpcActionMethodNode used to handle 'Unshelve' method calls to unshelve a condition node.
UnshelveTime Gets the remaining time in milliseconds until the alarm automatically transitions into the un-shelved state.
UnshelveTimeNode Gets the OpcPropertyNode´1 of the UnshelveTime property.
UserWriteAccess Gets or sets the value of the optional UserWriteAccessOpcAttribute which exposes the possibilities of a client to write the attributes of the node taking user access rights into account.
(Inherited from OpcNode)
WriteAccess Gets or sets the value of the optional WriteAccessOpcAttribute which exposes the posibilities of a client to write the attributes of the node.
(Inherited from OpcNode)
WriteDescriptionCallback (Inherited from OpcNode)
WriteDisplayNameCallback (Inherited from OpcNode)
WriteUserWriteAccessCallback (Inherited from OpcNode)
WriteWriteAccessCallback (Inherited from OpcNode)
Name Description
AddChild(OpcContext, OpcInstanceNode) (Inherited from OpcInstanceNode)
AddNotifier(OpcContext, IOpcNode) (Inherited from OpcNode)
AddNotifier(OpcContext, IOpcNode) (Inherited from OpcObjectNode)
ApplyChanges(OpcContext) Notifies about changes performed on the node since the last notification and resets the pending changes to None.
(Inherited from OpcNode)
ApplyChanges(OpcContext, Boolean) Notifies about changes performed on the node (and optionally on its children) since the last notification and resets the pending changes to None.
(Inherited from OpcNode)
AttributeValue(OpcAttribute) Retrieves the value of the attribute specified.
(Inherited from OpcNode)
AttributeValue``1(OpcAttribute) Retrieves the value of the attribute specified.
(Inherited from OpcNode)
Child(OpcContext, OpcName) Retrieves the child node its Name property matches exactly the name specified.
(Inherited from OpcNode)
Children(OpcContext) Retrieves a sequence of all nodes organized as children of this node.
(Inherited from OpcNode)
InitializeDefaults Initializes the default values used by the node implementation represented / required.
(Inherited from OpcNode)
InitializeDefaults Initializes the default values used by the OpcInstanceNode.
(Inherited from OpcInstanceNode)
IsChangePending(OpcNodeChanges) (Inherited from OpcNode)
OnAfterApplyChanges(OpcNodeChangesEventArgs) Raises the AfterApplyChanges event using the event data specified.
(Inherited from OpcNode)
OnBeforeApplyChanges(OpcNodeChangesEventArgs) Raises the BeforeApplyChanges event using the event data specified.
(Inherited from OpcNode)
OneShotShelve(OpcContext) Shelves a condition node once using the context specified.
OneShotShelveCore(OpcNodeContext) Shelves a condition node once using the context specified.
QueryEventsCore(OpcNodeContext, OpcEventCollection) (Inherited from OpcNode)
ReadAttributeValueCore``1(OpcReadAttributeValueContext, OpcAttributeValue) (Inherited from OpcNode)
RemoveChild(OpcContext, OpcInstanceNode) (Inherited from OpcInstanceNode)
RemoveNotifier(OpcContext, IOpcNode) (Inherited from OpcNode)
RemoveNotifier(OpcContext, IOpcNode) (Inherited from OpcInstanceNode)
RemoveNotifier(OpcContext, IOpcNode) (Inherited from OpcObjectNode)
ReportEvent(OpcContext, OpcEvent) (Inherited from OpcNode)
TimedShelve(OpcContext, TimeSpan) Shelves a condition node for specific amount of time using the context and duration specified.
TimedShelveCore(OpcNodeContext, TimeSpan) Shelves a condition node using the context and duration information specified.
Unshelve(OpcContext) Unshelves a condition node using the context specified.
UnshelveCore(OpcNodeContext) Unshelves a condition node using the context specified.
UpdateChanges(OpcContext, OpcNodeChanges) Notifies about the changes on behalf of the node and removes pending changes which intersect with the changes specified.
(Inherited from OpcNode)
UpdateChanges(OpcContext, OpcNodeChanges, Boolean) Notifies about the changes on behalf of the node (and optionally on its children) and removes pending changes which intersect with the changes specified.
(Inherited from OpcNode)
WriteAttributeValueCore``1(OpcWriteAttributeValueContext, OpcAttributeValue) (Inherited from OpcNode)