
# IPCB_StackObject interface

*No description yet.*

```csharp
public interface IPCB_StackObject
```

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

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [Cache](#cache) | [V7_PadCache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_PadCache.md) | get; set |  |
| [HoleNegativeTolerance](#holenegativetolerance) | `int` | get; set |  |
| [HolePositiveTolerance](#holepositivetolerance) | `int` | get; set |  |
| [HoleSize](#holesize) | `int` | get; set |  |
| [IsPadRemoved](#ispadremoved) | `bool` | get; set |  |
| [Mode](#mode) | [TPadMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPadMode.md) | get; set |  |
| [SolderMaskExpansionFromHoleEdge](#soldermaskexpansionfromholeedge) | `bool` | get; set |  |
| [TemplateLink](#templatelink) | [IPCB_PadViaTemplateLink](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PadViaTemplateLink.md) | get |  |
| [XLocation](#xlocation) | `int` | get; set |  |
| [YLocation](#ylocation) | `int` | get; set |  |

### Cache

*No description yet.*

```csharp
V7_PadCache GetState_Cache();
void SetState_Cache(V7_PadCache argValue);
```

**Type:** [V7_PadCache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_PadCache.md) · **Access:** read/write

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

### HoleNegativeTolerance

*No description yet.*

```csharp
int GetState_HoleNegativeTolerance();
void SetState_HoleNegativeTolerance(int argValue);
```

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

### HolePositiveTolerance

*No description yet.*

```csharp
int GetState_HolePositiveTolerance();
void SetState_HolePositiveTolerance(int argValue);
```

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

### HoleSize

*No description yet.*

```csharp
int GetState_HoleSize();
void SetState_HoleSize(int argValue);
```

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

### IsPadRemoved

*No description yet.*

```csharp
bool GetState_IsPadRemoved(V7_LayerBase argLayer);
void SetState_IsPadRemoved(V7_LayerBase argLayer, bool argValue);
```

**Type:** `bool` · **Access:** read/write · **Index:** `argLayer` ([V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md))

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

### Mode

*No description yet.*

```csharp
TPadMode GetState_Mode();
void SetState_Mode(TPadMode argMode);
```

**Type:** [TPadMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPadMode.md) · **Access:** read/write

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

### SolderMaskExpansionFromHoleEdge

*No description yet.*

```csharp
bool GetState_SolderMaskExpansionFromHoleEdge();
void SetState_SolderMaskExpansionFromHoleEdge(bool argValue);
```

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

### TemplateLink

*No description yet.*

```csharp
IPCB_PadViaTemplateLink GetState_TemplateLink();
```

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

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

### XLocation

*No description yet.*

```csharp
int GetState_XLocation();
void SetState_XLocation(int argX);
```

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

### YLocation

*No description yet.*

```csharp
int GetState_YLocation();
void SetState_YLocation(int argY);
```

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

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [GetLayerStack](#getlayerstack) | [IPCB_LayerStack](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerStack.md) |  |
| [InvalidateCache](#invalidatecache) | `void` |  |

### GetLayerStack

*No description yet.*

```csharp
IPCB_LayerStack GetLayerStack();
```

**Returns:** [IPCB_LayerStack](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerStack.md)

Extension method of `IPCB_StackObjectHelper` (`using PCB;`).

### InvalidateCache

*No description yet.*

```csharp
void InvalidateCache();
```

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