Сгенерируйте отчет по метрикам статического кода для модели Simulink

Этот Static Code Metrics Report является разделом, включенным в Отчет о генерации кода HTML. Для получения дополнительной информации о статическом анализе сгенерированного кода, см. Static Code Metrics Analysis.

  1. Чтобы сгенерировать отчет о статических метриках кода в отчете генерации кода HTML, откройте диалоговое окно Параметры конфигурации для вашей модели. На панели Code Generation > Report установите флажок Сгенерировать метрики статического кода. Если ваша модель включает ссылки на модели, установите флажок Generate static code metrics в конфигурацию модели каждой ссылки. В противном случае вы не можете просмотреть отдельный отчет по статическим метрикам кода для ссылочной модели.

    Кроме того, после генерации кода сгенерируйте только отчет о статических метриках кода при помощи функции coder.report.generateCodeMetrics.

  2. Нажмите Ctrl+B, чтобы создать модель и сгенерировать отчет генерации кода HTML. Для получения дополнительной информации смотрите Сгенерировать отчет генерации кода.

  3. Если отчет генерации кода HTML еще не открыт, откройте отчет. На левой панели навигации в разделе Contents выберите Static Code Metrics Report.

    Если вы сгенерировали только отчет по статическим метрикам кода, откройте отчет. По умолчанию файл отчета о статических метриках кода metrics.html генерируется в текущей папке.

  4. Чтобы увидеть сгенерированные файлы и количество строк кода, генерируемых в каждом файле, смотрите в разделе File Information.

  5. Наведите курсор на заголовки столбцов и некоторые значения столбцов, чтобы увидеть описание соответствующих данных.

  6. Если ваша модель включает ссылку на модели, раздел Информация о файле включает столбец Referenced Model. В этом столбце щелкните имя модели-ссылки, чтобы открыть отчет по статическим метрикам кода. Если отчет о метриках статического кода недоступен для модели-ссылки, задайте параметр Generate static code metrics в конфигурации модели модели-ссылки и перестроите вашу модель.

  7. Чтобы просмотреть глобальные переменные в сгенерированном коде, их размер и количество обращений, смотрите раздел Global Variables.

    В Reads/Writes столбце отображается общее количество доступов для чтения и записи к глобальной переменной. В Reads/Writes in a Function столбце отображается максимальное количество доступов для чтения и записи к глобальной переменной в функции. Вы используете эту информацию, чтобы оценить преимущество включения оптимизации, которая уменьшает количество глобальных ссылок. Для получения дополнительной информации см. «Оптимизация использования глобальных переменных».

    Нажмите [+] для расширения структур.

  8. Чтобы перейти от отчета к исходному коду, щелкните глобальную переменную или имя функции. Эти имена являются гиперссылками на их определения.

  9. Чтобы просмотреть дерево вызовов функций сгенерированного кода, в разделе Function Information, нажмите Call Tree в верхней части таблицы.

    ert_main.c не включается в анализ метрики кода, поэтому не отображается в древовидном формате вызова. Столбец Complexity включает цикломатическую сложность каждой функции.

  10. Чтобы просмотреть функции в формате таблицы, нажмите Table.

    Во втором столбце, Called By, перечислены функции, вызывающие функцию, перечисленную в первом столбце, с помощью следующих критериев:

    • Если функция вызывается несколькими функциями, перечисляются все функции.

    • Если функция не имеет вызываемой функции, этот столбец пуст.

    Для примера, Fueling_Mode вызывается Fail и fuel_rate_control_step. Количество узлов вызовов включено в круглые скобки. Fail вызывает Fueling_Mode дважды.