Можно задать входные параметры категориального массива в командной строке. Программируемая спецификация категориального входа вводит при помощи предварительного создания условий (assert
операторы), не поддерживается.
Используйте одну из этих процедур:
В качестве альтернативы, если у вас есть тестовый файл, который вызывает вашу функцию точки входа с входными параметрами в качестве примера, можно определить входные типы при помощи coder.getArgTypes
.
Используйте -args
опция:
C = categorical({'r','g','b'}); fiaccel myFunction -args {C}
Обеспечить тип для категориального массива к fiaccel
:
Задайте категориальный массив. Например:
C = categorical({'r','g','b'});
Создайте тип из C
.
t = coder.typeof(C);
Передайте тип fiaccel
при помощи -args
опция.
fiaccel myFunction -args {t}
Чтобы указать, что вход категориального массива является постоянным, используйте coder.Constant
с -args
опция:
C = categorical({'r','g','b'}); fiaccel myFunction -args {coder.Constant(C)}
Текстовый объект кодера для категориального массива описывает объект и его свойства. Использование coder.typeof
(MATLAB Coder) или передача categorical
как строковый скаляр к coder.newtype
(MATLAB Coder).
Текстовый объект кодера отображает сжатое описание свойств объектов в то время как, исключая значения внутреннего состояния. Непостоянные свойства отображают свой тип и размер, в то время как постоянные свойства отображают только свои значения. Например:
t = categorical({'r','g','b'}); tType = coder.typeof(t)
Представление переменной t
хранится в текстовом объекте кодера tType
.
tType = matlab.coder.type.CategoricalType 1x3 categorical Categories : 3x1 homogeneous cell Ordinal : 1x1 logical Protected : 1x1 logical
Если ваш рабочий процесс требует устаревшего представления текстовых объектов кодера, используйте getCoderType
функция на переменной, которая имеет новое представление вашего класса или объекта. Смотрите Устаревшее Представление Текстовых объектов Кодера (MATLAB Coder).
coder.resize
Можно изменить размер большинства объектов при помощи coder.resize
(MATLAB Coder). Можно изменить размер объектов, его свойств и создать массивы в свойствах.
Для categorical
объект кодера, можно изменить размер свойств объектов:
t = categorical({'r','g','b'}); tType = coder.typeof(t); tType.Categories = coder.resize(tType.Categories, [3 1],[1 0])
Этот код изменяет размер Categories
свойство, которое будет верхне ограничено в 3
для первой размерности.
tType = matlab.coder.type.CategoricalType 1x3 categorical Categories : :3x1 homogeneous cell Ordinal : 1x1 logical Protected : 1x1 logical
Можно также изменить размер объекта при помощи coder.resize
. Смотрите редактирование и представляйте текстовые объекты кодера и свойства (MATLAB Coder).
categorical
| coder.Constant
(MATLAB Coder) | coder.typeof
(MATLAB Coder)