IAutomation Class

IAutomation is the root of all automation Funktions and the Interface.

Definition

Namespace: PCBI.Automation
Assembly: PCB-Investigator (in PCB-Investigator.exe) Version: 0
C#
public static class IAutomation
Inheritance
Object    IAutomation

Properties

AlternativPlugInDirectory Set an extra directory for PlugIns, if it exists and plugIns inside found PCBI load this plugIns.
AnalysisResultRootDirectory Path to the root directory for analysis results
Check4NewVersion Gets or sets the option for checking for new versions on startup.
ComponentFileUseHighest Some ODB++ output tool use more than one component files e.g. components2, in some cases they are the newest version in other the lowest number is newest version. This depends on the output tool and with this option it is possible to select highest number of components file or lowest. Value can only be used after creating an IPCBIWindow instance.
CSVSeparator CSV Separator is saved in options to use the same separator in all csv imports and exports. /// Default is "," in some countries it is ";".
DEBUG_Output Use DEBUG Output add more information to error log and gives developer more details and warnings by using interface methods.
DeveloperPlugInDirecotry Ask Option for plugin directory of user. This is used to load private plugins by starting PCB-Investigator.
DrawComponentsSequentially Use Mutex for component drawing. Needed for OV.
Enable3DPlugin Sets/Gets whether the DirectX 3D Plugin should be loaded at the next start or not. (PCBIWindow must exist for proper use)
FindRoutCompAttribute There are comp attributes for rout layers to change the drawing of routing elements. If the comp attribute is combined with a side the lines and arcs are moved to get the correct display position.
HandleDynamicText Dynamic text can be changed directly in upper letter, lower letter or used as it is defined (Default).
HideOnClosing If HideOnClosing == true all PCB-I-Windows can only closed with "ClosePCBIWindow", otherwise they are only hidden. The default is false!
IgnorWarnings Suppress warnings of PCB-Investigator error log.
InstallationType Ask for installation type.
IsDemoVersion Ask PCB-Investigator how it is running. As Demo version or not?
LayerColorModeAdvanced True if ColorMode is Advanced else means the default setting. This sets the color depending on the layer type.
PCBIDataPath The easylogix\PCB-Investigator of user in application data folder.
RealTimeDrawing Change the drawing methode, the same like in the options.
SuppressRibbonForm Suppress the special ribbon menu to use your own old menu style (you have to add a PCBI-UIItems.dll in AddIn directory to hide PCB-Investigator standard ribbon menu).
SuppressStandardKey Suppress F5 Button to update menu and dialogs.
SuppressUserNotifications Suppress all messageboxes and ands more errors and warnings to the ErrorLog. This blocks the Drag N Drop method for opening Jobs, too.
UnzipWithTempFileAttribute Unzip files with temporary attribute to hold them in RAM instead of flushing to disk.
VERBOSE_Output Logs even more debug information in combination with DEBUG_Output = true
WordWrapInErrorLog Error log use word wrap to show all text in visible width of log window, if this is false it write the lines until next new line (\n\r) is comming.
ZoomAreaInflateValue Distance around selection for zoom to selection feature (see PCB-Investigator options dialog page "display").

Methods

