# UnityEventBase

> Abstract base class for UnityEvents.

## Definition

* **Type:** Class
* **Namespace:** [UnityEngine.Events](/engine/6000.5/script-reference/unityengine/events.md)
* **Assembly:** UnityEngine.CoreModule
* **Implements:** [ISerializationCallbackReceiver](/engine/6000.5/script-reference/unityengine/iserializationcallbackreceiver.md)

```csharp
public abstract class UnityEventBase : ISerializationCallbackReceiver
```

## Remarks

This class provides the base functionality for the UnityEvents.

## Methods

| Method                                                                                                                        | Description                                                                   |
| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| [GetPersistentEventCount](/engine/6000.5/script-reference/unityengine/events/unityeventbase/getpersistenteventcount.md)       | Get the number of registered persistent listeners.                            |
| [GetPersistentListenerState](/engine/6000.5/script-reference/unityengine/events/unityeventbase/getpersistentlistenerstate.md) | Returns the execution state of a persistent listener.                         |
| [GetPersistentMethodName](/engine/6000.5/script-reference/unityengine/events/unityeventbase/getpersistentmethodname.md)       | Get the target method name of the listener at index index.                    |
| [GetPersistentTarget](/engine/6000.5/script-reference/unityengine/events/unityeventbase/getpersistenttarget.md)               | Get the target component of the listener at index index.                      |
| [RemoveAllListeners](/engine/6000.5/script-reference/unityengine/events/unityeventbase/removealllisteners.md)                 | Remove all non-persistent (ie created from script) listeners  from the event. |
| [SetPersistentListenerState](/engine/6000.5/script-reference/unityengine/events/unityeventbase/setpersistentlistenerstate.md) | Modify the execution state of a persistent listener.                          |

## Static Methods

| Method                                                                                                        | Description                                                                                 |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| [GetValidMethodInfo](/engine/6000.5/script-reference/unityengine/events/unityeventbase/getvalidmethodinfo.md) | Given an object, function name, and a list of argument types; find the method that matches. |
