exponenta event banner

coder.dictionary.Entry class

Пакет: coder.dictionary

Настройка определения словаря встроенного кодера

Описание

Объект coder.dictionary.Entry класс представляет одно определение словаря встроенного кодера. В этом API объект называется записью. Информация, представляемая объектом, является определением. В этой документации определение относится к определению объекта ввода.

A coder.Dictionary объект содержит три coder.dictionary.Section объекты, представляющие разделы словаря встроенного кодера: классы хранения, разделы памяти и шаблоны настройки функций. A coder.dictionary.Section объект содержит coder.dictionary.Entry объекты, представляющие определения, хранящиеся в этом разделе словаря встроенного кодера. Имя раздела определяет тип определений кода, содержащихся в разделе. Для доступа к разделам словаря встроенного кодера используйте coder.Dictionary объект. Для доступа к словарным статьям в разделе используйте coder.dictionary.Section объект.

Создание

Функции addEntry, getEntry, copyEntry, и find создать coder.dictionary.Entry объекты.

Свойства

развернуть все

A coder.dictionary.Entry объект имеет эти свойства.

Имя определения словаря кодера, представляемого статьей. Имя должно быть уникальным среди определений в разделе словаря.

Местоположение определения кода. Это свойство доступно только для чтения.

  • Built-in - Поставляется компанией Simulink ®.

  • Имя модели - определяется в модели Simulink.

  • Имя словаря - определяется в словаре данных Simulink.

  • Имя пакета - определяется в пакете Simulink или в пользовательском пакете.

Для доступа к свойствам определения кода, представляемого записью, используйте getAvailableProperties, get, и set методы. Каждый тип определения кода имеет доступные свойства.

Классы хранения

Имя класса хранения. Имя должно быть уникальным среди классов хранения в словаре.

Список встроенных и примерных классов хранения, предоставляемых Simulink, см. в разделе Выбор класса хранения для управления представлением данных в сгенерированном коде.

Пользовательский текст, который можно использовать для описания назначения и функциональных возможностей класса хранения.

Местоположение определения кода. Это свойство доступно только для чтения.

  • Built-in - Предоставляется компанией Simulink.

  • Имя модели - определяется в модели Simulink.

  • Имя словаря - определяется в словаре данных Simulink.

  • Имя пакета - определяется в пакете Simulink или в пользовательском пакете.

Спецификация для доступа к данным, связанным с моделью. Доступ к данным напрямую (Direct) или через настраиваемые get и set функции (Function). Дополнительные сведения см. в разделе Доступ к данным через функции с помощью классов хранения в словаре встроенного кодера.

Зависимости

  • Установка для этого свойства значения Function:

    • Наборы DataScope кому Imported.

    • Означает, что невозможно задать свойства нескольких экземпляров.

    • Включает следующие свойства:

      • AccessMode

      • AllowedAccess

      • GetFunctionName

      • SetFunctionName

    • Устанавливает PreserveDimensions свойство для false. Для сохранения размеров многомерных массивов в создаваемом коде установите DataAccess кому Direct.

Спецификация, определяющая данные сгенерированным кодом (Exported) или импорт (Imported) определение данных из внешнего кода. Встроенные классы хранения и классы хранения в пакетах, таких как Simulink, могут использовать другие параметры области, такие как File.

Зависимости

  • Установка для этого свойства значения Imported:

    • Отключает DefinitionFile. Чтобы включить внешний файл исходного кода в процесс построения, используйте параметры конфигурации модели. Пример см. в разделе Настройка интерфейса данных.

    • Означает, что невозможно установить HeaderFile кому $N.h, хотя вы можете использовать $N токен.

  • Установка для этого свойства значения Exported, необходимо использовать один из маркеров $N или $R в значении HeaderFile.

Имя файла заголовка, объявляющего данные, указанное как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$RИмя корневой модели
$NИмя связанного элемента данных
$GИмя класса хранения
$UТекст маркера пользователя, который задается для модели, как описано в разделе Управление форматом идентификатора

