# OpcAlarmConditionNode Members

> Reference: Defines an acknowledgeable condition node which introduces additional states to define active, suppressed and shelving alarm conditions.

<dl class="api-definition">
<dt>Type</dt>
<dd><a href="./">OpcAlarmConditionNode</a></dd>
<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>
</dl>

Inherits members from [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).

## Constructors

### OpcAlarmConditionNode

<span class="api-meta">10 overloads</span>

| Overload | Description |
|---|---|
| [OpcAlarmConditionNode(OpcName)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-uafx-opcname) | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` specified. |
| [OpcAlarmConditionNode(OpcName, OpcNodeId)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-uafx-opcname-opc-uafx-opcnodeid) | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` and `id` specified. |
| [OpcAlarmConditionNode(IOpcNode, OpcName)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-uafx-iopcnode-opc-uafx-opcname) | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` specified as a child node of the `parent` node given. |
| [OpcAlarmConditionNode(IOpcNode, OpcName, OpcNodeId)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-uafx-iopcnode-opc-uafx-opcname-opc-uafx-opcnodeid) | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` and `id` specified as a child node of the `parent` node given. |
| [OpcAlarmConditionNode(AlarmConditionState)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-ua-alarmconditionstate)<span class="api-meta">protected · since v2.50</span> | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class using the `content` as the instance to wrap. |
| [OpcAlarmConditionNode(AlarmConditionState, OpcNodeModel)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-ua-alarmconditionstate-opc-uafx-opcnodemodel)<span class="api-meta">protected · since v2.50</span> | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class using the `content` as the instance to wrap. |
| [OpcAlarmConditionNode(OpcNodeModel, OpcName)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-uafx-opcnodemodel-opc-uafx-opcname)<span class="api-meta">protected · since v2.50</span> | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` specified. |
| [OpcAlarmConditionNode(OpcNodeModel, OpcName, OpcNodeId)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-uafx-opcnodemodel-opc-uafx-opcname-opc-uafx-opcnodeid)<span class="api-meta">protected · since v2.50</span> | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` and `id` specified. |
| [OpcAlarmConditionNode(OpcNodeModel, IOpcNode, OpcName)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-uafx-opcnodemodel-opc-uafx-iopcnode-opc-uafx-opcname)<span class="api-meta">protected · since v2.50</span> | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` specified as a child node of the `parent` node given. |
| [OpcAlarmConditionNode(OpcNodeModel, IOpcNode, OpcName, OpcNodeId)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#opcalarmconditionnode-opc-uafx-opcnodemodel-opc-uafx-iopcnode-opc-uafx-opcname-opc-uafx-opcnodeid)<span class="api-meta">protected · since v2.50</span> | Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` and `id` specified as a child node of the `parent` node given. |

#### OpcAlarmConditionNode(OpcName)

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` specified.

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

```csharp
public OpcAlarmConditionNode(OpcName name)
```

</div>

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

```vbnet
Public Sub New(name As OpcName)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new alarm condition node can be accessed. |

#### OpcAlarmConditionNode(OpcName, OpcNodeId)

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` and `id` specified.

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

```csharp
public OpcAlarmConditionNode(OpcName name, OpcNodeId id)
```

</div>

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

```vbnet
Public Sub New(name As OpcName, id As OpcNodeId)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new alarm condition node can be accessed. |
| `id` | [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) | The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) through that the new alarm condition node can be identified and accessed. |

#### OpcAlarmConditionNode(IOpcNode, OpcName)

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` specified as a child node of the `parent` node given.

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

```csharp
public OpcAlarmConditionNode(IOpcNode parent, OpcName name)
```

</div>

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

```vbnet
Public Sub New(parent As IOpcNode, name As OpcName)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `parent` | [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) | The [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) used as the parent node or a null reference (Nothing in Visual Basic) in the case there is no parent node available. |
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new alarm condition node can be accessed. |

#### OpcAlarmConditionNode(IOpcNode, OpcName, OpcNodeId)

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` and `id` specified as a child node of the `parent` node given.

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

```csharp
public OpcAlarmConditionNode(IOpcNode parent, OpcName name, OpcNodeId id)
```

</div>

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

```vbnet
Public Sub New(parent As IOpcNode, name As OpcName, id As OpcNodeId)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `parent` | [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) | The [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) used as the parent node or a null reference (Nothing in Visual Basic) in the case there is no parent node available. |
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new alarm condition node can be accessed. |
| `id` | [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) | The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) through that the new alarm condition node can be identified and accessed. |

