pyedb 0.19.0__py3-none-any.whl → 0.21.0__py3-none-any.whl
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.
Potentially problematic release.
This version of pyedb might be problematic. Click here for more details.
- pyedb/__init__.py +1 -1
- pyedb/dotnet/edb.py +311 -335
- pyedb/dotnet/edb_core/cell/connectable.py +64 -0
- pyedb/dotnet/edb_core/cell/hierarchy/component.py +12 -10
- pyedb/dotnet/edb_core/cell/hierarchy/hierarchy_obj.py +1 -1
- pyedb/dotnet/edb_core/cell/layout.py +253 -105
- pyedb/dotnet/edb_core/cell/layout_obj.py +4 -49
- pyedb/dotnet/edb_core/cell/primitive.py +14 -2
- pyedb/dotnet/edb_core/cell/terminal/padstack_instance_terminal.py +1 -1
- pyedb/dotnet/edb_core/cell/terminal/point_terminal.py +1 -1
- pyedb/dotnet/edb_core/cell/terminal/terminal.py +1 -19
- pyedb/dotnet/edb_core/cell/voltage_regulator.py +2 -16
- pyedb/dotnet/edb_core/components.py +14 -13
- pyedb/dotnet/edb_core/dotnet/database.py +5 -10
- pyedb/dotnet/edb_core/dotnet/primitive.py +11 -1
- pyedb/dotnet/edb_core/edb_data/control_file.py +2 -12
- pyedb/dotnet/edb_core/edb_data/padstacks_data.py +20 -33
- pyedb/dotnet/edb_core/general.py +6 -9
- pyedb/dotnet/edb_core/hfss.py +4 -8
- pyedb/dotnet/edb_core/layout_obj_instance.py +30 -0
- pyedb/dotnet/edb_core/materials.py +4 -11
- pyedb/dotnet/edb_core/{layout.py → modeler.py} +153 -7
- pyedb/dotnet/edb_core/net_class.py +7 -8
- pyedb/dotnet/edb_core/nets.py +3 -9
- pyedb/dotnet/edb_core/padstack.py +13 -9
- pyedb/dotnet/edb_core/sim_setup_data/data/sweep_data.py +5 -2
- pyedb/dotnet/edb_core/siwave.py +5 -6
- pyedb/dotnet/edb_core/stackup.py +18 -23
- pyedb/dotnet/edb_core/utilities/simulation_setup.py +1 -4
- pyedb/generic/filesystem.py +2 -8
- pyedb/generic/general_methods.py +4 -10
- pyedb/generic/plot.py +26 -29
- pyedb/generic/process.py +2 -6
- pyedb/misc/downloads.py +3 -40
- pyedb/siwave.py +2 -5
- {pyedb-0.19.0.dist-info → pyedb-0.21.0.dist-info}/METADATA +2 -2
- {pyedb-0.19.0.dist-info → pyedb-0.21.0.dist-info}/RECORD +39 -38
- pyedb/dotnet/edb_core/dotnet/layout.py +0 -260
- {pyedb-0.19.0.dist-info → pyedb-0.21.0.dist-info}/LICENSE +0 -0
- {pyedb-0.19.0.dist-info → pyedb-0.21.0.dist-info}/WHEEL +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
pyedb/__init__.py,sha256=
|
|
1
|
+
pyedb/__init__.py,sha256=S4iRRRDvToNtNx3Y5G5p7sWCL2OSeJkF1I11skVPtoE,1521
|
|
2
2
|
pyedb/edb_logger.py,sha256=yNkXnoL2me7ubLT6O6r6ElVnkZ1g8fmfFYC_2XJZ1Sw,14950
|
|
3
3
|
pyedb/exceptions.py,sha256=n94xluzUks6BA24vd_L6HkrvoP_H_l6__hQmqzdCyPo,111
|
|
4
|
-
pyedb/siwave.py,sha256=
|
|
4
|
+
pyedb/siwave.py,sha256=_AxkSZ-7P9aVmizWUWmwcqI07rpGsIZ_fYsd1WNjR6w,12986
|
|
5
5
|
pyedb/workflow.py,sha256=Y0ya4FUHwlSmoLP45zjdYLsSpyKduHUSpT9GGK9MGd8,814
|
|
6
6
|
pyedb/configuration/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
7
|
pyedb/configuration/cfg_boundaries.py,sha256=ckb-OfaObItwy-xc0LqkHJyeCfKC5vg668olPjZbaKo,6647
|
|
@@ -22,29 +22,31 @@ pyedb/configuration/cfg_stackup.py,sha256=CX7uNN5QRoYW_MOObknP8003YchTS7PH9Oee7F
|
|
|
22
22
|
pyedb/configuration/configuration.py,sha256=coJU6y-y7VOGmH_NPXdEdoBdD_aZzYFx7sgvLKNm02E,12629
|
|
23
23
|
pyedb/dotnet/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
24
|
pyedb/dotnet/clr_module.py,sha256=Mo13Of3DVSA5HR-5xZEXOiHApIKy52CUxtJ2gPkEu1A,3406
|
|
25
|
-
pyedb/dotnet/edb.py,sha256=
|
|
25
|
+
pyedb/dotnet/edb.py,sha256=18OY0I1Hhpx4hVVubGDlzqqeyEjyFV_sV8S7xYBAIvg,179320
|
|
26
26
|
pyedb/dotnet/application/Variables.py,sha256=v_fxFJ6xjyyhk4uaMzWAbP-1FhXGuKsVNuyV1huaPME,77867
|
|
27
27
|
pyedb/dotnet/application/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
28
28
|
pyedb/dotnet/edb_core/__init__.py,sha256=nIRLJ8VZLcMAp12zmGsnZ5x2BEEl7q_Kj_KAOXxVjpQ,52
|
|
29
|
-
pyedb/dotnet/edb_core/components.py,sha256=
|
|
30
|
-
pyedb/dotnet/edb_core/general.py,sha256=
|
|
31
|
-
pyedb/dotnet/edb_core/hfss.py,sha256=
|
|
32
|
-
pyedb/dotnet/edb_core/
|
|
29
|
+
pyedb/dotnet/edb_core/components.py,sha256=9IkBhWaevfxKF6MdSxQQ4L4LcWA-UEEwVxB8jLAvHbU,106796
|
|
30
|
+
pyedb/dotnet/edb_core/general.py,sha256=1g2bUekyUbu8p8zCinT4eI7uqRGIK8tY8mfuFePGRGg,4415
|
|
31
|
+
pyedb/dotnet/edb_core/hfss.py,sha256=Sh417lko4COeeod1C8sbBp6GkoTENEbALdYFOePnOcg,68535
|
|
32
|
+
pyedb/dotnet/edb_core/layout_obj_instance.py,sha256=Pd8rfdO3b6HLFGwXBMw-tfE4LPIcW_9_X5KEdFaiito,1407
|
|
33
33
|
pyedb/dotnet/edb_core/layout_validation.py,sha256=aOYgttlJ007uGG94NnhZR_iNHTuCI5CHkHWWTcm9n-E,12617
|
|
34
|
-
pyedb/dotnet/edb_core/materials.py,sha256=
|
|
35
|
-
pyedb/dotnet/edb_core/
|
|
36
|
-
pyedb/dotnet/edb_core/
|
|
37
|
-
pyedb/dotnet/edb_core/
|
|
38
|
-
pyedb/dotnet/edb_core/
|
|
39
|
-
pyedb/dotnet/edb_core/
|
|
34
|
+
pyedb/dotnet/edb_core/materials.py,sha256=0a5RxfuJ-tzkyDLxfSIv1cBf-Di7JMrTsW_uBRjUQgw,43079
|
|
35
|
+
pyedb/dotnet/edb_core/modeler.py,sha256=riS4ynU6KGZM2dwnaW06nkyQATGkpEvuqtaqEpm0Z3o,55674
|
|
36
|
+
pyedb/dotnet/edb_core/net_class.py,sha256=4U6Cc1Gn7ZJ_ub9uKmtrsoz5wD1XS42afci3Y3ewRp0,11354
|
|
37
|
+
pyedb/dotnet/edb_core/nets.py,sha256=CnZxnK_-WwOMzmJAEalxj_Xo3KlTSJNtf7Fn9x093Ak,43147
|
|
38
|
+
pyedb/dotnet/edb_core/padstack.py,sha256=KSWFHgZK8r1BOOil6e7ZOjVHg-1TAX1IeiiInndjvzE,63178
|
|
39
|
+
pyedb/dotnet/edb_core/siwave.py,sha256=qhPTgFHaBThvlvch1po8uGsZdmOi1rVzEFHYv19DHPU,64317
|
|
40
|
+
pyedb/dotnet/edb_core/stackup.py,sha256=k_bU1ZmboISncZXD4dn8oPJF-ZQS-zZSAUTcOUYViSM,120510
|
|
40
41
|
pyedb/dotnet/edb_core/cell/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
|
-
pyedb/dotnet/edb_core/cell/
|
|
42
|
-
pyedb/dotnet/edb_core/cell/
|
|
43
|
-
pyedb/dotnet/edb_core/cell/
|
|
44
|
-
pyedb/dotnet/edb_core/cell/
|
|
42
|
+
pyedb/dotnet/edb_core/cell/connectable.py,sha256=rKWPATg0GCHi4d1ftu2V7WWhkDONjloCSPujssie5a8,2310
|
|
43
|
+
pyedb/dotnet/edb_core/cell/layout.py,sha256=g9vMzja9VT9iLFJDz75zYWuE5FfdjquYWysoaIgu1kY,11877
|
|
44
|
+
pyedb/dotnet/edb_core/cell/layout_obj.py,sha256=fVLjHMsokK2eEILTBo_9lEpjJCP0bkdk5RFZclnTi4o,3088
|
|
45
|
+
pyedb/dotnet/edb_core/cell/primitive.py,sha256=WHiX5ROLMYf71ZuX-4TrOUhRcI6RLiUPap7AzajO2YA,11704
|
|
46
|
+
pyedb/dotnet/edb_core/cell/voltage_regulator.py,sha256=-uAzuyERV6ca0bFRzdH4SllcpGY2D9JEdpS7RYaQt6c,5387
|
|
45
47
|
pyedb/dotnet/edb_core/cell/hierarchy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
46
|
-
pyedb/dotnet/edb_core/cell/hierarchy/component.py,sha256=
|
|
47
|
-
pyedb/dotnet/edb_core/cell/hierarchy/hierarchy_obj.py,sha256=
|
|
48
|
+
pyedb/dotnet/edb_core/cell/hierarchy/component.py,sha256=jvS1VXhm58zkSSPOBUazL67JxMGQjMGSC6pE4Hw_4DM,33859
|
|
49
|
+
pyedb/dotnet/edb_core/cell/hierarchy/hierarchy_obj.py,sha256=QZhkoSxRnewxvX8HJKHx-jcw-eIR3eudmDqFQbvltfM,1896
|
|
48
50
|
pyedb/dotnet/edb_core/cell/hierarchy/model.py,sha256=LwXE4VUfptG5rJ9gmAmye0hECBv7bUGtby1ZzNFkeT0,3198
|
|
49
51
|
pyedb/dotnet/edb_core/cell/hierarchy/netlist_model.py,sha256=fF6tY-6s-lW9EuvJ5sw3RlIkjuoSjeZbrNk5wG-_hzM,1356
|
|
50
52
|
pyedb/dotnet/edb_core/cell/hierarchy/pin_pair_model.py,sha256=4zo2ut6UAeJqxw70n1luWg2QGEeuMRoVcEcdC9bYG50,3846
|
|
@@ -53,10 +55,10 @@ pyedb/dotnet/edb_core/cell/hierarchy/spice_model.py,sha256=SGiUcan2l0n8DGk3GtwCs
|
|
|
53
55
|
pyedb/dotnet/edb_core/cell/terminal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
54
56
|
pyedb/dotnet/edb_core/cell/terminal/bundle_terminal.py,sha256=TRPlsLH3_QOlDa5s8-tx399fkpJ3eJ8ictuCvlgkai0,2050
|
|
55
57
|
pyedb/dotnet/edb_core/cell/terminal/edge_terminal.py,sha256=MvmKA0JGVeqGx7smuMOVPaQ_PESJmi34oUL9OH5oKiY,2137
|
|
56
|
-
pyedb/dotnet/edb_core/cell/terminal/padstack_instance_terminal.py,sha256=
|
|
58
|
+
pyedb/dotnet/edb_core/cell/terminal/padstack_instance_terminal.py,sha256=HOMNvSj8thN3RgSg2eDb_CE8PpqkcVLrIYPZGOW-IQk,3803
|
|
57
59
|
pyedb/dotnet/edb_core/cell/terminal/pingroup_terminal.py,sha256=M5qZNH-MLDkgSJABNVKmnBLyLgezm2fqJGl70EyPVUo,2586
|
|
58
|
-
pyedb/dotnet/edb_core/cell/terminal/point_terminal.py,sha256=
|
|
59
|
-
pyedb/dotnet/edb_core/cell/terminal/terminal.py,sha256=
|
|
60
|
+
pyedb/dotnet/edb_core/cell/terminal/point_terminal.py,sha256=DafZBGjUx_OE8gZWcUKPh4cH3BRkJSj9XolhzIPOE3I,2400
|
|
61
|
+
pyedb/dotnet/edb_core/cell/terminal/terminal.py,sha256=eeM9peo4Jfu9WWwCoRX8X0dRdW3rM_aqXRuqWw_8fi8,19228
|
|
60
62
|
pyedb/dotnet/edb_core/definition/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
61
63
|
pyedb/dotnet/edb_core/definition/component_def.py,sha256=tYZ4L6DigwSjdQJ5AlqEbordPVZyJ6hYFNc6b3QnJ18,6514
|
|
62
64
|
pyedb/dotnet/edb_core/definition/component_model.py,sha256=PhT5voy3qk8fsp94dK6TN_Zxz5aXwO_mmeIwWm7C_Hs,1944
|
|
@@ -64,18 +66,17 @@ pyedb/dotnet/edb_core/definition/definition_obj.py,sha256=QKlR8DNpNaOd00sY1ybEZA
|
|
|
64
66
|
pyedb/dotnet/edb_core/definition/definitions.py,sha256=9Zjl5LNidDBk07m-QGpducWfFsyE52pScI8PC5f0doU,2383
|
|
65
67
|
pyedb/dotnet/edb_core/definition/package_def.py,sha256=UoYNdfrB5j0rG4OK94yE25dCTzHcpDjSEn4L2yF10YY,6145
|
|
66
68
|
pyedb/dotnet/edb_core/dotnet/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
67
|
-
pyedb/dotnet/edb_core/dotnet/database.py,sha256=
|
|
68
|
-
pyedb/dotnet/edb_core/dotnet/
|
|
69
|
-
pyedb/dotnet/edb_core/dotnet/primitive.py,sha256=8UYyQ9pXINHvy0ORizxjiAA-iAoLxIt5-ekN4Cr3PgU,53730
|
|
69
|
+
pyedb/dotnet/edb_core/dotnet/database.py,sha256=xyISmY691ItgM_Fqos3Bra4BRnxCJVU4M1Ueg4V9ixg,37324
|
|
70
|
+
pyedb/dotnet/edb_core/dotnet/primitive.py,sha256=k9ltBCWtekt-iiZj8r0yEDp2dWSxKm19SaMqDGkL-ac,54135
|
|
70
71
|
pyedb/dotnet/edb_core/edb_data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
71
|
-
pyedb/dotnet/edb_core/edb_data/control_file.py,sha256=
|
|
72
|
+
pyedb/dotnet/edb_core/edb_data/control_file.py,sha256=_W5DDBFvm4gTq8yCvhzfiWUsfpQK4PnLkjmntIYvW8E,48217
|
|
72
73
|
pyedb/dotnet/edb_core/edb_data/design_options.py,sha256=RO9ip-T5Bfxpsl97_QEk0qDZsza3tLzIX2t25XLutys,2057
|
|
73
74
|
pyedb/dotnet/edb_core/edb_data/edbvalue.py,sha256=Vj_11HXsQUNavizKp5FicORm6cjhXRh9uvxhv_D_RJc,1977
|
|
74
75
|
pyedb/dotnet/edb_core/edb_data/hfss_extent_info.py,sha256=hKFHWUl0_OCMEZJbQn5c8Y1a-BYKr8nAycIlrCoeufk,13005
|
|
75
76
|
pyedb/dotnet/edb_core/edb_data/hfss_pi_simulation_setup_data.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
76
77
|
pyedb/dotnet/edb_core/edb_data/layer_data.py,sha256=SBx2IKtbSn4AvySw4b6IGu3rbb6F-nEoaiqhUwarpLY,25706
|
|
77
78
|
pyedb/dotnet/edb_core/edb_data/nets_data.py,sha256=ICF61kgST9Rm4hUqU3KUh8FMNlrZEVQO1LqZR1VADkA,9979
|
|
78
|
-
pyedb/dotnet/edb_core/edb_data/padstacks_data.py,sha256=
|
|
79
|
+
pyedb/dotnet/edb_core/edb_data/padstacks_data.py,sha256=CcDbP9tko2m88oJ4RPPPsd5kujSUR57RDdZxGo7XLfc,78359
|
|
79
80
|
pyedb/dotnet/edb_core/edb_data/ports.py,sha256=wr2RQi8VExuNIVmnp7c4VpTIhODgthmJmHr01zO4ueo,8873
|
|
80
81
|
pyedb/dotnet/edb_core/edb_data/primitives_data.py,sha256=i6mC-y19iiO9Tr4w3A4Usrd_flyeUSPnxLCz980qFyA,43442
|
|
81
82
|
pyedb/dotnet/edb_core/edb_data/raptor_x_simulation_setup_data.py,sha256=P37-OIsc8TuTC_s3CXRmvZcJqxAftHA7SATfEyoAnMM,20953
|
|
@@ -94,23 +95,23 @@ pyedb/dotnet/edb_core/sim_setup_data/data/settings.py,sha256=u2EhL_netNF4FTQicWy
|
|
|
94
95
|
pyedb/dotnet/edb_core/sim_setup_data/data/sim_setup_info.py,sha256=yfSIsI7G5qgTqkc7UzWvw2-phZG2kawtQAxsXMiEvOE,4479
|
|
95
96
|
pyedb/dotnet/edb_core/sim_setup_data/data/simulation_settings.py,sha256=9ji4UQzgTTOExgGMpCB8zgvovBjhedwqLoN1MzUHOks,10727
|
|
96
97
|
pyedb/dotnet/edb_core/sim_setup_data/data/siw_dc_ir_settings.py,sha256=caRhPnon_jN5xXznLy57JPD5lGC7DS8KqYtXSC19nJ4,8627
|
|
97
|
-
pyedb/dotnet/edb_core/sim_setup_data/data/sweep_data.py,sha256=
|
|
98
|
+
pyedb/dotnet/edb_core/sim_setup_data/data/sweep_data.py,sha256=jPxWKRyszCrw9iqiJ5VldVTCxrCC0cIxjihe0BsDNEw,18074
|
|
98
99
|
pyedb/dotnet/edb_core/sim_setup_data/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
99
100
|
pyedb/dotnet/edb_core/sim_setup_data/io/siwave.py,sha256=92iEZrhA2CUTZ7wynL5nxVVwi2XKKqppx7AcvvoqK6E,31387
|
|
100
101
|
pyedb/dotnet/edb_core/utilities/__init__.py,sha256=8jByHkoaowAYQTCww-zRrTQmN061fLz_OHjTLSrzQQY,58
|
|
101
102
|
pyedb/dotnet/edb_core/utilities/heatsink.py,sha256=7G7Yx9TxbL5EAiR51MnhdRiAQBVf-d0hKsXDw5OYX2Q,2220
|
|
102
103
|
pyedb/dotnet/edb_core/utilities/hfss_simulation_setup.py,sha256=_0H_7ypwrR5kj4LFhJLRvG9PV1lemvRnxRBJuOcGeXM,14074
|
|
103
104
|
pyedb/dotnet/edb_core/utilities/obj_base.py,sha256=lufR0sZj0QfZ2wlNvLL6aM1KVqCNY2A7taPPdWcK20w,3312
|
|
104
|
-
pyedb/dotnet/edb_core/utilities/simulation_setup.py,sha256=
|
|
105
|
+
pyedb/dotnet/edb_core/utilities/simulation_setup.py,sha256=5-lpTiErVpRI6Os5iNpa1SIrGCjgHHUgJ0ozI5pVLIs,12236
|
|
105
106
|
pyedb/dotnet/edb_core/utilities/siwave_simulation_setup.py,sha256=BXuYJ7KQMgKiQnw6_Dft2aT11PYz6M7C-NJrMS8ZFX0,12764
|
|
106
107
|
pyedb/generic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
107
108
|
pyedb/generic/constants.py,sha256=prWLZH0-SeBIVK6LHZ4SGZFQCofuym2TuQYfdqwhuSQ,28956
|
|
108
109
|
pyedb/generic/data_handlers.py,sha256=rfqNe2tPCJRqhXZBCyWxRFu5SjQ92Cdzq4l0TDC4Pvw,6905
|
|
109
110
|
pyedb/generic/design_types.py,sha256=qHyIaz-Vd3ra4CP9xER76-nGRonYmSAiI3Dr8YPUeH8,4354
|
|
110
|
-
pyedb/generic/filesystem.py,sha256=
|
|
111
|
-
pyedb/generic/general_methods.py,sha256=
|
|
112
|
-
pyedb/generic/plot.py,sha256=
|
|
113
|
-
pyedb/generic/process.py,sha256=
|
|
111
|
+
pyedb/generic/filesystem.py,sha256=gqYh3xet_JjBOFopxCJldgeUItFRbBpVVi2ACnveCYw,3757
|
|
112
|
+
pyedb/generic/general_methods.py,sha256=HfDQEiQkNng4apFUbStsEfvKDbPkZ0Oz9Wjlqqz5LSI,42798
|
|
113
|
+
pyedb/generic/plot.py,sha256=0x2-v_xNSoy07rILKGQStQMTUIYrvJEvFO1n9KuSfAc,4717
|
|
114
|
+
pyedb/generic/process.py,sha256=DiOanqNq5APYryBYo3Wt4mQ54cBR9-ULrrIOqGE4S8c,11107
|
|
114
115
|
pyedb/generic/settings.py,sha256=QTX5OVZ8sVPIy_QaSxRODUWvoXkYkVpzh3l6pQPseKQ,9220
|
|
115
116
|
pyedb/ipc2581/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
116
117
|
pyedb/ipc2581/history_record.py,sha256=s1GjcIgnZHlNCBOeEERBDX7xDuqhXmh2Ctt3ccFDWso,2739
|
|
@@ -162,7 +163,7 @@ pyedb/ipc2581/ecad/cad_data/stackup_layer.py,sha256=SMkX9wrHdxbVn6hcPqlAbWz14IKi
|
|
|
162
163
|
pyedb/ipc2581/ecad/cad_data/step.py,sha256=p4X0LGECdI4dTtxgh0oAkjQtd6G7FrZYwW-qrsRyrMM,12296
|
|
163
164
|
pyedb/misc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
164
165
|
pyedb/misc/aedtlib_personalib_install.py,sha256=eCVAdEoriMU92bZwPzY9Aig85cBbUO0J8J4RMtMkY_o,1759
|
|
165
|
-
pyedb/misc/downloads.py,sha256=
|
|
166
|
+
pyedb/misc/downloads.py,sha256=j9jJhwGTTJwm4WWaCSEhGZzOGyOyHhBAFexx0NtD4Uw,10824
|
|
166
167
|
pyedb/misc/misc.py,sha256=3vyQ-l7lKUxdpdc_kGc7QNwu_EkmD8rRxe01Zx5Drr4,3315
|
|
167
168
|
pyedb/misc/pyedb.runtimeconfig.json,sha256=2xof-Vl0hY2VOs1KkMSReTMZACsZhcmPmyHXukfb-oY,301
|
|
168
169
|
pyedb/misc/utilities.py,sha256=w8mSGtgBlakcdOtWyP_NY0hUu_hxannOQOBvVxn02Fc,465
|
|
@@ -181,7 +182,7 @@ pyedb/misc/siw_feature_config/xtalk_scan/scan_config.py,sha256=YmYI6WTQulL5Uf8Wx
|
|
|
181
182
|
pyedb/misc/siw_feature_config/xtalk_scan/td_xtalk_config.py,sha256=KHa-UqcXuabiVfT2CV-UvWl5Q2qGYHF2Ye9azcAlnXc,3966
|
|
182
183
|
pyedb/modeler/geometry_operators.py,sha256=iXNGfp3oMAxc6Ij_jatawR9NAKksMfnmWTaoHQVGX80,72699
|
|
183
184
|
pyedb/siwave_core/icepak.py,sha256=WnZ-t8mik7LDY06V8hZFV-TxRZJQWK7bu_8Ichx-oBs,5206
|
|
184
|
-
pyedb-0.
|
|
185
|
-
pyedb-0.
|
|
186
|
-
pyedb-0.
|
|
187
|
-
pyedb-0.
|
|
185
|
+
pyedb-0.21.0.dist-info/LICENSE,sha256=qQWivZ12ETN5l3QxvTARY-QI5eoRRlyHdwLlAj0Bg5I,1089
|
|
186
|
+
pyedb-0.21.0.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
|
|
187
|
+
pyedb-0.21.0.dist-info/METADATA,sha256=ZliD8Vr2_oWKC1yECHZcN1FNkVB-W7sWv5KAS3uMLB4,8318
|
|
188
|
+
pyedb-0.21.0.dist-info/RECORD,,
|
|
@@ -1,260 +0,0 @@
|
|
|
1
|
-
# Copyright (C) 2023 - 2024 ANSYS, Inc. and/or its affiliates.
|
|
2
|
-
# SPDX-License-Identifier: MIT
|
|
3
|
-
#
|
|
4
|
-
#
|
|
5
|
-
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
# of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
# in the Software without restriction, including without limitation the rights
|
|
8
|
-
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
# copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
# furnished to do so, subject to the following conditions:
|
|
11
|
-
#
|
|
12
|
-
# The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
# copies or substantial portions of the Software.
|
|
14
|
-
#
|
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
# SOFTWARE.
|
|
22
|
-
|
|
23
|
-
from pyedb.dotnet.edb_core.dotnet.database import NetDotNet
|
|
24
|
-
from pyedb.dotnet.edb_core.dotnet.primitive import cast
|
|
25
|
-
from pyedb.dotnet.edb_core.general import convert_py_list_to_net_list
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
class LayoutDotNet:
|
|
29
|
-
"""Layout."""
|
|
30
|
-
|
|
31
|
-
def __init__(self, app):
|
|
32
|
-
"""Initialize a new layout.
|
|
33
|
-
|
|
34
|
-
Parameters
|
|
35
|
-
----------
|
|
36
|
-
msg : EDBObjMessage
|
|
37
|
-
"""
|
|
38
|
-
self._app = app
|
|
39
|
-
self._cell = app._active_cell
|
|
40
|
-
self._edb_api = app._edb
|
|
41
|
-
self._layout = self._cell.GetLayout()
|
|
42
|
-
self._layout_instance = None
|
|
43
|
-
|
|
44
|
-
@property
|
|
45
|
-
def cell(self):
|
|
46
|
-
""":class:`Cell <ansys.edb.layout.Cell>`: Owning cell for this layout.
|
|
47
|
-
|
|
48
|
-
Read-Only.
|
|
49
|
-
"""
|
|
50
|
-
return self._cell
|
|
51
|
-
|
|
52
|
-
@property
|
|
53
|
-
def layer_collection(self):
|
|
54
|
-
""":class:`LayerCollection <ansys.edb.layer.LayerCollection>` : Layer collection of this layout."""
|
|
55
|
-
return self._layout.GetLayerCollection()
|
|
56
|
-
|
|
57
|
-
@layer_collection.setter
|
|
58
|
-
def layer_collection(self, layer_collection):
|
|
59
|
-
"""Set layer collection."""
|
|
60
|
-
self._layout.SetLayerCollection(layer_collection)
|
|
61
|
-
|
|
62
|
-
@property
|
|
63
|
-
def primitives(self):
|
|
64
|
-
"""List of primitives.Read-Only.
|
|
65
|
-
|
|
66
|
-
Returns
|
|
67
|
-
-------
|
|
68
|
-
list of :class:`dotnet.edb_core.dotnet.primitive.PrimitiveDotNet` cast objects.
|
|
69
|
-
"""
|
|
70
|
-
return [cast(self._app, i) for i in list(self._layout.Primitives)]
|
|
71
|
-
|
|
72
|
-
@property
|
|
73
|
-
def padstack_instances(self):
|
|
74
|
-
""":obj:`list` of :class:`PadstackInstance <ansys.edb.primitive.PadstackInstance>` : List of all padstack \
|
|
75
|
-
instances in this layout.
|
|
76
|
-
|
|
77
|
-
Read-Only.
|
|
78
|
-
"""
|
|
79
|
-
return list(self._layout.PadstackInstances)
|
|
80
|
-
|
|
81
|
-
@property
|
|
82
|
-
def terminals(self):
|
|
83
|
-
""":obj:`list` of :class:`Terminal <ansys.edb.terminal.Terminal>` : List of all the terminals in this layout.
|
|
84
|
-
|
|
85
|
-
Read-Only.
|
|
86
|
-
"""
|
|
87
|
-
return list(self._layout.Terminals)
|
|
88
|
-
|
|
89
|
-
@property
|
|
90
|
-
def cell_instances(self):
|
|
91
|
-
""":obj:`list` of :class:`CellInstance <ansys.edb.hierarchy.CellInstances>` : List of the cell instances in \
|
|
92
|
-
this layout.
|
|
93
|
-
|
|
94
|
-
Read-Only.
|
|
95
|
-
"""
|
|
96
|
-
return list(self._layout.CellInstances)
|
|
97
|
-
|
|
98
|
-
@property
|
|
99
|
-
def nets(self):
|
|
100
|
-
""":obj:`list` of :class:`Net <ansys.edb.net.Net>` : List of all the nets in this layout.
|
|
101
|
-
|
|
102
|
-
Read-Only.
|
|
103
|
-
"""
|
|
104
|
-
return [NetDotNet(self._app, i) for i in self._layout.Nets]
|
|
105
|
-
|
|
106
|
-
@property
|
|
107
|
-
def groups(self):
|
|
108
|
-
""":obj:`list` of :class:`Group <ansys.edb.hierarchy.Group>` : List of all the groups in this layout.
|
|
109
|
-
|
|
110
|
-
Read-Only.
|
|
111
|
-
"""
|
|
112
|
-
return list(self._layout.Groups)
|
|
113
|
-
|
|
114
|
-
@property
|
|
115
|
-
def net_classes(self):
|
|
116
|
-
""":obj:`list` of :class:`NetClass <ansys.edb.net.NetClass>` : List of all the netclasses in this layout.
|
|
117
|
-
|
|
118
|
-
Read-Only.
|
|
119
|
-
"""
|
|
120
|
-
return list(self._layout.NetClasses)
|
|
121
|
-
|
|
122
|
-
@property
|
|
123
|
-
def differential_pairs(self):
|
|
124
|
-
""":obj:`list` of :class:`DifferentialPair <ansys.edb.net.DifferentialPair>` : List of all the differential \
|
|
125
|
-
pairs in this layout.
|
|
126
|
-
|
|
127
|
-
Read-Only.
|
|
128
|
-
"""
|
|
129
|
-
return list(self._layout.DifferentialPairs)
|
|
130
|
-
|
|
131
|
-
@property
|
|
132
|
-
def pin_groups(self):
|
|
133
|
-
""":obj:`list` of :class:`PinGroup <ansys.edb.hierarchy.PinGroup>` : List of all the pin groups in this \
|
|
134
|
-
layout.
|
|
135
|
-
|
|
136
|
-
Read-Only.
|
|
137
|
-
"""
|
|
138
|
-
return list(self._layout.PinGroups)
|
|
139
|
-
|
|
140
|
-
@property
|
|
141
|
-
def voltage_regulators(self):
|
|
142
|
-
""":obj:`list` of :class:`VoltageRegulator <ansys.edb.hierarchy.VoltageRegulator>` : List of all the voltage \
|
|
143
|
-
regulators in this layout.
|
|
144
|
-
|
|
145
|
-
Read-Only.
|
|
146
|
-
"""
|
|
147
|
-
return list(self._layout.VoltageRegulators)
|
|
148
|
-
|
|
149
|
-
@property
|
|
150
|
-
def extended_nets(self):
|
|
151
|
-
"""
|
|
152
|
-
Get the list of extended nets in the layout. Read-Only.
|
|
153
|
-
|
|
154
|
-
Returns
|
|
155
|
-
-------
|
|
156
|
-
List[:class:`ExtendedNet <ansys.edb.net.ExtendedNet>`]
|
|
157
|
-
A list of extended nets.
|
|
158
|
-
|
|
159
|
-
"""
|
|
160
|
-
return list(self._layout.ExtendedNets)
|
|
161
|
-
|
|
162
|
-
def expanded_extent(self, nets, extent, expansion_factor, expansion_unitless, use_round_corner, num_increments):
|
|
163
|
-
"""Get an expanded polygon for the Nets collection.
|
|
164
|
-
|
|
165
|
-
Parameters
|
|
166
|
-
----------
|
|
167
|
-
nets : list[:class:`Net <ansys.edb.net.Net>`]
|
|
168
|
-
A list of nets.
|
|
169
|
-
extent : :class:`ExtentType <ansys.edb.geometry.ExtentType>`
|
|
170
|
-
Geometry extent type for expansion.
|
|
171
|
-
expansion_factor : float
|
|
172
|
-
Expansion factor for the polygon union. No expansion occurs if the `expansion_factor` is less than or \
|
|
173
|
-
equal to 0.
|
|
174
|
-
expansion_unitless : bool
|
|
175
|
-
When unitless, the distance by which the extent expands is the factor multiplied by the longer dimension\
|
|
176
|
-
(X or Y distance) of the expanded object/net.
|
|
177
|
-
use_round_corner : bool
|
|
178
|
-
Whether to use round or sharp corners.
|
|
179
|
-
For round corners, this returns a bounding box if its area is within 10% of the rounded expansion's area.
|
|
180
|
-
num_increments : int
|
|
181
|
-
Number of iterations desired to reach the full expansion.
|
|
182
|
-
|
|
183
|
-
Returns
|
|
184
|
-
-------
|
|
185
|
-
:class:`PolygonData <ansys.edb.geometry.PolygonData>`
|
|
186
|
-
|
|
187
|
-
Notes
|
|
188
|
-
-----
|
|
189
|
-
Method returns the expansion of the contour, so any voids within expanded objects are ignored.
|
|
190
|
-
"""
|
|
191
|
-
return self._layout.GetExpandedExtentFromNets(
|
|
192
|
-
convert_py_list_to_net_list(nets),
|
|
193
|
-
extent,
|
|
194
|
-
expansion_factor,
|
|
195
|
-
expansion_unitless,
|
|
196
|
-
use_round_corner,
|
|
197
|
-
num_increments,
|
|
198
|
-
)
|
|
199
|
-
|
|
200
|
-
def convert_primitives_to_vias(self, primitives, is_pins=False):
|
|
201
|
-
"""Convert a list of primitives into vias or pins.
|
|
202
|
-
|
|
203
|
-
Parameters
|
|
204
|
-
----------
|
|
205
|
-
primitives : list[:class:`Primitive <ansys.edb.primitive.Primitive>`]
|
|
206
|
-
List of primitives to convert.
|
|
207
|
-
is_pins : bool, optional
|
|
208
|
-
True for pins, false for vias (default).
|
|
209
|
-
"""
|
|
210
|
-
self._layout.ConvertPrimitivesToVias(convert_py_list_to_net_list(primitives), is_pins)
|
|
211
|
-
|
|
212
|
-
@property
|
|
213
|
-
def port_reference_terminals_connected(self):
|
|
214
|
-
""":obj:`bool`: Determine if port reference terminals are connected, applies to lumped ports and circuit ports.
|
|
215
|
-
|
|
216
|
-
True if they are connected, False otherwise.
|
|
217
|
-
Read-Only.
|
|
218
|
-
"""
|
|
219
|
-
return self._layout.ArePortReferenceTerminalsConnected()
|
|
220
|
-
|
|
221
|
-
@property
|
|
222
|
-
def zone_primitives(self):
|
|
223
|
-
""":obj:`list` of :class:`Primitive <ansys.edb.primitive.Primitive>` : List of all the primitives in \
|
|
224
|
-
:term:`zones <Zone>`.
|
|
225
|
-
|
|
226
|
-
Read-Only.
|
|
227
|
-
"""
|
|
228
|
-
return list(self._layout.GetZonePrimitives())
|
|
229
|
-
|
|
230
|
-
@property
|
|
231
|
-
def fixed_zone_primitive(self):
|
|
232
|
-
""":class:`Primitive <ansys.edb.primitive.Primitive>` : Fixed :term:`zones <Zone>` primitive."""
|
|
233
|
-
return list(self._layout.GetFixedZonePrimitive())
|
|
234
|
-
|
|
235
|
-
@fixed_zone_primitive.setter
|
|
236
|
-
def fixed_zone_primitive(self, value):
|
|
237
|
-
self._layout.SetFixedZonePrimitives(value)
|
|
238
|
-
|
|
239
|
-
@property
|
|
240
|
-
def board_bend_defs(self):
|
|
241
|
-
""":obj:`list` of :class:`BoardBendDef <ansys.edb.primitive.BoardBendDef>` : List of all the board bend \
|
|
242
|
-
definitions in this layout.
|
|
243
|
-
|
|
244
|
-
Read-Only.
|
|
245
|
-
"""
|
|
246
|
-
return list(self._layout.GetBoardBendDefs())
|
|
247
|
-
|
|
248
|
-
def synchronize_bend_manager(self):
|
|
249
|
-
"""Synchronize bend manager."""
|
|
250
|
-
self._layout.SynchronizeBendManager()
|
|
251
|
-
|
|
252
|
-
@property
|
|
253
|
-
def layout_instance(self):
|
|
254
|
-
""":class:`LayoutInstance <ansys.edb.layout_instance.LayoutInstance>` : Layout instance of this layout.
|
|
255
|
-
|
|
256
|
-
Read-Only.
|
|
257
|
-
"""
|
|
258
|
-
if not self._layout_instance:
|
|
259
|
-
self._layout_instance = self._layout.GetLayoutInstance()
|
|
260
|
-
return self._layout_instance
|
|
File without changes
|
|
File without changes
|