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.

Files changed (40) hide show
  1. pyedb/__init__.py +1 -1
  2. pyedb/dotnet/edb.py +311 -335
  3. pyedb/dotnet/edb_core/cell/connectable.py +64 -0
  4. pyedb/dotnet/edb_core/cell/hierarchy/component.py +12 -10
  5. pyedb/dotnet/edb_core/cell/hierarchy/hierarchy_obj.py +1 -1
  6. pyedb/dotnet/edb_core/cell/layout.py +253 -105
  7. pyedb/dotnet/edb_core/cell/layout_obj.py +4 -49
  8. pyedb/dotnet/edb_core/cell/primitive.py +14 -2
  9. pyedb/dotnet/edb_core/cell/terminal/padstack_instance_terminal.py +1 -1
  10. pyedb/dotnet/edb_core/cell/terminal/point_terminal.py +1 -1
  11. pyedb/dotnet/edb_core/cell/terminal/terminal.py +1 -19
  12. pyedb/dotnet/edb_core/cell/voltage_regulator.py +2 -16
  13. pyedb/dotnet/edb_core/components.py +14 -13
  14. pyedb/dotnet/edb_core/dotnet/database.py +5 -10
  15. pyedb/dotnet/edb_core/dotnet/primitive.py +11 -1
  16. pyedb/dotnet/edb_core/edb_data/control_file.py +2 -12
  17. pyedb/dotnet/edb_core/edb_data/padstacks_data.py +20 -33
  18. pyedb/dotnet/edb_core/general.py +6 -9
  19. pyedb/dotnet/edb_core/hfss.py +4 -8
  20. pyedb/dotnet/edb_core/layout_obj_instance.py +30 -0
  21. pyedb/dotnet/edb_core/materials.py +4 -11
  22. pyedb/dotnet/edb_core/{layout.py → modeler.py} +153 -7
  23. pyedb/dotnet/edb_core/net_class.py +7 -8
  24. pyedb/dotnet/edb_core/nets.py +3 -9
  25. pyedb/dotnet/edb_core/padstack.py +13 -9
  26. pyedb/dotnet/edb_core/sim_setup_data/data/sweep_data.py +5 -2
  27. pyedb/dotnet/edb_core/siwave.py +5 -6
  28. pyedb/dotnet/edb_core/stackup.py +18 -23
  29. pyedb/dotnet/edb_core/utilities/simulation_setup.py +1 -4
  30. pyedb/generic/filesystem.py +2 -8
  31. pyedb/generic/general_methods.py +4 -10
  32. pyedb/generic/plot.py +26 -29
  33. pyedb/generic/process.py +2 -6
  34. pyedb/misc/downloads.py +3 -40
  35. pyedb/siwave.py +2 -5
  36. {pyedb-0.19.0.dist-info → pyedb-0.21.0.dist-info}/METADATA +2 -2
  37. {pyedb-0.19.0.dist-info → pyedb-0.21.0.dist-info}/RECORD +39 -38
  38. pyedb/dotnet/edb_core/dotnet/layout.py +0 -260
  39. {pyedb-0.19.0.dist-info → pyedb-0.21.0.dist-info}/LICENSE +0 -0
  40. {pyedb-0.19.0.dist-info → pyedb-0.21.0.dist-info}/WHEEL +0 -0
