Embedded Coder: How can I configure a Simulink model to generate model parameters as regular (non-static) C++ class members?

21 次查看(过去 30 天)
Using Embedded Coder, I would like to generate C++ code from my Simulink model and then use multiple instances of the C++ class in my custom C++ code.
How can I prevent model parameters from being generated with the static keyword, so that multiple instances of the generated model class can be used?
I tried different Model settings, StorageClasses and Code Mapping, but the code for the model parameters is always generated as "static":
// Tunable parameters
static P_signalGen_T signalGen_P;

采纳的回答

Pramil
Pramil 2025-7-29
Hi Wojciech,
You can follow the instructions mentioned in the following MATLAB answer to make the model parameters "non-static":
Hope this helps!
  1 个评论
Wojciech Przystas
Wojciech Przystas 2025-8-22,9:57
Hi,
I tried the solution you recommended, and it worked for me - thank you!
However, I find the current setting a bit unintuitive from a user experience perspective.
I’d like to suggest an improvement: it would be helpful to allow users to define the parameter scope directly within the Code Mappings dialog. Since this is where users configure the structure of the generated C++ code, adding a "Scope" column - where one could choose between 'static' and 'local' - would make the configuration more transparent and user-friendly.
Thanks again!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Deployment, Integration, and Supported Hardware 的更多信息

产品


版本

R2025a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by