mATLAB:: mEX::

Базовый класс для MEX-функций C++

Описание

Класс MexFunction, который вы реализуете в MEX-функциях C++, должен наследоваться классу matlab.mex.Function. Класс matlab.mex.Function включает доступ к Engine API для C++ и задает виртуальную функцию operator(), которую должен заменить ваш класс MexFunction.

Информация о классе

Пространство имен:

matlab::mex

Включение:

mexAdapter.hpp — Включайте этот файл только однажды для реализации класса MexFunction

Функции членства

оператор

virtual void operator()(ArgumentList outputs, ArgumentList inputs)

Оператор вызова функции, который необходимо заменить в классе MexFunction. Этот оператор позволяет экземплярам вашего класса MexFunction быть названными как функция.

Параметры

matlab::mex::ArgumentList outputsНабор объектов matlab::data::Array, которые возвращены в MATLAB®
matlab::mex::ArgumentList inputsНабор объектов matlab::data::Array, которые передаются MEX-функции из MATLAB

Примеры

class MexFunction : public matlab::mex::Function {
public:
    void operator()(matlab::mex::ArgumentList outputs, matlab::mex::ArgumentList inputs) {
        ...
    }
}

getEngine

std::shared_ptr<matlab::engine::MATLABEngine> getEngine()

Возвращает указатель на объект MATLABEngine, который включает доступ к Engine API для C++.

Возвращается

sdt::shared_ptr<matlab::engine::MATLABEngine>

Указатель на объект MATLABEngine

Примеры

Вызовите функцию clear MATLAB.

std::shared_ptr<MATLABEngine> matlabPtr = getEngine();
matlabPtr->eval(matlab::engine::convertUTF8StringToUTF16String("clear"));

mexLock

void mexLock()

Предотвращает очищающийся файл MEX из памяти. Не вызывайте mexLock или mexUnlock от пользовательского потока.

Примеры

Заблокируйте файл MEX.

mexLock();

mexUnlock

Разблокировал файл MEX и позволяет очищаться файла из памяти. Не вызывайте mexLock или mexUnlock от пользовательского потока.

void mexLock()

Примеры

Разблокируйте файл MEX.

mexUnlock();

getFunctionName

std::u16string getFunctionName() const

Возвращает имя MEX-функции, которая является именем исходного файла.

Примеры

Получите имя файла MEX-функции выполняющегося в данного момента.

std::u16string fileName = getFunctionName();

Введенный в R2018a