ISch_Implementation interface
Each schematic component can have models from one or more domains. A schematic component can also have multiple models per domain, one of which will be the current model for that domain.
public interface ISch_Implementation : ISch_BasicContainer
Namespace: SCH · Assembly: Altium.SDK.Interfaces
Inherits: ISch_BasicContainer
Remarks
A model represents all the information needed for a component in a given domain, while a datafile entity (or link) is the only information which is in an external file.
The models of a component are represented by the ISch_Implementation interface.
The mapping of pins of a component and the nodes/pads of a model are represented by the ISch_MapDefiner interfaces.
The link between a model and its external data file links are represented by the ISch_DataFileLink interfaces.
A diagram of the relationship between a component and its models
A model can be represented by external data sources called data file links. For example, pins of a component can have links to different data files, as for signal integrity models. We will consider each model type in respect to the data file links for the main editor servers supported in Altium Designer.
For the PCB footprints, the model and the data file are both the same.
With the simulation models, you can have a simulation model which is a 4ohm resistor for example, there is a simulation model here, but there is no information is coming from an external file, therefore, a no external file is needed for this as the resistor model is built from spice. This is the case where you have a model with no data file entity. Thus the parameters are used for these types of simulation models that don't have data file links.
With signal integrity models, it can have information required for each pin. If we used IBIS datafiles, not the Altium Designer's central database, then each signal integrity model would then have multiple data files, each one for each type of pin.
A model can also be called an implementation. Each implementation linked to a component can have parameters and data file links.
Properties
| Property | Type | Access | Description |
|---|---|---|---|
| DatabaseDatalinksLocked | bool | get; set | |
| DatabaseModel | bool | get; set | |
| DatafileLinkCount | int | get | This property fetches the number of data file links for the current implementation of the schematic component. |
| DatalinksLocked | bool | get; set | |
| Description | string | get; set | The Description property fetches or sets the Description string for the model. |
| IntegratedModel | bool | get; set | The property determines whether the implementation is an integrated model type or not. |
| IsCurrent | bool | get; set | |
| MapAsString | string | get; set | This MapAsString property returns or sets the map of the component pins to a model pins (simulation ports for example) as a string of the following format: (SchematicPinNumber:ModelPinNumber) for exa… |
| ModelItemGUID | string | get; set | |
| ModelName | string | get; set | |
| ModelRevisionGUID | string | get; set | |
| ModelType | string | get; set | |
| ModelVaultGUID | string | get; set | |
| SchDatafileLink | ISch_ModelDatafileLink | get | The DatafileLink property determines the indexed datafilelink of the model type linked to the component. |
| SchDefinerByInterfaceDesignator | ISch_MapDefiner | get | |
| UseComponentLibrary | bool | get; set | This UseComponentLibrary property determines whether the component is from an integrated library or not (either as an installed library or part of the Project Libraries. |
DatabaseDatalinksLocked
No description yet.
bool GetState_DatabaseDatalinksLocked();
void SetState_DatabaseDatalinksLocked(bool argValue);
Type: bool · Access: read/write
DatabaseModel
No description yet.
bool GetState_DatabaseModel();
void SetState_DatabaseModel(bool argValue);
Type: bool · Access: read/write
See also: ISch_Implementation.IntegratedModel
DatafileLinkCount
This property fetches the number of data file links for the current implementation of the schematic component.
int GetState_DatafileLinkCount();
Type: int · Access: read-only
DatalinksLocked
No description yet.
bool GetState_DatalinksLocked();
void SetState_DatalinksLocked(bool argValue);
Type: bool · Access: read/write
Description
The Description property fetches or sets the Description string for the model. This is optional and is for reference purposes and do not have any impact on simulation processes.
string GetState_Description();
void SetState_Description(string argValue);
Type: string · Access: read/write
IntegratedModel
The property determines whether the implementation is an integrated model type or not.
bool GetState_IntegratedModel();
void SetState_IntegratedModel(bool argValue);
Type: bool · Access: read/write
See also: ISch_Implementation.DatabaseModel
IsCurrent
No description yet.
bool GetState_IsCurrent();
void SetState_IsCurrent(bool argValue);
Type: bool · Access: read/write
MapAsString
This MapAsString property returns or sets the map of the component pins to a model pins (simulation ports for example) as a string of the following format: (SchematicPinNumber:ModelPinNumber) for example (1:1),(2:2), ... ,(X:X)
string GetState_MapAsString();
void SetState_MapAsString(string argValue);
Type: string · Access: read/write
ModelItemGUID
No description yet.
string GetState_ModelItemGUID();
void SetState_ModelItemGUID(string argValue);
Type: string · Access: read/write
ModelName
No description yet.
string GetState_ModelName();
void SetState_ModelName(string argValue);
Type: string · Access: read/write
ModelRevisionGUID
No description yet.
string GetState_ModelRevisionGUID();
void SetState_ModelRevisionGUID(string argValue);
Type: string · Access: read/write
ModelType
No description yet.
string GetState_ModelType();
void SetState_ModelType(string argValue);
Type: string · Access: read/write
ModelVaultGUID
No description yet.
string GetState_ModelVaultGUID();
void SetState_ModelVaultGUID(string argValue);
Type: string · Access: read/write
SchDatafileLink
The DatafileLink property determines the indexed datafilelink of the model type linked to the component. A component can have multiple linked models and each model can have multiple external data file links.
ISch_ModelDatafileLink GetState_SchDatafileLink(int argI);
Type: ISch_ModelDatafileLink · Access: read-only · Index: argI (int)
The accessors are extension methods of ISch_ImplementationHelper (using SCH;).
SchDefinerByInterfaceDesignator
No description yet.
ISch_MapDefiner GetState_SchDefinerByInterfaceDesignator(string argS);
Type: ISch_MapDefiner · Access: read-only · Index: argS (string)
The accessors are extension methods of ISch_ImplementationHelper (using SCH;).
UseComponentLibrary
This UseComponentLibrary property determines whether the component is from an integrated library or not (either as an installed library or part of the Project Libraries. This is accessed from the Available Libraries dialog in Altium Designer). A Boolean value is returned.
bool GetState_UseComponentLibrary();
void SetState_UseComponentLibrary(bool argValue);
Type: bool · Access: read/write
See also: ISch_GraphicalObject, ISch_Rectangle, ISch_Image
Methods
| Method | Returns | Description |
|---|---|---|
| AddDataFileLink | void | |
| ClearAllDatafileLinks | void | This method removes all the data file links of the implementation (model) for the current component. |
| LockImplementation | void | |
| Map_Import_FromUser | bool |
AddDataFileLink
No description yet.
void AddDataFileLink(string argnEntityName, string argLocation, string argFileKind);
| Parameter | Type | Passing |
|---|---|---|
argnEntityName | string | value |
argLocation | string | value |
argFileKind | string | value |
Returns: nothing (void)
ClearAllDatafileLinks
This method removes all the data file links of the implementation (model) for the current component.
void ClearAllDatafileLinks();
Returns: nothing (void)
LockImplementation
No description yet.
void LockImplementation();
Returns: nothing (void)
Map_Import_FromUser
No description yet.
bool Map_Import_FromUser(bool arglowOneToMany);
| Parameter | Type | Passing |
|---|---|---|
arglowOneToMany | bool | value |
Returns: bool
Inherited members
- From ISch_BasicContainer: AddAndPositionSchObject, AddSchObject, CopyTo, DeleteAll, DescriptionString, ExportToParameters, FreeAllContainedObjects, Handle, IdentifierString, Import_FromUser, ObjectId, OwnerSchDocument, RemoveSchObject, Replicate, SchBasicContainer, SchIterator_Create, SchIterator_Destroy, SchParameterByName, Setstate_Default, Text, UniqueId, WiringDiagramOriginUniqueId
Returned by
ISch_Component.AddSchImplementation
Accepted by
IIbisModelImplementation.Export_ToImplementation, IIbisModelImplementation.Import_FromImplementation, IModelEditor.DrawModel_FromSchImpl, IModelEditor.EditModel, IModelEditor.SetDefaultModelState, IModelEditor3.EditModel_ReadOnly, IModelEditor4.InitModel, ISch_Component.RemoveSchImplementation, ISimModelMetafilePainter.SetSimImpl
Examples
Used in the SDK examples: Ciiva.