Зависимости

  • Если установить DataScope кому Exported, необходимо использовать один из маркеров $R или $N в значении этого свойства.

  • Если установить DataScope кому Imported, значение этого свойства нельзя установить равным $N.h, но вы можете использовать $N токен.

Имя исходного файла, определяющего данные, указанное как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$RИмя корневой модели
$NИмя связанного элемента данных
$GИмя класса хранения
$UТекст маркера пользователя, который задается для модели, как описано в разделе Управление форматом идентификатора

Зависимости

Настройка DataScope кому Imported отключает DefinitionFile. Чтобы включить внешний файл исходного кода в процесс построения, используйте параметры конфигурации модели. Пример см. в разделе Настройка интерфейса данных.

Спецификация класса хранения для доступа к данным, связанным с моделью, через функции с помощью Value или Pointer. Дополнительные сведения см. в разделе Доступ к данным через функции с помощью классов хранения в словаре встроенного кодера.

Зависимости

Это свойство включается только при установке DataAccess кому Function.

Спецификация класса хранения, разрешающая чтение и запись (ReadWriteтолько для чтенияReadOnly) или только для записи (WriteOnly) доступ к данным.

Зависимости

Это свойство включается только при установке DataAccess кому Function.

Название get функция, которая извлекает связанные данные, указанные как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$NИмя связанного элемента данных (обязательно)
$RИмя корневой модели
$MМангальный текст, обеспечивающий уникальность
$UТекст маркера пользователя. См. раздел Управление форматом идентификатора.

Зависимости

Это свойство включается только при установке DataAccess кому Function и AllowedAccess кому ReadWrite или ReadOnly.

Название set функция, которая извлекает измененные данные, указанные как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$NИмя связанного элемента данных (обязательно)
$RИмя корневой модели
$MМангальный текст, обеспечивающий уникальность
$UТекст маркера пользователя. См. раздел Управление форматом идентификатора.

Зависимости

Это свойство включается только при установке DataAccess кому Function и AllowedAccess кому ReadWrite или WriteOnly.

Спецификация класса хранения данных для использования либо параметров хранения, заданных для данных одного экземпляра, либо параметров, заданных для данных нескольких экземпляров. При применении класса хранения к элементу данных Embedded Coder Dictionary определяет, является ли он классом хранения с одним экземпляром или классом хранения с несколькими экземплярами по типу данных и по контексту модели в иерархии ссылок на модель.

Зависимости

Выбор этого свойства включает свойства SingleInstanceStorageType, MultiInstanceStorageType, и MultiInstanceStructureTypeName, MultiInstanceStructureInstanceName.

Спецификация для агрегирования данных, использующих класс хранения, в структуру в сгенерированном коде. Каждый элемент данных отображается в коде как поле структуры. Для создания структуры используйте Structured.

Зависимости

Установка для этого свойства значения Structured позволяет StructureTypeName и StructureInstanceName.

Имя типа структуры в созданном коде, указанное как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$RИмя корневой модели
$NБазовое имя связанной функции, например step
$GИмя класса хранения
$UТекст маркера пользователя, который задается для модели, как описано в разделе Управление форматом идентификатора
$MПри необходимости вставляется текст с искажениями имен, чтобы избежать конфликтов имен

Зависимости

Настройка StorageType кому Structured включает это свойство.

Имя структурной переменной в созданном коде, указанное как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$RИмя корневой модели
$NБазовое имя связанной функции, например step
$GИмя класса хранения
$UТекст маркера пользователя, который задается для модели, как описано в разделе Управление форматом идентификатора
$MПри необходимости вставляется текст с искажениями имен, чтобы избежать конфликтов имен

Зависимости

Настройка StorageType кому Structured включает это свойство.

Спецификация для агрегирования данных одного экземпляра, использующих класс хранения, в структуру в сгенерированном коде. Каждый элемент данных отображается в коде как поле структуры. Для создания структуры используйте Structured.

Зависимости

  • Настройка свойства UseDifferentPropSettingsForInstanceData кому true включает это свойство.

  • Установка для этого свойства значения Structured включает свойства SingleInstanceStructureTypeName и SingleInstanceStructureInstanceName.

