com.mathworks.matlab.types. Класс HandleObject

Пакет: com.mathworks.matlab.types

Класс Java, чтобы представлять MATLAB обрабатывает объекты

Описание

Java® представляет объекты указателя, которые передаются от MATLAB® как экземпляры класса HandleObject. При пасовании назад объекта указателя к MATLAB Java передает ссылку на экземпляр HandleObject. Эта ссылка может быть или массивом или скаляром, в зависимости от исходного объекта указателя, переданного Java от MATLAB.

Можно передать объект указателя только сеансу работы с MATLAB, в котором он был первоначально создан. Вы не можете создать HandleObject на Java.

Примеры

свернуть все

Этот пример запускает разделяемый сеанс работы с MATLAB и создает объект containers.Map в MATLAB workspace. Оператор, оцененный в MATLAB workspace, возвращает переменную указателя, которая относится к объекту Map.

Механизм функция getVariable возвращает MATLAB, обрабатывает переменную как экземпляр HandleObject. Этот экземпляр используется, чтобы вызвать функцию containers.Map.keys MATLAB, чтобы получить ключи Map.

import com.mathworks.engine.MatlabEngine;
import com.mathworks.matlab.types.*;

MatlabEngine engine = MatlabEngine.startMatlab();
engine.eval("cm = containers.Map({'id','name'},{11,'mw'});");
HandleObject handle = engine.getVariable("cm");
String[] cells = engine.feval("keys", handle);

Введенный в R2017b

Была ли эта тема полезной?