Шаблоны символов и правил

Введение

Группы шаблонов символов и символы шаблонов описывают пользовательские символы шаблона обработки файлов (CFP) и правила их использования. Расположение символа в одном из предоставленных файлов шаблона (code_c_template.cgt, code_h_template.cgt, data_c_template.cgt, или data_h_template.cgt) определяет, где элементы, связанные с этим символом, расположены в соответствующем сгенерированном файле. Template Symbol Group определяет группы символов, начиная с родительской («Base») группы, за которой следуют дочерние элементы каждого родительского элемента. В шаблоне» перечислены символы в алфавитном порядке.

Примечание

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

Группы символов шаблона

Группа символовИмена символов в этой группе

Основа ( родительские элементы)

Declarations

Defines

Definitions

Documentation

Enums

Functions

Includes

Types

Декларации

ExternalCalibrationLookup1D

ExternalCalibrationLookup2D

ExternalCalibrationScalar

ExternalVariableScalar

Определяет

LocalDefines

LocalMacros

Определения

FilescopeCalibrationLookup1D

FilescopeCalibrationLookup2D

FilescopeCalibrationScalar

FilescopeVariableScalar

GlobalCalibrationLookup1D

GlobalCalibrationLookup2D

GlobalCalibrationScalar

GlobalVariableScalar

Документация

Abstract

Banner

Created

Creator

Date

Description

FileName

History

LastModifiedDate

LastModifiedBy

ModelName

ModelVersion

ModifiedBy

 

Notes

ToolVersion

Функции

CFunctionCode

Типы

У этот родительский элемент нет дочерних элементов.

Символы шаблона

Имя символа *Группа символовСимволы ВозможностейОписание символа (Что символ помещает в сгенерированный файл)

Abstract

Документация

Н/Д

Предоставленное пользователем описание модели или файла. Помещается в сгенерированный файл на основе Stateflow® примечание, Simulink® аннотация, или DocBlock на модели. * *

Banner

Документация

Н/Д

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

CFunctionCode

Функции

Файл

Функции C/C + +. Должно находиться в нижней части шаблона.

Created

Документация

Н/Д

Дата создания модели. Из Created on поля в диалоговом окне Свойства модели (Model Properties).

Creator

Документация

Н/Д

Пользователь, создавший модель. Из Created by поля в диалоговом окне Свойства модели (Model Properties).

Date

Документация

Н/Д

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

Declarations

Основа

 

Объявление данных сигнала или параметра. Для примера, extern real_T globalvar;.

Defines

Основа

Файл

Требуемая #defines от .h файлы.

Definitions

Основа

Файл

Определения данных сигналов или параметров.

Description

Документация

Н/Д

Описание модели. Из Model description поля в диалоговом окне Свойства. * *

Documentation

Основа

Н/Д

Комментарии о том, как интерпретировать сгенерированные файлы.

Enums

Основа

Файл

Перечисленные определения типов данных.

ExternalCalibrationLookup1D

Декларации

Внешний

***

ExternalCalibrationLookup2D

Декларации

Внешний

***

ExternalCalibrationScalar

Декларации

Внешний

***

ExternalVariableScalar

Декларации

Внешний

***

FileName

Документация

Н/Д

Имя сгенерированного файла.

FilescopeCalibrationLookup1D

Определения

Файл

***

FilescopeCalibrationLookup2D

Определения

Файл

***

FilescopeCalibrationScalar

Определения

Файл

***

FilescopeVariableScalar

Определения

Файл

***

Functions

Основа

Файл

Сгенерированный код функции.

GlobalCalibrationLookup1D

Определения

Глобальный

***

GlobalCalibrationLookup2D

Определения

Глобальный

***

GlobalCalibrationScalar

Определения

Глобальный

***

GlobalVariableScalar

Определения

Глобальный

***

History

Документация

Н/Д

Предоставленная пользователем история ревизий сгенерированных файлов. Помещается в сгенерированный файл на основе заметки Stateflow, аннотации Simulink или DocBlock на модели. * *

Includes

Основа

Файл

#include директивы препроцессора.

LastModifiedDate

Документация

Н/Д

Дата последнего сохранения модели. Из Last saved on поля в диалоговом окне Свойства модели (Model Properties).