Имя типа структуры в созданном коде, указанное как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$RИмя корневой модели
$NБазовое имя связанной функции, например step
$GИмя класса хранения
$UТекст маркера пользователя, который задается для модели, как описано в разделе Управление форматом идентификатора
$MПри необходимости вставляется текст с искажениями имен, чтобы избежать конфликтов имен

Зависимости

Настройка SingleInstanceStorageType кому Structured включает это свойство.

Имя структурной переменной в созданном коде, указанное как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$RИмя корневой модели
$NБазовое имя связанной функции, например step
$GИмя класса хранения
$UТекст маркера пользователя, который задается для модели, как описано в разделе Управление форматом идентификатора
$MПри необходимости вставляется текст с искажениями имен, чтобы избежать конфликтов имен

Зависимости

Настройка SingleInstanceStorageType кому Structured включает это свойство.

Спецификация для агрегирования данных одного экземпляра, использующих класс хранения, в структуру в сгенерированном коде. Каждый элемент данных отображается в коде как поле структуры. Нельзя изменить значение этого свойства.

Зависимости

Настройка свойства UseDifferentPropSettingsForInstanceData кому true включает это свойство.

Имя типа структуры в созданном коде, указанное как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$RИмя корневой модели
$NБазовое имя связанной функции, например step
$GИмя класса хранения
$UТекст маркера пользователя, который задается для модели, как описано в разделе Управление форматом идентификатора
$MПри необходимости вставляется текст с искажениями имен, чтобы избежать конфликтов имен

Зависимости

  • Настройка свойства UseDifferentPropSettingsForInstanceData кому true включает это свойство.

  • При установке свойства DataAccess кому Function, невозможно задать это свойство.

Имя структурной переменной в созданном коде, указанное как имя или правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$RИмя корневой модели
$NБазовое имя связанной функции, например step
$GИмя класса хранения
$UТекст маркера пользователя, который задается для модели, как описано в разделе Управление форматом идентификатора
$MПри необходимости вставляется текст с искажениями имен, чтобы избежать конфликтов имен

Зависимости

  • Настройка свойства UseDifferentPropSettingsForInstanceData кому true включает это свойство.

  • При установке свойства DataAccess кому Function, невозможно задать это свойство.

Указание, что сгенерированные коды инициализируют данные.

  • Dynamic - Созданный код инициализирует данные как часть функции точки входа инициализации модели.

  • Static - Созданный код инициализирует данные в той же инструкции, которая определяет и выделяет память для данных. Оператор присвоения отображается в верхней части .c или .cpp исходный файл, вне функции.

  • None - Созданный код не инициализирует данные.

Зависимости

  • Если установить Const кому true, нельзя установить для этого свойства значение Dynamic.

  • Установка для этого свойства значения Dynamic устанавливает свойство Const кому false.

Расположение в памяти для выделения данных, указанное как coder.dictionary.Entry объект, представляющий раздел памяти, существующий в словаре встроенного кодера. Дополнительные сведения о разделах памяти см. в разделе Управление данными и размещением функций в памяти путем вставки прагматиков.

Спецификация класса хранения для сохранения размеров многомерных массивов в созданном коде. Дополнительные сведения см. в разделе Сохранение размеров многомерных массивов в сгенерированном коде.

Спецификация для применения const квалификатор данных.

Зависимости

  • При выборе этого свойства невозможно задать DataInit кому Dynamic.

  • Настройка DataInit кому Dynamic \ задает для этого свойства значениеfalse.

Спецификация для применения volatile квалификатор данных.

Спецификация для применения пользовательского квалификатора к данным. Например, некоторые архитектуры памяти поддерживают квалификаторы far и huge.

Не использовать это свойство для применения ключевого слова static. Вместо этого используйте встроенный класс хранения FileScope, который нельзя применить в редакторе сопоставлений кода. См. раздел Выбор класса склада для представления контроллинговых данных в сгенерированном коде.

Спецификация, указывающая, следует ли разрешить использование класса хранения с параметрами модели.

