### Run PyAether Examples Commands to navigate to the PyAether labs directory and execute a Python example script (XXX.py) to observe its output with Aether. ```shell cd aether_py3.9_xxx_linux-x86_64-el6_xxx/tools/pyaether/labs pythone XXX.py ``` -------------------------------- ### Install PyAether Package Steps to extract, configure, and source the PyAether installation script. Requires modifying setup.csh or setup.bash to set the INSTALL_PATH. For Python 2.6, set PYAE_VER to 2.6. ```shell tar -xvf aether_py_xxx_linux-x86_64-el6_xxx.tar cd aether_py_xxx_linux-x86_64-el6_xxx vi setup.csh or setup.bash source setup.csh or setup.bash ``` -------------------------------- ### Import PyAether in Python Basic Python code to import the PyAether library for use in an IDE or script. ```python import pyAether ``` -------------------------------- ### Access PyAether Offline Documentation Command to navigate to the PyAether documentation directory and open the index file using Firefox. Assumes the user is in the extracted PyAether directory. ```shell cd aether_py_xxx_linux-x86_64-el6_xxx/tools/pyaether/docs/html firefox index.html ``` -------------------------------- ### emyIntAppDef_emyVia Class Provides methods for creating, finding, getting, and setting integer data extensions on database objects. ```APIDOC ## Class: emyIntAppDef_emyVia ### Description This class implements an application-specific extension for a particular type of data in a database, specifically for integer types. ### Methods #### `create(name: emyString, defValue: emyInt4, persist: emyBoolean, undoable: emyBoolean) -> emyIntAppDef_emyVia` Constructs an `emyIntAppDef_emyVia` object, creating an integer extension with the specified name. An integer extension can be added to any object except another extension. **Parameters:** - **name** (emyString) - Required - The name given to the `emyIntAppDef_emyVia` object. - **defValue** (emyFloat) - Required - The default value for the extension. - **persist** (emyBoolean) - Required - Saves the `emyIntAppDef_emyVia` data in the database. - **undoable** (emyBoolean) - Required - Indicates if the extension is sensitive to undo and redo operations. **Raises:** - emcAppDefExists - emcInvalidFlagsCombination #### `find(name: emyString) -> emyIntAppDef_emyVia` Returns an `emyIntAppDef_emyVia` object with this data type and the specified name, if it exists. **Parameters:** - **name** (emyString) - Required - The name of the `emyAppDef` object to look for. #### `get(object: emyVia) -> emyInt4` Returns the integer value of this extension for the given object. **Parameters:** - **object** (emyVia) - Required - The object whose extension value is to be retrieved. *Note: In Python 2, use the `emyIntAppDef_emyVia_get` interface for this function.* #### `get(name: emyString, defValue: emyInt4 = 0, persist: emyBoolean = True) -> emyIntAppDef_emyVia` This overloaded `get` method is related to the definition of the extension itself, not retrieving a value for a specific object. It returns the `emyIntAppDef_emyVia` object based on its definition parameters. **Parameters:** - **name** (emyString) - Required - The name of the extension definition. - **defValue** (emyInt4) - Optional - The default value for the extension (defaults to 0). - **persist** (emyBoolean) - Optional - Whether the extension is persistent (defaults to True). #### `getDefault() -> emyInt4` Returns the default integer value of this extension. #### `set(object: emyVia, value: emyInt4)` Sets the integer value of this extension for a specific object. **Parameters:** - **object** (emyVia) - Required - The object on which to set the value. - **value** (emyInt4) - Required - The integer value to set on the object. ``` -------------------------------- ### aeCreateBus This command creates a bus in the layout view. It takes a starting point, number of wires, width, and spacing as primary arguments. ```APIDOC ## POST /aeCreateBus ### Description This command creates a bus in the layout view. It takes a starting point, number of wires, width, and spacing as primary arguments. ### Method POST ### Endpoint /aeCreateBus ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **point** (emyPointF) - Required - The starting point for the bus. - **number** (int) - Required - The number of wires in the bus. - **width** (float) - Required - The width of each wire. - **spacing** (float) - Required - The spacing between wires. - **...** - Optional - Additional parameters for bus creation. ### Request Example ```json { "point": {"x": 50, "y": 50}, "number": 4, "width": 0.5, "spacing": 1.0 } ``` ### Response #### Success Response (200) - **bus** - The created bus object or details. #### Response Example ```json { "bus": "" } ``` ``` -------------------------------- ### Get Via Options using aeViaGetViaOptions Retrieves via options based on a specific design and constraint group. This command is useful for querying available via configurations. ```Python aeViaGetViaOptions(design, constraintGroup) ``` -------------------------------- ### aeCreateWire This command creates a wire in the schematic view. It requires a starting point and can have parameters for draw mode and angle locking. ```APIDOC ## POST /aeCreateWire ### Description This command creates a wire in the schematic view. It requires a starting point and can have parameters for draw mode and angle locking. ### Method POST ### Endpoint /aeCreateWire ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **point** (emyPointF) - Required - The starting point of the wire. - **drawMode** (string) - Optional - The drawing mode for the wire. - **lockAngle** (bool) - Optional - Whether to lock the wire's angle. - **...** - Optional - Additional wire properties. ### Request Example ```json { "point": {"x": 100, "y": 50}, "drawMode": "orthogonal", "lockAngle": false } ``` ### Response #### Success Response (200) - **wire** - The created wire object or details. #### Response Example ```json { "wire": "" } ``` ``` -------------------------------- ### Get Via Options using aeViaGetViaOptionsEx Retrieves via options based on a constraint group. This command provides an alternative way to access via configurations without requiring the design context. ```Python aeViaGetViaOptionsEx(constraintGroup) ``` -------------------------------- ### Create Bus using aeCreateBus Creates a bus in the layout view. Requires a starting point, number of lines, line width, and spacing between lines. Additional parameters may be used for further customization. ```Python aeCreateBus(point, number, width, spacing[, …]) ``` -------------------------------- ### Create Wire using aeCreateWire Creates a wire in the schematic view. Requires a starting point. Various parameters control the wire's drawing mode, angle locking, and other visual properties. ```Python aeCreateWire(point[, drawMode, lockAngle, …]) ``` -------------------------------- ### Create Cascade Circuit using aeCreateCascadeCircuit Creates a cascade circuit in the current drawing area. This command takes a starting point and pin information as primary inputs. Further arguments control the circuit's configuration. ```Python aeCreateCascadeCircuit(point, pinInfos, …) ``` -------------------------------- ### aeCreateRuler This command creates a ruler in the drawing area. It takes a starting point as an argument. ```APIDOC ## POST /aeCreateRuler ### Description This command creates a ruler in the drawing area. It takes a starting point as an argument. ### Method POST ### Endpoint /aeCreateRuler ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **point** (emyPointF) - Required - The starting point of the ruler. ### Request Example ```json { "point": {"x": 10, "y": 10} } ``` ### Response #### Success Response (200) - **ruler** - The created ruler object or details. #### Response Example ```json { "ruler": "" } ``` ``` -------------------------------- ### Get emyDataAppDef_emyVia Value Size Returns the size, in bytes, of the value that is stored for this data extension on an object. ```python getSize() -> emyUInt4 ``` -------------------------------- ### Parameter and Routing Configuration APIs for retrieving technology parameters and routing layer configurations. ```APIDOC ## GET /tech/param ### Description Returns the value of the named parameter in the technology. ### Method GET ### Endpoint /tech/param ### Parameters #### Query Parameters - **tech** (string) - The technology file identifier. - **name** (string) - The name of the parameter. ### Response #### Success Response (200) - **value** (any) - The value of the specified parameter. #### Response Example ```json { "value": "default_value" } ``` ## GET /tech/routing/direction ### Description Returns the direction assigned to the specified routing layer. ### Method GET ### Endpoint /tech/routing/direction ### Parameters #### Query Parameters - **tech** (string) - The technology file identifier. - **layerName** (string) - The name of the routing layer. ### Response #### Success Response (200) - **direction** (string) - The routing direction (e.g., "horizontal", "vertical"). #### Response Example ```json { "direction": "horizontal" } ``` ## GET /tech/routing/layers ### Description Returns a list of routing layers and their preferred routing directions. ### Method GET ### Endpoint /tech/routing/layers ### Parameters #### Query Parameters - **tech** (string) - The technology file identifier. ### Response #### Success Response (200) - **layers** (array) - A list of routing layers with their directions. #### Response Example ```json { "layers": [ { "name": "metal1", "direction": "horizontal" }, { "name": "metal2", "direction": "vertical" } ] } ``` ``` -------------------------------- ### Grid and Routing Grid Settings APIs for setting manufacturing grid resolution and layer routing grids. ```APIDOC ## POST /tech/grid/resolution ### Description Updates or sets the value used for grid snapping in the specified technology database. ### Method POST ### Endpoint /tech/grid/resolution ### Parameters #### Request Body - **tech** (string) - The technology file identifier. - **resolution** (float) - The grid snapping resolution value. ### Response #### Success Response (200) - **status** (string) - Indicates if the resolution was set successfully. #### Response Example ```json { "status": "resolution_set" } ``` ## POST /tech/routing/grids ### Description Sets the layer routing direction, pitch, and offset assigned to layers in the specified technology database. ### Method POST ### Endpoint /tech/routing/grids ### Parameters #### Request Body - **tech** (string) - The technology file identifier. - **layerRoutingGrids** (array) - An array of layer routing grid configurations. - **layerName** (string) - The name of the layer. - **direction** (string) - The routing direction. - **pitch** (float) - The routing pitch. - **offset** (float) - The routing offset. ### Response #### Success Response (200) - **status** (string) - Indicates if the routing grids were set successfully. #### Response Example ```json { "status": "routing_grids_set" } ``` ``` -------------------------------- ### aeDimensionMark This command creates a dimension ruler in the layout view. It requires a starting point and can specify layer, purpose, etc. ```APIDOC ## POST /aeDimensionMark ### Description This command creates a dimension ruler in the layout view. It requires a starting point and can specify layer, purpose, etc. ### Method POST ### Endpoint /aeDimensionMark ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **point** (emyPointF) - Required - The starting point for the dimension mark. - **layerName** (string) - Optional - The layer for the dimension mark. - **purpose** (string) - Optional - The purpose of the dimension mark. - **...** - Optional - Additional parameters for dimensioning. ### Request Example ```json { "point": {"x": 50, "y": 150}, "layerName": "Dimension", "purpose": "Length" } ``` ### Response #### Success Response (200) - **dimensionMark** - The created dimension mark object or details. #### Response Example ```json { "dimensionMark": "" } ``` ``` -------------------------------- ### Tech File Management APIs for retrieving and loading technology files. ```APIDOC ## GET /tech/file ### Description Retrieves the ID of the technology database attached to the specified library. ### Method GET ### Endpoint /tech/file ### Parameters #### Query Parameters - **args** (*) - **kwargs** (*) ### Response #### Success Response (200) - **techId** (string) - The ID of the technology database. #### Response Example ```json { "techId": "tech_db_id_123" } ``` ## POST /tech/file/read ### Description Retrieves the ID of the technology database attached to the specified object. ### Method POST ### Endpoint /tech/file/read ### Parameters #### Request Body - **obj** (object) - The object to retrieve the technology database ID from. ### Response #### Success Response (200) - **techId** (string) - The ID of the technology database. #### Response Example ```json { "techId": "tech_db_id_123" } ``` ## POST /tech/load ### Description Loads the technology file to the specified library. ### Method POST ### Endpoint /tech/load ### Parameters #### Request Body - **lib** (string) - The library name. - **file** (string) - The path to the technology file. - **mode** (string, Optional) - The mode for loading the file. - **sections** (array, Optional) - Specific sections to load from the file. ### Response #### Success Response (200) - **status** (string) - Indicates if the file was loaded successfully. #### Response Example ```json { "status": "success" } ``` ``` -------------------------------- ### Initialize and Exit Aether System - Python Demonstrates the necessary steps to initialize the Aether system using `emyInitAether` and then exit it using `dmExit`. This is a prerequisite for using most Ae Commands. The initialization string is case-insensitive. ```python >>> import pyAether as pyScript >>> pyScript.emyInitAether("-ADV") # case insensitive >>> pyScript.dmExit() ``` -------------------------------- ### Technology Library Management APIs for managing technology libraries, including opening, reopening, and saving. ```APIDOC ## GET /tech/library ### Description Returns the technology library name of the specified library. ### Method GET ### Endpoint /tech/library ### Parameters #### Query Parameters - **libName** (string) - The name of the library. ### Response #### Success Response (200) - **techLibName** (string) - The name of the technology library. #### Response Example ```json { "techLibName": "mylib_tech" } ``` ## POST /tech/library/open ### Description Opens a technology of the library. ### Method POST ### Endpoint /tech/library/open ### Parameters #### Request Body - **args** (*) - **kwargs** (*) ### Response #### Success Response (200) - **techId** (string) - The identifier of the opened technology library. #### Response Example ```json { "techId": "opened_tech_id" } ``` ## POST /tech/library/open/3x ### Description Opens a technology of the library using a 3X format. ### Method POST ### Endpoint /tech/library/open/3x ### Parameters #### Request Body - **libName** (string) - The name of the library. - **binaryName** (string) - The name of the binary technology file. - **mode** (string, Optional) - The mode for opening the library. ### Response #### Success Response (200) - **techId** (string) - The identifier of the opened technology library. #### Response Example ```json { "techId": "opened_tech_id_3x" } ``` ## POST /tech/library/reopen ### Description Reopens the specified tech with the given mode. ### Method POST ### Endpoint /tech/library/reopen ### Parameters #### Request Body - **tech** (string) - The technology identifier. - **mode** (string) - The mode for reopening. ### Response #### Success Response (200) - **status** (string) - Indicates if the reopening was successful. #### Response Example ```json { "status": "success" } ``` ## POST /tech/library/save ### Description Saves a technology database with the specified technology identifier. ### Method POST ### Endpoint /tech/library/save ### Parameters #### Request Body - **tech** (string) - The technology identifier. ### Response #### Success Response (200) - **status** (string) - Indicates if the saving was successful. #### Response Example ```json { "status": "saved" } ``` ``` -------------------------------- ### Get Default Size of emyVarDataAppDef_emyVia Extension Returns the default size, in bytes, that was specified when the data extension was created. This is a simple getter method with no parameters. ```python default_size = emyVarDataAppDef_emyVia_instance.getDefaultSize() ``` -------------------------------- ### Window Ae Commands This section details various commands for interacting with windows, layers, and objects within the design environment. ```APIDOC ## aeCloseMdeWindow ### Description Closes the current mde window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters None ### Request Example ``` aeCloseMdeWindow() ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeCloseWindow ### Description Closes the window specified by its index. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **index** (integer) - Required - The index of the window to close. ### Request Example ``` aeCloseWindow(1) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeGetAllLayerSets ### Description Retrieves a list of all available layer sets in the specified design window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Query Parameters - **da** (object) - Optional - Specifies the design window context. ### Request Example ``` aeGetAllLayerSets() ``` ### Response #### Success Response (200) - **layerSets** (array) - A list of layer set names. #### Response Example ```json { "layerSets": ["LayerSet1", "LayerSet2"] } ``` ``` ```APIDOC ## aeGetEntryLayerPurpose ### Description Gets the name and purpose of the currently selected layer. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters None ### Request Example ``` aeGetEntryLayerPurpose() ``` ### Response #### Success Response (200) - **layerName** (string) - The name of the selected layer. - **purposeName** (string) - The purpose of the selected layer. #### Response Example ```json { "layerName": "M1", "purposeName": "drawing" } ``` ``` ```APIDOC ## aeGetLayerSetMembers ### Description Retrieves the member information of a specified layer set. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **lsName** (string) - Required - The name of the layer set. ### Request Example ``` aeGetLayerSetMembers("MyLayerSet") ``` ### Response #### Success Response (200) - **members** (array) - Information about the members of the layer set. #### Response Example ```json { "members": [{"layer": "M1", "purpose": "drawing"}] } ``` ``` ```APIDOC ## aePlot ### Description Opens the plot window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters None ### Request Example ``` aePlot() ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeScroll ### Description Scrolls the specified view. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters - **args** - Variable arguments for scrolling. - **kwargs** - Variable keyword arguments for scrolling. ### Request Example ``` aeScroll(x_offset=100, y_offset=50) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetAllLayerSelectable ### Description Sets the selectable state for all layers in the current window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Query Parameters - **issel** (boolean) - Required - True to make layers selectable, False otherwise. ### Request Example ``` aeSetAllLayerSelectable(true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetAllLayerValid ### Description Sets the valid state for all layers in the current window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Query Parameters - **isvalid** (boolean) - Required - True to make layers valid, False otherwise. ### Request Example ``` aeSetAllLayerValid(true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetAllLayerVisible ### Description Sets the visibility state for all layers in the current window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Query Parameters - **isvisible** (boolean) - Required - True to make layers visible, False otherwise. ### Request Example ``` aeSetAllLayerVisible(true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetAllObjSelectable ### Description Sets the selectable state for all object types in the current window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Query Parameters - **issel** (boolean) - Required - True to make objects selectable, False otherwise. ### Request Example ``` aeSetAllObjSelectable(true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetAllObjVisible ### Description Sets the visibility state for all object types in the current window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Query Parameters - **isvisible** (boolean) - Required - True to make objects visible, False otherwise. ### Request Example ``` aeSetAllObjVisible(true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetEntryLayer ### Description Sets the active layer. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **layer** (string) - Required - The name of the layer to set as active. - **purpose** (string) - Optional - The purpose of the layer. ### Request Example ``` aeSetEntryLayer("M1", "drawing") ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetLayerSelectable ### Description Sets whether a specific layer can be selected in the current window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **issel** (boolean) - Required - True to make the layer selectable, False otherwise. - **layer** (string) - Required - The name of the layer. - **purpose** (string) - Optional - The purpose of the layer. ### Request Example ``` aeSetLayerSelectable(true, "M1", "drawing") ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetLayerValid ### Description Sets whether the current layer is valid. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **isvalid** (boolean) - Required - True to mark the layer as valid, False otherwise. - **layer** (string) - Required - The name of the layer. - **purpose** (string) - Optional - The purpose of the layer. ### Request Example ``` aeSetLayerValid(true, "M1", "drawing") ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetLayerVisible ### Description Sets whether the current layer is visible. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **isvisible** (boolean) - Required - True to make the layer visible, False otherwise. - **layer** (string) - Required - The name of the layer. - **purpose** (string) - Optional - The purpose of the layer. ### Request Example ``` aeSetLayerVisible(true, "M1", "drawing") ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetObjSelectable ### Description Sets whether specified objects can be selected in the current window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **type** (string) - Required - The type of object (e.g., "shapes", "instances"). - **issel** (boolean) - Required - True to make the object selectable, False otherwise. ### Request Example ``` aeSetObjSelectable("shapes", true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetObjVisible ### Description Sets whether specified objects are visible or invisible in the current window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **type** (string) - Required - The type of object (e.g., "shapes", "instances"). - **isvisible** (boolean) - Required - True to make the object visible, False otherwise. ### Request Example ``` aeSetObjVisible("shapes", true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetSelectFilter ### Description Sets the selectable state of an object's type in the schematic or symbol. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **type** (string) - Required - The type of object. - **issel** (boolean) - Optional - True to make selectable, False otherwise. ### Request Example ``` aeSetSelectFilter("shapes", true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeSetWindowFocus ### Description Focuses the main window to the specified one. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **w** (object) - Required - The window object to focus on. - **setCurrent** (boolean) - Optional - Whether to set as the current window. ### Request Example ``` aeSetWindowFocus(myWindow, true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeShowLayerSets ### Description Shows the specified layer sets. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **name** (string) - Required - The name of the layer set to show. ### Request Example ``` aeShowLayerSets("MyLayerSet") ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## aeswindow ### Description Creates a main window for displaying design results or interacting with users. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **id** (integer) - Required - The identifier for the new window. ### Request Example ``` aeswindow(101) ``` ### Response #### Success Response (200) - **window_id** (integer) - The ID of the created window. #### Response Example ```json { "window_id": 101 } ``` ``` ```APIDOC ## aewindowp ### Description Checks if a given object is a window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **g_object** (object) - Required - The object to check. ### Request Example ``` aewindowp(myObject) ``` ### Response #### Success Response (200) - **is_window** (boolean) - True if the object is a window, False otherwise. #### Response Example ```json { "is_window": true } ``` ``` ```APIDOC ## pnlSetAllSelectable ### Description Sets the selectable state of items in LSW, ObjectFilter, or GuideFilter to True. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters - **args** - Variable arguments. ### Request Example ``` pnlSetAllSelectable() ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## pnlSetAllVisible ### Description Sets the visible state of items in LSW, ObjectFilter, or GuideFilter to True. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters - **args** - Variable arguments. ### Request Example ``` pnlSetAllVisible() ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## pnlSetConfig ### Description Sets a panel configuration based on the provided configuration name and value. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **configName** (string) - Required - The name of the configuration setting. - **configValue** (any) - Required - The value for the configuration setting. - **panelName** (string) - Required - The name of the panel to configure. ### Request Example ``` pnlSetConfig("color", "red", "MyPanel") ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## pnlSetLayerSetMember ### Description Adds or removes a layer-purpose pair (LPP) in the current layer set of a specified panel and window. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **lppName** (string) - Required - The name of the layer-purpose pair. - **memberState** (boolean) - Required - True to add, False to remove. - **...** - Additional arguments might be required depending on context. ### Request Example ``` pnlSetLayerSetMember("M1/drawing", true) ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## pnlSetLSActive ### Description Switches to and activates the specified layer set if it's valid. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **layerSet** (string) - Required - The name of the layer set to activate. ### Request Example ``` pnlSetLSActive("MyLayerSet") ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## pnlSetNoneSelectable ### Description Sets the selectable state of items in LSW, ObjectFilter, or GuideFilter to False. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters - **args** - Variable arguments. ### Request Example ``` pnlSetNoneSelectable() ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## pnlSetNoneVisible ### Description Sets the visible state of items in LSW, ObjectFilter, or GuideFilter to False. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters - **args** - Variable arguments. ### Request Example ``` pnlSetNoneVisible() ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` ```APIDOC ## pnlSetSearchText ### Description Fills the 'search' item in the LSW with the specified value. ### Method Not specified (assumed function call) ### Endpoint N/A ### Parameters #### Path Parameters - **searchPattern** (string) - Required - The text to search for. - **panelName** (string) - Required - The name of the panel. - **wm** (object) - Optional - Window manager context. ### Request Example ``` pnlSetSearchText("keyword", "MyPanel") ``` ### Response #### Success Response (200) No specific response documented. #### Response Example N/A ``` -------------------------------- ### Get emyDataAppDef_emyVia Data Extension Value Retrieves the current value of the data extension for a given emyVia object. The value is returned as a byte array. ```python get(object: emyVia) -> emyByte ``` -------------------------------- ### emyBooleanAppDef_emyVia Class Methods This section details the static and instance methods available for the emyBooleanAppDef_emyVia class, used for managing boolean extensions. ```APIDOC ## emyBooleanAppDef_emyVia ### Description This class implements an application-specific extension to a particular type of data in a database. ### Methods #### `create(name: emyString, defValue: emyBoolean, persist: emyBoolean, undoable: emyBoolean) -> emyBooleanAppDef_emyVia` **Description**: Constructs a boolean extension with the given name and the specified default value. **Parameters**: - **name** (emyString) - Required - The name of the boolean extension to create. - **defValue** (emyBoolean) - Required - The default value for the extension to create. - **persist** (emyBoolean) - Required - The persistency of the extension to create. - **undoable** (emyBoolean) - Required - The extension is sensitive to undo and redo. **Raises**: - emcAppDefExists - emcInvalidFlagsCombination #### `find(name: emyString) -> emyBooleanAppDef_emyLayer` **Description**: Searches for an emyBooleanAppDef with the specified name. None is returned if none exists. **Parameters**: - **name** (emyString) - Required - The name of the emyAppDef object to look for. #### `get(object: emyVia) -> emyBoolean` **Description**: Return the value of this Boolean AppDef for a given object. **Parameters**: - **object** (emyVia) - Required - The object for which to retrieve the boolean value. #### `get(name: emyString, defValue: emyBoolean=False, persist: emyBoolean=True) -> emyBooleanAppDef_emyVia` **Description**: Retrieves an existing boolean extension by name, with optional default value and persistence settings. **Parameters**: - **name** (emyString) - Required - The name of the boolean extension to retrieve. - **defValue** (emyBoolean) - Optional - The default value if the extension is not found (defaults to False). - **persist** (emyBoolean) - Optional - Whether the extension should be persistent (defaults to True). #### `getDefault() -> emyBoolean` **Description**: Returns the default value of this extension. #### `set(object: emyVia, value: emyBoolean)` **Description**: Sets the value of this Boolean AppDef for a given object. **Parameters**: - **object** (emyVia) - Required - The object on which to set the value for this extension. - **value** (emyBoolean) - Required - The value of the extension to set on the object. **Raises**: - emcInvalidDesignObjectForAppDef ``` -------------------------------- ### Import/Export Database Commands Commands for importing data into and exporting data from the database. ```APIDOC ## Import/Export Database Commands ### Description Commands for importing data into and exporting data from the database. ### Commands - **dbGdsIn**: Imports data from a GDSII file. - **dbGdsOut**: Exports data to a GDSII file. ``` -------------------------------- ### Get Default Value of emyDoubleAppDef_emyVia (Python) Returns the default value configured for this double extension. This is the value that the extension will hold if no specific value has been set for an object. ```Python getDefault() -> emyDouble ``` -------------------------------- ### Get emyDoubleAppDef_emyVia Value (Python) Retrieves the current value of the double extension from a specified emyVia object. This method is used to access the data stored in the extension. ```Python get(object: emyVia) -> emyDouble ``` -------------------------------- ### General Database Manipulation Commands A collection of various commands for general database manipulation and querying. ```APIDOC ## General Database Manipulation Commands ### Description A collection of various commands for general database manipulation and querying. ### Commands - **dbGetPathBoundary**: Retrieves the boundary of a path. - **dbGetPinFigName**: Retrieves the figure name of a pin. - **dbGetPointsByBox**: Retrieves points within a specified box. - **dbGetPropByName**: Retrieves a property by its name. - **dbGetShapeColorMask**: Retrieves the color mask for a shape. - **dbGetShapeDimension**: Retrieves the dimensions of a shape. - **dbGetTopNetNameByHierName**: Retrieves the top net name by hierarchical name. - **dbGetTopNetNameByHierNameEx**: Retrieves the top net name by hierarchical name (extended). - **dbGetTrueOverlaps**: Retrieves true overlaps. - **dbGetTrueOverlapsEx**: Retrieves true overlaps (extended). - **dbGetViaColorMask**: Retrieves the color mask for a via. - **dbGetViaLayer1Ctrl**: Retrieves the layer 1 control for a via. - **dbGetViaLayer2Ctrl**: Retrieves the layer 2 control for a via. - **dbGetViaLayerCtrl**: Retrieves the layer control for a via. - **dbInvertTransform**: Inverts a transformation. - **dbIsBoxOverlapped**: Checks if boxes are overlapped. - **dbIsSameMaster**: Checks if masters are the same. - **dbIsShapeColored**: Checks if a shape is colored. - **dbIsShapeColoringAllowed**: Checks if shape coloring is allowed. - **dbIsShapeColorLocked**: Checks if a shape's color is locked. - **dbIsViaColorStateLayerLockedEx**: Checks if a via's color state layer is locked (extended). - **dbIsViaColorStateLocked**: Checks if a via's color state is locked. - **dbLayerCross**: Performs a layer cross operation. - **dbLayerGen**: Generates layer information. - **dbLayerHoles**: Retrieves holes in a layer. - **dbLayerInside**: Checks if a point is inside a layer. - **dbLayerNoHoles**: Retrieves layer information without holes. - **dbLayerOutside**: Checks if a point is outside a layer. - **dbLayerSize**: Retrieves the size of a layer. - **dbLayerTile**: Tiles a layer. - **dbLayerTopo**: Retrieves topological information of a layer. - **dbLayerTopoEnclose**: Encloses a layer topologically. - **dbMakeNet**: Creates a net. - **dbMergeBoxes**: Merges bounding boxes. - **dbMergeNet**: Merges nets. - **dbMoveFig**: Moves a figure. - **dbMovePinToNet**: Moves a pin to a net. - **dbPadReport**: Generates a pad report. - **dbPcmUnabut**: Unabuts a PCM. - **dbPointArrayGen**: Generates a point array. - **dbPolygonToTrap**: Converts a polygon to a trapezoid. - **dbProduceOverlap3X**: Produces overlaps (3X). - **dbRemoveFigFromFigGp**: Removes a figure from a figure group. - **dbRemoveLayerColor**: Removes layer color. - **dbReplacePropList**: Replaces a property list. - **dbResize**: Resizes an object. - **dbSchEditPinOrder**: Edits pin order in a schematic. - **dbSchGetPinOrder**: Gets pin order from a schematic. - **dbSearchPropByName**: Searches for a property by name. - **dbSeCrtWireEnds**: Creates wire ends. - **dbSelObjsByType**: Selects objects by type. - **dbSetCustomViaParam**: Sets custom via parameters. - **dbSetInstParam**: Sets instance parameters. - **dbSetInstsBindingByName**: Sets instance bindings by name. - **dbSetLePinFigAccessDirection**: Sets access direction for LE pin figure. - **dbSetLePinFigName**: Sets the figure name for an LE pin. - **dbSetLePinFigPlacementStatus**: Sets placement status for an LE pin figure. - **dbSetOccShapeColorLocked**: Sets the locked state for an occurrence's shape color. - **dbSetOccShapeColorMask**: Sets the color mask for an occurrence's shape. - **dbSetParams**: Sets parameters. - **dbSetPropByName**: Sets a property by name. - **dbSetShapeColorLocked**: Sets the locked state for a shape's color. - **dbSetShapeColorMask**: Sets the color mask for a shape. - **dbSetViaColorCtrl**: Sets via color control. - **dbSetViaColorMask**: Sets the color mask for a via. - **dbSetViaColorStateLayerLocked**: Sets the locked state for a via's color state layer. - **dbSetViaColorStateLayerLockedEx**: Sets the locked state for a via's color state layer (extended). - **dbSetViaLayer1Ctrl**: Sets layer 1 control for a via. - **dbSetViaLayer2Ctrl**: Sets layer 2 control for a via. - **dbSetViaLayerCtrl**: Sets layer control for a via. - **dbShiftColor**: Shifts color. - **dbShiftOrigin**: Shifts the origin. - **dbSingleLayerGOA**: Performs a single layer GOA operation. - **dbSmashInst**: Smashes an instance. - **dbSmoothCorner**: Smooths a corner. - **dbSplitArray**: Splits an array. - **dbSubFigFromNet**: Subtracts a figure from a net. - **dbTransformBBox**: Transforms a bounding box. - **dbTransformPoint**: Transforms a point. - **dbTransformPointArray**: Transforms an array of points. - **dbTransformPoints**: Transforms multiple points. - **dbTraverse**: Traverses the database. - **dbUnFigGroup**: Ungroups figures. - **emyFigGetTypeName**: Gets the type name of a figure. - **emyInstBitGetInst**: Gets an instance from an instance bit. - **etGetd**: Retrieves a value from ET. ```