MATLAB interface to our alternative implementation of OpenDSS, based on the DSS C-API library aiming for full COM compatibility on Windows, Linux and MacOS.
Since building MEX through GitHub Actions should now be possible, the next major release is planned to add a new MEX version of the bindings.
Much like what the current CallLib-based version, the functions from the C header are grouped by type. Enumerations, also generated from the header, complement that, so we can generate "driver" functions that include most of the boilerplate, copying the numeric arrays, and, additionally, the mapping from DSS.Error to MATLAB exceptions.
As a bonus, supporting MEX should enable Octave users to use DSS_MATLAB, as Octave doesn't support CallLib yet.
This new version will support the DSSContext API from DSS C-API, which should allow users to employ parfor (testing still required).
Since building MEX through GitHub Actions should now be possible, the next major release is planned to add a new MEX version of the bindings.
Much like what the current
CallLib
-based version, the functions from the C header are grouped by type. Enumerations, also generated from the header, complement that, so we can generate "driver" functions that include most of the boilerplate, copying the numeric arrays, and, additionally, the mapping from DSS.Error to MATLAB exceptions.As a bonus, supporting MEX should enable Octave users to use DSS_MATLAB, as Octave doesn't support
CallLib
yet.This new version will support the DSSContext API from DSS C-API, which should allow users to employ
parfor
(testing still required).