
# PCB

**Namespace:** `PCB`

PCB and PCB library documents, design objects, design rules, layer stacks, the PCB server and its services.

423 interfaces, 155 enumerations, 74 structures and classes, 2 delegates.

## Server and options

| Type | Description |
| --- | --- |
| [IPCB_AbstractOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md) | The base interface of the PCB options interfaces: it identifies the kind of options object and writes its settings to and reads them from a parameter string. |
| [IPCB_AdvancedPlacerOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AdvancedPlacerOptions.md) | The automatic component placement settings of a PCB document, returned by [`IPCB_Board.PlacerOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#placeroptions). |
| [IPCB_AsyncCompleteCallback](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AsyncCompleteCallback.md) |  |
| [IPCB_AsyncProgressCallback](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AsyncProgressCallback.md) |  |
| [IPCB_AsyncTask](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AsyncTask.md) |  |
| [IPCB_AutoTestSupport](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AutoTestSupport.md) |  |
| [IPCB_BoardRoutingOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardRoutingOptions.md) |  |
| [IPCB_DesignRuleCheckerOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DesignRuleCheckerOptions.md) | The [`IPCB_DesignRuleCheckerOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DesignRuleCheckerOptions.md) interface deals with the DRC options. |
| [IPCB_ECOOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ECOOptions.md) | The Engineering Change Order (ECO) settings of a PCB document, returned by [`IPCB_Board.ECOOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#ecooptions). |
| [IPCB_ExpressionManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ExpressionManager.md) |  |
| [IPCB_Factory](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Factory.md) |  |
| [IPCB_GerberOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GerberOptions.md) | The Gerber (photoplot) settings stored with a PCB document, returned by [`IPCB_Board.GerberOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#gerberoptions). |
| [IPCB_InteractiveRoutingOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_InteractiveRoutingOptions.md) | The [`IPCB_InteractiveRoutingOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_InteractiveRoutingOptions.md) interface represents the options for the interactive routing module in the PCB editor. |
| [IPCB_LettersCache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LettersCache.md) |  |
| [IPCB_ModelOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ModelOptions.md) |  |
| [IPCB_OptionsList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_OptionsList.md) |  |
| [IPCB_OutputOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_OutputOptions.md) | The output settings of a PCB document, such as drill drawing symbols, pad master layers and the plotted layers, returned by [`IPCB_Board.OutputOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#outputoptions). |
| [IPCB_ParametersFactory](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ParametersFactory.md) | Creates parameters, parameter lists and the parameters view of a primitive. |
| [IPCB_PrinterOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PrinterOptions.md) | The printer and plotter settings of a PCB document in the PCB Editor, returned by [`IPCB_Board.PrinterOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#printeroptions). |
| [IPCB_ServerInterface](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ServerInterface.md) | The PCB server, the entry point to PCB documents and PCB libraries and the factory of new PCB objects. |
| [IPCB_SpecctraRouterOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SpecctraRouterOptions.md) | The [`IPCB_SpecctraRouterOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SpecctraRouterOptions.md) interface represents the options for the Specctra Router application. |
| [IPCB_SpecialStringConverter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SpecialStringConverter.md) | The [`IPCB_SpecialStringConverter`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SpecialStringConverter.md) interface provides a way to fetch special strings in a PCB Project. |
| [IPCB_SystemOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SystemOptions.md) | The global settings of the PCB Editor, returned by [`IPCB_ServerInterface.SystemOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ServerInterface.md#systemoptions). |
| [IPCB_TTFontData](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_TTFontData.md) |  |
| [IPCB_TTFontsCache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_TTFontsCache.md) |  |
| [IPlotterPen](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPlotterPen.md) |  |
| [ISerialParameters](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ISerialParameters.md) |  |

## Boards, libraries and iteration

| Type | Description |
| --- | --- |
| [IPCB_3DKeyFrameIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_3DKeyFrameIterator.md) |  |
| [IPCB_3DMovieIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_3DMovieIterator.md) |  |
| [IPCB_AbstractIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractIterator.md) | The base interface of the PCB object iterators, with the filters that select the objects to fetch and the methods that step through them. |
| [IPCB_AccordinGraphicIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AccordinGraphicIterator.md) |  |
| [IPCB_Board](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md) | An open PCB document, through which you add and delete design objects, find out which layers are used and so on. |
| [IPCB_BoardEx](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardEx.md) |  |
| [IPCB_BoardEx2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardEx2.md) |  |
| [IPCB_BoardEx3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardEx3.md) |  |
| [IPCB_BoardIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardIterator.md) | An iterator that fetches the design objects of a PCB document. |
| [IPCB_BoardOutline](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardOutline.md) | The board outline of a PCB document, the closed polygon that defines the extents or boundary of the board. |
| [IPCB_BoardRegion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardRegion.md) |  |
| [IPCB_BoardRegionsManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardRegionsManager.md) |  |
| [IPCB_DesignVariant](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DesignVariant.md) |  |
| [IPCB_DesignVariants](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DesignVariants.md) |  |
| [IPCB_DrillTableGraphicIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DrillTableGraphicIterator.md) |  |
| [IPCB_DrillTableIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DrillTableIterator.md) |  |
| [IPCB_GroupComparisionResult](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GroupComparisionResult.md) |  |
| [IPCB_GroupIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GroupIterator.md) | An iterator that fetches the child objects of a group object, such as the pads and tracks of a component. |
| [IPCB_LayerIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerIterator.md) | An iterator over layers, which can be restricted to a subset of layers with its `AddFilter_` methods. |
| [IPCB_LayerListIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerListIterator.md) |  |
| [IPCB_LayerObjectIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObjectIterator.md) | An iterator over layers that also gives the layer object at each position. |
| [IPCB_LayerObjectIterator_LayerUsage](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObjectIterator_LayerUsage.md) |  |
| [IPCB_LibComponent](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LibComponent.md) | A footprint (library component) in a PCB library document. |
| [IPCB_Library](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Library.md) | A PCB library document. |
| [IPCB_LibraryIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LibraryIterator.md) | An iterator that fetches the footprints ([`IPCB_LibComponent`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LibComponent.md)) of a PCB library. |
| [IPCB_LibraryLoaderSaver](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LibraryLoaderSaver.md) |  |
| [IPCB_MeshFaceIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MeshFaceIterator.md) |  |
| [IPCB_MeshPartIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MeshPartIterator.md) |  |
| [IPCB_PadViaLibrary](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PadViaLibrary.md) |  |
| [IPCB_PadViaLibraryDocument](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PadViaLibraryDocument.md) |  |
| [IPCB_PadViaLibraryManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PadViaLibraryManager.md) |  |
| [IPCB_PlacementGridIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PlacementGridIterator.md) |  |
| [IPCB_PlacementIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PlacementIterator.md) |  |
| [IPCB_PrimitiveComparator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PrimitiveComparator.md) | Compares the objects of two boards, or of two groups such as two footprints, layer by layer. |
| [IPCB_PrimitiveCounter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PrimitiveCounter.md) | Counts the objects of a PCB document; [`IPCB_Board.GetPrimitiveCounter`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#getprimitivecounter) returns it. |
| [IPCB_PrimitiveList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PrimitiveList.md) |  |
| [IPCB_RealPlacementGuideIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RealPlacementGuideIterator.md) |  |
| [IPCB_Sheet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Sheet.md) | The sheet of a PCB document, the rectangular area behind the board in the PCB editor that can hold the board outline and fabrication and assembly details, retu… |
| [IPCB_SingleLayerMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SingleLayerMode.md) |  |
| [IPCB_SpatialIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SpatialIterator.md) | An iterator that fetches the design objects of a PCB document in a rectangular area. |
| [IPCB_SpatialIterator2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SpatialIterator2.md) |  |
| [IPCB_SplitBoardRegionLine](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SplitBoardRegionLine.md) |  |
| [IPCB_SplitBoardRegionWithArcs](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SplitBoardRegionWithArcs.md) |  |

## Design rules

| Type | Description |
| --- | --- |
| [IPCB_BoardOutlineClearanceConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardOutlineClearanceConstraint.md) |  |
| [IPCB_BrokenNetRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BrokenNetRule.md) | The [`IPCB_BrokenNetRule`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BrokenNetRule.md) rule deals with broken nets in relation to polygons. |
| [IPCB_CheckNetAntennaeRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CheckNetAntennaeRule.md) |  |
| [IPCB_ClearanceConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ClearanceConstraint.md) | A clearance rule (`TRuleKind.eRule_Clearance`) that defines the minimum clearance between any two objects on the copper layers. |
| [IPCB_ComponentClearanceConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ComponentClearanceConstraint.md) | A component clearance rule (`TRuleKind.eRule_ComponentClearance`) that defines the minimum distance between components, horizontally (`Gap`) and vertically (`V… |
| [IPCB_ComponentRotationsRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ComponentRotationsRule.md) | The [`IPCB_ComponentRotationsRule`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ComponentRotationsRule.md) specifies allowable component orientations. |
| [IPCB_ConfinementConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ConfinementConstraint.md) | A room on a PCB document, a design rule that defines a region in which the components in its scope must be placed, or from which they are kept out. |
| [IPCB_DaisyChainStubLengthConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DaisyChainStubLengthConstraint.md) | The daisy chain stub length rule specifies the maximum permissible stub length for a net with a daisy chain topology. |
| [IPCB_DifferentialPairsRoutingRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DifferentialPairsRoutingRule.md) | A differential signaling system is one where a signal is transmitted down a pair of tightly coupled carriers, one of these carrying the signal, the other carry… |
| [IPCB_DifferentialPairsRoutingRule2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DifferentialPairsRoutingRule2.md) |  |
| [IPCB_FanoutControlRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_FanoutControlRule.md) |  |
| [IPCB_HoleToHoleClearanceRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_HoleToHoleClearanceRule.md) |  |
| [IPCB_ImpedanceProfile](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ImpedanceProfile.md) |  |
| [IPCB_LayerPairsRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerPairsRule.md) | The [`IPCB_LayerPairsRule`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerPairsRule.md) interface deals with whether the layer pairs are going to be enforced or not on the current PCB document. |
| [IPCB_ManufactruingRuleList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufactruingRuleList.md) |  |
| [IPCB_MatchedNetLengthsConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MatchedNetLengthsConstraint.md) | The matched net lengths rule specifies the degree to which nets can have different lengths. |
| [IPCB_MaximumViaCountRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaximumViaCountRule.md) | The maximum via count rule specifies the maximum number of vias permitted on a PCB document. |
| [IPCB_MaxMinHeightConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxMinHeightConstraint.md) | The [`IPCB_MaxMinHeightConstraint`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxMinHeightConstraint.md) rule deals with heights of components, and you can set the maximum, minimum and preferred height values for targeted components… |
| [IPCB_MaxMinHoleSizeConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxMinHoleSizeConstraint.md) | A hole size rule (`TRuleKind.eRule_MaxMinHoleSize`) that defines the minimum and maximum hole size of pads and vias. |
| [IPCB_MaxMinLengthConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxMinLengthConstraint.md) | This [`IPCB_MaxMinLengthConstraint`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxMinLengthConstraint.md) rule defines the minimum and maximum lengths of a net. |
| [IPCB_MaxMinWidthConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxMinWidthConstraint.md) | A width rule (`TRuleKind.eRule_MaxMinWidth`) that defines the minimum, preferred (favored) and maximum width of tracks and arcs on signal layers. |
| [IPCB_MaxOvershootFall](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxOvershootFall.md) | The [`IPCB_MaxOvershootFall`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxOvershootFall.md) interface specifies the maximum allowable overshoot (ringing below the base value) on the falling edge of the signal. |
| [IPCB_MaxOvershootRise](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxOvershootRise.md) |  |
| [IPCB_MaxUndershootFall](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxUndershootFall.md) | The [`IPCB_MaxUndershootFall`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxUndershootFall.md) interface specifies the maximum allowable undershoot (ringing above the base value) on the falling edge of the signal. |
| [IPCB_MaxUndershootRise](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaxUndershootRise.md) |  |
| [IPCB_MinimumAnnularRing](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MinimumAnnularRing.md) | The minimum annular ring rule determines the minimum size of an annular ring. |
| [IPCB_MinimumSolderMaskSliverRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MinimumSolderMaskSliverRule.md) |  |
| [IPCB_ModifiedPolygonRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ModifiedPolygonRule.md) |  |
| [IPCB_NetsToIgnoreRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_NetsToIgnoreRule.md) | The Nets To Ignore rule determines which nets to ignore during Design Rule Check. |
| [IPCB_ParallelSegmentConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ParallelSegmentConstraint.md) | This rule specifies the distance two track segments can run in parallel, for a given separation. |
| [IPCB_PasteMaskExpansionRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PasteMaskExpansionRule.md) | A paste mask expansion rule (`TRuleKind.eRule_PasteMaskExpansion`) that defines how much the paste mask shape of each pad site is expanded or contracted radial… |
| [IPCB_PermittedLayersRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PermittedLayersRule.md) | The [`IPCB_PermittedLayersRule`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PermittedLayersRule.md) method returns or sets the permitted layers rule which specifies the layers components can be placed on during placement with the… |
| [IPCB_PolygonConnectStyleRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PolygonConnectStyleRule.md) | A polygon connect style rule (`TRuleKind.eRule_PolygonConnectStyle`) that defines how a polygon pour connects to the pads and vias it meets. |
| [IPCB_PowerPlaneClearanceRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PowerPlaneClearanceRule.md) | The power plane clearance rule determines the clearance of the power plane. |
| [IPCB_PowerPlaneConnectStyleRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PowerPlaneConnectStyleRule.md) | A power plane connect style rule (`TRuleKind.eRule_PowerPlaneConnectStyle`) that defines how pads and vias connect to power planes. |
| [IPCB_RoutingCornerStyleRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RoutingCornerStyleRule.md) | This routing corners rule specifies the corner style to be used during autorouting a PCB document. |
| [IPCB_RoutingLayersRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RoutingLayersRule.md) | This routing layers rule specifies the preferred routing direction for layer to be used during autorouting. |
| [IPCB_RoutingPriorityRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RoutingPriorityRule.md) | This routing priority rule method assigns a routing priority which is used to set the order of how the nets will be auto routed. |
| [IPCB_RoutingTopologyRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RoutingTopologyRule.md) | This routing topology rule method specifies the topology of the net. |
| [IPCB_RoutingViaStyleRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RoutingViaStyleRule.md) | A routing via style rule (`TRuleKind.eRule_RoutingViaStyle`) that specifies the vias to be used during routing. |
| [IPCB_Rule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Rule.md) | A design rule on a PCB document; the base interface of the PCB design rule and constraint interfaces. |
| [IPCB_RuleFlightTime_FallingEdge](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleFlightTime_FallingEdge.md) | The [`IPCB_RuleFlightTime_FallingEdge`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleFlightTime_FallingEdge.md) interface returns or sets values for the flight time of the falling edge of a signal. |
| [IPCB_RuleFlightTime_RisingEdge](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleFlightTime_RisingEdge.md) | The [`IPCB_RuleFlightTime_RisingEdge`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleFlightTime_RisingEdge.md) interface returns or sets values for the flight time of the rising edge of a signal. |
| [IPCB_RuleMaxMinImpedance](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleMaxMinImpedance.md) | The [`IPCB_RuleMaxMinImpedance`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleMaxMinImpedance.md) interface returns or sets values for a MaxMin Impedance rule object depending on the query mode (eGetState or eSetState). |
| [IPCB_RuleMaxSignalBaseValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleMaxSignalBaseValue.md) | The [`IPCB_RuleMaxSignalBaseValue`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleMaxSignalBaseValue.md) method specifies the maximum allowable base value. |
| [IPCB_RuleMaxSlopeFallingEdge](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleMaxSlopeFallingEdge.md) | The IPCB_RuleMaxSlope_FallingEdge interface specifies the maximum allowable slope on the falling edge of the signal. |
| [IPCB_RuleMaxSlopeRisingEdge](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleMaxSlopeRisingEdge.md) | The IPCB_RuleMaxSlope_RisingEdge interface specifies the maximum allowable slope on the rising edge of the signal. |
| [IPCB_RuleMinSignalTopValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleMinSignalTopValue.md) | The [`IPCB_RuleMinSignalTopValue`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleMinSignalTopValue.md) method specifies the minimum allowable signal top value. |
| [IPCB_RuleSupplyNets](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleSupplyNets.md) | This [`IPCB_RuleSupplyNets`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RuleSupplyNets.md) interface specifies the supply nets on the board. |
| [IPCB_ShortCircuitConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ShortCircuitConstraint.md) | A short-circuit rule (`TRuleKind.eRule_ShortCircuit`) that tests for short circuits between objects on the copper layers. |
| [IPCB_SilkToSilkClearanceRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SilkToSilkClearanceRule.md) |  |
| [IPCB_SilkToSolderMaskClearanceRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SilkToSolderMaskClearanceRule.md) |  |
| [IPCB_SMDNeckDownConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SMDNeckDownConstraint.md) |  |
| [IPCB_SMDPADEntryConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SMDPADEntryConstraint.md) |  |
| [IPCB_SMDToCornerConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SMDToCornerConstraint.md) |  |
| [IPCB_SMDToPlaneConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SMDToPlaneConstraint.md) |  |
| [IPCB_SolderMaskExpansionRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SolderMaskExpansionRule.md) | The solder mask expansion rule defines the shape that is created on the solder mask layer at each pad and via site. |
| [IPCB_TestPointStyleRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_TestPointStyleRule.md) | The auto-router includes a testpoint generator, which can identify existing pads and vias as testpoints, as well as adding testpoint pads to nets which can not… |
| [IPCB_TraceImpedance](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_TraceImpedance.md) |  |
| [IPCB_UnConnectedPinRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_UnConnectedPinRule.md) | This interface deals with unconnected pins on a PCB document. |
| [IPCB_ViasUnderSMDConstraint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ViasUnderSMDConstraint.md) | The Vias Under SMD constraint rule specifies if vias can be placed under SMD pads during autorouting. |
| [IPCB_Violation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Violation.md) | A design rule violation on a PCB document, the rule that is broken and the object, or pair of objects, that break it. |
| [TClearanceConstraintMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TClearanceConstraintMode.md) |  |
| [TPCB_ManufacturingRuleKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPCB_ManufacturingRuleKind.md) |  |
| [TRuleKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TRuleKind.md) |  |
| [TRuleLayerKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TRuleLayerKind.md) |  |
| [TRuleSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TRuleSet.md) |  |

## Layers and stackup

| Type | Description |
| --- | --- |
| [IDrillPairInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IDrillPairInfo.md) |  |
| [ILayerInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILayerInfo.md) |  |
| [ILayerMap](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILayerMap.md) |  |
| [ILayerMapping](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILayerMapping.md) |  |
| [ILayerStackDocument](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILayerStackDocument.md) |  |
| [ILayerStackFeatureInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILayerStackFeatureInfo.md) |  |
| [ILayerStackInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILayerStackInfo.md) |  |
| [ILayerStackManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILayerStackManager.md) |  |
| [ILayerStackProvider](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILayerStackProvider.md) |  |
| [ILayerStackServerDocumentHelper](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILayerStackServerDocumentHelper.md) |  |
| [ILsmSdkDrillSpan](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkDrillSpan.md) |  |
| [ILsmSdkDrillSpanCollection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkDrillSpanCollection.md) |  |
| [ILsmSdkImpedanceProfile](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkImpedanceProfile.md) |  |
| [ILsmSdkImpedanceProfileCollection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkImpedanceProfileCollection.md) |  |
| [ILsmSdkLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkLayer.md) |  |
| [ILsmSdkLayer2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkLayer2.md) |  |
| [ILsmSdkLayerCollection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkLayerCollection.md) |  |
| [ILsmSdkLayerStack](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkLayerStack.md) |  |
| [ILsmSdkLayerStackCollection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkLayerStackCollection.md) |  |
| [ILsmSdkLengthValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkLengthValue.md) |  |
| [ILsmSdkMassValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkMassValue.md) |  |
| [ILsmSdkNullableDouble](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkNullableDouble.md) |  |
| [ILsmSdkStackup](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkStackup.md) |  |
| [ILsmSdkStackup2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkStackup2.md) |  |
| [ILsmSdkTLElectricParams](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkTLElectricParams.md) |  |
| [ILsmSdkTLId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkTLId.md) |  |
| [ILsmSdkTransmissionLine](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkTransmissionLine.md) |  |
| [ILsmSdkTransmissionLineCollection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkTransmissionLineCollection.md) |  |
| [ILsmSdkViaSpan](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkViaSpan.md) |  |
| [ILsmSdkViaSpanCollection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILsmSdkViaSpanCollection.md) |  |
| [IMechanicalLayerPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IMechanicalLayerPair.md) |  |
| [IPCB_BackDrilling](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BackDrilling.md) |  |
| [IPCB_BoardLayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardLayerSet.md) |  |
| [IPCB_BoardLayerSetManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BoardLayerSetManager.md) |  |
| [IPCB_DielectricLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DielectricLayer.md) | A dielectric (insulating) layer of a board's layer stack, such as a core, a prepreg, a surface material or a film. |
| [IPCB_DielectricObject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DielectricObject.md) | The [`IPCB_DielectricObject`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DielectricObject.md) interface represents the dielectric properties for the specified PCB layer. |
| [IPCB_DrillLayerPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DrillLayerPair.md) | A drill layer pair of a PCB document, the two layers between which holes are drilled, together with the kind of drilling ([`TDrillLayerPairType`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDrillLayerPairType.md)). |
| [IPCB_ElectricalLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ElectricalLayer.md) | A copper layer of a board's layer stack, the common base of [`IPCB_SignalLayer`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SignalLayer.md) and [`IPCB_InternalPlane`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_InternalPlane.md). |
| [IPCB_ElectricalLayer2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ElectricalLayer2.md) |  |
| [IPCB_GeometryLayerData](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GeometryLayerData.md) |  |
| [IPCB_LayerObject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md) | A layer of a PCB document, with its layer ID, its name and whether primitives use it. |
| [IPCB_LayerObject_V7](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject_V7.md) | An electrical layer of a board in the version 7 layer model, deprecated, together with the dielectric below it. |
| [IPCB_LayerObject2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject2.md) |  |
| [IPCB_LayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerSet.md) | A set of PCB layers, for example to restrict an iterator to those layers with [`IPCB_AbstractIterator.AddFilter_IPCB_LayerSet`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractIterator.md#addfilter_ipcb_layerset). |
| [IPCB_LayerSetUtils](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerSetUtils.md) |  |
| [IPCB_LayerStack](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerStack.md) | A layer stack of a board, such as the one [`IPCB_Board.LayerStack`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#layerstack) returns or a substack of the board's [`IPCB_MasterLayerStack`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MasterLayerStack.md). |
| [IPCB_LayerStack_V7](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerStack_V7.md) | The layer stack of a board in the version 7 layer model, deprecated; [`IPCB_Board.LayerStack_V7`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#layerstack_v7) returns it. |
| [IPCB_LayerStackBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerStackBase.md) |  |
| [IPCB_LayerStackupDocumentPainterView](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerStackupDocumentPainterView.md) |  |
| [IPCB_LayerUtils](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerUtils.md) |  |
| [IPCB_ManufacturingInfo_ClearanceOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfo_ClearanceOnLayer.md) |  |
| [IPCB_ManufacturingInfo_LayerData](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfo_LayerData.md) |  |
| [IPCB_ManufacturingInfo_LayerStack](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfo_LayerStack.md) |  |
| [IPCB_MasterLayerStack](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MasterLayerStack.md) | The master layer stack of a board, which holds the board's layers and its substacks. |
| [IPCB_MasterLayerStack2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MasterLayerStack2.md) |  |
| [IPCB_MechanicalLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MechanicalLayer.md) | A mechanical layer of a PCB document, a general-purpose layer for the board layout, dimensions, fabrication details or any other mechanical details the design… |
| [IPCB_MechanicalLayerPairs](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MechanicalLayerPairs.md) | The mechanical layer pairs of a PCB document, each pair linking two mechanical layers as counterparts on the two sides of the board. |
| [IPCB_OverlayLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_OverlayLayer.md) |  |
| [IPCB_PasteMaskLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PasteMaskLayer.md) |  |
| [IPCB_PhysicalLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PhysicalLayer.md) |  |
| [IPCB_SignalLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SignalLayer.md) |  |
| [IPCB_SolderMaskLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SolderMaskLayer.md) |  |
| [IPCB_StackObject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_StackObject.md) |  |
| [IPCB_ViaStructure](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ViaStructure.md) |  |
| [IPCB_ViaStructureFeature](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ViaStructureFeature.md) |  |
| [IPCB_ViaStructureManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ViaStructureManager.md) |  |
| [IPCB_ViaStructureSupport](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ViaStructureSupport.md) |  |
| [IPCB_XLibManufacturingViolation_SingleLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingViolation_SingleLayer.md) |  |
| [IV7_Layer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IV7_Layer.md) |  |
| [IV7_PadCache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IV7_PadCache.md) |  |
| [LayerConstantToStringFunction](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/LayerConstantToStringFunction.md) |  |
| [LayerPartitionToStringFunction](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/LayerPartitionToStringFunction.md) |  |
| [MechanicalLayerPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/MechanicalLayerPair.md) |  |
| [SMechanicalLayerPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SMechanicalLayerPair.md) |  |
| [SV7_Layer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SV7_Layer.md) |  |
| [TDrillLayerPairType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDrillLayerPairType.md) |  |
| [TGeometryLayerType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TGeometryLayerType.md) |  |
| [TLayerClassID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLayerClassID.md) |  |
| [TLayerConstant](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLayerConstant.md) |  |
| [TLayerNameDisplayMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLayerNameDisplayMode.md) |  |
| [TLayerPartition](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLayerPartition.md) |  |
| [TLayerPartitionSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLayerPartitionSet.md) |  |
| [TLayerStackDocumentFormat](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLayerStackDocumentFormat.md) |  |
| [TLayerStackStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLayerStackStyle.md) |  |
| [TLayerStackType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLayerStackType.md) |  |
| [TManufacturingLayerKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TManufacturingLayerKind.md) |  |
| [TMechanicalLayerKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TMechanicalLayerKind.md) |  |
| [TMechanicalLayerPairKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TMechanicalLayerPairKind.md) |  |
| [TV6_Layer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TV6_Layer.md) |  |
| [TV6_LayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TV6_LayerSet.md) |  |
| [TV6_PlotLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TV6_PlotLayer.md) |  |
| [V7_Layer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_Layer.md) |  |
| [V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md) |  |

## Geometry, shapes and 3D

| Type | Description |
| --- | --- |
| [I_D3DVECTOR](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/I_D3DVECTOR.md) |  |
| [ICardinalList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ICardinalList.md) |  |
| [ICoordPoint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ICoordPoint.md) |  |
| [ICoordPoint3D](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ICoordPoint3D.md) |  |
| [ICoordRect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ICoordRect.md) |  |
| [ID3DXQuaternion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ID3DXQuaternion.md) |  |
| [IDimensionReference](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IDimensionReference.md) |  |
| [IDoubleList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IDoubleList.md) |  |
| [IGeomCircle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IGeomCircle.md) |  |
| [IGeomCone](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IGeomCone.md) |  |
| [IGeomCylinder](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IGeomCylinder.md) |  |
| [IGeomLine](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IGeomLine.md) |  |
| [IGeomPlane](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IGeomPlane.md) |  |
| [IGeomPoint3D](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IGeomPoint3D.md) |  |
| [IGeomSphere](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IGeomSphere.md) |  |
| [IMeshTriangle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IMeshTriangle.md) |  |
| [IMeshVertex](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IMeshVertex.md) |  |
| [IOCCDocument](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IOCCDocument.md) |  |
| [IOccWrapper](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IOccWrapper.md) |  |
| [IPCB_3DBaseShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_3DBaseShape.md) |  |
| [IPCB_3DKeyFrame](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_3DKeyFrame.md) |  |
| [IPCB_3DMovie](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_3DMovie.md) |  |
| [IPCB_3DMovieManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_3DMovieManager.md) |  |
| [IPCB_3DShapeCollection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_3DShapeCollection.md) |  |
| [IPCB_3DSimpleMesh](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_3DSimpleMesh.md) |  |
| [IPCB_AcuteAngle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AcuteAngle.md) | The IPCB_AcuteAngleRule interface specifies the minimum angle permitted at a track corner. |
| [IPCB_AreaCalculation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AreaCalculation.md) |  |
| [IPCB_AreaCalculationBoard](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AreaCalculationBoard.md) |  |
| [IPCB_Axis](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Axis.md) |  |
| [IPCB_BendingLine](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BendingLine.md) |  |
| [IPCB_ComponentBody](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ComponentBody.md) | A body that encapsulates a component in 3 dimensions on a PCB document; it is handled like other primitives and is contained in the component, whether in a lib… |
| [IPCB_ConnectivityGraph](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ConnectivityGraph.md) |  |
| [IPCB_Contour](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Contour.md) | An outline made of an ordered list of vertices, such as the outline or a hole of a region, or one contour of a geometric polygon. |
| [IPCB_ContourMaker](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ContourMaker.md) | Builds the shapes of PCB design objects as geometric polygons, and adds the vertices of rectangles, slots and arcs to contours. |
| [IPCB_ContourMaker2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ContourMaker2.md) |  |
| [IPCB_ContourUtilities](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ContourUtilities.md) | Geometry operations on contours and geometric polygons: union, intersection, difference and exclusive or, area, winding direction, point and overlap tests, spl… |
| [IPCB_CustomPadShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CustomPadShape.md) |  |
| [IPCB_CustomShapeDonutParameters](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CustomShapeDonutParameters.md) |  |
| [IPCB_CustomShapeInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CustomShapeInfo.md) |  |
| [IPCB_CustomShapeRectParameters](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CustomShapeRectParameters.md) |  |
| [IPCB_GeometricPolygon](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GeometricPolygon.md) | A shape made of an ordered list of contours, each of which is either a solid outline or a hole. |
| [IPCB_GeometryItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GeometryItem.md) |  |
| [IPCB_GeometryItems](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GeometryItems.md) |  |
| [IPCB_GeometryMaker](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GeometryMaker.md) |  |
| [IPCB_MeshColorList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MeshColorList.md) |  |
| [IPCB_MeshItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MeshItem.md) |  |
| [IPCB_MeshItemList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MeshItemList.md) |  |
| [IPCB_MeshObject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MeshObject.md) |  |
| [IPCB_MeshPart](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MeshPart.md) |  |
| [IPCB_MeshTriangleList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MeshTriangleList.md) |  |
| [IPCB_MeshVertexList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MeshVertexList.md) |  |
| [IPCB_Model](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Model.md) | The 3D model of a component body ([`IPCB_ComponentBody`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ComponentBody.md)), one of an extruded shape, a cylinder, a sphere or a generic model. |
| [IPCB_ModelProperties_Base](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ModelProperties_Base.md) |  |
| [IPCB_ModelProperties_Cylinder](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ModelProperties_Cylinder.md) |  |
| [IPCB_ModelProperties_Extruded](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ModelProperties_Extruded.md) |  |
| [IPCB_ModelProperties_Generic](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ModelProperties_Generic.md) |  |
| [IPCB_ModelProperties_Sphere](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ModelProperties_Sphere.md) |  |
| [IPCB_PolyRegShapesClipResult](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PolyRegShapesClipResult.md) |  |
| [IPCB_RegionShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RegionShape.md) | The outline of a shaped object as an editable list of segments. |
| [IPCB_RegionShape_Utils](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RegionShape_Utils.md) |  |
| [IPCB_RegionShape2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RegionShape2.md) |  |
| [IPCB_ShapeEdge](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ShapeEdge.md) |  |
| [IPCB_ShapeEdge_BSpline](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ShapeEdge_BSpline.md) |  |
| [IPCB_ShapeEdge_Circle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ShapeEdge_Circle.md) |  |
| [IPCB_ShapeEdge_Ellipse](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ShapeEdge_Ellipse.md) |  |
| [IPCB_ShapeEdge_Line](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ShapeEdge_Line.md) |  |
| [IPCB_ShapeEdge_Parabola](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ShapeEdge_Parabola.md) |  |
| [IPCB_Shapes](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Shapes.md) |  |
| [IPCB_ShapeValidationResult](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ShapeValidationResult.md) |  |
| [IPCB_SharedUnion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SharedUnion.md) |  |
| [IPCB_StrokeArray](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_StrokeArray.md) | The line strokes of a text converted with [`IPCB_Text.ConvertToStrokeArray`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Text.md#converttostrokearray). |
| [IPCB3D_Edge](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_Edge.md) |  |
| [IPCB3D_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_Face.md) |  |
| [IPCB3D_GeomTool](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_GeomTool.md) |  |
| [IPCB3D_Shape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_Shape.md) |  |
| [IPCB3D_ShapeExplorer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_ShapeExplorer.md) |  |
| [IPCB3D_ShapeTool](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_ShapeTool.md) |  |
| [IPCB3D_StringList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_StringList.md) |  |
| [IPCB3D_Transformation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_Transformation.md) |  |
| [IPCB3D_Vertex](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB3D_Vertex.md) |  |
| [IPointList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPointList.md) |  |
| [IPolySegment](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPolySegment.md) |  |
| [ISpline](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ISpline.md) |  |
| [ISplinePoint2D](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ISplinePoint2D.md) |  |
| [IStrokeRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IStrokeRecord.md) |  |

## Manufacturing and outputs

| Type | Description |
| --- | --- |
| [ICounterHoleDiameterOnDepth](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ICounterHoleDiameterOnDepth.md) |  |
| [IPadViaThermalReliefData](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPadViaThermalReliefData.md) |  |
| [IPCB_Board3DModelExporter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board3DModelExporter.md) |  |
| [IPCB_CounterHoleDiameterOnDepthList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CounterHoleDiameterOnDepthList.md) |  |
| [IPCB_CounterHoleFactory](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CounterHoleFactory.md) |  |
| [IPCB_CounterHoleParams](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CounterHoleParams.md) |  |
| [IPCB_CounterHoleParamsList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CounterHoleParamsList.md) |  |
| [IPCB_CounterHoleParamsPreset](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CounterHoleParamsPreset.md) |  |
| [IPCB_CounterHoleParamsPresetList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CounterHoleParamsPresetList.md) |  |
| [IPCB_DrillTable](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DrillTable.md) |  |
| [IPCB_ManufacturingDRCProvider](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingDRCProvider.md) |  |
| [IPCB_ManufacturingInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfo.md) |  |
| [IPCB_ManufacturingInfo_Assembly](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfo_Assembly.md) |  |
| [IPCB_ManufacturingInfo_Board](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfo_Board.md) |  |
| [IPCB_ManufacturingInfo_Clearance](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfo_Clearance.md) |  |
| [IPCB_ManufacturingInfo_Holes](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfo_Holes.md) |  |
| [IPCB_ManufacturingInfo_Silk](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfo_Silk.md) |  |
| [IPCB_ManufacturingInfoProvider](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingInfoProvider.md) |  |
| [IPCB_ManufacturingViolation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingViolation.md) |  |
| [IPCB_ManufacturingViolationReport](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ManufacturingViolationReport.md) |  |
| [IPCB_PadTemplate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PadTemplate.md) | A pad template, a reusable set of pad properties (layer, hole, offset, solder and paste mask settings and per-layer copper shapes) that pads can be linked to. |
| [IPCB_PadTemplateStackData](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PadTemplateStackData.md) |  |
| [IPCB_PadViaTemplate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PadViaTemplate.md) | The common base of pad templates ([`IPCB_PadTemplate`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PadTemplate.md)) and via templates ([`IPCB_ViaTemplate`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ViaTemplate.md)), with the identity, name and description they share. |
| [IPCB_PadViaTemplateLink](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PadViaTemplateLink.md) | A link to a pad and via template, which holds the identifiers of the template's library, of the template and of its revision. |
| [IPCB_PrintedElectronics](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PrintedElectronics.md) |  |
| [IPCB_SpecctraDSNFile](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SpecctraDSNFile.md) |  |
| [IPCB_TestPointUsage](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_TestPointUsage.md) | Altium Designer's autorouter includes a testpoint generator, which can identify existing pads and vias as testpoints, as well as adding testpoint pads to nets… |
| [IPCB_ViaManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ViaManager.md) |  |
| [IPCB_ViaTemplate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ViaTemplate.md) | A via template, a reusable set of via properties (hole size, solder mask settings, per-layer diameters and thermal reliefs, and the via structure) that vias ca… |
| [IPCB_ViaTemplateStackData](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ViaTemplateStackData.md) |  |
| [IPCB_XLibManufacturingDRCProvider](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingDRCProvider.md) |  |
| [IPCB_XLibManufacturingViolation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingViolation.md) |  |
| [IPCB_XLibManufacturingViolation_CoordValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingViolation_CoordValue.md) |  |
| [IPCB_XLibManufacturingViolation_SinglePrimitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingViolation_SinglePrimitive.md) |  |
| [IPCB_XLibManufacturingViolation_StringValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingViolation_StringValue.md) |  |
| [IPCB_XLibManufacturingViolation_TwoPoints](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingViolation_TwoPoints.md) |  |
| [IPCB_XLibManufacturingViolationReport](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_XLibManufacturingViolationReport.md) |  |
| [IPrintedElectronics](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPrintedElectronics.md) |  |
| [IVcsBoardRevisionInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IVcsBoardRevisionInfo.md) |  |
| [TManufacturingViaOption](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TManufacturingViaOption.md) |  |
| [TManufacturingViaOptionSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TManufacturingViaOptionSet.md) |  |

## Import

| Type | Description |
| --- | --- |
| [IHandler_Status](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IHandler_Status.md) |  |
| [IImporterController](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IImporterController.md) |  |
| [IImporterController_ConstUniqIdSupport](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IImporterController_ConstUniqIdSupport.md) |  |
| [IImporterController_OrcadCIS](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IImporterController_OrcadCIS.md) |  |
| [IImporterFile](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IImporterFile.md) |  |
| [IImporterManager_ServerInterface](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IImporterManager_ServerInterface.md) |  |
| [IImporterObject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IImporterObject.md) |  |
| [ILogReport](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILogReport.md) |  |
| [ILogReportOption](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILogReportOption.md) |  |
| [ILogSection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/ILogSection.md) |  |
| [IWizardPageObserver](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IWizardPageObserver.md) |  |

## Views, grids and painting

| Type | Description |
| --- | --- |
| [IPCB_CartesianGrid](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CartesianGrid.md) |  |
| [IPCB_ColorID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ColorID.md) |  |
| [IPCB_ComponentPainterView](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ComponentPainterView.md) | A preview panel that displays a single PCB component (footprint) in 2D or 3D. |
| [IPCB_DocumentPainterListener](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DocumentPainterListener.md) |  |
| [IPCB_DocumentPainterView](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DocumentPainterView.md) |  |
| [IPCB_GraphicalView](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GraphicalView.md) | The graphical view of a PCB document: its 2D or 3D camera, its size, the conversion between screen and board coordinates, and rendering of the view into a devi… |
| [IPCB_GridManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GridManager.md) |  |
| [IPCB_GridManagerPcbLib](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_GridManagerPcbLib.md) |  |
| [IPCB_LiveHandleContainer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LiveHandleContainer.md) |  |
| [IPCB_PlacementGrid](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PlacementGrid.md) |  |
| [IPCB_PlacementGuide](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PlacementGuide.md) |  |
| [IPCB_PlacementGuideLine](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PlacementGuideLine.md) |  |
| [IPCB_PlacementGuideSnapPoint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PlacementGuideSnapPoint.md) |  |
| [IPCB_PolarGrid](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PolarGrid.md) |  |
| [IPCB_RealPlacementGuide](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RealPlacementGuide.md) |  |
| [IPCB_Viewport](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Viewport.md) |  |
| [TPCB_DocumentPainterMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPCB_DocumentPainterMode.md) |  |

## Design objects

| Type | Description |
| --- | --- |
| [IPCB_Accordion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Accordion.md) |  |
| [IPCB_AngularDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AngularDimension.md) | An angular dimension on a PCB document, which measures the angle between two lines. |
| [IPCB_Arc](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Arc.md) | A circular arc on a PCB document, a track segment of width `LineWidth` around the center (`CenterX`, `CenterY`) with `Radius`, from `StartAngle` to `EndAngle`. |
| [IPCB_BaselineDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_BaselineDimension.md) | A baseline dimension on a PCB document, which measures the linear distances of a collection of references from a single base reference. |
| [IPCB_CenterDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CenterDimension.md) | A center dimension on a PCB document, which marks the center of an arc or circle with a cross. |
| [IPCB_Component](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Component.md) | A component on a PCB document, a footprint from a PCB library (or an integrated library) placed with a designator and an optional comment. |
| [IPCB_Connection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Connection.md) | A connection line between two points on a PCB document, either a ratsnest connection or a broken net marker. |
| [IPCB_Coordinate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Coordinate.md) | A coordinate marker on a PCB document: a cross of two tracks at a point and a text that shows the X and Y coordinates of that point. |
| [IPCB_CopperBody](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CopperBody.md) |  |
| [IPCB_CopperBodyList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CopperBodyList.md) |  |
| [IPCB_CopperBodyShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CopperBodyShape.md) |  |
| [IPCB_CopperPolygon](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_CopperPolygon.md) |  |
| [IPCB_DatumDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DatumDimension.md) | A datum dimension on a PCB document, which measures the linear distances of a collection of references from a single base reference along a common datum line. |
| [IPCB_DifferentialPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_DifferentialPair.md) | A differential pair on a PCB document, a named pair of nets, a positive and a negative net, that carry a signal and its equal but opposite image. |
| [IPCB_Dimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Dimension.md) | The base interface of the dimension objects of a PCB document, which show dimensional details of the board in imperial or metric units and can be placed on any… |
| [IPCB_Embedded](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Embedded.md) | An embedded object in a PCB document, an object that is not visible and stores information in the document. |
| [IPCB_EmbeddedBoard](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_EmbeddedBoard.md) | An embedded board array, a rectangular object on a board that places copies of another PCB document (the child board) in a matrix of rows and columns. |
| [IPCB_Fill](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Fill.md) | A fill on a PCB document, a rectangular object defined by two corners and a rotation. |
| [IPCB_FromTo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_FromTo.md) | A from-to on a PCB document, a user-defined connection from one pad of a net to another pad of the same net. |
| [IPCB_FullComponent](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_FullComponent.md) |  |
| [IPCB_FullComponentList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_FullComponentList.md) |  |
| [IPCB_FullComponents](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_FullComponents.md) |  |
| [IPCB_Group](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Group.md) | The base interface of PCB objects that contain other primitives: [`IPCB_Component`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Component.md), [`IPCB_LibComponent`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LibComponent.md), [`IPCB_Net`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Net.md), [`IPCB_Polygon`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Polygon.md), [`IPCB_SplitPlane`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SplitPlane.md), [`IPCB_Coordinate`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Coordinate.md), I… |
| [IPCB_InternalPlane](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_InternalPlane.md) | An internal plane of a board's layer stack, a copper layer that is connected to a net. |
| [IPCB_InternalPlane_V7](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_InternalPlane_V7.md) |  |
| [IPCB_KeepoutRestrictions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_KeepoutRestrictions.md) |  |
| [IPCB_LeaderDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LeaderDimension.md) | A leader dimension on a PCB document, which labels an object, point or area with a text connected to it by a leader line ending in an arrow or a dot. |
| [IPCB_LinearDiameterDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LinearDiameterDimension.md) | The [`IPCB_LinearDimension`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LinearDimension.md) interface references the dimensioning information on the current layer with respect to a linear distance. |
| [IPCB_LinearDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LinearDimension.md) | A linear dimension on a PCB document, which measures the distance between two reference points in the direction of its angle and shows it with a dimension line… |
| [IPCB_MaskHelper](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MaskHelper.md) |  |
| [IPCB_MultilineText](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_MultilineText.md) |  |
| [IPCB_Net](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Net.md) | A net on a PCB document, the group of pads, vias, tracks, arcs and connection lines that are electrically connected in the design. |
| [IPCB_Net2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Net2.md) |  |
| [IPCB_ObjectClass](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ObjectClass.md) | A class on a PCB document, a named group of objects of one kind, such as nets or components, identified by its unique class name. |
| [IPCB_ObjectClass1](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ObjectClass1.md) |  |
| [IPCB_ObjectClass2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ObjectClass2.md) | A class on a PCB document, with members in addition to [`IPCB_ObjectClass`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ObjectClass.md) for the display name, the number of members, the membership of a design object and th… |
| [IPCB_ObjectClassBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ObjectClassBase.md) | An object class on a PCB document, a named group of objects of one kind, given by `MemberKind`. |
| [IPCB_OriginalDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_OriginalDimension.md) | An original dimension on a PCB document, the linear dimension style of early versions, which measures the distance between two points. |
| [IPCB_Pad](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md) | A pad, the connection point of a component pin and of signal tracks, either on a single layer or multi-layer. |
| [IPCB_Pad2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad2.md) | Extends [`IPCB_Pad`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md) with the corner radius of rounded rectangular pads on each layer. |
| [IPCB_Pad3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad3.md) |  |
| [IPCB_Pad4](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad4.md) | Extends [`IPCB_Pad3`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad3.md) with the hole size on each layer, the pad's top and bottom layers, separate top and bottom paste mask settings, and queries and operations… |
| [IPCB_Parameter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Parameter.md) | A parameter, a name with a string value, held separately from any primitive. |
| [IPCB_ParameterAttributes](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ParameterAttributes.md) |  |
| [IPCB_ParameterList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ParameterList.md) |  |
| [IPCB_PinPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PinPair.md) | A pin pair (xSignal) on a PCB document, together with the signal path that connects its pins. |
| [IPCB_PinPairsManager](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PinPairsManager.md) | The manager of the pin pairs (xSignals) of a PCB document. |
| [IPCB_PinPairTiePoint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PinPairTiePoint.md) |  |
| [IPCB_Polygon](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Polygon.md) | A polygon pour on a PCB document, an irregular area of copper that connects to a net and is poured around existing objects. |
| [IPCB_PolygonThermalRelief](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PolygonThermalRelief.md) |  |
| [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | The base interface of the PCB design objects; tracks, arcs, pads, vias, fills, text, components, polygons, dimensions and the other PCB object interfaces inher… |
| [IPCB_Primitive2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive2.md) | Additional members of PCB objects for solder mask and paste mask expansion, routing widths from the design rules, and shared unions. |
| [IPCB_PrimitiveGroups](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PrimitiveGroups.md) |  |
| [IPCB_PrimitiveParameters](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PrimitiveParameters.md) | The parameters of a PCB primitive, such as a component, kept per project variant and per parameter set. |
| [IPCB_PrimPrim](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PrimPrim.md) |  |
| [IPCB_RadialDiameterDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RadialDiameterDimension.md) | The [`IPCB_RadialDiameterDimension`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RadialDiameterDimension.md) interface references the dimensioning of an arc or circle with respect to the diameter, rather than the radius. |
| [IPCB_RadialDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RadialDimension.md) | A radial dimension on a PCB document, which measures the radius of an arc or a circle. |
| [IPCB_RectangularPrimitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_RectangularPrimitive.md) | The base interface of PCB primitives whose shape is a rectangle with a rotation, such as [`IPCB_Fill`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Fill.md), [`IPCB_Text`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Text.md) and [`IPCB_EmbeddedBoard`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_EmbeddedBoard.md). |
| [IPCB_Region](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Region.md) | A solid polygonal region on a PCB document, such as a copper region, a cutout, a named region, a board cutout or a cavity. |
| [IPCB_Region2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Region2.md) |  |
| [IPCB_SignalStimulus](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SignalStimulus.md) | The [`IPCB_SignalStimulus`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SignalStimulus.md) rule concerns with the definition of a signal for stimulus, such as the stimulus type, signal level, start, stop times and the period o… |
| [IPCB_SplitPlane](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SplitPlane.md) | A split plane on an internal plane layer, an area of the plane bounded by an outline and poured as regions. |
| [IPCB_SplitPlaneRegion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_SplitPlaneRegion.md) | A region with a link to the split plane it belongs to. |
| [IPCB_Text](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Text.md) | A text string on a PCB document, either a free text string or the designator or comment of a component. |
| [IPCB_Text3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Text3.md) | An extension of [`IPCB_Text`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Text.md) that positions a text by its snap point and copies text properties. |
| [IPCB_Track](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Track.md) | A straight track segment on a PCB document, from (`X1`, `Y1`) to (`X2`, `Y2`), with a stroke `Width`. |
| [IPCB_Via](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Via.md) | A via on a PCB document, a drilled and usually plated hole that carries a signal from one layer to another. |
| [IPCB_WideStrings](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_WideStrings.md) |  |
| [IPCB_Wirebond](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Wirebond.md) |  |

## Enumerations

| Type | Description |
| --- | --- |
| [T3DModelType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/T3DModelType.md) |  |
| [T3DPrimitiveKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/T3DPrimitiveKind.md) |  |
| [TAccordionStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TAccordionStyle.md) |  |
| [TAdvPCBFileFormatVersion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TAdvPCBFileFormatVersion.md) |  |
| [TAssemblyPackageKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TAssemblyPackageKind.md) |  |
| [TAssemblyPitchKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TAssemblyPitchKind.md) |  |
| [TAutoPanMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TAutoPanMode.md) |  |
| [TAutoPanUnit](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TAutoPanUnit.md) |  |
| [TBarcodeKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBarcodeKind.md) |  |
| [TBarcodeRenderMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBarcodeRenderMode.md) |  |
| [TBaud](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBaud.md) |  |
| [TBGAFanoutDirection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBGAFanoutDirection.md) |  |
| [TBGAFanoutViaMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBGAFanoutViaMode.md) |  |
| [TBoard3DModelExportComponentOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBoard3DModelExportComponentOptions.md) |  |
| [TBoard3DModelExportComponentSuffix](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBoard3DModelExportComponentSuffix.md) |  |
| [TBoard3DModelExportCopperOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBoard3DModelExportCopperOptions.md) |  |
| [TBoard3DModelExportFormat](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBoard3DModelExportFormat.md) |  |
| [TBoard3DModelExportHolesOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBoard3DModelExportHolesOptions.md) |  |
| [TBoard3DModelExportModelsOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBoard3DModelExportModelsOptions.md) |  |
| [TBoardSide](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TBoardSide.md) |  |
| [TCacheState](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCacheState.md) |  |
| [TCCTCost](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCCTCost.md) |  |
| [TCCTSort](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCCTSort.md) |  |
| [TCCTSortDir](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCCTSortDir.md) |  |
| [TClassMemberKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TClassMemberKind.md) |  |
| [TComponentCollisionCheckMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TComponentCollisionCheckMode.md) |  |
| [TComponentMoveKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TComponentMoveKind.md) |  |
| [TComponentPlacementType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TComponentPlacementType.md) |  |
| [TConfinementStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TConfinementStyle.md) |  |
| [TConnectionMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TConnectionMode.md) |  |
| [TCopperOrientation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCopperOrientation.md) |  |
| [TCopperSide](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCopperSide.md) |  |
| [TCopyMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCopyMode.md) |  |
| [TCornerStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCornerStyle.md) |  |
| [TCounterHoleDirection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCounterHoleDirection.md) |  |
| [TCounterHoleMaterial](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCounterHoleMaterial.md) |  |
| [TCounterHoleType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TCounterHoleType.md) |  |
| [TDataBits](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDataBits.md) |  |
| [TDegreeOfFreedom](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDegreeOfFreedom.md) |  |
| [TDesignatorDisplayMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDesignatorDisplayMode.md) |  |
| [TDielectricType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDielectricType.md) |  |
| [TDimensionArrowPosition](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDimensionArrowPosition.md) |  |
| [TDimensionKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDimensionKind.md) |  |
| [TDimensionTextPosition](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDimensionTextPosition.md) |  |
| [TDimensionUnit](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDimensionUnit.md) |  |
| [TDrawGridMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDrawGridMode.md) |  |
| [TDrawMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDrawMode.md) |  |
| [TDRCReportFileFormat](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDRCReportFileFormat.md) |  |
| [TDrillSymbol](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDrillSymbol.md) |  |
| [TDuplicates](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TDuplicates.md) |  |
| [TEditingAction](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TEditingAction.md) |  |
| [TEmbeddedBoardOriginMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TEmbeddedBoardOriginMode.md) |  |
| [TExtendedDrillType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TExtendedDrillType.md) |  |
| [TExtendedHoleType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TExtendedHoleType.md) |  |
| [TFanoutDirection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TFanoutDirection.md) |  |
| [TFanoutStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TFanoutStyle.md) |  |
| [TFPGADisplayMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TFPGADisplayMode.md) |  |
| [TFromToDisplayMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TFromToDisplayMode.md) |  |
| [TGraphicsCursor](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TGraphicsCursor.md) |  |
| [THandshaking](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/THandshaking.md) |  |
| [TInteractiveRouteMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TInteractiveRouteMode.md) |  |
| [TIterationMethod](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TIterationMethod.md) |  |
| [TKeepoutObj](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TKeepoutObj.md) |  |
| [TLengthenerStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLengthenerStyle.md) |  |
| [TLiveHighlightMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLiveHighlightMode.md) |  |
| [TLogTextType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLogTextType.md) |  |
| [TLsmSdkComponentPlacement](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkComponentPlacement.md) |  |
| [TLsmSdkCopperOrientation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkCopperOrientation.md) |  |
| [TLsmSdkDrillSpanType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkDrillSpanType.md) |  |
| [TLsmSdkImpedanceProfileType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkImpedanceProfileType.md) |  |
| [TLsmSdkLengthUnit](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkLengthUnit.md) |  |
| [TLsmSdkMassUnit](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkMassUnit.md) |  |
| [TLsmSdkRoughnessModelType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkRoughnessModelType.md) |  |
| [TLsmSdkStackupType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkStackupType.md) |  |
| [TLsmSdkTLCalcMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkTLCalcMode.md) |  |
| [TLsmSdkViaSpanType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TLsmSdkViaSpanType.md) |  |
| [TMaskExpansionMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TMaskExpansionMode.md) |  |
| [TMirrorOperation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TMirrorOperation.md) |  |
| [TModelSource](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TModelSource.md) |  |
| [TNetScope](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TNetScope.md) |  |
| [TNetTopology](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TNetTopology.md) |  |
| [TObjectClearanceId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TObjectClearanceId.md) |  |
| [TObjectCreationMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TObjectCreationMode.md) |  |
| [TObjectId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TObjectId.md) | Note, the eTraceObject and eSpareViaObject values are for internal use only and are not used directly with PCB documents (these values are used for Signal Inte… |
| [TOptionsObjectId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TOptionsObjectId.md) |  |
| [TOutputDriverType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TOutputDriverType.md) |  |
| [TOutputPort](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TOutputPort.md) |  |
| [TPackageCompareOption](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPackageCompareOption.md) |  |
| [TPadMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPadMode.md) |  |
| [TPadViaThermalReliefDataType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPadViaThermalReliefDataType.md) |  |
| [TParameterAppurtenance](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TParameterAppurtenance.md) |  |
| [TParity](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TParity.md) |  |
| [TPCB_3DKeyFrameInterpolationMethod](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPCB_3DKeyFrameInterpolationMethod.md) |  |
| [TPCB_ShapeEdgeType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPCB_ShapeEdgeType.md) |  |
| [TPcbDragMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPcbDragMode.md) |  |
| [TPCBMeshViewMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPCBMeshViewMode.md) |  |
| [TPCBViewMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPCBViewMode.md) |  |
| [TPlaceTrackMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPlaceTrackMode.md) |  |
| [TPlaneConnectionStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPlaneConnectionStyle.md) |  |
| [TPlaneConnectStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPlaneConnectStyle.md) |  |
| [TPlaneDrawMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPlaneDrawMode.md) |  |
| [TPlotterLanguage](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPlotterLanguage.md) |  |
| [TPolygonNameTemplates](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPolygonNameTemplates.md) |  |
| [TPolygonPourOver](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPolygonPourOver.md) |  |
| [TPolygonReliefAngle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPolygonReliefAngle.md) |  |
| [TPolygonRepourMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPolygonRepourMode.md) |  |
| [TPolygonType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPolygonType.md) |  |
| [TPolyHatchStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPolyHatchStyle.md) |  |
| [TPolySegmentType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPolySegmentType.md) |  |
| [TPrinterBatch](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPrinterBatch.md) |  |
| [TPrinterComposite](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPrinterComposite.md) |  |
| [TRectCorner](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TRectCorner.md) |  |
| [TRegionKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TRegionKind.md) |  |
| [TRouteVia](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TRouteVia.md) |  |
| [TSameNamePadstackReplacementMode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TSameNamePadstackReplacementMode.md) |  |
| [TScopeKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TScopeKind.md) |  |
| [TSetOperation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TSetOperation.md) |  |
| [TShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TShape.md) |  |
| [TShapeSubKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TShapeSubKind.md) |  |
| [TSignalLevel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TSignalLevel.md) |  |
| [TStimulusType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TStimulusType.md) |  |
| [TStopBits](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TStopBits.md) |  |
| [TTestpointAllowedSide](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TTestpointAllowedSide.md) |  |
| [TTestpointValid](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TTestpointValid.md) |  |
| [TTextAutoposition](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TTextAutoposition.md) |  |
| [TTextBorderSpaceType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TTextBorderSpaceType.md) |  |
| [TTextKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TTextKind.md) |  |
| [TThermalReliefDefinedType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TThermalReliefDefinedType.md) |  |
| [TUnit](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TUnit.md) |  |
| [TUnitStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TUnitStyle.md) |  |
| [TViaStructureFeatureSide](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TViaStructureFeatureSide.md) |  |
| [TViaStructureFeatureType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TViaStructureFeatureType.md) |  |
| [TViaStructureType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TViaStructureType.md) |  |
| [TViaType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TViaType.md) |  |
| [TViewableObjectID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TViewableObjectID.md) | This [`TViewableObjectID`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TViewableObjectID.md) type is mainly used by the Inspector and List views in Altium Designer and is an extension of TObjectID type. |

## Structures and classes

| Type | Description |
| --- | --- |
| [_D3DVECTOR](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/D3DVECTOR-class.md) |  |
| [CoordPoint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/CoordPoint.md) |  |
| [CoordPoint3D](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/CoordPoint3D.md) |  |
| [CoordRect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/CoordRect.md) |  |
| [CounterHoleDiameterOnDepth](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/CounterHoleDiameterOnDepth.md) |  |
| [D3DXQuaternion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/D3DXQuaternion.md) |  |
| [DimensionReference](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/DimensionReference.md) |  |
| [GeomCircle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/GeomCircle.md) |  |
| [GeomCone](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/GeomCone.md) |  |
| [GeomCylinder](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/GeomCylinder.md) |  |
| [GeomLine](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/GeomLine.md) |  |
| [GeomPlane](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/GeomPlane.md) |  |
| [GeomPoint3D](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/GeomPoint3D.md) |  |
| [GeomSphere](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/GeomSphere.md) |  |
| [GlobalVars](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/GlobalVars.md) |  |
| [LsmSdkLengthValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/LsmSdkLengthValue.md) |  |
| [LsmSdkMassValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/LsmSdkMassValue.md) |  |
| [LsmSdkNullableDouble](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/LsmSdkNullableDouble.md) |  |
| [LsmSdkTLElectricParams](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/LsmSdkTLElectricParams.md) |  |
| [LsmSdkTLId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/LsmSdkTLId.md) |  |
| [MeshTriangle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/MeshTriangle.md) |  |
| [MeshVertex](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/MeshVertex.md) |  |
| [PadViaThermalReliefData](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/PadViaThermalReliefData.md) |  |
| [PCBConstant](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/PCBConstant.md) |  |
| [PlotterPen](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/PlotterPen.md) |  |
| [PolySegment](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/PolySegment.md) |  |
| [S_D3DVECTOR](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/S_D3DVECTOR.md) |  |
| [SCoordPoint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SCoordPoint.md) |  |
| [SCoordPoint3D](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SCoordPoint3D.md) |  |
| [SCoordRect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SCoordRect.md) |  |
| [SCounterHoleDiameterOnDepth](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SCounterHoleDiameterOnDepth.md) |  |
| [SD3DXQuaternion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SD3DXQuaternion.md) |  |
| [SDimensionReference](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SDimensionReference.md) |  |
| [SerialParameters](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SerialParameters.md) |  |
| [SGeomCircle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SGeomCircle.md) |  |
| [SGeomCone](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SGeomCone.md) |  |
| [SGeomCylinder](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SGeomCylinder.md) |  |
| [SGeomLine](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SGeomLine.md) |  |
| [SGeomPlane](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SGeomPlane.md) |  |
| [SGeomPoint3D](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SGeomPoint3D.md) |  |
| [SGeomSphere](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SGeomSphere.md) |  |
| [SLsmSdkLengthValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SLsmSdkLengthValue.md) |  |
| [SLsmSdkMassValue](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SLsmSdkMassValue.md) |  |
| [SLsmSdkNullableDouble](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SLsmSdkNullableDouble.md) |  |
| [SLsmSdkTLElectricParams](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SLsmSdkTLElectricParams.md) |  |
| [SLsmSdkTLId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SLsmSdkTLId.md) |  |
| [SMeshTriangle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SMeshTriangle.md) |  |
| [SMeshVertex](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SMeshVertex.md) |  |
| [SPadViaThermalReliefData](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SPadViaThermalReliefData.md) |  |
| [SplinePoint2D](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SplinePoint2D.md) |  |
| [SPlotterPen](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SPlotterPen.md) |  |
| [SPolySegment](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SPolySegment.md) |  |
| [SSerialParameters](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SSerialParameters.md) |  |
| [SSplinePoint2D](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SSplinePoint2D.md) |  |
| [SStrokeRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SStrokeRecord.md) |  |
| [StrokeRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/StrokeRecord.md) |  |
| [SV7_PadCache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SV7_PadCache.md) |  |
| [SVcsBoardRevisionInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/SVcsBoardRevisionInfo.md) |  |
| [TKeepoutRestrictionsSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TKeepoutRestrictionsSet.md) |  |
| [TObjectSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TObjectSet.md) |  |
| [TPackageCompareOptionSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TPackageCompareOptionSet.md) |  |
| [TTestpointAllowedSideSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TTestpointAllowedSideSet.md) |  |
| [TViaStructureFeatureTypeSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/TViaStructureFeatureTypeSet.md) |  |
| [V7_PadCache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_PadCache.md) |  |
| [VcsBoardRevisionInfo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/VcsBoardRevisionInfo.md) |  |

## Other interfaces

| Type | Description |
| --- | --- |
| [IInterfaceListEx](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IInterfaceListEx.md) |  |