#### OpcAlarmConditionNode(AlarmConditionState)

<span class="api-meta">protected · since v2.50</span>

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class using the `content` as the instance to wrap.

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

```csharp
protected OpcAlarmConditionNode(AlarmConditionState content)
```

</div>

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

```vbnet
Protected Sub New(content As AlarmConditionState)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `content` | <abbr title="OPC Foundation stack type, not documented here: Opc.Ua.AlarmConditionState">AlarmConditionState</abbr> | The <abbr title="OPC Foundation stack type, not documented here: Opc.Ua.AlarmConditionState">AlarmConditionState</abbr> to wrap. |

**Exceptions**

| Exception | Condition |
|---|---|
| [ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception) | The `content` is a null reference (Nothing in Visual Basic). |

#### OpcAlarmConditionNode(AlarmConditionState, OpcNodeModel)

<span class="api-meta">protected · since v2.50</span>

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class using the `content` as the instance to wrap.

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

```csharp
protected OpcAlarmConditionNode(AlarmConditionState content, OpcNodeModel model)
```

</div>

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

```vbnet
Protected Sub New(content As AlarmConditionState, model As OpcNodeModel)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `content` | <abbr title="OPC Foundation stack type, not documented here: Opc.Ua.AlarmConditionState">AlarmConditionState</abbr> | The <abbr title="OPC Foundation stack type, not documented here: Opc.Ua.AlarmConditionState">AlarmConditionState</abbr> to wrap. |
| `model` | [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) | The [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) which defines the modelling directives for the new node or a null reference (Nothing in Visual Basic) if there are no directives are to be applied to the node. |

**Exceptions**

| Exception | Condition |
|---|---|
| [ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception) | The `content` is a null reference (Nothing in Visual Basic). |

#### OpcAlarmConditionNode(OpcNodeModel, OpcName)

<span class="api-meta">protected · since v2.50</span>

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` specified.

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

```csharp
protected OpcAlarmConditionNode(OpcNodeModel model, OpcName name)
```

</div>

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

```vbnet
Protected Sub New(model As OpcNodeModel, name As OpcName)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `model` | [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) | The [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) which defines the modelling directives for the new node or a null reference (Nothing in Visual Basic) if there are no directives are to be applied to the node. |
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new alarm condition node can be accessed. |

#### OpcAlarmConditionNode(OpcNodeModel, OpcName, OpcNodeId)

<span class="api-meta">protected · since v2.50</span>

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` and `id` specified.

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

```csharp
protected OpcAlarmConditionNode(OpcNodeModel model, OpcName name, OpcNodeId id)
```

</div>

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

```vbnet
Protected Sub New(model As OpcNodeModel, name As OpcName, id As OpcNodeId)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `model` | [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) | The [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) which defines the modelling directives for the new node or a null reference (Nothing in Visual Basic) if there are no directives are to be applied to the node. |
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new alarm condition node can be accessed. |
| `id` | [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) | The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) through that the new alarm condition node can be identified and accessed. |

#### OpcAlarmConditionNode(OpcNodeModel, IOpcNode, OpcName)

<span class="api-meta">protected · since v2.50</span>

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` specified as a child node of the `parent` node given.

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

```csharp
protected OpcAlarmConditionNode(
    OpcNodeModel model,
    IOpcNode parent,
    OpcName name)
```

</div>

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

```vbnet
Protected Sub New(model As OpcNodeModel, parent As IOpcNode, name As OpcName)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `model` | [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) | The [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) which defines the modelling directives for the new node or a null reference (Nothing in Visual Basic) if there are no directives are to be applied to the node. |
| `parent` | [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) | The [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) used as the parent node or a null reference (Nothing in Visual Basic) in the case there is no parent node available. |
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new alarm condition node can be accessed. |

#### OpcAlarmConditionNode(OpcNodeModel, IOpcNode, OpcName, OpcNodeId)

<span class="api-meta">protected · since v2.50</span>

Initializes a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) class accessible by the `name` and `id` specified as a child node of the `parent` node given.

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

```csharp
protected OpcAlarmConditionNode(
    OpcNodeModel model,
    IOpcNode parent,
    OpcName name,
    OpcNodeId id)
```

</div>

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