AddToErrorLog Add an entry to the error log, this can be a warning too.
CheckAddInLicence(String) Check out license for plugin.
CheckAddInLicence(String, Boolean) Check out license for plugin.
CheckOutAddInLicence Check out license for plugin. This also shows message if no license available and gives local users a way to insert license key.
CheckPCBILicenceAPI Check PCBI allows using API interface. It is possible to get an API license without option to show PCB-Investigator and maybe you can show PCB-Investigator but have no license to add your own API methods.
ClosePCBIWindow Close one instance of IPCBIWindow, only relevant if HideOnClosing=true.
CompareLayers(IPCBIWindow, ILayer, IPCBIWindow, ILayer, IPCBIWindow, Boolean, RectangleF, Boolean) Compare to layers grahicly, internal it will be create two images of the layers and compare on 5 µm.
CompareLayers(IPCBIWindow, ILayer, IPCBIWindow, ILayer, IPCBIWindow, Boolean, RectangleF, Boolean, Boolean) Compare to layers grahicly, internal it will be create two images of the layers and compare on 5 µm.
ConvertLinkListToFileList 
ConvertLinkToFile Returns null or a IFileData for different file links like: - "C:\\file.txt" - "https://server/file.txt" - "PCBI365://group/folder/file.txt:146"
CreateNewPCBILibrary Create a new IPCBIWindow without UI (only for use in pure library mode). Init the IAutomation before using this methode or copy the PCB-Investigator.exe beside your EXE-File.
CreateNewPCBIWindow Create a new IPCBIWindow. Init the IAutomation before using this methode or copy the PCB-Investigator.exe beside your EXE-File.
GetAddInVisible Get the value of visibility.
GetAllOpenPCBIWindows Get all open IPCBIWindows.
GetEndDateOfLicence End date of your PCB-Investigator license. It is important to init the options before, this will be done e.g. by create a IPCBIWindow.
GetErrorLog The ErrorLog provides information in case of an read file error.
GetExternalOption Do not use this Ini option in plugins!
GetExternalProgramPath Helper programs like comparer or Panel Optimizer save there path here.
GetLanguagePackage Return the language name e.g. english. Value can only be used after creating an IPCBIWindow instance.
GetLCDongleSerialNumber Gets the serial number of the plugged LC Dongle (red), or an empty string
GetLicenceMaxVersion Returns the maximum PCBI major version, for which the licence is valid (e.g. "13" for "PCB-Investigator V13.x")
GetPCBIWorkingDirectory OBSOLETE: Get the internal working directory for temp-data or unzip jobs etc. (Default is user temp path: Path.GetTempPath()+PCBI) Value can only be used after creating an IPCBIWindow instance.
GetPCBIWorkingDirectory(IPCBIWindow) Get the internal working directory (+suffix if set in IPCBIWindow) for temp-data or unzip jobs etc. (Default is user temp path: Path.GetTempPath()+PCBI) Value can only be used after creating an IPCBIWindow instance.
GetPCBIWorkingDirectoryBase Get the internal working directory for temp-data or unzip jobs etc. (Default is user temp path: Path.GetTempPath()+PCBI) Value can only be used after creating an IPCBIWindow instance.
GetSODIdentityProvider Returns the last used identity provider for SOD2 license
GetSODUserName Returns the SOD User name, if SOD is the active licence system
GetUniquePCNumber You can use the unique PC number for generating your licence keys.
IAutomationInit Initialise PCB-Investigator and the IAutomation Interface, neccessary for calculations. Works only if PCB-Investigator.exe is in the same directory as startup application.
IAutomationInit(Boolean) Initialise PCB-Investigator and the IAutomation Interface, neccessary for calculations. Works only if PCB-Investigator.exe is in the same directory as startup application.
IAutomationInit(String) Initialise PCB-Investigator and the IAutomation Interface, neccessary for calculations. Call this init at the begin of your application!
IAutomationInit(Boolean, String) Initialise PCB-Investigator and the IAutomation Interface, neccessary for calculations. Call this init at the begin of your application!
IAutomationInit(Boolean, String, Boolean, Boolean) Initialise PCB-Investigator and the IAutomation Interface, neccessary for calculations. Call this init at the begin of your application! And call this init only one time at the beginning, later use CreateNewPCBIWindow to get new IPCBIWindows.
InitAssemblyResolve Add Eventhandler to System.AppDomain.CurrentDomain.AssemblyResolve, to resolve PCBI dlls in resources/Plugin/DevPlugin (sub)directories
IsODBAllowed Ask PCB-Investigator for checking ODB++ license.
MakeStringCADConform Supersedes all not allowed characters with _.
OpenEmbeddedDesign Open a PCB-Investigator-Embedded-Design, this will only take the ODB++ data from the embedded design with the same licence the referenced PCB-Investigator version has. Attention: If you want to use the embedded PCB-Investigator to work without licence you have to call IAutomationInit with ExecutabelPathPCBI on the located embedded-design!
RegisterCodePages Register addional codepages for Encoding.GetEncoding (e.g. Windows-1252)
ResetErrorLog Clears the error log.
SaveOptionToIni Do not use the Ini option in plugins!
SetAddInVisible Change the PlugIn visibility. Value can only be used after creating an IPCBIWindow instance.
SetDongleLicence Set Dongle License. Dongle must be connected via USB!
SetExternalProgramPath Set The path for a helper program e.g. Panel Optimizer.
SetFloatingLicence Set Floating Server IP with Port.
SetLanguagePackage Set the language for PCB-Investigator e.g. English. Value can only be used after creating an IPCBIWindow instance.
SetLibraryMode Special Library Mode use extra license.
SetPCBIWorkingDirectory OBSOLETE: Set the internal working directory for temp-data or unzip jobs etc. (Default is user temp path: Path.GetTempPath()) Value can only be used after creating an IPCBIWindow instance.
SetPCBIWorkingDirectoryBase Set the internal working directory for temp-data or unzip jobs etc. (Default is user temp path: Path.GetTempPath()) Value can only be used after creating an IPCBIWindow instance.
SetSODLicence Set User Name for SOD License System.
SetSODTokenAsync Switches license system to new SOD with a new refresh_token
UpdateDongleLicence Updates the dongle licence from an existing XML file
UseSODToken Switches License System to new SOD if encrypted refresh_token exists.
XMLDeserializeFromFileT(IFileData, T) Deserialize a xml file with PCBI standard settings.
XMLDeserializeFromFileT(IFileData, T, Boolean) Deserialize a xml file with PCBI standard settings.
XMLSerializeToFile(IFileData, Object) Serialize a file with PCBI standard settings.
XMLSerializeToFile(IFileData, Object, Boolean) Serialize a file with PCBI standard settings.

Events

PCBIErrorOccurred The event if a internal error occurs.
PCBINewDesignHistoryLog The event handler is called, when a new design history log is created
PCBIWarningOccurred A new warning is added to the ErrorLog.
PCBIWindowCreated The event handler is called, when a new IPCBIWindow (with or without UI) is created
PCBIWindowDisposing The event handler is called, when an existing IPCBIWindow is disposed

See Also