exponenta event banner

Шаблоны пользовательской обработки файлов (CFP)

Для поддержки пользовательской обработки файлов предоставляются следующие файлы:

После создания шаблона CFP его необходимо интегрировать в процесс создания кода с помощью поля Редактирование шаблона настройки файла. См. раздел Задание шаблонов для создания кода.

Структура шаблона пользовательской обработки файлов (CFP)

Шаблон пользовательской обработки файлов (CFP) накладывает простую структуру на процесс создания кода. Шаблон, файл шаблона генерации кода (CGT), разбивает код, сгенерированный для каждого файла, на несколько разделов. Эти разделы обобщены во встроенных маркерах CGT и соответствующих разделах кода и подразделах, определенных для встроенных разделов.

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

Чтобы создать раздел файла, шаблон CFP должен сначала собрать код, который будет сгенерирован, в буфер. Затем для создания раздела шаблон вызывает функцию TLC.

LibSetSourceFileSection(fileH, section, tmpBuf)

где

  • fileH является ссылкой на создаваемый файл.

  • section является разделом или подразделом кода, в который должен быть выпущен код. раздел должен быть одним из имен разделов или подразделов, перечисленных в подразделах, определенных для встроенных разделов.

    Определите section аргумент следующим образом:

  • tmpBuf - буфер, содержащий код, который должен быть выдан.

Нет необходимости создавать все доступные разделы. Шаблон должен создавать только те разделы, которые требуются в конкретном файле.

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

Типичные примеры использования см. в разделе Создание исходных и заголовочных файлов с помощью шаблона пользовательской обработки файлов (CFP).

Создание дополнительных файлов, необходимых для взаимодействия с приложением

Embedded Coder ® предоставляет расширяемый API для расширения созданного кода и создания дополнительных файлов. Параметр конфигурации модели File customization template указывает пользовательский сценарий компилятора целевого языка (TLC), который выполняется в конце процесса создания кода. С помощью этого сценария можно создать дополнительный код для интерфейса с кодом приложения.

В этом примере файл сценария TLC rtwdemofileprocess.tlc создает дополнительную функцию точки входа, rtwdemo_fileprocess, которая вызывает функцию шага и при необходимости инициализирует модель. Функция инициализации прозрачна для вызывающего абонента.

1. Открыть пример модели rtwdemo_fileprocess.

open_system('rtwdemo_fileprocess');

2. Убедитесь, что для параметра конфигурации модели Файл шаблона настройки задано значение rtwdemofileprocess.tlc двойным щелчком на желтой кнопке «Конфигурация шаблонов вида».

3. Создать код.

4. Проверьте созданный код. Дополнительная функция, rtwdemo_fileprocess, появляется в конце созданного файла rtwdemo_fileprocess.c. Точка входа объявлена extern в rtwdemo_fileprocess.h в качестве rtwdemofileprocess.tlc скрипт указывает.