```vbnet
Protected Sub New(
    model As OpcNodeModel,
    parent As IOpcNode,
    name As OpcName,
    id As OpcNodeId)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `model` | [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) | The [OpcNodeModel](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemodel/) which defines the modelling directives for the new node or a null reference (Nothing in Visual Basic) if there are no directives are to be applied to the node. |
| `parent` | [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) | The [IOpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnode/) used as the parent node or a null reference (Nothing in Visual Basic) in the case there is no parent node available. |
| `name` | [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) | The [OpcName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/) through that the new alarm condition node can be accessed. |
| `id` | [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) | The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) through that the new alarm condition node can be identified and accessed. |

## Properties

### 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.

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

```csharp
protected override OpcNodeId DefaultTypeDefinitionId { get; }
```

</div>

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

```vbnet
Protected Overrides ReadOnly Property DefaultTypeDefinitionId As OpcNodeId
```

</div>

**Property value**

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

The [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) of the type node from that this [OpcInstanceNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcinstancenode/) has been created from. These type node defines the typical structure of an instance node of its type definition. If there exists no specific type definition node a null reference (Nothing in Visual Basic).

**Overrides**

[DefaultTypeDefinitionId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcacknowledgeableconditionnode/members#defaulttypedefinitionid)

### InputNodeId

Gets or sets an identifier which represents the node identifier of the variable the value of which is used as primary input in the calculation of the alarm state.

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

```csharp
public OpcNodeId InputNodeId { get; set; }
```

</div>

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

```vbnet
Public Property InputNodeId As OpcNodeId
```

</div>

**Property value**

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

If this variable is not in the address space, [Null](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/members#null) is provided. In some systems, an alarm may be calculated based on multiple variable values; it is up to the system to determine which variable's node identifier is used.

### InputNodeIdNode

Gets the [OpcNodeIdPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeidpropertynode/) of the [InputNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#inputnodeid) property.

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

```csharp
public OpcNodeIdPropertyNode InputNodeIdNode { get; }
```

</div>

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

```vbnet
Public ReadOnly Property InputNodeIdNode As OpcNodeIdPropertyNode
```

</div>

**Property value**

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

An instance of the [OpcNodeIdPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeidpropertynode/) class.

### IsActive

Gets a value indicating whether the alarm situation represented currently exists.

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

```csharp
public bool IsActive { get; }
```

</div>

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

```vbnet
Public ReadOnly Property IsActive As Boolean
```

</div>

**Property value**

[Boolean](https://learn.microsoft.com/dotnet/api/system.boolean)

A value indicating whether the alarm situation represented currently exists.

### IsActiveNode

Gets the [OpcTwoStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatevariablenode/) of the [IsActive](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#isactive) property.

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

```csharp
public OpcTwoStateVariableNode IsActiveNode { get; }
```

</div>

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

```vbnet
Public ReadOnly Property IsActiveNode As OpcTwoStateVariableNode
```

</div>

**Property value**

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

An instance of the [OpcTwoStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatevariablenode/) class.

### IsSuppressed

Gets a value indicating whether the alarm is suppressed due to system specific reasons.

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

```csharp
public bool IsSuppressed { get; }
```

</div>

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

```vbnet
Public ReadOnly Property IsSuppressed As Boolean
```

</div>

**Property value**

[Boolean](https://learn.microsoft.com/dotnet/api/system.boolean)

The value is used internally by the server to automatically suppress alarms due to system specific reasons. For example a system may be configured to suppress alarms that are associated with machinery that is shutdown, such as a low level alarm for a tank that is currently not in use.

### IsSuppressedNode

Gets the [OpcTwoStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatevariablenode/) of the [IsSuppressed](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#issuppressed) property.

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

```csharp
public OpcTwoStateVariableNode IsSuppressedNode { get; }
```

</div>

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

```vbnet
Public ReadOnly Property IsSuppressedNode As OpcTwoStateVariableNode
```

</div>

**Property value**

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

An instance of the [OpcTwoStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatevariablenode/) class.

### IsSuppressedOrShelved

Gets a value indicating whether the alarm is either in the [IsSuppressed](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#issuppressed) or [Shelving](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#shelving).

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

```csharp
public bool IsSuppressedOrShelved { get; }
```

</div>

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

```vbnet
Public ReadOnly Property IsSuppressedOrShelved As Boolean
```

</div>

**Property value**

[Boolean](https://learn.microsoft.com/dotnet/api/system.boolean)

The value true if the alarm is either in the [IsSuppressed](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#issuppressed) or [Shelving](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#shelving); otherwise (if both are not present) the value false.

**Remarks**

In case there the value is false the client typically does not display the alarm. State transitions associated with the alarm do occur, but they are not typically displayed by the clients as long as the alarm remains in either the suppressed or shelved state.

### IsSuppressedOrShelvedNode

Gets the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) of the [IsSuppressedOrShelved](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#issuppressedorshelved) property.

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

```csharp
public OpcPropertyNode<bool> IsSuppressedOrShelvedNode { get; }
```

</div>

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

```vbnet
Public ReadOnly Property IsSuppressedOrShelvedNode As OpcPropertyNode(Of Boolean)
```

</div>

**Property value**

[OpcPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/)&lt;[Boolean](https://learn.microsoft.com/dotnet/api/system.boolean)&gt;

An instance of the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) class.

### MaxTimeShelved

Gets or sets the maximum time that the alarm condition may be shelved.

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

```csharp
public double MaxTimeShelved { get; set; }
```

</div>

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

```vbnet
Public Property MaxTimeShelved As Double
```

</div>

**Property value**

[Double](https://learn.microsoft.com/dotnet/api/system.double)

The value is expressed as duration. Systems can use this property to prevent permanent shelving of an alarm. If this property is present it will be an upper limit on the duration passed into a TimedShelve method call. If a value that exceeds the value of this property is passed to the TimedShelve method, than a [BadShelvingTimeOutOfRange](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/#badshelvingtimeoutofrange) error code is returned on the call. If this property is present it will also be enforced for the OneShotShelved state, in that the alarm condition will transition to the Unshelved state from the OneShotShelved state if the duration specified in this property expires following a OneShotShelve operation without a change of any of the other items associated with the condition.

### MaxTimeShelvedNode

Gets the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) of the [MaxTimeShelved](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#maxtimeshelved) property.

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

```csharp
public OpcPropertyNode<double> MaxTimeShelvedNode { get; }
```

</div>

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

```vbnet
Public ReadOnly Property MaxTimeShelvedNode As OpcPropertyNode(Of Double)
```

</div>

**Property value**

[OpcPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/)&lt;[Double](https://learn.microsoft.com/dotnet/api/system.double)&gt;

An instance of the [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/) class.

### OneShotShelveCallback

Gets or sets a callback used to shelve the condition node once.

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

```csharp
public OpcNodeFunc<OpcAlarmConditionNode> OneShotShelveCallback { get; set; }
```

</div>

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

```vbnet
Public Property OneShotShelveCallback As OpcNodeFunc(Of OpcAlarmConditionNode)
```

</div>

**Property value**

[OpcNodeFunc](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodefunc-1/)&lt;[OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/)&gt;

A [OpcNodeFunc&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodefunc-1/) used to shelve the condition node once. The value can also be a null reference (Nothing in Visual Basic).

### Shelving

Gets a node which is used to suggest whether an alarm shall (temporarily) be prevented from being displayed to the user. It is quite often used to block nuisance alarms.

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

```csharp
public OpcShelvedStateMachineNode Shelving { get; }
```

</div>

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

```vbnet
Public ReadOnly Property Shelving As OpcShelvedStateMachineNode
```

</div>

**Property value**

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

An instance of the [OpcShelvedStateMachineNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcshelvedstatemachinenode/) to suggest whether an alarm shall (temporarily) be prevented.

### TimedShelveCallback

Gets or sets a callback used to shelve the condition node for a specific amount of time.

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

```csharp
public OpcNodeFunc<OpcAlarmConditionNode, TimeSpan> TimedShelveCallback { get; set; }
```

</div>

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

```vbnet
Public Property TimedShelveCallback As OpcNodeFunc(Of OpcAlarmConditionNode, TimeSpan)
```

</div>

**Property value**

[OpcNodeFunc](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodefunc-2/)&lt;[OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/), [TimeSpan](https://learn.microsoft.com/dotnet/api/system.timespan)&gt;

A [OpcNodeFunc&lt;T, T1&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodefunc-2/) used to shelve the condition node for a specific amount of time. The value can also be a null reference (Nothing in Visual Basic).

### TimedUnshelveCallback

Gets or sets a callback used to unshelve the condition node after a specific amount of time being shelved.

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

```csharp
public OpcNodeFunc<OpcAlarmConditionNode> TimedUnshelveCallback { get; set; }
```

</div>

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

```vbnet
Public Property TimedUnshelveCallback As OpcNodeFunc(Of OpcAlarmConditionNode)
```

</div>

**Property value**

[OpcNodeFunc](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodefunc-1/)&lt;[OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/)&gt;

A [OpcNodeAction&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeaction-1/) used to unshelve the condition node. The value can also be a null reference (Nothing in Visual Basic).

### UnshelveCallback

Gets or sets a callback used to unshelve the condition node.

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

```csharp
public OpcNodeFunc<OpcAlarmConditionNode> UnshelveCallback { get; set; }
```

</div>

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

```vbnet
Public Property UnshelveCallback As OpcNodeFunc(Of OpcAlarmConditionNode)
```

</div>

**Property value**

[OpcNodeFunc](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodefunc-1/)&lt;[OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/)&gt;

A [OpcNodeFunc&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodefunc-1/) used to unshelve the condition node. The value can also be a null reference (Nothing in Visual Basic).

## Methods

### CreateBranchCore

<span class="api-meta">protected · override</span>

Creates a new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) 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.

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

```csharp
protected override OpcConditionNode CreateBranchCore()
```

</div>

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

```vbnet
Protected Overrides Function CreateBranchCore() As OpcConditionNode
```

</div>

**Returns**

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

A new instance of the [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/) identifiable and accessible througth 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.

**Overrides**

[CreateBranchCore](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcacknowledgeableconditionnode/members#createbranchcore)

### OneShotShelveCore

<span class="api-meta">protected · virtual</span>

Shelves a condition node once using the `context` specified.

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

```csharp
protected virtual OpcStatusCode OneShotShelveCore(
    OpcNodeContext<OpcAlarmConditionNode> context)
