How can I generate code that uses C++ namespaces on the input/output data types?

22 vues (au cours des 30 derniers jours)
Hendrik Deusch
Hendrik Deusch le 17 Fév 2017
Commenté : Ian Colwell le 21 Nov 2022
I want to generate C++ code for a Simulink model which has several non-virtual busses as inputs and outputs. The input and output data types are defined in an external header that uses namespaces. Now if I just define a Simulink.Bus that matches the C++ structure definition, give it the same name as in C++ (but without the namespace) and set the "Header file" to the C++ Header which actually defines the structure, code generation works, BUT the generated code ignores the namespace. The name of the structure types in the generated code is solely based on the names of the Simulink.Bus objects and I obviously cannot use the namespace separator :: in the name of a Simulink.Bus. So, is there any way to have C++ namespaces in the types of input/output data? I already tried to add the namespace via a custom storage class and corresponding .tlc without any luck. As far as I understand Custom Storage Classes can only be defined for Signals(and Parameters) but not directly for Busses and when I create a Signal I have to set its data type to the respective Bus which will then again end up as struct type in the generated code.

Réponses (1)

Pierre Harouimi
Pierre Harouimi le 11 Mai 2021
  1 commentaire
Ian Colwell
Ian Colwell le 21 Nov 2022
Hi Pierre, the link you provided does not seem to apply to exporting code from simulink, it only seems to apply to exporting code from m files.
Does anyone know how to namespace simulink exported C++ code?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Simulink Coder dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by