
# IPCB_XLibManufacturingDRCProvider interface

*No description yet.*

```csharp
public interface IPCB_XLibManufacturingDRCProvider
```

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

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [ClearHighlights](#clearhighlights) | `void` |  |
| [HighlightViolation](#highlightviolation) | `void` |  |
| [RunDRC](#rundrc) | [IPCB_XLibManufacturingViolationReport](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingViolationReport.md) |  |

### ClearHighlights

*No description yet.*

```csharp
void ClearHighlights();
```

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

### HighlightViolation

*No description yet.*

```csharp
void HighlightViolation(IPCB_XLibManufacturingViolation argViolation, bool argZoom);
void HighlightViolation(object argViolation, bool argZoom);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argViolation` | [IPCB_XLibManufacturingViolation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingViolation.md) | value |
| `argZoom` | `bool` | value |

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

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

### RunDRC

*No description yet.*

```csharp
IPCB_XLibManufacturingViolationReport RunDRC(IXLibEntity argFabProfile, IXLibEntity argOptions);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFabProfile` | [IXLibEntity](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IXLibEntity.md) | value |
| `argOptions` | [IXLibEntity](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IXLibEntity.md) | value |

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

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