Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New feature CDL netlist export #1165

Merged
merged 11 commits into from
Jan 7, 2025

Conversation

ThomasZecha
Copy link
Contributor

New feature CDL netlist export based on current SPICE netlist export with needed component adaptions.
Details can be found in the commit descriptions.

ThomasZecha and others added 10 commits December 23, 2024 11:12
-introduced new parameter for cdl-type netlist export to Component::spice_netlist
 and all derivatives under components/

Signed-off-by: ThomasZecha <[email protected]>
-introduced new parameter for cdl-type netlist export to Component::spice_netlist
 derivatives under spicecomponents/

Signed-off-by: ThomasZecha <[email protected]>
-Added cdl_netlist() as default to class Component and as implementation
 to CDL supporting derived components. Besides some port-number checking
 this implementation is a wrapper for spice_netlist.
-Implemented necessary spice_netlist() adjustments to meet CDL requirements.
-Improved spice_netlist() derived default parameter 'isXyce' to be
 explicitly set.
-Fixed using of tabs/trailing spaces.

Signed-off-by: ThomasZecha <[email protected]>
-Introduced new parameter for cdl-type netlist export to Component::getExpression() and
 derivatives. It is used for CDL type specific netlist parameter export.

Signed-off-by: ThomasZecha <[email protected]>
-Changed Schematic::giveNodeNames() to public to be usable from new
 class CdlNetlistWriter
-Changed AbstractSpiceKernel::collectSpiceLibs() to public static since it
 don't use any instance member and to be usable from new class CdlNetlistWriter
-Added new class CdlNetlistWriter implementing CDL netlist export

Signed-off-by: ThomasZecha <[email protected]>
-integrated CdlNetlistWriter in application GUI

Signed-off-by: ThomasZecha <[email protected]>
-Fixed compiler warnings regarding missing virtual destructor

Signed-off-by: ThomasZecha <[email protected]>
-Fixed wrong usage of Q_ASSERT testing connect() result

Signed-off-by: ThomasZecha <[email protected]>
-introduced new type spicecompat::SpiceDialect to distinguish SPICE,
 Xyce and CDL
-adapt dependent components accordingly

Signed-off-by: ThomasZecha <[email protected]>
@ra3xdh ra3xdh added this to the 25.1.0 milestone Jan 1, 2025
@ra3xdh
Copy link
Owner

ra3xdh commented Jan 3, 2025

The merge is planned before v25.1.0 I will test this soon and report feedback.

@ra3xdh ra3xdh modified the milestones: 25.1.0, 25.2.0 Jan 6, 2025
@ra3xdh
Copy link
Owner

ra3xdh commented Jan 6, 2025

Shifted to the next release cycle. I am planning to prepare the v25.1.0 within next two weeks.

@ra3xdh ra3xdh modified the milestones: 25.2.0, 25.1.0 Jan 7, 2025
qucs/qucs.cpp Outdated Show resolved Hide resolved
Fixed typo
@ra3xdh ra3xdh merged commit ac24a25 into ra3xdh:current Jan 7, 2025
7 checks passed
@ra3xdh
Copy link
Owner

ra3xdh commented Jan 7, 2025

I have tested this PR and found no visible issues. Merging. You may consider to introduce CLI options to redirect the CDL netlist to file instead of compile time variable NETLIST_CDL_TO_CONSOLE. Look how it's done for Ngspice.

@ThomasZecha
Copy link
Contributor Author

I have tested this PR and found no visible issues. Merging. You may consider to introduce CLI options to redirect the CDL netlist to file instead of compile time variable NETLIST_CDL_TO_CONSOLE. Look how it's done for Ngspice.

Export netlist to a file is the standard, this is implemented for CDL too. The macro NETLIST_CDL_TO_CONSOLE is intended to redirect to console out. I agree it would be better to have a new command-line option replacing this. Is that what you mean?

@ra3xdh
Copy link
Owner

ra3xdh commented Jan 7, 2025

I agree it would be better to have a new command-line option replacing this.

Yes, it is exactly what I mean. You may implement CLI option in addition to possibility to export netlist from GUI.

@ra3xdh ra3xdh added the IHP label Jan 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants