
# IOutputGenerator interface

*No description yet.*

```csharp
public interface IOutputGenerator
```

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

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [AddToProject](#addtoproject) | `bool` | get; set |  |
| [CurrentOutputjobFileFullPath](#currentoutputjobfilefullpath) | `string` | get; set |  |
| [DocumentPath](#documentpath) | `string` | get; set |  |
| [ExplicitTargetFileName](#explicittargetfilename) | `string` | get; set |  |
| [OpenOutputs](#openoutputs) | `bool` | get; set |  |
| [TargetPrefix](#targetprefix) | `string` | get; set |  |

### AddToProject

*No description yet.*

```csharp
bool GetAddToProject();
void SetAddToProject(bool argAddToProject);
```

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

### CurrentOutputjobFileFullPath

*No description yet.*

```csharp
string GetCurrentOutputjobFileFullPath();
void SetCurrentOutputjobFileFullPath(string argFullPath);
```

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

### DocumentPath

*No description yet.*

```csharp
string GetDocumentPath();
void SetDocumentPath(string argDocumentPath);
```

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

### ExplicitTargetFileName

*No description yet.*

```csharp
string GetExplicitTargetFileName();
void SetExplicitTargetFileName(string argExplicitTargetFileName);
```

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

### OpenOutputs

*No description yet.*

```csharp
bool GetOpenOutputs();
void SetOpenOutputs(bool argOpenOutputs);
```

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

### TargetPrefix

*No description yet.*

```csharp
string GetTargetPrefix();
void SetTargetPrefix(string argTargetPrefix);
```

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

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [AddParameter](#addparameter) | `void` |  |
| [ClearParameters](#clearparameters) | `void` |  |
| [CreateAndLoadPCB](#createandloadpcb) | `void` |  |
| [GeneratePageSet](#generatepageset) | `int` |  |
| [GetBoardHandle](#getboardhandle) | `UIntPtr` |  |
| [GetName](#getname) | `string` |  |
| [GetPageHandle](#getpagehandle) | `UIntPtr` |  |
| [GetPageInterface](#getpageinterface) | [IGeneratedPage](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IGeneratedPage.md) |  |
| [GetParameterCount](#getparametercount) | `int` |  |
| [GetParameterValue](#getparametervalue) | `string` |  |
| [GetProject](#getproject) | [IProject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IProject.md) |  |
| [Initialize](#initialize) | `void` |  |
| [Notify_BeginGeneratingOutputFile](#notify_begingeneratingoutputfile) | `void` |  |
| [Notify_BeginPrintingDocument](#notify_beginprintingdocument) | `void` |  |
| [Notify_FinishGeneratingOutputFile](#notify_finishgeneratingoutputfile) | `void` |  |
| [Notify_FinishPrintingDocument](#notify_finishprintingdocument) | `void` |  |
| [ParameterTransferBegin](#parametertransferbegin) | `void` |  |
| [ParameterTransferEnd](#parametertransferend) | `void` |  |
| [PredictOutputFileNames](#predictoutputfilenames) | `void` |  |
| [RunGenerator](#rungenerator) | `bool` |  |
| [RunPreferencesForm](#runpreferencesform) | `bool` |  |
| [RunPropertiesForm](#runpropertiesform) | `bool` |  |
| [RunWizard](#runwizard) | [TDialogResult](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TDialogResult.md) |  |
| [SetGenerateCallbacks](#setgeneratecallbacks) | `void` |  |
| [SetOutputMediumType](#setoutputmediumtype) | `void` |  |
| [SetOutputPath](#setoutputpath) | `void` |  |
| [SetPageOptionsToDefault](#setpageoptionstodefault) | `void` |  |

### AddParameter

*No description yet.*

```csharp
void AddParameter(string argValue);
```

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

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

### ClearParameters

*No description yet.*

```csharp
void ClearParameters();
```

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

### CreateAndLoadPCB

*No description yet.*

```csharp
void CreateAndLoadPCB();
```

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

### GeneratePageSet

*No description yet.*

```csharp
int GeneratePageSet(InputValues argInputValues, PageOptionsRecord argPageOptions, PrinterOptionsRecord argPrinterOptions, uint argOutputValues, IPublisher argPublisher);
int GeneratePageSet(IInputValues argInputValues, IPageOptionsRecord argPageOptions, IPrinterOptionsRecord argPrinterOptions, uint argOutputValues, object argPublisher);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argInputValues` | [InputValues](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/InputValues.md) | value |
| `argPageOptions` | [PageOptionsRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/PageOptionsRecord.md) | value |
| `argPrinterOptions` | [PrinterOptionsRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/PrinterOptionsRecord.md) | value |
| `argOutputValues` | `uint` | value |
| `argPublisher` | [IPublisher](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IPublisher.md) | value |

**Returns:** `int`

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

### GetBoardHandle

*No description yet.*

```csharp
UIntPtr GetBoardHandle();
```

**Returns:** `UIntPtr`

Extension method of `IOutputGeneratorHelper` (`using EDP;`).

### GetName

*No description yet.*

```csharp
string GetName();
```

**Returns:** `string`

### GetPageHandle

*No description yet.*

```csharp
UIntPtr GetPageHandle(int argPageIndex);
```

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

**Returns:** `UIntPtr`

Extension method of `IOutputGeneratorHelper` (`using EDP;`).

### GetPageInterface

*No description yet.*

```csharp
IGeneratedPage GetPageInterface(int argPageIndex);
```

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

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

Extension method of `IOutputGeneratorHelper` (`using EDP;`).

### GetParameterCount

*No description yet.*

```csharp
int GetParameterCount();
```

**Returns:** `int`

### GetParameterValue

*No description yet.*

```csharp
string GetParameterValue(int argIndex);
```

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

**Returns:** `string`

### GetProject

*No description yet.*

```csharp
IProject GetProject();
```

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

Extension method of `IOutputGeneratorHelper` (`using EDP;`).

### Initialize

*No description yet.*

```csharp
void Initialize(UIntPtr argddress, UIntPtr argCallBackHandle, IProject argProject, string argPredefinedOutput, string argDocumentPath);
void Initialize(object argddress, object argCallBackHandle, object argProject, string argPredefinedOutput, string argDocumentPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argddress` | `UIntPtr` | value |
| `argCallBackHandle` | `UIntPtr` | value |
| `argProject` | [IProject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IProject.md) | value |
| `argPredefinedOutput` | `string` | value |
| `argDocumentPath` | `string` | value |

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

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

### Notify_BeginGeneratingOutputFile

*No description yet.*

```csharp
void Notify_BeginGeneratingOutputFile(string argGeneratedFileName);
```

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

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

### Notify_BeginPrintingDocument

*No description yet.*

```csharp
void Notify_BeginPrintingDocument(string argGeneratedFileName);
```

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

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

### Notify_FinishGeneratingOutputFile

*No description yet.*

```csharp
void Notify_FinishGeneratingOutputFile(string argGeneratedFileName);
```

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

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

### Notify_FinishPrintingDocument

*No description yet.*

```csharp
void Notify_FinishPrintingDocument(string argGeneratedFileName);
```

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

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

### ParameterTransferBegin

*No description yet.*

```csharp
void ParameterTransferBegin();
```

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

### ParameterTransferEnd

*No description yet.*

```csharp
void ParameterTransferEnd();
```

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

### PredictOutputFileNames

*No description yet.*

```csharp
void PredictOutputFileNames(IStrings argFiles);
void PredictOutputFileNames(object argFiles);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFiles` | [IStrings](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IStrings.md) | value |

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

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

### RunGenerator

*No description yet.*

```csharp
bool RunGenerator();
```

**Returns:** `bool`

### RunPreferencesForm

*No description yet.*

```csharp
bool RunPreferencesForm();
```

**Returns:** `bool`

### RunPropertiesForm

*No description yet.*

```csharp
bool RunPropertiesForm();
```

**Returns:** `bool`

### RunWizard

*No description yet.*

```csharp
TDialogResult RunWizard(int argX, int argY);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argX` | `int` | value |
| `argY` | `int` | value |

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

Extension method of `IOutputGeneratorHelper` (`using EDP;`).

### SetGenerateCallbacks

*No description yet.*

```csharp
void SetGenerateCallbacks(UIntPtr argnAllowProc, UIntPtr argCheckCancelFn);
void SetGenerateCallbacks(object argnAllowProc, object argCheckCancelFn);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argnAllowProc` | `UIntPtr` | value |
| `argCheckCancelFn` | `UIntPtr` | value |

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

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

### SetOutputMediumType

*No description yet.*

```csharp
void SetOutputMediumType(string argOutputMediumType);
```

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

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

### SetOutputPath

*No description yet.*

```csharp
void SetOutputPath(string argTargetFolder);
```

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

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

### SetPageOptionsToDefault

*No description yet.*

```csharp
void SetPageOptionsToDefault(ref PageOptionsRecord argPageOptions);
void SetPageOptionsToDefault(ref IPageOptionsRecord argPageOptions);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPageOptions` | [PageOptionsRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/PageOptionsRecord.md) | ref |

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

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

## Accepted by

[IOutputGeneratorUtils.SaveGeneratedPages](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IOutputGeneratorUtils.md#savegeneratedpages)
