Определите или измените тип входного параметра при помощи приложения

Задайте или измените тип входного параметра

Следующая процедура показывает, как определять или редактировать double, single, int64, int32, int16, int8, uint64, uint32, uint16, uint8, logical, и char типы.

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

Входной типСсылка
Строковый скаляр (1 на 1 строковых массивах)Задайте строковый скалярный входной параметр
Структура (struct)Задайте входной параметр структуры
Массив ячеек (cell (Homogeneous) или cell (Heterogeneous))Задайте входной параметр массива ячеек
Тип данных с фиксированной точкой (embedded.fi)Задайте входной параметр с фиксированной точкой
Вход по примеру (Define by Example)Определите входной параметр по примеру при помощи приложения
Константа (Define Constant)Задайте постоянные входные параметры используя приложение

  1. Щелкните поле справа от имени входа параметра.

  2. Опционально для числовых типов, чтобы сделать параметр комплексным типом, установите флажок Complex number.

  3. Выберите тип входа.

    В приложении отображается выбранный тип. Отображается значение и опции размера.

  4. Из списка выберите, является ли ваш вход скаляром, 1 x n вектор, a m x 1 вектор, или m x n матрица. По умолчанию, если вы не выбираете опцию size, приложение определяет входы как скаляры.

  5. При необходимости, если ваш вход не скаляром, введите размеры m и n. Можно задать:

    • Фиксированный размер, для примера, 10.

    • Размер переменной, до заданного предела, при помощи : префикс. Например, чтобы указать, что ваш вход может варьироваться в размере до 10, введите :10.

    • Неограниченный размер переменной при вводе :Inf.

    Можно редактировать размер каждой размерности.

Задайте строковый скалярный входной параметр

Чтобы указать, что вход является строковым скаляром:

  1. На странице Define Input Types нажмите Let me enter input or global types directly.

  2. Щелкните поле справа от входного параметра, который вы хотите задать.

  3. Выберите string. Затем выберите 1x1 scalar.

    Тип представляет собой строковые массивы 1 на 1 (строковый скаляр), который содержит вектор символов.

  4. Чтобы задать размер вектора символов, щелкните поле справа от элемента строковых массивов {1}. Выберите char. Затем выберите 1xn vector и введите размер.

  5. Чтобы изменить размер строки, щелкните второе измерение.

    • Чтобы указать, что второе измерение неограниченен, выберите :Inf.

    • Чтобы указать, что второе измерение имеет верхнюю границу, введите верхнюю границу, например 8. Затем выберите :8.

Задайте перечисленный тип Входа параметр

Чтобы указать, что вход использует перечисленный тип MyColors:

  1. Предположим, что MyColors перечисления находится в MATLAB® путь.

    classdef MyColors < int32
        enumeration
            green(1),
            red(2),
        end
    end

  2. На странице Define Input Types нажмите Let me enter input or global types directly.

  3. В поле справа от параметра входа введите MyColors.

Задайте входной параметр с фиксированной точкой

Чтобы задать входы с фиксированной точкой, необходимо установить программное обеспечение Fixed-Point Designer™.

  1. На странице Define Input Types нажмите Let me enter input or global types directly.

  2. Щелкните поле справа от входного параметра, который вы хотите задать.

  3. Выберите embedded.fi.

  4. Выберите размер. Если размер не задан, размер по умолчанию равен 1x1.

  5. Задайте параметр входа numerictype (Fixed-Point Designer) и fimath (Fixed-Point Designer) свойства.

    Если вы не задаете локальный fimath, приложение использует fimath по умолчанию. Смотрите раздел Использование по умолчанию fimath для совместного использования арифметических правил (Fixed-Point Designer).

Как изменить numerictype (Fixed-Point Designer) или fimath (Fixed-Point Designer) откройте диалоговое окно свойств. Чтобы открыть диалоговое окно свойств, щелкните справа от определения типа фиксированной точки. Вы можете нажать кнопку.

Задайте входной параметр структуры

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

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

  • Для каждого поля, которое является классом с фиксированной точкой, также задайте числовой тип и fimath.

