
# IPCB_BoardLayerSetManager interface

*No description yet.*

```csharp
public interface IPCB_BoardLayerSetManager
```

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

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [Count](#count) | `int` | get |  |
| [LayerSetByIndex](#layersetbyindex) | [IPCB_BoardLayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardLayerSet.md) | get |  |
| [LayerSetByName](#layersetbyname) | [IPCB_BoardLayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardLayerSet.md) | get |  |

### Count

*No description yet.*

```csharp
int GetState_Count();
```

**Type:** `int` · **Access:** read-only

### LayerSetByIndex

*No description yet.*

```csharp
IPCB_BoardLayerSet GetState_LayerSetByIndex(int argIndex);
```

**Type:** [IPCB_BoardLayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardLayerSet.md) · **Access:** read-only · **Index:** `argIndex` (`int`)

The accessors are extension methods of `IPCB_BoardLayerSetManagerHelper` (`using PCB;`).

### LayerSetByName

*No description yet.*

```csharp
IPCB_BoardLayerSet GetState_LayerSetByName(string argSetName);
```

**Type:** [IPCB_BoardLayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardLayerSet.md) · **Access:** read-only · **Index:** `argSetName` (`string`)

The accessors are extension methods of `IPCB_BoardLayerSetManagerHelper` (`using PCB;`).

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [MakeCurrent](#makecurrent) | `int` |  |
| [NewLayerSet](#newlayerset) | `int` |  |
| [NewLayerSetV7](#newlayersetv7) | `int` |  |
| [UpdateLayerSet](#updatelayerset) | `bool` |  |
| [UpdateLayerSetV7](#updatelayersetv7) | `bool` |  |

### MakeCurrent

*No description yet.*

```csharp
int MakeCurrent(int argPos);
```

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

**Returns:** `int`

### NewLayerSet

*No description yet.*

```csharp
int NewLayerSet(string argSetName, TV6_LayerSet argLayers, TV6_Layer argActive, bool argLocked, bool argCurrent, int argPosition);
int NewLayerSet(string argSetName, ITransportSet argLayers, int argActive, bool argLocked, bool argCurrent, int argPosition);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argSetName` | `string` | value |
| `argLayers` | [TV6_LayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TV6_LayerSet.md) | value |
| `argActive` | [TV6_Layer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TV6_Layer.md) | value |
| `argLocked` | `bool` | value |
| `argCurrent` | `bool` | value |
| `argPosition` | `int` | value |

**Returns:** `int`

The first overload is an extension method of `IPCB_BoardLayerSetManagerHelper` (`using PCB;`) with typed parameters; the second is declared by the interface.

### NewLayerSetV7

*No description yet.*

```csharp
int NewLayerSetV7(string argSetName, IPCB_LayerSet argLayers, V7_LayerBase argActive, bool argLocked, bool argCurrent, int argPosition);
int NewLayerSetV7(string argSetName, object argLayers, IV7_Layer argActive, bool argLocked, bool argCurrent, int argPosition);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argSetName` | `string` | value |
| `argLayers` | [IPCB_LayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerSet.md) | value |
| `argActive` | [V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md) | value |
| `argLocked` | `bool` | value |
| `argCurrent` | `bool` | value |
| `argPosition` | `int` | value |

**Returns:** `int`

The first overload is an extension method of `IPCB_BoardLayerSetManagerHelper` (`using PCB;`) with typed parameters; the second is declared by the interface.

### UpdateLayerSet

*No description yet.*

```csharp
bool UpdateLayerSet(string argSetName, TV6_Layer argActive, TV6_LayerSet argLayers, bool argFromBot);
bool UpdateLayerSet(string argSetName, int argActive, ITransportSet argLayers, bool argFromBot);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argSetName` | `string` | value |
| `argActive` | [TV6_Layer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TV6_Layer.md) | value |
| `argLayers` | [TV6_LayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TV6_LayerSet.md) | value |
| `argFromBot` | `bool` | value |

**Returns:** `bool`

The first overload is an extension method of `IPCB_BoardLayerSetManagerHelper` (`using PCB;`) with typed parameters; the second is declared by the interface.

### UpdateLayerSetV7

*No description yet.*

```csharp
bool UpdateLayerSetV7(string argSetName, V7_LayerBase argActive, IPCB_LayerSet argLayers, bool argFromBot);
bool UpdateLayerSetV7(string argSetName, IV7_Layer argActive, object argLayers, bool argFromBot);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argSetName` | `string` | value |
| `argActive` | [V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md) | value |
| `argLayers` | [IPCB_LayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerSet.md) | value |
| `argFromBot` | `bool` | value |

**Returns:** `bool`

The first overload is an extension method of `IPCB_BoardLayerSetManagerHelper` (`using PCB;`) with typed parameters; the second is declared by the interface.

## Returned by

[IPCB_Board.BoardLayerSetManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#boardlayersetmanager)
