ansys-edb-core 0.3.0.dev8__tar.gz → 0.3.0.dev9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/.github/workflows/ci_cd.yml +0 -13
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/PKG-INFO +2 -3
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/pyproject.toml +2 -3
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/ic_component_property.py +2 -2
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/io_component_property.py +1 -1
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/package_def.py +2 -2
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/geometry/polygon_data.py +5 -1
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/rpc_response_map.py +3 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout/layout.py +10 -10
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout_instance/layout_instance.py +7 -13
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/primitive_instance_collection.py +9 -2
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/session.py +11 -2
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/io_manager.py +41 -2
- ansys_edb_core-0.3.0.dev8/tests/e2e/scratch/test_rpc_executor.py +0 -179
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/.flake8 +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/.github/CODEOWNERS +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/.github/dependabot.yml +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/.github/workflows/template.yml +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/.gitignore +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/.pre-commit-config.yaml +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/AUTHORS +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/CMakeLists.txt +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/CODE_OF_CONDUCT.md +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/CONTRIBUTING.md +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/CONTRIBUTORS.md +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/LICENSE +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/README.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/deps/IEDB_RPC_Services.h +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/deps/rpc_executor.h +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/deps/rpc_executor_bindings.cpp +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/.vale.ini +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/Makefile +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/make.bat +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/_static/README.md +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/_templates/README.md +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/_templates/sidebar-nav-bs.html +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/database.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/definition.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/geometry.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/glossary.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/hierarchy.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/index.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/layer.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/layout.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/layout_instance.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/net.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/primitive.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/release_notes.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/session.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/simulation_setup.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/terminal.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/api/utility.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/conf.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/contribute.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/examples/index.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/getting_started/index.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/index.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/user_guide/index.rst +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/styles/.gitignore +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/styles/config/vocabularies/ANSYS/accept.txt +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/styles/config/vocabularies/ANSYS/reject.txt +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/3d_comp_placement.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/Cutout_region.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/Define_and_assign_bondwire_profiles.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/Move_geometry_from_existing_layer_to_new_layer.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/PolygonOperations.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/Remove_all_geometry_and_layers_below_L2.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/assign_ds_model.aedb/edb.def +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/assign_ds_model.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/change_capacitor_models.aedb/edb.def +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/change_capacitor_models.aedb/stride/model.index +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/change_capacitor_models.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/fixtures/3d_comp_placement/3d_comp_placement.a3dcomp +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/helpers/example_setup.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/helpers/example_teardown.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/helpers/plot.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/stackup_export.aedb/edb.def +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/stackup_export.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/notebooks/template.ipynb +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/scripts/bootstrap.ps1 +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/scripts/bootstrap.sh +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/scripts/cleanipynb.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/scripts/proto_parser/generate_rpc_info.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/scripts/proto_parser/parse_protos.sh +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/database.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/bondwire_def.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/component_def.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/component_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/component_pin.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/component_property.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/dataset_def.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/debye_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/die_property.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/dielectric_material_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/djordjecvic_sarkar_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/material_def.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/material_property_thermal_modifier.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/multipole_debye_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/padstack_def.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/padstack_def_data.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/port_property.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/rlc_component_property.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/solder_ball_property.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/technology_def.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/edb_defs.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/geometry/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/geometry/arc_data.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/geometry/point3d_data.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/geometry/point_data.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/geometry/r_tree.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/geometry/triangle3d_data.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/cell_instance.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/component_group.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/group.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/hierarchy_obj.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/inst_array.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/layout_component.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/netlist_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/pin_group.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/pin_pair_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/sparameter_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/spice_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/structure3d.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/hierarchy/via_group.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/base.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/conn_obj.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/decorators.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/edb_logging.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/exceptions.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/factory.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/interceptors.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/layout_obj.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/messages.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/parser.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/rpc_info.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/rpc_info_utils.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/utils.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/variable_server.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layer/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layer/layer.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layer/layer_collection.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layer/stackup_layer.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layer/via_layer.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout/cell.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout/mcad_model.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout/voltage_regulator.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout_instance/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout_instance/layout_instance_context.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout_instance/layout_obj_instance.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout_instance/layout_obj_instance_2d_geometry.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout_instance/layout_obj_instance_3d_geometry.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/layout_instance/layout_obj_instance_geometry.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/net/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/net/differential_pair.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/net/extended_net.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/net/net.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/net/net_class.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/board_bend_def.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/bondwire.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/circle.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/padstack_instance.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/path.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/polygon.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/primitive.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/rectangle.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/primitive/text.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/adaptive_solutions.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/hfss_pi_simulation_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/hfss_pi_simulation_setup.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/hfss_simulation_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/hfss_simulation_setup.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/mesh_operation.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/q3d_simulation_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/q3d_simulation_setup.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/raptor_x_simulation_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/raptor_x_simulation_setup.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/simulation_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/simulation_setup.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/siwave_dcir_simulation_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/siwave_dcir_simulation_setup.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/siwave_psi_simulation_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/siwave_psi_simulation_setup.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/siwave_simulation_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/simulation_setup/siwave_simulation_setup.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/terminal/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/terminal/bundle_terminal.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/terminal/edge_terminal.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/terminal/padstack_instance_terminal.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/terminal/pin_group_terminal.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/terminal/point_terminal.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/terminal/terminal.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/terminal/terminal_instance.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/terminal/terminal_instance_terminal.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/typing/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/conversions.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/edb_error_manager.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/heat_sink.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/hfss_extent_info.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/layer_map.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/material_property_thermal_modifier_params.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/port_post_processing_prop.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/rlc.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/temperature_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/touchstone_export_settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/transform.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/transform3d.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/value.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys_edb_core_preload.pth +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys_edb_core_preload.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/conftest.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/integration_tests/test_padstack.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/integration_tests/test_siwave_simulation_setup.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/integration_tests/test_spiral_inductor.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/scratch/io_performance_scratch.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/scratch/sim_setup_scratch.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/scratch/test_board_bend_def.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/scratch/test_component_property.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/scratch/test_power_module.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/scratch/test_value.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/settings.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/unit_tests/test_cell.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/unit_tests/test_edge_terminal.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/unit_tests/test_layer_collection.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/e2e/unit_tests/test_session.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/mock/test_arc_data.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/mock/test_database.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/mock/test_metadata.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/mock/test_point_data.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/mock/test_terminals.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/mock/utils/__init__.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/mock/utils/fixtures.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tests/mock/utils/test_utils.py +0 -0
- {ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/tox.ini +0 -0
|
@@ -133,19 +133,6 @@ jobs:
|
|
|
133
133
|
steps:
|
|
134
134
|
- name: Install Git and checkout project
|
|
135
135
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
136
|
-
- name: Select manylinux image (fallback if quay is down)
|
|
137
|
-
shell: bash
|
|
138
|
-
run: |
|
|
139
|
-
set -euo pipefail
|
|
140
|
-
QUAY="quay.io/pypa/manylinux_2_28_x86_64"
|
|
141
|
-
GHCR="ghcr.io/pypa/manylinux_2_28_x86_64"
|
|
142
|
-
if docker pull "${QUAY}"; then
|
|
143
|
-
echo "CIBW_MANYLINUX_X86_64_IMAGE=${QUAY}" >> "$GITHUB_ENV"
|
|
144
|
-
else
|
|
145
|
-
echo "Quay pull failed; trying GHCR mirror..."
|
|
146
|
-
docker pull "${GHCR}"
|
|
147
|
-
echo "CIBW_MANYLINUX_X86_64_IMAGE=${GHCR}" >> "$GITHUB_ENV"
|
|
148
|
-
fi
|
|
149
136
|
- name: Build manylinux wheels with cibuildwheel
|
|
150
137
|
uses: pypa/cibuildwheel@v2.22.0
|
|
151
138
|
env:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: ansys-edb-core
|
|
3
|
-
Version: 0.3.0.
|
|
3
|
+
Version: 0.3.0.dev9
|
|
4
4
|
Summary: A python wrapper for Ansys Edb service
|
|
5
5
|
Author-Email: "ANSYS, Inc." <pyansys.support@ansys.com>
|
|
6
6
|
Maintainer-Email: PyAnsys developers <pyansys.maintainers@ansys.com>
|
|
@@ -40,10 +40,9 @@ Project-URL: Source, https://github.com/ansys/pyedb-core
|
|
|
40
40
|
Project-URL: Homepage, https://github.com/ansys/pyedb-core
|
|
41
41
|
Project-URL: Tracker, https://github.com/ansys/pyedb-core/issues
|
|
42
42
|
Requires-Python: >=3.10
|
|
43
|
-
Requires-Dist: ansys-api-edb==0.3.
|
|
43
|
+
Requires-Dist: ansys-api-edb==0.3.dev10
|
|
44
44
|
Requires-Dist: protobuf<5,>=3.19.3
|
|
45
45
|
Requires-Dist: grpcio>=1.44.0
|
|
46
|
-
Requires-Dist: Django>=4.2.16
|
|
47
46
|
Requires-Dist: ansys-tools-common>=0.3.1
|
|
48
47
|
Provides-Extra: notebook
|
|
49
48
|
Requires-Dist: notebook; extra == "notebook"
|
|
@@ -5,7 +5,7 @@ build-backend = "scikit_build_core.build"
|
|
|
5
5
|
[project]
|
|
6
6
|
# Check https://flit.readthedocs.io/en/latest/pyproject_toml.html for all available sections
|
|
7
7
|
name = "ansys-edb-core"
|
|
8
|
-
version = "0.3.0.
|
|
8
|
+
version = "0.3.0.dev9"
|
|
9
9
|
description = "A python wrapper for Ansys Edb service"
|
|
10
10
|
readme = "README.rst"
|
|
11
11
|
requires-python = ">=3.10"
|
|
@@ -26,10 +26,9 @@ classifiers = [
|
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
dependencies = [
|
|
29
|
-
"ansys-api-edb==0.3.
|
|
29
|
+
"ansys-api-edb==0.3.dev10",
|
|
30
30
|
"protobuf>=3.19.3,<5",
|
|
31
31
|
"grpcio>=1.44.0",
|
|
32
|
-
"Django>=4.2.16",
|
|
33
32
|
"ansys-tools-common>=0.3.1"
|
|
34
33
|
]
|
|
35
34
|
|
|
@@ -4,8 +4,8 @@ from __future__ import annotations
|
|
|
4
4
|
from typing import TYPE_CHECKING
|
|
5
5
|
|
|
6
6
|
if TYPE_CHECKING:
|
|
7
|
-
from
|
|
8
|
-
from
|
|
7
|
+
from ansys.edb.core.definition.die_property import DieProperty
|
|
8
|
+
from ansys.edb.core.definition.solder_ball_property import SolderBallProperty
|
|
9
9
|
|
|
10
10
|
from ansys.api.edb.v1.ic_component_property_pb2_grpc import ICComponentPropertyServiceStub
|
|
11
11
|
import google.protobuf.empty_pb2 as empty_pb2
|
|
@@ -5,7 +5,7 @@ from typing import TYPE_CHECKING
|
|
|
5
5
|
|
|
6
6
|
if TYPE_CHECKING:
|
|
7
7
|
from ansys.edb.core.definition.port_property import PortProperty
|
|
8
|
-
from
|
|
8
|
+
from ansys.edb.core.definition.solder_ball_property import SolderBallProperty
|
|
9
9
|
|
|
10
10
|
from ansys.api.edb.v1.io_component_property_pb2_grpc import IOComponentPropertyServiceStub
|
|
11
11
|
import google.protobuf.empty_pb2 as empty_pb2
|
{ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/definition/package_def.py
RENAMED
|
@@ -6,8 +6,8 @@ from typing import TYPE_CHECKING, List
|
|
|
6
6
|
if TYPE_CHECKING:
|
|
7
7
|
from ansys.edb.core.typing import ValueLike
|
|
8
8
|
from ansys.edb.core.database import Database
|
|
9
|
-
from
|
|
10
|
-
from
|
|
9
|
+
from ansys.edb.core.geometry.polygon_data import PolygonData
|
|
10
|
+
from ansys.edb.core.database import ProductIdType
|
|
11
11
|
|
|
12
12
|
from ansys.api.edb.v1 import package_def_pb2_grpc
|
|
13
13
|
|
{ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/geometry/polygon_data.py
RENAMED
|
@@ -18,6 +18,7 @@ from ansys.edb.core import session
|
|
|
18
18
|
from ansys.edb.core.geometry.arc_data import ArcData
|
|
19
19
|
from ansys.edb.core.inner import messages, parser
|
|
20
20
|
from ansys.edb.core.inner.utils import client_stream_iterator
|
|
21
|
+
from ansys.edb.core.session import is_in_memory
|
|
21
22
|
from ansys.edb.core.utility import conversions
|
|
22
23
|
|
|
23
24
|
|
|
@@ -438,7 +439,10 @@ class PolygonData:
|
|
|
438
439
|
-------
|
|
439
440
|
tuple of (.PointData, .PointData)
|
|
440
441
|
"""
|
|
441
|
-
|
|
442
|
+
if is_in_memory():
|
|
443
|
+
return cls.__stub.GetBBox(messages.polygon_data_list_message(polygons))
|
|
444
|
+
else:
|
|
445
|
+
return cls.__stub.GetStreamedBBox(PolygonData._polygon_data_request_iterator(polygons))
|
|
442
446
|
|
|
443
447
|
@parser.to_circle
|
|
444
448
|
def bounding_circle(self) -> tuple[PointData, Value]:
|
{ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/inner/rpc_response_map.py
RENAMED
|
@@ -736,6 +736,7 @@ rpc_response_map = {
|
|
|
736
736
|
"GetLayoutObjInstanceInContext": EDBObjMessage,
|
|
737
737
|
"GetConnectedObjects": EDBObjCollectionMessage,
|
|
738
738
|
"StreamConnectedObjects": EDBObjCollectionMessage,
|
|
739
|
+
"StreamLayoutObjInstancesQueryUnary": LayoutObjInstancesQueryResultsMessage,
|
|
739
740
|
},
|
|
740
741
|
"ansys.api.edb.v1.LayoutInstanceContextService": {
|
|
741
742
|
"GetLayout": EDBObjMessage,
|
|
@@ -1069,6 +1070,8 @@ rpc_response_map = {
|
|
|
1069
1070
|
"SetPositions": Empty,
|
|
1070
1071
|
"GetInstantiatedGeometry": PolygonDataListMessage,
|
|
1071
1072
|
"Decompose": Empty,
|
|
1073
|
+
"CreateUnary": EDBObjMessage,
|
|
1074
|
+
"SetPositionsUnary": Empty,
|
|
1072
1075
|
},
|
|
1073
1076
|
"ansys.api.edb.v1.Q3DGeneralSettingsService": {
|
|
1074
1077
|
"GetSolutionFrequency": StringValue,
|
|
@@ -11,16 +11,16 @@ if TYPE_CHECKING:
|
|
|
11
11
|
from ansys.edb.core.utility.value import Value
|
|
12
12
|
|
|
13
13
|
LayerListLike = Union[LayerLike, List[LayerLike]]
|
|
14
|
-
from
|
|
15
|
-
from
|
|
16
|
-
from
|
|
17
|
-
from
|
|
18
|
-
from
|
|
19
|
-
from
|
|
20
|
-
from
|
|
21
|
-
from
|
|
22
|
-
from
|
|
23
|
-
from
|
|
14
|
+
from ansys.edb.core.hierarchy.cell_instance import CellInstance
|
|
15
|
+
from ansys.edb.core.hierarchy.group import Group
|
|
16
|
+
from ansys.edb.core.hierarchy.pin_group import PinGroup
|
|
17
|
+
from ansys.edb.core.layout.voltage_regulator import VoltageRegulator
|
|
18
|
+
from ansys.edb.core.layout_instance.layout_instance import LayoutInstance
|
|
19
|
+
from ansys.edb.core.net.differential_pair import DifferentialPair
|
|
20
|
+
from ansys.edb.core.net.extended_net import ExtendedNet
|
|
21
|
+
from ansys.edb.core.net.net_class import NetClass
|
|
22
|
+
from ansys.edb.core.primitive.padstack_instance import PadstackInstance
|
|
23
|
+
from ansys.edb.core.terminal.terminal import Terminal
|
|
24
24
|
|
|
25
25
|
from enum import Enum
|
|
26
26
|
|
|
@@ -20,7 +20,7 @@ from ansys.edb.core.inner.messages import (
|
|
|
20
20
|
)
|
|
21
21
|
from ansys.edb.core.inner.utils import client_stream_iterator
|
|
22
22
|
from ansys.edb.core.layout_instance import layout_obj_instance
|
|
23
|
-
from ansys.edb.core.session import LayoutInstanceServiceStub, StubAccessor, StubType
|
|
23
|
+
from ansys.edb.core.session import LayoutInstanceServiceStub, StubAccessor, StubType, is_in_memory
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
class LayoutInstance(ObjBase):
|
|
@@ -98,28 +98,22 @@ class LayoutInstance(ObjBase):
|
|
|
98
98
|
"layer_filter": to_msg_filter_list(layer_filter, layer_ref_message),
|
|
99
99
|
"net_filter": to_msg_filter_list(net_filter, net_ref_message),
|
|
100
100
|
}
|
|
101
|
-
has_single_spatial_filter = spatial_filter is not None and not isinstance(
|
|
102
|
-
spatial_filter, list
|
|
103
|
-
)
|
|
104
|
-
if has_single_spatial_filter:
|
|
105
|
-
spatial_filter_msg_params = get_spatial_filter_msg_params(spatial_filter)
|
|
106
|
-
lyt_inst_net_filter_lyr_filter_params[
|
|
107
|
-
spatial_filter_msg_params[0]
|
|
108
|
-
] = spatial_filter_msg_params[1]
|
|
109
101
|
requests = [
|
|
110
102
|
layout_instance_pb2.LayoutObjInstancesQueryMessage(
|
|
111
103
|
**lyt_inst_net_filter_lyr_filter_params
|
|
112
104
|
)
|
|
113
105
|
]
|
|
114
106
|
has_spatial_filter = spatial_filter is not None
|
|
115
|
-
if has_spatial_filter
|
|
107
|
+
if has_spatial_filter:
|
|
116
108
|
for sf in utils.ensure_is_list(spatial_filter):
|
|
117
109
|
requests.append(spatial_filter_to_msg(sf))
|
|
118
110
|
|
|
119
111
|
all_hits = []
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
112
|
+
if is_in_memory():
|
|
113
|
+
queries_msg = layout_instance_pb2.LayoutObjInstancesQueriesMessage(
|
|
114
|
+
queries=requests,
|
|
115
|
+
)
|
|
116
|
+
for hit in self.__stub.StreamLayoutObjInstancesQueryUnary(queries_msg).query_results:
|
|
123
117
|
all_hits.append(hit)
|
|
124
118
|
else:
|
|
125
119
|
for hits_chunk in self.__stub.StreamLayoutObjInstancesQuery(
|
|
@@ -20,7 +20,7 @@ from ansys.edb.core.inner.layout_obj import LayoutObj
|
|
|
20
20
|
import ansys.edb.core.inner.messages as messages
|
|
21
21
|
from ansys.edb.core.inner.parser import msg_to_point_data, msg_to_polygon_data, to_polygon_data
|
|
22
22
|
from ansys.edb.core.inner.utils import client_stream_iterator, stream_items_from_server
|
|
23
|
-
from ansys.edb.core.session import StubAccessor, StubType
|
|
23
|
+
from ansys.edb.core.session import StubAccessor, StubType, is_in_memory
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
class PrimitiveInstanceCollection(LayoutObj):
|
|
@@ -79,6 +79,9 @@ class PrimitiveInstanceCollection(LayoutObj):
|
|
|
79
79
|
layer=messages.layer_ref_message(layer),
|
|
80
80
|
geometry=messages.polygon_data_message(geometry),
|
|
81
81
|
)
|
|
82
|
+
if is_in_memory():
|
|
83
|
+
chunk.points.points.extend(messages.point_message(pt) for pt in positions)
|
|
84
|
+
return PrimitiveInstanceCollection(cls.__stub.CreateUnary(chunk))
|
|
82
85
|
return PrimitiveInstanceCollection(
|
|
83
86
|
cls.__stub.Create(cls._point_request_iterator(positions, chunk))
|
|
84
87
|
)
|
|
@@ -103,7 +106,11 @@ class PrimitiveInstanceCollection(LayoutObj):
|
|
|
103
106
|
@positions.setter
|
|
104
107
|
def positions(self, positions: List[PointData]):
|
|
105
108
|
chunk = PrimitiveInstanceCollectionDataMessage(lyt_or_prim_inst_col=self.msg)
|
|
106
|
-
|
|
109
|
+
if is_in_memory():
|
|
110
|
+
chunk.points.points.extend(messages.point_message(pt) for pt in positions)
|
|
111
|
+
self.__stub.SetPositionsUnary(chunk)
|
|
112
|
+
else:
|
|
113
|
+
self.__stub.SetPositions(self._point_request_iterator(positions, chunk))
|
|
107
114
|
|
|
108
115
|
@property
|
|
109
116
|
def instantiated_geometry(self) -> List[PolygonData]:
|
|
@@ -159,7 +159,6 @@ from ansys.api.edb.v1.solder_ball_property_pb2_grpc import SolderBallPropertySer
|
|
|
159
159
|
from ansys.api.edb.v1.spice_model_pb2_grpc import SpiceModelServiceStub
|
|
160
160
|
from ansys.api.edb.v1.stackup_layer_pb2_grpc import StackupLayerServiceStub
|
|
161
161
|
from ansys.api.edb.v1.structure_3d_pb2_grpc import Structure3DServiceStub
|
|
162
|
-
from ansys.api.edb.v1.technology_def_pb2_grpc import TechnologyDefServiceStub
|
|
163
162
|
from ansys.api.edb.v1.term_inst_pb2_grpc import TerminalInstanceServiceStub
|
|
164
163
|
from ansys.api.edb.v1.term_inst_term_pb2_grpc import TerminalInstanceTerminalServiceStub
|
|
165
164
|
from ansys.api.edb.v1.term_pb2_grpc import TerminalServiceStub
|
|
@@ -473,7 +472,6 @@ class StubType(Enum):
|
|
|
473
472
|
rectangle = RectangleServiceStub
|
|
474
473
|
via_group = ViaGroupServiceStub
|
|
475
474
|
circle = CircleServiceStub
|
|
476
|
-
technology = TechnologyDefServiceStub
|
|
477
475
|
text = TextServiceStub
|
|
478
476
|
terminal = TerminalServiceStub
|
|
479
477
|
terminal_instance = TerminalInstanceServiceStub
|
|
@@ -743,6 +741,17 @@ def get_variable_server_stub() -> VariableServerServiceStub:
|
|
|
743
741
|
return StubAccessor(StubType.variable_server).__get__()
|
|
744
742
|
|
|
745
743
|
|
|
744
|
+
def is_in_memory() -> bool:
|
|
745
|
+
"""Check if the active session is operating in in-memory mode.
|
|
746
|
+
|
|
747
|
+
Returns
|
|
748
|
+
-------
|
|
749
|
+
bool
|
|
750
|
+
``True`` if the current session is an in-memory session, ``False`` otherwise.
|
|
751
|
+
"""
|
|
752
|
+
return MOD.current_session is not None and MOD.current_session.in_memory
|
|
753
|
+
|
|
754
|
+
|
|
746
755
|
def _ensure_session(
|
|
747
756
|
ansys_em_root: str,
|
|
748
757
|
port_num: int,
|
{ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/src/ansys/edb/core/utility/io_manager.py
RENAMED
|
@@ -3,11 +3,13 @@ import abc
|
|
|
3
3
|
from collections import defaultdict
|
|
4
4
|
from contextlib import contextmanager
|
|
5
5
|
from enum import Enum, Flag, auto
|
|
6
|
+
from importlib import import_module
|
|
7
|
+
import re
|
|
6
8
|
from sys import modules
|
|
9
|
+
from typing import Any as AnyType
|
|
7
10
|
|
|
8
11
|
from ansys.api.edb.v1.edb_messages_pb2 import EDBObjCollectionMessage, EDBObjMessage
|
|
9
12
|
from ansys.api.edb.v1.io_manager_pb2 import BufferEntryMessage, BufferMessage
|
|
10
|
-
from django.utils.module_loading import import_string
|
|
11
13
|
from google.protobuf.any_pb2 import Any
|
|
12
14
|
from google.protobuf.empty_pb2 import Empty
|
|
13
15
|
|
|
@@ -32,6 +34,43 @@ def _get_io_manager_stub():
|
|
|
32
34
|
return StubAccessor(StubType.io_manager).__get__()
|
|
33
35
|
|
|
34
36
|
|
|
37
|
+
_DOTTED_NAME_PATTERN = re.compile(r"^[a-zA-Z_][a-zA-Z0-9_]*(\.([a-zA-Z_][a-zA-Z0-9_]*))+$")
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
def _import_attribute_from_module(dotted_path: str) -> AnyType:
|
|
41
|
+
"""
|
|
42
|
+
Import a module attribute given its dotted path.
|
|
43
|
+
|
|
44
|
+
Modeled after Django's import_string function.
|
|
45
|
+
|
|
46
|
+
Parameters
|
|
47
|
+
----------
|
|
48
|
+
dotted_path : str
|
|
49
|
+
The dotted path to the attribute to import.
|
|
50
|
+
|
|
51
|
+
Returns
|
|
52
|
+
-------
|
|
53
|
+
AnyType
|
|
54
|
+
The imported attribute.
|
|
55
|
+
|
|
56
|
+
Raises
|
|
57
|
+
------
|
|
58
|
+
ImportError
|
|
59
|
+
If the module cannot be imported or the attribute does not exist.
|
|
60
|
+
"""
|
|
61
|
+
if not _DOTTED_NAME_PATTERN.fullmatch(dotted_path):
|
|
62
|
+
raise ImportError(
|
|
63
|
+
f"Invalid dotted path: {dotted_path}: must be in the form "
|
|
64
|
+
"module[.submodules...].attribute with valid Python identifiers"
|
|
65
|
+
)
|
|
66
|
+
module_path, attribute_name = dotted_path.rsplit(".", 1)
|
|
67
|
+
module = import_module(module_path)
|
|
68
|
+
try:
|
|
69
|
+
return getattr(module, attribute_name)
|
|
70
|
+
except AttributeError as ex:
|
|
71
|
+
raise ImportError(f"Module '{module_path}' does not define '{attribute_name}'") from ex
|
|
72
|
+
|
|
73
|
+
|
|
35
74
|
class _HijackedOutcome:
|
|
36
75
|
def __init__(self, result):
|
|
37
76
|
self._result = result
|
|
@@ -90,7 +129,7 @@ class _Cache(_IOOptimizer):
|
|
|
90
129
|
+ "_pb2"
|
|
91
130
|
+ msg_type_name[insertion_idx:]
|
|
92
131
|
)
|
|
93
|
-
msg_type =
|
|
132
|
+
msg_type = _import_attribute_from_module(msg_class_path)
|
|
94
133
|
self._msg_type_cache[msg_type_name] = msg_type
|
|
95
134
|
msg = msg_type()
|
|
96
135
|
any_module_msg.any.Unpack(msg)
|
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
"""Scratch tests for the rpc_executor C++ extension module.
|
|
2
|
-
|
|
3
|
-
Run with::
|
|
4
|
-
|
|
5
|
-
pytest tests/e2e/scratch/test_rpc_executor.py -v
|
|
6
|
-
|
|
7
|
-
Tests that exercise the real EDB_RPC_Services library require the
|
|
8
|
-
``ANSYSEM_EDB_EXE_DIR`` environment variable to point to an Ansys EM install
|
|
9
|
-
directory containing ``EDB_RPC_Services.dll`` (Windows) or
|
|
10
|
-
``libEDB_RPC_Services.so`` (Linux). Those tests are skipped automatically
|
|
11
|
-
when the variable is unset.
|
|
12
|
-
|
|
13
|
-
Tests that verify failure-mode behaviour (bad path, pre-initialize call) run
|
|
14
|
-
unconditionally and do not need a real EDB install.
|
|
15
|
-
"""
|
|
16
|
-
|
|
17
|
-
import sys
|
|
18
|
-
#sys.path.append(r"/srv/dmiller/installations/ansys_inc/v261_02_02_2026/AnsysEM")
|
|
19
|
-
|
|
20
|
-
import os
|
|
21
|
-
|
|
22
|
-
import pytest
|
|
23
|
-
import rpc_executor
|
|
24
|
-
|
|
25
|
-
# ---------------------------------------------------------------------------
|
|
26
|
-
# Helpers
|
|
27
|
-
# ---------------------------------------------------------------------------
|
|
28
|
-
|
|
29
|
-
EDB_EXE_DIR = os.environ.get("ANSYSEM_ROOT261")
|
|
30
|
-
|
|
31
|
-
requires_install = pytest.mark.skipif(
|
|
32
|
-
not EDB_EXE_DIR,
|
|
33
|
-
reason="ANSYSEM_EDB_EXE_DIR not set — skipping tests that require a real EDB install",
|
|
34
|
-
)
|
|
35
|
-
|
|
36
|
-
# ---------------------------------------------------------------------------
|
|
37
|
-
# Tests that do NOT need a real EDB install
|
|
38
|
-
# ---------------------------------------------------------------------------
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
def test_module_exposes_expected_callables():
|
|
42
|
-
"""The compiled extension must expose initialize() and execute_rpc()."""
|
|
43
|
-
assert callable(rpc_executor.initialize)
|
|
44
|
-
assert callable(rpc_executor.execute_rpc)
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
def test_initialize_with_nonexistent_path_returns_false():
|
|
48
|
-
"""initialize() must return False for a path that does not exist."""
|
|
49
|
-
result = rpc_executor.initialize("/does/not/exist/at/all")
|
|
50
|
-
assert result is False, "Expected False for a non-existent directory"
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
def test_initialize_with_empty_string_returns_false():
|
|
54
|
-
"""initialize() must return False for an empty path."""
|
|
55
|
-
result = rpc_executor.initialize("")
|
|
56
|
-
assert result is False, "Expected False for an empty directory path"
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
def test_execute_rpc_before_initialize_raises_runtime_error():
|
|
60
|
-
"""execute_rpc() must raise RuntimeError when Initialize() was never called.
|
|
61
|
-
|
|
62
|
-
This test is only meaningful when run in isolation before any successful
|
|
63
|
-
initialize() call. When ANSYSEM_EDB_EXE_DIR is set, the @requires_install
|
|
64
|
-
tests that run before this one will have already called initialize(), so
|
|
65
|
-
g_plugin will be non-null and this test is skipped automatically.
|
|
66
|
-
"""
|
|
67
|
-
if EDB_EXE_DIR:
|
|
68
|
-
pytest.skip(
|
|
69
|
-
"ANSYSEM_EDB_EXE_DIR is set; initialize() will have already been "
|
|
70
|
-
"called by an earlier test — g_plugin is non-null. Run this test "
|
|
71
|
-
"file in isolation (without ANSYSEM_EDB_EXE_DIR) to exercise the "
|
|
72
|
-
"uninitialized guard."
|
|
73
|
-
)
|
|
74
|
-
with pytest.raises(RuntimeError, match="not initialized"):
|
|
75
|
-
rpc_executor.execute_rpc("SomeService", "SomeMethod", b"")
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
# ---------------------------------------------------------------------------
|
|
79
|
-
# Tests that require a real EDB install
|
|
80
|
-
# ---------------------------------------------------------------------------
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
@requires_install
|
|
84
|
-
def test_initialize_with_valid_dir_returns_true():
|
|
85
|
-
"""initialize() must return True for a valid Ansys EM install directory."""
|
|
86
|
-
ok = rpc_executor.initialize(EDB_EXE_DIR)
|
|
87
|
-
assert ok, f"rpc_executor.initialize({EDB_EXE_DIR!r}) returned False"
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
@requires_install
|
|
91
|
-
def test_initialize_is_noop_after_first_success():
|
|
92
|
-
"""After the first successful initialize(), further calls are a no-op.
|
|
93
|
-
|
|
94
|
-
The second call uses a deliberately wrong path; if Initialize() re-ran it
|
|
95
|
-
would return False. It must return True because g_plugin is already set.
|
|
96
|
-
"""
|
|
97
|
-
rpc_executor.initialize(EDB_EXE_DIR)
|
|
98
|
-
ok = rpc_executor.initialize("/does/not/exist")
|
|
99
|
-
assert ok, "Second call to initialize() should be a no-op and return True"
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
@requires_install
|
|
103
|
-
def test_execute_rpc_returns_three_tuple():
|
|
104
|
-
"""execute_rpc() must return a (bool, bytes, str) 3-tuple."""
|
|
105
|
-
rpc_executor.initialize(EDB_EXE_DIR)
|
|
106
|
-
result = rpc_executor.execute_rpc("EDBServer", "GetVersion", b"")
|
|
107
|
-
assert isinstance(result, tuple), "execute_rpc() did not return a tuple"
|
|
108
|
-
assert len(result) == 3, f"Expected 3-tuple, got length {len(result)}"
|
|
109
|
-
ok, response, error = result
|
|
110
|
-
assert isinstance(ok, bool), f"result[0] should be bool, got {type(ok)}"
|
|
111
|
-
assert isinstance(response, bytes), f"result[1] should be bytes, got {type(response)}"
|
|
112
|
-
assert isinstance(error, str), f"result[2] should be str, got {type(error)}"
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
@requires_install
|
|
116
|
-
def test_execute_rpc_serialized_request_must_be_bytes():
|
|
117
|
-
"""execute_rpc() must reject a non-bytes serialized_request argument."""
|
|
118
|
-
rpc_executor.initialize(EDB_EXE_DIR)
|
|
119
|
-
with pytest.raises(TypeError):
|
|
120
|
-
rpc_executor.execute_rpc("EDBServer", "GetVersion", "not-bytes")
|
|
121
|
-
|
|
122
|
-
@requires_install
|
|
123
|
-
def test_load_edb():
|
|
124
|
-
from ansys.edb.core.session import launch_local_session
|
|
125
|
-
import os
|
|
126
|
-
from ansys.edb.core.database import Database
|
|
127
|
-
launch_local_session(EDB_EXE_DIR)
|
|
128
|
-
#db = Database.open(r"/srv/dmiller/installations/ansys_inc/v261_02_02_2026/AnsysEM/Examples/HFSS 3D Layout/Signal Integrity/Diff_Via.aedb", True)
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
@requires_install
|
|
132
|
-
def test_coexistence_with_cpp_extension_libraries():
|
|
133
|
-
"""Load numpy, scipy, pandas, grpc and protobuf (all C++-backed) alongside
|
|
134
|
-
rpc_executor and then open an EDB database to confirm that the .pth preload
|
|
135
|
-
hook correctly establishes a compatible libstdc++.so.6 before any of these
|
|
136
|
-
extensions can claim the system version.
|
|
137
|
-
|
|
138
|
-
Each library is exercised with a minimal but real operation so we can be
|
|
139
|
-
confident its own C extension initialised properly, not just that the module
|
|
140
|
-
object imported without error.
|
|
141
|
-
"""
|
|
142
|
-
# --- numpy ------------------------------------------------------------------
|
|
143
|
-
import numpy as np
|
|
144
|
-
arr = np.array([1.0, 2.0, 3.0])
|
|
145
|
-
assert np.sum(arr) == 6.0, "numpy sum failed"
|
|
146
|
-
assert arr.dtype == np.float64
|
|
147
|
-
|
|
148
|
-
# --- scipy ------------------------------------------------------------------
|
|
149
|
-
import scipy
|
|
150
|
-
from scipy.special import expit # logistic sigmoid — exercises Cython layer
|
|
151
|
-
result = expit(0.0)
|
|
152
|
-
assert abs(result - 0.5) < 1e-9, f"scipy.special.expit(0) = {result}, expected 0.5"
|
|
153
|
-
|
|
154
|
-
# --- pandas -----------------------------------------------------------------
|
|
155
|
-
import pandas as pd
|
|
156
|
-
df = pd.DataFrame({"x": [1, 2, 3], "y": [4, 5, 6]})
|
|
157
|
-
assert list(df.columns) == ["x", "y"]
|
|
158
|
-
assert df["x"].sum() == 6
|
|
159
|
-
|
|
160
|
-
# --- grpc (cygrpc Cython extension) ----------------------------------------
|
|
161
|
-
import grpc
|
|
162
|
-
channel = grpc.insecure_channel("localhost:1") # not connected, just creates object
|
|
163
|
-
assert channel is not None
|
|
164
|
-
channel.close()
|
|
165
|
-
|
|
166
|
-
# --- protobuf (upb C extension) --------------------------------------------
|
|
167
|
-
from google.protobuf import descriptor_pool
|
|
168
|
-
pool = descriptor_pool.Default()
|
|
169
|
-
assert pool is not None
|
|
170
|
-
|
|
171
|
-
# --- EDB database open (the core integration check) -----------------------
|
|
172
|
-
from ansys.edb.core.session import launch_local_session
|
|
173
|
-
from ansys.edb.core.database import Database
|
|
174
|
-
launch_local_session(EDB_EXE_DIR)
|
|
175
|
-
db = Database.open(
|
|
176
|
-
r"/srv/dmiller/installations/ansys_inc/v261_02_02_2026/AnsysEM/Examples/HFSS 3D Layout/Signal Integrity/Diff_Via.aedb",
|
|
177
|
-
True,
|
|
178
|
-
)
|
|
179
|
-
assert db is not None, "Database.open returned None"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/_templates/sidebar-nav-bs.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ansys_edb_core-0.3.0.dev8 → ansys_edb_core-0.3.0.dev9}/doc/source/getting_started/index.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|