Пакет: coder.dictionary
Сконфигурируйте определение словаря Embedded Coder
Объект coder.dictionary.Entry
класс представляет одно определение Embedded Coder. В этом API объект называется записью. Информация, которую представляет объект, является определением. В этой документации определение относится к определению объекта ввода.
A coder.Dictionary
объект содержит три coder.dictionary.Section
объекты, которые представляют разделы словаря Embedded Coder: Классы памяти, разделы памяти и шаблоны индивидуальной настройки функций. A coder.dictionary.Section
объект содержит coder.dictionary.Entry
объекты, которые представляют определения, хранящиеся в этом разделе словаря Embedded Coder. Имя раздела определяет тип определений кода, содержащихся в разделе. Для доступа к разделам словаря Embedded Coder Dictionary используйте coder.Dictionary
объект. Для доступа к словарным статьям в разделе используйте coder.dictionary.Section
объект.
A coder.dictionary.Entry
объект имеет эти свойства.
Name
- Имя определения кодаИмя определения словаря кодера, которое представляет статья. Имя должно быть уникальным среди определений в разделе словаря.
DataSource
- Расположение определения кодаМестоположение определения кода. Это свойство доступно только для чтения.
Built-in
- Предоставляется Simulink®.
Имя модели - Определено в модели Simulink.
Имя словаря - Определяется в словаре данных Simulink.
Имя пакета - Определяется в пакете Simulink или в пользовательском пакете.
Для доступа к свойствам определения кода, которое представляет запись, используйте getAvailableProperties
, get
, и set
методы. Каждый тип определения кода имеет доступные свойства в списке.
Name
- Имя класса памятиStorageClass1
(по умолчанию) | символьный вектор | строковый скалярИмя класса памяти. Имя должно быть уникальным среди классов памяти в словаре.
Списки встроенных и примерных классов памяти, которые предоставляет Simulink, см. в разделе Выбор классе памяти для управления представлением данных в Сгенерированном коде.
Description
- Назначение и функциональность класса памятиПользовательский текст, который можно использовать для описания назначения и функциональности класса памяти.
DataSource
- Расположение определения кодаМестоположение определения кода. Это свойство доступно только для чтения.
Built-in
- Предоставляется компанией Simulink.
Имя модели - Определено в модели Simulink.
Имя словаря - Определяется в словаре данных Simulink.
Имя пакета - Определяется в пакете Simulink или в пользовательском пакете.
DataAccess
- Спецификация для доступа к даннымDirect
(по умолчанию) | Function
Спецификация для доступа к данным, сопоставленным с моделью. Доступ к данным непосредственно (Direct
) или через настраиваемые get
и set
функции (Function
). Для получения дополнительной информации смотрите Доступ к данным через функции при помощи классов памяти в словаре Embedded Coder.
Установка значения свойства Function
:
Устанавливает DataScope
на Imported
.
Означает, что вы не можете задать свойства мультиобразцов.
Включает следующие свойства:
AccessMode
AllowedAccess
GetFunctionName
SetFunctionName
Устанавливает PreserveDimensions
свойство к false
. Чтобы сохранить размерности многомерных массивов в сгенерированном коде, установите DataAccess
на Direct
.
DataScope
- Спецификация для генерации определения данныхExported
(по умолчанию) | Imported
Спецификация, что сгенерированный код определяет данные (Exported
) или импорт (Imported
) определение данных из внешнего кода. Встроенные классы памяти и классы памяти в пакетах, таких как Simulink, могут использовать другие опции возможностей, такие как File
.
Установка значения свойства Imported
:
Отключает DefinitionFile
. Чтобы включить ваши внешние исходные файлы кода в процесс сборки, используйте параметры конфигурации модели. Для получения примера см. раздел «Настройка Данных интерфейса».
Означает, что вы не можете задать HeaderFile
на $N.h
хотя вы можете использовать $N
лексема.
Чтобы задать это свойство равным Exported
необходимо использовать один из лексем $N
или $R
в значении HeaderFile
.
Header File
- Имя файла заголовка, который объявляет данные$N.h
(по умолчанию) | символьный вектор | строковый скалярИмя файла заголовка, который объявляет данные, заданное как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$R | Имя корневой модели |
$N | Имя связанного элемента данных |
$G | Имя класса памяти |
$U | Текст лексемы пользователя, который вы задаете для модели, как описано в Identifier Format Control |
Если вы задаете DataScope
на Exported
необходимо использовать один из лексем $R
или $N
в значении этого свойства.
Если вы задаете DataScope
на Imported
, вы не можете задать значение этого свойства $N.h
, но вы можете использовать $N
лексема.
Definition File
- Имя исходного файла, который задает данные$N.c
(по умолчанию) | символьный вектор | строковый скалярИмя исходного файла, который определяет данные как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$R | Имя корневой модели |
$N | Имя связанного элемента данных |
$G | Имя класса памяти |
$U | Текст лексемы пользователя, который вы задаете для модели, как описано в Identifier Format Control |
Настройка DataScope
на Imported
отключает DefinitionFile
. Чтобы включить ваши внешние исходные файлы кода в процесс сборки, используйте параметры конфигурации модели. Для получения примера см. раздел «Настройка Данных интерфейса».
AccessMode
- Спецификация для доступа к данным через функцииValue
(по умолчанию) | Pointer
Спецификация для класса памяти для доступа к данным, связанным с моделью, через функции при помощи Value
или Pointer
. Для получения дополнительной информации смотрите Доступ к данным через функции при помощи классов памяти в словаре Embedded Coder.
Это свойство включено только при установке DataAccess
на Function
.
AllowedAccess
- Спецификация, разрешающая доступ к данным через функцииReadWrite
(по умолчанию) | ReadOnly
| WriteOnly
Спецификация для класса памяти, разрешающая чтение и запись (ReadWrite
), только для чтения (ReadOnly
), или только запись (WriteOnly
) доступ к данным.
Это свойство включено только при установке DataAccess
на Function
.
GetFunctionName
- Имя get
функция, которая выбирает связанные данныеget_$N$M
(по умолчанию) | символьный вектор | строковый скалярИмя get
функция, которая выбирает связанные данные, заданные как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$N | Имя связанного элемента данных (обязательно) |
$R | Имя корневой модели |
$M | Текст Mangle, который гарантирует уникальность |
$U | Текст лексемы пользователя. См. «Управление форматом идентификатора». |
Это свойство включено только при установке DataAccess
на Function
и AllowedAccess
на ReadWrite
или ReadOnly
.
SetFunctionName
- Имя set
функция, которая изменяет связанные данныеset_$N$M
(по умолчанию) | символьный вектор | строковый скалярИмя set
функция, которая выбирает измененные данные, заданные как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$N | Имя связанного элемента данных (обязательно) |
$R | Имя корневой модели |
$M | Текст Mangle, который гарантирует уникальность |
$U | Текст лексемы пользователя. См. «Управление форматом идентификатора». |
Это свойство включено только при установке DataAccess
на Function
и AllowedAccess
на ReadWrite
или WriteOnly
.
DifferentInstanceDataSettings
- Спецификация для назначения отдельных настроек памяти для данных с одним экземпляром и данных с мультиобразцамиfalse
(по умолчанию) | true
Спецификация для класса памяти для использования либо настроек хранения, заданных для данных с одним экземпляром, либо настроек, заданных для данных с мультиобразцами. При применении класса хранения к элементу данных словарь Embedded Coder Dictionary определяет, является ли это классом хранения с одним экземпляром или классом хранения с несколькими экземплярами, по типу данных и контексту модели в иерархии моделей-ссылок.
Выбор этого свойства включает свойства SingleInstanceStorageType
, MultiInstanceStorageType
, и MultiInstanceStructureTypeName
, MultiInstanceStructureInstanceName
.
StorageType
- Спецификация для агрегирования данных в структуруUnstructured
(по умолчанию) | Structured
Спецификация для агрегирования данных, которые используют класс памяти, в структуру в сгенерированном коде. Каждый элемент данных появляется в коде как поле структуры. Чтобы создать структуру, используйте Structured
.
Установка значения свойства Structured
включает StructureTypeName
и StructureInstanceName
.
StructureTypeName
- Имя типа структуры$R$N$G$M
(по умолчанию) | символьный вектор | строковый скалярИмя типа структуры в сгенерированном коде, заданное как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$R | Имя корневой модели |
$N | Базовое имя связанной функции, например step |
$G | Имя класса памяти |
$U | Текст лексемы пользователя, который вы задаете для модели, как описано в Identifier Format Control |
$M | Текст управления именами, вставленный, при необходимости, чтобы избежать конфликтов имен |
Настройка StorageType
на Structured
включает это свойство.
StructureInstanceName
- Имя структурной переменной$G$N$M
(по умолчанию) | символьный вектор | строковый скалярИмя структурной переменной в сгенерированном коде, заданное как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$R | Имя корневой модели |
$N | Базовое имя связанной функции, например step |
$G | Имя класса памяти |
$U | Текст лексемы пользователя, который вы задаете для модели, как описано в Identifier Format Control |
$M | Текст управления именами, вставленный, при необходимости, чтобы избежать конфликтов имен |
Настройка StorageType
на Structured
включает это свойство.
SingleInstanceStorageType
- Спецификация для агрегирования данных одного экземпляра в структуруStructured
(по умолчанию) | Unstructured
Спецификация для агрегирования данных одного экземпляра, который использует класс памяти, в структуру в сгенерированном коде. Каждый элемент данных появляется в коде как поле структуры. Чтобы создать структуру, используйте Structured
.
Установка свойства UseDifferentPropSettingsForInstanceData
на true
включает это свойство.
Установка значения свойства Structured
включает свойства SingleInstanceStructureTypeName
и SingleInstanceStructureInstanceName
.
SingleInstanceStructureTypeName
- Имя типа структуры для данных с одним экземпляром$R$N$G$M
(по умолчанию) | символьный вектор | строковый скалярИмя типа структуры в сгенерированном коде, заданное как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$R | Имя корневой модели |
$N | Базовое имя связанной функции, например step |
$G | Имя класса памяти |
$U | Текст лексемы пользователя, который вы задаете для модели, как описано в Identifier Format Control |
$M | Текст управления именами, вставленный, при необходимости, чтобы избежать конфликтов имен |
Настройка SingleInstanceStorageType
на Structured
включает это свойство.
SingleInstanceStructureInstanceName
- Имя структурной переменной для данных с одним экземпляром$G$N$M
(по умолчанию) | символьный вектор | строковый скалярИмя структурной переменной в сгенерированном коде, заданное как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$R | Имя корневой модели |
$N | Базовое имя связанной функции, например step |
$G | Имя класса памяти |
$U | Текст лексемы пользователя, который вы задаете для модели, как описано в Identifier Format Control |
$M | Текст управления именами, вставленный, при необходимости, чтобы избежать конфликтов имен |
Настройка SingleInstanceStorageType
на Structured
включает это свойство.
MultiInstanceStorageType
- Спецификация для агрегирования данных из мультиобразцов в структуруStructured
(по умолчанию)Спецификация для агрегирования данных одного экземпляра, который использует класс памяти, в структуру в сгенерированном коде. Каждый элемент данных появляется в коде как поле структуры. Вы не можете изменить значение этого свойства.
Установка свойства UseDifferentPropSettingsForInstanceData
на true
включает это свойство.
MultiInstanceStructureTypeName
- Имя типа структуры для данных с мультиобразцами$R$N$G$M
(по умолчанию) | символьный вектор | строковый скалярИмя типа структуры в сгенерированном коде, заданное как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$R | Имя корневой модели |
$N | Базовое имя связанной функции, например step |
$G | Имя класса памяти |
$U | Текст лексемы пользователя, который вы задаете для модели, как описано в Identifier Format Control |
$M | Текст управления именами, вставленный, при необходимости, чтобы избежать конфликтов имен |
Установка свойства UseDifferentPropSettingsForInstanceData
на true
включает это свойство.
Если вы задаете свойство DataAccess
на Function
, вы не можете задать это свойство.
MultiInstanceStructureInstanceName
- Имя структурной переменной для данных с мультиобразцами$G$N$M
(по умолчанию) | символьный вектор | строковый скалярИмя структурной переменной в сгенерированном коде, заданное как имя или правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$R | Имя корневой модели |
$N | Базовое имя связанной функции, например step |
$G | Имя класса памяти |
$U | Текст лексемы пользователя, который вы задаете для модели, как описано в Identifier Format Control |
$M | Текст управления именами, вставленный, при необходимости, чтобы избежать конфликтов имен |
Установка свойства UseDifferentPropSettingsForInstanceData
на true
включает это свойство.
Если вы задаете свойство DataAccess
на Function
, вы не можете задать это свойство.
DataInit
- Как инициализировать данныеDynamic
(по умолчанию) | Static
| None
Спецификация, что сгенерированные коды инициализируют данные.
Dynamic
- Сгенерированный код инициализирует данные как часть функции точки входа инициализации модели.
Static
- Сгенерированный код инициализирует данные в том же операторе, который определяет и выделяет память для данных. Оператор назначения появляется в верхней части .c
или .cpp
исходный файл, вне функции.
None
- Сгенерированный код не инициализирует данные.
Если вы задаете Const
на true
, вы не можете задать это свойство Dynamic
.
Установка значения свойства Dynamic
устанавливает свойство Const
на false
.
MemorySection
- Расположение в памяти для выделения данныхNone
(по умолчанию) | coder.dictionary.Entry
объектРасположение в памяти для выделения данных, заданное как coder.dictionary.Entry
объект, который представляет раздел памяти, который существует в словаре Embedded Coder. Для получения информации о разделах памяти смотрите Control Data и Function Placement in Memory путем вставки прагм.
PreserveDimensions
- Спецификация для сохранения размерностей многомерных массивовfalse
(по умолчанию) | true
Спецификация для класса памяти, чтобы сохранить размерности многомерных массивов в сгенерированном коде. Для получения дополнительной информации см. Раздел «Сохранение размерностей многомерных массивов» в Сгенерированном коде.
Const
- Спецификация для применения const
определительfalse
(по умолчанию) | true
Спецификация для применения const
квалификатор данных.
Если вы выбираете это свойство, вы не можете задать DataInit
на Dynamic
.
Настройка DataInit
на Dynamic
\ устанавливает это свойство равным false
.
Volatile
- Спецификация для применения volatile
определительfalse
(по умолчанию) | true
Спецификация для применения volatile
квалификатор данных.
OtherQualifier
- Спецификация для применения пользовательского квалификатораСпецификация для применения пользовательского квалификатора к данным. Для примера некоторые архитектуры памяти поддерживают квалификаторы far
и huge
.
Не используйте это свойство для применения ключевого слова static
. Вместо этого используйте встроенный класс памяти FileScope
, который невозможно применить в редакторе Отображения. Смотрите раздел «Выбор класса памяти для управления представлением данных в сгенерированном коде».
AccessibleByParameters
- Разрешать ли использование с параметрами моделиfalse
(по умолчанию) | true
Спецификация, указывающая, разрешать ли использование класса памяти с параметрами модели.
Настройка DataInit
на Static
устанавливает это свойство на true
.
Настройка DataInit
на Dynamic
устанавливает это свойство на false
.
Чтобы задать значение этого свойства, установите DataInit
на None
.
AccessibleBySignals
- Разрешать ли использование с сигналами моделиtrue
(по умолчанию) | false
Спецификация, указывающая, разрешать ли использование класса памяти с сигналами модели.
Настройка DataInit
на Dynamic
устанавливает это свойство на true
.
Настройка DataInit
на Static
устанавливает это свойство на false
.
Чтобы задать значение этого свойства, установите DataInit
на None
.
Name
- Имя шаблона функцииFunctionTemplate1
(по умолчанию) | символьный вектор | строковый скалярИмя шаблона. Имя должно быть уникальным среди шаблонов функций в словаре. Embedded Coder® содержит встроенные шаблоны, перечисленные в этой таблице.
Шаблон | Описание |
---|---|
ModelFunction | В редакторе Отображения используйте для функций точки входа функции инициализации, выполнения, завершения и сброса (см. «Настройка генерации кода по умолчанию для функций») |
UtilityFunction | В редакторе Отображения используйте общие служебные функции (см. «Настройка генерации кода по умолчанию для функций») |
Description
- Назначение и функциональность шаблона функцииПользовательский текст, который можно использовать, чтобы описать назначение и функциональность шаблона функции.
FunctionName
- Имена сгенерированных функций$R$N
(по умолчанию) | символьный вектор | строковый скалярИмена функций в сгенерированном коде, заданные как правило именования. Правило именования включает комбинацию текста и лексем. Допустимые лексемы перечислены в этой таблице.
Лексема | Описание |
---|---|
$R | Имя корневой модели |
$N | Базовое имя связанной функции, например step |
$U | Текст лексемы пользователя, который вы задаете для модели, как описано в Identifier Format Control |
$C | Для общих служебных функций, контрольная сумма вставлена, чтобы избежать конфликтов имен |
$M | Текст управления именами, вставленный, при необходимости, чтобы избежать конфликтов имен |
MemorySection
- Расположение в памяти для выделения функцииNone
(по умолчанию) | coder.dictionary.Entry
объектРасположение в памяти для выделения функции, заданное как coder.dictionary.Entry
объект, который представляет раздел памяти, который существует в словаре Embedded Coder. Для получения информации о разделах памяти смотрите Control Data и Function Placement in Memory путем вставки прагм.
Name
- Имя раздела памятиИмя раздела памяти. Имя должно быть уникальным среди разделов памяти словаря. Embedded Coder предоставляет встроенные разделы памяти, перечисленные в этой таблице.
Раздел памяти | Описание |
---|---|
MemConst | Применить проверку типа склада const к данным. |
MemVolatile | Применить проверку типа склада volatile к данным. |
MemConstVolatile | Применить проверку типа склада const и volatile к данным. |
Description
- Назначение и функциональность раздела памятиПользовательский текст, который можно использовать, чтобы описать назначение и функциональность раздела памяти.
Comment
- Комментарий для вставки в сгенерированный кодКомментарий кода, который генератор кода включает в себя прагмы или другие украшения, которые вы задаете PreStatement
и PostStatement
.
PreStatement
- Код для вставки перед данными или кодом функцииКод, такой как прагмы, для вставки перед определениями и объявлениями данных или функций, которые находятся в разделе памяти.
Можно использовать лексему $R
чтобы представлять имя модели, которая использует раздел памяти.
Когда вы задаете StatementsSurround
на EachVariable
, можно использовать лексему $N
чтобы представлять имя каждой переменной или функции, которая использует раздел памяти.
PostStatement
- Код для вставки после данных или кода функцииКод, такой как прагмы, для вставки после определений и объявлений данных или функций, которые находятся в разделе памяти.
Можно использовать лексему $R
чтобы представлять имя модели, которая использует раздел памяти.
Когда вы задаете StatementsSurround
на EachVariable
, можно использовать лексему $N
чтобы представлять имя каждой переменной или функции, которая использует раздел памяти.
StatementsSurround
- Спецификация для переноса данных и функций отдельно или в группуEachVariable
(по умолчанию) | AllVariables
Спецификация для вставки операторов кода (PreStatement
и PostStatement
):
Вокруг каждой переменной и функции, которая использует раздел памяти. Выберите EachVariable
.
Один раз, вокруг всего раздела памяти. Сгенерированный код агрегирует определения переменной и функции в смежный блок кода и окружает блок операторами. Выберите AllVariables
.
get | Получите значение свойства определения кода |
set | Установите значение свойства определения кода |
getAvailableProperties | Возвращает свойства для определения кода |
deleteEntry | Удалите статью Embedded Coder |
valid | Определите, coder.dictionary.Entry объект представляет допустимое определение кода |
Откройте модель rtwdemo_roll
и представлять словарь Embedded Coder Dictionary при помощи coder.Dictionary
coderDictionary объекта
. Используйте этот объект для доступа к Классам памяти разделу словаря, который содержит определения класса памяти.
rtwdemo_roll
coderDictionary = coder.dictionary.open('rtwdemo_roll');
Создайте coder.dictionary.Section
объект, который представляет раздел «Классы памяти» Embedded Coder.
storageClassesSect = getSection(coderDictionary, 'StorageClasses');
Добавьте определение с именем MyStorageClass
в раздел «Классы памяти». В определении класса памяти используются настройки свойств по умолчанию. Изменить эти настройки можно при помощи set
функция.
newEntry = addEntry(storageClassesSect,'MyStorageClass')
newEntry = Entry with properties: Name: 'MyStorageClass' DataSource: 'rtwdemo_roll'
coder.Dictionary
| coder.dictionary.Section
| Embedded Coder
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.