Задайте структуры по типам

  1. На странице Define Input Types нажмите Let me enter input or global types directly.

  2. Щелкните поле справа от входного параметра, который вы хотите задать.

  3. Выберите struct.

    Приложение отображает выбранный тип, struct. Приложение отображает опции размера.

  4. Задайте, что ваша структура является скаляром, 1 x n вектор, m x 1 вектор, или m x n матрица. По умолчанию, если вы не выбираете опцию size, приложение определяет входы как скаляры.

  5. Если ваш вход не скаляром, введите размеры для каждой размерности. Щелкните размерностью. Введите размер. Выберите из опций размера. Для примера, для 10 размера:

    • Чтобы задать фиксированный размер, выберите 10.

    • Чтобы задать размер переменной с верхней границей 10, выберите :10.

    • Чтобы задать неограниченный размер переменной, выберите :Inf.

  6. Опционально задайте свойства для структуры в сгенерированном коде. См. Раздел «Задание свойств структуры»

  7. Добавить поля в структуру. Укажите класс, размер и сложность полей. См. раздел Добавление поля в структуру.

Задание свойств структуры

  1. Щелкните справа от определения структуры. Вы можете нажать кнопку.

  2. В диалоговом окне задайте свойства структуры в сгенерированном коде.

    СвойствоОписание
    Имя определения типа C

    Имя типа структуры в сгенерированном коде.

    Определение типа задано извне

    По умолчанию: No - определение типа внешне не задано.

    Если вы выбираете Yes чтобы объявить внешне определенную структуру, приложение не генерирует определение типа структуры. Вы должны предоставить его в пользовательский файл включения.

    Зависимости: C type definition name включает эту опцию.

    Файл заголовка определения типа C

    Имя файла заголовка, который содержит внешнее определение структуры, например "mystruct.h". Укажите путь к файлу с помощью параметра Additional include directories в диалоговом окне параметров проекта Custom Code вкладке.

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

    Зависимости: Когда Type definition is externally defined установлено в Yes, эта опция включена.

    Контур выравнивания данных

    Время выполнения памяти выравнивание структур этого типа в байтах.

    Если у вас есть Embedded Coder® лицензия и использование библиотек замещения кода (CRL), CRL обеспечивают возможность выравнивания объектов данных, переданных в функцию замещения, по заданному контуру. Можно использовать преимущества реализации функций для конкретного целевого объекта, которые требуют выровненных данных. По умолчанию структура не выравнивается по какому-либо определенному контуру, поэтому она не совпадает с функциями CRL, которые требуют выравнивания.

    Выравнивание должно быть либо -1 или степень 2 это не более 128.

    По умолчанию: 0

    Зависимости: Когда Type definition is externally defined установлено в Yes, эта опция включена.

Переименование поля в структуре

Выберите поле имени структуры, которую необходимо переименовать. Введите новое имя.

Добавление поля в структуру

  1. Справа от структуры щелкните

  2. Введите имя поля. Укажите класс, размер и сложность поля.

Вставка поля в структуру

  1. Выберите поле структуры, ниже которого необходимо добавить другое поле.

  2. Щелкните правой кнопкой мыши поле структуры.

  3. Выберите Insert Field Below.

    Приложение добавляет поле после выбранного поля.

  4. Введите имя поля. Укажите класс, размер и сложность поля.

Удаление поля из структуры

  1. Щелкните правой кнопкой мыши поле, которое необходимо удалить.

  2. Выберите Remove Field.

Задайте входной параметр массива ячеек

Для генерации кода массивы ячеек являются однородными или неоднородными. Смотрите Генерацию кода для массивов ячеек. Однородный массив ячеек представлен как массив в сгенерированном коде. Все элементы имеют одинаковые свойства. Гетерогенный массив ячеек представлен как структура в сгенерированном коде. Элементы могут иметь различные свойства.

Задайте однородный массив ячеек

  1. На странице Define Input Types нажмите Let me enter input or global types directly.

  2. Щелкните поле справа от входного параметра, который вы хотите задать.

  3. Выберите cell (Homogeneous).

    Приложение отображает выбранный тип, cell. Приложение отображает опции размера.

  4. Из списка выберите, является ли ваш вход скаляром, 1 x n вектор, a m x 1 вектор, или m x n матрица. По умолчанию, если вы не выбираете опцию size, приложение определяет входы как скаляры.

  5. Если ваш вход не скаляром, введите размеры для каждой размерности. Щелкните размерностью. Введите размер. Выберите из опций размера. Для примера, для 10 размера:

    • Чтобы задать фиксированный размер, выберите 10.

    • Чтобы задать размер переменной с верхней границей 10, выберите :10.

    • Чтобы задать неограниченный размер переменной, выберите :Inf.

    Под переменной массива ячеек двоеточие внутри фигурного скобок {:} указывает, что элементы массива ячеек имеют одинаковые свойства (класс, размер и сложность).

  6. Чтобы задать класс, размер и сложность элементов массива ячеек, щелкните поле справа от {:}.

