DSS Sharp v0.13.2
Version 0.13.2 is a minor release. On the C# side, the comment strings were updated, as well as the DSSJSONFlags enum. Read below regarding engine changes.
The package is available as an attachment here, and from NuGet: https://www.nuget.org/packages/dss_sharp/
Integrating the whole project into an existing solution is also possible, but remember to download the native dependencies.
For an example of usage, see https://github.com/dss-extensions/dss_sharp/tree/master/examples/WinFormsAppSample
What's this?
DSS Sharp is a member of the family of multi-platform language bindings based on the DSS C-API project, which exposes an alternative/customized implementation of the original EPRI's OpenDSS, with a custom API intended to replace and extend the functionality of the official COM object API, while also adding and improving some of the DSS engine internals. For other languages, check: DSS-Python, OpenDSSDirect.py, DSS MATLAB, and OpenDSSDirect.jl.
See more at https://dss-extensions.org/ and also our FAQ.
As with DSS-Python, this package tries to mimic the COM object structure to facilitate the transition and keep most of the existing code valid. The package is usually faster than the COM object for various tasks. Most of the missing features are related to the plotting methods from OpenDSS and A-Diakoptics.
Known differences and more
We maintain a list of important differences between the official COM implementation and DSS C-API at:
https://github.com/dss-extensions/dss_capi/blob/master/docs/known_differences.md
Credits / Acknowledgement
This project is derived from EPRI's OpenDSS and the same style of license (BSD style) is used. As OpenDSS, the project also depends on KLUSolve and SuiteSparse, licensed under the LGPL. The licenses are included in the installation packages.
See the DSS C-API project for more details and source files.
⚙️ DSS C-API Version 0.13.2
Minor release.
- Integrate some of the code ports from the official OpenDSS. A few changes were left in the
next_svn_merge
branch to be integrated after there is a new OpenDSS release. - Fix and complement some header code and comments.
- Refactor more of the internal code (huge merge still pending).
- Plotting: callback messages now include bus marker information. This is used only in Python at the moment.
- Add more error-checking to avoid accidental crashes in case of unexpected calls by the user code.
Text_CommandBlock
: rewritten, now reuses the internalDoRedirect
function, which allows block comments and also complements the error backtrace, when necessary.Obj_GetClassIdx
: fixed both header and implementation.- Build scripts updated. The version in the header is automatically updated on release.
- JSON exports: new flags implemented, and whole behavior adjusted to better exporting all classes, including some problematic cases See DSS-Extensions — JSON exports for notes and examples.