
# ILibraryInterface interface

*No description yet.*

```csharp
public interface ILibraryInterface
```

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

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [BrowseComponent](#browsecomponent) | `bool` |  |
| [BrowseDeviceSheet](#browsedevicesheet) | `bool` |  |
| [BrowseDeviceSheetRevision](#browsedevicesheetrevision) | `bool` |  |
| [BrowseSymbol](#browsesymbol) | `bool` |  |
| [BrowseSymbolRevision](#browsesymbolrevision) | `bool` |  |
| [FindComponentDesignItemDeviceSheet](#findcomponentdesignitemdevicesheet) | `bool` |  |
| [FindComponentDisplayPath](#findcomponentdisplaypath) | `string` |  |
| [FindComponentLibraryPath](#findcomponentlibrarypath) | `string` |  |
| [FindComponentSymbol](#findcomponentsymbol) | `bool` |  |
| [FindDeviceSheetByFileName](#finddevicesheetbyfilename) | `bool` |  |
| [FindLibraryInformation](#findlibraryinformation) | `bool` |  |
| [FindModelLibraryPath](#findmodellibrarypath) | `string` |  |
| [GetComponentPlacementParameters](#getcomponentplacementparameters) | `string` |  |
| [GetDeviceSheetFullPath](#getdevicesheetfullpath) | `string` |  |
| [GetLifeCycleState](#getlifecyclestate) | `string` |  |
| [GetOrderedRevisionList](#getorderedrevisionlist) | `bool` |  |
| [GetSourceRelationshipsAsString](#getsourcerelationshipsasstring) | `string` |  |
| [IsEDMSLibrary](#isedmslibrary) | `bool` |  |
| [IsPathToDesignItemDeviceSheet](#ispathtodesignitemdevicesheet) | `bool` |  |
| [PlaceHWPartIntoPCB](#placehwpartintopcb) | `bool` |  |
| [PlaceHWPartIntoSchematic](#placehwpartintoschematic) | `bool` |  |

### BrowseComponent

*No description yet.*

```csharp
bool BrowseComponent(TLibIdentifierKind argLibIdentifierKind, ref string argLibraryIdentifier, ref string argDesignItemID, ref int argPartID, out string argSymbolReference, out string argSymbolLibraryPath, ref string argModelName, string argModelType, out string argModelLibraryPath);
bool BrowseComponent(int argLibIdentifierKind, ref string argLibraryIdentifier, ref string argDesignItemID, ref int argPartID, out string argSymbolReference, out string argSymbolLibraryPath, ref string argModelName, string argModelType, out string argModelLibraryPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | ref |
| `argDesignItemID` | `string` | ref |
| `argPartID` | `int` | ref |
| `argSymbolReference` | `string` | out |
| `argSymbolLibraryPath` | `string` | out |
| `argModelName` | `string` | ref |
| `argModelType` | `string` | value |
| `argModelLibraryPath` | `string` | out |

**Returns:** `bool`

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

### BrowseDeviceSheet

*No description yet.*

```csharp
bool BrowseDeviceSheet(TLibIdentifierKind argLibIdentifierKind, ref string argLibraryIdentifier, ref string argDesignItemID, out string argSymbolReference, out string argSymbolLibraryPath);
bool BrowseDeviceSheet(int argLibIdentifierKind, ref string argLibraryIdentifier, ref string argDesignItemID, out string argSymbolReference, out string argSymbolLibraryPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | ref |
| `argDesignItemID` | `string` | ref |
| `argSymbolReference` | `string` | out |
| `argSymbolLibraryPath` | `string` | out |

**Returns:** `bool`

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

### BrowseDeviceSheetRevision

*No description yet.*

```csharp
bool BrowseDeviceSheetRevision(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, ref string argDesignItemID, out string argSymbolReference, out string argSymbolLibraryPath, out string argRevisionStatus);
bool BrowseDeviceSheetRevision(int argLibIdentifierKind, string argLibraryIdentifier, ref string argDesignItemID, out string argSymbolReference, out string argSymbolLibraryPath, out string argRevisionStatus);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | ref |
| `argSymbolReference` | `string` | out |
| `argSymbolLibraryPath` | `string` | out |
| `argRevisionStatus` | `string` | out |

**Returns:** `bool`

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

### BrowseSymbol

*No description yet.*

```csharp
bool BrowseSymbol(TLibIdentifierKind argLibIdentifierKind, ref string argLibraryIdentifier, ref string argDesignItemID, out string argSymbolReference, out string argSymbolLibraryPath);
bool BrowseSymbol(int argLibIdentifierKind, ref string argLibraryIdentifier, ref string argDesignItemID, out string argSymbolReference, out string argSymbolLibraryPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | ref |
| `argDesignItemID` | `string` | ref |
| `argSymbolReference` | `string` | out |
| `argSymbolLibraryPath` | `string` | out |

**Returns:** `bool`

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

### BrowseSymbolRevision

*No description yet.*

```csharp
bool BrowseSymbolRevision(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, ref string argDesignItemID, out string argSymbolReference, out string argSymbolLibraryPath, out string argRevisionStatus);
bool BrowseSymbolRevision(int argLibIdentifierKind, string argLibraryIdentifier, ref string argDesignItemID, out string argSymbolReference, out string argSymbolLibraryPath, out string argRevisionStatus);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | ref |
| `argSymbolReference` | `string` | out |
| `argSymbolLibraryPath` | `string` | out |
| `argRevisionStatus` | `string` | out |

**Returns:** `bool`

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

### FindComponentDesignItemDeviceSheet

*No description yet.*

```csharp
bool FindComponentDesignItemDeviceSheet(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, out string argDeviceSheetPath);
bool FindComponentDesignItemDeviceSheet(int argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, out string argDeviceSheetPath);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | value |
| `argDeviceSheetPath` | `string` | out |

**Returns:** `bool`

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

### FindComponentDisplayPath

*No description yet.*

```csharp
string FindComponentDisplayPath(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID);
string FindComponentDisplayPath(int argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | value |

**Returns:** `string`

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

### FindComponentLibraryPath

*No description yet.*

```csharp
string FindComponentLibraryPath(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID);
string FindComponentLibraryPath(int argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | value |

**Returns:** `string`

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

### FindComponentSymbol

*No description yet.*

```csharp
bool FindComponentSymbol(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, out string argSymbolLibraryPath, out string argSymbolReference);
bool FindComponentSymbol(int argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, out string argSymbolLibraryPath, out string argSymbolReference);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | value |
| `argSymbolLibraryPath` | `string` | out |
| `argSymbolReference` | `string` | out |

**Returns:** `bool`

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

**Examples:** [Ciiva](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Ciiva/Source%20Code/CiivaBOMDocument.cs#L244)

### FindDeviceSheetByFileName

*No description yet.*

```csharp
bool FindDeviceSheetByFileName(string argFileName, out string argDesignItemID, out string argLibraryIdentifier);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFileName` | `string` | value |
| `argDesignItemID` | `string` | out |
| `argLibraryIdentifier` | `string` | out |

**Returns:** `bool`

### FindLibraryInformation

*No description yet.*

```csharp
bool FindLibraryInformation(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, out string argLibraryPath, out string argDBTableName);
bool FindLibraryInformation(int argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, out string argLibraryPath, out string argDBTableName);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | value |
| `argLibraryPath` | `string` | out |
| `argDBTableName` | `string` | out |

**Returns:** `bool`

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

### FindModelLibraryPath

*No description yet.*

```csharp
string FindModelLibraryPath(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, string argModelName, string argModelType);
string FindModelLibraryPath(int argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, string argModelName, string argModelType);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | value |
| `argModelName` | `string` | value |
| `argModelType` | `string` | value |

**Returns:** `string`

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

### GetComponentPlacementParameters

*No description yet.*

```csharp
string GetComponentPlacementParameters(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID);
string GetComponentPlacementParameters(int argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | value |

**Returns:** `string`

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

### GetDeviceSheetFullPath

*No description yet.*

```csharp
string GetDeviceSheetFullPath(string argDesignItemID, string argLibraryIdentifier, string argCachedFileName);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argDesignItemID` | `string` | value |
| `argLibraryIdentifier` | `string` | value |
| `argCachedFileName` | `string` | value |

**Returns:** `string`

### GetLifeCycleState

*No description yet.*

```csharp
string GetLifeCycleState(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID);
string GetLifeCycleState(int argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | value |

**Returns:** `string`

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

### GetOrderedRevisionList

*No description yet.*

```csharp
bool GetOrderedRevisionList(TLibIdentifierKind argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, out string argCommaTextList);
bool GetOrderedRevisionList(int argLibIdentifierKind, string argLibraryIdentifier, string argDesignItemID, out string argCommaTextList);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argLibIdentifierKind` | [TLibIdentifierKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TLibIdentifierKind.md) | value |
| `argLibraryIdentifier` | `string` | value |
| `argDesignItemID` | `string` | value |
| `argCommaTextList` | `string` | out |

**Returns:** `bool`

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

### GetSourceRelationshipsAsString

*No description yet.*

```csharp
string GetSourceRelationshipsAsString(string argDesignItemID);
```

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

**Returns:** `string`

### IsEDMSLibrary

*No description yet.*

```csharp
bool IsEDMSLibrary(string argLibraryIdentifier);
```

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

**Returns:** `bool`

### IsPathToDesignItemDeviceSheet

*No description yet.*

```csharp
bool IsPathToDesignItemDeviceSheet(string argFullPath);
```

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

**Returns:** `bool`

### PlaceHWPartIntoPCB

*No description yet.*

```csharp
bool PlaceHWPartIntoPCB(string argVaultGUID, string argItemGUID, string argRevisionGUID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argVaultGUID` | `string` | value |
| `argItemGUID` | `string` | value |
| `argRevisionGUID` | `string` | value |

**Returns:** `bool`

### PlaceHWPartIntoSchematic

*No description yet.*

```csharp
bool PlaceHWPartIntoSchematic(string argVaultGUID, string argItemGUID, string argRevisionGUID, string argParams);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argVaultGUID` | `string` | value |
| `argItemGUID` | `string` | value |
| `argRevisionGUID` | `string` | value |
| `argParams` | `string` | value |

**Returns:** `bool`

## Examples

Used in the SDK examples: [Ciiva](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Ciiva/Source%20Code/CiivaBOMDocument.cs#L240).
