---
title: "Class BaseScheduledWatcher | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Services/BaseScheduledWatcher/"
---

# Class BaseScheduledWatcher

> **Inheritance:** `System.Object` -> BaseScheduledWatcher

###### **Namespace**: [Aurigma.DesignAtoms.Services](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Services.md)

###### **Assembly**: Aurigma.DesignAtoms.dll

```csharp title="Syntax"
public abstract class BaseScheduledWatcher : IDisposable
```

## Implements

* `System.IDisposable`

## Inherited Members

* `System.Object.ToString`
* `System.Object.Equals(System.Object)`
* `System.Object.Equals(System.Object,System.Object)`
* `System.Object.ReferenceEquals(System.Object,System.Object)`
* `System.Object.GetHashCode`
* `System.Object.GetType`
* `System.Object.MemberwiseClone`

## Constructors

### BaseScheduledWatcher

```csharp
protected BaseScheduledWatcher(TimeSpan delay, TimeSpan interval)
```

## Properties

### EnableMonitoring

```csharp
public bool EnableMonitoring { get; set; }
```

## Methods

### Pause

```csharp
public void Pause()
```

### ResetTimer

```csharp
public void ResetTimer()
```

### CheckForChanges

```csharp
protected abstract Task CheckForChanges(object state)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.Object` | *state* |  |

##### Returns

`System.Threading.Tasks.Task`

### InvokeChanged

```csharp
protected void InvokeChanged(EventArgs eventArgs)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.EventArgs` | *eventArgs* |  |

### Dispose

```csharp
public void Dispose()
```

## Events

### Changed

```csharp
public event EventHandler<EventArgs> Changed
```
