matlab::mex::Function
C++ MEX 함수의 기본 클래스
설명
C++ MEX 함수에서 구현하는 MexFunction 클래스는 matlab.mex.Function 클래스에서 상속되어야 합니다. matlab.mex.Function 클래스는 C++ Engine API에 대한 액세스를 활성화하고, MexFunction 클래스가 재정의해야 하는 가상 operator() 함수를 정의합니다.
클래스 세부 정보
네임스페이스: | matlab::mex |
포함: | mexAdapter.hpp — MexFunction 클래스 구현을 위해 이 파일을 한 번만 포함함 |
멤버 함수
operator()
virtual void operator()(ArgumentList outputs, ArgumentList inputs)MexFunction 클래스에서 재정의해야 하는 함수 호출 연산자. 이 연산자는 MexFunction 클래스의 인스턴스를 함수처럼 호출되도록 합니다.
파라미터
matlab::mex::ArgumentList outputs | MATLAB®으로 반환되는 matlab::data::Array 객체의 모음 |
matlab::mex::ArgumentList inputs | MATLAB에서 MEX 함수로 전달되는 matlab::data::Array 객체의 모음 |
예제
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()C++ Engine API에 대한 액세스를 활성화하는 MATLABEngine 객체에 대한 포인터를 반환합니다.
반환되는 값
|
|
예제
MATLABclear 함수를 호출합니다.
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에 개발됨