SDK Source Units

This is a reference for the SDK Source Units that covers the Altium Designer core SDK and its object interface types.

The SDK consists of various APIs and specialized routines used by the Altium Designer application, the editors (such as the PCB and Schematic) and the plug-ins or add-on extensions. The APIs rely heavily on the Object Interfaces technology.

The source units from the Altium Designer SDK are split into three areas, the Electronic Data Platform API, the PCB Editor API and the Schematic Editor API. They can be found in the installation's \SDK\Delphi\Source Code folder.

Electronic Data Platform API

The Electronic Data Platform (EDP) API deals with the DXP platform, projects and their documents, output jobs and common functionality. 

Unit NameDescription
EDPInterfaces.pasContains DXP platform, modules' interfaces.
EDPDispInterfaces.pasMany interfaces used in the Altium Designer system have DispInterfaces instead of Interfaces. They are similar to Interfaces and are based on Win32's COM technology / IDispatch interfaces.
EDPRecordInterfaces.pas 
EDPTypes.pasThis unit contains types used for the Client, Server (plugins) and Workspace modules.
EDPClasses.pasThis unit contains base classes for Client, Server and Workspace Modules' interfaces.
EDPUtil.pasThis unit contains utility functions such as string processing utilities, measurement unit conversions (imperial and metric) and time/date conversions, customized dialogs, file ownership functions and special folders.
EDPDispWrappers.pas 
EDPDispConsts.pas 
EDPAbstractClasses.pasThis unit contains blue print classes to create plugin objects in Altium Designer.
EDPParam.pasThis unit contains all the functions for module's parametric command processing.
EDPOutput.pas 
EDPOutput_Netlist.pas 
EDPVFS.pas 
Direct.pasThis unit contains compiler directives which are needed for a Delphi based project.

PCB Editor API

The PCB Editor API covers interfaces that deal with PCB documents and their associated PCB design objects.

Unit NameDescription
EDPClasses_PCB.pasThis unit contains base classes for PCB objects interfaces.
EDPDispInterfaces_PCB.pasThis unit contains PCB interfaces as IDispatch interface types (based on Com / Win32 platform)
EDPInterfaces_PCB.pasThis unit contains PCB interfaces of PCB documents and design objects.
EDPRecordInterfaces_PCB.pas 
EDPTypes_PCB.pasThis unit contains data types used for PCB documents and design objects.
\Legacy\PCBClass.pasThis unit contains legacy PCB design classes.
\Legacy\PCBProcs.pasThis unit contains legacy routines used for various PCB objects
\Legacy\PCBTypes.pasThis unit contains legacy PCB data types.

Schematic API

 The Schematic Editor API covers interfaces that deals with Schematic documents and their associated Schematic design objects.

Unit NameDescription
EDPClasses_SCH.pasThis unit contains Schematic interfaces of Schematic documents and design objects.
EDPDispInterfaces_SCH.pasThis unit contains Schematic interfaces as IDispatch interface types (based on Com / Win32 platform)
EDPInterfaces_SCH.pasThis unit contains Schematic interfaces of Schematic documents and design objects.
EDPRecordInterfaces_SCH.pas 
EDPTypes_SCH.pasThis unit contains data types used for Schematic documents and design objects.
EDPUtil_SCH.pasThis unit contains various Schematic utility operations
\Legacy\SCHClass.pasThis unit contains legacy Schematic design classes.
\Legacy\SCHProcs.pasThis unit contains legacy routines used for various Schematic objects.
\Legacy\SCHTypes.pasThis unit contains legacy Schematic data types.

Other information