
# IMacroManager2 interface

*No description yet.*

```csharp
public interface IMacroManager2 : IMacroManager
```

**Namespace:** DXP · **Assembly:** Altium.SDK.Interfaces

**Inherits:** [IMacroManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IMacroManager.md)

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [RecordIndex](#recordindex) | `int` | get; set |  |

### RecordIndex

*No description yet.*

```csharp
int GetRecordIndex();
void SetRecordIndex(int argIndex);
```

**Type:** `int` · **Access:** read/write

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [AddRecordEx](#addrecordex) | `int` |  |
| [ClearRecords](#clearrecords) | `void` |  |
| [DeleteRecord](#deleterecord) | `void` |  |
| [ExportToPlaybackFileEx](#exporttoplaybackfileex) | `void` |  |
| [GetRecord](#getrecord) | `void` |  |
| [GetRecordCount](#getrecordcount) | `int` |  |
| [UpdateRecordEx](#updaterecordex) | `void` |  |

### AddRecordEx

*No description yet.*

```csharp
int AddRecordEx(string argServer, string argCode, string argData, string argComment);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argServer` | `string` | value |
| `argCode` | `string` | value |
| `argData` | `string` | value |
| `argComment` | `string` | value |

**Returns:** `int`

### ClearRecords

*No description yet.*

```csharp
void ClearRecords();
```

**Returns:** nothing (`void`)

### DeleteRecord

*No description yet.*

```csharp
void DeleteRecord(int argIndex);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argIndex` | `int` | value |

**Returns:** nothing (`void`)

### ExportToPlaybackFileEx

*No description yet.*

```csharp
void ExportToPlaybackFileEx(string argFile, bool argSavePreferences);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFile` | `string` | value |
| `argSavePreferences` | `bool` | value |

**Returns:** nothing (`void`)

### GetRecord

*No description yet.*

```csharp
void GetRecord(int argIndex, ref int argLineNumber, ref uint argDelay, ref string argServer, ref string argCode, ref string argData, ref string argComment);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argIndex` | `int` | value |
| `argLineNumber` | `int` | ref |
| `argDelay` | `uint` | ref |
| `argServer` | `string` | ref |
| `argCode` | `string` | ref |
| `argData` | `string` | ref |
| `argComment` | `string` | ref |

**Returns:** nothing (`void`)

### GetRecordCount

*No description yet.*

```csharp
int GetRecordCount();
```

**Returns:** `int`

### UpdateRecordEx

*No description yet.*

```csharp
void UpdateRecordEx(int argIndex, int argLineNumber, uint argDelay, string argServer, string argCode, string argData, string argComment);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argIndex` | `int` | value |
| `argLineNumber` | `int` | value |
| `argDelay` | `uint` | value |
| `argServer` | `string` | value |
| `argCode` | `string` | value |
| `argData` | `string` | value |
| `argComment` | `string` | value |

**Returns:** nothing (`void`)

## Inherited members

- From [IMacroManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IMacroManager.md): [AddRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IMacroManager.md#addrecord), [GetState](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IMacroManager.md#getstate), [PlayFromFile](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IMacroManager.md#playfromfile), [UpdateRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IMacroManager.md#updaterecord)
