Model Fixup Plugin

The Model Fixup Plugin provides utilities that allow you to check if your model contains any problems of certain kinds. It may for example be problems introduced when migrating the model from Rose RT, or problems caused by bugs in previous versions of Model RealTime. If such problems are found the plugin offers a possibility to correct them.

The following versions of the plugin are available for download:

Model RealTime Model Fixup Plugin

This document describes how to install and use the Model Fixup plugin.

Command line Model Fixup bash script

The following bash script can be used to apply some simple fixes to all model files under some folder in one go:

modelFixup.sh (version 0.2)

It takes the top folder as input parameter and updates all emx/efx files that it can find under that folder. The script operates with model files as text and can perform the following updates:

'C++ Types' types                  --replace-with-->   'CppPrimitiveDatatypes' types
'CppPrimitiveDatatypes/unsigned'   --replace-with-->   'CppPrimitiveDatatypes/unsigned int'
'CPrimitiveDatatypes' types        --replace-with-->   'CppPrimitiveDatatypes' types
'CPropertySets' profile references -----REMOVE-----x
<body>__code_snippet__</body>      --replace-with-->   <body><![CDATA[__code_snippet'__]]></body>

Usage:

modelFixup.sh <top_folder_with_model_files>

On Windows machine this script can also be run, for example, from Git Bash

The script will ask you which updates should be done. You can answer Yes (or just press Enter) to all questions if you want to apply all fixes at once.

If you are not running under git repo, it is recommended to create a backup copy of the files before running the script.

After the script is finished, it will also automatically save log file in the current folder. Log file contains information about the updates, similar to what you see on the screen, plus full list of files that were updated at each step. Each new run will save new log file like this:

200612_013440_modelFixup.log

After the script is finished, check the changes with textual diff, verify that they look as expected.