```

</div>

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

```vbnet
Protected Overridable Function OneShotShelveCore(
    context As OpcNodeContext(Of OpcAlarmConditionNode)) As OpcStatusCode
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `context` | [OpcNodeContext](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/)&lt;[OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/)&gt; | The [OpcNodeContext&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/) to use to shelve a condition node once. |

**Returns**

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

The [OpcStatusCode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/) specifying the outcome of the shelving using the [OneShotShelveCallback](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#oneshotshelvecallback) or [Good](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/#good) if there is no custom callback routine defined.

### TimedShelveCore

<span class="api-meta">protected · virtual</span>

Shelves a condition node using the `context` and `duration` information specified.

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

```csharp
protected virtual OpcStatusCode TimedShelveCore(
    OpcNodeContext<OpcAlarmConditionNode> context,
    TimeSpan duration)
```

</div>

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

```vbnet
Protected Overridable Function TimedShelveCore(
    context As OpcNodeContext(Of OpcAlarmConditionNode),
    duration As TimeSpan) As OpcStatusCode
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `context` | [OpcNodeContext](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/)&lt;[OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/)&gt; | The [OpcNodeContext&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/) to use to shelve the condition node for specific amount of time. |
| `duration` | [TimeSpan](https://learn.microsoft.com/dotnet/api/system.timespan) | The amount of time a condition node is to be shelved. |

**Returns**

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

The [OpcStatusCode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/) specifying the outcome of the shelving using the [TimedShelveCallback](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#timedshelvecallback) or [Good](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/#good) if there is no custom callback routine defined.

### TimedUnshelveCore

<span class="api-meta">protected · virtual</span>

Unshelves a condition node using the `context` specified after being shelved for a specific amount of time.

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

```csharp
protected virtual OpcStatusCode TimedUnshelveCore(
    OpcNodeContext<OpcAlarmConditionNode> context)
```

</div>

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

```vbnet
Protected Overridable Function TimedUnshelveCore(
    context As OpcNodeContext(Of OpcAlarmConditionNode)) As OpcStatusCode
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `context` | [OpcNodeContext](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/)&lt;[OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/)&gt; | The [OpcNodeContext&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/) to use to unshelve a condition node. |

**Returns**

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

The [OpcStatusCode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/) specifying the outcome of the unshelving using the [TimedUnshelveCallback](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#timedunshelvecallback) or [Good](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/#good) if there is no custom callback routine defined.

### UnshelveCore

<span class="api-meta">protected · virtual</span>

Unshelves a condition node using the `context` specified.

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

```csharp
protected virtual OpcStatusCode UnshelveCore(
    OpcNodeContext<OpcAlarmConditionNode> context)
```

</div>

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

```vbnet
Protected Overridable Function UnshelveCore(
    context As OpcNodeContext(Of OpcAlarmConditionNode)) As OpcStatusCode
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `context` | [OpcNodeContext](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/)&lt;[OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/)&gt; | The [OpcNodeContext&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecontext-1/) to use to unshelve a condition node. |

**Returns**

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

The [OpcStatusCode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/) specifying the outcome of the unshelving using the [UnshelveCallback](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/members#unshelvecallback) or [Good](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatuscode/#good) if there is no custom callback routine defined.
