What is New in Dinamica EGO 7.4.0

(ChangeLog compared to Dinamica EGO 7.3.0.)

Dinamica NUI (Application Graphical User Interface)

Removed mentions and licenses of tools that are no longer used by the application.

Added warning message for submodel submissions without description or documentation link to the store.

Dinamica Image Viewer

(None)

Dinamica NUI Utils (Graphical User Interface Utilities)

Fixed some analysis warning emitted by Netbeans.

Dinamica (Application Core and DLLs)

Definition of facility to control sleeping and waking up of tasks, similarly to how conditional variables work (wait and notify).

Formatting.

Definition of method to explicitly lock again a Lockable, if necessary.

Defined entities Premise/Future to easily transfer values between tasks; Added task cases.

Use string_view to optimize Script content allocation.

Changed notion of port peers to be related to ports themselves instead of using data holders.

Refactoring code related to copy-optimization of data flows between functors: Removed unnecessary functions, unused parameters and use of lambdas; Added test cases.

Fixed compilation warning: removed unused parameter.

Fixed typo.

Updated Descriptable so that the entity can own or not the names and descriptions given to it.

Fixed compilation warnings.

Removed definition of NameOwnedFunctor:

Used the ownership/non-ownership capabilities for name and description provided by Descriptable class;

Adapted HollowFunctor and SubmodelFunctor to NameOwnedFunctor no longer being necessary (that fixes a problem where retrieving functor and port information during destruction will return garbage due to NameOwnedFunctor being destructed before the base Functor).

Refactoring: definition and use of method to calculate progress percentage.

Fixed behavior to optimize the performance when loading maps using only single thread: use of MapIOHandler::readMap().

Added capability to MapIOHandler to report progress when reading and writing maps; Modified LoadMap, LoadCategoricalMap and SaveMap to use the capability provided by MapIOHandler to report progress when reading and writing maps.

Avoided copying the functions corresponding to CancellationTests when passing them around.

Added test to verify if GeoTiff images storing signed 8-bit integers are read correctly (how signed 8-bit integers are stored by images was changed by GDAL 3.7+).

Added additional test cases for parallel and sequential map loading using MapUtils::loadMap().

Added test cases demonstrating a crash when running R in parallel loops.

Fixed comment typo.

Temporary fix to improve the response of Calculate R Expression (no longer retrieves error and standard output only after the execution is completed).

Replaced the use of SystemProcess with SystemUtils::runUtility(); Modified runUtility() to allow better control of where the resulting information is logged.

Make the CalculateRExpression output fully compatible with the result of the previous versions.

Changed behavior of SystemProcess to allow retrieving only lines of the standard output/error output that are fully complete; Changed the API to move the incomplete line buffering out of InternalSystemProcess.

Updated version to 7.4.0; Updated codename.

Added warning messages for submodels lacking port documentation.

Dinamica (Installer)

Updated version to 7.4.0.

Dinamica (R integration)

(None)