# OpcGeneralModelChangeEventNode Class

<span class="api-meta">since v2.22</span>

<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">OpcGeneralModelChangeEventNode Members</a></dd>
</dl>

Defines an event which contains information about the node that was changed and the action that occurred to cause the model change event (e.g. add a node, delete a node, etc.).

## Syntax

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

```csharp
[OpcNodeType(2133)]
public class OpcGeneralModelChangeEventNode : OpcModelChangeEventNode
```

</div>

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

```vbnet
<OpcEventType(GetType(OpcGeneralModelChange))>
<OpcNodeType(2133)>
Public Class OpcGeneralModelChangeEventNode
    Inherits OpcModelChangeEventNode
```

</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/) → [OpcModelChangeEventNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcmodelchangeeventnode/) → **OpcGeneralModelChangeEventNode**

## Implements

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

## Remarks

If the affected node is a variable or object, then the [TypeDefinitionId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcinstancenode/members#typedefinitionid) is also present.

## Constructors

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

## Properties

| Name | Description |
|---|---|
| [Changes](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcgeneralmodelchangeeventnode/members#changes) | Gets a collection of [OpcModelChangeItem](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcmodelchangeitem/) instances reflecting the changes to issue. |

## Methods

| Name | Description |
|---|---|
| [PrepareEventSnapshot](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcgeneralmodelchangeeventnode/members#prepareeventsnapshot)<span class="api-meta">protected · override</span> | Prepares the [OpcEventNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opceventnode/) for a new [OpcEventNodeSnapshot](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opceventnodesnapshot/). |

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

## Applies to

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