defineOutput

Класс: clibgen. MethodDefinition
Пакет: clibgen

Добавьте определение выходного аргумента для метода C++

Синтаксис

defineOutput(methodDef,argName,mltype)
defineOutput(methodDef,argName,mltype,shape)
defineOutput(___,argDesc)
defineOutput(___,'DeleteFcn',deleteFcn)

Описание

defineOutput(methodDef,argName,mltype) добавляет определение выходного аргумента для метода C++.

defineOutput(methodDef,argName,mltype,shape) содержит информацию об размерностях данных.

defineOutput(___,argDesc) добавляет описание аргумента и может включать любой из входных параметров в предыдущих синтаксисах.

defineOutput(___,'DeleteFcn',deleteFcn) задает функцию разделителя библиотек C++ для управления памятью аргумента.

Входные параметры

расширить все

Определение метода, заданное как clibgen.MethodDefinition объект.

Имя выходного аргумента C++, заданное как строковый скаляр или вектор символов.

MATLAB® type, заданный как строковый скаляр или вектор символов. Для получения дополнительной информации см. Раздел «Параметр MLTYPE».

Определение измерения, используемое MATLAB, чтобы задать размерности данных, заданные как строковый вектор, скалярный текст, положительный целочисленный вектор, "nullTerminated", или массив ячеек. Для массива ячеек элементы являются комбинацией скалярного текста и скалярных положительных целых чисел. Для получения дополнительной информации см. Раздел «Параметр SHAPE».

Если вы можете задать размерность аргумента как фиксированное скалярное значение, введите число, такое как 5.

Если размерность определяется другим аргументом, введите имя аргумента в виде строки. Для примера рассмотрите следующую подпись C++. Аргумент если len определяет длину data, затем значение shape является "len".

myFunc(const int *data, int len)

Если размер аргумента задан массивом, то значение shape является одним из следующих:

  • 1

  • Фиксированные размерности: Введите численный массив, такой как [5,2].

  • Переменные размерности: Введите строковые массивы имен параметров, таких как ["row","col"]

Если тип C++ для аргумента является строкой, используйте эти опции, чтобы выбрать значения для mltype и shape аргументы.

Тип C++MLTYPEОпции для SHAPE
char*

"int8"

Скалярное значение
Массив скалярных значений

char**
char*[]

"string"

вектор
const char*

"char"

Скалярное значение
Массив скалярных значений

"string"

"nullTerminated"

const char**
const char*[]

"char"

Скалярное значение
Массив скалярных значений

"string"

"nullTerminated"

Для получения дополнительной информации смотрите C++ в MATLAB Тип данных Отображений.

Описание аргумента C++, заданное как строковый скаляр или вектор символов.

Функция Deleter, заданная как строковый скаляр или вектор символов. Делетером может быть стандарт C++ delete оператор или определяемая пользователем функция. Если тип возврата C++ void*, затем deleteFcn должна быть пользовательской функцией. Если функция возвращает указатель, MATLAB принимает владение и управляет жизненным циклом памяти, представленной аргументом. Если deleteFcn не задан, тогда библиотека отвечает за управление памятью.

Если вы задаете функцию библиотеки для функции deleter, то эта функция не входит в интерфейс и пользователи не могут вызвать функцию из MATLAB. Пользователь MATLAB вызывает MATLAB delete функция, которая вызывает функцию, заданную deleteFcn.

Пример: 'DeleteFcn','objFree'

Введенный в R2019a
Для просмотра документации необходимо авторизоваться на сайте