# OpcOffNormalAlarmNode Class

<dl class="api-definition">
<dt>Namespace</dt>
<dd><a href="../namespaces/opc.uafx">Opc.UaFx</a></dd>
<dt>Assembly</dt>
<dd>Opc.UaFx.Advanced.dll</dd>
<dt>Package</dt>
<dd>Opc.UaFx.Advanced v2.59.0</dd>
<dt>Members</dt>
<dd><a href="./members">OpcOffNormalAlarmNode Members</a></dd>
</dl>

Defines an alarm condition node intended to represent a discrete condition that is considered to be not normal.

## Syntax

<div class="api-signature" data-lang="csharp">

```csharp
[OpcNodeType(10637)]
public class OpcOffNormalAlarmNode : OpcDiscreteAlarmNode
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
<OpcEventType(GetType(OpcOffNormalAlarm))>
<OpcNodeType(10637)>
Public Class OpcOffNormalAlarmNode
    Inherits OpcDiscreteAlarmNode
```

</div>

## Inheritance

[Object](https://learn.microsoft.com/dotnet/api/system.object) → [OpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/) → [OpcInstanceNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcinstancenode/) → [OpcObjectNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcobjectnode/) → [OpcEventNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opceventnode/) → [OpcConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcconditionnode/) → [OpcAcknowledgeableConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcacknowledgeableconditionnode/) → [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) → [OpcDiscreteAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdiscretealarmnode/) → **OpcOffNormalAlarmNode**

## Implements

<ul class="api-implements">
<li><a href="../opc.uafx.iopcnode/">IOpcNode</a></li>
<li><a href="../opc.uafx.iopcnodeinfo/">IOpcNodeInfo</a></li>
</ul>

## Derived types

- [OpcTripAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctripalarmnode/)

## Remarks

This type of alarm is usually used to indicate that a discrete value is in an alarm state, it is active as long as a non-normal value is present.

## Constructors

| Name | Description |
|---|---|
| [OpcOffNormalAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcoffnormalalarmnode/members#opcoffnormalalarmnode)<span class="api-meta">10 overloads</span> | Initializes a new instance of the OpcOffNormalAlarmNode class accessible by the `name` specified. |

## Properties

| Name | Description |
|---|---|
| [DefaultTypeDefinitionId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcoffnormalalarmnode/members#defaulttypedefinitionid)<span class="api-meta">protected · override</span> | Gets the default identifier which identifies the node that defines the underlying node type from that this [OpcInstanceNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcinstancenode/) has been created. |
| [NormalStateId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcoffnormalalarmnode/members#normalstateid) | Gets or sets the node identifier that points to a variable which has a value that corresponds to one of the possible values of the variable pointed to by the [InputNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#inputnodeid) property where the [NormalStateId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcoffnormalalarmnode/members#normalstateid) property variable value is the value that is considered to be the normal state of the variable pointed to by the [InputNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#inputnodeid) property. |
| [NormalStateIdNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcoffnormalalarmnode/members#normalstateidnode) | Gets the [OpcNodeIdPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeidpropertynode/) of the [NormalStateId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcoffnormalalarmnode/members#normalstateid) property. |

## Methods

| Name | Description |
|---|---|
| [CreateBranchCore](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcoffnormalalarmnode/members#createbranchcore)<span class="api-meta">protected · override</span> | Creates a new instance of the OpcOffNormalAlarmNode using the same [Id](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#id) and [Name](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#name) as this node. |

Inherits members from [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members), [OpcAcknowledgeableConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcacknowledgeableconditionnode/members), [OpcConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcconditionnode/members), [OpcEventNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opceventnode/members), [OpcObjectNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcobjectnode/members), [OpcInstanceNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcinstancenode/members), [OpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members).

## Extension methods

| Name | Description |
|---|---|
| [OpcAcknowledgeableConditionNodeExtension.Acknowledge](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcacknowledgeableconditionnodeextension/members#acknowledge) | Acknowledges an event notification which can be identified by the [EventId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opceventnode/members#eventid) of the `conditionNode` specified there the [IsAckedNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcacknowledgeableconditionnode/members#isackednode) is equals to its false state using the further specified `client`. |
| [OpcAcknowledgeableConditionNodeExtension.Confirm](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcacknowledgeableconditionnodeextension/members#confirm) | Confirms an event notification which can be identified by the [EventId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opceventnode/members#eventid) of the `conditionNode` specified there the [IsConfirmedNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcacknowledgeableconditionnode/members#isconfirmednode) is equals to its false state using the further specified `client`. |
| [OpcConditionNodeExtension.AddComment](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcconditionnodeextension/members#addcomment) | Applies a comment to the state reported by an event notification which can be identified by the [EventId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opceventnode/members#eventid) of the `conditionNode` specified using the further specified `client`. |
| [OpcConditionNodeExtension.ChangeComment](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#changecomment) | Changes the condition 'Comment' state of the `conditionNode` specified using the further specified `context` without raising change events. |
| [OpcConditionNodeExtension.ChangeIsAcked](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#changeisacked) | Changes the condition 'Acked' state of the `conditionNode` specified using the further specified `context` without raising change events. |
| [OpcConditionNodeExtension.ChangeIsActive](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#changeisactive) | Changes the condition 'Active' state of the `conditionNode` specified using the further specified `context` without raising change events. |
| [OpcConditionNodeExtension.ChangeIsConfirmed](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#changeisconfirmed) | Changes the condition 'Confirmed' state of the `conditionNode` specified using the further specified `context` without raising change events. |
| [OpcConditionNodeExtension.ChangeIsEnabled](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#changeisenabled) | Changes the condition 'Enabled' state of the `conditionNode` specified using the further specified `context` without raising change events. |
| [OpcConditionNodeExtension.ChangeIsSuppressed](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#changeissuppressed) | Changes the condition 'Suppressed' state of the `conditionNode` specified using the further specified `context` without raising change events. |
| [OpcConditionNodeExtension.ChangeSeverity](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#changeseverity) | Changes the condition 'Severity' of the `conditionNode` specified using the further specified `context` without raising change events. |
| [OpcConditionNodeExtension.ChangeShelving](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.server.opcconditionnodeextension/members#changeshelving) | Changes the condition 'Shelving' of the `conditionNode` specified using the further specified `context`. |
| [OpcConditionNodeExtension.Disable](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcconditionnodeextension/members#disable) | Changes the condition state to 'Disabled' of the `conditionNode` specified using the further specified `client`. |
| [OpcConditionNodeExtension.Enable](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcconditionnodeextension/members#enable) | Changes the condition state to 'Enabled' of the `conditionNode` specified using the further specified `client`. |

## Applies to

| Package | Versions |
|---|---|
| Opc.UaFx.Advanced | v2.5–v2.59 |