LastModifiedBy

Документация

Н/Д

Пользователь, который последний сохранял модель. Из Last saved by поля в диалоговом окне Свойства модели (Model Properties).

LocalDefines

Определяет

Файл

#define директивы препроцессора от объектов данных генерации кода.

LocalMacros

Определяет

Файл

Макросы C/C + +, локальные к файлу.

ModelName

Документация

Н/Д

Имя модели.

ModelVersion

Документация

Н/Д

Число, увеличенное на 1 каждый раз, когда вы сохраняете модель.

ModifiedBy

Документация

Н/Д

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

Notes

Документация

Н/Д

Пользовательские различные примечания о модели или сгенерированных файлах. Помещается в сгенерированный файл на основе заметки Stateflow, аннотации Simulink или DocBlock на модели. * *

ToolVersion

Документация

Н/Д

Список версий тулбоксов, используемых при генерации кода.

Types

Основа

 

Типы данных сгенерированного кода.

* Имена символов должны быть заключены между %< >. Для примера, %<Functions>.

* * Этот символ можно использовать, чтобы добавить комментарий к сгенерированным файлам. См. раздел Добавление глобальных комментариев в сгенерированный код. Генератор кода помещает комментарий в каждый сгенерированный файл, шаблон которого имеет это имя символа. Генератор кода помещает комментарий в место, которое соответствует месту расположения имени символа в файле шаблона.

* * * Описание можно вывести из имени символа. Для примера, GlobalCalibrationScalar является символом, который идентифицирует скаляр. Он содержит данные глобальным возможностям, которую можно калибровать.

Правила изменения или создания шаблона

Ниже приведены правила создания шаблона MPF. Сравнение шаблона и его сгенерированного файла иллюстрирует несколько из этих правил.

  1. Поместите символ на шаблон в %< > разделитель. Например, символ с именем Includes должен выглядеть так на шаблоне: %<Includes>. Обратите внимание, что имена символов чувствительны к регистру.

  2. Поместите символ на шаблон там, где это необходимо. Его расположение на шаблоне определяет, где элемент, сопоставленный с этим символом, расположен в сгенерированном файле. Если с ним не связан элемент, символ игнорируется.

  3. Поместите оператор C/C + + за пределы %< > разделитель, и на другой линии, чем %< > разделитель, чтобы этот оператор появился в сгенерированном файле. Для примера, #pragma message ("my text") в шаблоне результаты в #pragma message ("my text") в соответствующем расположении в сгенерированном файле. Обратите внимание, что оператор должен быть совместим с вашим компилятором C/C + +.

  4. Используйте .cgt расширение для каждого имени файла шаблона. (» cgt"обозначает шаблон генерации кода.)

  5. Обратите внимание, что %% $Revision: 1.1.4.10.4.1 $ появляется в верхней части шаблонов MathWorks. Это предназначено только для внутреннего использования MathWorks. Он не должен помещаться в пользовательский шаблон и не отображается в сгенерированном файле.

  6. Разместите комментарий к шаблону между /* */ как в стандартном ANSI® C[1] . Это приводит к /*comment*/ в сгенерированном файле.

  7. Каждый шаблон MPF должен иметь все символы базовой группы в предопределенном порядке. Они перечислены в разделе «Группы символов шаблона». Каждый символ в группе База является родительским элементом. Для примера, Declarations является родительским символом.

  8. Каждый символ в группе, отличной от Base, является дочерним. Для примера, LocalMacros является ребенком.

  9. Кроме детей Documentation, дети должны быть помещены после их родительского элемента, до следующего родительского элемента и до Functions символ.

  10. Дочерние элементы документации могут располагаться до или после их родительского элемента в любом порядке в любом месте шаблона.

  11. Если в шаблоне отсутствует дочерний элемент, не относящийся к документации, генератор кода помещает информацию, связанную с этим дочерним элементом, в родительское место в сгенерированном файле.

  12. Если в шаблоне отсутствует дочерний элемент Documentation, генератор кода опускает информацию, связанную с этим дочерним элементом, из сгенерированного файла.


[1] ANSI является зарегистрированным товарным знаком Американского национального института стандартов, Inc.