exponenta event banner

coder.dictionary.copy

Копирование определений генерации кода между моделями и словарями данных

Описание

пример

copy(sourceName,destinationName) копирует определения генерации кода, такие как классы хранения, из словаря Embedded Coder в sourceName в словарь встроенного кодера в destinationName.

Если определение генерации кода в sourceName имеет то же имя, что и определение в destinationName, copy копирует исходную запись в место назначения, а затем переименовывает ее.

Для совместного использования определений кода между моделями используйте словарь данных Simulink ®, как описано в разделе Совместное использование определения словаря встроенного кодера между моделями. Для копирования отдельных определений кода используйте диалоговое окно «Embedded Coder Dictionary» илиcopyEntry. Общие сведения о словарях встроенного кодера и определениях генерации кода см. в разделе Определение классов хранения, разделов памяти и шаблонов функций для архитектуры программного обеспечения.

Примеры

свернуть все

В словаре встроенного кодера примерной модели rtwdemo_roll, создайте класс хранения. Затем скопируйте класс хранения в Embedded Coder Dictionary в rtwdemo_rtwecintro.

Открытие модели rtwdemo_roll и представляют Embedded Coder Dictionary с помощью coder.Dictionary объект. Этот объект используется для доступа к разделу «Классы хранения» словаря и представления раздела с помощью coder.dictionary.Section объект.

rtwdemo_roll
coderDictionary = coder.dictionary.open('rtwdemo_roll');
storageClassesSect = getSection(coderDictionary, 'StorageClasses');

Добавить определение класса хранения с именем MyStorageClass в раздел Классы хранения. В определении класса хранения используются параметры свойств по умолчанию.

newEntry = addEntry(storageClassesSect,'MyStorageClass')
newEntry = 

  Entry with properties:

          Name: 'MyStorageClass'
    DataSource: 'rtwdemo_roll'

Сохранить копию rtwdemo_roll в текущей папке. При сохранении модели класс хранения сохраняется в словаре встроенного кодера.

Откройте другую модель, rtwdemo_rtwecintro.

rtwdemo_rtwecintro

Копирование содержимого словаря встроенного кодера в rtwdemo_roll в словарь встроенного кодера в rtwdemo_rtwecintro.

coder.dictionary.copy('rtwdemo_roll','rtwdemo_rtwecintro')

Открыть словарь встроенного кодера для rtwdemo_rtwecintro.

В окне Embedded Coder Dictionary на вкладке Storage Classes класс хранения MyStorageClass появляется.

Входные аргументы

свернуть все

Файл исходной модели или словарь данных, указанный как вектор символов или скаляр строки.

  • Модель должна быть загружена (например, с помощью load_system) или открыть.

    Нет необходимости указывать .slx расширение файла.

  • Словарь должен быть открыт в обозревателе моделей, в текущей папке или по пути MATLAB ®.

    Необходимо указать .sldd расширение файла.

Пример: 'myLoadedModel'

Пример: 'myDictionary.sldd'

Типы данных: char

Файл целевой модели или словарь данных, указанный как вектор символов или скаляр строки.

  • Модель должна быть загружена (например, с помощью load_system) или открыть.

    Нет необходимости указывать .slx расширение файла.

  • Словарь должен быть открыт в обозревателе моделей, в текущей папке или по пути MATLAB.

    Необходимо указать .sldd расширение файла.

Пример: 'myLoadedModel'

Пример: 'myDictionary.sldd'

Типы данных: char

Представлен в R2018a