文件

在重圈,多实例模型和组件中使用存储类

您从模型或组件(引用的模型或子系统)生成的代码是多实例代码如果它允许应用程序在执行期间维护组件的多个独立实例。例如,您可以通过设置模型配置参数生成从整个型号的重圈,多实例代码代码接口包装可重复使用的功能。有关多实例模型和组件的一般信息,请参阅代码重用

在某些情况下,应用存储类可以:

  • 阻止您生成多实例代码。

  • 导致某些数据元素在生成的代码中显示为单例,这意味着模型或组件的每个实例都直接访问相同的共享,全局数据,在实例之间创建依赖项。

为避免错误和意外生成单个实例代码和单例数据,请遵守以下指南和限制。

直接应用存储类

当您将存储类直接应用于数据元素时(参见将存储类应用于单个信号,状态和参数数据元素):

  • 要生成多实例代码,必须仅将存储类应用于参数对象,全局数据存储,共享本地数据存储和根级I / O.

  • 存储类仅产生单例数据。

默认应用存储类

使用代码映射编辑器应用默认存储类(参见配置数据的默认代码生成(嵌入式编码器) - 挤压嵌入式编码器®):

  • 对于这些数据类别,您只能生成单身数据:

    • 模型参数

    • 外部参数对象

    • 全球数据商店

    • 共享本地数据存储

  • 为了内部数据,您只能生成特定于实例的数据,这意味着模型或组件的每个实例都在数据的单独副本上运行。对于此类别,您必须使用示例存储类信号标记,在准备使用快速入门工具的代码生成模型后出现。或者,您可以使用嵌入的编码器字典创建和使用自己的结构化存储类。

相关话题