coder.dictionary.move

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

Описание

пример

move(sourceName,destinationName) определения генерации кода перемещений, такие как классы памяти, из Словаря Embedded Coder в sourceName к словарю Embedded Coder в destinationName. Определения удалены из sourceName. Чтобы скопировать определения кода от одного Словаря Embedded Coder до другого, использовать coder.dictionary.copy.

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

Используйте эту функцию для:

  • Переместите определения генерации кода от модели до словаря данных Simulink®. Для получения дополнительной информации см. Словарное определение Embedded Coder Доли Между Моделями.

  • В иерархии словарей данных Simulink, на которые ссылаются переместите Словарь Embedded Coder от одного словаря данных до другого. В иерархии словарей, на которые ссылаются только один словарь может сохранить Словарь Embedded Coder.

Для получения общей информации о Словарях Embedded Coder и определениях генерации кода, смотрите, Задают Классы памяти, Разделы Памяти и Шаблоны функций для Программной архитектуры.

Примеры

свернуть все

Создайте класс памяти в Словаре Embedded Coder модели rtwdemo_roll в качестве примера. Затем переместите класс памяти в Словарь Embedded Coder в rtwdemo_rtwecintro.

Откройте модель rtwdemo_roll и представляйте Словарь Embedded Coder при помощи coder.Dictionary объект. Используйте этот объект получить доступ к разделу Storage Classes словаря и представлять раздел при помощи coder.dictionary.Section объект.

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

Добавьте определение класса памяти под названием MyStorageClass к разделу Storage Classes. Определение класса памяти использует настройки свойства по умолчанию.

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

  Entry with properties:

          Name: 'MyStorageClass'
    DataSource: 'rtwdemo_roll'

Сохраните копию rtwdemo_roll в вашей текущей папке. Сохранение модели сохраняет класс памяти в Словаре Embedded Coder.

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

rtwdemo_rtwecintro

Переместите содержимое Словаря Embedded Coder в rtwdemo_roll к словарю Embedded Coder в rtwdemo_rtwecintro.

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

Откройте словарь Embedded Coder для rtwdemo_rtwecintro.

В окне Embedded Coder Dictionary, на вкладке Storage Classes, класс памяти MyStorageClass появляется. Класс памяти больше не существует в rtwdemo_roll.

Входные параметры

свернуть все

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

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

    Вы не должны задавать .slx расширение файла.

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

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

Пример: 'myLoadedModel'

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

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

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

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

    Вы не должны задавать .slx расширение файла.

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

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

Пример: 'myLoadedModel'

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

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

Введенный в R2018a