
# IOCCDocument interface

*No description yet.*

```csharp
public interface IOCCDocument
```

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

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [GetFreeShapeLabels](#getfreeshapelabels) | `int` |  |
| [GetLabelName](#getlabelname) | `int` |  |
| [GetShape](#getshape) | `int` |  |
| [GetShapeByLabel](#getshapebylabel) | `int` |  |
| [GetShapeByLabelName](#getshapebylabelname) | `int` |  |
| [GetTopLevelShapeLabels](#gettoplevelshapelabels) | `int` |  |
| [LoadFromStep](#loadfromstep) | `int` |  |
| [SaveToFile](#savetofile) | `int` |  |

### GetFreeShapeLabels

*No description yet.*

```csharp
int GetFreeShapeLabels(out IPCB3D_StringList argpResultLabelList);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argpResultLabelList` | [IPCB3D_StringList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_StringList.md) | out |

**Returns:** `int`

### GetLabelName

*No description yet.*

```csharp
int GetLabelName(string arglabel_, out string arglabelName);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `arglabel_` | `string` | value |
| `arglabelName` | `string` | out |

**Returns:** `int`

### GetShape

*No description yet.*

```csharp
int GetShape(out IPCB3D_Shape argpResultShape);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argpResultShape` | [IPCB3D_Shape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_Shape.md) | out |

**Returns:** `int`

### GetShapeByLabel

*No description yet.*

```csharp
int GetShapeByLabel(string arglabel_, out IPCB3D_Shape argpResultShape);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `arglabel_` | `string` | value |
| `argpResultShape` | [IPCB3D_Shape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_Shape.md) | out |

**Returns:** `int`

### GetShapeByLabelName

*No description yet.*

```csharp
int GetShapeByLabelName(string arglabelName, out IPCB3D_Shape argpResultShape);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `arglabelName` | `string` | value |
| `argpResultShape` | [IPCB3D_Shape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_Shape.md) | out |

**Returns:** `int`

### GetTopLevelShapeLabels

*No description yet.*

```csharp
int GetTopLevelShapeLabels(out IPCB3D_StringList argpResutlLabelList);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argpResutlLabelList` | [IPCB3D_StringList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_StringList.md) | out |

**Returns:** `int`

### LoadFromStep

*No description yet.*

```csharp
int LoadFromStep(string argfilename);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argfilename` | `string` | value |

**Returns:** `int`

### SaveToFile

*No description yet.*

```csharp
int SaveToFile(string argfilename);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argfilename` | `string` | value |

**Returns:** `int`

## Returned by

[IOccWrapper.CreateOccDocument](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IOccWrapper.md#createoccdocument)

## Accepted by

[IOccWrapper.Transfer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IOccWrapper.md#transfer), [IPCB_Board3DModelExporter.ExportBoard3DModelToOCCDoc](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board3DModelExporter.md#exportboard3dmodeltooccdoc), [IPCB_Component.SaveModelToOccDoc](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Component.md#savemodeltooccdoc)
