
# IJTagDevice interface

*No description yet.*

```csharp
public interface IJTagDevice : IDevice
```

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

**Inherits:** [IDevice](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IDevice.md)

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [Index](#index) | `int` | get; set |  |

### Index

*No description yet.*

```csharp
int GetIndex();
void SetIndex(int argIndex);
```

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

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [GetBoundaryCell](#getboundarycell) | [IBoundaryCell](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IBoundaryCell.md) |  |
| [GetBoundaryCellCount](#getboundarycellcount) | `int` |  |
| [GetBoundaryLength](#getboundarylength) | `int` |  |
| [GetBSDL](#getbsdl) | [IBSDLEntity](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IBSDLEntity.md) |  |
| [GetCurrentDeviceName](#getcurrentdevicename) | `string` |  |
| [GetDeviceInformation](#getdeviceinformation) | [IDeviceInformation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IDeviceInformation.md) |  |
| [GetFilename](#getfilename) | `string` |  |
| [GetIdCodeFromBSDL](#getidcodefrombsdl) | `uint` |  |
| [GetIdCodeFromDevice](#getidcodefromdevice) | `uint` |  |
| [GetInstructionLength](#getinstructionlength) | `int` |  |
| [GetInstructionOpcode](#getinstructionopcode) | [IInstructionOpCode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IInstructionOpCode.md) |  |
| [GetInstructionOpcodeCount](#getinstructionopcodecount) | `int` |  |
| [GetPin](#getpin) | [IScanPin](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IScanPin.md) |  |
| [GetPinCount](#getpincount) | `int` |  |
| [GetPinMapping](#getpinmapping) | [IPinMapping](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPinMapping.md) |  |
| [GetPinMappingCount](#getpinmappingcount) | `int` |  |
| [GetRegisterAssociation](#getregisterassociation) | [IRegisterAssociation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IRegisterAssociation.md) |  |
| [GetRegisterAssociationCount](#getregisterassociationcount) | `int` |  |
| [ReadPinStatesFromChain](#readpinstatesfromchain) | `bool` |  |
| [ReloadBSDL](#reloadbsdl) | `void` |  |
| [UpdateWithPreferredDeviceName](#updatewithpreferreddevicename) | `bool` |  |

### GetBoundaryCell

*No description yet.*

```csharp
IBoundaryCell GetBoundaryCell(int argIndex);
```

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

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

Extension method of `IJTagDeviceHelper` (`using SCH;`).

### GetBoundaryCellCount

*No description yet.*

```csharp
int GetBoundaryCellCount();
```

**Returns:** `int`

### GetBoundaryLength

*No description yet.*

```csharp
int GetBoundaryLength();
```

**Returns:** `int`

### GetBSDL

*No description yet.*

```csharp
IBSDLEntity GetBSDL();
```

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

Extension method of `IJTagDeviceHelper` (`using SCH;`).

### GetCurrentDeviceName

*No description yet.*

```csharp
string GetCurrentDeviceName();
```

**Returns:** `string`

### GetDeviceInformation

*No description yet.*

```csharp
IDeviceInformation GetDeviceInformation();
```

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

Extension method of `IJTagDeviceHelper` (`using SCH;`).

### GetFilename

*No description yet.*

```csharp
string GetFilename();
```

**Returns:** `string`

### GetIdCodeFromBSDL

*No description yet.*

```csharp
uint GetIdCodeFromBSDL();
```

**Returns:** `uint`

### GetIdCodeFromDevice

*No description yet.*

```csharp
uint GetIdCodeFromDevice();
```

**Returns:** `uint`

### GetInstructionLength

*No description yet.*

```csharp
int GetInstructionLength();
```

**Returns:** `int`

### GetInstructionOpcode

*No description yet.*

```csharp
IInstructionOpCode GetInstructionOpcode(int argIndex);
```

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

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

Extension method of `IJTagDeviceHelper` (`using SCH;`).

### GetInstructionOpcodeCount

*No description yet.*

```csharp
int GetInstructionOpcodeCount();
```

**Returns:** `int`

### GetPin

*No description yet.*

```csharp
IScanPin GetPin(int argIndex);
```

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

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

Extension method of `IJTagDeviceHelper` (`using SCH;`).

### GetPinCount

*No description yet.*

```csharp
int GetPinCount();
```

**Returns:** `int`

### GetPinMapping

*No description yet.*

```csharp
IPinMapping GetPinMapping(int argIndex);
```

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

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

Extension method of `IJTagDeviceHelper` (`using SCH;`).

### GetPinMappingCount

*No description yet.*

```csharp
int GetPinMappingCount();
```

**Returns:** `int`

### GetRegisterAssociation

*No description yet.*

```csharp
IRegisterAssociation GetRegisterAssociation(int argIndex);
```

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

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

Extension method of `IJTagDeviceHelper` (`using SCH;`).

### GetRegisterAssociationCount

*No description yet.*

```csharp
int GetRegisterAssociationCount();
```

**Returns:** `int`

### ReadPinStatesFromChain

*No description yet.*

```csharp
bool ReadPinStatesFromChain(IBSDLEntity argBSDLEntity);
bool ReadPinStatesFromChain(object argBSDLEntity);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argBSDLEntity` | [IBSDLEntity](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IBSDLEntity.md) | value |

**Returns:** `bool`

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

### ReloadBSDL

*No description yet.*

```csharp
void ReloadBSDL();
```

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

### UpdateWithPreferredDeviceName

*No description yet.*

```csharp
bool UpdateWithPreferredDeviceName(string argNewName);
```

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

**Returns:** `bool`

## Returned by

[IDeviceLink.GetJTAGDevice](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IDeviceLink.md#getjtagdevice), [IJTagChannel.GetDevice](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IJTagChannel.md#getdevice)