Зависимости

  • Настройка DataInit кому Static устанавливает для этого свойства значение true.

  • Настройка DataInit кому Dynamic устанавливает для этого свойства значение false.

  • Чтобы задать значение этого свойства, установите DataInit кому None.

Спецификация, указывающая, следует ли разрешить использование класса хранения с модельными сигналами.

Зависимости

  • Настройка DataInit кому Dynamic устанавливает для этого свойства значение true.

  • Настройка DataInit кому Static устанавливает для этого свойства значение false.

  • Чтобы задать значение этого свойства, установите DataInit кому None.

Шаблоны настройки функции

Имя шаблона. Имя должно быть уникальным среди шаблонов функций в словаре. Embedded Coder ® содержит встроенные шаблоны, перечисленные в этой таблице.

ШаблонОписание
ModelFunctionВ редакторе сопоставлений кодов используйте функции начальной точки для инициализации, выполнения, завершения и сброса (см. раздел Настройка генерации кода по умолчанию для функций).
UtilityFunctionВ редакторе сопоставлений кодов используйте для общих служебных функций (см. раздел Настройка генерации кода по умолчанию для функций).

Пользовательский текст, который можно использовать для описания назначения и функциональных возможностей шаблона функции.

Имена функций в сгенерированном коде, указанные как правило именования. Правило именования включает комбинацию текста и маркеров. Допустимые маркеры перечислены в этой таблице.

СимволОписание
$RИмя корневой модели
$NБазовое имя связанной функции, например step
$UТекст маркера пользователя, который задается для модели, как описано в разделе Управление форматом идентификатора
$CДля общих служебных функций контрольная сумма вставляется во избежание конфликтов имен
$MПри необходимости вставляется текст с искажениями имен, чтобы избежать конфликтов имен

Расположение в памяти для назначения функции, указанное как coder.dictionary.Entry объект, представляющий раздел памяти, существующий в словаре встроенного кодера. Дополнительные сведения о разделах памяти см. в разделе Управление данными и размещением функций в памяти путем вставки прагматиков.

Разделы памяти

Имя раздела памяти. Имя должно быть уникальным среди разделов памяти в словаре. Встроенный кодер содержит встроенные разделы памяти, перечисленные в этой таблице.

Раздел памятиОписание
MemConstПрименение квалификатора типа склада const к данным.
MemVolatileПрименение квалификатора типа склада volatile к данным.
MemConstVolatileПрименение квалификаторов типа склада const и volatile к данным.

Пользовательский текст, который можно использовать для описания назначения и функциональности раздела памяти.

Комментарий кода, который генератор кода включает с прагматиками или другими украшениями, которые вы указываете с помощью PreStatement и PostStatement.

Код, например, прагматики, для вставки перед определениями и объявлениями данных или функций, находящихся в разделе памяти.

Вы можете использовать маркер $R для представления имени модели, использующей раздел памяти.

При установке StatementsSurround кому EachVariable, вы можете использовать маркер $N для представления имени каждой переменной или функции, использующей раздел памяти.

Код, например, прагматики, для вставки после определений и описаний данных или функций, находящихся в разделе памяти.

Вы можете использовать маркер $R для представления имени модели, использующей раздел памяти.

При установке StatementsSurround кому EachVariable, вы можете использовать маркер $N для представления имени каждой переменной или функции, использующей раздел памяти.

Спецификация для вставки операторов кода (PreStatement и PostStatement):

  • Вокруг каждой переменной и функции, которая использует раздел памяти. Выбрать EachVariable.

  • Один раз, вокруг всей секции памяти. Созданный код агрегирует определения переменных и функций в смежный блок кода и окружает блок инструкциями. Выбрать AllVariables.

Методы

развернуть все

Примеры

свернуть все

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

rtwdemo_roll
coderDictionary = coder.dictionary.open('rtwdemo_roll');

Создать coder.dictionary.Section объект, представляющий раздел «Классы хранения» словаря встроенного кодера.

storageClassesSect = getSection(coderDictionary, 'StorageClasses');

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

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

  Entry with properties:

          Name: 'MyStorageClass'
    DataSource: 'rtwdemo_roll'
Представлен в R2019b