Задайте гетерогенный массив ячеек

  1. На странице Define Input Types нажмите Let me enter input or global types directly.

  2. Щелкните поле справа от входного параметра, который вы хотите задать.

  3. Выберите cell (Heterogeneous).

    Приложение отображает выбранный тип, cell. Приложение отображает опции размера.

  4. Задайте, что ваша структура является скаляром, 1 x n вектор, m x 1 вектор, или m x n матрица. По умолчанию, если вы не выбираете опцию size, приложение определяет входы как скаляры.

  5. При необходимости, если ваш вход не скаляром, введите размеры m и n. Гетерогенный массив ячеек является фиксированным размером.

    В приложении перечислены элементы массива ячеек. Он использует индексацию обозначения, чтобы задать каждый элемент. Для примера, {1,2} указывает элемент в строке 1, столбец 2.

  6. Задайте класс, размер и сложность для каждого элемента массива ячеек.

  7. Вы можете добавить элементы. См. Добавление элемента в гетерогенный массив ячеек

  8. Опционально задайте свойства для структуры, которая представляет массив ячеек в сгенерированном коде. Смотрите раздел «Задание свойств структуры для гетерогенного массива ячеек».

Установите свойства структуры для гетерогенного массива ячеек

Гетерогенный массив ячеек представлен как структура в сгенерированном коде. Можно задать свойства структуры, представляющей массив ячеек.

  1. Щелкните справа от определения массива ячеек. При необходимости щелкните значок.

  2. В диалоговом окне задайте свойства структуры в сгенерированном коде.

    СвойствоОписание
    Имя определения типа C

    Имя типа структуры в сгенерированном коде.

    Определение типа задано извне

    По умолчанию: No - определение типа внешне не задано.

    Если вы выбираете Yes чтобы объявить внешне определенную структуру, приложение не генерирует определение типа структуры. Вы должны предоставить его в пользовательский файл включения.

    Зависимости: C type definition name включает эту опцию.

    Файл заголовка определения типа C

    Имя файла заголовка, который содержит внешнее определение структуры, например "mystruct.h". Укажите путь к файлу с помощью параметра Additional include directories в диалоговом окне параметров проекта Custom Code вкладке.

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

    Зависимости: Когда Type definition is externally defined установлено в Yes, эта опция включена.

    Контур выравнивания данных

    Время выполнения памяти выравнивание структур этого типа в байтах.

    Если у вас есть лицензия Embedded Coder и вы используете библиотеки замены кода (CRL), CRL обеспечивают возможность выравнивания объектов данных, переданных в функцию замены, по заданному контуру. Можно использовать преимущества реализации функций для конкретного целевого объекта, которые требуют выровненных данных. По умолчанию структура не выравнивается по какому-либо определенному контуру, поэтому она не совпадает с функциями CRL, которые требуют выравнивания.

    Выравнивание должно быть либо -1 или степень 2 это не более 128.

    По умолчанию: 0

    Зависимости: Когда Type definition is externally defined установлено в Yes, эта опция включена.

Классификация изменений как однородная или неоднородная

Чтобы изменить классификацию как однородную или неоднородную, щелкните правой кнопкой мыши переменную. Выберите Homogeneous или Heterogeneous.

Приложение очищает определения элементов.

Изменение размера массива ячеек

  1. В определении массива ячеек щелкните размерность. Задайте размер.

  2. Для однородного массива ячеек укажите, является ли размерность переменным, и является ли размерность ограниченным или неограниченным. Также щелкните правой кнопкой мыши переменную. Выберите Bounded (fixed-size), Bounded (variable-size) или Unbounded

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

Добавьте элемент в гетерогенный массив ячеек

  1. В определении массива ячеек щелкните размерность. Задайте размер. Например, введите 1 для первой размерности и 4 для второго измерения.

    Приложение добавляет элементы так, чтобы массив ячеек имел заданные размер и форму. Для примера гетерогенного массива ячеек 1x4 в приложении перечислены четыре элемента: {1,1}, {1,2}, {1,3}, и {1,4}.

  2. Задайте свойства новых элементов.