Skip to content

Commit c446052

Browse files
committed
Raise an exception for multiple opened designs
1 parent eb5b6fc commit c446052

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

src/ansys/aedt/core/filtersolutions.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,15 @@ class FilterDesignBase:
4949
This class has access to ideal filter attributes and calculated output parameters.
5050
"""
5151

52+
_active_design = None
53+
5254
def __init__(self, version=None):
55+
if FilterDesignBase._active_design is not None:
56+
raise Exception(
57+
"A design is already opened. Close the current design "
58+
"using 'design_name.close()' before opening a new one."
59+
)
60+
FilterDesignBase._active_design = self
5361
self.version = version if version else settings.aedt_version
5462
ansys.aedt.core.filtersolutions_core._dll_interface(version)
5563
self.attributes = Attributes()
@@ -59,6 +67,13 @@ def __init__(self, version=None):
5967
self.transmission_zeros_bandwidth = TransmissionZeros(TableFormat.BANDWIDTH)
6068
self.export_to_aedt = ExportToAedt()
6169

70+
def close(self):
71+
"""Closes the current design and clears the active design."""
72+
if FilterDesignBase._active_design == self:
73+
FilterDesignBase._active_design = None
74+
else:
75+
raise Exception("This design is not the active design.")
76+
6277

6378
class LumpedDesign(FilterDesignBase):
6479
"""Provides the `FilterSolutions` application interface for lumped filter designs.

0 commit comments

Comments
 (0)