@@ -1,7 +1,7 @@
1
- pyedb/__init__.py,sha256=0nhcaqt5oskcLcgT9HT6TQDnY2DqX8SQd5foPLkgj50,1521
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=p-j2AmJ3RPG9IKieDxiVPRhzRlXbjpxENP9GHAgT6l8,13086
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=tH8Xpvy1WU71NKeFgk1uLTDRh_LbdfqyFhCQwHt45Kc,182455
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=cj-G8fvI6YnrSMWjZKKveYwo2Dz49_AJuShlkfTFK-0,106479
30
- pyedb/dotnet/edb_core/general.py,sha256=f-WuyJY1nkfMEXm_fvU7poLfIi4axV1ha5Am1_m2eQ0,4572
31
- pyedb/dotnet/edb_core/hfss.py,sha256=paHUyp1QtnBHYtswiWEgeaYRvqDT-HdtFG6rmmkD2_w,68815
32
- pyedb/dotnet/edb_core/layout.py,sha256=OqhkmrKTLlIRVd74SBAjW3Wnb4uNhp6kwWtJI86j-98,50852
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=9HTDzxraPjAl3Jc7beHQfxe6axQY-tw6hDW1A05O2GM,43426
35
- pyedb/dotnet/edb_core/net_class.py,sha256=fAQoXsjn-Ae3gVYnUJO7yGZ6zEDEf_Zx5Mzq_h0UH7k,11582
36
- pyedb/dotnet/edb_core/nets.py,sha256=U1GhGJE1Ybd3IWJ7tn5chKW1E23EEZYiSiCK6ds76nk,43373
37
- pyedb/dotnet/edb_core/padstack.py,sha256=LNlbiBK5j9lYCS_0xsOHEPTTXRqx0cr4z_A6Ml1Me5g,62993
38
- pyedb/dotnet/edb_core/siwave.py,sha256=FxhvigCavS-9ldSrcu2KEuYrNF30Ra4RT7NZPUlDMY4,64328
39
- pyedb/dotnet/edb_core/stackup.py,sha256=BbfamGczV7j0B2knGPT4SJPZPGz7Rb1jgXTgMr-Yd1o,120808
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/layout.py,sha256=FhijLPgv5QBY62BwOF2JWr6SbyF1w5GZsTQVtRnrcUI,6165
42
- pyedb/dotnet/edb_core/cell/layout_obj.py,sha256=xFqY4FAHdiNZWexQRRGHYqWcQ5SvFR9kDxMBGXBqbW8,4180
43
- pyedb/dotnet/edb_core/cell/primitive.py,sha256=b_Uyu1cwO9Bf_vSazYLeBWSNaz-67pS-n7TCxKoFUyU,11379
44
- pyedb/dotnet/edb_core/cell/voltage_regulator.py,sha256=NQsM-0VnswjMokxsF2-cikobQ8MRoK_cWHYmEg9zi38,5714
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=vLJnPuJkGYafMBR-Cub_i2JDAmqWIeWPY14mGBLzvq4,33858
47
- pyedb/dotnet/edb_core/cell/hierarchy/hierarchy_obj.py,sha256=FLQeUqwW-VSvG8iaLeU50dSknfe-kEQB4s-GgVEFrFM,1895
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=t1qKIQhkTrEVF_wyafAJU0FkaT3BRKzbOWhNK6vD2Y4,3804
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=H0us5EbpIZ9SZUrh6z50qW6qo3jE_mwsQRBz_R65BP8,2380
59
- pyedb/dotnet/edb_core/cell/terminal/terminal.py,sha256=hFYmko638aQ71_rCfsrWNFGQlR08CUnNHAgRcvuMVxA,19742
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=m8QgX1E5elOoBTHt5zCsUKUFRuwru5r-31PmUE6rQr0,37653
68
- pyedb/dotnet/edb_core/dotnet/layout.py,sha256=_3lKFvEqA5S66yF_FSX5HbLsFNFpsigRsaN3Rj02pFk,8904
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=Z837yN4ZDWbtCW3eTWewVq_d_iY2jBSYx2QlL70-qog,48341
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=F_ig5kZJ_kYRajOcavVfAol-ArgTRTfrw8W16iMEhYM,79289
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=YeFy9YoYVaieaBTnoXwzo66LyAOrEb5LnNDKv-FAlh8,17970
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=PWI5cvQcNrELp2fj3SifZFqUD_6mhBjPhK7jDBo4HGE,12359
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=SwvXv1T05SrC9TPtK88joQoU5Ab7hYjrp5NncFeH7kM,3941
111
- pyedb/generic/general_methods.py,sha256=DzVyfAseL33vGip4oWbQya_n_sGzrrsnTPD7xK4ZRXc,43123
112
- pyedb/generic/plot.py,sha256=VWnTB2C9161gJNZb6sRhhz2hjenkJccboHPyKmvFRDc,4904
113
- pyedb/generic/process.py,sha256=9goCXrW3Su-8WuV5f6YqzY-Pl9EMFEd50KFN5AJXZGc,11206
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=90OxzuVSeJzz4m8tDLsxsnSipj6DUldG2E_3BW7oXMo,12223
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.19.0.dist-info/LICENSE,sha256=qQWivZ12ETN5l3QxvTARY-QI5eoRRlyHdwLlAj0Bg5I,1089
185
- pyedb-0.19.0.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
186
- pyedb-0.19.0.dist-info/METADATA,sha256=FPFEu4Oj7OzgJ-V0aH-11qrw0rbs7OKHhfme5ZpD7tY,8318
187
- pyedb-0.19.0.dist-info/RECORD,,
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